File manager - Edit - /home/c14075/dragmet-ural.ru/www/bitrix/js/landing/ui/field/radiobuttonfield/dist/radiobuttonfield.bundle.js.map
Back
{"version":3,"file":"radiobuttonfield.bundle.js","sources":["../src/radiobuttonfield.js"],"sourcesContent":["import 'ui.design-tokens';\nimport 'ui.fonts.opensans';\n\nimport {Dom, Tag, Text, Type} from 'main.core';\nimport {BaseField} from 'landing.ui.field.basefield';\nimport {Button} from 'ui.buttons';\nimport {fetchEventsFromOptions} from 'landing.ui.component.internal';\n\nimport './css/style.css';\nimport {Loc} from 'landing.loc';\n\ntype ItemOptions = {\n\tid: string,\n\ttitle: string,\n\ticon: string,\n\tbutton?: {\n\t\ttext: string,\n\t\tonClick: () => void,\n\t},\n\tsoon?: boolean,\n\tdisabled?: boolean,\n};\n\ntype RadioButtonFieldOptions = {\n\tselector?: string,\n\tselectable?: boolean,\n\titems: Array<ItemOptions>,\n\tvalue?: any,\n};\n\n/**\n * @memberOf BX.Landing.UI.Field\n */\nexport class RadioButtonField extends BaseField\n{\n\toptions: RadioButtonFieldOptions;\n\n\tconstructor(options: RadioButtonFieldOptions)\n\t{\n\t\tsuper(options);\n\t\tthis.setEventNamespace('BX.Landing.UI.Field.RadioButtonField');\n\t\tthis.subscribeFromOptions(fetchEventsFromOptions(options));\n\n\t\tDom.addClass(this.layout, 'landing-ui-field-radio-button');\n\t\tDom.replace(this.input, this.getLayout());\n\n\t\tif (Type.isBoolean(this.options.selectable))\n\t\t{\n\t\t\tthis.setSelectable(this.options.selectable);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.setSelectable(true);\n\t\t}\n\n\t\tthis.options.items.forEach((item) => {\n\t\t\tthis.appendItem(item);\n\t\t});\n\n\t\tif (this.options.value)\n\t\t{\n\t\t\tthis.setValue(this.options.value, true);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.setValue(this.options.items[0].id, true);\n\t\t}\n\t}\n\n\tgetLayout(): HTMLDivElement\n\t{\n\t\treturn this.cache.remember('remember', () => {\n\t\t\treturn Tag.render`\n\t\t\t\t<div class=\"landing-ui-field-radio-button-layout\" data-selector=\"${this.selector}\"></div>\n\t\t\t`;\n\t\t});\n\t}\n\n\tappendItem(options: ItemOptions): HTMLDivElement\n\t{\n\t\tconst element = Tag.render`\n\t\t\t<div \n\t\t\t\tclass=\"landing-ui-field-radio-button-item${options.disabled ? ' landing-ui-disabled' : ''}\" \n\t\t\t\tdata-value=\"${options.id}\"\n\t\t\t\tonclick=\"${this.onItemClick.bind(this, options)}\"\n\t\t\t>\n\t\t\t\t<div class=\"landing-ui-field-radio-button-item-icon ${options.icon}\"></div>\n\t\t\t\t<div class=\"landing-ui-field-radio-button-item-text\">\n\t\t\t\t\t<span>${options.title}</span>\n\t\t\t\t</div>\n\t\t\t\t${options.soon ? this.createSoonLabel() : ''}\n\t\t\t</div>\n\t\t`;\n\n\t\tif (Type.isPlainObject(options.button))\n\t\t{\n\t\t\tconst button = new Button({\n\t\t\t\tcolor: Button.Color.PRIMARY,\n\t\t\t\tsize: Button.Size.EXTRA_SMALL,\n\t\t\t\ttext: options.button.text,\n\t\t\t\tround: true,\n\t\t\t\tevents: {\n\t\t\t\t\tclick: options.button.onClick,\n\t\t\t\t},\n\t\t\t});\n\n\t\t\tbutton.renderTo(element);\n\t\t}\n\n\t\tDom.append(element, this.getLayout());\n\t}\n\n\tonItemClick(item: ItemOptions, event: MouseEvent)\n\t{\n\t\tevent.preventDefault();\n\n\t\tif (this.options.selectable !== false)\n\t\t{\n\t\t\t[...this.getLayout().children].forEach((element) => {\n\t\t\t\tDom.removeClass(element, 'landing-ui-field-radio-button-item-active');\n\t\t\t});\n\n\t\t\tDom.addClass(event.currentTarget, 'landing-ui-field-radio-button-item-active');\n\t\t}\n\n\t\tthis.emit('onChange', {item});\n\t}\n\n\tgetValue(): string\n\t{\n\t\tconst activeElement = [...this.getLayout().children].find((item) => {\n\t\t\treturn Dom.hasClass(item, 'landing-ui-field-radio-button-item-active');\n\t\t});\n\n\t\tif (activeElement)\n\t\t{\n\t\t\treturn Dom.attr(activeElement, 'data-value');\n\t\t}\n\n\t\treturn '';\n\t}\n\n\tsetValue(value: string, preventEvent: boolean)\n\t{\n\t\tconst items = [...this.getLayout().children];\n\n\t\titems.forEach((element) => {\n\t\t\tDom.removeClass(element, 'landing-ui-field-radio-button-item-active');\n\t\t});\n\n\t\tconst item = items.find((currentItem) => {\n\t\t\treturn String(Dom.attr(currentItem, 'data-value')) === String(value);\n\t\t});\n\n\t\tif (item)\n\t\t{\n\t\t\tif (this.options.selectable !== false)\n\t\t\t{\n\t\t\t\tDom.addClass(item, 'landing-ui-field-radio-button-item-active');\n\t\t\t}\n\n\t\t\tif (!preventEvent)\n\t\t\t{\n\t\t\t\tthis.emit('onChange', {item});\n\t\t\t}\n\t\t}\n\t}\n\n\tgetSelectable(): boolean\n\t{\n\t\treturn Text.toBoolean(this.cache.get('selectable'));\n\t}\n\n\tsetSelectable(value: ?boolean)\n\t{\n\t\tthis.cache.set('selectable', Text.toBoolean(value));\n\t}\n\n\tisSelectable(): boolean\n\t{\n\t\treturn Text.toBoolean(this.cache.get('selectable'));\n\t}\n\n\tcreateSoonLabel(): HTMLDivElement\n\t{\n\t\treturn Tag.render`\n\t\t\t<div class=\"landing-ui-field-radio-button-item-soon-label\">\n\t\t\t\t${Loc.getMessage('LANDING_UI_BASE_PRESET_PANEL_SOON_LABEL')}\n\t\t\t</div>\n\t\t`;\n\t}\n}"],"names":["RadioButtonField","options","setEventNamespace","subscribeFromOptions","fetchEventsFromOptions","Dom","addClass","layout","replace","input","getLayout","Type","isBoolean","selectable","setSelectable","items","forEach","item","appendItem","value","setValue","id","cache","remember","Tag","render","selector","element","disabled","onItemClick","bind","icon","title","soon","createSoonLabel","isPlainObject","button","Button","color","Color","PRIMARY","size","Size","EXTRA_SMALL","text","round","events","click","onClick","renderTo","append","event","preventDefault","children","removeClass","currentTarget","emit","activeElement","find","hasClass","attr","preventEvent","currentItem","String","Text","toBoolean","get","set","Loc","getMessage","BaseField"],"mappings":"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"}
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.28 |
proxy
|
phpinfo
|
Settings