File manager - Edit - /home/c14075/dragmet-ural.ru/www/bitrix/js/landing/ui/field/rulefield/dist/rulefield.bundle.js.map
Back
{"version":3,"file":"rulefield.bundle.js","sources":["../src/internal/field-element/field-element.js","../src/internal/field-rules/internal/rule-entry/rule-entry.js","../src/internal/field-rules/field-rules.js","../src/rulefield.js"],"sourcesContent":["import 'ui.design-tokens';\n\nimport {EventEmitter} from 'main.core.events';\nimport {Cache, Tag} from 'main.core';\nimport {IconButton} from 'landing.ui.component.iconbutton';\nimport {fetchEventsFromOptions} from 'landing.ui.component.internal';\n\nimport './css/style.css';\n\ntype FieldElementOptions = {\n\tid: string,\n\ttitle: string,\n\tremovable?: boolean,\n\tdraggable?: boolean,\n\tactionsLabel?: string,\n\tactionsList?: Array<{name: string, value: any}>,\n\tactionsValue?: any,\n\tonRemove?: () => void,\n\t// eslint-disable-next-line no-use-before-define\n\tcolor?: $Values<typeof FieldElement.Colors>\n};\n\nconst defaultOptions = {\n\tremovable: true,\n\tdraggable: false,\n\t// eslint-disable-next-line no-use-before-define\n\tcolor: 'blue',\n};\n\nexport class FieldElement extends EventEmitter\n{\n\tstatic Colors = {\n\t\tblue: 'blue',\n\t\tgreen: 'green',\n\t\tred: 'red',\n\t};\n\n\tconstructor(options: FieldElementOptions)\n\t{\n\t\tsuper();\n\t\tthis.setEventNamespace('BX.Landing.UI.Field.RuleField.FieldElement');\n\t\tthis.subscribeFromOptions(fetchEventsFromOptions(options));\n\t\tthis.options = {...defaultOptions, ...options};\n\t\tthis.cache = new Cache.MemoryCache();\n\t}\n\n\tgetDragButtonLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('dragButton', () => {\n\t\t\tconst button = new IconButton({\n\t\t\t\ttype: IconButton.Types.drag,\n\t\t\t\tstyle: {\n\t\t\t\t\twidth: '20px',\n\t\t\t\t},\n\t\t\t});\n\n\t\t\treturn button.getLayout();\n\t\t});\n\t}\n\n\tgetActionsDropdown(): BX.Landing.UI.Field.DropdownInline\n\t{\n\t\treturn this.cache.remember('actionsDropdown', () => {\n\t\t\tconst field = new window.top.BX.Landing.UI.Field.DropdownInline({\n\t\t\t\ttitle: this.options.actionsLabel,\n\t\t\t\titems: this.options.actionsList,\n\t\t\t\tcontent: this.options.actionsValue,\n\t\t\t});\n\n\t\t\tfield.subscribe('onChange', () => {\n\t\t\t\tthis.emit('onChange');\n\t\t\t});\n\n\t\t\treturn field;\n\t\t});\n\t}\n\n\tgetActionsLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('actionsLayout', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-field-element-text-action\">\n\t\t\t\t\t${this.getActionsDropdown().getLayout()}\n\t\t\t\t</div>\n\t\t\t`;\n\t\t});\n\t}\n\n\tgetTitleLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('titleLayout', () => {\n\t\t\treturn Tag.render`<div class=\"landing-ui-field-element-text-title\">${this.options.title}</div>`;\n\t\t});\n\t}\n\n\tgetRemoveButtonLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('removeButton', () => {\n\t\t\tconst button = new IconButton({\n\t\t\t\ttype: IconButton.Types.remove,\n\t\t\t\tonClick: () => this.emit('onRemove'),\n\t\t\t\ticonSize: '9px',\n\t\t\t\tstyle: {\n\t\t\t\t\twidth: '20px',\n\t\t\t\t\tmarginLeft: 'auto',\n\t\t\t\t},\n\t\t\t});\n\n\t\t\treturn button.getLayout();\n\t\t});\n\t}\n\n\tgetLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('layout', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-field-element-${this.options.color}\">\n\t\t\t\t\t${this.options.draggable ? this.getDragButtonLayout() : ''}\n\t\t\t\t\t<div class=\"landing-ui-field-element-text\">\n\t\t\t\t\t\t${this.options.actionsLabel ? this.getActionsLayout() : ''}\n\t\t\t\t\t\t${this.getTitleLayout()}\n\t\t\t\t\t</div>\n\t\t\t\t\t${this.options.removable ? this.getRemoveButtonLayout() : ''}\n\t\t\t\t</div>\n\t\t\t`;\n\t\t});\n\t}\n}","/**\n* @bxjs_lang_path\n*/\nimport 'ui.design-tokens';\nimport {Cache, Dom, Tag, Text, Type} from 'main.core';\nimport {BaseEvent, EventEmitter} from 'main.core.events';\nimport {fetchEventsFromOptions} from 'landing.ui.component.internal';\nimport {IconButton} from 'landing.ui.component.iconbutton';\nimport {Loc} from 'landing.loc';\nimport {Popup} from 'main.popup';\nimport {Draggable} from 'ui.draganddrop.draggable';\nimport {PageObject} from 'landing.pageobject';\nimport {TextField} from 'landing.ui.field.textfield';\nimport {FieldElement} from '../../../field-element/field-element';\nimport type {RuleEntryOptions} from '../../../../types/rule-field-options';\n\nimport './css/style.css';\n\ntype ExpressionEntry = {\n\tfield: string,\n\taction: 'show' | 'hide',\n};\n\ntype RuleEntryState = {\n\tcondition: {\n\t\tfield: string,\n\t\tvalue: any,\n\t\toperator: '=' | '!=',\n\t},\n\texpression: Array<ExpressionEntry>,\n};\n\nexport class RuleEntry extends EventEmitter\n{\n\tstate: RuleEntryState;\n\n\tconstructor(options: RuleEntryOptions)\n\t{\n\t\tsuper();\n\t\tthis.setEventNamespace('BX.Landing.UI.Field.RuleField.RuleEntry');\n\t\tthis.subscribeFromOptions(fetchEventsFromOptions(options));\n\t\tthis.options = {...options};\n\t\tthis.cache = new Cache.MemoryCache();\n\n\t\tthis.draggable = new Draggable({\n\t\t\tcontainer: this.getExpressionContainer(),\n\t\t\tdragElement: '.landing-ui-button-icon-drag',\n\t\t\tdraggable: '.landing-ui-field-element-green',\n\t\t\ttype: Draggable.HEADLESS,\n\t\t\tcontext: window.parent,\n\t\t\toffset: {\n\t\t\t\ty: -62,\n\t\t\t},\n\t\t});\n\n\t\tthis.draggable.subscribe('end', this.onDragEnd.bind(this));\n\n\t\tthis.state = {\n\t\t\tcondition: {\n\t\t\t\tfield: this.options.condition.field.id,\n\t\t\t\tvalue: this.options.condition.value,\n\t\t\t\toperator: this.options.condition.operator,\n\t\t\t},\n\t\t\texpression: this.options.expression.map((item) => {\n\t\t\t\treturn {\n\t\t\t\t\tfield: item.field.id,\n\t\t\t\t\taction: item.action,\n\t\t\t\t};\n\t\t\t}),\n\t\t};\n\n\t\tthis.options.expression.forEach((item) => {\n\t\t\tthis.addExpressionItem({\n\t\t\t\tid: item.field.id,\n\t\t\t\tlabel: item.field.label,\n\t\t\t\taction: item.action,\n\t\t\t\tpreventEvent: true,\n\t\t\t});\n\t\t});\n\t}\n\n\tgetOperatorField(): BX.Landing.UI.Field.Dropdown\n\t{\n\t\treturn this.cache.remember('operatorField', () => {\n\t\t\tconst {condition} = this.options.dictionary.deps;\n\t\t\treturn new BX.Landing.UI.Field.Radio({\n\t\t\t\tselector: 'operator',\n\t\t\t\tvalue: [this.state.condition.operator],\n\t\t\t\titems: condition.operations\n\t\t\t\t\t.filter((item) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t!Type.isArrayFilled(item.fieldTypes)\n\t\t\t\t\t\t\t|| item.fieldTypes.includes(this.options.condition.field.type)\n\t\t\t\t\t\t);\n\t\t\t\t\t})\n\t\t\t\t\t.map((item) => {\n\t\t\t\t\t\treturn {name: item.name, value: item.id};\n\t\t\t\t\t}),\n\t\t\t\tonChange: this.onOperatorChange.bind(this),\n\t\t\t});\n\t\t});\n\t}\n\n\tgetOperatorLabel(operator: string): string\n\t{\n\t\tconst operatorField = this.getOperatorField();\n\t\treturn operatorField.items.reduce((acc, item) => {\n\t\t\treturn String(item.value) === String(operator) ? item.name : acc;\n\t\t}, '');\n\t}\n\n\tonOperatorChange()\n\t{\n\t\tconst operatorField = this.getOperatorField();\n\t\tconst [value] = operatorField.getValue();\n\n\t\tthis.getOperatorLabelLayout().textContent = this.getOperatorLabel(value);\n\t\tthis.state.condition.operator = value;\n\t\tthis.emit('onChange');\n\t}\n\n\tgetSeparator(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('separator', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"value-settings-item-separator\"></div>\n\t\t\t`;\n\t\t});\n\t}\n\n\trenderValueRadioButton({label, value, id, checked}): HTMLDivElement\n\t{\n\t\tconst onChange = () => {\n\t\t\tthis.setValueLabelText(label);\n\t\t\tthis.state.condition.value = value;\n\n\t\t\tthis.emit('onChange');\n\t\t};\n\n\t\treturn Tag.render`\n\t\t\t<div class=\"value-settings-item value-settings-item-value\">\n\t\t\t\t<input \n\t\t\t\t\ttype=\"radio\" \n\t\t\t\t\tid=\"value_${id}_${value}\" \n\t\t\t\t\tname=\"value_${id}_${this.options.condition.field.id}\"\n\t\t\t\t\tonchange=\"${onChange}\"\n\t\t\t\t\t${checked ? 'checked' : ''}\n\t\t\t\t>\n\t\t\t\t<label for=\"value_${id}_${value}\">${label}</label>\n\t\t\t</div>\n\t\t`;\n\t}\n\n\tgetValueSettingsPopup(): Popup\n\t{\n\t\treturn this.cache.remember('valueSettingsPopup', () => {\n\t\t\tconst rootWindow = PageObject.getRootWindow();\n\t\t\tconst popupContent = Tag.render`<div class=\"value-settings-popup\"></div>`;\n\t\t\tconst random = Text.getRandom();\n\n\t\t\tif (\n\t\t\t\tthis.options.condition.field.type === 'list'\n\t\t\t\t|| this.options.condition.field.type === 'checkbox'\n\t\t\t\t|| this.options.condition.field.type === 'radio'\n\t\t\t\t|| this.options.condition.field.type === 'bool'\n\t\t\t)\n\t\t\t{\n\t\t\t\tconst operatorField = this.getOperatorField();\n\t\t\t\toperatorField.setValue(this.options.condition.operator);\n\t\t\t\tDom.append(operatorField.getLayout(), popupContent);\n\n\t\t\t\tDom.append(this.getSeparator(), popupContent);\n\n\t\t\t\tconst valueItems = (() => {\n\t\t\t\t\tif (this.options.condition.field.type === 'bool')\n\t\t\t\t\t{\n\t\t\t\t\t\treturn [\n\t\t\t\t\t\t\t{label: Loc.getMessage('LANDING_RULE_FIELD_CONDITION_VALUE_YES'), value: 'Y'},\n\t\t\t\t\t\t\t{label: Loc.getMessage('LANDING_RULE_FIELD_CONDITION_VALUE_NO'), value: 'N'},\n\t\t\t\t\t\t];\n\t\t\t\t\t}\n\n\t\t\t\t\treturn this.options.condition.field.items;\n\t\t\t\t})();\n\n\t\t\t\tvalueItems.forEach((item) => {\n\t\t\t\t\tconst checked = String(this.options.condition.value) === String(item.value);\n\t\t\t\t\tDom.append(\n\t\t\t\t\t\tDom.append(\n\t\t\t\t\t\t\tthis.renderValueRadioButton({...item, id: random, checked}),\n\t\t\t\t\t\t\tpopupContent,\n\t\t\t\t\t\t),\n\t\t\t\t\t\tpopupContent,\n\t\t\t\t\t);\n\t\t\t\t});\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tconst operatorField = this.getOperatorField();\n\t\t\t\toperatorField.setValue(this.options.condition.operator);\n\t\t\t\tDom.append(operatorField.getLayout(), popupContent);\n\n\t\t\t\tDom.append(this.getSeparator(), popupContent);\n\n\t\t\t\tconst inputField = new TextField({\n\t\t\t\t\ttextOnly: true,\n\t\t\t\t\tonValueChange: () => {\n\t\t\t\t\t\tconst conditionValue = (\n\t\t\t\t\t\t\tinputField.getValue()\n\t\t\t\t\t\t\t|| Loc.getMessage('LANDING_RULE_FIELD_CONDITION_VALUE_EMPTY')\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.setValueLabelText(conditionValue);\n\t\t\t\t\t\tthis.state.condition.value = inputField.getValue();\n\t\t\t\t\t\tthis.emit('onChange');\n\t\t\t\t\t},\n\t\t\t\t\tcontent: this.options.condition.value,\n\t\t\t\t});\n\n\t\t\t\tDom.append(inputField.getLayout(), popupContent);\n\t\t\t}\n\n\t\t\treturn new rootWindow.BX.Main.Popup({\n\t\t\t\tbindElement: this.getConditionValueLayout(),\n\t\t\t\tcontent: popupContent,\n\t\t\t\twidth: 228,\n\t\t\t\tautoHide: true,\n\t\t\t\toffsetLeft: 8,\n\t\t\t\toffsetTop: 1,\n\t\t\t\tmaxHeight: 200,\n\t\t\t\tevents: {\n\t\t\t\t\tonShow: () => {\n\t\t\t\t\t\tDom.addClass(\n\t\t\t\t\t\t\tthis.getConditionValueLayout(),\n\t\t\t\t\t\t\t'landing-ui-rule-entry-condition-value-active',\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\tthis.getValueSettingsPopup().adjustPosition({forceBindPosition: true});\n\t\t\t\t\t},\n\t\t\t\t\tonClose: () => {\n\t\t\t\t\t\tDom.removeClass(\n\t\t\t\t\t\t\tthis.getConditionValueLayout(),\n\t\t\t\t\t\t\t'landing-ui-rule-entry-condition-value-active',\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\t}\n\n\tgetOperatorLabelLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('operatorLayout', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-rule-entry-condition-value-operator\">\n\t\t\t\t\t${this.getOperatorLabel(this.options.condition.operator)}\n\t\t\t\t</div>\n\t\t\t`;\n\t\t});\n\t}\n\n\tgetValueLabel(): string\n\t{\n\t\tif (Type.isArray(this.options.condition.field.items))\n\t\t{\n\t\t\tconst valueItem = this.options.condition.field.items.find((item) => {\n\t\t\t\treturn String(item.value) === String(this.options.condition.value);\n\t\t\t});\n\n\t\t\tif (valueItem && Type.isString(valueItem.label))\n\t\t\t{\n\t\t\t\treturn valueItem.label;\n\t\t\t}\n\t\t}\n\n\t\tif (Type.isStringFilled(this.options.condition.value))\n\t\t{\n\t\t\tif (this.options.condition.value === 'Y')\n\t\t\t{\n\t\t\t\treturn Loc.getMessage('LANDING_RULE_FIELD_CONDITION_VALUE_YES');\n\t\t\t}\n\n\t\t\tif (this.options.condition.value === 'N')\n\t\t\t{\n\t\t\t\treturn Loc.getMessage('LANDING_RULE_FIELD_CONDITION_VALUE_NO');\n\t\t\t}\n\n\t\t\treturn this.options.condition.value;\n\t\t}\n\n\t\treturn Loc.getMessage('LANDING_RULE_FIELD_CONDITION_VALUE_EMPTY');\n\t}\n\n\tgetValueLabelLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('valueLabelLayout', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div \n\t\t\t\t\tclass=\"landing-ui-rule-entry-condition-value-value-label\"\n\t\t\t\t\tonclick=\"${this.onValueLabelClick.bind(this)}\"\n\t\t\t\t>\n\t\t\t\t\t${this.getValueLabel()}\n\t\t\t\t</div>\t\t\t\n\t\t\t`;\n\t\t});\n\t}\n\n\tsetValueLabelText(text: string)\n\t{\n\t\tthis.getValueLabelLayout().textContent = text;\n\t}\n\n\tonValueLabelClick(event: MouseEvent)\n\t{\n\t\tevent.preventDefault();\n\n\t\tconst valueSettingsPopup = this.getValueSettingsPopup();\n\t\tif (!valueSettingsPopup.isShown())\n\t\t{\n\t\t\tvalueSettingsPopup.show();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tvalueSettingsPopup.close();\n\t\t}\n\t}\n\n\tgetConditionValueLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('conditionValueLayout', () => {\n\t\t\t// const removeButton = new IconButton({\n\t\t\t// \ttype: IconButton.Types.remove,\n\t\t\t// \ticonSize: '9px',\n\t\t\t// \tstyle: {\n\t\t\t// \t\twidth: '19px',\n\t\t\t// \t\tmarginLeft: 'auto',\n\t\t\t// \t},\n\t\t\t// \tonClick: () => {\n\t\t\t// \t\tDom.remove(this.getLayout());\n\t\t\t// \t\tthis.emit('onRemove');\n\t\t\t// \t},\n\t\t\t// });\n\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-rule-entry-condition-value\">\n\t\t\t\t\t<div class=\"landing-ui-rule-entry-condition-value-text\">\n\t\t\t\t\t\t${this.getOperatorLabelLayout()}\n\t\t\t\t\t\t${this.getValueLabelLayout()}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t`;\n\t\t});\n\t}\n\n\tgetConditionContainer(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('conditionContainer', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-rule-entry-condition\">\n\t\t\t\t\t${this.getConditionValueLayout()}\n\t\t\t\t</div>\n\t\t\t`;\n\t\t});\n\t}\n\n\tgetFieldsListMenu(): Menu\n\t{\n\t\treturn this.cache.remember('fieldsListMenu', () => {\n\t\t\treturn new window.top.BX.Main.Menu({\n\t\t\t\tbindElement: this.getAddFieldLink(),\n\t\t\t\tmaxHeight: 205,\n\t\t\t\titems: this.options.fieldsList\n\t\t\t\t\t.filter((field) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\tfield.type !== 'page'\n\t\t\t\t\t\t\t&& field.type !== 'layout'\n\t\t\t\t\t\t\t&& field.id !== this.options.condition.field.id\n\t\t\t\t\t\t);\n\t\t\t\t\t})\n\t\t\t\t\t.map((item) => {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tid: item.id,\n\t\t\t\t\t\t\ttext: item.label,\n\t\t\t\t\t\t\tonclick: this.onAddExpressionField.bind(this, item),\n\t\t\t\t\t\t};\n\t\t\t\t\t}),\n\t\t\t});\n\t\t});\n\t}\n\n\tonExpressionItemRemove(event: BaseEvent)\n\t{\n\t\tconst target = event.getTarget();\n\n\t\tDom.remove(target.getLayout());\n\n\t\tif (this.getExpressionContainer().children.length === 1)\n\t\t{\n\t\t\tDom.removeClass(this.getLayout(), 'landing-ui-rule-entry-with-expression');\n\t\t}\n\n\t\tthis.state.expression = this.state.expression.filter((entry) => {\n\t\t\treturn entry.field !== target.options.id;\n\t\t});\n\n\t\tthis.emit('onChange');\n\t}\n\n\tonExpressionFieldChange(event: BaseEvent)\n\t{\n\t\tconst target = event.getTarget();\n\n\t\tconst expressionEntry = this.state.expression.find((currentEntry) => {\n\t\t\treturn currentEntry.field === target.options.id;\n\t\t});\n\n\t\tif (expressionEntry)\n\t\t{\n\t\t\texpressionEntry.action = target.getActionsDropdown().getValue();\n\t\t}\n\n\t\tthis.emit('onChange');\n\t}\n\n\taddExpressionItem(\n\t\toptions: {\n\t\t\tid: string,\n\t\t\tlabel: string,\n\t\t\taction: string,\n\t\t\tpreventEvent: boolean,\n\t\t},\n\t)\n\t{\n\t\tconst preparedOptions = {\n\t\t\tpreventEvent: false,\n\t\t\taction: 'show',\n\t\t\t...options,\n\t\t};\n\n\t\tconst fieldElement = new FieldElement({\n\t\t\tid: preparedOptions.id,\n\t\t\ttitle: preparedOptions.label,\n\t\t\tremovable: true,\n\t\t\tcolor: FieldElement.Colors.green,\n\t\t\tactionsLabel: Loc.getMessage('LANDING_RULE_FIELD_CONDITION_FIELD_ACTION_LABEL'),\n\t\t\tactionsList: [\n\t\t\t\t{name: Loc.getMessage('LANDING_RULE_FIELD_CONDITION_FIELD_ACTION_SHOW_LABEL'), value: 'show'},\n\t\t\t\t{name: Loc.getMessage('LANDING_RULE_FIELD_CONDITION_FIELD_ACTION_HIDE_LABEL'), value: 'hide'},\n\t\t\t],\n\t\t\tactionsValue: preparedOptions.action,\n\t\t\tonRemove: this.onExpressionItemRemove.bind(this),\n\t\t\tonChange: this.onExpressionFieldChange.bind(this),\n\t\t});\n\n\t\tDom.insertBefore(fieldElement.getLayout(), this.getAddFieldLink());\n\n\t\tthis.state.expression.push({field: preparedOptions.id, action: 'show'});\n\t\tthis.state.expression = this.state.expression.reduce((acc, entry) => {\n\t\t\tif (!acc.find((accEntry) => accEntry.field === entry.field))\n\t\t\t{\n\t\t\t\tacc.push(entry);\n\t\t\t}\n\n\t\t\treturn acc;\n\t\t}, []);\n\n\t\tthis.adjustExpressionItems();\n\n\t\tDom.addClass(this.getLayout(), 'landing-ui-rule-entry-with-expression');\n\n\t\tif (!preparedOptions.preventEvent)\n\t\t{\n\t\t\tthis.emit('onChange');\n\t\t}\n\t}\n\n\tonAddExpressionField(item: {id: string, label: string})\n\t{\n\t\tthis.addExpressionItem(item);\n\t\tthis.getFieldsListMenu().close();\n\t}\n\n\tadjustExpressionItems()\n\t{\n\t\t[...this.getExpressionContainer().children]\n\t\t\t.reverse()\n\t\t\t.forEach((element, index) => {\n\t\t\t\tif (!Dom.hasClass(element, 'landing-ui-rule-entry-expression-link'))\n\t\t\t\t{\n\t\t\t\t\tDom.style(element, 'z-index', index + 2);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tonAddFieldLinkClick(event: MouseEvent)\n\t{\n\t\tevent.preventDefault();\n\n\t\tconst menu = this.getFieldsListMenu();\n\t\tconst expressionItems = this.state.expression;\n\t\tmenu.getMenuItems().forEach((item) => {\n\t\t\tconst isUsed = expressionItems.some((expressionItem) => {\n\t\t\t\treturn expressionItem.field === item.getId();\n\t\t\t});\n\n\t\t\tif (isUsed)\n\t\t\t{\n\t\t\t\tDom.addClass(item.getLayout().item, 'landing-ui-disabled');\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tDom.removeClass(item.getLayout().item, 'landing-ui-disabled');\n\t\t\t}\n\t\t});\n\n\t\tthis.getFieldsListMenu().show();\n\t}\n\n\tgetAddFieldLink(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('addFieldLink', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-rule-entry-expression-link\">\n\t\t\t\t\t<div \n\t\t\t\t\t\tclass=\"landing-ui-rule-entry-expression-link-text\"\n\t\t\t\t\t\tonclick=\"${this.onAddFieldLinkClick.bind(this)}\"\n\t\t\t\t\t>\n\t\t\t\t\t\t${Loc.getMessage('LANDING_RULE_FIELD_EXPRESSION_ADD_FIELD_LINK_LABEL')}\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"landing-ui-rule-entry-expression-link-sep\"></div>\n\t\t\t\t</div>\n\t\t\t`;\n\t\t});\n\t}\n\n\tgetExpressionContainer(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('expressionContainer', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-rule-entry-expression\">\n\t\t\t\t\t${this.getAddFieldLink()}\n\t\t\t\t</div>\n\t\t\t`;\n\t\t});\n\t}\n\n\tgetLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('layout', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-rule-entry\">\n\t\t\t\t\t${this.getConditionContainer()}\n\t\t\t\t\t${this.getExpressionContainer()}\n\t\t\t\t</div>\n\t\t\t`;\n\t\t});\n\t}\n\n\tgetValue()\n\t{\n\t\treturn this.state;\n\t}\n\n\tonDragEnd()\n\t{\n\t\tthis.adjustExpressionItems();\n\t\tthis.emit('onChange');\n\t}\n}","import 'ui.design-tokens';\n\nimport {Cache, Dom, Tag} from 'main.core';\nimport {EventEmitter} from 'main.core.events';\nimport {Loc} from 'landing.loc';\nimport type {FieldRulesOptions, RuleEntryOptions} from '../../types/rule-field-options';\nimport {FieldElement} from '../field-element/field-element';\nimport {RuleEntry} from './internal/rule-entry/rule-entry';\n\nimport './css/style.css';\n\nexport class FieldRules extends EventEmitter\n{\n\tconstructor(options: FieldRulesOptions = {})\n\t{\n\t\tsuper();\n\t\tthis.setEventNamespace('BX.Landing.UI.Field.RuleField.FieldRow');\n\t\tthis.options = {...options};\n\t\tthis.cache = new Cache.MemoryCache();\n\t\tthis.entries = [];\n\n\t\tthis.onEntryChange = this.onEntryChange.bind(this);\n\n\t\tthis.addRule(this.options);\n\t}\n\n\taddRule(ruleOptions: RuleEntryOptions)\n\t{\n\t\tconst entry = new RuleEntry({\n\t\t\t...ruleOptions,\n\t\t\tfieldsList: this.options.fields,\n\t\t\tdictionary: this.options.dictionary,\n\t\t});\n\t\tthis.entries.push(entry);\n\t\tentry.subscribe('onChange', this.onEntryChange);\n\t\tDom.append(entry.getLayout(), this.getListContainer());\n\t\tthis.emit('onChange');\n\t}\n\n\tonEntryChange()\n\t{\n\t\tthis.emit('onChange');\n\t}\n\n\tgetConditionFieldLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('conditionField', () => {\n\t\t\tconst fieldElement = new FieldElement({\n\t\t\t\ttitle: this.options.condition.field.label,\n\t\t\t\tremovable: true,\n\t\t\t\tonRemove: this.onConditionFieldRemoveClick.bind(this),\n\t\t\t});\n\n\t\t\treturn fieldElement.getLayout();\n\t\t});\n\t}\n\n\tonConditionFieldRemoveClick(event: MouseEvent)\n\t{\n\t\tevent.preventDefault();\n\t\tDom.remove(this.getLayout());\n\t\tthis.entries = [];\n\t\tthis.emit('onChange');\n\t}\n\n\tgetFieldContainer(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('fieldContainer', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-field-rule-field-row-field-container\">\n\t\t\t\t\t<div class=\"landing-ui-field-rule-field-row-field-container-title\">\n\t\t\t\t\t\t${Loc.getMessage('LANDING_RULE_FIELD_CONDITION_FIELD_TITLE')}\n\t\t\t\t\t</div>\n\t\t\t\t\t${this.getConditionFieldLayout()}\n\t\t\t\t\t<div class=\"landing-ui-field-rule-field-row-field-container-action-title\">\n\t\t\t\t\t\t${Loc.getMessage('LANDING_RULE_FIELD_CONDITION_FIELD_SHOW_ACTION_TITLE')}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t`;\n\t\t});\n\t}\n\n\tgetListContainer(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('listContainer', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-field-rule-field-row-list\"></div>\n\t\t\t`;\n\t\t});\n\t}\n\n\tgetLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('layout', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-field-rule-field-row\">\n\t\t\t\t\t${this.getFieldContainer()}\n\t\t\t\t\t${this.getListContainer()}\n\t\t\t\t</div>\n\t\t\t`;\n\t\t});\n\t}\n\n\tgetValue()\n\t{\n\t\treturn this.entries\n\t\t\t.map((entry) => entry.getValue());\n\t}\n}","import 'ui.design-tokens';\nimport 'ui.fonts.opensans';\n\nimport {Dom, Tag} from 'main.core';\nimport {BaseField} from 'landing.ui.field.basefield';\nimport {Loc} from 'landing.loc';\nimport {IconButton} from 'landing.ui.component.iconbutton';\nimport {ActionPanel} from 'landing.ui.component.actionpanel';\nimport {fetchEventsFromOptions} from 'landing.ui.component.internal';\nimport {FieldRules} from './internal/field-rules/field-rules';\nimport type {FormField, RuleFieldOptions, RuleType} from './types/rule-field-options';\nimport 'main.popup';\n\nimport './css/style.css';\n\n/**\n * @memberOf BX.Landing.UI.Field\n */\nexport class RuleField extends BaseField\n{\n\toptions: RuleFieldOptions;\n\n\tconstructor(options: RuleFieldOptions)\n\t{\n\t\tsuper(options);\n\t\tthis.setEventNamespace('BX.Landing.UI.Field.RuleField');\n\t\tthis.subscribeFromOptions(fetchEventsFromOptions(options));\n\t\tthis.setLayoutClass('landing-ui-field-rule');\n\n\t\tthis.onRemoveClick = this.onRemoveClick.bind(this);\n\t\tthis.onRowChange = this.onRowChange.bind(this);\n\n\t\tDom.clean(this.layout);\n\t\tDom.append(this.getHeaderLayout(), this.getLayout());\n\t\tDom.append(this.getBodyLayout(), this.getLayout());\n\t\tDom.append(this.getFooterLayout(), this.getLayout());\n\n\t\tthis.setRuleType(this.options.type);\n\n\t\tthis.rows = [];\n\n\t\tthis.options.rules.forEach((rule) => {\n\t\t\tthis.addRule(rule);\n\t\t});\n\n\t\tif (this.hasExpression())\n\t\t{\n\t\t\tthis.hideExpressionsLabel();\n\t\t}\n\t}\n\n\thideExpressionsLabel()\n\t{\n\t\tDom.hide(\n\t\t\tthis.rows[0]\n\t\t\t\t.getFieldContainer()\n\t\t\t\t.querySelector('.landing-ui-field-rule-field-row-field-container-action-title'),\n\t\t);\n\t}\n\n\thasExpression(): boolean\n\t{\n\t\treturn this.options.rules.some((rule) => {\n\t\t\treturn rule.expression.length > 0;\n\t\t});\n\t}\n\n\tsetRuleType(type: RuleType)\n\t{\n\t\tthis.cache.set('ruleType', type);\n\t}\n\n\tgetRuleType(): RuleType\n\t{\n\t\treturn this.cache.get('ruleType');\n\t}\n\n\taddRule(fieldRules: FieldRules)\n\t{\n\t\tconst row = new FieldRules({\n\t\t\t...fieldRules,\n\t\t\tfields: this.options.fields,\n\t\t\tdictionary: this.options.dictionary,\n\t\t});\n\t\tthis.rows.push(row);\n\n\t\trow.subscribe('onChange', this.onRowChange);\n\t\tDom.append(row.getLayout(), this.getBodyLayout());\n\t\tthis.emit('onChange');\n\t}\n\n\tonRowChange(event)\n\t{\n\t\tthis.emit('onChange');\n\n\t\tconst hideLabel = event.getTarget().getValue().some((rule) => {\n\t\t\treturn rule.expression.length > 0;\n\t\t});\n\n\t\tconst label = this.rows[0].getFieldContainer()\n\t\t\t.querySelector('.landing-ui-field-rule-field-row-field-container-action-title');\n\n\t\tif (hideLabel)\n\t\t{\n\t\t\tDom.hide(label);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tDom.show(label);\n\t\t}\n\t}\n\n\tgetHeaderTitleLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('headerTitleLayout', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-field-rule-header-title\">${Loc.getMessage('LANDING_FIELDS_RULES_TYPE_1')}</div>\n\t\t\t`;\n\t\t});\n\t}\n\n\tgetRemoveButtonLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('removeButtonLayout', () => {\n\t\t\tconst button = new IconButton({\n\t\t\t\ttype: IconButton.Types.remove,\n\t\t\t\tonClick: this.onRemoveClick,\n\t\t\t\ttitle: Loc.getMessage('LANDING_RULE_FIELD_REMOVE_BUTTON_TITLE'),\n\t\t\t\tstyle: {\n\t\t\t\t\tmarginLeft: 'auto',\n\t\t\t\t},\n\t\t\t});\n\n\t\t\treturn button.getLayout();\n\t\t});\n\t}\n\n\tgetHeaderLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('headerLayout', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-field-rule-header\">\n\t\t\t\t\t${this.getHeaderTitleLayout()}\n\t\t\t\t\t${this.getRemoveButtonLayout()}\n\t\t\t\t</div>\n\t\t\t`;\n\t\t});\n\t}\n\n\tgetBodyLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('bodyLayout', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-field-rule-body\"></div>\n\t\t\t`;\n\t\t});\n\t}\n\n\tgetFooterLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('footerLayout', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-field-rule-footer\">\n\t\t\t\t\t${this.getFooterActionPanel().getLayout()}\n\t\t\t\t</div>\n\t\t\t`;\n\t\t});\n\t}\n\n\tonRemoveClick(event: MouseEvent)\n\t{\n\t\tevent.preventDefault();\n\t\tDom.remove(this.getLayout());\n\t\tthis.emit('onRemove');\n\t\tthis.emit('onChange');\n\t}\n\n\tgetFooterActionPanel(): ActionPanel\n\t{\n\t\treturn this.cache.remember('footerActionPanel', () => {\n\t\t\treturn new ActionPanel({\n\t\t\t\tleft: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'selectField',\n\t\t\t\t\t\ttext: Loc.getMessage('LANDING_RULE_FIELD_EXPRESSION_ADD_FIELD_LINK_LABEL'),\n\t\t\t\t\t\tonClick: this.onAddFieldRulesLinkClick.bind(this),\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t});\n\t\t});\n\t}\n\n\tgetFieldsListMenu()\n\t{\n\t\treturn this.cache.remember('fieldsMenu', () => {\n\t\t\treturn new window.top.BX.Main.Menu({\n\t\t\t\tbindElement: this.getFooterActionPanel().getLeftContainer().firstElementChild,\n\t\t\t\tmaxHeight: 205,\n\t\t\t\titems: this.options.fields\n\t\t\t\t\t.map((field) => {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tid: field.id,\n\t\t\t\t\t\t\ttext: field.label,\n\t\t\t\t\t\t\tonclick: () => {\n\t\t\t\t\t\t\t\tthis.onAddFieldRulesMenuItemClick(field);\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\tautoHide: true,\n\t\t\t});\n\t\t});\n\t}\n\n\tonAddFieldRulesLinkClick()\n\t{\n\t\tthis.getFieldsListMenu().show();\n\t}\n\n\tonAddFieldRulesMenuItemClick(field: FormField)\n\t{\n\t\tthis.addRule({\n\t\t\tcondition: {\n\t\t\t\tfield,\n\t\t\t\tvalue: '',\n\t\t\t\toperator: '=',\n\t\t\t},\n\t\t\texpression: [],\n\t\t});\n\n\t\tthis.getFieldsListMenu().close();\n\t}\n\n\tgetValue()\n\t{\n\t\treturn this.rows.map((row) => row.getValue());\n\t}\n}"],"names":["defaultOptions","removable","draggable","color","FieldElement","options","setEventNamespace","subscribeFromOptions","fetchEventsFromOptions","cache","Cache","MemoryCache","remember","button","IconButton","type","Types","drag","style","width","getLayout","field","window","top","BX","Landing","UI","Field","DropdownInline","title","actionsLabel","items","actionsList","content","actionsValue","subscribe","emit","Tag","render","getActionsDropdown","remove","onClick","iconSize","marginLeft","getDragButtonLayout","getActionsLayout","getTitleLayout","getRemoveButtonLayout","EventEmitter","blue","green","red","RuleEntry","Draggable","container","getExpressionContainer","dragElement","HEADLESS","context","parent","offset","y","onDragEnd","bind","state","condition","id","value","operator","expression","map","item","action","forEach","addExpressionItem","label","preventEvent","dictionary","deps","Radio","selector","operations","filter","Type","isArrayFilled","fieldTypes","includes","name","onChange","onOperatorChange","operatorField","getOperatorField","reduce","acc","String","getValue","getOperatorLabelLayout","textContent","getOperatorLabel","checked","setValueLabelText","rootWindow","PageObject","getRootWindow","popupContent","random","Text","getRandom","setValue","Dom","append","getSeparator","valueItems","Loc","getMessage","renderValueRadioButton","inputField","TextField","textOnly","onValueChange","conditionValue","Main","Popup","bindElement","getConditionValueLayout","autoHide","offsetLeft","offsetTop","maxHeight","events","onShow","addClass","getValueSettingsPopup","adjustPosition","forceBindPosition","onClose","removeClass","isArray","valueItem","find","isString","isStringFilled","onValueLabelClick","getValueLabel","text","getValueLabelLayout","event","preventDefault","valueSettingsPopup","isShown","show","close","Menu","getAddFieldLink","fieldsList","onclick","onAddExpressionField","target","getTarget","children","length","entry","expressionEntry","currentEntry","preparedOptions","fieldElement","Colors","onRemove","onExpressionItemRemove","onExpressionFieldChange","insertBefore","push","accEntry","adjustExpressionItems","getFieldsListMenu","reverse","element","index","hasClass","menu","expressionItems","getMenuItems","isUsed","some","expressionItem","getId","onAddFieldLinkClick","getConditionContainer","FieldRules","entries","onEntryChange","addRule","ruleOptions","fields","getListContainer","onConditionFieldRemoveClick","getConditionFieldLayout","getFieldContainer","RuleField","setLayoutClass","onRemoveClick","onRowChange","clean","layout","getHeaderLayout","getBodyLayout","getFooterLayout","setRuleType","rows","rules","rule","hasExpression","hideExpressionsLabel","hide","querySelector","set","get","fieldRules","row","hideLabel","getHeaderTitleLayout","getFooterActionPanel","ActionPanel","left","onAddFieldRulesLinkClick","getLeftContainer","firstElementChild","onAddFieldRulesMenuItemClick","BaseField"],"mappings":"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"}
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.26 |
proxy
|
phpinfo
|
Settings