@aquera/nile-elements 0.0.23 → 0.0.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-content-editor/nile-content-editor.js +1 -1
  2. package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-content-editor/nile-content-editor.js.map +1 -1
  3. package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-switcher/nile-switcher.css.js +3 -2
  4. package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-switcher/nile-switcher.css.js.map +1 -1
  5. package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-switcher/nile-switcher.d.ts +0 -1
  6. package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-switcher/nile-switcher.js +9 -12
  7. package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-switcher/nile-switcher.js.map +1 -1
  8. package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/tsconfig.tsbuildinfo +1 -1
  9. package/dist/index.iife.js +14 -13
  10. package/dist/nile-content-editor/nile-content-editor.cjs.js +1 -1
  11. package/dist/nile-content-editor/nile-content-editor.cjs.js.map +1 -1
  12. package/dist/nile-content-editor/nile-content-editor.esm.js +1 -1
  13. package/dist/nile-switcher/nile-switcher.cjs.js +1 -1
  14. package/dist/nile-switcher/nile-switcher.cjs.js.map +1 -1
  15. package/dist/nile-switcher/nile-switcher.css.cjs.js +1 -1
  16. package/dist/nile-switcher/nile-switcher.css.cjs.js.map +1 -1
  17. package/dist/nile-switcher/nile-switcher.css.esm.js +3 -2
  18. package/dist/nile-switcher/nile-switcher.esm.js +18 -18
  19. package/dist/src/nile-content-editor/nile-content-editor.js +1 -1
  20. package/dist/src/nile-content-editor/nile-content-editor.js.map +1 -1
  21. package/dist/src/nile-switcher/nile-switcher.css.js +3 -2
  22. package/dist/src/nile-switcher/nile-switcher.css.js.map +1 -1
  23. package/dist/src/nile-switcher/nile-switcher.d.ts +0 -1
  24. package/dist/src/nile-switcher/nile-switcher.js +9 -12
  25. package/dist/src/nile-switcher/nile-switcher.js.map +1 -1
  26. package/dist/tsconfig.tsbuildinfo +1 -1
  27. package/package.json +1 -1
  28. package/src/nile-content-editor/nile-content-editor.ts +1 -1
  29. package/src/nile-switcher/nile-switcher.css.ts +3 -2
  30. package/src/nile-switcher/nile-switcher.ts +14 -15
@@ -1 +1 @@
1
- {"version":3,"file":"nile-switcher.cjs.js","sources":["../../../src/nile-switcher/nile-switcher.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, property, TemplateResult } from 'lit-element';\nimport { customElement } from 'lit/decorators.js';\nimport { styles } from './nile-switcher.css';\nimport NileElement from '../internal/nile-element';\nimport { CSSResultGroup } from 'lit';\nimport { choose } from 'lit/directives/choose.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\n/**\n * @summary Allows you to switch between nile elements\n\n * @dependency nile-icon\n * @dependency nile-input\n * @dependency nile-checkbox\n * @dependency nile-dropdown\n * @dependency nile-textarea\n *\n \n * @event nile-change - Emitted when the control's value changes.\n * @event nile-switch - Emitted when the nile component is being switched.\n \n */\n\nexport interface switchconfig {\n [key: string]: any;\n toggleSwitch: boolean;\n disable?: boolean;\n confirmation?: boolean;\n defaultInput: switchInputType;\n switchInput: switchInputType;\n}\n\nexport interface switchInputType {\n inputType:\n | INPUT_TYPE_NAMES.DROPDOWN\n | INPUT_TYPE_NAMES.TEXT\n | INPUT_TYPE_NAMES.CHECKBOX\n | INPUT_TYPE_NAMES.TEXTAREA\n | INPUT_TYPE_NAMES.RADIO\n | INPUT_TYPE_NAMES.CONTENTEDITOR;\n value?: String | boolean;\n label?: String;\n readonly?: boolean;\n type?: string;\n placeholder?: string;\n disabled?: boolean;\n required?: boolean;\n error?: boolean;\n errorMessage?: string;\n options?: Array<any>;\n helperText?: string;\n multiple?: boolean;\n noborder?: boolean;\n}\n\nexport enum INPUT_TYPE {\n DEFAULT = 'defaultInput',\n SWITCH = 'switchInput',\n}\n\nexport enum INPUT_TYPE_NAMES {\n DROPDOWN = 'dropdown',\n TEXT = 'text',\n CHECKBOX = 'checkbox',\n TEXTAREA = 'text-area',\n RADIO = 'radio',\n CONTENTEDITOR = 'content-editor',\n}\n\n@customElement('nile-switcher')\nexport class NileSwitcher extends NileElement {\n /**\n * The styles for nile switcher\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n static styles: CSSResultGroup = styles;\n @property({ type: Object }) nileSwitchConfig: switchconfig;\n\n @property() value: string;\n\n connectedCallback() {\n super.connectedCallback();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n\n renderNileText(Input: switchInputType, inputType: string) {\n const {\n value,\n label,\n placeholder,\n disabled,\n required,\n error,\n errorMessage,\n inputType: inputTypeName,\n } = Input;\n return html`<nile-input\n .value=${value}\n .label=${label}\n .disabled=${disabled}\n .required=${required}\n .errorMessage=${errorMessage}\n .placeholder=${placeholder}\n .error=${error}\n @nile-input=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n ></nile-input>`;\n }\n\n renderDropdown(Input: switchInputType, inputType: string) {\n const {\n options,\n multiple,\n placeholder,\n disabled,\n value,\n error,\n errorMessage,\n inputType: inputTypeName,\n } = Input;\n\n return html`<nile-select\n .placeholder=${placeholder}\n .disabled=\"${disabled}\"\n .multiple=\"${multiple}\"\n .value=\"${value}\"\n .error=\"${error}\"\n .errorMessage=\"${errorMessage}\"\n @nile-change=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n >\n ${options?.map((option: any) => {\n return html`<nile-option .value=\"${option}\">${option} </nile-option>`;\n })}\n </nile-select>`;\n }\n\n renderNileTextArea(Input: switchInputType, inputType: string) {\n const {\n value,\n disabled,\n readonly,\n errorMessage,\n error,\n inputType: inputTypeName,\n } = Input;\n\n return html`<nile-textarea\n .value=${value}\n .disabled=${disabled}\n ?readonly=${readonly}\n .error=${error}\n .errorMessage=${errorMessage}\n @nile-input=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n ></nile-textarea>`;\n }\n\n renderNileCheckBox(Input: switchInputType, inputType: string) {\n const { value, label, disabled, inputType: inputTypeName } = Input;\n\n return html`<nile-checkbox\n .checked=${value}\n .label=${label}\n .disabled=${disabled}\n @valueChange=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n ></nile-checkbox\n >; `;\n }\n\n renderNileRadio(Input: switchInputType, inputType: string) {\n const {\n options,\n value,\n disabled,\n inputType: inputTypeName,\n errorMessage,\n } = Input;\n\n const haserrorMessage = !!errorMessage;\n\n return html`<nile-radio-group\n .value=${value}\n .disabled=${disabled}\n @change=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n >\n ${options &&\n options.map((option: any) => {\n return html`<nile-radio .value=\"${option}\">${option} </nile-radio>`;\n })}\n </nile-radio-group>\n ${haserrorMessage ? this.renderErrorMessage(errorMessage) : ''}`;\n }\n\n renderErrorMessage(errorMessage: string) {\n return html`\n <nile-form-error-message>${errorMessage}</nile-form-error-message>\n `;\n }\n\n renderContentEditor(Input: switchInputType, inputType: string) {\n let {\n options,\n inputType: inputTypeName,\n errorMessage,\n type,\n readonly,\n noborder,\n } = Input;\n return html`<nile-content-editor\n .value=${this.value}\n .options=${options}\n .type=${type}\n .readonly=${readonly}\n .noborder=${noborder}\n .errorMessage=${errorMessage}\n @nile-change=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n >\n </nile-content-editor>`;\n }\n\n handleChange(event: CustomEvent, inputType: string, inputTypeName: string) {\n if (inputTypeName === INPUT_TYPE_NAMES.CHECKBOX) {\n this.nileSwitchConfig[inputType as keyof switchconfig].value =\n event.detail.checked;\n } else {\n this.nileSwitchConfig[inputType as keyof switchconfig].value =\n event.detail.value;\n }\n event.stopPropagation();\n this.emit('nile-change', { config: this.nileSwitchConfig });\n }\n\n renderIcon(defaultInput: switchInputType, switchInput: switchInputType) {\n const defaultHelperText = defaultInput.helperText;\n const switchHelperText = switchInput.helperText;\n\n const icon = !this.nileSwitchConfig.toggleSwitch\n ? 'header-functions'\n : 'stringinput';\n\n const helperText = !this.nileSwitchConfig.toggleSwitch\n ? !!switchHelperText\n ? switchHelperText\n : `switch to ${switchInput.inputType}`\n : !!defaultHelperText\n ? defaultHelperText\n : `switch to ${defaultInput.inputType}`;\n\n return html` <nile-tooltip\n class=${classMap({\n 'tooltip-container': true,\n })}\n content=${helperText}\n placement=\"bottom\"\n >\n <nile-icon\n size=\"14\"\n class=${classMap({\n 'pointer-cursor': true,\n })}\n .name=${icon}\n color=\"#005EA6\"\n @click=${this.toggleField}\n ></nile-icon>\n </nile-tooltip>`;\n }\n\n toggleField() {\n if (!this.nileSwitchConfig.confirmation) {\n this.nileSwitchConfig = {\n ...this.nileSwitchConfig,\n toggleSwitch: !this.nileSwitchConfig.toggleSwitch,\n };\n }\n this.emit('nile-switch', { config: this.nileSwitchConfig });\n }\n\n singleFieldSwitcher(\n defaultInput: switchInputType,\n switchInput: switchInputType,\n toggleField: boolean,\n disable: boolean\n ) {\n const defaultInputType = defaultInput.inputType;\n const switchInputType = switchInput.inputType;\n return html`\n ${!toggleField\n ? choose(\n defaultInputType,\n [\n [\n INPUT_TYPE_NAMES.TEXT,\n () => this.renderNileText(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.CHECKBOX,\n () => this.renderNileCheckBox(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.TEXTAREA,\n () => this.renderNileTextArea(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.RADIO,\n () => this.renderNileRadio(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.DROPDOWN,\n () =>\n this.renderDropdown(\n this.nileSwitchConfig.defaultInput,\n INPUT_TYPE.DEFAULT\n ),\n ],\n [\n INPUT_TYPE_NAMES.CONTENTEDITOR,\n () =>\n this.renderContentEditor(\n this.nileSwitchConfig.defaultInput,\n INPUT_TYPE.DEFAULT\n ),\n ],\n ],\n () => this.renderNileText(defaultInput, INPUT_TYPE.DEFAULT)\n )\n : choose(\n switchInputType,\n [\n [\n INPUT_TYPE_NAMES.TEXTAREA,\n () => this.renderNileTextArea(switchInput, INPUT_TYPE.SWITCH),\n ],\n [\n INPUT_TYPE_NAMES.TEXT,\n () => this.renderNileText(switchInput, INPUT_TYPE.SWITCH),\n ],\n [\n INPUT_TYPE_NAMES.CONTENTEDITOR,\n () => this.renderContentEditor(switchInput, INPUT_TYPE.SWITCH),\n ],\n ],\n\n () => this.renderNileTextArea(switchInput, INPUT_TYPE.SWITCH)\n )}\n ${!disable ? this.renderIcon(defaultInput, switchInput) : ''}\n `;\n }\n public render(): TemplateResult {\n const {\n toggleSwitch: toggleField,\n defaultInput,\n switchInput,\n disable,\n } = this.nileSwitchConfig;\n\n return html`<div class=\"input-container\">\n ${this.singleFieldSwitcher(\n defaultInput,\n switchInput,\n toggleField,\n !!disable\n )}\n </div>`;\n }\n}\n\nexport default NileSwitcher;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-switcher': NileSwitcher;\n }\n}\n"],"names":["INPUT_TYPE","DEFAULT","SWITCH","INPUT_TYPE_NAMES","DROPDOWN","TEXT","CHECKBOX","TEXTAREA","RADIO","CONTENTEDITOR","_export","NileSwitcher","_n","_inherits","d","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","connectedCallback","super","this","emit","disconnectedCallback","renderNileText","Input","inputType","label","placeholder","disabled","required","error","errorMessage","inputTypeName","html","_templateObject","_taggedTemplateLiteral","e","handleChange","renderDropdown","options","multiple","_templateObject2","map","option","_templateObject3","renderNileTextArea","readonly","_templateObject4","renderNileCheckBox","_templateObject5","renderNileRadio","haserrorMessage","_templateObject6","_templateObject7","renderErrorMessage","_templateObject8","renderContentEditor","type","noborder","_templateObject9","event","nileSwitchConfig","detail","checked","stopPropagation","config","renderIcon","defaultInput","switchInput","defaultHelperText","helperText","switchHelperText","icon","toggleSwitch","concat","_templateObject10","classMap","toggleField","confirmation","_objectSpread","singleFieldSwitcher","disable","defaultInputType","switchInputType","_templateObject11","choose","render","_this$nileSwitchConfi","_templateObject12","NileElement","styles","__decorate","property","Object","prototype","customElement"],"mappings":"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"}
1
+ {"version":3,"file":"nile-switcher.cjs.js","sources":["../../../src/nile-switcher/nile-switcher.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, property, TemplateResult } from 'lit-element';\nimport { customElement } from 'lit/decorators.js';\nimport { styles } from './nile-switcher.css';\nimport NileElement from '../internal/nile-element';\nimport { CSSResultGroup } from 'lit';\nimport { choose } from 'lit/directives/choose.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\n/**\n * @summary Allows you to switch between nile elements\n\n * @dependency nile-icon\n * @dependency nile-input\n * @dependency nile-checkbox\n * @dependency nile-dropdown\n * @dependency nile-textarea\n *\n \n * @event nile-change - Emitted when the control's value changes.\n * @event nile-switch - Emitted when the nile component is being switched.\n \n */\n\nexport interface switchconfig {\n [key: string]: any;\n toggleSwitch: boolean;\n disable?: boolean;\n confirmation?: boolean;\n defaultInput: switchInputType;\n switchInput: switchInputType;\n}\n\nexport interface switchInputType {\n inputType:\n | INPUT_TYPE_NAMES.DROPDOWN\n | INPUT_TYPE_NAMES.TEXT\n | INPUT_TYPE_NAMES.CHECKBOX\n | INPUT_TYPE_NAMES.TEXTAREA\n | INPUT_TYPE_NAMES.RADIO\n | INPUT_TYPE_NAMES.CONTENTEDITOR;\n value?: String | boolean;\n label?: String;\n readonly?: boolean;\n type?: string;\n placeholder?: string;\n disabled?: boolean;\n required?: boolean;\n error?: boolean;\n errorMessage?: string;\n options?: Array<any>;\n helperText?: string;\n multiple?: boolean;\n noborder?: boolean;\n}\n\nexport enum INPUT_TYPE {\n DEFAULT = 'defaultInput',\n SWITCH = 'switchInput',\n}\n\nexport enum INPUT_TYPE_NAMES {\n DROPDOWN = 'dropdown',\n TEXT = 'text',\n CHECKBOX = 'checkbox',\n TEXTAREA = 'text-area',\n RADIO = 'radio',\n CONTENTEDITOR = 'content-editor',\n}\n\n@customElement('nile-switcher')\nexport class NileSwitcher extends NileElement {\n /**\n * The styles for nile switcher\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n static styles: CSSResultGroup = styles;\n @property({ type: Object }) nileSwitchConfig: switchconfig;\n\n connectedCallback() {\n super.connectedCallback();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n\n renderNileText(Input: switchInputType, inputType: string) {\n const {\n value,\n label,\n placeholder,\n disabled,\n required,\n error,\n errorMessage,\n inputType: inputTypeName,\n } = Input;\n return html`<nile-input\n .value=${value}\n .label=${label}\n .disabled=${disabled}\n .required=${required}\n .errorMessage=${errorMessage}\n .placeholder=${placeholder}\n .error=${error}\n @nile-input=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n ></nile-input>`;\n }\n\n renderDropdown(Input: switchInputType, inputType: string) {\n const {\n options,\n multiple,\n placeholder,\n disabled,\n value,\n error,\n errorMessage,\n inputType: inputTypeName,\n } = Input;\n\n return html`<nile-select\n .placeholder=${placeholder}\n .disabled=\"${disabled}\"\n .multiple=\"${multiple}\"\n .value=\"${value}\"\n .error=\"${error}\"\n .errorMessage=\"${errorMessage}\"\n @nile-change=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n >\n ${options?.map((option: any) => {\n return html`<nile-option .value=\"${option}\">${option} </nile-option>`;\n })}\n </nile-select>`;\n }\n\n renderNileTextArea(Input: switchInputType, inputType: string) {\n const {\n value,\n disabled,\n readonly,\n errorMessage,\n error,\n inputType: inputTypeName,\n } = Input;\n\n return html`<nile-textarea\n .value=${value}\n .disabled=${disabled}\n ?readonly=${readonly}\n .error=${error}\n .errorMessage=${errorMessage}\n @nile-input=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n ></nile-textarea>`;\n }\n\n renderNileCheckBox(Input: switchInputType, inputType: string) {\n const { value, label, disabled, inputType: inputTypeName } = Input;\n\n return html`<nile-checkbox\n .checked=${value}\n .label=${label}\n .disabled=${disabled}\n @valueChange=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n ></nile-checkbox\n >; `;\n }\n\n renderNileRadio(Input: switchInputType, inputType: string) {\n const {\n options,\n value,\n disabled,\n inputType: inputTypeName,\n errorMessage,\n } = Input;\n\n const haserrorMessage = !!errorMessage;\n\n return html`<nile-radio-group\n .value=${value}\n .disabled=${disabled}\n @change=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n >\n ${options &&\n options.map((option: any) => {\n return html`<nile-radio .value=\"${option}\">${option} </nile-radio>`;\n })}\n ${haserrorMessage ? this.renderErrorMessage(errorMessage) : ''}\n </nile-radio-group> `;\n }\n\n renderErrorMessage(errorMessage: string) {\n return html`\n <nile-form-error-message>${errorMessage}</nile-form-error-message>\n `;\n }\n\n renderContentEditor(Input: switchInputType, inputType: string) {\n let {\n options,\n inputType: inputTypeName,\n errorMessage,\n type,\n readonly,\n noborder,\n value,\n } = Input;\n return html`<nile-content-editor\n .value=${value}\n .options=${options}\n .type=${type}\n .readonly=${readonly}\n .noborder=${noborder}\n .errorMessage=${errorMessage}\n @nile-change=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n >\n </nile-content-editor>`;\n }\n\n handleChange(event: CustomEvent, inputType: string, inputTypeName: string) {\n if (inputTypeName === INPUT_TYPE_NAMES.CHECKBOX) {\n this.nileSwitchConfig[inputType as keyof switchconfig].value =\n event.detail.checked;\n } else {\n this.nileSwitchConfig[inputType as keyof switchconfig].value =\n event.detail.value;\n }\n event.stopPropagation();\n this.emit('nile-change', { config: this.nileSwitchConfig });\n }\n\n renderIcon(defaultInput: switchInputType, switchInput: switchInputType) {\n const defaultHelperText = defaultInput.helperText;\n const switchHelperText = switchInput.helperText;\n\n const icon = !this.nileSwitchConfig.toggleSwitch\n ? 'header-functions'\n : 'stringinput';\n\n const helperText = !this.nileSwitchConfig.toggleSwitch\n ? !!switchHelperText\n ? switchHelperText\n : `switch to ${switchInput.inputType}`\n : !!defaultHelperText\n ? defaultHelperText\n : `switch to ${defaultInput.inputType}`;\n\n return html` <nile-tooltip\n class=${classMap({\n 'tooltip-container': true,\n })}\n content=${helperText}\n placement=\"bottom\"\n >\n <nile-icon\n size=\"14\"\n class=${classMap({\n 'pointer-cursor': true,\n })}\n .name=${icon}\n color=\"#005EA6\"\n @click=${this.toggleField}\n ></nile-icon>\n </nile-tooltip>`;\n }\n\n toggleField() {\n if (!this.nileSwitchConfig.confirmation) {\n this.nileSwitchConfig = {\n ...this.nileSwitchConfig,\n toggleSwitch: !this.nileSwitchConfig.toggleSwitch,\n };\n }\n this.emit('nile-switch', { config: this.nileSwitchConfig });\n }\n\n singleFieldSwitcher(\n defaultInput: switchInputType,\n switchInput: switchInputType,\n toggleField: boolean,\n disable: boolean\n ) {\n const defaultInputType = defaultInput.inputType;\n const switchInputType = switchInput.inputType;\n return html`\n ${!toggleField\n ? choose(\n defaultInputType,\n [\n [\n INPUT_TYPE_NAMES.TEXT,\n () => this.renderNileText(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.CHECKBOX,\n () => this.renderNileCheckBox(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.TEXTAREA,\n () => this.renderNileTextArea(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.RADIO,\n () => this.renderNileRadio(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.DROPDOWN,\n () =>\n this.renderDropdown(\n this.nileSwitchConfig.defaultInput,\n INPUT_TYPE.DEFAULT\n ),\n ],\n [\n INPUT_TYPE_NAMES.CONTENTEDITOR,\n () =>\n this.renderContentEditor(\n this.nileSwitchConfig.defaultInput,\n INPUT_TYPE.DEFAULT\n ),\n ],\n ],\n () => this.renderNileText(defaultInput, INPUT_TYPE.DEFAULT)\n )\n : choose(\n switchInputType,\n [\n [\n INPUT_TYPE_NAMES.TEXTAREA,\n () => this.renderNileTextArea(switchInput, INPUT_TYPE.SWITCH),\n ],\n [\n INPUT_TYPE_NAMES.TEXT,\n () => this.renderNileText(switchInput, INPUT_TYPE.SWITCH),\n ],\n [\n INPUT_TYPE_NAMES.CONTENTEDITOR,\n () => this.renderContentEditor(switchInput, INPUT_TYPE.SWITCH),\n ],\n ],\n\n () => this.renderNileTextArea(switchInput, INPUT_TYPE.SWITCH)\n )}\n ${!disable ? this.renderIcon(defaultInput, switchInput) : ''}\n `;\n }\n public render(): TemplateResult {\n const {\n toggleSwitch: toggleField,\n defaultInput,\n switchInput,\n disable,\n } = this.nileSwitchConfig;\n\n return html`<div class=\"input-container\">\n ${this.singleFieldSwitcher(\n defaultInput,\n switchInput,\n toggleField,\n !!disable\n )}\n </div>`;\n }\n}\n\nexport default NileSwitcher;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-switcher': NileSwitcher;\n }\n}\n"],"names":["INPUT_TYPE","DEFAULT","SWITCH","INPUT_TYPE_NAMES","DROPDOWN","TEXT","CHECKBOX","TEXTAREA","RADIO","CONTENTEDITOR","_export","NileSwitcher","_n","_inherits","d","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","connectedCallback","super","this","emit","disconnectedCallback","renderNileText","Input","inputType","label","placeholder","disabled","required","error","errorMessage","inputTypeName","html","_templateObject","_taggedTemplateLiteral","e","handleChange","renderDropdown","options","multiple","_templateObject2","map","option","_templateObject3","renderNileTextArea","readonly","_templateObject4","renderNileCheckBox","_templateObject5","renderNileRadio","haserrorMessage","_templateObject6","_templateObject7","renderErrorMessage","_templateObject8","renderContentEditor","type","noborder","_templateObject9","event","nileSwitchConfig","detail","checked","stopPropagation","config","renderIcon","defaultInput","switchInput","defaultHelperText","helperText","switchHelperText","icon","toggleSwitch","concat","_templateObject10","classMap","toggleField","confirmation","_objectSpread","singleFieldSwitcher","disable","defaultInputType","switchInputType","_templateObject11","choose","render","_this$nileSwitchConfi","_templateObject12","NileElement","styles","__decorate","property","Object","prototype","customElement"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- System.register(["../index-cd83c5c8.cjs.js"],function(_export,_context){"use strict";var i,_templateObject,n;function _taggedTemplateLiteral(strings,raw){if(!raw){raw=strings.slice(0);}return Object.freeze(Object.defineProperties(strings,{raw:{value:Object.freeze(raw)}}));}return{setters:[function(_index001CjsJs){i=_index001CjsJs.i;}],execute:function(){_export("s",n=i(_templateObject||(_templateObject=_taggedTemplateLiteral(["\n :host {\n box-sizing: border-box;\n }\n\n .pointer-cursor {\n cursor: pointer;\n }\n .input-container {\n display: flex;\n gap: 0.5rem;\n }\n\n .input-container > :first-child {\n max-width: 99%;\n min-width: 99%;\n }\n\n nile-icon {\n max-height: 38px;\n }\n\n nile-radio {\n display: inline-block;\n padding-right: 10px;\n }\n"]))));}};});
1
+ System.register(["../index-cd83c5c8.cjs.js"],function(_export,_context){"use strict";var i,_templateObject,n;function _taggedTemplateLiteral(strings,raw){if(!raw){raw=strings.slice(0);}return Object.freeze(Object.defineProperties(strings,{raw:{value:Object.freeze(raw)}}));}return{setters:[function(_index001CjsJs){i=_index001CjsJs.i;}],execute:function(){_export("s",n=i(_templateObject||(_templateObject=_taggedTemplateLiteral(["\n :host {\n width: 100%;\n box-sizing: border-box;\n }\n\n .pointer-cursor {\n cursor: pointer;\n }\n .input-container {\n display: flex;\n gap: 0.5rem;\n }\n\n .input-container > :first-child {\n max-width: 98%;\n min-width: 98%;\n }\n\n nile-icon {\n max-height: 38px;\n }\n\n nile-radio {\n display: inline-block;\n padding-right: 10px;\n }\n"]))));}};});
2
2
  //# sourceMappingURL=nile-switcher.css.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nile-switcher.css.cjs.js","sources":["../../../src/nile-switcher/nile-switcher.css.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit-element';\n\n/**\n * FieldGenerator CSS\n */\nexport const styles = css`\n :host {\n box-sizing: border-box;\n }\n\n .pointer-cursor {\n cursor: pointer;\n }\n .input-container {\n display: flex;\n gap: 0.5rem;\n }\n\n .input-container > :first-child {\n max-width: 99%;\n min-width: 99%;\n }\n\n nile-icon {\n max-height: 38px;\n }\n\n nile-radio {\n display: inline-block;\n padding-right: 10px;\n }\n`;\n\nexport default [styles];\n"],"names":["styles","css","_templateObject","_taggedTemplateLiteral"],"mappings":"gXAYaA,CAAAA,CAASC,CAAG,CAAAC,eAAA,GAAAA,eAAA,CAAAC,sBAAA"}
1
+ {"version":3,"file":"nile-switcher.css.cjs.js","sources":["../../../src/nile-switcher/nile-switcher.css.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit-element';\n\n/**\n * FieldGenerator CSS\n */\nexport const styles = css`\n :host {\n width: 100%;\n box-sizing: border-box;\n }\n\n .pointer-cursor {\n cursor: pointer;\n }\n .input-container {\n display: flex;\n gap: 0.5rem;\n }\n\n .input-container > :first-child {\n max-width: 98%;\n min-width: 98%;\n }\n\n nile-icon {\n max-height: 38px;\n }\n\n nile-radio {\n display: inline-block;\n padding-right: 10px;\n }\n`;\n\nexport default [styles];\n"],"names":["styles","css","_templateObject","_taggedTemplateLiteral"],"mappings":"gXAYaA,CAAAA,CAASC,CAAG,CAAAC,eAAA,GAAAA,eAAA,CAAAC,sBAAA"}
@@ -1,5 +1,6 @@
1
1
  import{i}from"../index-cd2f9c12.esm.js";const n=i`
2
2
  :host {
3
+ width: 100%;
3
4
  box-sizing: border-box;
4
5
  }
5
6
 
@@ -12,8 +13,8 @@ import{i}from"../index-cd2f9c12.esm.js";const n=i`
12
13
  }
13
14
 
14
15
  .input-container > :first-child {
15
- max-width: 99%;
16
- min-width: 99%;
16
+ max-width: 98%;
17
+ min-width: 98%;
17
18
  }
18
19
 
19
20
  nile-icon {
@@ -1,20 +1,20 @@
1
- import{__decorate as e}from"tslib";import{x as i}from"../index-cd2f9c12.esm.js";import{customElement as t}from"lit/decorators.js";import{s as r}from"./nile-switcher.css.esm.js";import{N as n}from"../internal/nile-element.esm.js";import{choose as s}from"lit/directives/choose.js";import{classMap as o}from"lit/directives/class-map.js";import{n as l}from"../property-09139d3c.esm.js";import"lit";var a,d;!function(e){e.DEFAULT="defaultInput",e.SWITCH="switchInput"}(a||(a={})),function(e){e.DROPDOWN="dropdown",e.TEXT="text",e.CHECKBOX="checkbox",e.TEXTAREA="text-area",e.RADIO="radio",e.CONTENTEDITOR="content-editor"}(d||(d={}));let c=class extends n{connectedCallback(){super.connectedCallback(),this.emit("nile-init")}disconnectedCallback(){super.disconnectedCallback(),this.emit("nile-destroy")}renderNileText(e,t){const{value:r,label:n,placeholder:s,disabled:o,required:l,error:a,errorMessage:d,inputType:c}=e;return i`<nile-input
1
+ import{__decorate as e}from"tslib";import{x as i}from"../index-cd2f9c12.esm.js";import{customElement as t}from"lit/decorators.js";import{s as r}from"./nile-switcher.css.esm.js";import{N as n}from"../internal/nile-element.esm.js";import{choose as s}from"lit/directives/choose.js";import{classMap as o}from"lit/directives/class-map.js";import{n as l}from"../property-09139d3c.esm.js";import"lit";var a,c;!function(e){e.DEFAULT="defaultInput",e.SWITCH="switchInput"}(a||(a={})),function(e){e.DROPDOWN="dropdown",e.TEXT="text",e.CHECKBOX="checkbox",e.TEXTAREA="text-area",e.RADIO="radio",e.CONTENTEDITOR="content-editor"}(c||(c={}));let d=class extends n{connectedCallback(){super.connectedCallback(),this.emit("nile-init")}disconnectedCallback(){super.disconnectedCallback(),this.emit("nile-destroy")}renderNileText(e,t){const{value:r,label:n,placeholder:s,disabled:o,required:l,error:a,errorMessage:c,inputType:d}=e;return i`<nile-input
2
2
  .value=${r}
3
3
  .label=${n}
4
4
  .disabled=${o}
5
5
  .required=${l}
6
- .errorMessage=${d}
6
+ .errorMessage=${c}
7
7
  .placeholder=${s}
8
8
  .error=${a}
9
- @nile-input=${e=>{this.handleChange(e,t,c)}}
10
- ></nile-input>`}renderDropdown(e,t){const{options:r,multiple:n,placeholder:s,disabled:o,value:l,error:a,errorMessage:d,inputType:c}=e;return i`<nile-select
9
+ @nile-input=${e=>{this.handleChange(e,t,d)}}
10
+ ></nile-input>`}renderDropdown(e,t){const{options:r,multiple:n,placeholder:s,disabled:o,value:l,error:a,errorMessage:c,inputType:d}=e;return i`<nile-select
11
11
  .placeholder=${s}
12
12
  .disabled="${o}"
13
13
  .multiple="${n}"
14
14
  .value="${l}"
15
15
  .error="${a}"
16
- .errorMessage="${d}"
17
- @nile-change=${e=>{this.handleChange(e,t,c)}}
16
+ .errorMessage="${c}"
17
+ @nile-change=${e=>{this.handleChange(e,t,d)}}
18
18
  >
19
19
  ${r?.map((e=>i`<nile-option .value="${e}">${e} </nile-option>`))}
20
20
  </nile-select>`}renderNileTextArea(e,t){const{value:r,disabled:n,readonly:s,errorMessage:o,error:l,inputType:a}=e;return i`<nile-textarea
@@ -31,16 +31,16 @@ import{__decorate as e}from"tslib";import{x as i}from"../index-cd2f9c12.esm.js";
31
31
  @valueChange=${e=>{this.handleChange(e,t,o)}}
32
32
  ></nile-checkbox
33
33
  >; `}renderNileRadio(e,t){const{options:r,value:n,disabled:s,inputType:o,errorMessage:l}=e,a=!!l;return i`<nile-radio-group
34
- .value=${n}
35
- .disabled=${s}
36
- @change=${e=>{this.handleChange(e,t,o)}}
37
- >
38
- ${r&&r.map((e=>i`<nile-radio .value="${e}">${e} </nile-radio>`))}
39
- </nile-radio-group>
40
- ${a?this.renderErrorMessage(l):""}`}renderErrorMessage(e){return i`
34
+ .value=${n}
35
+ .disabled=${s}
36
+ @change=${e=>{this.handleChange(e,t,o)}}
37
+ >
38
+ ${r&&r.map((e=>i`<nile-radio .value="${e}">${e} </nile-radio>`))}
39
+ ${a?this.renderErrorMessage(l):""}
40
+ </nile-radio-group> `}renderErrorMessage(e){return i`
41
41
  <nile-form-error-message>${e}</nile-form-error-message>
42
- `}renderContentEditor(e,t){let{options:r,inputType:n,errorMessage:s,type:o,readonly:l,noborder:a}=e;return i`<nile-content-editor
43
- .value=${this.value}
42
+ `}renderContentEditor(e,t){let{options:r,inputType:n,errorMessage:s,type:o,readonly:l,noborder:a,value:c}=e;return i`<nile-content-editor
43
+ .value=${c}
44
44
  .options=${r}
45
45
  .type=${o}
46
46
  .readonly=${l}
@@ -48,7 +48,7 @@ import{__decorate as e}from"tslib";import{x as i}from"../index-cd2f9c12.esm.js";
48
48
  .errorMessage=${s}
49
49
  @nile-change=${e=>{this.handleChange(e,t,n)}}
50
50
  >
51
- </nile-content-editor>`}handleChange(e,i,t){t===d.CHECKBOX?this.nileSwitchConfig[i].value=e.detail.checked:this.nileSwitchConfig[i].value=e.detail.value,e.stopPropagation(),this.emit("nile-change",{config:this.nileSwitchConfig})}renderIcon(e,t){const r=e.helperText,n=t.helperText,s=this.nileSwitchConfig.toggleSwitch?"stringinput":"header-functions",l=this.nileSwitchConfig.toggleSwitch?r||`switch to ${e.inputType}`:n||`switch to ${t.inputType}`;return i` <nile-tooltip
51
+ </nile-content-editor>`}handleChange(e,i,t){t===c.CHECKBOX?this.nileSwitchConfig[i].value=e.detail.checked:this.nileSwitchConfig[i].value=e.detail.value,e.stopPropagation(),this.emit("nile-change",{config:this.nileSwitchConfig})}renderIcon(e,t){const r=e.helperText,n=t.helperText,s=this.nileSwitchConfig.toggleSwitch?"stringinput":"header-functions",l=this.nileSwitchConfig.toggleSwitch?r||`switch to ${e.inputType}`:n||`switch to ${t.inputType}`;return i` <nile-tooltip
52
52
  class=${o({"tooltip-container":!0})}
53
53
  content=${l}
54
54
  placement="bottom"
@@ -61,8 +61,8 @@ import{__decorate as e}from"tslib";import{x as i}from"../index-cd2f9c12.esm.js";
61
61
  @click=${this.toggleField}
62
62
  ></nile-icon>
63
63
  </nile-tooltip>`}toggleField(){this.nileSwitchConfig.confirmation||(this.nileSwitchConfig={...this.nileSwitchConfig,toggleSwitch:!this.nileSwitchConfig.toggleSwitch}),this.emit("nile-switch",{config:this.nileSwitchConfig})}singleFieldSwitcher(e,t,r,n){const o=e.inputType,l=t.inputType;return i`
64
- ${r?s(l,[[d.TEXTAREA,()=>this.renderNileTextArea(t,a.SWITCH)],[d.TEXT,()=>this.renderNileText(t,a.SWITCH)],[d.CONTENTEDITOR,()=>this.renderContentEditor(t,a.SWITCH)]],(()=>this.renderNileTextArea(t,a.SWITCH))):s(o,[[d.TEXT,()=>this.renderNileText(e,a.DEFAULT)],[d.CHECKBOX,()=>this.renderNileCheckBox(e,a.DEFAULT)],[d.TEXTAREA,()=>this.renderNileTextArea(e,a.DEFAULT)],[d.RADIO,()=>this.renderNileRadio(e,a.DEFAULT)],[d.DROPDOWN,()=>this.renderDropdown(this.nileSwitchConfig.defaultInput,a.DEFAULT)],[d.CONTENTEDITOR,()=>this.renderContentEditor(this.nileSwitchConfig.defaultInput,a.DEFAULT)]],(()=>this.renderNileText(e,a.DEFAULT)))}
64
+ ${r?s(l,[[c.TEXTAREA,()=>this.renderNileTextArea(t,a.SWITCH)],[c.TEXT,()=>this.renderNileText(t,a.SWITCH)],[c.CONTENTEDITOR,()=>this.renderContentEditor(t,a.SWITCH)]],(()=>this.renderNileTextArea(t,a.SWITCH))):s(o,[[c.TEXT,()=>this.renderNileText(e,a.DEFAULT)],[c.CHECKBOX,()=>this.renderNileCheckBox(e,a.DEFAULT)],[c.TEXTAREA,()=>this.renderNileTextArea(e,a.DEFAULT)],[c.RADIO,()=>this.renderNileRadio(e,a.DEFAULT)],[c.DROPDOWN,()=>this.renderDropdown(this.nileSwitchConfig.defaultInput,a.DEFAULT)],[c.CONTENTEDITOR,()=>this.renderContentEditor(this.nileSwitchConfig.defaultInput,a.DEFAULT)]],(()=>this.renderNileText(e,a.DEFAULT)))}
65
65
  ${n?"":this.renderIcon(e,t)}
66
66
  `}render(){const{toggleSwitch:e,defaultInput:t,switchInput:r,disable:n}=this.nileSwitchConfig;return i`<div class="input-container">
67
67
  ${this.singleFieldSwitcher(t,r,e,!!n)}
68
- </div>`}};c.styles=r,e([l({type:Object})],c.prototype,"nileSwitchConfig",void 0),e([l()],c.prototype,"value",void 0),c=e([t("nile-switcher")],c);export{c as N};
68
+ </div>`}};d.styles=r,e([l({type:Object})],d.prototype,"nileSwitchConfig",void 0),d=e([t("nile-switcher")],d);export{d as N};
@@ -377,7 +377,7 @@ __decorate([
377
377
  state()
378
378
  ], NileContentEditor.prototype, "initialValue", void 0);
379
379
  __decorate([
380
- watch(['type', 'value'], { waitUntilFirstUpdate: true })
380
+ watch(['type'], { waitUntilFirstUpdate: true })
381
381
  ], NileContentEditor.prototype, "handleTypeChange", null);
382
382
  NileContentEditor = __decorate([
383
383
  customElement('nile-content-editor')
@@ -1 +1 @@
1
- {"version":3,"file":"nile-content-editor.js","sourceRoot":"","sources":["../../../src/nile-content-editor/nile-content-editor.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, property, TemplateResult } from 'lit-element';\nimport { customElement, query, state } from 'lit/decorators.js';\nimport { styles } from './nile-content-editor.css';\nimport { CSSResultGroup } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport NileElement from '../internal/nile-element';\nimport { watch } from '../internal/watch';\nimport { KeyCode } from '../internal/enum';\nimport { live } from 'lit/directives/live.js';\n\n/**\n * Nile icon component.\n *\n * @tag nile-attribute-expression\n *\n */\n@customElement('nile-content-editor')\nexport class NileContentEditor extends NileElement {\n /**\n * @summary Allows you to handle both input and dropdown selection\n\n * @dependency nile-option\n \n * @event nile-change - Emitted when the control's value changes. \n */\n\n @property() value: string = '';\n\n @property() options: Array<any>;\n\n @property() filteredOptions: Array<any>;\n\n @property() showLabel: boolean = true;\n\n @property() labelText = '';\n\n @property() type = 'text|text-area';\n\n @property() required: boolean = true;\n\n @query('.content-editable-input') contentEditor: HTMLInputElement;\n @query('.nile-options-container') autoOptions: HTMLInputElement;\n\n @state() openDropdown = false;\n\n tagIdentifier = '$';\n\n filteredValue = '';\n\n @property({ attribute: 'help-text' }) helpText = '';\n\n @property({ attribute: 'readonly' }) readonly = false;\n\n @property({ attribute: 'error-message' }) errorMessage = '';\n\n @property({ attribute: 'error' }) error = false;\n @property({ attribute: 'noborder' }) noborder = false;\n\n @state() initialValue = '';\n\n static styles: CSSResultGroup = styles;\n\n connectedCallback() {\n this.handleOutsideClick = this.handleOutsideClick.bind(this);\n this.handleClipboardEvent = this.handleClipboardEvent.bind(this);\n super.connectedCallback();\n this.emit('nile-init');\n this.addOpenListeners();\n this.setInitialValues();\n }\n\n addOpenListeners() {\n window.addEventListener('click', this.handleOutsideClick);\n this.addEventListener('cut', this.handleClipboardEvent);\n this.addEventListener('copy', this.handleClipboardEvent);\n this.addEventListener('paste', this.handleClipboardEvent);\n }\n\n removeOpenListeners() {\n this.removeEventListener('click', this.handleOutsideClick);\n this.removeEventListener('cut', this.handleClipboardEvent);\n this.removeEventListener('copy', this.handleClipboardEvent);\n this.removeEventListener('paste', this.handleClipboardEvent);\n }\n\n handleOutsideClick(event: any) {\n if (event && event.target && !this.contains(event.target)) {\n this.toggleDropdown(false);\n }\n }\n\n async handleClipboardEvent(event: Event) {\n const selectedText = window?.getSelection()?.toString();\n switch (event.type) {\n case 'cut':\n case 'copy':\n if (!!selectedText) await navigator.clipboard.writeText(selectedText);\n document.execCommand(event.type);\n break;\n case 'paste':\n event.preventDefault();\n let pastedText = '';\n pastedText = await navigator.clipboard.readText();\n pastedText = pastedText\n .replace(/<(|\\/)(html|body|meta|span)[^>]*?>/gi, '')\n .trim();\n document.execCommand('insertText', false, pastedText);\n break;\n default:\n break;\n }\n setTimeout(() => {\n this.emitInputChange();\n });\n }\n\n toggleDropdown(value: boolean) {\n this.openDropdown = value;\n }\n\n setInitialValues() {\n this.updateComplete.then(res => {\n if (res)\n this.contentEditor.innerHTML = this.generateHTMLTagsWithValues(\n this.value\n );\n });\n }\n\n @watch(['type', 'value'], { waitUntilFirstUpdate: true })\n handleTypeChange() {\n this.contentEditor.innerHTML = this.generateHTMLTagsWithValues(this.value);\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.removeOpenListeners();\n this.emit('nile-destroy');\n }\n\n private handlekeyDown(event: any) {\n if (event.code === KeyCode.ENTER && this.type === 'text') {\n event.preventDefault();\n return;\n }\n if (\n [KeyCode.CUT, KeyCode.COPY, KeyCode.PASTE].includes(event.code) &&\n (event.ctrlKey || event.metaKey)\n ) {\n return;\n }\n\n if (event.code === KeyCode.ESCAPE) {\n event.preventDefault();\n this.toggleDropdown(false);\n return;\n }\n setTimeout(() => {\n const value = this.contentEditor.innerText;\n this.emitInputChange();\n if (value.includes(this.tagIdentifier)) {\n this.insertNodes(this.contentEditor, this.contentEditor.childNodes);\n this.filterOptions();\n this.toggleDropdown(true);\n } else {\n this.toggleDropdown(false);\n }\n }, 10);\n }\n\n filterOptions() {\n this.filteredOptions = this.options;\n this.filteredValue = this.filteredValue.trim();\n if (!!this.options.length && !!this.filteredValue) {\n this.filteredOptions = this.options.filter(item =>\n item.includes(this.filteredValue)\n );\n } else {\n this.filteredOptions = this.options;\n }\n }\n\n generateValuesFromHTMLTags(string: any): string {\n let errorTag =\n /<span class=\"chips chip-error\" contenteditable=\"false\">(.*?)<\\/span>/g;\n this.error = !!string.match(errorTag);\n var pattern =\n /<span class=\"chips(?: chip-error)?\" contenteditable=\"false\">(.*?)<\\/span>/g;\n let result = string.replace(pattern, (match: any, option: any) => {\n return '{{' + option + '}}';\n });\n return result;\n }\n\n generateHTMLTagsWithValues(string: any): string {\n var pattern = /{{(.*?)}}/g;\n var result = string.replace(pattern, (match: any, option: any) => {\n return this.options.includes(option)\n ? '<span class=\"chips\" contenteditable=\"false\">' + option + '</span>'\n : this.setError(option);\n });\n return result;\n }\n\n setError(option: any) {\n this.error = true;\n return (\n '<span class=\"chips chip-error\" contenteditable=\"false\">' +\n option +\n '</span>'\n );\n }\n\n emitInputChange(): void {\n if (this.contentEditor) {\n let fieldValue = this.contentEditor.innerHTML;\n fieldValue = fieldValue.replace(/&nbsp;/g, ' ');\n fieldValue = fieldValue.replace('<br>', '');\n this.emit('nile-change', {\n value: this.generateValuesFromHTMLTags(fieldValue),\n });\n }\n }\n\n replaceText = '';\n\n insertNodes(\n parentNode: Node,\n childNodes: NodeList,\n autoOptionsTag?: HTMLElement\n ) {\n [...childNodes].forEach((node: Node, index: number) => {\n if (node.hasChildNodes()) {\n if (autoOptionsTag) {\n this.insertNodes(node, node.childNodes, autoOptionsTag);\n } else {\n this.insertNodes(node, node.childNodes);\n }\n } else {\n if (node.nodeValue?.includes(this.tagIdentifier)) {\n if (autoOptionsTag) {\n this.insertAutoOptionsTag(node, autoOptionsTag);\n }\n\n this.setFilterValue(node.nodeValue);\n\n return;\n }\n }\n });\n }\n\n insertAutoOptionsTag(node: any, autoOptionsTag: any) {\n const selection = window.getSelection();\n const range = document.createRange();\n const curssorNodeindex = node.nodeValue.indexOf(this.tagIdentifier);\n range.setStart(node, curssorNodeindex);\n range.insertNode(autoOptionsTag);\n range.setStartAfter(autoOptionsTag);\n range.collapse(true);\n selection?.removeAllRanges();\n selection?.addRange(range);\n\n if (autoOptionsTag.nextSibling?.nodeValue) {\n autoOptionsTag.nextSibling.nodeValue =\n autoOptionsTag.nextSibling?.nodeValue?.replace(\n this.tagIdentifier + this.filteredValue,\n ''\n );\n }\n this.contentEditor.focus();\n }\n\n setFilterValue(value: any) {\n //replace Text - check if text exists after tagidentifier , if exists take account of that too\n if (!this.openDropdown) {\n this.replaceText = value.split(this.tagIdentifier).slice(1).join();\n }\n if (!!value && this.openDropdown) {\n this.filteredValue = value\n ?.split(this.tagIdentifier)\n .slice(1)\n .join()\n .replace(this.replaceText, '');\n } else {\n this.filteredValue = '';\n }\n }\n\n handleOptions(option: any): void {\n this.toggleDropdown(false);\n let autoOptionsTag = document.createElement('span');\n autoOptionsTag.setAttribute('class', 'chips');\n autoOptionsTag.setAttribute('contentEditable', 'false');\n autoOptionsTag.innerText = option;\n this.insertNodes(\n this.contentEditor,\n this.contentEditor.childNodes,\n autoOptionsTag\n );\n this.resetOptions();\n this.emitInputChange();\n }\n\n resetOptions() {\n this.filteredOptions = this.options;\n this.filteredValue = '';\n }\n\n public renderAutoOptions(): TemplateResult {\n return html`<div\n class=\"${classMap({\n 'nile-options-container': true,\n 'dropdown-position': this.type === 'text-area',\n })}\"\n >\n ${this.filteredOptions &&\n this.filteredOptions.map((option: any) => {\n return html` <nile-option\n .value=\"${option}\"\n @click=\"${(event: Event) => {\n this.handleOptions(option);\n }}\"\n >${option}\n </nile-option>`;\n })}\n </div>`;\n }\n\n public render(): TemplateResult {\n const hasHelpText = this.helpText ? true : false;\n const hasError = !!this.error;\n const hasErrorMessage = !!this.errorMessage;\n const readonly = !!this.readonly;\n const noborder = !!this.noborder;\n const type = this.type;\n return html`\n <nile-popup\n .active=\"${live(this.openDropdown)}\"\n sync=\"width\"\n strategy=\"fixed\"\n placement=\"bottom\"\n class=${classMap({\n dropdown: true,\n 'dropdown--open': true,\n popup: true,\n })}\n >\n <div class=\"content-editable-wrapper\" slot=\"anchor\">\n ${this.showLabel && this.labelText\n ? html`<label class=\"ods-label\">${this.labelText} </label> ${this\n .required\n ? html`<span class=\"asterik\">*</span>`\n : ''}`\n : ''}\n <div\n contenteditable=\"${!readonly}\"\n spellcheck=\"false\"\n class=${classMap({\n 'content-editable-input': true,\n error: hasError || hasErrorMessage,\n 'read-only': readonly,\n 'no-border': noborder,\n 'text-area': type === 'text-area' ? true : false,\n })}\n @keydown=${this.handlekeyDown}\n ></div>\n ${hasHelpText\n ? html`\n <nile-form-help-text>${this.helpText}</nile-form-help-text>\n `\n : ``}\n ${hasErrorMessage\n ? html`\n <nile-form-error-message\n >${this.errorMessage}</nile-form-error-message\n >\n `\n : ``}\n </div>\n ${this.filteredOptions && !!this.filteredOptions.length\n ? this.renderAutoOptions()\n : null}\n </nile-popup>\n `;\n }\n}\n\nexport default NileContentEditor;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-content-editor': NileContentEditor;\n }\n}\n"]}
1
+ {"version":3,"file":"nile-content-editor.js","sourceRoot":"","sources":["../../../src/nile-content-editor/nile-content-editor.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, property, TemplateResult } from 'lit-element';\nimport { customElement, query, state } from 'lit/decorators.js';\nimport { styles } from './nile-content-editor.css';\nimport { CSSResultGroup } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport NileElement from '../internal/nile-element';\nimport { watch } from '../internal/watch';\nimport { KeyCode } from '../internal/enum';\nimport { live } from 'lit/directives/live.js';\n\n/**\n * Nile icon component.\n *\n * @tag nile-attribute-expression\n *\n */\n@customElement('nile-content-editor')\nexport class NileContentEditor extends NileElement {\n /**\n * @summary Allows you to handle both input and dropdown selection\n\n * @dependency nile-option\n \n * @event nile-change - Emitted when the control's value changes. \n */\n\n @property() value: string = '';\n\n @property() options: Array<any>;\n\n @property() filteredOptions: Array<any>;\n\n @property() showLabel: boolean = true;\n\n @property() labelText = '';\n\n @property() type = 'text|text-area';\n\n @property() required: boolean = true;\n\n @query('.content-editable-input') contentEditor: HTMLInputElement;\n @query('.nile-options-container') autoOptions: HTMLInputElement;\n\n @state() openDropdown = false;\n\n tagIdentifier = '$';\n\n filteredValue = '';\n\n @property({ attribute: 'help-text' }) helpText = '';\n\n @property({ attribute: 'readonly' }) readonly = false;\n\n @property({ attribute: 'error-message' }) errorMessage = '';\n\n @property({ attribute: 'error' }) error = false;\n @property({ attribute: 'noborder' }) noborder = false;\n\n @state() initialValue = '';\n\n static styles: CSSResultGroup = styles;\n\n connectedCallback() {\n this.handleOutsideClick = this.handleOutsideClick.bind(this);\n this.handleClipboardEvent = this.handleClipboardEvent.bind(this);\n super.connectedCallback();\n this.emit('nile-init');\n this.addOpenListeners();\n this.setInitialValues();\n }\n\n addOpenListeners() {\n window.addEventListener('click', this.handleOutsideClick);\n this.addEventListener('cut', this.handleClipboardEvent);\n this.addEventListener('copy', this.handleClipboardEvent);\n this.addEventListener('paste', this.handleClipboardEvent);\n }\n\n removeOpenListeners() {\n this.removeEventListener('click', this.handleOutsideClick);\n this.removeEventListener('cut', this.handleClipboardEvent);\n this.removeEventListener('copy', this.handleClipboardEvent);\n this.removeEventListener('paste', this.handleClipboardEvent);\n }\n\n handleOutsideClick(event: any) {\n if (event && event.target && !this.contains(event.target)) {\n this.toggleDropdown(false);\n }\n }\n\n async handleClipboardEvent(event: Event) {\n const selectedText = window?.getSelection()?.toString();\n switch (event.type) {\n case 'cut':\n case 'copy':\n if (!!selectedText) await navigator.clipboard.writeText(selectedText);\n document.execCommand(event.type);\n break;\n case 'paste':\n event.preventDefault();\n let pastedText = '';\n pastedText = await navigator.clipboard.readText();\n pastedText = pastedText\n .replace(/<(|\\/)(html|body|meta|span)[^>]*?>/gi, '')\n .trim();\n document.execCommand('insertText', false, pastedText);\n break;\n default:\n break;\n }\n setTimeout(() => {\n this.emitInputChange();\n });\n }\n\n toggleDropdown(value: boolean) {\n this.openDropdown = value;\n }\n\n setInitialValues() {\n this.updateComplete.then(res => {\n if (res)\n this.contentEditor.innerHTML = this.generateHTMLTagsWithValues(\n this.value\n );\n });\n }\n\n @watch(['type'], { waitUntilFirstUpdate: true })\n handleTypeChange() {\n this.contentEditor.innerHTML = this.generateHTMLTagsWithValues(this.value);\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.removeOpenListeners();\n this.emit('nile-destroy');\n }\n\n private handlekeyDown(event: any) {\n if (event.code === KeyCode.ENTER && this.type === 'text') {\n event.preventDefault();\n return;\n }\n if (\n [KeyCode.CUT, KeyCode.COPY, KeyCode.PASTE].includes(event.code) &&\n (event.ctrlKey || event.metaKey)\n ) {\n return;\n }\n\n if (event.code === KeyCode.ESCAPE) {\n event.preventDefault();\n this.toggleDropdown(false);\n return;\n }\n setTimeout(() => {\n const value = this.contentEditor.innerText;\n this.emitInputChange();\n if (value.includes(this.tagIdentifier)) {\n this.insertNodes(this.contentEditor, this.contentEditor.childNodes);\n this.filterOptions();\n this.toggleDropdown(true);\n } else {\n this.toggleDropdown(false);\n }\n }, 10);\n }\n\n filterOptions() {\n this.filteredOptions = this.options;\n this.filteredValue = this.filteredValue.trim();\n if (!!this.options.length && !!this.filteredValue) {\n this.filteredOptions = this.options.filter(item =>\n item.includes(this.filteredValue)\n );\n } else {\n this.filteredOptions = this.options;\n }\n }\n\n generateValuesFromHTMLTags(string: any): string {\n let errorTag =\n /<span class=\"chips chip-error\" contenteditable=\"false\">(.*?)<\\/span>/g;\n this.error = !!string.match(errorTag);\n var pattern =\n /<span class=\"chips(?: chip-error)?\" contenteditable=\"false\">(.*?)<\\/span>/g;\n let result = string.replace(pattern, (match: any, option: any) => {\n return '{{' + option + '}}';\n });\n return result;\n }\n\n generateHTMLTagsWithValues(string: any): string {\n var pattern = /{{(.*?)}}/g;\n var result = string.replace(pattern, (match: any, option: any) => {\n return this.options.includes(option)\n ? '<span class=\"chips\" contenteditable=\"false\">' + option + '</span>'\n : this.setError(option);\n });\n return result;\n }\n\n setError(option: any) {\n this.error = true;\n return (\n '<span class=\"chips chip-error\" contenteditable=\"false\">' +\n option +\n '</span>'\n );\n }\n\n emitInputChange(): void {\n if (this.contentEditor) {\n let fieldValue = this.contentEditor.innerHTML;\n fieldValue = fieldValue.replace(/&nbsp;/g, ' ');\n fieldValue = fieldValue.replace('<br>', '');\n this.emit('nile-change', {\n value: this.generateValuesFromHTMLTags(fieldValue),\n });\n }\n }\n\n replaceText = '';\n\n insertNodes(\n parentNode: Node,\n childNodes: NodeList,\n autoOptionsTag?: HTMLElement\n ) {\n [...childNodes].forEach((node: Node, index: number) => {\n if (node.hasChildNodes()) {\n if (autoOptionsTag) {\n this.insertNodes(node, node.childNodes, autoOptionsTag);\n } else {\n this.insertNodes(node, node.childNodes);\n }\n } else {\n if (node.nodeValue?.includes(this.tagIdentifier)) {\n if (autoOptionsTag) {\n this.insertAutoOptionsTag(node, autoOptionsTag);\n }\n\n this.setFilterValue(node.nodeValue);\n\n return;\n }\n }\n });\n }\n\n insertAutoOptionsTag(node: any, autoOptionsTag: any) {\n const selection = window.getSelection();\n const range = document.createRange();\n const curssorNodeindex = node.nodeValue.indexOf(this.tagIdentifier);\n range.setStart(node, curssorNodeindex);\n range.insertNode(autoOptionsTag);\n range.setStartAfter(autoOptionsTag);\n range.collapse(true);\n selection?.removeAllRanges();\n selection?.addRange(range);\n\n if (autoOptionsTag.nextSibling?.nodeValue) {\n autoOptionsTag.nextSibling.nodeValue =\n autoOptionsTag.nextSibling?.nodeValue?.replace(\n this.tagIdentifier + this.filteredValue,\n ''\n );\n }\n this.contentEditor.focus();\n }\n\n setFilterValue(value: any) {\n //replace Text - check if text exists after tagidentifier , if exists take account of that too\n if (!this.openDropdown) {\n this.replaceText = value.split(this.tagIdentifier).slice(1).join();\n }\n if (!!value && this.openDropdown) {\n this.filteredValue = value\n ?.split(this.tagIdentifier)\n .slice(1)\n .join()\n .replace(this.replaceText, '');\n } else {\n this.filteredValue = '';\n }\n }\n\n handleOptions(option: any): void {\n this.toggleDropdown(false);\n let autoOptionsTag = document.createElement('span');\n autoOptionsTag.setAttribute('class', 'chips');\n autoOptionsTag.setAttribute('contentEditable', 'false');\n autoOptionsTag.innerText = option;\n this.insertNodes(\n this.contentEditor,\n this.contentEditor.childNodes,\n autoOptionsTag\n );\n this.resetOptions();\n this.emitInputChange();\n }\n\n resetOptions() {\n this.filteredOptions = this.options;\n this.filteredValue = '';\n }\n\n public renderAutoOptions(): TemplateResult {\n return html`<div\n class=\"${classMap({\n 'nile-options-container': true,\n 'dropdown-position': this.type === 'text-area',\n })}\"\n >\n ${this.filteredOptions &&\n this.filteredOptions.map((option: any) => {\n return html` <nile-option\n .value=\"${option}\"\n @click=\"${(event: Event) => {\n this.handleOptions(option);\n }}\"\n >${option}\n </nile-option>`;\n })}\n </div>`;\n }\n\n public render(): TemplateResult {\n const hasHelpText = this.helpText ? true : false;\n const hasError = !!this.error;\n const hasErrorMessage = !!this.errorMessage;\n const readonly = !!this.readonly;\n const noborder = !!this.noborder;\n const type = this.type;\n return html`\n <nile-popup\n .active=\"${live(this.openDropdown)}\"\n sync=\"width\"\n strategy=\"fixed\"\n placement=\"bottom\"\n class=${classMap({\n dropdown: true,\n 'dropdown--open': true,\n popup: true,\n })}\n >\n <div class=\"content-editable-wrapper\" slot=\"anchor\">\n ${this.showLabel && this.labelText\n ? html`<label class=\"ods-label\">${this.labelText} </label> ${this\n .required\n ? html`<span class=\"asterik\">*</span>`\n : ''}`\n : ''}\n <div\n contenteditable=\"${!readonly}\"\n spellcheck=\"false\"\n class=${classMap({\n 'content-editable-input': true,\n error: hasError || hasErrorMessage,\n 'read-only': readonly,\n 'no-border': noborder,\n 'text-area': type === 'text-area' ? true : false,\n })}\n @keydown=${this.handlekeyDown}\n ></div>\n ${hasHelpText\n ? html`\n <nile-form-help-text>${this.helpText}</nile-form-help-text>\n `\n : ``}\n ${hasErrorMessage\n ? html`\n <nile-form-error-message\n >${this.errorMessage}</nile-form-error-message\n >\n `\n : ``}\n </div>\n ${this.filteredOptions && !!this.filteredOptions.length\n ? this.renderAutoOptions()\n : null}\n </nile-popup>\n `;\n }\n}\n\nexport default NileContentEditor;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-content-editor': NileContentEditor;\n }\n}\n"]}
@@ -10,6 +10,7 @@ import { css } from 'lit-element';
10
10
  */
11
11
  export const styles = css `
12
12
  :host {
13
+ width: 100%;
13
14
  box-sizing: border-box;
14
15
  }
15
16
 
@@ -22,8 +23,8 @@ export const styles = css `
22
23
  }
23
24
 
24
25
  .input-container > :first-child {
25
- max-width: 99%;
26
- min-width: 99%;
26
+ max-width: 98%;
27
+ min-width: 98%;
27
28
  }
28
29
 
29
30
  nile-icon {
@@ -1 +1 @@
1
- {"version":3,"file":"nile-switcher.css.js","sourceRoot":"","sources":["../../../src/nile-switcher/nile-switcher.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit-element';\n\n/**\n * FieldGenerator CSS\n */\nexport const styles = css`\n :host {\n box-sizing: border-box;\n }\n\n .pointer-cursor {\n cursor: pointer;\n }\n .input-container {\n display: flex;\n gap: 0.5rem;\n }\n\n .input-container > :first-child {\n max-width: 99%;\n min-width: 99%;\n }\n\n nile-icon {\n max-height: 38px;\n }\n\n nile-radio {\n display: inline-block;\n padding-right: 10px;\n }\n`;\n\nexport default [styles];\n"]}
1
+ {"version":3,"file":"nile-switcher.css.js","sourceRoot":"","sources":["../../../src/nile-switcher/nile-switcher.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit-element';\n\n/**\n * FieldGenerator CSS\n */\nexport const styles = css`\n :host {\n width: 100%;\n box-sizing: border-box;\n }\n\n .pointer-cursor {\n cursor: pointer;\n }\n .input-container {\n display: flex;\n gap: 0.5rem;\n }\n\n .input-container > :first-child {\n max-width: 98%;\n min-width: 98%;\n }\n\n nile-icon {\n max-height: 38px;\n }\n\n nile-radio {\n display: inline-block;\n padding-right: 10px;\n }\n`;\n\nexport default [styles];\n"]}
@@ -64,7 +64,6 @@ export declare class NileSwitcher extends NileElement {
64
64
  */
65
65
  static styles: CSSResultGroup;
66
66
  nileSwitchConfig: switchconfig;
67
- value: string;
68
67
  connectedCallback(): void;
69
68
  disconnectedCallback(): void;
70
69
  renderNileText(Input: switchInputType, inputType: string): TemplateResult<1>;
@@ -96,18 +96,18 @@ let NileSwitcher = class NileSwitcher extends NileElement {
96
96
  const { options, value, disabled, inputType: inputTypeName, errorMessage, } = Input;
97
97
  const haserrorMessage = !!errorMessage;
98
98
  return html `<nile-radio-group
99
- .value=${value}
100
- .disabled=${disabled}
101
- @change=${(e) => {
99
+ .value=${value}
100
+ .disabled=${disabled}
101
+ @change=${(e) => {
102
102
  this.handleChange(e, inputType, inputTypeName);
103
103
  }}
104
- >
105
- ${options &&
104
+ >
105
+ ${options &&
106
106
  options.map((option) => {
107
107
  return html `<nile-radio .value="${option}">${option} </nile-radio>`;
108
108
  })}
109
- </nile-radio-group>
110
- ${haserrorMessage ? this.renderErrorMessage(errorMessage) : ''}`;
109
+ ${haserrorMessage ? this.renderErrorMessage(errorMessage) : ''}
110
+ </nile-radio-group> `;
111
111
  }
112
112
  renderErrorMessage(errorMessage) {
113
113
  return html `
@@ -115,9 +115,9 @@ let NileSwitcher = class NileSwitcher extends NileElement {
115
115
  `;
116
116
  }
117
117
  renderContentEditor(Input, inputType) {
118
- let { options, inputType: inputTypeName, errorMessage, type, readonly, noborder, } = Input;
118
+ let { options, inputType: inputTypeName, errorMessage, type, readonly, noborder, value, } = Input;
119
119
  return html `<nile-content-editor
120
- .value=${this.value}
120
+ .value=${value}
121
121
  .options=${options}
122
122
  .type=${type}
123
123
  .readonly=${readonly}
@@ -244,9 +244,6 @@ NileSwitcher.styles = styles;
244
244
  __decorate([
245
245
  property({ type: Object })
246
246
  ], NileSwitcher.prototype, "nileSwitchConfig", void 0);
247
- __decorate([
248
- property()
249
- ], NileSwitcher.prototype, "value", void 0);
250
247
  NileSwitcher = __decorate([
251
248
  customElement('nile-switcher')
252
249
  ], NileSwitcher);
@@ -1 +1 @@
1
- {"version":3,"file":"nile-switcher.js","sourceRoot":"","sources":["../../../src/nile-switcher/nile-switcher.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, property, TemplateResult } from 'lit-element';\nimport { customElement } from 'lit/decorators.js';\nimport { styles } from './nile-switcher.css';\nimport NileElement from '../internal/nile-element';\nimport { CSSResultGroup } from 'lit';\nimport { choose } from 'lit/directives/choose.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\n/**\n * @summary Allows you to switch between nile elements\n\n * @dependency nile-icon\n * @dependency nile-input\n * @dependency nile-checkbox\n * @dependency nile-dropdown\n * @dependency nile-textarea\n *\n \n * @event nile-change - Emitted when the control's value changes.\n * @event nile-switch - Emitted when the nile component is being switched.\n \n */\n\nexport interface switchconfig {\n [key: string]: any;\n toggleSwitch: boolean;\n disable?: boolean;\n confirmation?: boolean;\n defaultInput: switchInputType;\n switchInput: switchInputType;\n}\n\nexport interface switchInputType {\n inputType:\n | INPUT_TYPE_NAMES.DROPDOWN\n | INPUT_TYPE_NAMES.TEXT\n | INPUT_TYPE_NAMES.CHECKBOX\n | INPUT_TYPE_NAMES.TEXTAREA\n | INPUT_TYPE_NAMES.RADIO\n | INPUT_TYPE_NAMES.CONTENTEDITOR;\n value?: String | boolean;\n label?: String;\n readonly?: boolean;\n type?: string;\n placeholder?: string;\n disabled?: boolean;\n required?: boolean;\n error?: boolean;\n errorMessage?: string;\n options?: Array<any>;\n helperText?: string;\n multiple?: boolean;\n noborder?: boolean;\n}\n\nexport enum INPUT_TYPE {\n DEFAULT = 'defaultInput',\n SWITCH = 'switchInput',\n}\n\nexport enum INPUT_TYPE_NAMES {\n DROPDOWN = 'dropdown',\n TEXT = 'text',\n CHECKBOX = 'checkbox',\n TEXTAREA = 'text-area',\n RADIO = 'radio',\n CONTENTEDITOR = 'content-editor',\n}\n\n@customElement('nile-switcher')\nexport class NileSwitcher extends NileElement {\n /**\n * The styles for nile switcher\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n static styles: CSSResultGroup = styles;\n @property({ type: Object }) nileSwitchConfig: switchconfig;\n\n @property() value: string;\n\n connectedCallback() {\n super.connectedCallback();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n\n renderNileText(Input: switchInputType, inputType: string) {\n const {\n value,\n label,\n placeholder,\n disabled,\n required,\n error,\n errorMessage,\n inputType: inputTypeName,\n } = Input;\n return html`<nile-input\n .value=${value}\n .label=${label}\n .disabled=${disabled}\n .required=${required}\n .errorMessage=${errorMessage}\n .placeholder=${placeholder}\n .error=${error}\n @nile-input=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n ></nile-input>`;\n }\n\n renderDropdown(Input: switchInputType, inputType: string) {\n const {\n options,\n multiple,\n placeholder,\n disabled,\n value,\n error,\n errorMessage,\n inputType: inputTypeName,\n } = Input;\n\n return html`<nile-select\n .placeholder=${placeholder}\n .disabled=\"${disabled}\"\n .multiple=\"${multiple}\"\n .value=\"${value}\"\n .error=\"${error}\"\n .errorMessage=\"${errorMessage}\"\n @nile-change=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n >\n ${options?.map((option: any) => {\n return html`<nile-option .value=\"${option}\">${option} </nile-option>`;\n })}\n </nile-select>`;\n }\n\n renderNileTextArea(Input: switchInputType, inputType: string) {\n const {\n value,\n disabled,\n readonly,\n errorMessage,\n error,\n inputType: inputTypeName,\n } = Input;\n\n return html`<nile-textarea\n .value=${value}\n .disabled=${disabled}\n ?readonly=${readonly}\n .error=${error}\n .errorMessage=${errorMessage}\n @nile-input=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n ></nile-textarea>`;\n }\n\n renderNileCheckBox(Input: switchInputType, inputType: string) {\n const { value, label, disabled, inputType: inputTypeName } = Input;\n\n return html`<nile-checkbox\n .checked=${value}\n .label=${label}\n .disabled=${disabled}\n @valueChange=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n ></nile-checkbox\n >; `;\n }\n\n renderNileRadio(Input: switchInputType, inputType: string) {\n const {\n options,\n value,\n disabled,\n inputType: inputTypeName,\n errorMessage,\n } = Input;\n\n const haserrorMessage = !!errorMessage;\n\n return html`<nile-radio-group\n .value=${value}\n .disabled=${disabled}\n @change=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n >\n ${options &&\n options.map((option: any) => {\n return html`<nile-radio .value=\"${option}\">${option} </nile-radio>`;\n })}\n </nile-radio-group>\n ${haserrorMessage ? this.renderErrorMessage(errorMessage) : ''}`;\n }\n\n renderErrorMessage(errorMessage: string) {\n return html`\n <nile-form-error-message>${errorMessage}</nile-form-error-message>\n `;\n }\n\n renderContentEditor(Input: switchInputType, inputType: string) {\n let {\n options,\n inputType: inputTypeName,\n errorMessage,\n type,\n readonly,\n noborder,\n } = Input;\n return html`<nile-content-editor\n .value=${this.value}\n .options=${options}\n .type=${type}\n .readonly=${readonly}\n .noborder=${noborder}\n .errorMessage=${errorMessage}\n @nile-change=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n >\n </nile-content-editor>`;\n }\n\n handleChange(event: CustomEvent, inputType: string, inputTypeName: string) {\n if (inputTypeName === INPUT_TYPE_NAMES.CHECKBOX) {\n this.nileSwitchConfig[inputType as keyof switchconfig].value =\n event.detail.checked;\n } else {\n this.nileSwitchConfig[inputType as keyof switchconfig].value =\n event.detail.value;\n }\n event.stopPropagation();\n this.emit('nile-change', { config: this.nileSwitchConfig });\n }\n\n renderIcon(defaultInput: switchInputType, switchInput: switchInputType) {\n const defaultHelperText = defaultInput.helperText;\n const switchHelperText = switchInput.helperText;\n\n const icon = !this.nileSwitchConfig.toggleSwitch\n ? 'header-functions'\n : 'stringinput';\n\n const helperText = !this.nileSwitchConfig.toggleSwitch\n ? !!switchHelperText\n ? switchHelperText\n : `switch to ${switchInput.inputType}`\n : !!defaultHelperText\n ? defaultHelperText\n : `switch to ${defaultInput.inputType}`;\n\n return html` <nile-tooltip\n class=${classMap({\n 'tooltip-container': true,\n })}\n content=${helperText}\n placement=\"bottom\"\n >\n <nile-icon\n size=\"14\"\n class=${classMap({\n 'pointer-cursor': true,\n })}\n .name=${icon}\n color=\"#005EA6\"\n @click=${this.toggleField}\n ></nile-icon>\n </nile-tooltip>`;\n }\n\n toggleField() {\n if (!this.nileSwitchConfig.confirmation) {\n this.nileSwitchConfig = {\n ...this.nileSwitchConfig,\n toggleSwitch: !this.nileSwitchConfig.toggleSwitch,\n };\n }\n this.emit('nile-switch', { config: this.nileSwitchConfig });\n }\n\n singleFieldSwitcher(\n defaultInput: switchInputType,\n switchInput: switchInputType,\n toggleField: boolean,\n disable: boolean\n ) {\n const defaultInputType = defaultInput.inputType;\n const switchInputType = switchInput.inputType;\n return html`\n ${!toggleField\n ? choose(\n defaultInputType,\n [\n [\n INPUT_TYPE_NAMES.TEXT,\n () => this.renderNileText(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.CHECKBOX,\n () => this.renderNileCheckBox(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.TEXTAREA,\n () => this.renderNileTextArea(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.RADIO,\n () => this.renderNileRadio(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.DROPDOWN,\n () =>\n this.renderDropdown(\n this.nileSwitchConfig.defaultInput,\n INPUT_TYPE.DEFAULT\n ),\n ],\n [\n INPUT_TYPE_NAMES.CONTENTEDITOR,\n () =>\n this.renderContentEditor(\n this.nileSwitchConfig.defaultInput,\n INPUT_TYPE.DEFAULT\n ),\n ],\n ],\n () => this.renderNileText(defaultInput, INPUT_TYPE.DEFAULT)\n )\n : choose(\n switchInputType,\n [\n [\n INPUT_TYPE_NAMES.TEXTAREA,\n () => this.renderNileTextArea(switchInput, INPUT_TYPE.SWITCH),\n ],\n [\n INPUT_TYPE_NAMES.TEXT,\n () => this.renderNileText(switchInput, INPUT_TYPE.SWITCH),\n ],\n [\n INPUT_TYPE_NAMES.CONTENTEDITOR,\n () => this.renderContentEditor(switchInput, INPUT_TYPE.SWITCH),\n ],\n ],\n\n () => this.renderNileTextArea(switchInput, INPUT_TYPE.SWITCH)\n )}\n ${!disable ? this.renderIcon(defaultInput, switchInput) : ''}\n `;\n }\n public render(): TemplateResult {\n const {\n toggleSwitch: toggleField,\n defaultInput,\n switchInput,\n disable,\n } = this.nileSwitchConfig;\n\n return html`<div class=\"input-container\">\n ${this.singleFieldSwitcher(\n defaultInput,\n switchInput,\n toggleField,\n !!disable\n )}\n </div>`;\n }\n}\n\nexport default NileSwitcher;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-switcher': NileSwitcher;\n }\n}\n"]}
1
+ {"version":3,"file":"nile-switcher.js","sourceRoot":"","sources":["../../../src/nile-switcher/nile-switcher.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, property, TemplateResult } from 'lit-element';\nimport { customElement } from 'lit/decorators.js';\nimport { styles } from './nile-switcher.css';\nimport NileElement from '../internal/nile-element';\nimport { CSSResultGroup } from 'lit';\nimport { choose } from 'lit/directives/choose.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\n/**\n * @summary Allows you to switch between nile elements\n\n * @dependency nile-icon\n * @dependency nile-input\n * @dependency nile-checkbox\n * @dependency nile-dropdown\n * @dependency nile-textarea\n *\n \n * @event nile-change - Emitted when the control's value changes.\n * @event nile-switch - Emitted when the nile component is being switched.\n \n */\n\nexport interface switchconfig {\n [key: string]: any;\n toggleSwitch: boolean;\n disable?: boolean;\n confirmation?: boolean;\n defaultInput: switchInputType;\n switchInput: switchInputType;\n}\n\nexport interface switchInputType {\n inputType:\n | INPUT_TYPE_NAMES.DROPDOWN\n | INPUT_TYPE_NAMES.TEXT\n | INPUT_TYPE_NAMES.CHECKBOX\n | INPUT_TYPE_NAMES.TEXTAREA\n | INPUT_TYPE_NAMES.RADIO\n | INPUT_TYPE_NAMES.CONTENTEDITOR;\n value?: String | boolean;\n label?: String;\n readonly?: boolean;\n type?: string;\n placeholder?: string;\n disabled?: boolean;\n required?: boolean;\n error?: boolean;\n errorMessage?: string;\n options?: Array<any>;\n helperText?: string;\n multiple?: boolean;\n noborder?: boolean;\n}\n\nexport enum INPUT_TYPE {\n DEFAULT = 'defaultInput',\n SWITCH = 'switchInput',\n}\n\nexport enum INPUT_TYPE_NAMES {\n DROPDOWN = 'dropdown',\n TEXT = 'text',\n CHECKBOX = 'checkbox',\n TEXTAREA = 'text-area',\n RADIO = 'radio',\n CONTENTEDITOR = 'content-editor',\n}\n\n@customElement('nile-switcher')\nexport class NileSwitcher extends NileElement {\n /**\n * The styles for nile switcher\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n static styles: CSSResultGroup = styles;\n @property({ type: Object }) nileSwitchConfig: switchconfig;\n\n connectedCallback() {\n super.connectedCallback();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n\n renderNileText(Input: switchInputType, inputType: string) {\n const {\n value,\n label,\n placeholder,\n disabled,\n required,\n error,\n errorMessage,\n inputType: inputTypeName,\n } = Input;\n return html`<nile-input\n .value=${value}\n .label=${label}\n .disabled=${disabled}\n .required=${required}\n .errorMessage=${errorMessage}\n .placeholder=${placeholder}\n .error=${error}\n @nile-input=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n ></nile-input>`;\n }\n\n renderDropdown(Input: switchInputType, inputType: string) {\n const {\n options,\n multiple,\n placeholder,\n disabled,\n value,\n error,\n errorMessage,\n inputType: inputTypeName,\n } = Input;\n\n return html`<nile-select\n .placeholder=${placeholder}\n .disabled=\"${disabled}\"\n .multiple=\"${multiple}\"\n .value=\"${value}\"\n .error=\"${error}\"\n .errorMessage=\"${errorMessage}\"\n @nile-change=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n >\n ${options?.map((option: any) => {\n return html`<nile-option .value=\"${option}\">${option} </nile-option>`;\n })}\n </nile-select>`;\n }\n\n renderNileTextArea(Input: switchInputType, inputType: string) {\n const {\n value,\n disabled,\n readonly,\n errorMessage,\n error,\n inputType: inputTypeName,\n } = Input;\n\n return html`<nile-textarea\n .value=${value}\n .disabled=${disabled}\n ?readonly=${readonly}\n .error=${error}\n .errorMessage=${errorMessage}\n @nile-input=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n ></nile-textarea>`;\n }\n\n renderNileCheckBox(Input: switchInputType, inputType: string) {\n const { value, label, disabled, inputType: inputTypeName } = Input;\n\n return html`<nile-checkbox\n .checked=${value}\n .label=${label}\n .disabled=${disabled}\n @valueChange=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n ></nile-checkbox\n >; `;\n }\n\n renderNileRadio(Input: switchInputType, inputType: string) {\n const {\n options,\n value,\n disabled,\n inputType: inputTypeName,\n errorMessage,\n } = Input;\n\n const haserrorMessage = !!errorMessage;\n\n return html`<nile-radio-group\n .value=${value}\n .disabled=${disabled}\n @change=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n >\n ${options &&\n options.map((option: any) => {\n return html`<nile-radio .value=\"${option}\">${option} </nile-radio>`;\n })}\n ${haserrorMessage ? this.renderErrorMessage(errorMessage) : ''}\n </nile-radio-group> `;\n }\n\n renderErrorMessage(errorMessage: string) {\n return html`\n <nile-form-error-message>${errorMessage}</nile-form-error-message>\n `;\n }\n\n renderContentEditor(Input: switchInputType, inputType: string) {\n let {\n options,\n inputType: inputTypeName,\n errorMessage,\n type,\n readonly,\n noborder,\n value,\n } = Input;\n return html`<nile-content-editor\n .value=${value}\n .options=${options}\n .type=${type}\n .readonly=${readonly}\n .noborder=${noborder}\n .errorMessage=${errorMessage}\n @nile-change=${(e: CustomEvent) => {\n this.handleChange(e, inputType, inputTypeName);\n }}\n >\n </nile-content-editor>`;\n }\n\n handleChange(event: CustomEvent, inputType: string, inputTypeName: string) {\n if (inputTypeName === INPUT_TYPE_NAMES.CHECKBOX) {\n this.nileSwitchConfig[inputType as keyof switchconfig].value =\n event.detail.checked;\n } else {\n this.nileSwitchConfig[inputType as keyof switchconfig].value =\n event.detail.value;\n }\n event.stopPropagation();\n this.emit('nile-change', { config: this.nileSwitchConfig });\n }\n\n renderIcon(defaultInput: switchInputType, switchInput: switchInputType) {\n const defaultHelperText = defaultInput.helperText;\n const switchHelperText = switchInput.helperText;\n\n const icon = !this.nileSwitchConfig.toggleSwitch\n ? 'header-functions'\n : 'stringinput';\n\n const helperText = !this.nileSwitchConfig.toggleSwitch\n ? !!switchHelperText\n ? switchHelperText\n : `switch to ${switchInput.inputType}`\n : !!defaultHelperText\n ? defaultHelperText\n : `switch to ${defaultInput.inputType}`;\n\n return html` <nile-tooltip\n class=${classMap({\n 'tooltip-container': true,\n })}\n content=${helperText}\n placement=\"bottom\"\n >\n <nile-icon\n size=\"14\"\n class=${classMap({\n 'pointer-cursor': true,\n })}\n .name=${icon}\n color=\"#005EA6\"\n @click=${this.toggleField}\n ></nile-icon>\n </nile-tooltip>`;\n }\n\n toggleField() {\n if (!this.nileSwitchConfig.confirmation) {\n this.nileSwitchConfig = {\n ...this.nileSwitchConfig,\n toggleSwitch: !this.nileSwitchConfig.toggleSwitch,\n };\n }\n this.emit('nile-switch', { config: this.nileSwitchConfig });\n }\n\n singleFieldSwitcher(\n defaultInput: switchInputType,\n switchInput: switchInputType,\n toggleField: boolean,\n disable: boolean\n ) {\n const defaultInputType = defaultInput.inputType;\n const switchInputType = switchInput.inputType;\n return html`\n ${!toggleField\n ? choose(\n defaultInputType,\n [\n [\n INPUT_TYPE_NAMES.TEXT,\n () => this.renderNileText(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.CHECKBOX,\n () => this.renderNileCheckBox(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.TEXTAREA,\n () => this.renderNileTextArea(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.RADIO,\n () => this.renderNileRadio(defaultInput, INPUT_TYPE.DEFAULT),\n ],\n [\n INPUT_TYPE_NAMES.DROPDOWN,\n () =>\n this.renderDropdown(\n this.nileSwitchConfig.defaultInput,\n INPUT_TYPE.DEFAULT\n ),\n ],\n [\n INPUT_TYPE_NAMES.CONTENTEDITOR,\n () =>\n this.renderContentEditor(\n this.nileSwitchConfig.defaultInput,\n INPUT_TYPE.DEFAULT\n ),\n ],\n ],\n () => this.renderNileText(defaultInput, INPUT_TYPE.DEFAULT)\n )\n : choose(\n switchInputType,\n [\n [\n INPUT_TYPE_NAMES.TEXTAREA,\n () => this.renderNileTextArea(switchInput, INPUT_TYPE.SWITCH),\n ],\n [\n INPUT_TYPE_NAMES.TEXT,\n () => this.renderNileText(switchInput, INPUT_TYPE.SWITCH),\n ],\n [\n INPUT_TYPE_NAMES.CONTENTEDITOR,\n () => this.renderContentEditor(switchInput, INPUT_TYPE.SWITCH),\n ],\n ],\n\n () => this.renderNileTextArea(switchInput, INPUT_TYPE.SWITCH)\n )}\n ${!disable ? this.renderIcon(defaultInput, switchInput) : ''}\n `;\n }\n public render(): TemplateResult {\n const {\n toggleSwitch: toggleField,\n defaultInput,\n switchInput,\n disable,\n } = this.nileSwitchConfig;\n\n return html`<div class=\"input-container\">\n ${this.singleFieldSwitcher(\n defaultInput,\n switchInput,\n toggleField,\n !!disable\n )}\n </div>`;\n }\n}\n\nexport default NileSwitcher;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-switcher': NileSwitcher;\n }\n}\n"]}