File manager - Edit - /home/web/vm-3fadc827.na4u.ru/www/bitrix/modules/catalog/install/js/catalog/entity-card/dist/entity-card.bundle.js.map
Back
{"version":3,"file":"entity-card.bundle.js","sources":["../src/tab/lazy-loader.js","../src/tab/tab.js","../src/tab/manager.js","../src/iblock-section/field.js","../src/name-code/field.js","../src/fields-factory.js","../src/iblock-section/controller.js","../src/variation-grid/controller.js","../src/google-map/controller.js","../src/employee/controller.js","../src/binding-to-crm-element/controller.js","../src/field-configurator/controller.js","../src/controllers-factory.js","../src/field-configurator/iblock-directory-field-item.js","../src/field-configurator/iblock-field-configurator.js","../src/field-configurator/iblock-field-configuration-manager.js","../src/field-configurator/grid-field-configurator.js","../src/field-configurator/grid-field-configuration-manager.js","../src/base-card/base-card.js","../src/entity-card.js"],"sourcesContent":["import {Text, Type} from 'main.core';\n\nexport default class LazyLoader\n{\n\tconstructor(id, settings)\n\t{\n\t\tthis.id = Type.isStringFilled(id) ? id : Text.getRandom();\n\t\tthis.settings = Type.isObjectLike(settings) ? settings : {};\n\n\t\tthis.container = this.settings.container;\n\t\tif (!this.container)\n\t\t{\n\t\t\tthrow 'Error: Could not find container.';\n\t\t}\n\n\t\tthis.serviceUrl = this.settings.serviceUrl || '';\n\t\tif (!Type.isStringFilled(this.serviceUrl))\n\t\t{\n\t\t\tthrow 'Error. Could not find service url.';\n\t\t}\n\n\t\tthis.tabId = this.settings.tabId || '';\n\t\tif (!Type.isStringFilled(this.tabId))\n\t\t{\n\t\t\tthrow 'Error: Could not find tab id.';\n\t\t}\n\n\t\tthis.params = Type.isObjectLike(this.settings.componentData) ? this.settings.componentData : {};\n\n\t\tthis.isRequestRunning = false;\n\t\tthis.loaded = false;\n\t}\n\n\tisLoaded()\n\t{\n\t\treturn this.loaded;\n\t}\n\n\tload()\n\t{\n\t\tif (!this.isLoaded())\n\t\t{\n\t\t\tthis.startRequest({...this.params, ...{'TABID': this.tabId}});\n\t\t}\n\t}\n\n\tstartRequest(params)\n\t{\n\t\tif (this.isRequestRunning)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tthis.isRequestRunning = true;\n\n\t\tBX.ajax({\n\t\t\turl: this.serviceUrl,\n\t\t\tmethod: 'POST',\n\t\t\tdataType: 'html',\n\t\t\tdata: {\n\t\t\t\t'LOADERID': this.id,\n\t\t\t\t'PARAMS': params\n\t\t\t},\n\t\t\tonsuccess: this.onRequestSuccess.bind(this),\n\t\t\tonfailure: this.onRequestFailure.bind(this)\n\t\t});\n\n\t\treturn true;\n\t}\n\n\tonRequestSuccess(data)\n\t{\n\t\tthis.isRequestRunning = false;\n\t\tthis.container.innerHTML = data;\n\t\tthis.loaded = true;\n\t}\n\n\tonRequestFailure()\n\t{\n\t\tthis.isRequestRunning = false;\n\t\tthis.loaded = true;\n\t}\n}","import {Dom, Event, Text, Type} from 'main.core';\nimport LazyLoader from './lazy-loader';\n\nexport default class Tab\n{\n\tconstructor(id, settings)\n\t{\n\t\tthis.id = Type.isStringFilled(id) ? id : Text.getRandom();\n\t\tthis.settings = Type.isObjectLike(settings) ? settings : {};\n\t\tthis.data = Type.isObjectLike(this.settings.data) ? this.settings.data : {};\n\n\t\tthis.manager = settings.manager || null;\n\n\t\tthis.container = this.settings.container;\n\t\tthis.menuContainer = this.settings.menuContainer;\n\n\t\tthis.active = Type.isBoolean(this.data.active) ? this.data.active : false;\n\t\tthis.enabled = Type.isBoolean(this.data.enabled) ? this.data.enabled : true;\n\n\t\tEvent.bind(\n\t\t\tthis.menuContainer.querySelector('a.catalog-entity-section-tab-link'),\n\t\t\t'click',\n\t\t\tthis.onMenuClick.bind(this)\n\t\t);\n\n\t\tthis.loader = null;\n\n\t\tif (Type.isObjectLike(this.data.loader))\n\t\t{\n\t\t\tthis.loader = new LazyLoader(this.id, {\n\t\t\t\t...this.data.loader,\n\t\t\t\t...{\n\t\t\t\t\ttabId: this.id,\n\t\t\t\t\tcontainer: this.container\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tisEnabled()\n\t{\n\t\treturn this.enabled;\n\t}\n\n\tisActive()\n\t{\n\t\treturn this.active;\n\t}\n\n\tsetActive(active)\n\t{\n\t\tactive = !!active;\n\n\t\tif (this.isActive() === active)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.active = active;\n\n\t\tif (this.isActive())\n\t\t{\n\t\t\tthis.showTab()\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.hideTab()\n\t\t}\n\t}\n\n\tshowTab()\n\t{\n\t\tDom.addClass(this.container, 'catalog-entity-section-tab-content-show');\n\t\tDom.removeClass(this.container, 'catalog-entity-section-tab-content-hide');\n\t\tDom.addClass(this.menuContainer, 'catalog-entity-section-tab-current');\n\n\t\tthis.container.style.display = '';\n\t\tthis.container.style.position = 'absolute';\n\t\tthis.container.style.top = 0;\n\t\tthis.container.style.left = 0;\n\t\tthis.container.style.width = '100%';\n\n\t\t(new BX.easing({\n\t\t\tduration: 350,\n\t\t\tstart: {opacity: 0, translateX: 100},\n\t\t\tfinish: {opacity: 100, translateX: 0},\n\t\t\ttransition: BX.easing.makeEaseOut(BX.easing.transitions.quart),\n\t\t\tstep: (state) => {\n\t\t\t\tthis.container.style.opacity = state.opacity / 100;\n\t\t\t\tthis.container.style.transform = 'translateX(' + state.translateX + '%)';\n\t\t\t},\n\t\t\tcomplete: () => {\n\t\t\t\tDom.removeClass(this.container, 'catalog-entity-section-tab-content-show');\n\t\t\t\tthis.container.style.cssText = '';\n\n\t\t\t\tEvent.EventEmitter.emit(window, 'onEntityDetailsTabShow', [this]);\n\t\t\t}\n\t\t})).animate();\n\n\t}\n\n\thideTab()\n\t{\n\t\tDom.addClass(this.container, 'catalog-entity-section-tab-content-hide');\n\t\tDom.removeClass(this.container, 'catalog-entity-section-tab-content-show');\n\t\tDom.removeClass(this.menuContainer, 'catalog-entity-section-tab-current');\n\n\t\t(new BX.easing({\n\t\t\tduration: 350,\n\t\t\tstart: {opacity: 100},\n\t\t\tfinish: {opacity: 0},\n\t\t\ttransition: BX.easing.makeEaseOut(BX.easing.transitions.quart),\n\t\t\tstep: (state) => {\n\t\t\t\tthis.container.style.opacity = state.opacity / 100;\n\t\t\t},\n\t\t\tcomplete: () => {\n\t\t\t\tthis.container.style.display = 'none';\n\t\t\t\tthis.container.style.transform = 'translateX(100%)';\n\t\t\t\tthis.container.style.opacity = 0;\n\t\t\t}\n\t\t})).animate();\n\t}\n\n\tonMenuClick(event)\n\t{\n\t\tif (this.isEnabled())\n\t\t{\n\t\t\tif (this.loader && !this.loader.isLoaded())\n\t\t\t{\n\t\t\t\tthis.loader.load();\n\t\t\t}\n\n\t\t\tthis.manager.selectItem(this);\n\t\t}\n\n\t\tevent.preventDefault()\n\t}\n}","import {Text, Type} from 'main.core';\nimport Tab from './tab';\nimport {EventEmitter} from \"main.core.events\";\n\nexport default class Manager\n{\n\tconstructor(id, settings)\n\t{\n\t\tthis.id = Type.isStringFilled(id) ? id : Text.getRandom();\n\t\tthis.settings = Type.isObjectLike(settings) ? settings : {};\n\n\t\tthis.container = this.settings.container;\n\t\tthis.menuContainer = this.settings.menuContainer;\n\n\t\tthis.items = [];\n\n\t\tif (Type.isArray(this.settings.data))\n\t\t{\n\t\t\tthis.settings.data.forEach(item => {\n\t\t\t\tthis.items.push(\n\t\t\t\t\tnew Tab(item.id, {\n\t\t\t\t\t\tmanager: this,\n\t\t\t\t\t\tdata: item,\n\t\t\t\t\t\tcontainer: this.container.querySelector('[data-tab-id=\"' + item.id + '\"]'),\n\t\t\t\t\t\tmenuContainer: this.menuContainer.querySelector('[data-tab-id=\"' + item.id + '\"]')\n\t\t\t\t\t})\n\t\t\t\t);\n\t\t\t});\n\t\t}\n\n\t\tEventEmitter.subscribe('BX.Catalog.EntityCard.TabManager:onOpenTab', (event) => {\n\t\t\tlet tabId = event.data.tabId;\n\t\t\tlet item = this.findItemById(tabId);\n\t\t\tif (item)\n\t\t\t{\n\t\t\t\tthis.selectItem(item);\n\t\t\t}\n\t\t});\n\t}\n\n\tfindItemById(id)\n\t{\n\t\treturn this.items.find(item => item.id === id) || null;\n\t}\n\n\tselectItem(item)\n\t{\n\t\tEventEmitter.emit('BX.Catalog.EntityCard.TabManager:onSelectItem', {tabId: item.id});\n\t\tthis.items.forEach(current => current.setActive(current === item));\n\t}\n}\n","import './field.css'\nimport {ajax, Dom, Event, Loc, Runtime, Tag, Text, Type} from 'main.core'\nimport {type BaseEvent, EventEmitter} from 'main.core.events'\n\nexport default class IblockSectionField extends BX.UI.EntityEditorField\n{\n\tconstructor(id, settings)\n\t{\n\t\tsuper();\n\t\tthis.initialize(id, settings);\n\n\t\tthis.innerWrapper = null;\n\t}\n\n\tgetContentWrapper()\n\t{\n\t\treturn this.innerWrapper;\n\t}\n\n\tlayout(options = {})\n\t{\n\t\tif (this._hasLayout)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.ensureWrapperCreated({classNames: ['catalog-entity-editor-content-block-field-iblock-section']});\n\t\tthis.adjustWrapper();\n\n\t\tif (this.isNeedToDisplay())\n\t\t{\n\t\t\tthis._wrapper.appendChild(this.createTitleNode(this.getTitle()));\n\n\t\t\tif (this._mode === BX.UI.EntityEditorMode.edit)\n\t\t\t{\n\t\t\t\tthis.drawEditMode();\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.drawViewMode();\n\t\t\t}\n\n\t\t\tif (this.isContextMenuEnabled())\n\t\t\t{\n\t\t\t\tthis._wrapper.appendChild(this.createContextMenuButton());\n\t\t\t}\n\t\t}\n\n\t\tthis.registerLayout(options);\n\t\tthis._hasLayout = true;\n\t}\n\n\tdrawEditMode()\n\t{\n\t\tthis.defaultInput = Tag.render`<input type=\"hidden\" name=\"${this.getName()}[]\" value=\"0\">`;\n\t\tthis._wrapper.appendChild(this.defaultInput);\n\n\t\tthis.innerWrapper = Tag.render`<div class=\"ui-entity-editor-content-block\"></div>`;\n\t\tthis._wrapper.appendChild(this.innerWrapper);\n\n\t\tajax.runComponentAction(\n\t\t\t'bitrix:catalog.productcard.iblocksectionfield',\n\t\t\t'lazyLoad',\n\t\t\t{\n\t\t\t\tmode: 'ajax',\n\t\t\t\tdata: {\n\t\t\t\t\tiblockId: this.getIblockId(),\n\t\t\t\t\tproductId: this.getProductId(),\n\t\t\t\t\tselectedSectionIds: this.getValue()\n\t\t\t\t}\n\t\t\t}\n\t\t)\n\t\t\t.then(this.renderFromResponse.bind(this))\n\t\t\t.catch(response => {\n\t\t\t\tthrow new Error(response.errors.join(\"\\n\"));\n\t\t\t})\n\t\t;\n\t}\n\n\trenderFromResponse(response)\n\t{\n\t\tif (!this._wrapper)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tRuntime.html(this.innerWrapper, response.data.html, {\n\t\t\tcallback: this.initEntitySelector.bind(this)\n\t\t});\n\t}\n\n\tinitEntitySelector()\n\t{\n\t\tEventEmitter.subscribe(EventEmitter.GLOBAL_TARGET, 'Item:onSelect', this.markAsChanged.bind(this));\n\t\tEventEmitter.subscribe(EventEmitter.GLOBAL_TARGET, 'Item:onDeselect', this.markAsChanged.bind(this));\n\t}\n\n\tchangeDisplay(node, isShow)\n\t{\n\t\tif (!node)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tnode.style.display = isShow ? '' : 'none';\n\t}\n\n\tmarkAsChanged(event: BaseEvent)\n\t{\n\t\tsuper.markAsChanged();\n\t\tEventEmitter.emit(this.getEditor(), 'IblockSectionField:onChange', [this, ...event.getData()]);\n\t}\n\n\tdrawViewMode()\n\t{\n\t\tif (this.hasNoSections())\n\t\t{\n\t\t\tthis.innerWrapper = Tag.render`\n\t\t\t\t<div class=\"ui-entity-editor-content-block\">\n\t\t\t\t\t${Loc.getMessage(\"CATALOG_ENTITY_CARD_EMPTY_SECTION\")}\n\t\t\t\t</div>\n\t\t\t`;\n\t\t\tDom.addClass(this._wrapper, 'ui-entity-editor-content-block-click-empty');\n\t\t}\n\t\telse\n\t\t{\n\t\t\tconst content = [];\n\t\t\tthis.getSections().forEach((section) => {\n\t\t\t\t// ui-tile-selector-item-%type%\n\t\t\t\tlet picture = '';\n\t\t\t\tif (Type.isStringFilled(section.PICTURE))\n\t\t\t\t{\n\t\t\t\t\tpicture = Tag.render`<span class=\"ui-tile-selector-item-picture\" style=\"background-image: url('${Text.encode(section.PICTURE)}');\"></span>`;\n\t\t\t\t}\n\t\t\t\tcontent.push(Tag.render`\n\t\t\t\t\t<span class=\"ui-tile-selector-item ui-tile-selector-item-readonly-yes\">\n\t\t\t\t\t\t${picture}\n\t\t\t\t\t\t<span data-role=\"tile-item-name\">${Text.encode(section.NAME)}</span>\n\t\t\t\t\t</span>\n\t\t\t\t`)\n\t\t\t});\n\t\t\tthis.innerWrapper = Tag.render`\n\t\t\t\t<div class=\"ui-entity-editor-content-block\">\n\t\t\t\t\t<span class=\"ui-tile-selector-selector-wrap readonly\">\n\t\t\t\t\t\t${content}\n\t\t\t\t\t</span>\n\t\t\t\t</div>`\n\t\t\t;\n\t\t}\n\n\t\tthis._wrapper.appendChild(this.innerWrapper);\n\t}\n\n\tgetSections()\n\t{\n\t\treturn this._model.getField('IBLOCK_SECTION_DATA', {});\n\t}\n\n\tgetIblockId()\n\t{\n\t\treturn this._model.getField('IBLOCK_ID', 0);\n\t}\n\n\tgetProductId()\n\t{\n\t\treturn this._model.getField('ID', 0);\n\t}\n\n\thasNoSections()\n\t{\n\t\tconst sectionIds = this.getValue();\n\n\t\treturn sectionIds.length === 0\n\t\t\t|| (\n\t\t\t\tsectionIds.length === 1\n\t\t\t\t&& (sectionIds.includes('0') || sectionIds.includes(0))\n\t\t\t);\n\t}\n\n\tdoClearLayout(options)\n\t{\n\t\tif (this.defaultInput)\n\t\t{\n\t\t\tDom.clean(this.defaultInput);\n\t\t\tthis.defaultInput = null;\n\t\t}\n\n\t\tif (this.innerWrapper)\n\t\t{\n\t\t\tDom.clean(this.innerWrapper);\n\t\t\tthis.innerWrapper = null;\n\t\t}\n\n\t\tthis._hasLayout = false;\n\t}\n\n\tgetModeSwitchType(mode)\n\t{\n\t\tlet result = BX.UI.EntityEditorModeSwitchType.common;\n\n\t\tif (mode === BX.UI.EntityEditorMode.edit)\n\t\t{\n\t\t\tresult |= BX.UI.EntityEditorModeSwitchType.button | BX.UI.EntityEditorModeSwitchType.content;\n\t\t}\n\n\t\treturn result;\n\t}\n}","import {Loc, Dom, Tag, Event} from 'main.core';\nimport 'translit';\nimport './field.css';\n\nexport default class NameCodeField extends BX.UI.EntityEditorMultiText\n{\n\tconstructor(id, settings)\n\t{\n\t\tsuper();\n\t\tthis.initialize(id, settings);\n\t\tthis.isShownSymbolicCode = this.getSchemeShowCodeState() === 'true';\n\t\tthis.allowToGenerateCode = this._editor.isNew();\n\t}\n\n\tgetSchemeShowCodeState()\n\t{\n\t\treturn BX.prop.get(this.getSchemeElement()._options, 'showCode');\n\t}\n\n\tsetSchemeShowCodeState(state)\n\t{\n\t\tthis.getSchemeElement()._options['showCode'] = state;\n\t}\n\n\tgetValue = function()\n\t{\n\t\treturn BX.UI.EntityEditorBoolean.superclass.getValue.apply(this);\n\t}\n\n\thasContentToDisplay = function()\n\t{\n\t\treturn true;\n\t}\n\n\tdoPrepareContextMenuItems = function(menuItems)\n\t{\n\t\tif (this.isShownSymbolicCode)\n\t\t{\n\t\t\tmenuItems.push(\n\t\t\t\t{\n\t\t\t\t\tvalue: 'hide_symbolic_code',\n\t\t\t\t\ttext: Loc.getMessage('CATALOG_ENTITY_CARD_HIDE_SYMBOLIC_CODE'),\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tmenuItems.push(\n\t\t\t\t{\n\t\t\t\t\tvalue: 'show_symbolic_code',\n\t\t\t\t\ttext: Loc.getMessage('CATALOG_ENTITY_CARD_SHOW_SYMBOLIC_CODE'),\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}\n\n\tprocessContextMenuCommand(e, command)\n\t{\n\t\tsuper.processContextMenuCommand(e, command);\n\n\t\tconst codeContainerElement = document.getElementById('code_container');\n\t\tconst nameCodeMarkerElement = document.getElementById('name_code_marker');\n\n\t\tif (command === 'hide_symbolic_code')\n\t\t{\n\t\t\tthis.isShownSymbolicCode = false;\n\t\t\tthis.allowToGenerateCode = this._editor.isNew();\n\n\t\t\tif(this._mode === BX.UI.EntityEditorMode.edit)\n\t\t\t{\n\t\t\t\tconst codeTextElement = document.getElementById('code_text');\n\t\t\t\tconst codeStateButtonElement = document.getElementById('code_state_button');\n\t\t\t\tcodeTextElement.readOnly = this.allowToGenerateCode;\n\t\t\t\tif (this.allowToGenerateCode)\n\t\t\t\t{\n\t\t\t\t\tcodeTextElement.className = 'ui-ctl-element ui-ctl-element-symbol-code-input-disabled';\n\t\t\t\t\tcodeStateButtonElement.className = 'ui-ctl-before ui-ctl-icon-chain';\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tcodeTextElement.className = 'ui-ctl-element';\n\t\t\t\t\tcodeStateButtonElement.className = 'ui-ctl-before ui-ctl-icon-unchain';\n\t\t\t\t}\n\t\t\t\tcodeContainerElement.className = 'name-code-container name-code-container-hidden';\n\n\t\t\t\tDom.removeClass(this._innerWrapper, 'ui-entity-editor-content-block--code');\n\t\t\t\tDom.addClass(this._innerWrapper, 'ui-entity-editor-content-block--no-code');\n\t\t\t\tnameCodeMarkerElement.style.display = 'inline';\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.refreshLayout();\n\t\t\t}\n\t\t\tthis.setSchemeShowCodeState(false);\n\t\t\tthis._parent.processChildControlSchemeChange(this);\n\t\t}\n\t\telse if (command === 'show_symbolic_code')\n\t\t{\n\t\t\tthis.isShownSymbolicCode = true;\n\t\t\tif(this._mode === BX.UI.EntityEditorMode.edit)\n\t\t\t{\n\t\t\t\tcodeContainerElement.className = 'name-code-container';\n\t\t\t\tDom.removeClass(this._innerWrapper, 'ui-entity-editor-content-block--no-code');\n\t\t\t\tDom.addClass(this._innerWrapper, 'ui-entity-editor-content-block--code');\n\t\t\t\tnameCodeMarkerElement.style.display = 'none';\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.refreshLayout();\n\t\t\t}\n\t\t\tthis.setSchemeShowCodeState(true);\n\t\t\tthis._parent.processChildControlSchemeChange(this);\n\t\t}\n\t}\n\n\tcreateTitleMarker()\n\t{\n\t\tif(this._mode === BX.UI.EntityEditorMode.view)\n\t\t{\n\t\t\treturn null;\n\t\t}\n\n\t\tconst display = this.isShownSymbolicCode ? 'none' : 'inline';\n\n\t\tif(this._mode === BX.UI.EntityEditorMode.edit)\n\t\t{\n\t\t\treturn Tag.render`<span id=\"name_code_marker\" style=\"color: rgb(255, 0, 0); display: ${display};\">*</span>`;\n\t\t}\n\t}\n\n\tlayout(options)\n\t{\n\t\tif(this._hasLayout)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.ensureWrapperCreated({ classNames: [ 'ui-entity-editor-field-multitext' ] });\n\t\tthis.adjustWrapper();\n\n\t\tif(!this.isNeedToDisplay())\n\t\t{\n\t\t\tthis.registerLayout(options);\n\t\t\tthis._hasLayout = true;\n\t\t\treturn;\n\t\t}\n\n\t\tconst title = this.getTitle();\n\n\t\tconst values = this.getValue();\n\t\tthis._inputValue = values;\n\t\tthis._innerWrapper = null;\n\t\tif(this.isDragEnabled())\n\t\t{\n\t\t\tDom.append(this.createDragButton(), this._wrapper);\n\t\t}\n\n\t\tDom.append(this.createTitleNode(title), this._wrapper);\n\t\tif(this._mode === BX.UI.EntityEditorMode.edit)\n\t\t{\n\t\t\tthis._inputContainer = Tag.render`<div></div>`;\n\n\t\t\tfor (let valueKey in values)\n\t\t\t{\n\t\t\t\tDom.append(this.createSingleInput(values[valueKey], valueKey), this._inputContainer);\n\t\t\t}\n\n\t\t\tthis._innerWrapper = Tag.render`<div class=\"ui-entity-editor-content-block\">${this._inputContainer}</div>`;\n\t\t\tif (this.isShownSymbolicCode)\n\t\t\t{\n\t\t\t\tDom.addClass(this._innerWrapper, 'ui-entity-editor-content-block--code');\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tDom.addClass(this._innerWrapper, 'ui-entity-editor-content-block--no-code');\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis._innerWrapper = Tag.render`\n\t\t\t\t<div class=\"ui-entity-editor-content-block\">${this.getViewInnerLayout()}</div>\n\t\t\t`;\n\t\t}\n\n\t\tDom.append(this._innerWrapper, this._wrapper);\n\n\t\tif(this.isContextMenuEnabled())\n\t\t{\n\t\t\tDom.append(this.createContextMenuButton() ,this._wrapper);\n\t\t}\n\n\t\tif(this.isDragEnabled())\n\t\t{\n\t\t\tthis.initializeDragDropAbilities();\n\t\t}\n\n\t\tthis.registerLayout(options);\n\t\tthis._hasLayout = true;\n\t}\n\n\tvalidate(result)\n\t{\n\t\tif(this._mode !== BX.UI.EntityEditorMode.edit)\n\t\t{\n\t\t\tthrow 'BX.UI.EntityEditorMultiText. Invalid validation context';\n\t\t}\n\n\t\tif(!this.isEditable())\n\t\t{\n\t\t\treturn true;\n\t\t}\n\n\t\tthis.clearError();\n\n\t\tif(this.hasValidators())\n\t\t{\n\t\t\treturn this.executeValidators(result);\n\t\t}\n\n\t\tlet isEmptyField = false;\n\t\tif(this._inputContainer)\n\t\t{\n\t\t\tconst nameTextElement = document.getElementById('name_text');\n\n\t\t\tif (BX.util.trim(nameTextElement.value) === '')\n\t\t\t{\n\t\t\t\tisEmptyField = true;\n\t\t\t\tDom.addClass(nameTextElement.parentNode, \"ui-ctl-danger\");\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tDom.removeClass(nameTextElement.parentNode, \"ui-ctl-danger\");\n\t\t\t}\n\t\t}\n\n\t\tconst isValid = !this.isRequired() || !isEmptyField;\n\t\tif(!isValid)\n\t\t{\n\t\t\tresult.addError(BX.UI.EntityValidationError.create({ field: this }));\n\t\t\tthis.showRequiredFieldError(this._input);\n\t\t}\n\t\treturn isValid;\n\t}\n\n\tshowError(error, anchor)\n\t{\n\t\tif(!this._errorContainer)\n\t\t{\n\t\t\tthis._errorContainer = Tag.render`<div class=\"ui-entity-editor-field-error-text\"></div>`;\n\t\t}\n\n\t\tthis._errorContainer.innerHTML = BX.util.htmlspecialchars(error);\n\t\tif (this._wrapper)\n\t\t{\n\t\t\tDom.append(this._errorContainer, this._wrapper);\n\t\t}\n\t\tthis._hasError = true;\n\t}\n\n\tcreateSingleInput(value, name)\n\t{\n\t\tconst inputWrapper = Tag.render`\n\t\t\t<div id=\"${name.toLowerCase()}_container\"></div>\n\t\t`;\n\t\tconst inputContainer = Tag.render`\n\t\t\t<div class=\"ui-ctl ui-ctl-w100 ui-ctl-textbox\"></div>\n\t\t`;\n\n\t\tlet input;\n\t\tif (this.getLineCount() > 1)\n\t\t{\n\t\t\tinput = Tag.render`\n\t\t\t\t<textarea\n\t\t\t\t\tclass=\"ui-ctl-element ui-entity-editor-field-textarea\"\n\t\t\t\t\tname=\"${name}\"\n\t\t\t\t\tid=\"${name.toLowerCase() + '_text'}\"\n\t\t\t\t\trows=\"${this.getLineCount()}\">${BX.util.htmlspecialchars(value) || ''}</textarea>\n\t\t\t`;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tinput = Tag.render`\n\t\t\t\t<input\n\t\t\t\t\tclass=\"ui-ctl-element\"\n\t\t\t\t\tname=\"${name}\"\n\t\t\t\t\tid=\"${name.toLowerCase() + '_text'}\"\n\t\t\t\t\ttype=\"text\"\n\t\t\t\t\tvalue=\"${BX.util.htmlspecialchars(value) || ''}\"/>\n\t\t\t`;\n\t\t}\n\n\t\tEvent.bind(input, 'input', this.#onInputHandler.bind(this, name));\n\n\t\tif (name === 'CODE')\n\t\t{\n\t\t\tif (!this.isShownSymbolicCode)\n\t\t\t{\n\t\t\t\tDom.addClass(inputWrapper, 'name-code-container-hidden');\n\t\t\t}\n\n\t\t\tif (this.allowToGenerateCode === true)\n\t\t\t{\n\t\t\t\tDom.addClass(input, 'ui-ctl-element-symbol-code-input-disabled');\n\t\t\t\tDom.attr(input, 'readonly', this.allowToGenerateCode);\n\t\t\t}\n\n\t\t\tDom.addClass(inputContainer, 'ui-ctl-ext-before-icon');\n\t\t\tDom.addClass(inputWrapper, 'name-code-container');\n\n\t\t\tconst chainState = this.allowToGenerateCode ? 'chain' : 'unchain';\n\t\t\tconst button = Tag.render`\n\t\t\t\t<button name=\"${name}\" class=\"ui-ctl-before ui-ctl-icon-${chainState}\" id=\"code_state_button\"></button>\n\t\t\t`;\n\t\t\tEvent.bind(button, 'click', this.#onCodeStateButtonClick.bind(this));\n\t\t\tDom.append(button, inputContainer);\n\t\t}\n\n\t\tconst label = this.#creatLabelForEditMode(name);\n\n\t\tDom.append(label, inputWrapper);\n\t\tDom.append(input, inputContainer);\n\t\tDom.append(inputContainer, inputWrapper);\n\n\t\treturn inputWrapper;\n\t}\n\n\t#creatLabelForEditMode(name)\n\t{\n\t\tconst label = Tag.render`<label class=\"ui-entity-editor-block-title\"></label>`;\n\t\tlet labelText;\n\n\t\tif (name === 'CODE')\n\t\t{\n\t\t\tlabelText = Tag.render`<span>${Loc.getMessage('CATALOG_ENTITY_CARD_SYMBOLIC_CODE')}</span>`;\n\t\t\tDom.append(labelText, label);\n\t\t\tDom.append(this.#getHintNode(), label);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tlabelText = Tag.render`\n\t\t\t\t<span>\n\t\t\t\t\t${Loc.getMessage('CATALOG_ENTITY_CARD_NAME')}\n\t\t\t\t\t<span style=\"color: rgb(255, 0, 0);\">*</span>\n\t\t\t\t</span>\n\t\t\t`;\n\t\t\tDom.append(labelText, label);\n\t\t}\n\n\t\treturn label;\n\t}\n\n\t#onInputHandler(name)\n\t{\n\t\tthis._changeHandler();\n\t\tif (this.allowToGenerateCode && name === 'NAME')\n\t\t{\n\t\t\tconst codeTextElement = document.getElementById('code_text');\n\t\t\tconst nameTextElement = document.getElementById('name_text');\n\t\t\tcodeTextElement.value = BX.translit(nameTextElement.value, null);\n\t\t}\n\t}\n\n\t#getHintNode()\n\t{\n\t\treturn BX.UI.Hint.createNode(Loc.getMessage('CATALOG_ENTITY_CARD_SYMBOLIC_CODE_HINT'));\n\t}\n\n\t#onCodeStateButtonClick()\n\t{\n\t\tconst codeTextElement = document.getElementById('code_text');\n\t\tconst nameTextElement = document.getElementById('name_text');\n\t\tconst codeStateButtonElement = document.getElementById('code_state_button');\n\n\t\tthis.allowToGenerateCode = !this.allowToGenerateCode;\n\t\tcodeTextElement.readOnly = this.allowToGenerateCode;\n\n\t\tif (this.allowToGenerateCode)\n\t\t{\n\t\t\tcodeTextElement.className = 'ui-ctl-element ui-ctl-element-symbol-code-input-disabled';\n\t\t\tcodeStateButtonElement.className = 'ui-ctl-before ui-ctl-icon-chain';\n\t\t\tcodeTextElement.value = BX.translit(nameTextElement.value, null);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tcodeTextElement.className = 'ui-ctl-element';\n\t\t\tcodeStateButtonElement.className = 'ui-ctl-before ui-ctl-icon-unchain';\n\n\t\t\tconst nameTextElement = document.getElementById('name_text');\n\t\t\tconst newValue = BX.translit(nameTextElement.value, null);\n\n\t\t\tif (codeTextElement.value !== newValue)\n\t\t\t{\n\t\t\t\tthis.markAsChanged();\n\t\t\t}\n\t\t\tcodeTextElement.value = newValue;\n\t\t}\n\t}\n\n\tgetViewInnerLayout()\n\t{\n\t\tconst textValue = Tag.render`\n\t\t\t<div class=\"ui-entity-editor-content-block-text\"></div>\n\t\t`;\n\n\t\tconst values = this.getValue();\n\n\t\tif (!this.isShownSymbolicCode)\n\t\t{\n\t\t\tDom.append(Tag.render`<p>${BX.util.htmlspecialchars(values.NAME)}</p>`, textValue);\n\n\t\t\treturn textValue;\n\t\t}\n\n\t\tDom.append(Tag.render`\n\t\t\t<div class=\"ui-entity-editor-symbol-code-label\">\n\t\t\t\t${Loc.getMessage('CATALOG_ENTITY_CARD_NAME')}\n\t\t\t</div>\n\t\t`, textValue);\n\n\t\tDom.append(Tag.render`<p>${BX.util.htmlspecialchars(values.NAME)}</p>`, textValue);\n\n\t\tDom.addClass(textValue, 'ui-entity-editor-symbol-code');\n\t\tconst codeValue = values.CODE === '' ? Loc.getMessage('UI_ENTITY_EDITOR_FIELD_EMPTY') : values.CODE;\n\t\tconst chainClass = this.allowToGenerateCode\n\t\t\t? 'ui-entity-editor-symbol-code-value-chain'\n\t\t\t: 'ui-entity-editor-symbol-code-value-unchain'\n\t\t;\n\n\t\tDom.append(Tag.render`\n\t\t\t<div class=\"ui-entity-editor-symbol-code-box\">\n\t\t\t\t<div class=\"ui-entity-editor-symbol-code-label\">\n\t\t\t\t\t${Loc.getMessage('CATALOG_ENTITY_CARD_SYMBOLIC_CODE')}\n\t\t\t\t</div>\n\t\t\t\t<div class=\"ui-entity-editor-symbol-code-value ${chainClass}\">\n\t\t\t\t\t${BX.util.htmlspecialchars(codeValue)}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`, textValue);\n\n\t\treturn textValue;\n\t}\n}","import IblockSectionField from './iblock-section/field';\nimport NameCodeField from './name-code/field';\nimport {type BaseEvent, EventEmitter} from 'main.core.events'\n\nexport default class FieldsFactory\n{\n\tconstructor()\n\t{\n\t\tEventEmitter.subscribe('BX.UI.EntityEditorControlFactory:onInitialize', (event: BaseEvent) => {\n\t\t\tconst [, eventArgs] = event.getCompatData();\n\t\t\teventArgs.methods['entityCard'] = this.factory.bind(this);\n\t\t});\n\t}\n\n\tfactory(type, controlId, settings)\n\t{\n\t\tif (type === 'iblock_section')\n\t\t{\n\t\t\treturn new IblockSectionField(controlId, settings);\n\t\t}\n\t\telse if (type === 'name-code')\n\t\t{\n\t\t\treturn new NameCodeField(controlId, settings);\n\t\t}\n\n\t\treturn null;\n\t}\n}","import {ajax} from 'main.core';\nimport {type BaseEvent, EventEmitter} from 'main.core.events'\n\nconst PROPERTY_PREFIX = 'PROPERTY_';\nconst PROPERTY_BLOCK_NAME = 'properties';\n\nexport default class IblockSectionController extends BX.UI.EntityEditorController\n{\n\tonChangeHandler = this.handleChange.bind(this);\n\n\tconstructor(id, settings = {})\n\t{\n\t\tsuper();\n\t\tthis.initialize(id, settings);\n\n\t\tthis.isRequesting = false;\n\t\tthis.clearServiceFields();\n\n\t\tEventEmitter.subscribe(this._editor, 'IblockSectionField:onChange', this.onChangeHandler);\n\t}\n\n\tclearServiceFields()\n\t{\n\t\tthis.lastDataHash = null;\n\t\tthis.initialElements = null;\n\t\tthis.deletedControls = {};\n\t\tthis.deletedAvailableSchemes = {};\n\t}\n\n\thandleChange(event: BaseEvent)\n\t{\n\t\tconst newData = event.getData();\n\t\tnewData.shift();\n\t\tconst newDataHash = JSON.stringify(newData);\n\n\t\tif (this.lastDataHash === null || this.lastDataHash !== newDataHash)\n\t\t{\n\t\t\tthis.lastDataHash = newDataHash;\n\n\t\t\tclearTimeout(this.timeout);\n\t\t\tthis.timeout = setTimeout(() => {\n\t\t\t\tthis.refreshLinkedProperties(newData)\n\t\t\t}, 50);\n\t\t}\n\t}\n\n\trefreshLinkedProperties(sectionIds)\n\t{\n\t\tif (this.isRequesting)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.isRequesting = true;\n\n\t\tajax.runComponentAction(\n\t\t\tthis._editor._settings.ajaxData.COMPONENT_NAME,\n\t\t\t'refreshLinkedProperties',\n\t\t\t{\n\t\t\t\tmode: 'class',\n\t\t\t\tsignedParameters: this._editor._settings.ajaxData.SIGNED_PARAMETERS,\n\t\t\t\tdata: {sectionIds}\n\t\t\t}\n\t\t)\n\t\t\t.then(response => {\n\t\t\t\tconst allCurrentProperties = this.getAllCurrentProperties();\n\n\t\t\t\tif (this.initialElements === null)\n\t\t\t\t{\n\t\t\t\t\tthis.initialElements = [...allCurrentProperties];\n\t\t\t\t}\n\n\t\t\t\tresponse.data.ENTITY_FIELDS.forEach(property => {\n\t\t\t\t\tif (!allCurrentProperties.includes(property.name))\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.addProperty(property, {\n\t\t\t\t\t\t\tlayout: {\n\t\t\t\t\t\t\t\tforceDisplay: true\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmode: BX.UI.EntityEditorMode.edit\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tconst newProperties = response.data.ENTITY_FIELDS.map(el => el.name);\n\t\t\t\tallCurrentProperties.forEach(name => {\n\t\t\t\t\tif (!newProperties.includes(name))\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.removeProperty(name);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tthis._editor.commitSchemeChanges();\n\t\t\t\tthis.isRequesting = false;\n\t\t\t})\n\t\t\t.catch(response => {\n\t\t\t\tthis.isRequesting = false;\n\t\t\t})\n\t\t;\n\t}\n\n\tgetAllCurrentProperties()\n\t{\n\t\tconst activeProperties = this._editor.getAllControls()\n\t\t\t.filter(el => el.getName().indexOf(PROPERTY_PREFIX) === 0)\n\t\t\t.map(el => el.getName());\n\n\t\tconst hiddenProperties = this._editor.getAvailableSchemeElements()\n\t\t\t.filter(el => el.getName().indexOf(PROPERTY_PREFIX) === 0)\n\t\t\t.map(el => el.getName());\n\n\t\treturn [...activeProperties, ...hiddenProperties];\n\t}\n\n\taddProperty(property, options = {})\n\t{\n\t\tif (property.name in this.deletedControls)\n\t\t{\n\t\t\tthis.restoreDeletedProperty(this.deletedControls[property.name], options);\n\t\t}\n\t\telse if (property.name in this.deletedAvailableSchemes)\n\t\t{\n\t\t\tthis.restoreDeletedAvailableProperty(this.deletedAvailableSchemes[property.name], options);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.createProperty(property, options);\n\t\t}\n\t}\n\n\trestoreDeletedProperty(control, options = {})\n\t{\n\t\tconst mode = options.mode || control._mode;\n\t\tcontrol._mode = mode;\n\n\t\tcontrol.getParent().addChild(control, {\n\t\t\t...options,\n\t\t\tenableSaving: false\n\t\t});\n\n\t\tif (mode === BX.UI.EntityEditorMode.edit)\n\t\t{\n\t\t\tthis._editor.registerActiveControl(control);\n\t\t}\n\t\telse if (mode === BX.UI.EntityEditorMode.view)\n\t\t{\n\t\t\tthis._editor.unregisterActiveControl(control);\n\t\t}\n\t}\n\n\trestoreDeletedAvailableProperty(schemeElement, options = {})\n\t{\n\t\tthis._editor.addAvailableSchemeElement(schemeElement);\n\t}\n\n\tcreateProperty(property, options = {})\n\t{\n\t\tconst propertyBlockScheme = this._editor.getSchemeElementByName(PROPERTY_BLOCK_NAME);\n\t\tconst schemeElement = BX.UI.EntitySchemeElement.create(property);\n\t\tpropertyBlockScheme._elements.push(schemeElement);\n\n\t\tconst mode = options.mode || BX.UI.EntityEditorMode.edit;\n\t\tconst control = this._editor.createControl(\n\t\t\tschemeElement.getType(),\n\t\t\tschemeElement.getName(),\n\t\t\t{\n\t\t\t\tschemeElement: schemeElement,\n\t\t\t\tmodel: this._model,\n\t\t\t\tparent: this,\n\t\t\t\tmode: mode\n\t\t\t}\n\t\t);\n\n\t\tif (!control)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst propertyBlockControl = this._editor.getControlById(PROPERTY_BLOCK_NAME);\n\t\tpropertyBlockControl.addChild(control, {\n\t\t\t...options,\n\t\t\tenableSaving: false\n\t\t});\n\n\t\treturn control;\n\t}\n\n\tremoveProperty(name)\n\t{\n\t\tconst control = this._editor.getControlByIdRecursive(name);\n\n\t\tif (control)\n\t\t{\n\t\t\tthis.deletedControls[control.getName()] = control;\n\t\t\tcontrol.getParent().removeChild(control, {enableSaving: false});\n\t\t\tthis._editor.removeAvailableSchemeElement(control.getSchemeElement());\n\t\t\tthis._editor.unregisterActiveControl(control);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tconst schemeElement = this._editor.getAvailableSchemeElementByName(name);\n\n\t\t\tif (schemeElement)\n\t\t\t{\n\t\t\t\tthis.deletedAvailableSchemes[schemeElement.getName()] = schemeElement;\n\t\t\t\tthis._editor.removeAvailableSchemeElement(schemeElement);\n\t\t\t}\n\t\t}\n\t}\n\n\trollback()\n\t{\n\t\tsuper.rollback();\n\n\t\tif (this.initialElements === null)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst allCurrentProperties = this.getAllCurrentProperties();\n\n\t\tallCurrentProperties.forEach(element => {\n\t\t\tif (!this.initialElements.includes(element))\n\t\t\t{\n\t\t\t\tthis.removeProperty(element);\n\t\t\t}\n\t\t});\n\n\t\tthis.initialElements.forEach(element => {\n\t\t\tif (!allCurrentProperties.includes(element))\n\t\t\t{\n\t\t\t\tthis.addProperty({name: element}, {\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\tforceDisplay: false\n\t\t\t\t\t},\n\t\t\t\t\tmode: BX.UI.EntityEditorMode.view\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\tthis._editor.commitSchemeChanges();\n\n\t\tthis.clearServiceFields()\n\t}\n}","import {type BaseEvent, EventEmitter} from 'main.core.events';\nimport {Dom, Reflection, Type} from 'main.core';\n\nexport default class VariationGridController extends BX.UI.EntityEditorController\n{\n\tareaHeight = null\n\n\tconstructor(id, settings)\n\t{\n\t\tsuper();\n\t\tthis.initialize(id, settings);\n\t}\n\n\tdoInitialize()\n\t{\n\t\tsuper.doInitialize();\n\n\t\tEventEmitter.subscribe('Grid::thereEditedRows', this.markAsChangedHandler.bind(this));\n\t\tEventEmitter.subscribe('Grid::noEditedRows', this.checkEditorToolbar.bind(this));\n\t\tEventEmitter.subscribe('Grid::updated', this.checkEditorToolbar.bind(this));\n\t\tEventEmitter.subscribe('Grid::beforeRequest', this.onBeforeGridRequest.bind(this));\n\n\t\tEventEmitter.subscribe('onAjaxSuccess', this.ajaxSuccessHandler.bind(this));\n\n\t\tEventEmitter.subscribe('BX.UI.EntityEditorIncludedArea:onBeforeLoad', this.onBeforeIncludedAreaLoaded.bind(this));\n\t\tEventEmitter.subscribe('BX.UI.EntityEditorIncludedArea:onAfterLoad', this.onAfterIncludedAreaLoaded.bind(this));\n\n\t\tthis.subscribeToFormSubmit();\n\t}\n\n\tonBeforeIncludedAreaLoaded(event: BaseEvent)\n\t{\n\t\tif (Type.isNumber(this.areaHeight))\n\t\t{\n\t\t\tDom.style(this.getVariationGridLoader(), 'height', this.areaHeight + 'px');\n\t\t}\n\t}\n\n\tonAfterIncludedAreaLoaded(event: BaseEvent)\n\t{\n\t\tDom.style(this.getVariationGridLoader(), 'height', '');\n\t\tthis.areaHeight = null;\n\t}\n\n\tgetVariationGridLoader()\n\t{\n\t\tconst control = this.getGridControl();\n\n\t\tif (control)\n\t\t{\n\t\t\tconst wrapper = control.getWrapper();\n\n\t\t\tif (wrapper)\n\t\t\t{\n\t\t\t\treturn wrapper.querySelector('.ui-entity-editor-included-area-container-loader');\n\t\t\t}\n\t\t}\n\n\t\treturn null;\n\t}\n\n\trollback()\n\t{\n\t\tsuper.rollback();\n\t\tthis.checkEditorToolbar();\n\t\tthis.unsubscribeGridEvents();\n\n\t\tBX.Main.gridManager.destroy(this.getGridId());\n\t}\n\n\tonAfterSave()\n\t{\n\t\tif (this.isChanged() || this._editor.isChanged())\n\t\t{\n\t\t\tthis.setGridControlCache(null);\n\t\t\tEventEmitter.emit(\n\t\t\t\t'onAfterVariationGridSave',\n\t\t\t\t{\n\t\t\t\t\tgridId: this.getGridId(),\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\tthis.subscribeToFormSubmit();\n\t\tsuper.onAfterSave();\n\t}\n\n\tsetGridControlCache(html)\n\t{\n\t\tconst control = this.getGridControl();\n\n\t\tif (control)\n\t\t{\n\t\t\tcontrol._loadedHtml = html;\n\t\t}\n\t}\n\n\tonBeforeSubmit()\n\t{\n\t\tthis.unsubscribeGridEvents();\n\t}\n\n\t/**\n\t * @returns {BX.Catalog.VariationGrid|null}\n\t */\n\tgetVariationGridComponent()\n\t{\n\t\treturn Reflection.getClass('BX.Catalog.VariationGrid.Instance');\n\t}\n\n\tunsubscribeGridEvents()\n\t{\n\t\tconst gridComponent = this.getVariationGridComponent();\n\t\tif (gridComponent)\n\t\t{\n\t\t\tgridComponent.destroy();\n\t\t}\n\n\t\tconst popup = this.getGrid()?.getSettingsWindow()?.getPopup();\n\t\tif (popup)\n\t\t{\n\t\t\tEventEmitter.emit(this.getGrid().getSettingsWindow().getPopup(), 'onDestroy');\n\t\t}\n\n\t\tEventEmitter.unsubscribeAll('BX.Main.grid:paramsUpdated');\n\t\tthis.getGrid()?.destroy();\n\t}\n\n\tajaxSuccessHandler(event: BaseEvent)\n\t{\n\t\tconst [, xhrData] = event.getCompatData();\n\n\t\tif (xhrData.url.indexOf(this.getReloadUrl()) === 0)\n\t\t{\n\t\t\tthis.setGridControlCache(null);\n\t\t}\n\t}\n\n\t// ajax form initializes every \"save\" action\n\tsubscribeToFormSubmit()\n\t{\n\t\tEventEmitter.subscribe(this._editor._ajaxForm, 'onBeforeSubmit', this.onBeforeSubmitForm.bind(this));\n\t}\n\n\tmarkAsChangedHandler()\n\t{\n\t\tif (!this._editor.isNew())\n\t\t{\n\t\t\tthis.markAsChanged();\n\t\t}\n\t}\n\n\tcheckEditorToolbar()\n\t{\n\t\tthis._isChanged = false;\n\n\t\tif (this._editor.getActiveControlCount() > 0)\n\t\t{\n\t\t\tthis._editor.showToolPanel();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis._editor.hideToolPanel();\n\t\t}\n\n\t\tif (this._editor._toolPanel)\n\t\t{\n\t\t\tthis._editor._toolPanel.clearErrors();\n\t\t}\n\t}\n\n\tgetGridControl()\n\t{\n\t\treturn this._editor.getControlById('variation_grid');\n\t}\n\n\tonBeforeGridRequest(event: BaseEvent)\n\t{\n\t\tconst [grid, eventArgs] = event.getCompatData();\n\n\t\tif (!grid || !grid.parent || grid.parent.getId() !== this.getGridId())\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\teventArgs.sessid = BX.bitrix_sessid();\n\t\teventArgs.method = 'POST';\n\t\teventArgs.url = this.getReloadUrl();\n\t\teventArgs.data = {\n\t\t\t...eventArgs.data,\n\t\t\tsignedParameters: this.getSignedParameters()\n\t\t};\n\n\t\tthis.unsubscribeGridEvents();\n\t}\n\n\tgetReloadUrl()\n\t{\n\t\treturn this.getConfigStringParam('reloadUrl', '');\n\t}\n\n\tgetSignedParameters()\n\t{\n\t\treturn this.getConfigStringParam('signedParameters', '');\n\t}\n\n\tgetGridId()\n\t{\n\t\treturn this.getConfigStringParam('gridId', '');\n\t}\n\n\tgetGrid()\n\t{\n\t\tif (!Reflection.getClass('BX.Main.gridManager.getInstanceById'))\n\t\t{\n\t\t\treturn null;\n\t\t}\n\n\t\treturn BX.Main.gridManager.getInstanceById(this.getGridId());\n\t}\n\n\tonBeforeSubmitForm(event: BaseEvent)\n\t{\n\t\tconst [, eventArgs] = event.getCompatData();\n\t\tconst grid = this.getGrid();\n\n\t\tif (!grid)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst skuGridName = this.getGridId();\n\t\tconst skuGridData = grid.getRows().getEditSelectedValues();\n\t\tconst copyItemsMap = grid.getParam('COPY_ITEMS_MAP', {});\n\n\t\t// replace sku custom properties edit data names with original names\n\t\tfor (let id in skuGridData)\n\t\t{\n\t\t\tif (!skuGridData.hasOwnProperty(id))\n\t\t\t{\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tfor (let name in skuGridData[id])\n\t\t\t{\n\t\t\t\tif (!skuGridData[id].hasOwnProperty(name))\n\t\t\t\t{\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tif (name.includes('SKU_GRID_CATALOG_GROUP')\n\t\t\t\t\t|| name.includes('SKU_GRID_PURCHASING')\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\tfor (let priceField in skuGridData[id][name])\n\t\t\t\t\t{\n\t\t\t\t\t\tif (skuGridData[id][name].hasOwnProperty(priceField))\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tskuGridData[id][priceField] = skuGridData[id][name][priceField];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if (name.includes('[EDIT_HTML]'))\n\t\t\t\t{\n\t\t\t\t\tlet newName = name.replace('[EDIT_HTML]', '');\n\n\t\t\t\t\t// lookup for a custom file fields\n\t\t\t\t\tif (newName.endsWith('_custom'))\n\t\t\t\t\t{\n\t\t\t\t\t\tif ('bxu_files[]' in skuGridData[id][name])\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tskuGridData[id][name].isFile = true;\n\t\t\t\t\t\t\tdelete skuGridData[id][name]['bxu_files[]'];\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (skuGridData[id][name].isFile)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfor (let fieldName in skuGridData[id][name])\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tif (skuGridData[id][name].hasOwnProperty(fieldName))\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t// check for new files like \"MORE_PHOTO_n1[name]\"(multiple) or \"DETAIL_PICTURE[name]\"(single)\n\t\t\t\t\t\t\t\t\tlet newFilesRegExp = new RegExp(/([0-9A-Za-z_]+?(_n\\d+)*)\\[([A-Za-z_]+)\\]/);\n\n\t\t\t\t\t\t\t\t\tif (newFilesRegExp.test(fieldName))\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tlet fileCounter, fileSetting;\n\n\t\t\t\t\t\t\t\t\t\t[, fileCounter, , fileSetting] = fieldName.match(newFilesRegExp);\n\n\t\t\t\t\t\t\t\t\t\tif (fileCounter && fileSetting)\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tskuGridData[id][name][fileCounter] = skuGridData[id][name][fileCounter] || {};\n\t\t\t\t\t\t\t\t\t\t\tskuGridData[id][name][fileCounter][fileSetting] = skuGridData[id][name][fieldName];\n\t\t\t\t\t\t\t\t\t\t\tdelete skuGridData[id][name][fieldName];\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tskuGridData[id][newName] = skuGridData[id][name];\n\t\t\t\t\tdelete skuGridData[id][name];\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!Type.isNil(copyItemsMap[id]))\n\t\t\t{\n\t\t\t\tskuGridData[id]['COPY_SKU_ID'] = copyItemsMap[id];\n\t\t\t}\n\t\t}\n\n\t\tif (!Type.isPlainObject(eventArgs.options))\n\t\t{\n\t\t\teventArgs.options = {};\n\t\t}\n\n\t\tif (!Type.isPlainObject(eventArgs.options.data))\n\t\t{\n\t\t\teventArgs.options.data = {};\n\t\t}\n\n\t\teventArgs.options.data[skuGridName] = skuGridData;\n\n\t\tthis.areaHeight = this.getGridControl().getWrapper().offsetHeight;\n\n\t\tBX.Main.gridManager.destroy(this.getGridId());\n\t}\n}","import {EventEmitter} from 'main.core.events'\n\n\nexport default class GoogleMapController extends BX.UI.EntityEditorController\n{\n\tconstructor(id, settings)\n\t{\n\t\tsuper();\n\t\tthis.initialize(id, settings);\n\t\tEventEmitter.subscribe('onAddGoogleMapPoint', this.markAsChanged.bind(this));\n\t}\n\n\trollback()\n\t{\n\t\tsuper.rollback();\n\t\tif (this._isChanged)\n\t\t{\n\t\t\tthis._isChanged = false;\n\t\t}\n\t}\n}","import {EventEmitter} from 'main.core.events'\n\n\nexport default class EmployeeController extends BX.UI.EntityEditorController\n{\n\tconstructor(id, settings)\n\t{\n\t\tsuper();\n\t\tthis.initialize(id, settings);\n\t\tEventEmitter.subscribe('onChangeEmployee', this.markAsChanged.bind(this));\n\t}\n\n\trollback()\n\t{\n\t\tsuper.rollback();\n\t\tif (this._isChanged)\n\t\t{\n\t\t\tthis._isChanged = false;\n\t\t}\n\t}\n}","import {EventEmitter} from 'main.core.events'\n\nexport default class BindingToCrmElementController extends BX.UI.EntityEditorController\n{\n\tconstructor(id, settings)\n\t{\n\t\tsuper();\n\t\tthis.initialize(id, settings);\n\t}\n\n\trollback()\n\t{\n\t\tsuper.rollback();\n\t\tif (this._isChanged)\n\t\t{\n\t\t\tthis._isChanged = false;\n\t\t}\n\t\tEventEmitter.unsubscribeAll('BX.Main.User.SelectorController::open');\n\t}\n\n\tonBeforeSubmit()\n\t{\n\t\tsuper.onBeforeSubmit();\n\t\tEventEmitter.unsubscribeAll('BX.Main.User.SelectorController::open');\n\t}\n}","import {ajax} from 'main.core';\nimport {type BaseEvent, EventEmitter} from 'main.core.events'\n\nexport default class FieldConfiguratorController extends BX.UI.EntityEditorController\n{\n\tfieldAddHandler = this.handleFieldAdd.bind(this);\n\tfieldUpdateHandler = this.handleFieldUpdate.bind(this);\n\n\tconstructor(id, settings)\n\t{\n\t\tsuper();\n\t\tthis.initialize(id, settings);\n\n\t\tEventEmitter.subscribe(this._editor, 'BX.UI.EntityEditor:onFieldCreate', this.fieldAddHandler);\n\t\tEventEmitter.subscribe(this._editor, 'BX.UI.EntityEditor:onFieldModify', this.fieldUpdateHandler);\n\t}\n\n\thandleFieldAdd(event: BaseEvent)\n\t{\n\t\tconst [section, eventArgs] = event.getCompatData();\n\t\tconst fields = this.getFieldsForm(eventArgs);\n\n\t\tajax.runComponentAction(\n\t\t\tthis._editor._settings.ajaxData.COMPONENT_NAME,\n\t\t\t'addProperty',\n\t\t\t{\n\t\t\t\tmode: 'class',\n\t\t\t\tsignedParameters: this._editor._settings.ajaxData.SIGNED_PARAMETERS,\n\t\t\t\tdata: fields\n\t\t\t}\n\t\t)\n\t\t\t.then(response => {\n\t\t\t\tconst property = response.data.PROPERTY_FIELDS;\n\t\t\t\tif (!property)\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst additionalValues = response.data.ADDITIONAL_VALUES;\n\t\t\t\tif (additionalValues)\n\t\t\t\t{\n\t\t\t\t\tconst model = this._editor._model;\n\t\t\t\t\tfor (let [key, value] of Object.entries(additionalValues))\n\t\t\t\t\t{\n\t\t\t\t\t\tmodel.setField(key, value);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tlet mode = BX.UI.EntityEditorMode.view;\n\t\t\t\tif (section instanceof BX.UI.EntityEditorSection)\n\t\t\t\t{\n\t\t\t\t\tmode = section.getMode()\n\t\t\t\t}\n\n\t\t\t\tconst control = this.createProperty(property, section.getName(), {\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\tnotifyIfNotDisplayed: true,\n\t\t\t\t\t\tforceDisplay: eventArgs.showAlways\n\t\t\t\t\t},\n\t\t\t\t\tmode: mode\n\t\t\t\t});\n\n\t\t\t\tcontrol.toggleOptionFlag(eventArgs.showAlways);\n\n\t\t\t\tthis._editor.saveSchemeChanges();\n\n\t\t\t\tthis.isRequesting = false;\n\t\t\t})\n\t\t\t.catch(response => {\n\t\t\t\tthis.isRequesting = false;\n\t\t\t})\n\t\t;\n\t}\n\n\thandleFieldUpdate(event: BaseEvent)\n\t{\n\t\tconst [section, eventArgs] = event.getCompatData();\n\t\tif (!(eventArgs.field instanceof BX.UI.EntityEditorControl))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst currentField = eventArgs.field;\n\t\teventArgs.CODE = currentField.getId();\n\n\t\tconst fields = this.getFieldsForm(eventArgs);\n\t\tconst schemeElement = currentField.getSchemeElement();\n\t\tschemeElement._isRequired = eventArgs.mandatory;\n\n\t\tajax.runComponentAction(\n\t\t\tthis._editor._settings.ajaxData.COMPONENT_NAME,\n\t\t\t'updateProperty',\n\t\t\t{\n\t\t\t\tmode: 'class',\n\t\t\t\tsignedParameters: this._editor._settings.ajaxData.SIGNED_PARAMETERS,\n\t\t\t\tdata: fields\n\t\t\t}\n\t\t).then(response => {\n\t\t\tconst property = response?.data?.PROPERTY_FIELDS;\n\t\t\tif (currentField instanceof BX.UI.EntityEditorDatetime || currentField instanceof BX.UI.EntityEditorMultiDatetime)\n\t\t\t{\n\t\t\t\tconst schemeElementData = currentField.getSchemeElement().getData();\n\t\t\t\tconst propertyData = property?.data;\n\t\t\t\tif (propertyData)\n\t\t\t\t{\n\t\t\t\t\tschemeElementData.enableTime = propertyData.enableTime;\n\t\t\t\t\tschemeElementData.dateViewFormat = propertyData.dateViewFormat;\n\t\t\t\t\tcurrentField.refreshLayout();\n\t\t\t\t}\n\t\t\t}\n\t\t\tlet newType = null;\n\t\t\tlet schemeElement = null;\n\t\t\tif (eventArgs.multiple === true)\n\t\t\t{\n\t\t\t\tif (currentField instanceof BX.UI.EntityEditorText)\n\t\t\t\t{\n\t\t\t\t\tnewType = 'multitext';\n\t\t\t\t}\n\t\t\t\telse if (currentField instanceof BX.UI.EntityEditorList)\n\t\t\t\t{\n\t\t\t\t\tnewType = 'multilist';\n\t\t\t\t}\n\t\t\t\telse if (currentField instanceof BX.UI.EntityEditorDatetime)\n\t\t\t\t{\n\t\t\t\t\tnewType = 'multidatetime';\n\t\t\t\t}\n\t\t\t\telse if (currentField instanceof BX.UI.EntityEditorNumber)\n\t\t\t\t{\n\t\t\t\t\tnewType = 'multinumber';\n\t\t\t\t}\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tif (currentField instanceof BX.UI.EntityEditorMultiList)\n\t\t\t\t{\n\t\t\t\t\tnewType = 'list';\n\t\t\t\t}\n\t\t\t\telse if (currentField instanceof BX.UI.EntityEditorMultiDatetime)\n\t\t\t\t{\n\t\t\t\t\tnewType = 'datetime';\n\t\t\t\t}\n\t\t\t\telse if (currentField instanceof BX.UI.EntityEditorMultiNumber)\n\t\t\t\t{\n\t\t\t\t\tnewType = 'number';\n\t\t\t\t}\n\t\t\t\telse if (currentField instanceof BX.UI.EntityEditorMultiText)\n\t\t\t\t{\n\t\t\t\t\tnewType = 'text';\n\t\t\t\t}\n\t\t\t}\n\t\t\tschemeElement = currentField.getSchemeElement();\n\t\t\tif (\n\t\t\t\t((currentField instanceof BX.UI.EntityEditorList) || (currentField instanceof BX.UI.EntityEditorMultiList))\n\t\t\t\t&& property\n\t\t\t)\n\t\t\t{\n\t\t\t\tschemeElement = BX.UI.EntitySchemeElement.create(property);\n\t\t\t\tnewType = property.type;\n\t\t\t}\n\t\t\tif (newType)\n\t\t\t{\n\t\t\t\tconst index = section.getChildIndex(currentField);\n\t\t\t\tconst newControl = this._editor.createControl(\n\t\t\t\t\tnewType,\n\t\t\t\t\teventArgs.CODE,\n\t\t\t\t\t{\n\t\t\t\t\t\tschemeElement: schemeElement,\n\t\t\t\t\t\tmodel: section._model,\n\t\t\t\t\t\tparent: section,\n\t\t\t\t\t\tmode: section.getMode()\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\tsection.addChild(newControl, {\n\t\t\t\t\tindex,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\tforceDisplay: true\n\t\t\t\t\t},\n\t\t\t\t\tenableSaving: false\n\t\t\t\t});\n\n\t\t\t\tcurrentField._schemeElement = null;\n\t\t\t\tsection.removeChild(currentField, {\n\t\t\t\t\tenableSaving: false\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tthis.isRequesting = false;\n\t\t})\n\t\t\t.catch(response => {\n\t\t\t\tthis.isRequesting = false;\n\t\t\t});\n\t}\n\n\tgetFieldsForm(fields)\n\t{\n\t\tconst form = new FormData();\n\t\tconst formatted = {\n\t\t\tNAME: fields.label,\n\t\t\tMULTIPLE: fields.multiple ? 'Y' : 'N',\n\t\t\tIS_REQUIRED: fields.mandatory ? 'Y' : 'N',\n\t\t\tIS_PUBLIC: fields.isPublic ? 'Y' : 'N',\n\t\t\tPROPERTY_TYPE: 'S',\n\t\t\tCODE: fields.CODE || ''\n\t\t};\n\n\t\tswitch (fields.typeId)\n\t\t{\n\t\t\tcase 'integer':\n\t\t\tcase 'double':\n\t\t\t\tformatted.PROPERTY_TYPE = 'N';\n\t\t\t\tbreak;\n\t\t\tcase 'list':\n\t\t\tcase 'multilist':\n\t\t\t\tformatted.PROPERTY_TYPE = 'L';\n\t\t\t\t(fields.enumeration || []).forEach((enumItem, key) => {\n\t\t\t\t\tform.append(this.getFormFieldName('VALUES][' + key + '][SORT'), enumItem.SORT);\n\t\t\t\t\tform.append(this.getFormFieldName('VALUES][' + key + '][VALUE'), enumItem.VALUE);\n\t\t\t\t\tform.append(this.getFormFieldName('VALUES][' + key + '][ID'), enumItem.ID);\n\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\tcase 'directory':\n\t\t\t\tformatted.USER_TYPE = 'directory';\n\t\t\t\t(fields.enumeration || []).forEach((enumItem, key) => {\n\t\t\t\t\tform.append(this.getFormFieldName('VALUES][' + key + '][SORT'), enumItem.SORT);\n\t\t\t\t\tform.append(this.getFormFieldName('VALUES][' + key + '][VALUE'), enumItem.VALUE.value);\n\t\t\t\t\tform.append(this.getFormFieldName('VALUES][' + key + '][XML_ID'), enumItem.XML_ID);\n\t\t\t\t\tform.append(this.getFormFieldName('VALUES][' + key + '][FILE_ID'), enumItem.FILE_ID);\n\t\t\t\t\tform.append('FILES[' + enumItem.SORT + ']', enumItem.VALUE.file);\n\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\tcase 'boolean':\n\t\t\t\tformatted.PROPERTY_TYPE = 'L';\n\t\t\t\tform.append(this.getFormFieldName('VALUES][0][VALUE'), 'Y')\n\t\t\t\tformatted.LIST_TYPE = 'C';\n\t\t\t\tbreak;\n\t\t\tcase 'money':\n\t\t\t\tformatted.USER_TYPE = 'Money';\n\t\t\t\tbreak;\n\t\t\tcase 'address':\n\t\t\t\tformatted.USER_TYPE = 'map_google';\n\t\t\t\tbreak;\n\t\t\tcase 'datetime':\n\t\t\tcase 'multidatetime':\n\t\t\t\tformatted.USER_TYPE = (fields.enableTime === true) ? 'DateTime' : 'Date';\n\t\t\t\tbreak;\n\t\t\tcase 'file':\n\t\t\t\tformatted.USER_TYPE = 'DiskFile';\n\t\t\t\tbreak;\n\t\t}\n\n\t\tfor (let [key, item] of Object.entries(formatted))\n\t\t{\n\t\t\tform.append(this.getFormFieldName(key), item);\n\t\t}\n\t\treturn form;\n\t}\n\n\tgetFormFieldName(name)\n\t{\n\t\treturn 'fields[' + name + ']';\n\t}\n\n\tcreateProperty(property, sectionName, options = {})\n\t{\n\t\tconst sectionSchemeElement = this._editor.getSchemeElementByName(sectionName);\n\t\tif (!sectionSchemeElement)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst schemeElement = BX.UI.EntitySchemeElement.create(property);\n\t\tsectionSchemeElement._elements.push(schemeElement);\n\n\t\tconst mode = options.mode || BX.UI.EntityEditorMode.edit;\n\t\tconst control = this._editor.createControl(\n\t\t\tschemeElement.getType(),\n\t\t\tschemeElement.getName(),\n\t\t\t{\n\t\t\t\tschemeElement: schemeElement,\n\t\t\t\tmodel: this._model,\n\t\t\t\tparent: this,\n\t\t\t\tmode: mode\n\t\t\t}\n\t\t);\n\n\t\tif (!control)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst sectionControl = this._editor.getControlById(sectionName);\n\t\tsectionControl.addChild(control, {\n\t\t\t...options,\n\t\t\tenableSaving: false\n\t\t});\n\n\t\treturn control;\n\t}\n}","import IblockSectionController from './iblock-section/controller';\nimport {type BaseEvent, EventEmitter} from 'main.core.events'\nimport VariationGridController from './variation-grid/controller';\nimport GoogleMapController from './google-map/controller';\nimport EmployeeController from './employee/controller';\nimport BindingToCrmElementController from './binding-to-crm-element/controller';\nimport FieldConfiguratorController from './field-configurator/controller';\n\nexport default class ControllersFactory\n{\n\tconstructor()\n\t{\n\t\tEventEmitter.subscribe('BX.UI.EntityEditorControllerFactory:onInitialize', (event: BaseEvent) => {\n\t\t\tconst [, eventArgs] = event.getCompatData();\n\t\t\teventArgs.methods['entityCard'] = this.factory.bind(this);\n\t\t});\n\t}\n\n\tfactory(type, controlId, settings)\n\t{\n\t\tif (type === 'field_configurator')\n\t\t{\n\t\t\treturn new FieldConfiguratorController(controlId, settings);\n\t\t}\n\n\t\tif (type === 'iblock_section')\n\t\t{\n\t\t\treturn new IblockSectionController(controlId, settings);\n\t\t}\n\n\t\tif (type === 'variation_grid')\n\t\t{\n\t\t\treturn new VariationGridController(controlId, settings);\n\t\t}\n\n\t\tif (type === 'google_map')\n\t\t{\n\t\t\treturn new GoogleMapController(controlId, settings);\n\t\t}\n\n\t\tif (type === 'employee')\n\t\t{\n\t\t\treturn new EmployeeController(controlId, settings);\n\t\t}\n\n\t\tif (type === 'binding_to_crm_element')\n\t\t{\n\t\t\treturn new BindingToCrmElementController(controlId, settings);\n\t\t}\n\n\t\treturn null;\n\t}\n}","import {Event, Tag, Text} from \"main.core\";\n\nexport default class IblockDirectoryFieldItem extends BX.UI.EntityEditorUserFieldListItem\n{\n\tfileChanged = false;\n\n\tstatic create(id, settings)\n\t{\n\t\tconst self = new this;\n\t\tself.initialize(id, settings);\n\t\treturn self;\n\t}\n\n\tlayout()\n\t{\n\t\tif (this._hasLayout)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis._wrapper = Tag.render`\n\t\t\t\t<div class=\"ui-ctl ui-ctl-textbox ui-ctl-w100 ui-ctl-row\"></div>\n\t\t\t`;\n\n\t\tthis._fileInput = Tag.render`\n\t\t\t\t<input class=\"input-image-hidden\" value=\"${BX.prop.getString(this._data, 'FILE_ID', '')}\" type=\"file\" accept=\"image/*\">\n\t\t\t`;\n\t\tEvent.bind(this._fileInput, 'change', this.onFileLoaderChange.bind(this));\n\t\tconst link = BX.prop.getString(this._data, 'IMAGE_SRC', '');\n\t\tthis._wrapper.appendChild(\n\t\t\tTag.render`\n\t\t\t<label class=\"catalog-dictionary-item ${link === '' ? 'catalog-dictionary-item-empty' : ''}\">\n\t\t\t\t<img src=\"${link}\" alt=\"\">\n\t\t\t\t${this._fileInput}\n\t\t\t</label>\n\t\t\t`\n\t\t);\n\n\t\tconst labelText = Text.encode(BX.prop.getString(this._data, 'TEXT', ''));\n\t\tthis._labelInput = Tag.render`\n\t\t\t\t<input \n\t\t\t\t\tclass=\"ui-ctl-element\" \n\t\t\t\t\tvalue=\"${labelText}\"\n\t\t\t\t\tplaceholder=\"${BX.message('CATALOG_ENTITY_CARD_NEW_FIELD_ITEM_PLACEHOLDER')}\"\n\t\t\t\t>\n\t\t\t`;\n\t\tthis._wrapper.appendChild(this._labelInput);\n\n\t\tconst deleteButton = Tag.render`\n\t\t\t\t<div class=\"ui-entity-editor-content-remove-block\"></div>\n\t\t\t`;\n\n\t\tEvent.bind(deleteButton, 'click', this.onDeleteButtonClick.bind(this));\n\t\tthis._wrapper.appendChild(deleteButton);\n\n\t\tvar anchor = BX.prop.getElementNode(this._settings, 'anchor');\n\t\tif (anchor)\n\t\t{\n\t\t\tthis._container.insertBefore(this._wrapper, anchor);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis._container.appendChild(this._wrapper);\n\t\t}\n\n\t\tthis._hasLayout = true;\n\t}\n\n\tonFileLoaderChange(event)\n\t{\n\t\tconst input = event.target;\n\t\tif (input.files && input.files[0])\n\t\t{\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onload = function(e) {\n\t\t\t\tinput.parentNode.querySelector('img').src = e.target.result;\n\t\t\t};\n\n\t\t\tthis.fileChanged = true;\n\t\t\treader.readAsDataURL(input.files[0]);\n\t\t\tinput.parentNode.classList.remove('catalog-dictionary-item-empty');\n\t\t}\n\t}\n\n\tisFileChanged()\n\t{\n\t\treturn this.fileChanged;\n\t}\n\n\tprepareData()\n\t{\n\t\tconst textValue = this._labelInput ? BX.util.trim(this._labelInput.value) : '';\n\t\tconst fileValue = (this._fileInput && this._fileInput.files && this._fileInput.files[0]) ? this._fileInput.files[0] : {};\n\n\t\tconst data = {\n\t\t\t'VALUE': {\n\t\t\t\tvalue: textValue,\n\t\t\t\tfile: fileValue\n\t\t\t},\n\t\t\t'XML_ID': '',\n\t\t\t'FILE_ID': ''\n\t\t};\n\t\tconst xmlId = BX.prop.getString(this._data, 'ID', '');\n\t\tif (BX.type.isNotEmptyString(xmlId))\n\t\t{\n\t\t\tdata['XML_ID'] = xmlId;\n\t\t\tdata['FILE_ID'] = BX.prop.getString(this._data, 'FILE_ID', '');\n\t\t}\n\n\t\treturn data;\n\t}\n}","import {Dom, Event, Reflection, Tag, Text, Type} from \"main.core\";\nimport IblockDirectoryFieldItem from \"./iblock-directory-field-item\";\n\nexport default class IblockFieldConfigurator extends BX.UI.EntityEditorFieldConfigurator\n{\n\tstatic create(id, settings)\n\t{\n\t\tconst self = new this;\n\t\tself.initialize(id, settings);\n\t\treturn self;\n\t}\n\tconstructor()\n\t{\n\t\tsuper();\n\t\tthis._enumItems = [];\n\t}\n\tlayoutInternal()\n\t{\n\t\tthis._wrapper.appendChild(this.getInputContainer());\n\t\tif(this._typeId === \"list\" || this._typeId === \"multilist\" || this._typeId === \"directory\")\n\t\t{\n\t\t\tthis._wrapper.appendChild(Tag.render`<hr class=\"ui-entity-editor-line\">`);\n\t\t\tthis._wrapper.appendChild(this.getEnumerationContainer());\n\t\t}\n\n\t\tthis._wrapper.appendChild(this.getOptionContainer());\n\t\tthis._wrapper.appendChild(this.getErrorContainer());\n\t\tDom.append(Tag.render`<hr class=\"ui-entity-editor-line\">`, this._wrapper);\n\t\tthis._wrapper.appendChild(this.getButtonContainer());\n\t}\n\tgetOptionContainer()\n\t{\n\t\tvar isNew = (this._field === null);\n\t\tthis._optionWrapper = Tag.render`\n\t\t\t<div class=\"ui-entity-editor-content-block\"></div>\n\t\t`;\n\n\t\tif (this._typeId === \"datetime\" || this._typeId === \"multidatetime\")\n\t\t{\n\t\t\tthis._isTimeEnabledCheckBox = this.getIsTimeEnabledCheckBox();\n\t\t}\n\n\t\tif (this._typeId !== \"boolean\" && this._enableMandatoryControl)\n\t\t{\n\t\t\tthis._isRequiredCheckBox = this.getIsRequiredCheckBox();\n\t\t}\n\n\t\tif (this.isAllowedMultipleCheckBox())\n\t\t{\n\t\t\tthis._isMultipleCheckBox = this.getMultipleCheckBox();\n\t\t}\n\n\t\tthis._isPublic = this.getIsPublicCheckBox();\n\n\t\t//region Show Always\n\t\tthis._showAlwaysCheckBox = this.createOption({\n\t\t\tcaption: BX.message('UI_ENTITY_EDITOR_SHOW_ALWAYS'),\n\t\t\thelpUrl: 'https://helpdesk.bitrix24.ru/open/7046149/',\n\t\t\thelpCode: '9627471'\n\t\t});\n\t\tthis._showAlwaysCheckBox.checked = (\n\t\t\tisNew\n\t\t\t\t? BX.prop.getBoolean(this._settings, 'showAlways', true)\n\t\t\t\t: this._field.checkOptionFlag(BX.UI.EntityEditorControlOptions.showAlways)\n\t\t);\n\n\t\tif (!this.isAllowedShowAlwaysCheckBox())\n\t\t{\n\t\t\tDom.style(this._showAlwaysCheckBox.closest('div.ui-ctl-checkbox'), 'display', 'none');\n\t\t}\n\t\t//endregion\n\n\t\treturn this._optionWrapper;\n\t}\n\n\tisAllowedMultipleCheckBox()\n\t{\n\t\tconst isEnabledOfferTree = this?._field?.getSchemeElement()?._settings?.isEnabledOfferTree;\n\t\tconst isMultiple = this?._field?.getSchemeElement()?._settings?.multiple;\n\n\t\treturn !isEnabledOfferTree || isMultiple;\n\t}\n\n\tisAllowedShowAlwaysCheckBox()\n\t{\n\t\treturn true;\n\t}\n\n\tgetInputTitle()\n\t{\n\t\tconst manager = this._editor.getUserFieldManager();\n\t\treturn this._field ? this._field.getTitle() : manager.getDefaultFieldLabel(this._typeId);\n\t}\n\tgetErrorContainer()\n\t{\n\t\tthis._errorContainer = Tag.render`\n\t\t\t<div class=\"ui-entity-editor-content-block\"></div>\n\t\t`;\n\t\treturn this._errorContainer;\n\t}\n\n\tgetEnumerationContainer()\n\t{\n\t\tconst enumWrapper = Tag.render`\n\t\t\t<div class=\"ui-entity-editor-content-block\">\n\t\t\t\t<div class=\"ui-entity-editor-block-title\">\n\t\t\t\t\t<span class=\"ui-entity-editor-block-title-text\">${BX.message(\"UI_ENTITY_EDITOR_UF_ENUM_ITEMS\")}</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`;\n\n\t\tthis._enumItemContainer = Tag.render`\n\t\t\t\t<div class=\"ui-entity-editor-content-block\"></div>\n\t\t\t`;\n\t\tDom.append(this._enumItemContainer, enumWrapper);\n\n\t\tconst addButton = Tag.render`\n\t\t\t\t<div class=\"ui-entity-card-content-add-field\">\n\t\t\t\t\t${BX.message(\"UI_ENTITY_EDITOR_ADD\")}\n\t\t\t\t</div>\n\t\t\t`;\n\t\tEvent.bind(addButton, \"click\", this.onEnumerationItemAddButtonClick.bind(this));\n\n\t\tDom.append(\n\t\t\tTag.render`\n\t\t\t\t<div class=\"ui-entity-editor-content-block-add-field\">\n\t\t\t\t\t${addButton}\n\t\t\t\t</div>\n\t\t\t`,\n\t\t\tenumWrapper\n\t\t);\n\n\t\tif (this._field)\n\t\t{\n\t\t\tthis._field.getItems().forEach(enumFields => {\n\t\t\t\tif (enumFields.VALUE !== '')\n\t\t\t\t{\n\t\t\t\t\tthis.createEnumerationItem({\n\t\t\t\t\t\tVALUE: enumFields.NAME,\n\t\t\t\t\t\tFILE_ID: enumFields.IMAGE || null,\n\t\t\t\t\t\tIMAGE_SRC: enumFields.IMAGE_SRC || '',\n\t\t\t\t\t\tTEXT: enumFields.TEXT || '',\n\t\t\t\t\t\tID: enumFields.VALUE\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tconst lastItem = this.createEnumerationItem();\n\t\tlastItem.focus();\n\t\tthis.initItemClickHandlers();\n\t\treturn enumWrapper;\n\t}\n\n\tonEnumerationItemAddButtonClick()\n\t{\n\t\tthis.unbindItemClickHandlers();\n\t\tthis.createEnumerationItem().focus();\n\t\tthis.bindLastItemClickHandler();\n\t}\n\n\tonEnumerationItemClick()\n\t{\n\t\tthis.unbindItemClickHandlers();\n\t\tthis.createEnumerationItem();\n\t\tthis.bindLastItemClickHandler();\n\t}\n\n\tinitItemClickHandlers()\n\t{\n\t\tthis.unbindItemClickHandlers();\n\t\tthis.bindLastItemClickHandler();\n\t}\n\n\tunbindItemClickHandlers()\n\t{\n\t\tthis._enumItems.forEach(item => Event.unbindAll(item._labelInput, 'click'));\n\t}\n\n\tbindLastItemClickHandler()\n\t{\n\t\tconst lastItem = this._enumItems[this._enumItems.length - 1];\n\t\tif (lastItem)\n\t\t{\n\t\t\tEvent.bindOnce(lastItem._labelInput, 'click', this.onEnumerationItemClick.bind(this));\n\t\t}\n\t}\n\n\tcreateEnumerationItem(data)\n\t{\n\t\tlet item = null;\n\t\tif (this._typeId === 'directory')\n\t\t{\n\t\t\titem = IblockDirectoryFieldItem.create(\n\t\t\t\t\"\",\n\t\t\t\t{\n\t\t\t\t\tconfigurator: this,\n\t\t\t\t\tcontainer: this._enumItemContainer,\n\t\t\t\t\tdata: data\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t\telse\n\t\t{\n\t\t\titem = BX.UI.EntityEditorUserFieldListItem.create(\n\t\t\t\t\"\",\n\t\t\t\t{\n\t\t\t\t\tconfigurator: this,\n\t\t\t\t\tcontainer: this._enumItemContainer,\n\t\t\t\t\tdata: data\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\tthis._enumItems.push(item);\n\t\titem.layout();\n\t\treturn item;\n\t}\n\n\tremoveEnumerationItem(item)\n\t{\n\t\tfor (var i = 0, length = this._enumItems.length; i < length; i++)\n\t\t{\n\t\t\tif (this._enumItems[i] === item)\n\t\t\t{\n\t\t\t\tthis._enumItems[i].clearLayout();\n\t\t\t\tthis._enumItems.splice(i, 1);\n\t\t\t\tthis.initItemClickHandlers();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tprepareSaveParams(e)\n\t{\n\t\tconst params = super.prepareSaveParams(this, arguments);\n\t\tif (this._typeId === 'list' || this._typeId === 'multilist')\n\t\t{\n\t\t\tparams['enumeration'] = [];\n\t\t\tconst hashes = [];\n\t\t\tthis._enumItems.forEach(enumItem => {\n\t\t\t\tif (!(enumItem instanceof BX.UI.EntityEditorUserFieldListItem))\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst enumData = enumItem.prepareData();\n\t\t\t\tif (!enumData)\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst hash = BX.util.hashCode(enumData['VALUE']);\n\t\t\t\tif (BX.util.in_array(hash, hashes))\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\thashes.push(hash);\n\n\t\t\t\tif (Type.isNil(enumData['ID']))\n\t\t\t\t{\n\t\t\t\t\tenumData['ID'] = Text.getRandom();\n\t\t\t\t}\n\n\t\t\t\tenumData['SORT'] = (params['enumeration'].length + 1) * 100;\n\t\t\t\tparams['enumeration'].push(enumData);\n\t\t\t});\n\t\t}\n\t\tif (this._typeId === 'directory')\n\t\t{\n\t\t\tparams['enumeration'] = [];\n\t\t\tthis._enumItems.forEach(enumItem => {\n\t\t\t\tif (!(enumItem instanceof IblockDirectoryFieldItem))\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst enumData = enumItem.prepareData();\n\t\t\t\tif (!enumData)\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tenumData['SORT'] = (params['enumeration'].length + 1) * 100;\n\t\t\t\tparams['enumeration'].push(enumData);\n\t\t\t});\n\t\t}\n\t\telse if (this._typeId === 'datetime' || this._typeId === 'multidatetime')\n\t\t{\n\t\t\tparams['enableTime'] = this._isTimeEnabledCheckBox.checked;\n\t\t}\n\n\t\tif (this._field)\n\t\t{\n\t\t\tif (this._isMultipleCheckBox)\n\t\t\t{\n\t\t\t\tparams[\"multiple\"] = this._isMultipleCheckBox.checked;\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\tif(this._typeId === \"boolean\")\n\t\t\t{\n\t\t\t\tparams[\"multiple\"] = false;\n\t\t\t}\n\t\t\telse if(this._isMultipleCheckBox)\n\t\t\t{\n\t\t\t\tparams[\"multiple\"] = this._isMultipleCheckBox.checked;\n\t\t\t}\n\t\t}\n\n\t\tif (this._isPublic)\n\t\t{\n\t\t\tparams[\"isPublic\"] = this._isPublic.checked;\n\t\t}\n\n\t\treturn params;\n\t}\n\n\tgetMultipleCheckBox()\n\t{\n\t\tconst checkBox = this.createOption({caption: BX.message(\"UI_ENTITY_EDITOR_UF_MULTIPLE_FIELD\")});\n\t\tif (\n\t\t\tthis._field instanceof BX.UI.EntityEditorMultiText\n\t\t\t|| this._field instanceof BX.UI.EntityEditorMultiNumber\n\t\t\t|| this._field instanceof BX.UI.EntityEditorMultiList\n\t\t\t|| this._field instanceof BX.UI.EntityEditorMultiDatetime\n\t\t\t|| this._field instanceof BX.UI.EntityEditorMultiMoney\n\t\t\t|| (this._field instanceof BX.UI.EntityEditorCustom && this._field.getSchemeElement()._settings.multiple)\n\t\t)\n\t\t{\n\t\t\tcheckBox.checked = true;\n\t\t}\n\n\t\treturn checkBox;\n\t}\n\n\tonSaveButtonClick()\n\t{\n\t\tif(this._isLocked)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tif(this._mandatoryConfigurator)\n\t\t{\n\t\t\tif(this._mandatoryConfigurator.isChanged())\n\t\t\t{\n\t\t\t\tthis._mandatoryConfigurator.acceptChanges();\n\t\t\t}\n\t\t\tthis._mandatoryConfigurator.close();\n\t\t}\n\n\t\tlet params = this.prepareSaveParams();\n\n\t\tif (this._field instanceof BX.UI.EntityEditorCustom)\n\t\t{\n\t\t\tthis._field.getSchemeElement().mergeSettings({multiple: params.multiple});\n\n\t\t\tlet modes = ['edit', 'view'];\n\t\t\tfor (let i = 0; i < modes.length; i++)\n\t\t\t{\n\t\t\t\tlet htmlListName = BX.prop.getString(this._field.getSchemeElement().getData(), modes[i] + 'List', null);\n\t\t\t\tlet htmlList = BX.prop.getObject(this._field.getModel().getData(), htmlListName, null);\n\n\t\t\t\tif (htmlList !== null)\n\t\t\t\t{\n\t\t\t\t\tlet newHtml = params.multiple ? htmlList.MULTIPLE : htmlList.SINGLE;\n\t\t\t\t\tlet htmlName = BX.prop.getString(this._field.getSchemeElement().getData(), modes[i], null);\n\n\t\t\t\t\tif (BX.prop.getString(this._field.getModel().getData(), htmlName, null) !== null)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis._field.getModel().setField(htmlName, newHtml);\n\t\t\t\t\t\tthis._field.getModel().setInitFieldValue(htmlName, newHtml);\n\t\t\t\t\t\tif (modes[i] === 'view')\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tif (newHtml === '')\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tDom.clean(this._field.getContentWrapper());\n\t\t\t\t\t\t\t\tthis._field.getContentWrapper().appendChild(BX.create(\"div\",\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tprops: { className: \"ui-entity-editor-content-block-text\" },\n\t\t\t\t\t\t\t\t\t\ttext: BX.message(\"UI_ENTITY_EDITOR_FIELD_EMPTY\")\n\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tthis._field.getContentWrapper().innerHTML = newHtml;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tBX.onCustomEvent(this, \"onSave\", [ this, params]);\n\t}\n\n\tgetIsRequiredCheckBox()\n\t{\n\t\tlet checkBox;\n\t\tif (this._mandatoryConfigurator)\n\t\t{\n\t\t\tcheckBox = this.createOption(\n\t\t\t\t{\n\t\t\t\t\tcaption: this._mandatoryConfigurator.getTitle() + \":\",\n\t\t\t\t\tlabelSettings: {props: {className: \"ui-entity-new-field-addiction-label\"}},\n\t\t\t\t\tcontainerSettings: {style: {alignItems: \"center\"}},\n\t\t\t\t\telements: this._mandatoryConfigurator.getButton().prepareLayout()\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tcheckBox.checked = (this._field && this._field.isRequired())\n\t\t\t\t|| this._mandatoryConfigurator.isCustomized();\n\n\t\t\tthis._mandatoryConfigurator.setSwitchCheckBox(checkBox);\n\t\t\tthis._mandatoryConfigurator.setLabel(checkBox.nextSibling);\n\n\t\t\tthis._mandatoryConfigurator.setEnabled(checkBox.checked);\n\t\t\tthis._mandatoryConfigurator.adjust();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tcheckBox = this.createOption({caption: BX.message(\"UI_ENTITY_EDITOR_UF_REQUIRED_FIELD\")});\n\t\t\tcheckBox.checked = this._field && this._field.isRequired();\n\t\t}\n\t\treturn checkBox;\n\t}\n\n\tgetIsTimeEnabledCheckBox()\n\t{\n\t\tconst checkBox = this.createOption({caption: BX.message(\"UI_ENTITY_EDITOR_UF_ENABLE_TIME\")});\n\t\tcheckBox.checked = this._field && this._field.isTimeEnabled();\n\t\treturn checkBox;\n\t}\n\n\tgetIsPublicCheckBox()\n\t{\n\t\tconst checkBox = this.createOption({caption: BX.message(\"CATALOG_ENTITY_EDITOR_IS_PUBLIC_PROPERTY\")});\n\t\tif (!this._field)\n\t\t{\n\t\t\tcheckBox.checked = true;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tcheckBox.checked = this._field.getSchemeElement() && BX.prop.get(this._field.getSchemeElement().getData(), \"isPublic\", true);\n\t\t}\n\t\treturn checkBox;\n\t}\n}\n\nReflection.namespace('BX.Catalog').IblockFieldConfigurator = IblockFieldConfigurator;","import IblockFieldConfigurator from './iblock-field-configurator'\n\nexport default class IblockFieldConfigurationManager extends BX.UI.EntityConfigurationManager\n{\n\tcreateFieldConfigurator(params, parent)\n\t{\n\t\tif (!BX.type.isPlainObject(params))\n\t\t{\n\t\t\tthrow \"IblockFieldConfigurationManager: The 'params' argument must be object.\";\n\t\t}\n\n\t\treturn this.getSimpleFieldConfigurator(params, parent);\n\t}\n\n\tgetSimpleFieldConfigurator(params, parent)\n\t{\n\t\tlet typeId = \"\";\n\t\tconst field = BX.prop.get(params, 'field', null);\n\t\tif (field)\n\t\t{\n\t\t\ttypeId = field.getType();\n\t\t\tfield.setVisible(false);\n\n\t\t\tif (!BX.prop.get(field.getSchemeElement().getData(), \"isProductProperty\", false))\n\t\t\t{\n\t\t\t\treturn this._fieldConfigurator = BX.UI.EntityEditorFieldConfigurator.create(\n\t\t\t\t\t\"\",\n\t\t\t\t\t{\n\t\t\t\t\t\teditor: this._editor,\n\t\t\t\t\t\tschemeElement: null,\n\t\t\t\t\t\tmodel: parent._model,\n\t\t\t\t\t\tmode: BX.UI.EntityEditorMode.edit,\n\t\t\t\t\t\tparent: parent,\n\t\t\t\t\t\ttypeId: typeId,\n\t\t\t\t\t\tfield: field,\n\t\t\t\t\t\tmandatoryConfigurator: null\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\t\t\telse if (BX.prop.get(field.getSchemeElement().getData(), \"userType\", false))\n\t\t\t{\n\t\t\t\ttypeId = BX.prop.getString(field.getSchemeElement().getData(), \"userType\")\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\ttypeId = BX.prop.get(params, 'typeId', BX.UI.EntityUserFieldType.string);\n\t\t}\n\n\t\tthis._fieldConfigurator = IblockFieldConfigurator.create(\n\t\t\t'',\n\t\t\t{\n\t\t\t\teditor: this._editor,\n\t\t\t\tschemeElement: null,\n\t\t\t\tmodel: parent._model,\n\t\t\t\tmode: BX.UI.EntityEditorMode.edit,\n\t\t\t\tparent: parent,\n\t\t\t\ttypeId: typeId,\n\t\t\t\tfield: field,\n\t\t\t\tmandatoryConfigurator: null\n\t\t\t}\n\t\t);\n\n\t\treturn this._fieldConfigurator;\n\t}\n\n\tisCreationEnabled()\n\t{\n\t\treturn true;\n\t}\n\n\tgetCreationPageUrl(typeId)\n\t{\n\t\treturn this.creationPageUrl;\n\t}\n\n\topenCreationPageUrl(typeId)\n\t{\n\t\tBX.SidePanel.Instance.open(this.getCreationPageUrl(typeId), {\n\t\t\tallowChangeHistory: false,\n\t\t\tcacheable: false\n\t\t});\n\t}\n\n\tsetCreationPageUrl(url)\n\t{\n\t\treturn this.creationPageUrl = url;\n\t}\n\n\tgetTypeInfos()\n\t{\n\t\tvar items = [];\n\t\titems.push({\n\t\t\tname: \"string\",\n\t\t\ttitle: BX.message(\"UI_ENTITY_EDITOR_UF_STRING_TITLE\"),\n\t\t\tlegend: BX.message(\"UI_ENTITY_EDITOR_UF_STRING_LEGEND\")\n\t\t});\n\t\titems.push({\n\t\t\tname: \"list\",\n\t\t\ttitle: BX.message(\"UI_ENTITY_EDITOR_UF_ENUM_TITLE\"),\n\t\t\tlegend: BX.message(\"UI_ENTITY_EDITOR_UF_ENUM_LEGEND\")\n\t\t});\n\t\titems.push({\n\t\t\tname: \"datetime\",\n\t\t\ttitle: BX.message(\"UI_ENTITY_EDITOR_UF_DATETIME_TITLE\"),\n\t\t\tlegend: BX.message(\"UI_ENTITY_EDITOR_UF_DATETIME_LEGEND\")\n\t\t});\n\t\titems.push({\n\t\t\tname: \"address\",\n\t\t\ttitle: BX.message(\"UI_ENTITY_EDITOR_UF_ADDRESS_TITLE\"),\n\t\t\tlegend: BX.message(\"UI_ENTITY_EDITOR_UF_ADDRESS_LEGEND\")\n\t\t});\n\n\t\titems.push({\n\t\t\tname: \"money\",\n\t\t\ttitle: BX.message(\"UI_ENTITY_EDITOR_UF_MONEY_TITLE\"),\n\t\t\tlegend: BX.message(\"UI_ENTITY_EDITOR_UF_MONEY_LEGEND\")\n\t\t});\n\t\titems.push({\n\t\t\tname: \"boolean\",\n\t\t\ttitle: BX.message(\"UI_ENTITY_EDITOR_BOOLEAN_TITLE\"),\n\t\t\tlegend: BX.message(\"UI_ENTITY_EDITOR_UF_BOOLEAN_LEGEND\")\n\t\t});\n\t\titems.push({\n\t\t\tname: \"double\",\n\t\t\ttitle: BX.message(\"UI_ENTITY_EDITOR_UF_DOUBLE_TITLE\"),\n\t\t\tlegend: BX.message(\"UI_ENTITY_EDITOR_UF_DOUBLE_LEGEND\")\n\t\t});\n\t\titems.push({\n\t\t\tname: \"directory\",\n\t\t\ttitle: BX.message(\"CATALOG_ENTITY_CARD_DICTIONARY_TITLE\"),\n\t\t\tlegend: BX.message(\"CATALOG_ENTITY_CARD_DICTIONARY_LEGEND\")\n\t\t});\n\n\t\titems.push({\n\t\t\tname: \"custom\",\n\t\t\ttitle: BX.message(\"UI_ENTITY_EDITOR_UF_CUSTOM_TITLE\"),\n\t\t\tlegend: BX.message(\"UI_ENTITY_EDITOR_UF_CUSTOM_LEGEND\")\n\t\t});\n\n\t\treturn items;\n\t}\n\n\tstatic create(id, settings)\n\t{\n\t\tconst self = new this;\n\t\tself.initialize(id, settings);\n\t\treturn self;\n\t}\n}","import {Dom, Event, Tag} from \"main.core\";\n\nexport default class GridFieldConfigurator extends BX.UI.EntityEditorFieldConfigurator\n{\n\tstatic create(id, settings)\n\t{\n\t\tconst self = new this;\n\t\tself.initialize(id, settings);\n\t\treturn self;\n\t}\n\n\t// ToDo remove unused methods\n\tappendEnumerationSettings()\n\t{\n\t\tif (this._typeId === \"list\" || this._typeId === \"multilist\")\n\t\t{\n\t\t\tDom.append(Tag.render`<hr class=\"ui-entity-editor-line\">`, this._wrapper);\n\n\t\t\tconst enumWrapper = Tag.render`\n\t\t\t\t<div class=\"ui-entity-editor-content-block\">\n\t\t\t\t\t<div class=\"ui-entity-editor-block-title\">\n\t\t\t\t\t\t<span class=\"ui-entity-editor-block-title-text\">${BX.message(\"UI_ENTITY_EDITOR_UF_ENUM_ITEMS\")}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t`;\n\n\t\t\tDom.append(enumWrapper, this._wrapper);\n\n\t\t\tthis._enumItemContainer = Tag.render`\n\t\t\t\t\t<div class=\"ui-entity-editor-content-block\"></div>\n\t\t\t\t`;\n\t\t\tDom.append(this._enumItemContainer, enumWrapper);\n\n\t\t\tconst addButton = Tag.render`\n\t\t\t\t\t<div class=\"ui-entity-card-content-add-field\">\n\t\t\t\t\t\t${BX.message(\"UI_ENTITY_EDITOR_ADD\")}\n\t\t\t\t\t</div>\n\t\t\t\t`;\n\t\t\tEvent.bind(addButton, \"click\", this.onEnumerationItemAddButtonClick.bind(this));\n\n\t\t\tDom.append(\n\t\t\t\tTag.render`\n\t\t\t\t\t<div class=\"ui-entity-editor-content-block-add-field\">\n\t\t\t\t\t\t${addButton}\n\t\t\t\t\t</div>\n\t\t\t\t`,\n\t\t\t\tenumWrapper\n\t\t\t);\n\n\t\t\tif (this._field)\n\t\t\t{\n\t\t\t\tthis._field.getItems().forEach(enumFields => {\n\t\t\t\t\tif (enumFields.VALUE !== '')\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.createEnumerationItem({\n\t\t\t\t\t\t\tVALUE: enumFields.NAME,\n\t\t\t\t\t\t\tID: enumFields.VALUE\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tthis.createEnumerationItem();\n\t\t\tthis.initItemFocusHandlers();\n\t\t}\n\t}\n\n\tonEnumerationItemAddButtonClick()\n\t{\n\t\tthis.unbindItemFocusHandlers();\n\t\tthis.createEnumerationItem().focus();\n\t\tthis.bindLastItemFocusHandler();\n\t}\n\n\tonEnumerationItemFocus()\n\t{\n\t\tthis.unbindItemFocusHandlers();\n\t\tthis.createEnumerationItem();\n\t\tthis.bindLastItemFocusHandler();\n\t}\n\n\tinitItemFocusHandlers()\n\t{\n\t\tthis.unbindItemFocusHandlers();\n\t\tthis.bindLastItemFocusHandler();\n\t}\n\n\tunbindItemFocusHandlers()\n\t{\n\t\tthis._enumItems.forEach(item => Event.unbindAll(item._labelInput, 'focus'));\n\t}\n\n\tbindLastItemFocusHandler()\n\t{\n\t\tconst lastItem = this._enumItems[this._enumItems.length - 1];\n\t\tif (lastItem)\n\t\t{\n\t\t\tEvent.bindOnce(lastItem._labelInput, 'focus', this.onEnumerationItemFocus.bind(this));\n\t\t}\n\t}\n\n\tcreateEnumerationItem(data)\n\t{\n\t\tvar item = BX.UI.EntityEditorUserFieldListItem.create(\n\t\t\t\"\",\n\t\t\t{\n\t\t\t\tconfigurator: this,\n\t\t\t\tcontainer: this._enumItemContainer,\n\t\t\t\tdata: data\n\t\t\t}\n\t\t);\n\n\t\tthis._enumItems.push(item);\n\t\titem.layout();\n\t\treturn item;\n\t}\n\n\tremoveEnumerationItem(item)\n\t{\n\t\tfor (var i = 0, length = this._enumItems.length; i < length; i++)\n\t\t{\n\t\t\tif (this._enumItems[i] === item)\n\t\t\t{\n\t\t\t\tthis._enumItems[i].clearLayout();\n\t\t\t\tthis._enumItems.splice(i, 1);\n\t\t\t\tthis.initItemFocusHandlers();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tprepareSaveParams(e)\n\t{\n\t\tconst params = super.prepareSaveParams(this, arguments);\n\t\tif (this._typeId === 'list' || this._typeId === 'multilist')\n\t\t{\n\t\t\tparams['enumeration'] = [];\n\t\t\tconst hashes = [];\n\t\t\tthis._enumItems.forEach(enumItem => {\n\t\t\t\tif (!(enumItem instanceof BX.UI.EntityEditorUserFieldListItem))\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst enumData = enumItem.prepareData();\n\t\t\t\tif (!enumData)\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst hash = BX.util.hashCode(enumData['VALUE']);\n\t\t\t\tif (BX.util.in_array(hash, hashes))\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\thashes.push(hash);\n\t\t\t\tenumData['SORT'] = (params['enumeration'].length + 1) * 100;\n\t\t\t\tparams['enumeration'].push(enumData);\n\t\t\t});\n\t\t}\n\t\telse if (this._typeId === 'datetime' || this._typeId === 'multidatetime')\n\t\t{\n\t\t\tparams['enableTime'] = this._isTimeEnabledCheckBox.checked;\n\t\t}\n\n\t\treturn params;\n\t}\n\n\tgetMultipleCheckBox()\n\t{\n\t\tvar checkBox = this.createOption({caption: BX.message(\"UI_ENTITY_EDITOR_UF_MULTIPLE_FIELD\")});\n\t\tif (\n\t\t\tthis._field instanceof BX.UI.EntityEditorMultiText\n\t\t\t|| this._field instanceof BX.UI.EntityEditorMultiNumber\n\t\t\t|| this._field instanceof BX.UI.EntityEditorMultiList\n\t\t\t|| this._field instanceof BX.UI.EntityEditorMultiDatetime\n\t\t)\n\t\t{\n\t\t\tcheckBox.checked = true;\n\t\t}\n\n\t\treturn checkBox;\n\t}\n\n\tgetIsRequiredCheckBox()\n\t{\n\t\tlet checkBox = null;\n\t\tif (this._typeId !== \"boolean\")\n\t\t{\n\t\t\tif (this._enableMandatoryControl)\n\t\t\t{\n\t\t\t\tif (this._mandatoryConfigurator)\n\t\t\t\t{\n\t\t\t\t\tcheckBox = this.createOption(\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcaption: this._mandatoryConfigurator.getTitle() + \":\",\n\t\t\t\t\t\t\tlabelSettings: {props: {className: \"ui-entity-new-field-addiction-label\"}},\n\t\t\t\t\t\t\tcontainerSettings: {style: {alignItems: \"center\"}},\n\t\t\t\t\t\t\telements: this._mandatoryConfigurator.getButton().prepareLayout()\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\n\t\t\t\t\tcheckBox.checked = (this._field && this._field.isRequired())\n\t\t\t\t\t\t|| this._mandatoryConfigurator.isCustomized();\n\n\t\t\t\t\tthis._mandatoryConfigurator.setSwitchCheckBox(checkBox);\n\t\t\t\t\tthis._mandatoryConfigurator.setLabel(checkBox.nextSibling);\n\n\t\t\t\t\tthis._mandatoryConfigurator.setEnabled(checkBox.checked);\n\t\t\t\t\tthis._mandatoryConfigurator.adjust();\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tcheckBox = this.createOption({caption: BX.message(\"UI_ENTITY_EDITOR_UF_REQUIRED_FIELD\")});\n\t\t\t\t\tcheckBox.checked = this._field && this._field.isRequired();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn checkBox;\n\t}\n\n\tgetIsTimeEnabledCheckBox()\n\t{\n\t\tvar checkBox = null;\n\t\tif (this._typeId === \"datetime\" || this._typeId === \"multidatetime\")\n\t\t{\n\t\t\tcheckBox = this.createOption({caption: BX.message(\"UI_ENTITY_EDITOR_UF_ENABLE_TIME\")});\n\t\t\tcheckBox.checked = this._field && this._field.isTimeEnabled();\n\t\t}\n\t\treturn checkBox;\n\t}\n}","import GridFieldConfigurator from './grid-field-configurator'\nimport {Loc, Reflection, Type} from 'main.core';\n\nexport default class GridFieldConfigurationManager extends BX.UI.EntityConfigurationManager\n{\n\tcreateFieldConfigurator(params, parent)\n\t{\n\t\tif (!Type.isPlainObject(params))\n\t\t{\n\t\t\tthrow \"GridFieldConfigurationManager: The 'params' argument must be object.\";\n\t\t}\n\n\t\treturn this.getSimpleFieldConfigurator(params, parent);\n\t}\n\n\tgetSimpleFieldConfigurator(params, parent)\n\t{\n\t\tlet typeId = \"\";\n\t\tconst child = BX.prop.get(params, 'field', null);\n\t\tif (child)\n\t\t{\n\t\t\ttypeId = child.getType();\n\t\t\tchild.setVisible(false);\n\n\t\t\tif (!BX.prop.get(child.getSchemeElement().getData(), \"isProductProperty\", false))\n\t\t\t{\n\t\t\t\treturn this._fieldConfigurator = BX.UI.EntityEditorFieldConfigurator.create(\n\t\t\t\t\t\"\",\n\t\t\t\t\t{\n\t\t\t\t\t\teditor: this._editor,\n\t\t\t\t\t\tschemeElement: null,\n\t\t\t\t\t\tmodel: parent._model,\n\t\t\t\t\t\tmode: BX.UI.EntityEditorMode.edit,\n\t\t\t\t\t\tparent: parent,\n\t\t\t\t\t\ttypeId: typeId,\n\t\t\t\t\t\tfield: child,\n\t\t\t\t\t\tmandatoryConfigurator: null\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\ttypeId = BX.prop.get(params, 'typeId', BX.UI.EntityUserFieldType.string);\n\t\t}\n\n\t\tthis._fieldConfigurator = GridFieldConfigurator.create(\n\t\t\t'',\n\t\t\t{\n\t\t\t\teditor: this._editor,\n\t\t\t\tschemeElement: null,\n\t\t\t\tmodel: parent._model,\n\t\t\t\tmode: BX.UI.EntityEditorMode.edit,\n\t\t\t\tparent: parent,\n\t\t\t\ttypeId: typeId,\n\t\t\t\tfield: child,\n\t\t\t\tmandatoryConfigurator: null\n\t\t\t}\n\t\t);\n\n\t\treturn this._fieldConfigurator;\n\t}\n\n\tisSelectionEnabled()\n\t{\n\t\treturn false;\n\t}\n\n\tisCreationEnabled()\n\t{\n\t\treturn false;\n\t}\n\n\thasExternalForm(typeId)\n\t{\n\t\treturn true;\n\t}\n\n\tgetCreationPageUrl(typeId)\n\t{\n\t\tconst filtered = this.getTypeInfos().filter((item) => {\n\t\t\treturn item.name === typeId\n\t\t});\n\t\tif (filtered.length > 0)\n\t\t{\n\t\t\treturn this.creationPageUrl.replace('#PROPERTY_TYPE#', typeId);\n\t\t}\n\t}\n\n\topenCreationPageUrl(typeId)\n\t{\n\t\tconst okCallback = () => this.openCreationPageSlider(this.getCreationPageUrl(typeId));\n\t\tconst variationGridInstance = Reflection.getClass('BX.Catalog.VariationGrid.Instance');\n\n\t\tif (variationGridInstance)\n\t\t{\n\t\t\tvariationGridInstance.askToLossGridData(okCallback, null, {\n\t\t\t\tmessage: Loc.getMessage('CATALOG_ENTITY_CARD_UNSAVED_DATA_MESSAGE')\n\t\t\t});\n\t\t}\n\t\telse\n\t\t{\n\t\t\tokCallback();\n\t\t}\n\t}\n\n\topenCreationPageSlider(url)\n\t{\n\t\tif (Type.isStringFilled(url))\n\t\t{\n\t\t\tBX.SidePanel.Instance.open(url, {\n\t\t\t\twidth: 550,\n\t\t\t\tallowChangeHistory: false,\n\t\t\t\tcacheable: false\n\t\t\t});\n\t\t}\n\t}\n\n\tsetCreationPageUrl(url)\n\t{\n\t\treturn this.creationPageUrl = url;\n\t}\n\n\tgetTypeInfos()\n\t{\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: \"list\",\n\t\t\t\ttitle: BX.message(\"CATALOG_ENTITY_CARD_LIST_TITLE\"),\n\t\t\t\tlegend: BX.message(\"CATALOG_ENTITY_CARD_LIST_LEGEND\")\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: \"directory\",\n\t\t\t\ttitle: BX.message(\"CATALOG_ENTITY_CARD_DICTIONARY_TITLE\"),\n\t\t\t\tlegend: BX.message(\"CATALOG_ENTITY_CARD_DICTIONARY_LEGEND\")\n\t\t\t}\n\t\t];\n\t}\n\n\tstatic create(id, settings)\n\t{\n\t\tconst self = new this;\n\t\tself.initialize(id, settings);\n\t\treturn self;\n\t}\n}","import {Dom, Tag, Text, Type} from \"main.core\";\nimport TabManager from \"../tab/manager\";\n\nexport class BaseCard\n{\n\tconstructor(id, settings = {})\n\t{\n\t\tthis.id = Type.isStringFilled(id) ? id : Text.getRandom();\n\t\tthis.entityId = Text.toInteger(settings.entityId) || 0;\n\t\tthis.settings = settings;\n\t\tthis.container = document.getElementById(settings.containerId);\n\n\t\tthis.initializeTabManager();\n\t\tthis.checkFadeOverlay();\n\t}\n\n\tinitializeTabManager()\n\t{\n\t\treturn new TabManager(this.id, {\n\t\t\tcontainer: document.getElementById(this.settings.tabContainerId),\n\t\t\tmenuContainer: document.getElementById(this.settings.tabMenuContainerId),\n\t\t\tdata: this.settings.tabs || []\n\t\t});\n\t}\n\n\tcheckFadeOverlay()\n\t{\n\t\tif (this.entityId <= 0)\n\t\t{\n\t\t\tthis.overlay = Tag.render`<div class=\"catalog-entity-overlay\"></div>`;\n\t\t\tDom.append(this.overlay, this.container);\n\n\t\t\tif (window === window.top)\n\t\t\t{\n\t\t\t\tthis.overlay.style.position = 'absolute';\n\t\t\t\tthis.overlay.style.top = this.overlay.style.left = this.overlay.style.right = '-15px';\n\t\t\t}\n\t\t}\n\t}\n}\n","import {Dom, Event, Loc, Reflection, Tag, Text, Type} from 'main.core';\nimport {type BaseEvent, EventEmitter} from 'main.core.events'\nimport './entity-card.css';\nimport TabManager from './tab/manager';\nimport 'ui.entity-editor';\nimport 'ui.notification';\nimport 'ui.hint';\nimport FieldsFactory from './fields-factory'\nimport ControllersFactory from './controllers-factory'\nimport IblockFieldConfigurationManager from './field-configurator/iblock-field-configuration-manager'\nimport GridFieldConfigurationManager from './field-configurator/grid-field-configuration-manager';\nimport {Popup} from \"main.popup\";\nimport {BaseCard} from \"./base-card/base-card\";\nimport {DialogDisable, Slider, EventType} from 'catalog.store-use'\n\nclass EntityCard extends BaseCard\n{\n\tstackWithOffset = null;\n\n\tconstructor(id, settings = {})\n\t{\n\t\tsuper(id, settings);\n\n\t\tthis.cardSettings = settings.cardSettings || [];\n\t\tthis.feedbackUrl = settings.feedbackUrl || '';\n\t\tthis.variationGridId = settings.variationGridId;\n\t\tthis.productStoreGridId = settings.productStoreGridId || null;\n\t\tthis.settingsButtonId = settings.settingsButtonId;\n\t\tthis.createDocumentButtonId = settings.createDocumentButtonId;\n\t\tthis.createDocumentButtonMenuPopupItems = settings.createDocumentButtonMenuPopupItems;\n\n\t\tthis.componentName = settings.componentName || null;\n\t\tthis.componentSignedParams = settings.componentSignedParams || null;\n\n\t\tthis.isSimpleProduct = settings.isSimpleProduct || false;\n\n\t\tthis.registerFieldsFactory();\n\t\tthis.registerControllersFactory();\n\t\tthis.registerEvents();\n\t\tthis.bindCardSettingsButton();\n\t\tthis.bindCreateDocumentButtonMenu();\n\n\t\tEventEmitter.subscribe('SidePanel.Slider:onMessage', this.onSliderMessage.bind(this));\n\t\tEventEmitter.subscribe('BX.UI.EntityEditorSection:onLayout', this.onSectionLayout.bind(this));\n\t\tEventEmitter.subscribe('Grid::updated', this.onGridUpdatedHandler.bind(this));\n\t}\n\n\tgetEntityType()\n\t{\n\t\treturn 'Entity';\n\t}\n\n\tgetCardSetting(id: string)\n\t{\n\t\treturn this.cardSettings.filter(item => {\n\t\t\treturn item.id === id;\n\t\t})[0];\n\t}\n\n\tisCardSettingEnabled(id: string)\n\t{\n\t\tconst settingItem = this.getCardSetting(id);\n\n\t\treturn settingItem && settingItem.checked;\n\t}\n\n\tbindCardSettingsButton()\n\t{\n\t\tconst settingsButton = this.getSettingsButton();\n\t\tif (settingsButton)\n\t\t{\n\t\t\tEvent.bind(settingsButton.getContainer(), 'click', this.showCardSettingsPopup.bind(this));\n\t\t}\n\t}\n\n\tgetSettingsButton()\n\t{\n\t\treturn BX.UI.ButtonManager.getByUniqid(this.settingsButtonId);\n\t}\n\n\tregisterFieldsFactory()\n\t{\n\t\treturn new FieldsFactory();\n\t}\n\n\tonGridUpdatedHandler(event: BaseEvent)\n\t{\n\t\tconst [grid] = event.getCompatData();\n\n\t\tif (grid && grid.getId() === this.getVariationGridId())\n\t\t{\n\t\t\tthis.updateSettingsCheckboxState();\n\t\t}\n\t}\n\n\tonSectionLayout()\n\t{\n\n\t}\n\n\tgetProductStoreGridId()\n\t{\n\t\treturn this.productStoreGridId;\n\t}\n\n\tgetProductStoreGridComponent()\n\t{\n\t\treturn Reflection.getClass('BX.Catalog.ProductStoreGridManager.Instance');\n\t}\n\n\treloadProductStoreGrid()\n\t{\n\t\tconst gridComponent = this.getProductStoreGridComponent();\n\t\tif (gridComponent)\n\t\t{\n\t\t\tif (this.getProductStoreGridId() && this.getProductStoreGridId() === gridComponent.getGridId())\n\t\t\t{\n\t\t\t\tgridComponent.reloadGrid();\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @returns {BX.Catalog.VariationGrid|null}\n\t */\n\tgetVariationGridComponent()\n\t{\n\t\treturn Reflection.getClass('BX.Catalog.VariationGrid.Instance');\n\t}\n\n\treloadVariationGrid()\n\t{\n\t\tconst gridComponent = this.getVariationGridComponent();\n\t\tif (gridComponent)\n\t\t{\n\t\t\tgridComponent.reloadGrid();\n\t\t}\n\t}\n\n\tgetVariationGridId()\n\t{\n\t\treturn this.variationGridId;\n\t}\n\n\tgetVariationGrid()\n\t{\n\t\tif (!Reflection.getClass('BX.Main.gridManager.getInstanceById'))\n\t\t{\n\t\t\treturn null;\n\t\t}\n\n\t\treturn BX.Main.gridManager.getInstanceById(this.getVariationGridId());\n\t}\n\n\tregisterControllersFactory()\n\t{\n\t\treturn new ControllersFactory();\n\t}\n\n\tregisterEvents()\n\t{\n\t\tEventEmitter.subscribe('BX.UI.EntityConfigurationManager:onInitialize', this.onConfigurationManagerInit.bind(this));\n\t\tEventEmitter.subscribe('BX.UI.EntityEditor:onCancel', this.removeFileHiddenInputs.bind(this));\n\t\tEventEmitter.subscribe('BX.UI.EntityEditor:onInit', this.onEditorInitHandler.bind(this));\n\n\t\tEventEmitter.subscribe('BX.UI.EntityEditorAjax:onSubmit', this.onEditorAjaxSubmit.bind(this));\n\t\tEventEmitter.subscribe('onEntityCreate', this.onEntityCreateHandler.bind(this));\n\t\tEventEmitter.subscribe('onEntityUpdate', this.onEntityUpdateHandler.bind(this));\n\n\t\tEventEmitter.subscribe('onAttachFiles', this.onAttachFilesHandler.bind(this));\n\t\tEventEmitter.subscribe('BX.Main.Popup:onClose', this.onFileEditorCloseHandler.bind(this));\n\n\t\tEventEmitter.subscribe('onAfterVariationGridSave', this.onAfterVariationGridSave.bind(this));\n\t}\n\n\tonAfterVariationGridSave(event: BaseEvent)\n\t{\n\t\tconst data = event.getData();\n\n\t\tif (data.gridId === this.getVariationGridId())\n\t\t{\n\t\t\tthis.reloadProductStoreGrid();\n\t\t}\n\t}\n\n\tonAttachFilesHandler(event: BaseEvent)\n\t{\n\t\tconst editor = this.getEditorInstance();\n\t\tif (!editor)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst [, , uploader] = event.getCompatData();\n\t\tif (uploader && Type.isDomNode(uploader.fileInput))\n\t\t{\n\t\t\tconst parent = uploader.fileInput.closest('[data-cid]');\n\n\t\t\tif (Type.isDomNode(parent))\n\t\t\t{\n\t\t\t\tconst controlName = parent.getAttribute('data-cid');\n\t\t\t\tconst control = editor.getControlByIdRecursive(controlName);\n\n\t\t\t\tif (control)\n\t\t\t\t{\n\t\t\t\t\tcontrol.markAsChanged();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tonFileEditorCloseHandler(event: BaseEvent)\n\t{\n\t\tconst [popup] = event.getCompatData();\n\t\tif (popup && popup.getId() === 'popupFM' && popup.onApplyFlag)\n\t\t{\n\t\t\tthis.showNotification(Loc.getMessage('CATALOG_ENTITY_CARD_FILE_CLOSE_NOTIFICATION'), {\n\t\t\t\tautoHideDelay: 5000\n\t\t\t});\n\t\t}\n\t}\n\n\tonEditorInitHandler(event: BaseEvent)\n\t{\n\t\tconst [editor, fields] = event.getCompatData();\n\n\t\tif (editor && !fields.entityId)\n\t\t{\n\t\t\tconst control = editor.getControlByIdRecursive('NAME');\n\n\t\t\tif (control)\n\t\t\t{\n\t\t\t\trequestAnimationFrame(() => {\n\t\t\t\t\tcontrol.focus()\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @returns {BX.UI.EntityEditor|null}\n\t */\n\tgetEditorInstance()\n\t{\n\t\tif (Reflection.getClass('BX.UI.EntityEditor'))\n\t\t{\n\t\t\treturn BX.UI.EntityEditor.getDefault();\n\t\t}\n\n\t\treturn null;\n\t}\n\n\tonEditorAjaxSubmit(event: BaseEvent)\n\t{\n\t\tconst [fields, response] = event.getCompatData();\n\n\t\tconst title = fields['NAME-CODE'].NAME || '';\n\t\tthis.changePageTitle(title);\n\n\t\tif (response.data)\n\t\t{\n\t\t\tif (Type.isBoolean(response.data.IS_SIMPLE_PRODUCT))\n\t\t\t{\n\t\t\t\tthis.isSimpleProduct = response.data.IS_SIMPLE_PRODUCT;\n\t\t\t}\n\t\t}\n\n\t\tif (response.status === 'success')\n\t\t{\n\t\t\tthis.removeFileHiddenInputs();\n\t\t}\n\t}\n\n\tonEntityCreateHandler(event: BaseEvent)\n\t{\n\t\tconst [data] = event.getCompatData();\n\t\tthis.postSliderMessage('onCreate', data)\n\t}\n\n\tonEntityUpdateHandler(event: BaseEvent)\n\t{\n\t\tconst [data] = event.getCompatData();\n\t\tthis.postSliderMessage('onUpdate', data)\n\t}\n\n\tpostSliderMessage(action, fields)\n\t{\n\t\tBX.SidePanel.Instance.postMessage(\n\t\t\twindow,\n\t\t\t`Catalog.${this.getEntityType()}Card::${action}`,\n\t\t\tfields\n\t\t);\n\t}\n\n\tchangePageTitle(title)\n\t{\n\t\tconst titleNode = document.getElementById('pagetitle');\n\n\t\tif (Type.isDomNode(titleNode))\n\t\t{\n\t\t\ttitleNode.innerText = title;\n\t\t}\n\n\t\tdocument.title = title;\n\n\t\tif (BX.getClass('BX.SidePanel.Instance.updateBrowserTitle'))\n\t\t{\n\t\t\tBX.SidePanel.Instance.updateBrowserTitle();\n\t\t}\n\t}\n\n\tremoveFileHiddenInputs()\n\t{\n\t\tdocument.querySelectorAll('form>input[type=\"hidden\"]')\n\t\t\t.forEach(input => {\n\t\t\t\tlet name = input.getAttribute('name');\n\t\t\t\tlet deleteInput = document.querySelector(`form>input[name=\"${name}_del\"]`);\n\n\t\t\t\tif (deleteInput)\n\t\t\t\t{\n\t\t\t\t\tDom.remove(input);\n\t\t\t\t\tDom.remove(deleteInput);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tonConfigurationManagerInit(event: BaseEvent)\n\t{\n\t\tconst [, eventArgs] = event.getCompatData();\n\n\t\tif (!eventArgs.type || eventArgs.type === 'editor')\n\t\t{\n\t\t\teventArgs.configurationFieldManager = this.initializeIblockFieldConfigurationManager(eventArgs);\n\t\t}\n\n\t\tif (eventArgs.id === 'variation_grid')\n\t\t{\n\t\t\teventArgs.configurationFieldManager = this.initializeVariationPropertyConfigurationManager(eventArgs);\n\t\t}\n\t}\n\n\tinitializeIblockFieldConfigurationManager(eventArgs)\n\t{\n\t\tconst configurationManager = IblockFieldConfigurationManager.create(this.id, eventArgs);\n\t\tconfigurationManager.setCreationPageUrl(this.settings.creationPropertyUrl);\n\n\t\treturn configurationManager;\n\t}\n\n\tinitializeVariationPropertyConfigurationManager(eventArgs)\n\t{\n\t\tconst configurationManager = GridFieldConfigurationManager.create(this.id, eventArgs);\n\t\tconfigurationManager.setCreationPageUrl(this.settings.creationVariationPropertyUrl);\n\n\t\treturn configurationManager;\n\t}\n\n\tshowNotification(content, options)\n\t{\n\t\toptions = options || {};\n\n\t\tif (BX.GetWindowScrollPos().scrollTop <= 10)\n\t\t{\n\t\t\toptions.stack = this.getStackWithOffset();\n\t\t}\n\n\t\tBX.UI.Notification.Center.notify({\n\t\t\tcontent: content,\n\t\t\tstack: options.stack || null,\n\t\t\tposition: 'top-right',\n\t\t\twidth: 'auto',\n\t\t\tcategory: options.category || null,\n\t\t\tautoHideDelay: options.autoHideDelay || 3000\n\t\t});\n\t}\n\n\tgetStackWithOffset()\n\t{\n\t\tif (this.stackWithOffset === null)\n\t\t{\n\t\t\tthis.stackWithOffset = new BX.UI.Notification.Stack(BX.mergeEx(\n\t\t\t\t{},\n\t\t\t\tBX.UI.Notification.Center.getStackDefaults(),\n\t\t\t\t{\n\t\t\t\t\tid: 'top-right-with-offset',\n\t\t\t\t\tposition: 'top-right-with-offset',\n\t\t\t\t\toffsetY: 74\n\t\t\t\t}\n\t\t\t));\n\t\t}\n\n\t\treturn this.stackWithOffset;\n\t}\n\n\topenFeedbackPanel()\n\t{\n\t\tif (!Reflection.getClass('BX.SidePanel.Instance') || !Type.isStringFilled(this.feedbackUrl))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tBX.SidePanel.Instance.open(this.feedbackUrl, {\n\t\t\tcacheable: false,\n\t\t\tallowChangeHistory: false,\n\t\t\twidth: 580\n\t\t});\n\t}\n\n\tbindCreateDocumentButtonMenu()\n\t{\n\t\tconst createDocumentButtonMenu = this.getCreateDocumentButtonMenu();\n\t\tif (createDocumentButtonMenu)\n\t\t{\n\t\t\tEvent.bind(createDocumentButtonMenu.getContainer(), 'click', this.showCreateDocumentPopup.bind(this));\n\t\t}\n\t}\n\n\tgetCreateDocumentButtonMenu()\n\t{\n\t\tconst createDocumentButton = BX.UI.ButtonManager.getByUniqid(this.createDocumentButtonId);\n\t\tif (createDocumentButton)\n\t\t{\n\t\t\treturn BX.UI.ButtonManager.getByUniqid(this.createDocumentButtonId).getMenuButton();\n\t\t}\n\n\t\treturn null;\n\t}\n\n\tgetCreateDocumentPopup()\n\t{\n\t\tif (!this.createDocumentPopup)\n\t\t{\n\t\t\tthis.createDocumentPopup = new Popup(\n\t\t\t\tthis.id + '-create-document',\n\t\t\t\tthis.getCreateDocumentButtonMenu().getContainer(),\n\t\t\t\t{\n\t\t\t\t\tautoHide: true,\n\t\t\t\t\tdraggable: false,\n\t\t\t\t\toffsetLeft: 0,\n\t\t\t\t\toffsetTop: 0,\n\t\t\t\t\tangle: {position: 'top', offset: 43},\n\t\t\t\t\tnoAllPaddings: true,\n\t\t\t\t\tbindOptions: {forceBindPosition: true},\n\t\t\t\t\tcloseByEsc: true,\n\t\t\t\t\tcontent: this.getCreateDocumentMenuContent()\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\treturn this.createDocumentPopup;\n\t}\n\n\tshowCreateDocumentPopup()\n\t{\n\t\tthis.getCreateDocumentPopup().show();\n\t}\n\n\tgetCreateDocumentMenuContent()\n\t{\n\t\tconst popupWrapper = Tag.render`<div class=\"menu-popup\"></div>`;\n\t\tconst popupItemsContainer = Tag.render`<div class=\"menu-popup-items\"></div>`;\n\t\tpopupWrapper.appendChild(popupItemsContainer);\n\n\t\tthis.createDocumentButtonMenuPopupItems.forEach((item) => {\n\t\t\tpopupItemsContainer.appendChild(Tag.render`\n\t\t\t\t<a class=\"menu-popup-item menu-popup-item-no-icon\" href=\"${item.link}\">\n\t\t\t\t\t<span class=\"menu-popup-item-text\">${item.text}</span>\n\t\t\t\t</a>\n\t\t\t`);\n\t\t});\n\n\t\treturn popupWrapper;\n\t}\n\n\tgetCardSettingsPopup()\n\t{\n\t\tif (!this.settingsPopup)\n\t\t{\n\t\t\tthis.settingsPopup = new Popup(\n\t\t\t\tthis.id,\n\t\t\t\tthis.getSettingsButton().getContainer(),\n\t\t\t\t{\n\t\t\t\t\tautoHide: true,\n\t\t\t\t\tdraggable: false,\n\t\t\t\t\toffsetLeft: 0,\n\t\t\t\t\toffsetTop: 0,\n\t\t\t\t\tangle: {position: 'top', offset: 43},\n\t\t\t\t\tnoAllPaddings: true,\n\t\t\t\t\tbindOptions: {forceBindPosition: true},\n\t\t\t\t\tcloseByEsc: true,\n\t\t\t\t\tcontent: this.prepareCardSettingsContent()\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\treturn this.settingsPopup;\n\t}\n\n\tshowCardSettingsPopup()\n\t{\n\t\tconst okCallback = () => this.getCardSettingsPopup().show();\n\t\tconst variationGridInstance = Reflection.getClass('BX.Catalog.VariationGrid.Instance');\n\n\t\tif (variationGridInstance)\n\t\t{\n\t\t\tvariationGridInstance.askToLossGridData(okCallback);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tokCallback();\n\t\t}\n\t}\n\n\tprepareCardSettingsContent()\n\t{\n\t\tconst content = Tag.render`\n\t\t\t<div class='ui-entity-editor-popup-create-field-list'></div>\n\t\t`;\n\n\t\tthis.cardSettings.map(item => {\n\t\t\tcontent.append(this.getSettingItem(item));\n\t\t});\n\n\t\treturn content;\n\t}\n\n\tgetSettingItem(item)\n\t{\n\t\tconst input = Tag.render`\n\t\t\t<input type=\"checkbox\">\n\t\t`;\n\t\tinput.checked = item.checked;\n\t\tinput.disabled = item.disabled ?? false;\n\t\tinput.dataset.settingId = item.id;\n\n\t\tconst hintNode = (\n\t\t\tType.isStringFilled(item.hint)\n\t\t\t\t? Tag.render`<span class=\"catalog-entity-setting-hint\" data-hint=\"${item.hint}\"></span>`\n\t\t\t\t: ''\n\t\t);\n\n\t\tconst setting = Tag.render`\n\t\t\t\t<label class=\"ui-ctl-block ui-entity-editor-popup-create-field-item ui-ctl-w100\">\n\t\t\t\t\t<div class=\"ui-ctl-w10\" style=\"text-align: center\">${input}</div>\n\t\t\t\t\t<div class=\"ui-ctl-w75\">\n\t\t\t\t\t\t<span class=\"ui-entity-editor-popup-create-field-item-title ${item.disabled ? 'catalog-entity-disabled-setting' : ''}\">${item.title}${hintNode}</span>\n\t\t\t\t\t\t<span class=\"ui-entity-editor-popup-create-field-item-desc\">${item.desc}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</label>\n\t\t\t`;\n\n\t\tBX.UI.Hint.init(setting);\n\n\t\tif(item.id === 'SLIDER')\n\t\t{\n\t\t\tEvent.bind(setting, 'change', (event) =>\n\t\t\t{\n\t\t\t\tnew Slider().open(item.url, {})\n\t\t\t\t.then(() => {\n\t\t\t\t\tthis.reloadGrid();\n\t\t\t\t\tthis.getCardSettingsPopup().close();\n\t\t\t\t});\n\t\t\t})\n\t\t}\n\t\telse\n\t\t{\n\t\t\tEvent.bind(setting, 'change', this.setProductCardSetting.bind(this));\n\t\t}\n\n\n\t\treturn setting;\n\t}\n\n\tsetProductCardSetting(event: BaseEvent)\n\t{\n\t\tconst settingItem = this.getCardSetting(event.target.dataset.settingId);\n\t\tif (!settingItem)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst settingEnabled = event.target.checked;\n\n\t\tif (settingItem.action === 'grid')\n\t\t{\n\t\t\tthis.requestGridSettings(settingItem, settingEnabled);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.requestCardSettings(settingItem, settingEnabled);\n\t\t}\n\t}\n\n\tonSliderMessage(event: BaseEvent)\n\t{\n\t\tconst [sliderEvent] = event.getCompatData();\n\n\t\tif (\n\t\t\tsliderEvent.getEventId() === 'Catalog.VariationCard::onCreate'\n\t\t\t|| sliderEvent.getEventId() === 'Catalog.VariationCard::onUpdate'\n\t\t)\n\t\t{\n\t\t\tthis.reloadVariationGrid();\n\t\t}\n\t}\n\n\treloadGrid()\n\t{\n\t\tdocument.location.reload();\n\t}\n\n\trequestGridSettings(setting, enabled)\n\t{\n\t\tif (!this.getVariationGrid())\n\t\t{\n\t\t\tnew Error('Cant find variation grid.');\n\t\t}\n\n\t\tconst headers = [];\n\t\tconst cells = this.getVariationGrid().getRows().getHeadFirstChild().getCells();\n\n\t\tArray.from(cells).forEach((header) => {\n\t\t\tif ('name' in header.dataset)\n\t\t\t{\n\t\t\t\theaders.push(header.dataset.name);\n\t\t\t}\n\t\t});\n\n\t\tBX.ajax.runComponentAction(\n\t\t\tthis.componentName,\n\t\t\t'setGridSetting',\n\t\t\t{\n\t\t\t\tmode: 'class',\n\t\t\t\tdata: {\n\t\t\t\t\tsignedParameters: this.componentSignedParams,\n\t\t\t\t\tsettingId: setting.id,\n\t\t\t\t\tselected: enabled,\n\t\t\t\t\tcurrentHeaders: headers\n\t\t\t\t}\n\t\t\t}\n\t\t).then(() => {\n\t\t\tlet message = null;\n\t\t\tsetting.checked = enabled;\n\t\t\tthis.reloadVariationGrid();\n\t\t\tthis.postSliderMessage('onUpdate', {});\n\t\t\tthis.getCardSettingsPopup().close();\n\n\t\t\tif(setting.id === 'WAREHOUSE')\n\t\t\t{\n\t\t\t\tthis.reloadGrid()\n\t\t\t\tmessage = enabled ? Loc.getMessage('CATALOG_ENTITY_CARD_WAREHOUSE_ENABLED') : Loc.getMessage('CATALOG_ENTITY_CARD_WAREHOUSE_DISABLED');\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tmessage = enabled ? Loc.getMessage('CATALOG_ENTITY_CARD_SETTING_ENABLED') : Loc.getMessage('CATALOG_ENTITY_CARD_SETTING_DISABLED');\n\t\t\t\tmessage = message.replace('#NAME#', setting.title)\n\t\t\t}\n\n\t\t\tthis.showNotification(message, {\n\t\t\t\tcategory: 'popup-settings'\n\t\t\t});\n\t\t});\n\t}\n\n\trequestCardSettings(setting, enabled)\n\t{\n\t\tBX.ajax.runComponentAction(\n\t\t\tthis.componentName,\n\t\t\t'setCardSetting',\n\t\t\t{\n\t\t\t\tmode: 'class',\n\t\t\t\tdata: {\n\t\t\t\t\tsignedParameters: this.componentSignedParams,\n\t\t\t\t\tsettingId: setting.id,\n\t\t\t\t\tselected: enabled\n\t\t\t\t}\n\t\t\t}\n\t\t).then(() => {\n\t\t\tsetting.checked = enabled;\n\n\t\t\tif (setting.id === 'CATALOG_PARAMETERS')\n\t\t\t{\n\t\t\t\tconst section = this.getEditorInstance().getControlByIdRecursive('catalog_parameters');\n\t\t\t\tif (section)\n\t\t\t\t{\n\t\t\t\t\tsection.refreshLayout();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.getCardSettingsPopup().close();\n\n\t\t\tlet message = enabled ? Loc.getMessage('CATALOG_ENTITY_CARD_SETTING_ENABLED') : Loc.getMessage('CATALOG_ENTITY_CARD_SETTING_DISABLED');\n\t\t\tthis.showNotification(message.replace('#NAME#', setting.title), {\n\t\t\t\tcategory: 'popup-settings'\n\t\t\t});\n\t\t});\n\t}\n\n\tupdateSettingsCheckboxState()\n\t{\n\t\tconst popupContainer = this.getCardSettingsPopup().getContentContainer();\n\n\t\tthis.cardSettings\n\t\t\t.filter(item => item.action === 'grid' && Type.isArray(item.columns))\n\t\t\t.forEach(item => {\n\t\t\t\tlet allColumnsExist = true;\n\n\t\t\t\titem.columns.forEach(columnName => {\n\t\t\t\t\tif (!this.getVariationGrid().getColumnHeaderCellByName(columnName))\n\t\t\t\t\t{\n\t\t\t\t\t\tallColumnsExist = false;\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\tlet checkbox = popupContainer.querySelector('input[data-setting-id=\"' + item.id + '\"]');\n\t\t\t\tif (Type.isDomNode(checkbox))\n\t\t\t\t{\n\t\t\t\t\tcheckbox.checked = allColumnsExist;\n\t\t\t\t}\n\t\t\t});\n\t}\n}\n\nexport {EntityCard, BaseCard};"],"names":["LazyLoader","id","settings","Type","isStringFilled","Text","getRandom","isObjectLike","container","serviceUrl","tabId","params","componentData","isRequestRunning","loaded","isLoaded","startRequest","BX","ajax","url","method","dataType","data","onsuccess","onRequestSuccess","bind","onfailure","onRequestFailure","innerHTML","Tab","manager","menuContainer","active","isBoolean","enabled","Event","querySelector","onMenuClick","loader","isActive","showTab","hideTab","Dom","addClass","removeClass","style","display","position","top","left","width","easing","duration","start","opacity","translateX","finish","transition","makeEaseOut","transitions","quart","step","state","transform","complete","cssText","EventEmitter","emit","window","animate","event","isEnabled","load","selectItem","preventDefault","Manager","items","isArray","forEach","item","push","subscribe","findItemById","find","current","setActive","IblockSectionField","initialize","innerWrapper","options","_hasLayout","ensureWrapperCreated","classNames","adjustWrapper","isNeedToDisplay","_wrapper","appendChild","createTitleNode","getTitle","_mode","UI","EntityEditorMode","edit","drawEditMode","drawViewMode","isContextMenuEnabled","createContextMenuButton","registerLayout","defaultInput","Tag","render","getName","runComponentAction","mode","iblockId","getIblockId","productId","getProductId","selectedSectionIds","getValue","then","renderFromResponse","response","Error","errors","join","Runtime","html","callback","initEntitySelector","GLOBAL_TARGET","markAsChanged","node","isShow","getEditor","getData","hasNoSections","Loc","getMessage","content","getSections","section","picture","PICTURE","encode","NAME","_model","getField","sectionIds","length","includes","clean","result","EntityEditorModeSwitchType","common","button","EntityEditorField","NameCodeField","EntityEditorBoolean","superclass","apply","menuItems","isShownSymbolicCode","value","text","getSchemeShowCodeState","allowToGenerateCode","_editor","isNew","prop","get","getSchemeElement","_options","e","command","codeContainerElement","document","getElementById","nameCodeMarkerElement","codeTextElement","codeStateButtonElement","readOnly","className","_innerWrapper","refreshLayout","setSchemeShowCodeState","_parent","processChildControlSchemeChange","view","title","values","_inputValue","isDragEnabled","append","createDragButton","_inputContainer","valueKey","createSingleInput","getViewInnerLayout","initializeDragDropAbilities","isEditable","clearError","hasValidators","executeValidators","isEmptyField","nameTextElement","util","trim","parentNode","isValid","isRequired","addError","EntityValidationError","create","field","showRequiredFieldError","_input","error","anchor","_errorContainer","htmlspecialchars","_hasError","name","inputWrapper","toLowerCase","inputContainer","input","getLineCount","attr","chainState","label","textValue","codeValue","CODE","chainClass","EntityEditorMultiText","labelText","_changeHandler","translit","Hint","createNode","newValue","FieldsFactory","getCompatData","eventArgs","methods","factory","type","controlId","PROPERTY_PREFIX","PROPERTY_BLOCK_NAME","IblockSectionController","handleChange","isRequesting","clearServiceFields","onChangeHandler","lastDataHash","initialElements","deletedControls","deletedAvailableSchemes","newData","shift","newDataHash","JSON","stringify","clearTimeout","timeout","setTimeout","refreshLinkedProperties","_settings","ajaxData","COMPONENT_NAME","signedParameters","SIGNED_PARAMETERS","allCurrentProperties","getAllCurrentProperties","ENTITY_FIELDS","property","addProperty","layout","forceDisplay","newProperties","map","el","removeProperty","commitSchemeChanges","activeProperties","getAllControls","filter","indexOf","hiddenProperties","getAvailableSchemeElements","restoreDeletedProperty","restoreDeletedAvailableProperty","createProperty","control","getParent","addChild","enableSaving","registerActiveControl","unregisterActiveControl","schemeElement","addAvailableSchemeElement","propertyBlockScheme","getSchemeElementByName","EntitySchemeElement","_elements","createControl","getType","model","parent","propertyBlockControl","getControlById","getControlByIdRecursive","removeChild","removeAvailableSchemeElement","getAvailableSchemeElementByName","element","EntityEditorController","VariationGridController","markAsChangedHandler","checkEditorToolbar","onBeforeGridRequest","ajaxSuccessHandler","onBeforeIncludedAreaLoaded","onAfterIncludedAreaLoaded","subscribeToFormSubmit","isNumber","areaHeight","getVariationGridLoader","getGridControl","wrapper","getWrapper","unsubscribeGridEvents","Main","gridManager","destroy","getGridId","isChanged","setGridControlCache","gridId","_loadedHtml","Reflection","getClass","gridComponent","getVariationGridComponent","popup","getGrid","getSettingsWindow","getPopup","unsubscribeAll","xhrData","getReloadUrl","_ajaxForm","onBeforeSubmitForm","_isChanged","getActiveControlCount","showToolPanel","hideToolPanel","_toolPanel","clearErrors","grid","getId","sessid","bitrix_sessid","getSignedParameters","getConfigStringParam","getInstanceById","skuGridName","skuGridData","getRows","getEditSelectedValues","copyItemsMap","getParam","hasOwnProperty","priceField","newName","replace","endsWith","isFile","fieldName","newFilesRegExp","RegExp","test","fileCounter","fileSetting","match","isNil","isPlainObject","offsetHeight","GoogleMapController","EmployeeController","BindingToCrmElementController","FieldConfiguratorController","handleFieldAdd","handleFieldUpdate","fieldAddHandler","fieldUpdateHandler","fields","getFieldsForm","PROPERTY_FIELDS","additionalValues","ADDITIONAL_VALUES","Object","entries","key","setField","EntityEditorSection","getMode","notifyIfNotDisplayed","showAlways","toggleOptionFlag","saveSchemeChanges","EntityEditorControl","currentField","_isRequired","mandatory","EntityEditorDatetime","EntityEditorMultiDatetime","schemeElementData","propertyData","enableTime","dateViewFormat","newType","multiple","EntityEditorText","EntityEditorList","EntityEditorNumber","EntityEditorMultiList","EntityEditorMultiNumber","index","getChildIndex","newControl","_schemeElement","form","FormData","formatted","MULTIPLE","IS_REQUIRED","IS_PUBLIC","isPublic","PROPERTY_TYPE","typeId","enumeration","enumItem","getFormFieldName","SORT","VALUE","ID","USER_TYPE","XML_ID","FILE_ID","file","LIST_TYPE","sectionName","sectionSchemeElement","sectionControl","ControllersFactory","IblockDirectoryFieldItem","_fileInput","getString","_data","onFileLoaderChange","link","_labelInput","message","deleteButton","onDeleteButtonClick","getElementNode","_container","insertBefore","target","files","reader","FileReader","onload","src","fileChanged","readAsDataURL","classList","remove","fileValue","xmlId","isNotEmptyString","self","EntityEditorUserFieldListItem","IblockFieldConfigurator","_enumItems","getInputContainer","_typeId","getEnumerationContainer","getOptionContainer","getErrorContainer","getButtonContainer","_field","_optionWrapper","_isTimeEnabledCheckBox","getIsTimeEnabledCheckBox","_enableMandatoryControl","_isRequiredCheckBox","getIsRequiredCheckBox","isAllowedMultipleCheckBox","_isMultipleCheckBox","getMultipleCheckBox","_isPublic","getIsPublicCheckBox","_showAlwaysCheckBox","createOption","caption","helpUrl","helpCode","checked","getBoolean","checkOptionFlag","EntityEditorControlOptions","isAllowedShowAlwaysCheckBox","closest","isEnabledOfferTree","isMultiple","getUserFieldManager","getDefaultFieldLabel","enumWrapper","_enumItemContainer","addButton","onEnumerationItemAddButtonClick","getItems","enumFields","createEnumerationItem","IMAGE","IMAGE_SRC","TEXT","lastItem","focus","initItemClickHandlers","unbindItemClickHandlers","bindLastItemClickHandler","unbindAll","bindOnce","onEnumerationItemClick","configurator","i","clearLayout","splice","arguments","hashes","enumData","prepareData","hash","hashCode","in_array","checkBox","EntityEditorMultiMoney","EntityEditorCustom","_isLocked","_mandatoryConfigurator","acceptChanges","close","prepareSaveParams","mergeSettings","modes","htmlListName","htmlList","getObject","getModel","newHtml","SINGLE","htmlName","setInitFieldValue","getContentWrapper","props","onCustomEvent","labelSettings","containerSettings","alignItems","elements","getButton","prepareLayout","isCustomized","setSwitchCheckBox","setLabel","nextSibling","setEnabled","adjust","isTimeEnabled","EntityEditorFieldConfigurator","namespace","IblockFieldConfigurationManager","getSimpleFieldConfigurator","setVisible","_fieldConfigurator","editor","mandatoryConfigurator","EntityUserFieldType","string","creationPageUrl","SidePanel","Instance","open","getCreationPageUrl","allowChangeHistory","cacheable","legend","EntityConfigurationManager","GridFieldConfigurator","initItemFocusHandlers","unbindItemFocusHandlers","bindLastItemFocusHandler","onEnumerationItemFocus","GridFieldConfigurationManager","child","filtered","getTypeInfos","okCallback","openCreationPageSlider","variationGridInstance","askToLossGridData","BaseCard","entityId","toInteger","containerId","initializeTabManager","checkFadeOverlay","TabManager","tabContainerId","tabMenuContainerId","tabs","overlay","right","EntityCard","cardSettings","feedbackUrl","variationGridId","productStoreGridId","settingsButtonId","createDocumentButtonId","createDocumentButtonMenuPopupItems","componentName","componentSignedParams","isSimpleProduct","registerFieldsFactory","registerControllersFactory","registerEvents","bindCardSettingsButton","bindCreateDocumentButtonMenu","onSliderMessage","onSectionLayout","onGridUpdatedHandler","settingItem","getCardSetting","settingsButton","getSettingsButton","getContainer","showCardSettingsPopup","ButtonManager","getByUniqid","getVariationGridId","updateSettingsCheckboxState","getProductStoreGridComponent","getProductStoreGridId","reloadGrid","onConfigurationManagerInit","removeFileHiddenInputs","onEditorInitHandler","onEditorAjaxSubmit","onEntityCreateHandler","onEntityUpdateHandler","onAttachFilesHandler","onFileEditorCloseHandler","onAfterVariationGridSave","reloadProductStoreGrid","getEditorInstance","uploader","isDomNode","fileInput","controlName","getAttribute","onApplyFlag","showNotification","autoHideDelay","requestAnimationFrame","EntityEditor","getDefault","changePageTitle","IS_SIMPLE_PRODUCT","status","postSliderMessage","action","postMessage","getEntityType","titleNode","innerText","updateBrowserTitle","querySelectorAll","deleteInput","configurationFieldManager","initializeIblockFieldConfigurationManager","initializeVariationPropertyConfigurationManager","configurationManager","setCreationPageUrl","creationPropertyUrl","creationVariationPropertyUrl","GetWindowScrollPos","scrollTop","stack","getStackWithOffset","Notification","Center","notify","category","stackWithOffset","Stack","mergeEx","getStackDefaults","offsetY","createDocumentButtonMenu","getCreateDocumentButtonMenu","showCreateDocumentPopup","createDocumentButton","getMenuButton","createDocumentPopup","Popup","autoHide","draggable","offsetLeft","offsetTop","angle","offset","noAllPaddings","bindOptions","forceBindPosition","closeByEsc","getCreateDocumentMenuContent","getCreateDocumentPopup","show","popupWrapper","popupItemsContainer","settingsPopup","prepareCardSettingsContent","getCardSettingsPopup","getSettingItem","disabled","dataset","settingId","hintNode","hint","setting","desc","init","Slider","setProductCardSetting","settingEnabled","requestGridSettings","requestCardSettings","sliderEvent","getEventId","reloadVariationGrid","location","reload","getVariationGrid","headers","cells","getHeadFirstChild","getCells","Array","from","header","selected","currentHeaders","popupContainer","getContentContainer","columns","allColumnsExist","columnName","getColumnHeaderCellByName","checkbox"],"mappings":"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"}
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.25 |
proxy
|
phpinfo
|
Settings