@siemens/ix 2.1.1 → 2.1.2-beta.0
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.
- package/components/dropdown.js +5 -3
- package/components/dropdown.js.map +1 -1
- package/components/ix-modal-footer.js +1 -1
- package/components/ix-modal-footer.js.map +1 -1
- package/components/ix-modal.js +1 -1
- package/components/ix-modal.js.map +1 -1
- package/components/modal-content.js +1 -1
- package/components/modal-content.js.map +1 -1
- package/components/modal-header.js +1 -1
- package/components/modal-header.js.map +1 -1
- package/dist/cjs/ix-dropdown.cjs.entry.js +5 -3
- package/dist/cjs/ix-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-modal-content_2.cjs.entry.js +2 -2
- package/dist/cjs/ix-modal-content_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-modal-footer.cjs.entry.js +1 -1
- package/dist/cjs/ix-modal-footer.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-modal.cjs.entry.js +1 -1
- package/dist/cjs/ix-modal.cjs.entry.js.map +1 -1
- package/dist/collection/components/dropdown/dropdown.js +5 -3
- package/dist/collection/components/dropdown/dropdown.js.map +1 -1
- package/dist/collection/components/modal/modal.css +5 -4
- package/dist/collection/components/modal-content/modal-content.css +1 -1
- package/dist/collection/components/modal-footer/modal-footer.css +1 -2
- package/dist/collection/components/modal-header/modal-header.css +2 -2
- package/dist/esm/ix-dropdown.entry.js +5 -3
- package/dist/esm/ix-dropdown.entry.js.map +1 -1
- package/dist/esm/ix-modal-content_2.entry.js +2 -2
- package/dist/esm/ix-modal-content_2.entry.js.map +1 -1
- package/dist/esm/ix-modal-footer.entry.js +1 -1
- package/dist/esm/ix-modal-footer.entry.js.map +1 -1
- package/dist/esm/ix-modal.entry.js +1 -1
- package/dist/esm/ix-modal.entry.js.map +1 -1
- package/dist/siemens-ix/p-04ba3c79.entry.js +2 -0
- package/dist/siemens-ix/p-04ba3c79.entry.js.map +1 -0
- package/dist/siemens-ix/p-16d529ee.entry.js +2 -0
- package/dist/siemens-ix/p-16d529ee.entry.js.map +1 -0
- package/dist/siemens-ix/{p-1aa9c005.entry.js → p-4ca6beed.entry.js} +2 -2
- package/dist/siemens-ix/{p-1aa9c005.entry.js.map → p-4ca6beed.entry.js.map} +1 -1
- package/dist/siemens-ix/p-c98d8ec2.entry.js +2 -0
- package/dist/siemens-ix/p-c98d8ec2.entry.js.map +1 -0
- package/dist/siemens-ix/siemens-ix.esm.js +1 -1
- package/package.json +1 -1
- package/dist/siemens-ix/p-5dd97d39.entry.js +0 -2
- package/dist/siemens-ix/p-5dd97d39.entry.js.map +0 -1
- package/dist/siemens-ix/p-b4e3a4fd.entry.js +0 -2
- package/dist/siemens-ix/p-b4e3a4fd.entry.js.map +0 -1
- package/dist/siemens-ix/p-d6e7e5da.entry.js +0 -2
- package/dist/siemens-ix/p-d6e7e5da.entry.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"ix-modal.entry.js","mappings":"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","names":[],"sources":["src/components/utils/waitForElement.ts","src/components/modal/modal.scss?tag=ix-modal&encapsulation=shadow","src/components/modal/modal.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nexport function waitForElement<R extends HTMLElement>(\n selector: string,\n doc: any,\n timeout = 3000\n): Promise<R> {\n return new Promise<R>((resolve, reject) => {\n const startTime = Date.now();\n\n const checkIfElementExist = () => {\n const dialog = doc.querySelector(selector) satisfies R;\n\n if (dialog) {\n resolve(dialog);\n } else {\n if (Date.now() - startTime < timeout) {\n setTimeout(checkIfElementExist);\n } else {\n reject();\n }\n }\n };\n\n checkIfElementExist();\n });\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n::backdrop {\n --ix-dialog-backdrop: var(--theme-color-lightbox, #0000008c);\n}\n\n:focus-visible {\n outline: none !important;\n}\n\n:host {\n display: none;\n\n dialog {\n margin: 0;\n left: 50%;\n }\n\n dialog::backdrop {\n backdrop-filter: blur(2.7182817459106445px);\n }\n\n .modal {\n display: flex;\n flex-direction: column;\n position: relative;\n border: none;\n border-radius: var(--theme-default-border-radius);\n background: var(--theme-modal--background);\n box-shadow: var(--theme-shadow-4);\n color: var(--theme-color-std-text);\n overflow: visible;\n max-height: 80vh;\n pointer-events: all;\n }\n\n .modal-size-360 {\n width: 22.5rem;\n }\n\n .modal-size-480 {\n width: 30rem;\n }\n\n .modal-size-600 {\n width: 37.5rem;\n }\n\n .modal-size-720 {\n width: 45rem;\n }\n\n .modal-size-840 {\n width: 52.5rem;\n }\n\n .modal-size-full-width {\n width: 95%;\n }\n\n .modal-size-full-screen {\n left: 0px !important;\n top: 0px !important;\n transform: none !important;\n\n width: calc(100% - 28px);\n min-width: calc(100% - 28px);\n max-width: calc(100% - 28px);\n\n height: calc(100% - 28px);\n min-height: calc(100% - 28px);\n max-height: calc(100% - 28px);\n }\n\n .dialog-backdrop {\n display: block;\n position: fixed;\n width: 100vw;\n height: 100vh;\n top: 0px;\n left: 0px;\n\n pointer-events: none;\n }\n\n ::slotted(ix-modal-footer) {\n margin-top: auto;\n }\n}\n\n:host(.visible) {\n display: block;\n}\n\n:host(.align-center) {\n dialog {\n margin: 0;\n left: 50%;\n top: 50%;\n }\n}\n\n:host(.no-backdrop) {\n dialog::backdrop {\n background-color: transparent !important;\n backdrop-filter: none !important;\n }\n}\n\n:host(.with-icon) {\n ::slotted(ix-modal-footer),\n ::slotted(ix-modal-content) {\n margin-left: 2.5rem;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport anime from 'animejs';\nimport { A11yAttributes, a11yBoolean, a11yHostAttributes } from '../utils/a11y';\nimport Animation from '../utils/animation';\nimport { OnListener } from '../utils/listener';\nimport { waitForElement } from '../utils/waitForElement';\n\nexport type IxModalFixedSize = '360' | '480' | '600' | '720' | '840';\nexport type IxModalDynamicSize = 'full-width' | 'full-screen';\nexport type IxModalSize = IxModalFixedSize | IxModalDynamicSize;\n\n@Component({\n tag: 'ix-modal',\n styleUrl: 'modal.scss',\n shadow: true,\n})\nexport class Modal {\n private ariaAttributes: A11yAttributes = {};\n\n @Element() hostElement!: HTMLIxModalElement;\n\n /**\n * Modal size\n *\n * @since 2.0.0\n */\n @Prop() size: IxModalSize = '360';\n\n /**\n * Should the modal be animated\n */\n @Prop() animation = true;\n\n /**\n * Show a backdrop behind the modal dialog\n */\n @Prop() backdrop = true;\n\n /**\n * Dismiss modal on backdrop click\n *\n * @since 2.0.0\n */\n @Prop() closeOnBackdropClick = false;\n\n /**\n * Is called before the modal is dismissed.\n *\n * - Return `true` to proceed in dismissing the modal\n * - Return `false` to abort in dismissing the modal\n */\n @Prop() beforeDismiss: (reason?: any) => boolean | Promise<boolean>;\n\n /**\n * Centered modal\n */\n @Prop() centered = false;\n\n /**\n * Use ESC to dismiss the modal\n * @deprecated - Use closeOnEscape instead\n */\n @Prop() keyboard = true;\n\n /**\n * If set to true the modal can be closed by pressing the Escape key\n */\n @Prop() closeOnEscape = true;\n\n /**\n * Dialog close\n */\n @Event() dialogClose: EventEmitter;\n\n /**\n * Dialog cancel\n */\n @Event() dialogDismiss: EventEmitter;\n\n @State() modalVisible = false;\n\n @OnListener<Modal>('keydown', (self) => !self.closeOnEscape || !self.keyboard)\n onKey(e: KeyboardEvent) {\n if (e.key === 'Escape') {\n e.preventDefault();\n }\n }\n\n get dialog() {\n return this.hostElement.shadowRoot.querySelector('dialog');\n }\n\n private slideInModal() {\n const duration = this.animation ? Animation.mediumTime : 0;\n\n let transformY = this.centered ? '-50%' : 40;\n\n anime({\n targets: this.dialog,\n duration,\n opacity: [0, 1],\n translateY: [0, transformY],\n translateX: ['-50%', '-50%'],\n easing: 'easeOutSine',\n });\n }\n\n private slideOutModal(completeCallback: Function) {\n const duration = this.animation ? Animation.mediumTime : 0;\n\n let transformY = this.centered ? '-50%' : 40;\n\n anime({\n targets: this.dialog,\n duration,\n opacity: [1, 0],\n translateY: [transformY, 0],\n translateX: ['-50%', '-50%'],\n easing: 'easeInSine',\n complete: () => {\n if (completeCallback) {\n completeCallback();\n }\n },\n });\n }\n\n private onModalClick(event: MouseEvent) {\n if (event.target !== this.dialog) {\n return;\n }\n\n const rect = this.dialog.getBoundingClientRect();\n const isClickOutside =\n rect.top <= event.clientY &&\n event.clientY <= rect.top + rect.height &&\n rect.left <= event.clientX &&\n event.clientX <= rect.left + rect.width;\n\n if (!isClickOutside && this.closeOnBackdropClick) {\n this.dismissModal();\n }\n }\n\n /**\n * Show the dialog\n */\n @Method()\n async showModal() {\n try {\n const dialog = await waitForElement<HTMLDialogElement>(\n 'dialog',\n this.hostElement.shadowRoot\n );\n this.modalVisible = true;\n dialog.showModal();\n } catch (e) {\n console.error('HTMLDialogElement not existing');\n }\n }\n\n /**\n * Dismiss the dialog\n */\n @Method()\n async dismissModal<T = any>(reason?: T) {\n let allowDismiss = true;\n\n if (this.beforeDismiss !== undefined) {\n allowDismiss = await this.beforeDismiss(reason);\n }\n if (!allowDismiss) {\n return;\n }\n\n this.slideOutModal(() => {\n this.modalVisible = false;\n this.dialog.close(\n JSON.stringify(\n {\n type: 'dismiss',\n reason,\n },\n null,\n 2\n )\n );\n\n this.dialogDismiss.emit(reason);\n });\n }\n\n /**\n * Close the dialog\n */\n @Method()\n async closeModal<T = any>(reason: T) {\n this.slideOutModal(() => {\n this.dialog.close(\n JSON.stringify(\n {\n type: 'close',\n reason,\n },\n null,\n 2\n )\n );\n\n this.dialogClose.emit(reason);\n });\n }\n\n componentDidLoad() {\n this.slideInModal();\n }\n\n componentWillLoad() {\n this.ariaAttributes = a11yHostAttributes(this.hostElement);\n }\n\n render() {\n return (\n <Host\n class={{\n visible: this.modalVisible,\n 'no-backdrop': this.backdrop === false,\n 'align-center': this.centered,\n }}\n >\n <div class=\"dialog-backdrop\">\n <dialog\n aria-modal={a11yBoolean(true)}\n aria-describedby={this.ariaAttributes['aria-describedby']}\n aria-labelledby={this.ariaAttributes['aria-labelledby']}\n class={{\n modal: true,\n [`modal-size-${this.size}`]: true,\n }}\n onClose={() => this.dismissModal()}\n onClick={(event) => this.onModalClick(event)}\n onCancel={(e) => {\n e.preventDefault();\n this.dismissModal();\n }}\n >\n <slot></slot>\n </dialog>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"ix-modal.entry.js","mappings":"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","names":[],"sources":["src/components/utils/waitForElement.ts","src/components/modal/modal.scss?tag=ix-modal&encapsulation=shadow","src/components/modal/modal.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nexport function waitForElement<R extends HTMLElement>(\n selector: string,\n doc: any,\n timeout = 3000\n): Promise<R> {\n return new Promise<R>((resolve, reject) => {\n const startTime = Date.now();\n\n const checkIfElementExist = () => {\n const dialog = doc.querySelector(selector) satisfies R;\n\n if (dialog) {\n resolve(dialog);\n } else {\n if (Date.now() - startTime < timeout) {\n setTimeout(checkIfElementExist);\n } else {\n reject();\n }\n }\n };\n\n checkIfElementExist();\n });\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n::backdrop {\n --ix-dialog-backdrop: var(--theme-color-lightbox, #0000008c);\n}\n\n:focus-visible {\n outline: none !important;\n}\n\n:host {\n display: none;\n\n dialog {\n margin: 0;\n padding: 1rem;\n left: 50%;\n }\n\n dialog::backdrop {\n backdrop-filter: blur(2.7182817459106445px);\n }\n\n .modal {\n display: flex;\n flex-direction: column;\n position: relative;\n border: none;\n border-radius: var(--theme-default-border-radius);\n background: var(--theme-modal--background);\n box-shadow: var(--theme-shadow-4);\n color: var(--theme-color-std-text);\n overflow: visible;\n max-height: 80vh;\n pointer-events: all;\n }\n\n .modal-size-360 {\n width: 22.5rem;\n }\n\n .modal-size-480 {\n width: 30rem;\n }\n\n .modal-size-600 {\n width: 37.5rem;\n }\n\n .modal-size-720 {\n width: 45rem;\n }\n\n .modal-size-840 {\n width: 52.5rem;\n }\n\n .modal-size-full-width {\n width: 95%;\n }\n\n .modal-size-full-screen {\n left: 0 !important;\n top: 0 !important;\n transform: none !important;\n\n width: calc(100% - 28px);\n min-width: calc(100% - 28px);\n max-width: calc(100% - 28px);\n\n height: calc(100% - 28px);\n min-height: calc(100% - 28px);\n max-height: calc(100% - 28px);\n }\n\n .dialog-backdrop {\n display: block;\n position: fixed;\n width: 100vw;\n height: 100vh;\n top: 0;\n left: 0;\n\n pointer-events: none;\n }\n\n ::slotted(ix-modal-footer) {\n margin-top: auto;\n }\n}\n\n:host(.visible) {\n display: block;\n}\n\n:host(.align-center) {\n dialog {\n margin: 0;\n left: 50%;\n top: 50%;\n }\n}\n\n:host(.no-backdrop) {\n dialog::backdrop {\n background-color: transparent !important;\n backdrop-filter: none !important;\n }\n}\n\n:host(.with-icon) {\n ::slotted(ix-modal-footer),\n ::slotted(ix-modal-content) {\n margin-left: 2.5rem;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport anime from 'animejs';\nimport { A11yAttributes, a11yBoolean, a11yHostAttributes } from '../utils/a11y';\nimport Animation from '../utils/animation';\nimport { OnListener } from '../utils/listener';\nimport { waitForElement } from '../utils/waitForElement';\n\nexport type IxModalFixedSize = '360' | '480' | '600' | '720' | '840';\nexport type IxModalDynamicSize = 'full-width' | 'full-screen';\nexport type IxModalSize = IxModalFixedSize | IxModalDynamicSize;\n\n@Component({\n tag: 'ix-modal',\n styleUrl: 'modal.scss',\n shadow: true,\n})\nexport class Modal {\n private ariaAttributes: A11yAttributes = {};\n\n @Element() hostElement!: HTMLIxModalElement;\n\n /**\n * Modal size\n *\n * @since 2.0.0\n */\n @Prop() size: IxModalSize = '360';\n\n /**\n * Should the modal be animated\n */\n @Prop() animation = true;\n\n /**\n * Show a backdrop behind the modal dialog\n */\n @Prop() backdrop = true;\n\n /**\n * Dismiss modal on backdrop click\n *\n * @since 2.0.0\n */\n @Prop() closeOnBackdropClick = false;\n\n /**\n * Is called before the modal is dismissed.\n *\n * - Return `true` to proceed in dismissing the modal\n * - Return `false` to abort in dismissing the modal\n */\n @Prop() beforeDismiss: (reason?: any) => boolean | Promise<boolean>;\n\n /**\n * Centered modal\n */\n @Prop() centered = false;\n\n /**\n * Use ESC to dismiss the modal\n * @deprecated - Use closeOnEscape instead\n */\n @Prop() keyboard = true;\n\n /**\n * If set to true the modal can be closed by pressing the Escape key\n */\n @Prop() closeOnEscape = true;\n\n /**\n * Dialog close\n */\n @Event() dialogClose: EventEmitter;\n\n /**\n * Dialog cancel\n */\n @Event() dialogDismiss: EventEmitter;\n\n @State() modalVisible = false;\n\n @OnListener<Modal>('keydown', (self) => !self.closeOnEscape || !self.keyboard)\n onKey(e: KeyboardEvent) {\n if (e.key === 'Escape') {\n e.preventDefault();\n }\n }\n\n get dialog() {\n return this.hostElement.shadowRoot.querySelector('dialog');\n }\n\n private slideInModal() {\n const duration = this.animation ? Animation.mediumTime : 0;\n\n let transformY = this.centered ? '-50%' : 40;\n\n anime({\n targets: this.dialog,\n duration,\n opacity: [0, 1],\n translateY: [0, transformY],\n translateX: ['-50%', '-50%'],\n easing: 'easeOutSine',\n });\n }\n\n private slideOutModal(completeCallback: Function) {\n const duration = this.animation ? Animation.mediumTime : 0;\n\n let transformY = this.centered ? '-50%' : 40;\n\n anime({\n targets: this.dialog,\n duration,\n opacity: [1, 0],\n translateY: [transformY, 0],\n translateX: ['-50%', '-50%'],\n easing: 'easeInSine',\n complete: () => {\n if (completeCallback) {\n completeCallback();\n }\n },\n });\n }\n\n private onModalClick(event: MouseEvent) {\n if (event.target !== this.dialog) {\n return;\n }\n\n const rect = this.dialog.getBoundingClientRect();\n const isClickOutside =\n rect.top <= event.clientY &&\n event.clientY <= rect.top + rect.height &&\n rect.left <= event.clientX &&\n event.clientX <= rect.left + rect.width;\n\n if (!isClickOutside && this.closeOnBackdropClick) {\n this.dismissModal();\n }\n }\n\n /**\n * Show the dialog\n */\n @Method()\n async showModal() {\n try {\n const dialog = await waitForElement<HTMLDialogElement>(\n 'dialog',\n this.hostElement.shadowRoot\n );\n this.modalVisible = true;\n dialog.showModal();\n } catch (e) {\n console.error('HTMLDialogElement not existing');\n }\n }\n\n /**\n * Dismiss the dialog\n */\n @Method()\n async dismissModal<T = any>(reason?: T) {\n let allowDismiss = true;\n\n if (this.beforeDismiss !== undefined) {\n allowDismiss = await this.beforeDismiss(reason);\n }\n if (!allowDismiss) {\n return;\n }\n\n this.slideOutModal(() => {\n this.modalVisible = false;\n this.dialog.close(\n JSON.stringify(\n {\n type: 'dismiss',\n reason,\n },\n null,\n 2\n )\n );\n\n this.dialogDismiss.emit(reason);\n });\n }\n\n /**\n * Close the dialog\n */\n @Method()\n async closeModal<T = any>(reason: T) {\n this.slideOutModal(() => {\n this.dialog.close(\n JSON.stringify(\n {\n type: 'close',\n reason,\n },\n null,\n 2\n )\n );\n\n this.dialogClose.emit(reason);\n });\n }\n\n componentDidLoad() {\n this.slideInModal();\n }\n\n componentWillLoad() {\n this.ariaAttributes = a11yHostAttributes(this.hostElement);\n }\n\n render() {\n return (\n <Host\n class={{\n visible: this.modalVisible,\n 'no-backdrop': this.backdrop === false,\n 'align-center': this.centered,\n }}\n >\n <div class=\"dialog-backdrop\">\n <dialog\n aria-modal={a11yBoolean(true)}\n aria-describedby={this.ariaAttributes['aria-describedby']}\n aria-labelledby={this.ariaAttributes['aria-labelledby']}\n class={{\n modal: true,\n [`modal-size-${this.size}`]: true,\n }}\n onClose={() => this.dismissModal()}\n onClick={(event) => this.onModalClick(event)}\n onCancel={(e) => {\n e.preventDefault();\n this.dismissModal();\n }}\n >\n <slot></slot>\n </dialog>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,c as e,h as i,H as o,g as s}from"./p-ea80cb61.js";import{a}from"./p-810b5232.js";import{b as l,a as r}from"./p-4f8ac3bf.js";import{A as n}from"./p-46a6cd9d.js";import{O as d}from"./p-6e5beede.js";function h(t,e,i=3e3){return new Promise(((o,s)=>{const a=Date.now();const l=()=>{const r=e.querySelector(t);if(r){o(r)}else{if(Date.now()-a<i){setTimeout(l)}else{s()}}};l()}))}const c="::backdrop{--ix-dialog-backdrop:var(--theme-color-lightbox, #0000008c)}:focus-visible{outline:none !important}:host{display:none}:host dialog{margin:0;padding:1rem;left:50%}:host dialog::backdrop{-webkit-backdrop-filter:blur(2.7182817459px);backdrop-filter:blur(2.7182817459px)}:host .modal{display:flex;flex-direction:column;position:relative;border:none;border-radius:var(--theme-default-border-radius);background:var(--theme-modal--background);box-shadow:var(--theme-shadow-4);color:var(--theme-color-std-text);overflow:visible;max-height:80vh;pointer-events:all}:host .modal-size-360{width:22.5rem}:host .modal-size-480{width:30rem}:host .modal-size-600{width:37.5rem}:host .modal-size-720{width:45rem}:host .modal-size-840{width:52.5rem}:host .modal-size-full-width{width:95%}:host .modal-size-full-screen{left:0 !important;top:0 !important;transform:none !important;width:calc(100% - 28px);min-width:calc(100% - 28px);max-width:calc(100% - 28px);height:calc(100% - 28px);min-height:calc(100% - 28px);max-height:calc(100% - 28px)}:host .dialog-backdrop{display:block;position:fixed;width:100vw;height:100vh;top:0;left:0;pointer-events:none}:host ::slotted(ix-modal-footer){margin-top:auto}:host(.visible){display:block}:host(.align-center) dialog{margin:0;left:50%;top:50%}:host(.no-backdrop) dialog::backdrop{background-color:transparent !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important}:host(.with-icon) ::slotted(ix-modal-footer),:host(.with-icon) ::slotted(ix-modal-content){margin-left:2.5rem}";const f=c;var m=undefined&&undefined.__decorate||function(t,e,i,o){var s=arguments.length,a=s<3?e:o===null?o=Object.getOwnPropertyDescriptor(e,i):o,l;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")a=Reflect.decorate(t,e,i,o);else for(var r=t.length-1;r>=0;r--)if(l=t[r])a=(s<3?l(a):s>3?l(e,i,a):l(e,i))||a;return s>3&&a&&Object.defineProperty(e,i,a),a};const p=class{constructor(i){t(this,i);this.dialogClose=e(this,"dialogClose",7);this.dialogDismiss=e(this,"dialogDismiss",7);this.ariaAttributes={};this.size="360";this.animation=true;this.backdrop=true;this.closeOnBackdropClick=false;this.beforeDismiss=undefined;this.centered=false;this.keyboard=true;this.closeOnEscape=true;this.modalVisible=false}onKey(t){if(t.key==="Escape"){t.preventDefault()}}get dialog(){return this.hostElement.shadowRoot.querySelector("dialog")}slideInModal(){const t=this.animation?n.mediumTime:0;let e=this.centered?"-50%":40;a({targets:this.dialog,duration:t,opacity:[0,1],translateY:[0,e],translateX:["-50%","-50%"],easing:"easeOutSine"})}slideOutModal(t){const e=this.animation?n.mediumTime:0;let i=this.centered?"-50%":40;a({targets:this.dialog,duration:e,opacity:[1,0],translateY:[i,0],translateX:["-50%","-50%"],easing:"easeInSine",complete:()=>{if(t){t()}}})}onModalClick(t){if(t.target!==this.dialog){return}const e=this.dialog.getBoundingClientRect();const i=e.top<=t.clientY&&t.clientY<=e.top+e.height&&e.left<=t.clientX&&t.clientX<=e.left+e.width;if(!i&&this.closeOnBackdropClick){this.dismissModal()}}async showModal(){try{const t=await h("dialog",this.hostElement.shadowRoot);this.modalVisible=true;t.showModal()}catch(t){console.error("HTMLDialogElement not existing")}}async dismissModal(t){let e=true;if(this.beforeDismiss!==undefined){e=await this.beforeDismiss(t)}if(!e){return}this.slideOutModal((()=>{this.modalVisible=false;this.dialog.close(JSON.stringify({type:"dismiss",reason:t},null,2));this.dialogDismiss.emit(t)}))}async closeModal(t){this.slideOutModal((()=>{this.dialog.close(JSON.stringify({type:"close",reason:t},null,2));this.dialogClose.emit(t)}))}componentDidLoad(){this.slideInModal()}componentWillLoad(){this.ariaAttributes=l(this.hostElement)}render(){return i(o,{key:"185b4d7fdc54c5657f7a1b11f08ff0e53114f633",class:{visible:this.modalVisible,"no-backdrop":this.backdrop===false,"align-center":this.centered}},i("div",{key:"455364c00c366ae949cbaab74a9d7c47c3c822f1",class:"dialog-backdrop"},i("dialog",{key:"6603b83c715d18aa0f7aa32524e82ff01453235d","aria-modal":r(true),"aria-describedby":this.ariaAttributes["aria-describedby"],"aria-labelledby":this.ariaAttributes["aria-labelledby"],class:{modal:true,[`modal-size-${this.size}`]:true},onClose:()=>this.dismissModal(),onClick:t=>this.onModalClick(t),onCancel:t=>{t.preventDefault();this.dismissModal()}},i("slot",{key:"b5d0d5a56fa225d229822c4c6a00376f2a73f03c"}))))}get hostElement(){return s(this)}};m([d("keydown",(t=>!t.closeOnEscape||!t.keyboard))],p.prototype,"onKey",null);p.style=f;export{p as ix_modal};
|
|
2
|
+
//# sourceMappingURL=p-04ba3c79.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["waitForElement","selector","doc","timeout","Promise","resolve","reject","startTime","Date","now","checkIfElementExist","dialog","querySelector","setTimeout","modalCss","IxModalStyle0","Modal","this","ariaAttributes","onKey","e","key","preventDefault","hostElement","shadowRoot","slideInModal","duration","animation","Animation","mediumTime","transformY","centered","anime","targets","opacity","translateY","translateX","easing","slideOutModal","completeCallback","complete","onModalClick","event","target","rect","getBoundingClientRect","isClickOutside","top","clientY","height","left","clientX","width","closeOnBackdropClick","dismissModal","showModal","modalVisible","console","error","reason","allowDismiss","beforeDismiss","undefined","close","JSON","stringify","type","dialogDismiss","emit","closeModal","dialogClose","componentDidLoad","componentWillLoad","a11yHostAttributes","render","h","Host","class","visible","backdrop","a11yBoolean","modal","size","onClose","onClick","onCancel","__decorate","OnListener","self","closeOnEscape","keyboard"],"sources":["src/components/utils/waitForElement.ts","src/components/modal/modal.scss?tag=ix-modal&encapsulation=shadow","src/components/modal/modal.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nexport function waitForElement<R extends HTMLElement>(\n selector: string,\n doc: any,\n timeout = 3000\n): Promise<R> {\n return new Promise<R>((resolve, reject) => {\n const startTime = Date.now();\n\n const checkIfElementExist = () => {\n const dialog = doc.querySelector(selector) satisfies R;\n\n if (dialog) {\n resolve(dialog);\n } else {\n if (Date.now() - startTime < timeout) {\n setTimeout(checkIfElementExist);\n } else {\n reject();\n }\n }\n };\n\n checkIfElementExist();\n });\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n::backdrop {\n --ix-dialog-backdrop: var(--theme-color-lightbox, #0000008c);\n}\n\n:focus-visible {\n outline: none !important;\n}\n\n:host {\n display: none;\n\n dialog {\n margin: 0;\n padding: 1rem;\n left: 50%;\n }\n\n dialog::backdrop {\n backdrop-filter: blur(2.7182817459106445px);\n }\n\n .modal {\n display: flex;\n flex-direction: column;\n position: relative;\n border: none;\n border-radius: var(--theme-default-border-radius);\n background: var(--theme-modal--background);\n box-shadow: var(--theme-shadow-4);\n color: var(--theme-color-std-text);\n overflow: visible;\n max-height: 80vh;\n pointer-events: all;\n }\n\n .modal-size-360 {\n width: 22.5rem;\n }\n\n .modal-size-480 {\n width: 30rem;\n }\n\n .modal-size-600 {\n width: 37.5rem;\n }\n\n .modal-size-720 {\n width: 45rem;\n }\n\n .modal-size-840 {\n width: 52.5rem;\n }\n\n .modal-size-full-width {\n width: 95%;\n }\n\n .modal-size-full-screen {\n left: 0 !important;\n top: 0 !important;\n transform: none !important;\n\n width: calc(100% - 28px);\n min-width: calc(100% - 28px);\n max-width: calc(100% - 28px);\n\n height: calc(100% - 28px);\n min-height: calc(100% - 28px);\n max-height: calc(100% - 28px);\n }\n\n .dialog-backdrop {\n display: block;\n position: fixed;\n width: 100vw;\n height: 100vh;\n top: 0;\n left: 0;\n\n pointer-events: none;\n }\n\n ::slotted(ix-modal-footer) {\n margin-top: auto;\n }\n}\n\n:host(.visible) {\n display: block;\n}\n\n:host(.align-center) {\n dialog {\n margin: 0;\n left: 50%;\n top: 50%;\n }\n}\n\n:host(.no-backdrop) {\n dialog::backdrop {\n background-color: transparent !important;\n backdrop-filter: none !important;\n }\n}\n\n:host(.with-icon) {\n ::slotted(ix-modal-footer),\n ::slotted(ix-modal-content) {\n margin-left: 2.5rem;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport anime from 'animejs';\nimport { A11yAttributes, a11yBoolean, a11yHostAttributes } from '../utils/a11y';\nimport Animation from '../utils/animation';\nimport { OnListener } from '../utils/listener';\nimport { waitForElement } from '../utils/waitForElement';\n\nexport type IxModalFixedSize = '360' | '480' | '600' | '720' | '840';\nexport type IxModalDynamicSize = 'full-width' | 'full-screen';\nexport type IxModalSize = IxModalFixedSize | IxModalDynamicSize;\n\n@Component({\n tag: 'ix-modal',\n styleUrl: 'modal.scss',\n shadow: true,\n})\nexport class Modal {\n private ariaAttributes: A11yAttributes = {};\n\n @Element() hostElement!: HTMLIxModalElement;\n\n /**\n * Modal size\n *\n * @since 2.0.0\n */\n @Prop() size: IxModalSize = '360';\n\n /**\n * Should the modal be animated\n */\n @Prop() animation = true;\n\n /**\n * Show a backdrop behind the modal dialog\n */\n @Prop() backdrop = true;\n\n /**\n * Dismiss modal on backdrop click\n *\n * @since 2.0.0\n */\n @Prop() closeOnBackdropClick = false;\n\n /**\n * Is called before the modal is dismissed.\n *\n * - Return `true` to proceed in dismissing the modal\n * - Return `false` to abort in dismissing the modal\n */\n @Prop() beforeDismiss: (reason?: any) => boolean | Promise<boolean>;\n\n /**\n * Centered modal\n */\n @Prop() centered = false;\n\n /**\n * Use ESC to dismiss the modal\n * @deprecated - Use closeOnEscape instead\n */\n @Prop() keyboard = true;\n\n /**\n * If set to true the modal can be closed by pressing the Escape key\n */\n @Prop() closeOnEscape = true;\n\n /**\n * Dialog close\n */\n @Event() dialogClose: EventEmitter;\n\n /**\n * Dialog cancel\n */\n @Event() dialogDismiss: EventEmitter;\n\n @State() modalVisible = false;\n\n @OnListener<Modal>('keydown', (self) => !self.closeOnEscape || !self.keyboard)\n onKey(e: KeyboardEvent) {\n if (e.key === 'Escape') {\n e.preventDefault();\n }\n }\n\n get dialog() {\n return this.hostElement.shadowRoot.querySelector('dialog');\n }\n\n private slideInModal() {\n const duration = this.animation ? Animation.mediumTime : 0;\n\n let transformY = this.centered ? '-50%' : 40;\n\n anime({\n targets: this.dialog,\n duration,\n opacity: [0, 1],\n translateY: [0, transformY],\n translateX: ['-50%', '-50%'],\n easing: 'easeOutSine',\n });\n }\n\n private slideOutModal(completeCallback: Function) {\n const duration = this.animation ? Animation.mediumTime : 0;\n\n let transformY = this.centered ? '-50%' : 40;\n\n anime({\n targets: this.dialog,\n duration,\n opacity: [1, 0],\n translateY: [transformY, 0],\n translateX: ['-50%', '-50%'],\n easing: 'easeInSine',\n complete: () => {\n if (completeCallback) {\n completeCallback();\n }\n },\n });\n }\n\n private onModalClick(event: MouseEvent) {\n if (event.target !== this.dialog) {\n return;\n }\n\n const rect = this.dialog.getBoundingClientRect();\n const isClickOutside =\n rect.top <= event.clientY &&\n event.clientY <= rect.top + rect.height &&\n rect.left <= event.clientX &&\n event.clientX <= rect.left + rect.width;\n\n if (!isClickOutside && this.closeOnBackdropClick) {\n this.dismissModal();\n }\n }\n\n /**\n * Show the dialog\n */\n @Method()\n async showModal() {\n try {\n const dialog = await waitForElement<HTMLDialogElement>(\n 'dialog',\n this.hostElement.shadowRoot\n );\n this.modalVisible = true;\n dialog.showModal();\n } catch (e) {\n console.error('HTMLDialogElement not existing');\n }\n }\n\n /**\n * Dismiss the dialog\n */\n @Method()\n async dismissModal<T = any>(reason?: T) {\n let allowDismiss = true;\n\n if (this.beforeDismiss !== undefined) {\n allowDismiss = await this.beforeDismiss(reason);\n }\n if (!allowDismiss) {\n return;\n }\n\n this.slideOutModal(() => {\n this.modalVisible = false;\n this.dialog.close(\n JSON.stringify(\n {\n type: 'dismiss',\n reason,\n },\n null,\n 2\n )\n );\n\n this.dialogDismiss.emit(reason);\n });\n }\n\n /**\n * Close the dialog\n */\n @Method()\n async closeModal<T = any>(reason: T) {\n this.slideOutModal(() => {\n this.dialog.close(\n JSON.stringify(\n {\n type: 'close',\n reason,\n },\n null,\n 2\n )\n );\n\n this.dialogClose.emit(reason);\n });\n }\n\n componentDidLoad() {\n this.slideInModal();\n }\n\n componentWillLoad() {\n this.ariaAttributes = a11yHostAttributes(this.hostElement);\n }\n\n render() {\n return (\n <Host\n class={{\n visible: this.modalVisible,\n 'no-backdrop': this.backdrop === false,\n 'align-center': this.centered,\n }}\n >\n <div class=\"dialog-backdrop\">\n <dialog\n aria-modal={a11yBoolean(true)}\n aria-describedby={this.ariaAttributes['aria-describedby']}\n aria-labelledby={this.ariaAttributes['aria-labelledby']}\n class={{\n modal: true,\n [`modal-size-${this.size}`]: true,\n }}\n onClose={() => this.dismissModal()}\n onClick={(event) => this.onModalClick(event)}\n onCancel={(e) => {\n e.preventDefault();\n this.dismissModal();\n }}\n >\n <slot></slot>\n </dialog>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r,h as o,H as t,c as e,g as s}from"./p-ea80cb61.js";import{a}from"./p-712e0ee0.js";const c=":host{display:block;position:relative;overflow:auto;padding:0.25rem 0.75rem}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}";const i=c;const l=class{constructor(o){r(this,o)}render(){return o(t,{key:"7d65ee586b3d78c89cc6f6a90689eaa1d98f4ec2"},o("slot",{key:"a2cb0a30400cf62e782a0fbb9e2926f4127ace4f"}))}};l.style=i;const h=":host{display:flex;padding:0.5rem;align-items:center;align-self:stretch}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .modal-close{margin-left:auto;margin-right:-1rem}:host .modal-icon{margin-right:1rem}";const b=h;const n=class{constructor(o){r(this,o);this.closeClick=e(this,"closeClick",7);this.hideClose=false;this.icon=undefined;this.iconColor=undefined}onIconChange(r){if(this.parentDialog){if(r){this.parentDialog.classList.add("with-icon")}else{this.parentDialog.classList.remove("with-icon")}}}componentDidLoad(){this.parentDialog=a(this.hostElement,"ix-modal");this.onIconChange(this.icon)}onCloseClick(r){const o=this.closeClick.emit(r);if(o.defaultPrevented||r.defaultPrevented){return}this.parentDialog.dismissModal()}render(){return o(t,{key:"93f0022e034724d55e1ef5d158e26c3c52f187ea"},this.icon?o("ix-icon",{class:"modal-icon",name:this.icon,color:this.iconColor}):null,o("ix-typography",{key:"da388b084f8a380c731a45ae72d9b40fce7b2ef5",variant:"default-title"},o("slot",{key:"425ec3dd532be2169aa3782e01e923c0518646bb"})),!this.hideClose?o("ix-icon-button",{onClick:r=>this.onCloseClick(r),ghost:true,icon:"close",class:"modal-close"}):null)}get hostElement(){return s(this)}static get watchers(){return{icon:["onIconChange"]}}};n.style=b;export{l as ix_modal_content,n as ix_modal_header};
|
|
2
|
+
//# sourceMappingURL=p-16d529ee.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["modalContentCss","IxModalContentStyle0","ModalContent","render","h","Host","key","modalHeaderCss","IxModalHeaderStyle0","ModalHeader","onIconChange","icon","this","parentDialog","classList","add","remove","componentDidLoad","closestPassShadow","hostElement","onCloseClick","event","ce","closeClick","emit","defaultPrevented","dismissModal","class","name","color","iconColor","variant","hideClose","onClick","ghost"],"sources":["src/components/modal-content/modal-content.scss?tag=ix-modal-content&encapsulation=shadow","src/components/modal-content/modal-content.tsx","src/components/modal-header/modal-header.scss?tag=ix-modal-header&encapsulation=shadow","src/components/modal-header/modal-header.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n\n display: block;\n position: relative;\n overflow: auto;\n padding: 0.25rem 0.75rem;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host } from '@stencil/core';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-modal-content',\n styleUrl: 'modal-content.scss',\n shadow: true,\n})\nexport class ModalContent {\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n display: flex;\n padding: 0.5rem;\n align-items: center;\n align-self: stretch;\n\n .modal-close {\n margin-left: auto;\n margin-right: -1rem;\n }\n\n .modal-icon {\n margin-right: 1rem;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { closestPassShadow } from '../utils/shadow-dom';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-modal-header',\n styleUrl: 'modal-header.scss',\n shadow: true,\n})\nexport class ModalHeader {\n @Element() hostElement!: HTMLIxModalHeaderElement;\n\n /**\n * Hide the close button\n */\n @Prop() hideClose = false;\n\n /**\n * Icon of the Header\n */\n @Prop() icon: string;\n\n @Watch('icon')\n onIconChange(icon: string) {\n if (this.parentDialog) {\n if (icon) {\n this.parentDialog.classList.add('with-icon');\n } else {\n this.parentDialog.classList.remove('with-icon');\n }\n }\n }\n\n /**\n * Icon color\n */\n @Prop() iconColor: string;\n\n /**\n * Emits when close icon is clicked and closes the modal\n * Can be prevented, in which case only the event is triggered, and the modal remains open\n */\n @Event() closeClick: EventEmitter<MouseEvent>;\n\n private parentDialog: HTMLIxModalElement;\n\n componentDidLoad() {\n this.parentDialog = closestPassShadow(\n this.hostElement,\n 'ix-modal'\n ) as HTMLIxModalElement;\n this.onIconChange(this.icon);\n }\n\n private onCloseClick(event: MouseEvent) {\n const ce = this.closeClick.emit(event);\n if (ce.defaultPrevented || event.defaultPrevented) {\n return;\n }\n\n this.parentDialog.dismissModal();\n }\n\n render() {\n return (\n <Host>\n {this.icon ? (\n <ix-icon\n class={'modal-icon'}\n name={this.icon}\n color={this.iconColor}\n ></ix-icon>\n ) : null}\n <ix-typography variant={'default-title'}>\n <slot></slot>\n </ix-typography>\n {!this.hideClose ? (\n <ix-icon-button\n onClick={(event) => this.onCloseClick(event)}\n ghost\n icon=\"close\"\n class={'modal-close'}\n ></ix-icon-button>\n ) : null}\n </Host>\n );\n }\n}\n"],"mappings":"0FAAA,MAAMA,EAAkB,2qBACxB,MAAAC,EAAeD,E,MCkBFE,EAAY,M,yBACvB,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,QAAAE,IAAA,6C,aCvBR,MAAMC,EAAiB,kwBACvB,MAAAC,EAAeD,E,MC4BFE,EAAW,M,+EAMF,M,6CAQpB,YAAAC,CAAaC,GACX,GAAIC,KAAKC,aAAc,CACrB,GAAIF,EAAM,CACRC,KAAKC,aAAaC,UAAUC,IAAI,Y,KAC3B,CACLH,KAAKC,aAAaC,UAAUE,OAAO,Y,GAkBzC,gBAAAC,GACEL,KAAKC,aAAeK,EAClBN,KAAKO,YACL,YAEFP,KAAKF,aAAaE,KAAKD,K,CAGjB,YAAAS,CAAaC,GACnB,MAAMC,EAAKV,KAAKW,WAAWC,KAAKH,GAChC,GAAIC,EAAGG,kBAAoBJ,EAAMI,iBAAkB,CACjD,M,CAGFb,KAAKC,aAAaa,c,CAGpB,MAAAvB,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACFM,KAAKD,KACJP,EAAA,WACEuB,MAAO,aACPC,KAAMhB,KAAKD,KACXkB,MAAOjB,KAAKkB,YAEZ,KACJ1B,EAAA,iBAAAE,IAAA,2CAAeyB,QAAS,iBACtB3B,EAAA,QAAAE,IAAA,+CAEAM,KAAKoB,UACL5B,EAAA,kBACE6B,QAAUZ,GAAUT,KAAKQ,aAAaC,GACtCa,MAAK,KACLvB,KAAK,QACLgB,MAAO,gBAEP,K"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as t,c as s,h as i,H as e,g as r}from"./p-ea80cb61.js";import{f as n,i as o,s as h,o as a,a as d,c}from"./p-00df4a8c.js";function l(t){return t&&t.getDropdownItemElement!==undefined&&typeof t.getDropdownItemElement==="function"}class u{constructor(){this.dropdowns=new Map;this.submenuIds={};this.isWindowListenerActive=false}connected(t){if(!this.isWindowListenerActive){this.addOverlayListeners()}this.dropdowns.set(t.getId(),t);if(t.discoverAllSubmenus){this.discoverSubmenus()}}disconnected(t){this.dropdowns.delete(t.getId())}discoverSubmenus(){this.dropdowns.forEach((t=>{t.discoverSubmenu()}))}present(t){if(!t.isPresent()&&t.willPresent()){this.submenuIds[t.getId()]=t.getAssignedSubmenuIds();t.present()}}dismissChildren(t){const s=this.submenuIds[t]||[];for(const t of s){this.dismiss(this.dropdowns.get(t))}}dismiss(t){if(t.isPresent()&&t.willDismiss()){this.dismissChildren(t.getId());t.dismiss();delete this.submenuIds[t.getId()]}}dismissAll(t=[]){this.dropdowns.forEach((s=>{if(!t.includes(s.getId())&&(s.closeBehavior==="inside"||s.closeBehavior===false)){return}this.dismiss(s)}))}dismissOthers(t){let s=this.buildComposedPath(t,new Set);this.dropdowns.forEach((t=>{if(t.closeBehavior!=="inside"&&t.closeBehavior!==false&&!s.has(t.getId())){this.dismiss(t)}}))}pathIncludesTrigger(t){for(let s of t){if(s instanceof HTMLElement){if(s.hasAttribute("data-ix-dropdown-trigger")){return true}}}return false}pathIncludesDropdown(t){return!!t.find((t=>t.tagName==="IX-DROPDOWN"))}buildComposedPath(t,s){if(this.submenuIds[t]){s.add(t)}for(const i of Object.keys(this.submenuIds)){if(this.submenuIds[i].includes(t)){this.buildComposedPath(i,s).forEach((t=>s.add(t)))}}return s}addOverlayListeners(){this.isWindowListenerActive=true;window.addEventListener("click",(t=>{const s=this.pathIncludesTrigger(t.composedPath());const i=this.pathIncludesDropdown(t.composedPath());if(!s&&!i){this.dismissAll()}}));window.addEventListener("keydown",(t=>{if(t.key==="Escape"){this.dismissAll([...this.dropdowns.keys()])}}))}}const f=(t,s,i)=>{t.addEventListener(s,i);return()=>{t.removeEventListener(s,i)}};const b=new u;const m=":host{background-color:var(--theme-color-2);border-radius:var(--theme-default-border-radius);min-width:0px;z-index:var(--theme-z-index-dropdown);box-shadow:var(--theme-shadow-4);padding:0.25rem 0px}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .dropdown-header{display:flex;align-items:center;height:2.5rem;color:var(--theme-menu-header--color);padding:0 1rem}:host(.overflow){max-height:50vh;overflow-y:auto}:host(:not(.show)){display:none}";const w=m;let p=0;const g=class{constructor(i){t(this,i);this.showChanged=s(this,"showChanged",7);this.autoUpdateCleanup=null;this.localUId=`dropdown-${p++}`;this.assignedSubmenu=[];this.suppressAutomaticPlacement=false;this.show=false;this.trigger=undefined;this.anchor=undefined;this.closeBehavior="both";this.placement="bottom-start";this.positioningStrategy="fixed";this.header=undefined;this.offset=undefined;this.overwriteDropdownStyle=undefined;this.discoverAllSubmenus=false}connectedCallback(){b.connected(this)}cacheSubmenuId(t){t.stopImmediatePropagation();t.preventDefault();const{detail:s}=t;if(this.assignedSubmenu.indexOf(s)===-1){this.assignedSubmenu.push(s)}}disconnectedCallback(){var t;(t=this.disposeListener)===null||t===void 0?void 0:t.call(this);b.disconnected(this);if(this.autoUpdateCleanup){this.autoUpdateCleanup()}}getAssignedSubmenuIds(){return this.assignedSubmenu}isPresent(){return this.show}present(){this.show=true}dismiss(){this.show=false}getId(){return this.localUId}willDismiss(){const{defaultPrevented:t}=this.showChanged.emit(false);return!t}willPresent(){const{defaultPrevented:t}=this.showChanged.emit(true);return!t}get dropdownItems(){return Array.from(this.hostElement.querySelectorAll("ix-dropdown-item"))}get slotElement(){return this.hostElement.shadowRoot.querySelector("slot")}addEventListenersFor(){var t,s;(t=this.disposeListener)===null||t===void 0?void 0:t.call(this);const i=()=>{if(!this.isPresent()){b.present(this)}else{b.dismiss(this)}b.dismissOthers(this.getId())};this.disposeListener=f(this.triggerElement,"click",(t=>{if(!t.defaultPrevented){i()}}));(s=this.triggerElement)===null||s===void 0?void 0:s.setAttribute("data-ix-dropdown-trigger",this.localUId)}async discoverSubmenu(){var t;(t=this.triggerElement)===null||t===void 0?void 0:t.dispatchEvent(new CustomEvent("ix-assign-sub-menu",{bubbles:true,composed:false,cancelable:true,detail:this.localUId}))}async registerListener(t){this.triggerElement=await this.resolveElement(t);if(this.triggerElement){this.addEventListenersFor();this.discoverSubmenu()}}async resolveElement(t){const s=await this.findElement(t);return this.checkForSubmenuAnchor(s)}async checkForSubmenuAnchor(t){if(l(t)){const s=await t.getDropdownItemElement();s.isSubMenu=true;this.hostElement.style.zIndex=`var(--theme-z-index-dropdown)`}if(t.tagName==="IX-DROPDOWN-ITEM"){t.isSubMenu=true;this.hostElement.style.zIndex=`var(--theme-z-index-dropdown)`}return t}findElement(t){if(t instanceof Promise){return t}if(typeof t==="object"){return Promise.resolve(t)}const s=`#${t}`;return new Promise((t=>{if(document.querySelector(s)){return t(document.querySelector(s))}const i=new MutationObserver((()=>{if(document.querySelector(s)){t(document.querySelector(s));i.disconnect()}}));i.observe(document.body,{childList:true,subtree:true})}))}async changedShow(t){if(t){this.anchorElement=await(this.anchor?this.resolveElement(this.anchor):this.resolveElement(this.trigger));if(this.anchorElement){this.applyDropdownPosition()}}}changedTrigger(t){this.registerListener(t)}isAnchorSubmenu(){var t;if(!l(this.anchorElement)){return!!((t=this.anchorElement)===null||t===void 0?void 0:t.closest("ix-dropdown-item"))}return true}async applyDropdownPosition(){if(!this.anchorElement){return}if(!this.dropdownRef){return}const t=this.isAnchorSubmenu();let s={strategy:this.positioningStrategy,middleware:[]};if(!this.suppressAutomaticPlacement){s.middleware.push(n({fallbackStrategy:"initialPlacement"}))}s.placement=t?"right-start":this.placement;s.middleware=[...s.middleware,o(),h()];if(this.offset){s.middleware.push(a(this.offset))}if(this.autoUpdateCleanup){this.autoUpdateCleanup();this.autoUpdateCleanup=null}this.autoUpdateCleanup=d(this.anchorElement,this.dropdownRef,(async()=>{const t=await c(this.anchorElement,this.dropdownRef,s);Object.assign(this.dropdownRef.style,{top:"0",left:"0",transform:`translate(${Math.round(t.x)}px,${Math.round(t.y)}px)`});if(this.overwriteDropdownStyle){const t=await this.overwriteDropdownStyle({dropdownRef:this.dropdownRef,triggerRef:this.triggerElement});Object.assign(this.dropdownRef.style,t)}}),{ancestorResize:true,ancestorScroll:true,elementResize:true})}async componentDidLoad(){this.changedTrigger(this.trigger)}async componentDidRender(){await this.applyDropdownPosition();this.anchorElement=await(this.anchor?this.resolveElement(this.anchor):this.resolveElement(this.trigger))}isTriggerElement(t){const s=!!t.hasAttribute("data-ix-dropdown-trigger");return s}onDropdownClick(t){if(b.pathIncludesTrigger(t.composedPath())){t.preventDefault();if(this.isTriggerElement(t.target)){return}}if(this.closeBehavior==="inside"||this.closeBehavior==="both"){b.dismissAll([this.getId()])}b.dismissOthers(this.getId())}async updatePosition(){this.applyDropdownPosition()}render(){return i(e,{key:"
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as t,c as s,h as i,H as e,g as r}from"./p-ea80cb61.js";import{f as n,i as o,s as h,o as a,a as d,c}from"./p-00df4a8c.js";function l(t){return t&&t.getDropdownItemElement!==undefined&&typeof t.getDropdownItemElement==="function"}class u{constructor(){this.dropdowns=new Map;this.submenuIds={};this.isWindowListenerActive=false}connected(t){if(!this.isWindowListenerActive){this.addOverlayListeners()}this.dropdowns.set(t.getId(),t);if(t.discoverAllSubmenus){this.discoverSubmenus()}}disconnected(t){this.dropdowns.delete(t.getId())}discoverSubmenus(){this.dropdowns.forEach((t=>{t.discoverSubmenu()}))}present(t){if(!t.isPresent()&&t.willPresent()){this.submenuIds[t.getId()]=t.getAssignedSubmenuIds();t.present()}}dismissChildren(t){const s=this.submenuIds[t]||[];for(const t of s){this.dismiss(this.dropdowns.get(t))}}dismiss(t){if(t.isPresent()&&t.willDismiss()){this.dismissChildren(t.getId());t.dismiss();delete this.submenuIds[t.getId()]}}dismissAll(t=[]){this.dropdowns.forEach((s=>{if(!t.includes(s.getId())&&(s.closeBehavior==="inside"||s.closeBehavior===false)){return}this.dismiss(s)}))}dismissOthers(t){let s=this.buildComposedPath(t,new Set);this.dropdowns.forEach((t=>{if(t.closeBehavior!=="inside"&&t.closeBehavior!==false&&!s.has(t.getId())){this.dismiss(t)}}))}pathIncludesTrigger(t){for(let s of t){if(s instanceof HTMLElement){if(s.hasAttribute("data-ix-dropdown-trigger")){return true}}}return false}pathIncludesDropdown(t){return!!t.find((t=>t.tagName==="IX-DROPDOWN"))}buildComposedPath(t,s){if(this.submenuIds[t]){s.add(t)}for(const i of Object.keys(this.submenuIds)){if(this.submenuIds[i].includes(t)){this.buildComposedPath(i,s).forEach((t=>s.add(t)))}}return s}addOverlayListeners(){this.isWindowListenerActive=true;window.addEventListener("click",(t=>{const s=this.pathIncludesTrigger(t.composedPath());const i=this.pathIncludesDropdown(t.composedPath());if(!s&&!i){this.dismissAll()}}));window.addEventListener("keydown",(t=>{if(t.key==="Escape"){this.dismissAll([...this.dropdowns.keys()])}}))}}const f=(t,s,i)=>{t.addEventListener(s,i);return()=>{t.removeEventListener(s,i)}};const b=new u;const m=":host{background-color:var(--theme-color-2);border-radius:var(--theme-default-border-radius);min-width:0px;z-index:var(--theme-z-index-dropdown);box-shadow:var(--theme-shadow-4);padding:0.25rem 0px}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .dropdown-header{display:flex;align-items:center;height:2.5rem;color:var(--theme-menu-header--color);padding:0 1rem}:host(.overflow){max-height:50vh;overflow-y:auto}:host(:not(.show)){display:none}";const w=m;let p=0;const g=class{constructor(i){t(this,i);this.showChanged=s(this,"showChanged",7);this.autoUpdateCleanup=null;this.localUId=`dropdown-${p++}`;this.assignedSubmenu=[];this.suppressAutomaticPlacement=false;this.show=false;this.trigger=undefined;this.anchor=undefined;this.closeBehavior="both";this.placement="bottom-start";this.positioningStrategy="fixed";this.header=undefined;this.offset=undefined;this.overwriteDropdownStyle=undefined;this.discoverAllSubmenus=false}connectedCallback(){b.connected(this)}cacheSubmenuId(t){t.stopImmediatePropagation();t.preventDefault();const{detail:s}=t;if(this.assignedSubmenu.indexOf(s)===-1){this.assignedSubmenu.push(s)}}disconnectedCallback(){var t;(t=this.disposeListener)===null||t===void 0?void 0:t.call(this);b.disconnected(this);if(this.autoUpdateCleanup){this.autoUpdateCleanup()}}getAssignedSubmenuIds(){return this.assignedSubmenu}isPresent(){return this.show}present(){this.show=true}dismiss(){this.show=false}getId(){return this.localUId}willDismiss(){const{defaultPrevented:t}=this.showChanged.emit(false);return!t}willPresent(){const{defaultPrevented:t}=this.showChanged.emit(true);return!t}get dropdownItems(){return Array.from(this.hostElement.querySelectorAll("ix-dropdown-item"))}get slotElement(){return this.hostElement.shadowRoot.querySelector("slot")}addEventListenersFor(){var t,s;(t=this.disposeListener)===null||t===void 0?void 0:t.call(this);const i=()=>{if(!this.isPresent()){b.present(this)}else{b.dismiss(this)}b.dismissOthers(this.getId())};this.disposeListener=f(this.triggerElement,"click",(t=>{if(!t.defaultPrevented){i()}}));(s=this.triggerElement)===null||s===void 0?void 0:s.setAttribute("data-ix-dropdown-trigger",this.localUId)}async discoverSubmenu(){var t;(t=this.triggerElement)===null||t===void 0?void 0:t.dispatchEvent(new CustomEvent("ix-assign-sub-menu",{bubbles:true,composed:false,cancelable:true,detail:this.localUId}))}async registerListener(t){this.triggerElement=await this.resolveElement(t);if(this.triggerElement){this.addEventListenersFor();this.discoverSubmenu()}}async resolveElement(t){const s=await this.findElement(t);return this.checkForSubmenuAnchor(s)}async checkForSubmenuAnchor(t){if(!t){return null}if(l(t)){const s=await t.getDropdownItemElement();s.isSubMenu=true;this.hostElement.style.zIndex=`var(--theme-z-index-dropdown)`}if(t.tagName==="IX-DROPDOWN-ITEM"){t.isSubMenu=true;this.hostElement.style.zIndex=`var(--theme-z-index-dropdown)`}return t}findElement(t){if(t instanceof Promise){return t}if(typeof t==="object"){return Promise.resolve(t)}const s=`#${t}`;return new Promise((t=>{if(document.querySelector(s)){return t(document.querySelector(s))}const i=new MutationObserver((()=>{if(document.querySelector(s)){t(document.querySelector(s));i.disconnect()}}));i.observe(document.body,{childList:true,subtree:true})}))}async changedShow(t){if(t){this.anchorElement=await(this.anchor?this.resolveElement(this.anchor):this.resolveElement(this.trigger));if(this.anchorElement){this.applyDropdownPosition()}}}changedTrigger(t){this.registerListener(t)}isAnchorSubmenu(){var t;if(!l(this.anchorElement)){return!!((t=this.anchorElement)===null||t===void 0?void 0:t.closest("ix-dropdown-item"))}return true}async applyDropdownPosition(){if(!this.anchorElement){return}if(!this.dropdownRef){return}const t=this.isAnchorSubmenu();let s={strategy:this.positioningStrategy,middleware:[]};if(!this.suppressAutomaticPlacement){s.middleware.push(n({fallbackStrategy:"initialPlacement"}))}s.placement=t?"right-start":this.placement;s.middleware=[...s.middleware,o(),h()];if(this.offset){s.middleware.push(a(this.offset))}if(this.autoUpdateCleanup){this.autoUpdateCleanup();this.autoUpdateCleanup=null}this.autoUpdateCleanup=d(this.anchorElement,this.dropdownRef,(async()=>{const t=await c(this.anchorElement,this.dropdownRef,s);Object.assign(this.dropdownRef.style,{top:"0",left:"0",transform:`translate(${Math.round(t.x)}px,${Math.round(t.y)}px)`});if(this.overwriteDropdownStyle){const t=await this.overwriteDropdownStyle({dropdownRef:this.dropdownRef,triggerRef:this.triggerElement});Object.assign(this.dropdownRef.style,t)}}),{ancestorResize:true,ancestorScroll:true,elementResize:true})}async componentDidLoad(){this.changedTrigger(this.trigger)}async componentDidRender(){await this.applyDropdownPosition();this.anchorElement=await(this.anchor?this.resolveElement(this.anchor):this.resolveElement(this.trigger))}isTriggerElement(t){const s=!!t.hasAttribute("data-ix-dropdown-trigger");return s}onDropdownClick(t){if(b.pathIncludesTrigger(t.composedPath())){t.preventDefault();if(this.isTriggerElement(t.target)){return}}if(this.closeBehavior==="inside"||this.closeBehavior==="both"){b.dismissAll([this.getId()])}b.dismissOthers(this.getId())}async updatePosition(){this.applyDropdownPosition()}render(){return i(e,{key:"704bc3d7987061a7b9835263d45ee11f753ba71b","data-ix-dropdown":this.localUId,ref:t=>this.dropdownRef=t,class:{"dropdown-menu":true,show:this.show,overflow:true},style:{margin:"0",minWidth:"0px",position:this.positioningStrategy},role:"list",onClick:t=>this.onDropdownClick(t)},i("div",{key:"5e0c4a15d72372573f992b86774d52bfa64c72c8",style:{display:"contents"}},this.header&&i("div",{class:"dropdown-header"},this.header),i("slot",{key:"f182bef9568ab69d49a5fb2d2fbccfdd05041c80"})))}get hostElement(){return r(this)}static get watchers(){return{show:["changedShow"],trigger:["changedTrigger"]}}};g.style=w;export{g as ix_dropdown};
|
|
2
|
+
//# sourceMappingURL=p-4ca6beed.entry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["hasDropdownItemWrapperImplemented","item","getDropdownItemElement","undefined","DropdownController","constructor","this","dropdowns","Map","submenuIds","isWindowListenerActive","connected","dropdown","addOverlayListeners","set","getId","discoverAllSubmenus","discoverSubmenus","disconnected","delete","forEach","discoverSubmenu","present","isPresent","willPresent","getAssignedSubmenuIds","dismissChildren","uid","childIds","id","dismiss","get","willDismiss","dismissAll","ignoreBehaviorForIds","includes","closeBehavior","dismissOthers","path","buildComposedPath","Set","has","pathIncludesTrigger","eventTargets","eventTarget","HTMLElement","hasAttribute","pathIncludesDropdown","find","element","tagName","add","ruleKey","Object","keys","key","window","addEventListener","event","hasTrigger","composedPath","hasDropdown","addDisposableEventListener","eventType","callback","removeEventListener","dropdownController","dropdownCss","IxDropdownStyle0","sequenceId","Dropdown","autoUpdateCleanup","localUId","assignedSubmenu","connectedCallback","cacheSubmenuId","stopImmediatePropagation","preventDefault","detail","indexOf","push","disconnectedCallback","_a","disposeListener","call","show","defaultPrevented","showChanged","emit","dropdownItems","Array","from","hostElement","querySelectorAll","slotElement","shadowRoot","querySelector","addEventListenersFor","toggleController","triggerElement","_b","setAttribute","dispatchEvent","CustomEvent","bubbles","composed","cancelable","registerListener","resolveElement","el","findElement","checkForSubmenuAnchor","dropdownItem","isSubMenu","style","zIndex","Promise","resolve","selector","document","observer","MutationObserver","disconnect","observe","body","childList","subtree","changedShow","newShow","anchorElement","anchor","trigger","applyDropdownPosition","changedTrigger","newTriggerValue","isAnchorSubmenu","closest","dropdownRef","isSubmenu","positionConfig","strategy","positioningStrategy","middleware","suppressAutomaticPlacement","flip","fallbackStrategy","placement","inline","shift","offset","autoUpdate","async","computeResponse","computePosition","assign","top","left","transform","Math","round","x","y","overwriteDropdownStyle","overwriteStyle","triggerRef","ancestorResize","ancestorScroll","elementResize","componentDidLoad","componentDidRender","isTriggerElement","onDropdownClick","target","updatePosition","render","h","Host","ref","class","overflow","margin","minWidth","position","role","onClick","display","header"],"sources":["src/components/dropdown/dropdown-controller.ts","src/components/dropdown/dropdown.scss?tag=ix-dropdown&encapsulation=shadow","src/components/dropdown/dropdown.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { IxComponent } from '../utils/internal';\nexport type CloseBehavior = 'inside' | 'outside' | 'both' | boolean;\n\nexport interface DropdownInterface extends IxComponent {\n closeBehavior: CloseBehavior;\n discoverAllSubmenus: boolean;\n\n getAssignedSubmenuIds(): string[];\n getId(): string;\n\n discoverSubmenu(): void;\n\n isPresent(): boolean;\n\n willPresent?(): boolean;\n willDismiss?(): boolean;\n\n present(): void;\n dismiss(): void;\n}\n\nexport function hasDropdownItemWrapperImplemented(\n item: unknown\n): item is DropdownItemWrapper {\n return (\n item &&\n (item as DropdownItemWrapper).getDropdownItemElement !== undefined &&\n typeof (item as DropdownItemWrapper).getDropdownItemElement === 'function'\n );\n}\n\nexport interface DropdownItemWrapper {\n getDropdownItemElement(): Promise<HTMLIxDropdownItemElement>;\n}\n\ntype SubmenuIds = Record<string, string[]>;\n\nclass DropdownController {\n private dropdowns: Map<string, DropdownInterface> = new Map<\n string,\n DropdownInterface\n >();\n private submenuIds: SubmenuIds = {};\n\n private isWindowListenerActive = false;\n\n connected(dropdown: DropdownInterface) {\n if (!this.isWindowListenerActive) {\n this.addOverlayListeners();\n }\n this.dropdowns.set(dropdown.getId(), dropdown);\n\n if (dropdown.discoverAllSubmenus) {\n this.discoverSubmenus();\n }\n }\n\n disconnected(dropdown: DropdownInterface) {\n this.dropdowns.delete(dropdown.getId());\n }\n\n discoverSubmenus() {\n this.dropdowns.forEach((dropdown) => {\n dropdown.discoverSubmenu();\n });\n }\n\n present(dropdown: DropdownInterface) {\n if (!dropdown.isPresent() && dropdown.willPresent()) {\n this.submenuIds[dropdown.getId()] = dropdown.getAssignedSubmenuIds();\n dropdown.present();\n }\n }\n\n dismissChildren(uid: string) {\n const childIds = this.submenuIds[uid] || [];\n for (const id of childIds) {\n this.dismiss(this.dropdowns.get(id));\n }\n }\n\n dismiss(dropdown: DropdownInterface) {\n if (dropdown.isPresent() && dropdown.willDismiss()) {\n this.dismissChildren(dropdown.getId());\n dropdown.dismiss();\n delete this.submenuIds[dropdown.getId()];\n }\n }\n\n dismissAll(ignoreBehaviorForIds: string[] = []) {\n this.dropdowns.forEach((dropdown) => {\n if (\n !ignoreBehaviorForIds.includes(dropdown.getId()) &&\n (dropdown.closeBehavior === 'inside' ||\n dropdown.closeBehavior === false)\n ) {\n return;\n }\n\n this.dismiss(dropdown);\n });\n }\n\n dismissOthers(uid: string) {\n let path = this.buildComposedPath(uid, new Set<string>());\n\n this.dropdowns.forEach((dropdown) => {\n if (\n dropdown.closeBehavior !== 'inside' &&\n dropdown.closeBehavior !== false &&\n !path.has(dropdown.getId())\n ) {\n this.dismiss(dropdown);\n }\n });\n }\n\n pathIncludesTrigger(eventTargets: EventTarget[]) {\n for (let eventTarget of eventTargets) {\n if (eventTarget instanceof HTMLElement) {\n if (eventTarget.hasAttribute('data-ix-dropdown-trigger')) {\n return true;\n }\n }\n }\n\n return false;\n }\n\n private pathIncludesDropdown(eventTargets: EventTarget[]) {\n return !!eventTargets.find(\n (element: HTMLElement) => element.tagName === 'IX-DROPDOWN'\n );\n }\n\n private buildComposedPath(id: string, path: Set<string>): Set<string> {\n if (this.submenuIds[id]) {\n path.add(id);\n }\n\n for (const ruleKey of Object.keys(this.submenuIds)) {\n if (this.submenuIds[ruleKey].includes(id)) {\n this.buildComposedPath(ruleKey, path).forEach((key) => path.add(key));\n }\n }\n\n return path;\n }\n\n private addOverlayListeners() {\n this.isWindowListenerActive = true;\n\n window.addEventListener('click', (event: PointerEvent) => {\n const hasTrigger = this.pathIncludesTrigger(event.composedPath());\n const hasDropdown = this.pathIncludesDropdown(event.composedPath());\n\n if (!hasTrigger && !hasDropdown) {\n this.dismissAll();\n }\n });\n\n window.addEventListener('keydown', (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n this.dismissAll([...this.dropdowns.keys()]);\n }\n });\n }\n}\n\nexport const addDisposableEventListener = (\n element: Element | Window | Document,\n eventType: string,\n callback: EventListenerOrEventListenerObject\n) => {\n element.addEventListener(eventType, callback);\n\n return () => {\n element.removeEventListener(eventType, callback);\n };\n};\n\nexport const addDisposableEventListenerAsArray = (\n listener: {\n element: Element | Window | Document;\n eventType: string;\n callback: EventListenerOrEventListenerObject;\n }[]\n) => {\n const disposables = listener.map(({ callback, element, eventType }) =>\n addDisposableEventListener(element, eventType, callback)\n );\n\n return () => disposables.forEach((dispose) => dispose());\n};\n\nexport const dropdownController = new DropdownController();\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n\n@import 'legacy/mixins/fonts';\n@import 'mixins/text-truncation';\n@import 'mixins/shadow-dom/component';\n\n:host {\n background-color: var(--theme-color-2);\n border-radius: var(--theme-default-border-radius);\n @include ix-component;\n min-width: 0px;\n z-index: var(--theme-z-index-dropdown);\n box-shadow: var(--theme-shadow-4);\n\n padding: 0.25rem 0px;\n\n .dropdown-header {\n display: flex;\n align-items: center;\n height: $large-control-height;\n color: var(--theme-menu-header--color);\n padding: 0 $default-space;\n }\n}\n\n:host(.overflow) {\n max-height: 50vh;\n overflow-y: auto;\n}\n\n:host(:not(.show)) {\n display: none;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n autoUpdate,\n computePosition,\n ComputePositionConfig,\n flip,\n inline,\n offset,\n shift,\n} from '@floating-ui/dom';\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { ComponentInterface } from '@stencil/core/internal';\nimport {\n addDisposableEventListener,\n CloseBehavior,\n dropdownController,\n DropdownInterface,\n hasDropdownItemWrapperImplemented,\n} from './dropdown-controller';\nimport { AlignedPlacement } from './placement';\n\nlet sequenceId = 0;\n\n@Component({\n tag: 'ix-dropdown',\n styleUrl: 'dropdown.scss',\n shadow: true,\n})\nexport class Dropdown implements ComponentInterface, DropdownInterface {\n @Element() hostElement!: HTMLIxDropdownElement;\n\n /**\n * Suppress the automatic placement of the dropdown.\n *\n * @since 2.0.0\n */\n @Prop() suppressAutomaticPlacement = false;\n\n /**\n * Show dropdown\n */\n @Prop({ mutable: true, reflect: true }) show = false;\n\n /**\n * Define an element that triggers the dropdown.\n * A trigger can either be a string that will be interpreted as id attribute or a DOM element.\n */\n @Prop() trigger: string | HTMLElement | Promise<HTMLElement>;\n\n /**\n * Define an anchor element\n */\n @Prop() anchor: string | HTMLElement;\n\n /**\n * Controls if the dropdown will be closed in response to a click event depending on the position of the event relative to the dropdown.\n * If the dropdown is a child of another one, it will be closed with the parent, regardless of its own close behavior.\n */\n @Prop() closeBehavior: CloseBehavior = 'both';\n\n /**\n * Placement of the dropdown\n */\n @Prop() placement: AlignedPlacement = 'bottom-start';\n\n /**\n * Position strategy\n */\n @Prop() positioningStrategy: 'absolute' | 'fixed' = 'fixed';\n\n /**\n * An optional header shown at the top of the dropdown\n */\n @Prop() header?: string;\n\n /**\n * Move dropdown along main axis of alignment\n *\n * @internal\n */\n @Prop() offset: {\n mainAxis?: number;\n crossAxis?: number;\n alignmentAxis?: number;\n };\n\n /**\n * @internal\n */\n @Prop() overwriteDropdownStyle: (delegate: {\n dropdownRef: HTMLElement;\n triggerRef?: HTMLElement;\n }) => Promise<Partial<CSSStyleDeclaration>>;\n\n /**\n * @internal\n * If initialisation of this dropdown is expected to be defered submenu discovery will have to be re-run globally by the controller.\n * This property indicates the need for that to the controller.\n */\n @Prop() discoverAllSubmenus = false;\n\n /**\n * Fire event after visibility of dropdown has changed\n */\n @Event() showChanged: EventEmitter<boolean>;\n\n private autoUpdateCleanup: () => void = null;\n\n private triggerElement?: Element;\n private anchorElement?: Element;\n\n private dropdownRef: HTMLElement;\n private localUId = `dropdown-${sequenceId++}`;\n private assignedSubmenu: string[] = [];\n\n connectedCallback(): void {\n dropdownController.connected(this);\n }\n\n @Listen('ix-assign-sub-menu')\n cacheSubmenuId(event: CustomEvent<string>) {\n event.stopImmediatePropagation();\n event.preventDefault();\n\n const { detail } = event;\n\n if (this.assignedSubmenu.indexOf(detail) === -1) {\n this.assignedSubmenu.push(detail);\n }\n }\n\n disconnectedCallback() {\n this.disposeListener?.();\n dropdownController.disconnected(this);\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n }\n }\n\n getAssignedSubmenuIds() {\n return this.assignedSubmenu;\n }\n\n isPresent() {\n return this.show;\n }\n\n present() {\n this.show = true;\n }\n\n dismiss() {\n this.show = false;\n }\n\n getId() {\n return this.localUId;\n }\n\n willDismiss() {\n const { defaultPrevented } = this.showChanged.emit(false);\n return !defaultPrevented;\n }\n\n willPresent() {\n const { defaultPrevented } = this.showChanged.emit(true);\n return !defaultPrevented;\n }\n\n get dropdownItems() {\n return Array.from(this.hostElement.querySelectorAll('ix-dropdown-item'));\n }\n\n get slotElement() {\n return this.hostElement.shadowRoot.querySelector('slot');\n }\n\n private disposeListener?: Function;\n\n private addEventListenersFor() {\n this.disposeListener?.();\n\n const toggleController = () => {\n if (!this.isPresent()) {\n dropdownController.present(this);\n } else {\n dropdownController.dismiss(this);\n }\n\n dropdownController.dismissOthers(this.getId());\n };\n\n this.disposeListener = addDisposableEventListener(\n this.triggerElement,\n 'click',\n (event: PointerEvent) => {\n if (!event.defaultPrevented) {\n toggleController();\n }\n }\n );\n\n this.triggerElement?.setAttribute(\n 'data-ix-dropdown-trigger',\n this.localUId\n );\n }\n\n /** @internal */\n @Method()\n async discoverSubmenu() {\n this.triggerElement?.dispatchEvent(\n new CustomEvent('ix-assign-sub-menu', {\n bubbles: true,\n composed: false,\n cancelable: true,\n detail: this.localUId,\n })\n );\n }\n\n private async registerListener(\n element: string | HTMLElement | Promise<HTMLElement>\n ) {\n this.triggerElement = await this.resolveElement(element);\n if (this.triggerElement) {\n this.addEventListenersFor();\n this.discoverSubmenu();\n }\n }\n\n private async resolveElement(\n element: string | HTMLElement | Promise<HTMLElement>\n ) {\n const el = await this.findElement(element);\n\n return this.checkForSubmenuAnchor(el);\n }\n\n private async checkForSubmenuAnchor(element: Element) {\n if (hasDropdownItemWrapperImplemented(element)) {\n const dropdownItem = await element.getDropdownItemElement();\n dropdownItem.isSubMenu = true;\n this.hostElement.style.zIndex = `var(--theme-z-index-dropdown)`;\n }\n\n if (element.tagName === 'IX-DROPDOWN-ITEM') {\n (element as HTMLIxDropdownItemElement).isSubMenu = true;\n this.hostElement.style.zIndex = `var(--theme-z-index-dropdown)`;\n }\n\n return element;\n }\n\n private findElement(\n element: string | HTMLElement | Promise<HTMLElement>\n ): Promise<Element> {\n if (element instanceof Promise) {\n return element;\n }\n\n if (typeof element === 'object') {\n return Promise.resolve(element);\n }\n\n const selector = `#${element}`;\n return new Promise((resolve) => {\n if (document.querySelector(selector)) {\n return resolve(document.querySelector(selector));\n }\n\n const observer = new MutationObserver(() => {\n if (document.querySelector(selector)) {\n resolve(document.querySelector(selector));\n observer.disconnect();\n }\n });\n\n observer.observe(document.body, {\n childList: true,\n subtree: true,\n });\n });\n }\n\n @Watch('show')\n async changedShow(newShow: boolean) {\n if (newShow) {\n this.anchorElement = await (this.anchor\n ? this.resolveElement(this.anchor)\n : this.resolveElement(this.trigger));\n\n if (this.anchorElement) {\n this.applyDropdownPosition();\n // await this.checkForSubmenuAnchor();\n }\n }\n }\n\n @Watch('trigger')\n changedTrigger(newTriggerValue: string | HTMLElement | Promise<HTMLElement>) {\n this.registerListener(newTriggerValue);\n }\n\n private isAnchorSubmenu(): boolean {\n if (!hasDropdownItemWrapperImplemented(this.anchorElement)) {\n // Is no official dropdown-item, but check if any dropdown-item\n // is placed somewhere up the DOM\n return !!this.anchorElement?.closest('ix-dropdown-item');\n }\n\n return true;\n }\n\n private async applyDropdownPosition() {\n if (!this.anchorElement) {\n return;\n }\n if (!this.dropdownRef) {\n return;\n }\n const isSubmenu = this.isAnchorSubmenu();\n\n let positionConfig: Partial<ComputePositionConfig> = {\n strategy: this.positioningStrategy,\n middleware: [],\n };\n\n if (!this.suppressAutomaticPlacement) {\n positionConfig.middleware.push(\n flip({ fallbackStrategy: 'initialPlacement' })\n );\n }\n\n positionConfig.placement = isSubmenu ? 'right-start' : this.placement;\n\n positionConfig.middleware = [\n ...positionConfig.middleware,\n inline(),\n shift(),\n ];\n\n if (this.offset) {\n positionConfig.middleware.push(offset(this.offset));\n }\n\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n this.autoUpdateCleanup = null;\n }\n\n this.autoUpdateCleanup = autoUpdate(\n this.anchorElement,\n this.dropdownRef,\n async () => {\n const computeResponse = await computePosition(\n this.anchorElement,\n this.dropdownRef,\n positionConfig\n );\n\n Object.assign(this.dropdownRef.style, {\n top: '0',\n left: '0',\n transform: `translate(${Math.round(computeResponse.x)}px,${Math.round(\n computeResponse.y\n )}px)`,\n });\n if (this.overwriteDropdownStyle) {\n const overwriteStyle = await this.overwriteDropdownStyle({\n dropdownRef: this.dropdownRef,\n triggerRef: this.triggerElement as HTMLElement,\n });\n\n Object.assign(this.dropdownRef.style, overwriteStyle);\n }\n },\n {\n ancestorResize: true,\n ancestorScroll: true,\n elementResize: true,\n }\n );\n }\n\n async componentDidLoad() {\n this.changedTrigger(this.trigger);\n }\n\n async componentDidRender() {\n await this.applyDropdownPosition();\n this.anchorElement = await (this.anchor\n ? this.resolveElement(this.anchor)\n : this.resolveElement(this.trigger));\n }\n\n private isTriggerElement(element: HTMLElement) {\n const trigger = !!element.hasAttribute('data-ix-dropdown-trigger');\n\n return trigger;\n }\n\n private onDropdownClick(event: PointerEvent) {\n if (dropdownController.pathIncludesTrigger(event.composedPath())) {\n event.preventDefault();\n\n if (this.isTriggerElement(event.target as HTMLElement)) {\n return;\n }\n }\n\n if (this.closeBehavior === 'inside' || this.closeBehavior === 'both') {\n dropdownController.dismissAll([this.getId()]);\n }\n\n dropdownController.dismissOthers(this.getId());\n }\n\n /**\n * Update position of dropdown\n */\n @Method()\n async updatePosition() {\n this.applyDropdownPosition();\n }\n\n render() {\n return (\n <Host\n data-ix-dropdown={this.localUId}\n ref={(ref) => (this.dropdownRef = ref)}\n class={{\n 'dropdown-menu': true,\n show: this.show,\n overflow: true,\n }}\n style={{\n margin: '0',\n minWidth: '0px',\n position: this.positioningStrategy,\n }}\n role=\"list\"\n onClick={(event: PointerEvent) => this.onDropdownClick(event)}\n >\n <div style={{ display: 'contents' }}>\n {this.header && <div class=\"dropdown-header\">{this.header}</div>}\n\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["hasDropdownItemWrapperImplemented","item","getDropdownItemElement","undefined","DropdownController","constructor","this","dropdowns","Map","submenuIds","isWindowListenerActive","connected","dropdown","addOverlayListeners","set","getId","discoverAllSubmenus","discoverSubmenus","disconnected","delete","forEach","discoverSubmenu","present","isPresent","willPresent","getAssignedSubmenuIds","dismissChildren","uid","childIds","id","dismiss","get","willDismiss","dismissAll","ignoreBehaviorForIds","includes","closeBehavior","dismissOthers","path","buildComposedPath","Set","has","pathIncludesTrigger","eventTargets","eventTarget","HTMLElement","hasAttribute","pathIncludesDropdown","find","element","tagName","add","ruleKey","Object","keys","key","window","addEventListener","event","hasTrigger","composedPath","hasDropdown","addDisposableEventListener","eventType","callback","removeEventListener","dropdownController","dropdownCss","IxDropdownStyle0","sequenceId","Dropdown","autoUpdateCleanup","localUId","assignedSubmenu","connectedCallback","cacheSubmenuId","stopImmediatePropagation","preventDefault","detail","indexOf","push","disconnectedCallback","_a","disposeListener","call","show","defaultPrevented","showChanged","emit","dropdownItems","Array","from","hostElement","querySelectorAll","slotElement","shadowRoot","querySelector","addEventListenersFor","toggleController","triggerElement","_b","setAttribute","dispatchEvent","CustomEvent","bubbles","composed","cancelable","registerListener","resolveElement","el","findElement","checkForSubmenuAnchor","dropdownItem","isSubMenu","style","zIndex","Promise","resolve","selector","document","observer","MutationObserver","disconnect","observe","body","childList","subtree","changedShow","newShow","anchorElement","anchor","trigger","applyDropdownPosition","changedTrigger","newTriggerValue","isAnchorSubmenu","closest","dropdownRef","isSubmenu","positionConfig","strategy","positioningStrategy","middleware","suppressAutomaticPlacement","flip","fallbackStrategy","placement","inline","shift","offset","autoUpdate","async","computeResponse","computePosition","assign","top","left","transform","Math","round","x","y","overwriteDropdownStyle","overwriteStyle","triggerRef","ancestorResize","ancestorScroll","elementResize","componentDidLoad","componentDidRender","isTriggerElement","onDropdownClick","target","updatePosition","render","h","Host","ref","class","overflow","margin","minWidth","position","role","onClick","display","header"],"sources":["src/components/dropdown/dropdown-controller.ts","src/components/dropdown/dropdown.scss?tag=ix-dropdown&encapsulation=shadow","src/components/dropdown/dropdown.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { IxComponent } from '../utils/internal';\nexport type CloseBehavior = 'inside' | 'outside' | 'both' | boolean;\n\nexport interface DropdownInterface extends IxComponent {\n closeBehavior: CloseBehavior;\n discoverAllSubmenus: boolean;\n\n getAssignedSubmenuIds(): string[];\n getId(): string;\n\n discoverSubmenu(): void;\n\n isPresent(): boolean;\n\n willPresent?(): boolean;\n willDismiss?(): boolean;\n\n present(): void;\n dismiss(): void;\n}\n\nexport function hasDropdownItemWrapperImplemented(\n item: unknown\n): item is DropdownItemWrapper {\n return (\n item &&\n (item as DropdownItemWrapper).getDropdownItemElement !== undefined &&\n typeof (item as DropdownItemWrapper).getDropdownItemElement === 'function'\n );\n}\n\nexport interface DropdownItemWrapper {\n getDropdownItemElement(): Promise<HTMLIxDropdownItemElement>;\n}\n\ntype SubmenuIds = Record<string, string[]>;\n\nclass DropdownController {\n private dropdowns: Map<string, DropdownInterface> = new Map<\n string,\n DropdownInterface\n >();\n private submenuIds: SubmenuIds = {};\n\n private isWindowListenerActive = false;\n\n connected(dropdown: DropdownInterface) {\n if (!this.isWindowListenerActive) {\n this.addOverlayListeners();\n }\n this.dropdowns.set(dropdown.getId(), dropdown);\n\n if (dropdown.discoverAllSubmenus) {\n this.discoverSubmenus();\n }\n }\n\n disconnected(dropdown: DropdownInterface) {\n this.dropdowns.delete(dropdown.getId());\n }\n\n discoverSubmenus() {\n this.dropdowns.forEach((dropdown) => {\n dropdown.discoverSubmenu();\n });\n }\n\n present(dropdown: DropdownInterface) {\n if (!dropdown.isPresent() && dropdown.willPresent()) {\n this.submenuIds[dropdown.getId()] = dropdown.getAssignedSubmenuIds();\n dropdown.present();\n }\n }\n\n dismissChildren(uid: string) {\n const childIds = this.submenuIds[uid] || [];\n for (const id of childIds) {\n this.dismiss(this.dropdowns.get(id));\n }\n }\n\n dismiss(dropdown: DropdownInterface) {\n if (dropdown.isPresent() && dropdown.willDismiss()) {\n this.dismissChildren(dropdown.getId());\n dropdown.dismiss();\n delete this.submenuIds[dropdown.getId()];\n }\n }\n\n dismissAll(ignoreBehaviorForIds: string[] = []) {\n this.dropdowns.forEach((dropdown) => {\n if (\n !ignoreBehaviorForIds.includes(dropdown.getId()) &&\n (dropdown.closeBehavior === 'inside' ||\n dropdown.closeBehavior === false)\n ) {\n return;\n }\n\n this.dismiss(dropdown);\n });\n }\n\n dismissOthers(uid: string) {\n let path = this.buildComposedPath(uid, new Set<string>());\n\n this.dropdowns.forEach((dropdown) => {\n if (\n dropdown.closeBehavior !== 'inside' &&\n dropdown.closeBehavior !== false &&\n !path.has(dropdown.getId())\n ) {\n this.dismiss(dropdown);\n }\n });\n }\n\n pathIncludesTrigger(eventTargets: EventTarget[]) {\n for (let eventTarget of eventTargets) {\n if (eventTarget instanceof HTMLElement) {\n if (eventTarget.hasAttribute('data-ix-dropdown-trigger')) {\n return true;\n }\n }\n }\n\n return false;\n }\n\n private pathIncludesDropdown(eventTargets: EventTarget[]) {\n return !!eventTargets.find(\n (element: HTMLElement) => element.tagName === 'IX-DROPDOWN'\n );\n }\n\n private buildComposedPath(id: string, path: Set<string>): Set<string> {\n if (this.submenuIds[id]) {\n path.add(id);\n }\n\n for (const ruleKey of Object.keys(this.submenuIds)) {\n if (this.submenuIds[ruleKey].includes(id)) {\n this.buildComposedPath(ruleKey, path).forEach((key) => path.add(key));\n }\n }\n\n return path;\n }\n\n private addOverlayListeners() {\n this.isWindowListenerActive = true;\n\n window.addEventListener('click', (event: PointerEvent) => {\n const hasTrigger = this.pathIncludesTrigger(event.composedPath());\n const hasDropdown = this.pathIncludesDropdown(event.composedPath());\n\n if (!hasTrigger && !hasDropdown) {\n this.dismissAll();\n }\n });\n\n window.addEventListener('keydown', (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n this.dismissAll([...this.dropdowns.keys()]);\n }\n });\n }\n}\n\nexport const addDisposableEventListener = (\n element: Element | Window | Document,\n eventType: string,\n callback: EventListenerOrEventListenerObject\n) => {\n element.addEventListener(eventType, callback);\n\n return () => {\n element.removeEventListener(eventType, callback);\n };\n};\n\nexport const addDisposableEventListenerAsArray = (\n listener: {\n element: Element | Window | Document;\n eventType: string;\n callback: EventListenerOrEventListenerObject;\n }[]\n) => {\n const disposables = listener.map(({ callback, element, eventType }) =>\n addDisposableEventListener(element, eventType, callback)\n );\n\n return () => disposables.forEach((dispose) => dispose());\n};\n\nexport const dropdownController = new DropdownController();\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n\n@import 'legacy/mixins/fonts';\n@import 'mixins/text-truncation';\n@import 'mixins/shadow-dom/component';\n\n:host {\n background-color: var(--theme-color-2);\n border-radius: var(--theme-default-border-radius);\n @include ix-component;\n min-width: 0px;\n z-index: var(--theme-z-index-dropdown);\n box-shadow: var(--theme-shadow-4);\n\n padding: 0.25rem 0px;\n\n .dropdown-header {\n display: flex;\n align-items: center;\n height: $large-control-height;\n color: var(--theme-menu-header--color);\n padding: 0 $default-space;\n }\n}\n\n:host(.overflow) {\n max-height: 50vh;\n overflow-y: auto;\n}\n\n:host(:not(.show)) {\n display: none;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n autoUpdate,\n computePosition,\n ComputePositionConfig,\n flip,\n inline,\n offset,\n shift,\n} from '@floating-ui/dom';\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { ComponentInterface } from '@stencil/core/internal';\nimport {\n addDisposableEventListener,\n CloseBehavior,\n dropdownController,\n DropdownInterface,\n hasDropdownItemWrapperImplemented,\n} from './dropdown-controller';\nimport { AlignedPlacement } from './placement';\n\nlet sequenceId = 0;\n\n@Component({\n tag: 'ix-dropdown',\n styleUrl: 'dropdown.scss',\n shadow: true,\n})\nexport class Dropdown implements ComponentInterface, DropdownInterface {\n @Element() hostElement!: HTMLIxDropdownElement;\n\n /**\n * Suppress the automatic placement of the dropdown.\n *\n * @since 2.0.0\n */\n @Prop() suppressAutomaticPlacement = false;\n\n /**\n * Show dropdown\n */\n @Prop({ mutable: true, reflect: true }) show = false;\n\n /**\n * Define an element that triggers the dropdown.\n * A trigger can either be a string that will be interpreted as id attribute or a DOM element.\n */\n @Prop() trigger: string | HTMLElement | Promise<HTMLElement>;\n\n /**\n * Define an anchor element\n */\n @Prop() anchor: string | HTMLElement;\n\n /**\n * Controls if the dropdown will be closed in response to a click event depending on the position of the event relative to the dropdown.\n * If the dropdown is a child of another one, it will be closed with the parent, regardless of its own close behavior.\n */\n @Prop() closeBehavior: CloseBehavior = 'both';\n\n /**\n * Placement of the dropdown\n */\n @Prop() placement: AlignedPlacement = 'bottom-start';\n\n /**\n * Position strategy\n */\n @Prop() positioningStrategy: 'absolute' | 'fixed' = 'fixed';\n\n /**\n * An optional header shown at the top of the dropdown\n */\n @Prop() header?: string;\n\n /**\n * Move dropdown along main axis of alignment\n *\n * @internal\n */\n @Prop() offset: {\n mainAxis?: number;\n crossAxis?: number;\n alignmentAxis?: number;\n };\n\n /**\n * @internal\n */\n @Prop() overwriteDropdownStyle: (delegate: {\n dropdownRef: HTMLElement;\n triggerRef?: HTMLElement;\n }) => Promise<Partial<CSSStyleDeclaration>>;\n\n /**\n * @internal\n * If initialisation of this dropdown is expected to be defered submenu discovery will have to be re-run globally by the controller.\n * This property indicates the need for that to the controller.\n */\n @Prop() discoverAllSubmenus = false;\n\n /**\n * Fire event after visibility of dropdown has changed\n */\n @Event() showChanged: EventEmitter<boolean>;\n\n private autoUpdateCleanup: () => void = null;\n\n private triggerElement?: Element;\n private anchorElement?: Element;\n\n private dropdownRef: HTMLElement;\n private localUId = `dropdown-${sequenceId++}`;\n private assignedSubmenu: string[] = [];\n\n connectedCallback(): void {\n dropdownController.connected(this);\n }\n\n @Listen('ix-assign-sub-menu')\n cacheSubmenuId(event: CustomEvent<string>) {\n event.stopImmediatePropagation();\n event.preventDefault();\n\n const { detail } = event;\n\n if (this.assignedSubmenu.indexOf(detail) === -1) {\n this.assignedSubmenu.push(detail);\n }\n }\n\n disconnectedCallback() {\n this.disposeListener?.();\n dropdownController.disconnected(this);\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n }\n }\n\n getAssignedSubmenuIds() {\n return this.assignedSubmenu;\n }\n\n isPresent() {\n return this.show;\n }\n\n present() {\n this.show = true;\n }\n\n dismiss() {\n this.show = false;\n }\n\n getId() {\n return this.localUId;\n }\n\n willDismiss() {\n const { defaultPrevented } = this.showChanged.emit(false);\n return !defaultPrevented;\n }\n\n willPresent() {\n const { defaultPrevented } = this.showChanged.emit(true);\n return !defaultPrevented;\n }\n\n get dropdownItems() {\n return Array.from(this.hostElement.querySelectorAll('ix-dropdown-item'));\n }\n\n get slotElement() {\n return this.hostElement.shadowRoot.querySelector('slot');\n }\n\n private disposeListener?: Function;\n\n private addEventListenersFor() {\n this.disposeListener?.();\n\n const toggleController = () => {\n if (!this.isPresent()) {\n dropdownController.present(this);\n } else {\n dropdownController.dismiss(this);\n }\n\n dropdownController.dismissOthers(this.getId());\n };\n\n this.disposeListener = addDisposableEventListener(\n this.triggerElement,\n 'click',\n (event: PointerEvent) => {\n if (!event.defaultPrevented) {\n toggleController();\n }\n }\n );\n\n this.triggerElement?.setAttribute(\n 'data-ix-dropdown-trigger',\n this.localUId\n );\n }\n\n /** @internal */\n @Method()\n async discoverSubmenu() {\n this.triggerElement?.dispatchEvent(\n new CustomEvent('ix-assign-sub-menu', {\n bubbles: true,\n composed: false,\n cancelable: true,\n detail: this.localUId,\n })\n );\n }\n\n private async registerListener(\n element: string | HTMLElement | Promise<HTMLElement>\n ) {\n this.triggerElement = await this.resolveElement(element);\n if (this.triggerElement) {\n this.addEventListenersFor();\n this.discoverSubmenu();\n }\n }\n\n private async resolveElement(\n element: string | HTMLElement | Promise<HTMLElement>\n ) {\n const el = await this.findElement(element);\n\n return this.checkForSubmenuAnchor(el);\n }\n\n private async checkForSubmenuAnchor(element: Element) {\n if (!element) {\n return null;\n }\n\n if (hasDropdownItemWrapperImplemented(element)) {\n const dropdownItem = await element.getDropdownItemElement();\n dropdownItem.isSubMenu = true;\n this.hostElement.style.zIndex = `var(--theme-z-index-dropdown)`;\n }\n\n if (element.tagName === 'IX-DROPDOWN-ITEM') {\n (element as HTMLIxDropdownItemElement).isSubMenu = true;\n this.hostElement.style.zIndex = `var(--theme-z-index-dropdown)`;\n }\n\n return element;\n }\n\n private findElement(\n element: string | HTMLElement | Promise<HTMLElement>\n ): Promise<Element> {\n if (element instanceof Promise) {\n return element;\n }\n\n if (typeof element === 'object') {\n return Promise.resolve(element);\n }\n\n const selector = `#${element}`;\n return new Promise((resolve) => {\n if (document.querySelector(selector)) {\n return resolve(document.querySelector(selector));\n }\n\n const observer = new MutationObserver(() => {\n if (document.querySelector(selector)) {\n resolve(document.querySelector(selector));\n observer.disconnect();\n }\n });\n\n observer.observe(document.body, {\n childList: true,\n subtree: true,\n });\n });\n }\n\n @Watch('show')\n async changedShow(newShow: boolean) {\n if (newShow) {\n this.anchorElement = await (this.anchor\n ? this.resolveElement(this.anchor)\n : this.resolveElement(this.trigger));\n\n if (this.anchorElement) {\n this.applyDropdownPosition();\n }\n }\n }\n\n @Watch('trigger')\n changedTrigger(newTriggerValue: string | HTMLElement | Promise<HTMLElement>) {\n this.registerListener(newTriggerValue);\n }\n\n private isAnchorSubmenu(): boolean {\n if (!hasDropdownItemWrapperImplemented(this.anchorElement)) {\n // Is no official dropdown-item, but check if any dropdown-item\n // is placed somewhere up the DOM\n return !!this.anchorElement?.closest('ix-dropdown-item');\n }\n\n return true;\n }\n\n private async applyDropdownPosition() {\n if (!this.anchorElement) {\n return;\n }\n if (!this.dropdownRef) {\n return;\n }\n const isSubmenu = this.isAnchorSubmenu();\n\n let positionConfig: Partial<ComputePositionConfig> = {\n strategy: this.positioningStrategy,\n middleware: [],\n };\n\n if (!this.suppressAutomaticPlacement) {\n positionConfig.middleware.push(\n flip({ fallbackStrategy: 'initialPlacement' })\n );\n }\n\n positionConfig.placement = isSubmenu ? 'right-start' : this.placement;\n\n positionConfig.middleware = [\n ...positionConfig.middleware,\n inline(),\n shift(),\n ];\n\n if (this.offset) {\n positionConfig.middleware.push(offset(this.offset));\n }\n\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n this.autoUpdateCleanup = null;\n }\n\n this.autoUpdateCleanup = autoUpdate(\n this.anchorElement,\n this.dropdownRef,\n async () => {\n const computeResponse = await computePosition(\n this.anchorElement,\n this.dropdownRef,\n positionConfig\n );\n\n Object.assign(this.dropdownRef.style, {\n top: '0',\n left: '0',\n transform: `translate(${Math.round(computeResponse.x)}px,${Math.round(\n computeResponse.y\n )}px)`,\n });\n if (this.overwriteDropdownStyle) {\n const overwriteStyle = await this.overwriteDropdownStyle({\n dropdownRef: this.dropdownRef,\n triggerRef: this.triggerElement as HTMLElement,\n });\n\n Object.assign(this.dropdownRef.style, overwriteStyle);\n }\n },\n {\n ancestorResize: true,\n ancestorScroll: true,\n elementResize: true,\n }\n );\n }\n\n async componentDidLoad() {\n this.changedTrigger(this.trigger);\n }\n\n async componentDidRender() {\n await this.applyDropdownPosition();\n this.anchorElement = await (this.anchor\n ? this.resolveElement(this.anchor)\n : this.resolveElement(this.trigger));\n }\n\n private isTriggerElement(element: HTMLElement) {\n const trigger = !!element.hasAttribute('data-ix-dropdown-trigger');\n\n return trigger;\n }\n\n private onDropdownClick(event: PointerEvent) {\n if (dropdownController.pathIncludesTrigger(event.composedPath())) {\n event.preventDefault();\n\n if (this.isTriggerElement(event.target as HTMLElement)) {\n return;\n }\n }\n\n if (this.closeBehavior === 'inside' || this.closeBehavior === 'both') {\n dropdownController.dismissAll([this.getId()]);\n }\n\n dropdownController.dismissOthers(this.getId());\n }\n\n /**\n * Update position of dropdown\n */\n @Method()\n async updatePosition() {\n this.applyDropdownPosition();\n }\n\n render() {\n return (\n <Host\n data-ix-dropdown={this.localUId}\n ref={(ref) => (this.dropdownRef = ref)}\n class={{\n 'dropdown-menu': true,\n show: this.show,\n overflow: true,\n }}\n style={{\n margin: '0',\n minWidth: '0px',\n position: this.positioningStrategy,\n }}\n role=\"list\"\n onClick={(event: PointerEvent) => this.onDropdownClick(event)}\n >\n <div style={{ display: 'contents' }}>\n {this.header && <div class=\"dropdown-header\">{this.header}</div>}\n\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r,h as e,H as o}from"./p-ea80cb61.js";const t=":host{display:flex;padding:0.5rem;justify-content:flex-end;align-items:center;gap:0.5rem;align-self:stretch}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}";const a=t;const s=class{constructor(e){r(this,e)}render(){return e(o,{key:"62e35b423b00c0ad75954e735188dce705f7ff3e"},e("slot",{key:"29a2a22875ae6197dab3c056329125dcefe70032"}))}};s.style=a;export{s as ix_modal_footer};
|
|
2
|
+
//# sourceMappingURL=p-c98d8ec2.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["modalFooterCss","IxModalFooterStyle0","ModalFooter","render","h","Host","key"],"sources":["src/components/modal-footer/modal-footer.scss?tag=ix-modal-footer&encapsulation=shadow","src/components/modal-footer/modal-footer.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n display: flex;\n padding: 0.5rem;\n justify-content: flex-end;\n align-items: center;\n gap: 0.5rem;\n align-self: stretch;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host } from '@stencil/core';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-modal-footer',\n styleUrl: 'modal-footer.scss',\n shadow: true,\n})\nexport class ModalFooter {\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"6CAAA,MAAMA,EAAiB,2sBACvB,MAAAC,EAAeD,E,MCkBFE,EAAW,M,yBACtB,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,QAAAE,IAAA,6C"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as e,b as a}from"./p-ea80cb61.js";export{s as setNonce}from"./p-ea80cb61.js";import{g as t}from"./p-737b08c6.js";const i=()=>{const a=import.meta.url;const t={};if(a!==""){t.resourcesUrl=new URL(".",a).href}return e(t)};i().then((async e=>{await t();return a(JSON.parse('[["p-d445b333",[[1,"ix-datetime-picker",{"range":[4],"showHour":[4,"show-hour"],"showMinutes":[4,"show-minutes"],"showSeconds":[4,"show-seconds"],"minDate":[1,"min-date"],"maxDate":[1,"max-date"],"dateFormat":[1,"date-format"],"timeFormat":[1,"time-format"],"from":[1],"to":[1],"time":[1],"showTimeReference":[8,"show-time-reference"],"timeReference":[1,"time-reference"],"textSelectDate":[1,"text-select-date"],"i18nDone":[1,"i18n-done"],"weekStartIndex":[2,"week-start-index"],"locale":[1],"eventDelimiter":[1,"event-delimiter"]}]]],["p-e345d0d2",[[1,"ix-date-dropdown",{"format":[1],"range":[4],"from":[1],"to":[1],"minDate":[1,"min-date"],"maxDate":[1,"max-date"],"dateRangeId":[1,"date-range-id"],"customRangeAllowed":[4,"custom-range-allowed"],"dateRangeOptions":[16],"i18nCustomItem":[1,"i18n-custom-item"],"i18nDone":[1,"i18n-done"],"i18nNoRange":[1,"i18n-no-range"],"today":[1],"selectedDateRangeId":[32],"currentRangeValue":[32],"triggerRef":[32],"getDateRange":[64]},null,{"dateRangeId":["onDateRangeIdChange"],"to":["onDateRangeIdChange"],"from":["onDateRangeIdChange"],"dateRangeOptions":["onDateRangeOptionsChange"]}]]],["p-a643ad05",[[1,"ix-pagination",{"advanced":[4],"itemCount":[2,"item-count"],"showItemCount":[4,"show-item-count"],"count":[2],"selectedPage":[1026,"selected-page"],"i18nPage":[1,"i-1-8n-page"],"i18nOf":[1,"i-1-8n-of"],"i18nItems":[1,"i-1-8n-items"]}]]],["p-f6691728",[[1,"ix-menu-avatar",{"top":[1],"bottom":[1],"image":[1],"initials":[1],"i18nLogout":[1,"i-1-8n-logout"],"showLogoutButton":[4,"show-logout-button"],"showContextMenu":[32]}]]],["p-f8169051",[[1,"ix-card-list",{"label":[1],"collapse":[1028],"listStyle":[1,"list-style"],"maxVisibleCards":[2,"max-visible-cards"],"showAllCount":[2,"show-all-count"],"suppressOverflowHandling":[4,"suppress-overflow-handling"],"i18nShowAll":[1,"i-1-8n-show-all"],"i18nMoreCards":[1,"i-1-8n-more-cards"],"hasOverflowingElements":[32],"numberOfOverflowingElements":[32],"numberOfAllChildElements":[32],"leftScrollDistance":[32],"rightScrollDistance":[32]},[[9,"resize","detectOverflow"]]]]],["p-b62e2edf",[[1,"ix-map-navigation",{"applicationName":[1,"application-name"],"navigationTitle":[1,"navigation-title"],"hideContextMenu":[4,"hide-context-menu"],"isSidebarOpen":[32],"hasContentHeader":[32],"toggleSidebar":[64],"openOverlay":[64],"closeOverlay":[64]}]]],["p-f5af5a9f",[[1,"ix-application-switch-modal",{"config":[16]}]]],["p-4c29feb5",[[1,"ix-basic-navigation",{"applicationName":[1,"application-name"],"hideHeader":[4,"hide-header"],"forceBreakpoint":[1,"force-breakpoint"],"breakpoints":[16],"breakpoint":[32]},null,{"hideHeader":["onHideHeaderChange"],"breakpoints":["onBreakpointsChange"]}]]],["p-cfc7a9ac",[[1,"ix-menu-category",{"label":[1],"icon":[1],"notifications":[2],"menuExpand":[32],"showItems":[32],"showDropdown":[32],"nestedItems":[32]}]]],["p-d59b3f31",[[1,"ix-push-card",{"icon":[1],"notification":[1],"heading":[1],"subheading":[1],"variant":[1],"collapse":[4]}]]],["p-26355e12",[[1,"ix-breadcrumb",{"visibleItemCount":[2,"visible-item-count"],"nextItems":[16],"ghost":[4],"ariaLabelPreviousButton":[1,"aria-label-previous-button"],"previousButtonRef":[32],"nextButtonRef":[32],"items":[32],"isPreviousDropdownExpanded":[32]},null,{"nextItems":["onNextItemsChange"]}]]],["p-6cd2b4d4",[[1,"ix-category-filter",{"disabled":[4],"readonly":[4],"filterState":[16],"placeholder":[1],"categories":[16],"nonSelectableCategories":[16],"suggestions":[16],"icon":[1],"hideIcon":[4,"hide-icon"],"repeatCategories":[4,"repeat-categories"],"tmpDisableScrollIntoView":[4,"tmp-disable-scroll-into-view"],"labelCategories":[1,"label-categories"],"i18nPlainText":[1,"i-1-8n-plain-text"],"showDropdown":[32],"textInput":[32],"hasFocus":[32],"categoryLogicalOperator":[32],"inputValue":[32],"category":[32],"filterTokens":[32]},null,{"filterState":["watchFilterState"]}]]],["p-73d5ea4a",[[1,"ix-dropdown-button",{"variant":[1],"outline":[4],"ghost":[4],"disabled":[4],"label":[1],"icon":[1],"closeBehavior":[8,"close-behavior"],"placement":[1],"dropdownAnchor":[32]}]]],["p-782b33d3",[[1,"ix-group",{"suppressHeaderSelection":[4,"suppress-header-selection"],"header":[1],"subHeader":[1,"sub-header"],"collapsed":[1540],"selected":[1540],"index":[1538],"expandOnHeaderClick":[4,"expand-on-header-click"],"itemSelected":[32],"dropdownTriggerRef":[32],"slotSize":[32],"footerVisible":[32]}]]],["p-6a8d50c3",[[1,"ix-menu",{"showSettings":[1028,"show-settings"],"showAbout":[1028,"show-about"],"enableToggleTheme":[4,"enable-toggle-theme"],"enableSettings":[4,"enable-settings"],"enableMapExpand":[4,"enable-map-expand"],"applicationName":[1,"application-name"],"applicationDescription":[1,"application-description"],"maxVisibleMenuItems":[2,"max-visible-menu-items"],"i18nExpandSidebar":[1,"i-1-8n-expand-sidebar"],"expand":[1540],"pinned":[4],"i18nLegal":[1,"i-1-8n-legal"],"i18nSettings":[1,"i-1-8n-settings"],"i18nToggleTheme":[1,"i-1-8n-toggle-theme"],"i18nExpand":[1,"i-1-8n-expand"],"i18nCollapse":[1,"i-1-8n-collapse"],"showPinned":[32],"mapExpand":[32],"activeTab":[32],"breakpoint":[32],"itemsScrollShadowTop":[32],"itemsScrollShadowBottom":[32],"applicationLayoutContext":[32],"toggleMapExpand":[64],"toggleMenu":[64],"toggleSettings":[64],"toggleAbout":[64]},[[9,"resize","handleOverflowIndicator"],[0,"close","onOverlayClose"]],{"pinned":["pinnedChange"]}]]],["p-fcbe42c4",[[1,"ix-menu-about",{"activeTabLabel":[1025,"active-tab-label"],"label":[1],"show":[4],"items":[32]},null,{"activeTabLabel":["updateTab"]}]]],["p-58f51cce",[[1,"ix-menu-about-news",{"show":[1540],"label":[1],"i18nShowMore":[1,"i-1-8n-show-more"],"aboutItemLabel":[1,"about-item-label"],"offsetBottom":[2,"offset-bottom"],"expanded":[4]}]]],["p-3c6e6130",[[1,"ix-menu-settings",{"activeTabLabel":[1025,"active-tab-label"],"label":[1],"show":[4],"items":[32]},null,{"activeTabLabel":["updateTab"]}]]],["p-d464b60e",[[1,"ix-split-button",{"variant":[1],"outline":[4],"ghost":[4],"label":[1],"icon":[1],"splitIcon":[1,"split-icon"],"disabled":[4],"placement":[1],"toggle":[32]}]]],["p-37d299a4",[[1,"ix-action-card",{"variant":[1],"icon":[1],"heading":[1],"subheading":[1],"selected":[4]}]]],["p-064a1a47",[[1,"ix-content-header",{"variant":[1],"headerTitle":[1,"header-title"],"headerSubtitle":[1,"header-subtitle"],"hasBackButton":[4,"has-back-button"]}]]],["p-988d23ac",[[1,"ix-empty-state",{"layout":[1],"icon":[1],"header":[1],"subHeader":[1,"sub-header"],"action":[1]}]]],["p-8493da96",[[0,"ix-modal-example"]]],["p-1e5e042b",[[1,"ix-pane",{"heading":[1],"variant":[1],"hideOnCollapse":[4,"hide-on-collapse"],"size":[1],"borderless":[4],"expanded":[1028],"composition":[1025],"icon":[1],"ignoreLayoutSettings":[4,"ignore-layout-settings"],"isMobile":[1028,"is-mobile"],"expandIcon":[32],"showContent":[32],"minimizeIcon":[32],"floating":[32],"parentWidthPx":[32],"parentHeightPx":[32]},null,{"isMobile":["onMobileChange"],"composition":["onPositionChange"],"hideOnCollapse":["onHideOnCollapseChange"],"variant":["onVariantChange"],"borderless":["onBorderlessChange"],"expanded":["onExpandedChange"],"parentHeightPx":["onParentSizeChange"],"parentWidthPx":["onParentSizeChange"],"size":["onSizeChange"]}]]],["p-f5a108d5",[[1,"ix-toast-container",{"containerId":[1,"container-id"],"containerClass":[1,"container-class"],"position":[1],"showToast":[64]},null,{"position":["onPositionChange"]}]]],["p-535ee46b",[[1,"ix-chip",{"variant":[513],"active":[4],"closable":[4],"icon":[1],"background":[1],"color":[1],"chipColor":[1,"chip-color"],"outline":[4]}]]],["p-ca53ecd8",[[1,"ix-drawer",{"show":[1028],"closeOnClickOutside":[4,"close-on-click-outside"],"fullHeight":[4,"full-height"],"minWidth":[2,"min-width"],"maxWidth":[2,"max-width"],"width":[8],"toggleDrawer":[64]},null,{"show":["onShowChanged"]}]]],["p-f10824af",[[1,"ix-expanding-search",{"icon":[1],"placeholder":[1],"value":[1025],"fullWidth":[4,"full-width"],"isFieldChanged":[32],"expanded":[32],"hasFocus":[32]}]]],["p-92fc6ba1",[[1,"ix-flip-tile",{"state":[1],"height":[8],"width":[8],"index":[32],"isFlipAnimationActive":[32]}]]],["p-34ccbe57",[[1,"ix-message-bar",{"type":[1],"dismissible":[4],"icon":[32],"color":[32]}]]],["p-0e0e5f67",[[1,"ix-slider",{"step":[2],"min":[2],"max":[2],"value":[2],"marker":[16],"trace":[4],"traceReference":[2,"trace-reference"],"disabled":[4],"error":[8],"rangeInput":[32],"rangeMin":[32],"rangeMax":[32],"rangeTraceReference":[32],"showTooltip":[32]},null,{"showTooltip":["onShowTooltipChange"],"value":["updateRangeVariables"],"max":["updateRangeVariables"],"min":["updateRangeVariables"],"traceReference":["updateRangeVariables"]}]]],["p-ddf93bce",[[1,"ix-upload",{"accept":[1],"multiple":[4],"multiline":[4],"disabled":[4],"state":[1],"selectFileText":[1,"select-file-text"],"loadingText":[1,"loading-text"],"uploadFailedText":[1,"upload-failed-text"],"uploadSuccessText":[1,"upload-success-text"],"i18nUploadFile":[1,"i-1-8n-upload-file"],"i18nUploadDisabled":[1,"i-1-8n-upload-disabled"],"isFileOver":[32],"setFilesToUpload":[64]}]]],["p-b6c75dc3",[[1,"ix-blind",{"collapsed":[1540],"label":[1],"sublabel":[1],"icon":[1],"variant":[1]},null,{"collapsed":["animation"]}]]],["p-14d2576e",[[1,"ix-dropdown-header",{"label":[1]}]]],["p-8be3bc6d",[[1,"ix-icon-toggle-button",{"variant":[1],"outline":[4],"ghost":[4],"icon":[1],"pressed":[4],"size":[1],"disabled":[516],"loading":[4]},null,{"variant":["onVariantChange"],"ghost":["onGhostChange"],"outline":["onOutlineChange"]}]]],["p-fe760d17",[[1,"ix-modal-loading"]]],["p-232bee46",[[1,"ix-split-button-item",{"icon":[1],"label":[1],"getDropdownItemElement":[64]}]]],["p-5d3975c8",[[1,"ix-toggle-button",{"variant":[1],"outline":[4],"ghost":[4],"disabled":[516],"loading":[4],"icon":[1],"pressed":[4]},null,{"variant":["onVariantChange"],"ghost":["onGhostChange"],"outline":["onOutlineChange"]}]]],["p-c0bf9382",[[1,"ix-tree",{"root":[1],"model":[16],"renderItem":[16],"context":[1040]},null,{"model":["modelChange"]}]]],["p-2462fc76",[[1,"ix-application",{"theme":[1],"themeSystemAppearance":[4,"theme-system-appearance"],"forceBreakpoint":[1,"force-breakpoint"],"breakpoints":[16],"appSwitchConfig":[16],"breakpoint":[32],"applicationSidebarSlotted":[32]},null,{"breakpoints":["onBreakpointsChange"],"theme":["changeTheme"],"themeSystemAppearance":["changeTheme"],"appSwitchConfig":["onApplicationSidebarChange"],"applicationSidebarSlotted":["onApplicationSidebarChange"]}]]],["p-5ca2ef74",[[1,"ix-application-sidebar",{"visible":[32]},[[8,"application-sidebar-toggle","listenToggleEvent"]]]]],["p-d277e7e2",[[1,"ix-content",{"isContentHeaderSlotted":[32]}]]],["p-2cdd0028",[[1,"ix-css-grid",{"templates":[16],"currentTemplate":[32]}]]],["p-3c0425f3",[[1,"ix-css-grid-item",{"itemName":[1,"item-name"]}]]],["p-e1b790d3",[[1,"ix-dropdown-quick-actions"]]],["p-81b570f5",[[1,"ix-event-list",{"itemHeight":[8,"item-height"],"compact":[4],"animated":[4],"chevron":[4]},null,{"chevron":["watchChevron"]}]]],["p-4dad31fa",[[1,"ix-event-list-item",{"color":[1],"itemColor":[1,"item-color"],"selected":[4],"disabled":[4],"chevron":[4]},[[1,"click","handleItemClick"]]]]],["p-eb6ea42d",[[1,"ix-flip-tile-content",{"contentVisible":[4,"content-visible"]}]]],["p-db47293b",[[1,"ix-form-field",{"label":[1]}]]],["p-8b51637c",[[1,"ix-input-group",{"inputPaddingLeft":[32],"inputPaddingRight":[32]}]]],["p-42f7289e",[[1,"ix-key-value",{"icon":[1],"label":[1],"labelPosition":[1,"label-position"],"value":[1]}]]],["p-572455df",[[1,"ix-key-value-list",{"striped":[4]}]]],["p-47919d43",[[1,"ix-kpi",{"label":[1],"value":[8],"unit":[1],"state":[1],"orientation":[1]}]]],["p-50f12507",[[1,"ix-link-button",{"disabled":[4],"url":[1],"target":[1]}]]],["p-196d2cef",[[1,"ix-menu-about-item",{"label":[513]},null,{"label":["watchLabel"]}]]],["p-78e332f4",[[1,"ix-menu-settings-item",{"label":[513]},null,{"label":["watchLabel"]}]]],["p-b4e3a4fd",[[1,"ix-modal",{"size":[1],"animation":[4],"backdrop":[4],"closeOnBackdropClick":[4,"close-on-backdrop-click"],"beforeDismiss":[16],"centered":[4],"keyboard":[4],"closeOnEscape":[4,"close-on-escape"],"modalVisible":[32],"showModal":[64],"dismissModal":[64],"closeModal":[64]}]]],["p-5dd97d39",[[1,"ix-modal-footer"]]],["p-75943110",[[1,"ix-pane-layout",{"layout":[1],"variant":[1],"borderless":[4],"isMobile":[32],"paneElements":[32]},[[0,"slotChanged","onSlotChanged"],[0,"hideOnCollapseChanged","onCollapsibleChanged"],[0,"variantChanged","onVariantChanged"]],{"paneElements":["onPaneElementsChange"],"variant":["onVariableChange"],"borderless":["onBorderChange"],"layout":["onLayoutChange"],"isMobile":["onMobileChange"]}]]],["p-9ceabb5f",[[1,"ix-pill",{"variant":[513],"outline":[4],"icon":[1],"background":[1],"color":[1],"pillColor":[1,"pill-color"],"alignLeft":[4,"align-left"]}]]],["p-975cb736",[[2,"ix-playground-internal"]]],["p-3ead4fed",[[1,"ix-tile",{"size":[1],"hasHeaderSlot":[32],"hasFooterSlot":[32]}]]],["p-ab282d03",[[1,"ix-toggle",{"checked":[1540],"disabled":[4],"indeterminate":[1540],"textOn":[1,"text-on"],"textOff":[1,"text-off"],"textIndeterminate":[1,"text-indeterminate"],"hideText":[4,"hide-text"]}]]],["p-f1e94d25",[[1,"ix-validation-tooltip",{"message":[1],"placement":[1],"suppressAutomaticPlacement":[4,"suppress-automatic-placement"],"isInputValid":[32],"tooltipPosition":[32],"arrowPosition":[32]},null,{"isInputValid":["validationChanged"]}]]],["p-31bfd5ff",[[1,"ix-workflow-step",{"vertical":[4],"disabled":[4],"status":[1],"clickable":[4],"selected":[4],"position":[1],"iconName":[32],"iconColor":[32]},null,{"selected":["selectedHandler"],"disabled":["watchPropHandler"],"status":["watchPropHandler"]}]]],["p-da9f8709",[[1,"ix-workflow-steps",{"vertical":[4],"clickable":[4],"selectedIndex":[2,"selected-index"]},[[0,"selectedChanged","onStepSelectionChanged"]]]]],["p-ca8407f5",[[1,"ix-dropdown-item",{"label":[1],"icon":[1],"hover":[4],"disabled":[4],"checked":[4],"isSubMenu":[4,"is-sub-menu"],"suppressChecked":[4,"suppress-checked"],"emitItemClick":[64],"getDropdownItemElement":[64]}]]],["p-1aa9c005",[[1,"ix-dropdown",{"suppressAutomaticPlacement":[4,"suppress-automatic-placement"],"show":[1540],"trigger":[1],"anchor":[1],"closeBehavior":[8,"close-behavior"],"placement":[1],"positioningStrategy":[1,"positioning-strategy"],"header":[1],"offset":[16],"overwriteDropdownStyle":[16],"discoverAllSubmenus":[4,"discover-all-submenus"],"discoverSubmenu":[64],"updatePosition":[64]},[[0,"ix-assign-sub-menu","cacheSubmenuId"]],{"show":["changedShow"],"trigger":["changedTrigger"]}]]],["p-a3431d63",[[1,"ix-icon-button",{"a11yLabel":[1,"a11y-label"],"variant":[1],"outline":[4],"ghost":[4],"oval":[4],"icon":[1],"size":[1],"color":[1],"iconColor":[1,"icon-color"],"disabled":[4],"type":[1],"loading":[4]}],[1,"ix-spinner",{"variant":[1],"size":[1],"hideTrack":[4,"hide-track"]}]]],["p-353e2dd5",[[1,"ix-select",{"selectedIndices":[1025,"selected-indices"],"value":[1025],"allowClear":[4,"allow-clear"],"mode":[1],"editable":[4],"disabled":[4],"readonly":[4],"i18nPlaceholder":[1,"i-1-8n-placeholder"],"i18nPlaceholderEditable":[1,"i-1-8n-placeholder-editable"],"i18nSelectListHeader":[1,"i-1-8n-select-list-header"],"i18nNoMatches":[1,"i-1-8n-no-matches"],"hideListHeader":[4,"hide-list-header"],"dropdownShow":[32],"selectedLabels":[32],"dropdownWrapperRef":[32],"dropdownAnchor":[32],"isDropdownEmpty":[32],"hasFocus":[32],"navigationItem":[32],"inputFilterText":[32],"inputValue":[32]},[[0,"itemClick","onItemClicked"],[0,"ix-select-item:labelChange","onLabelChange"]],{"selectedIndices":["watchSelectedIndices"],"value":["watchValue"]}]]],["p-e1d7c7fa",[[1,"ix-time-picker",{"format":[1],"corners":[1],"standaloneAppearance":[4,"standalone-appearance"],"individual":[4],"showHour":[4,"show-hour"],"showMinutes":[4,"show-minutes"],"showSeconds":[4,"show-seconds"],"time":[1],"showTimeReference":[1028,"show-time-reference"],"timeReference":[1,"time-reference"],"textSelectTime":[1,"text-select-time"],"textTime":[1,"text-time"],"_time":[32],"_timeRef":[32],"_formattedTime":[32],"getCurrentTime":[64]},null,{"time":["watchTimePropHandler"],"_time":["formatTime","onInternalTimeChange"]}]]],["p-27118d3b",[[1,"ix-map-navigation-overlay",{"name":[1],"icon":[1],"color":[1],"iconColor":[1,"icon-color"]}]]],["p-f56686c9",[[1,"ix-toast",{"type":[1],"toastTitle":[1,"toast-title"],"autoCloseDelay":[2,"auto-close-delay"],"autoClose":[4,"auto-close"],"icon":[1],"iconColor":[1,"icon-color"],"progress":[32],"touched":[32]}]]],["p-8b1add8f",[[1,"ix-breadcrumb-item",{"label":[1],"icon":[1],"ghost":[4],"visible":[4],"showChevron":[4,"show-chevron"],"isDropdownTrigger":[4,"is-dropdown-trigger"],"a11y":[32]}]]],["p-3214478e",[[1,"ix-tooltip",{"for":[1],"titleContent":[1,"title-content"],"interactive":[4],"placement":[1],"animationFrame":[4,"animation-frame"],"visible":[32],"showTooltip":[64],"hideTooltip":[64]}]]],["p-f2ee640a",[[1,"ix-tree-item",{"text":[1],"hasChildren":[4,"has-children"],"context":[16]}]]],["p-e23cd82e",[[1,"ix-avatar",{"image":[1],"initials":[1],"username":[1],"extra":[1],"isClosestApplicationHeader":[32],"hasSlottedElements":[32]}],[1,"ix-menu-avatar-item",{"icon":[1],"label":[1],"getDropdownItemElement":[64]}]]],["p-40335e7c",[[1,"ix-application-header",{"name":[1],"breakpoint":[32],"menuExpanded":[32],"suppressResponsive":[32],"hasSlottedElements":[32],"applicationLayoutContext":[32]}]]],["p-d6e7e5da",[[1,"ix-modal-header",{"hideClose":[4,"hide-close"],"icon":[1],"iconColor":[1,"icon-color"]},null,{"icon":["onIconChange"]}],[1,"ix-modal-content"]]],["p-8c01fea2",[[1,"ix-group-context-menu",{"showContextMenu":[32]}],[1,"ix-group-item",{"icon":[1],"text":[1],"secondaryText":[1,"secondary-text"],"suppressSelection":[4,"suppress-selection"],"selected":[4],"focusable":[4],"index":[2]},[[1,"click","clickListen"]]]]],["p-fdccc402",[[1,"ix-card-accordion",{"collapse":[4],"expandContent":[32]},null,{"collapse":["onInitialExpandChange"]}],[1,"ix-card-title"]]],["p-8efe88e8",[[1,"ix-menu-item",{"home":[4],"bottom":[4],"tabIcon":[1025,"tab-icon"],"icon":[1025],"notifications":[2],"active":[4],"disabled":[4],"title":[32]},null,{"icon":["onIconChange"],"tabIcon":["onTabIconChange"]}]]],["p-2deed888",[[1,"ix-divider"]]],["p-0e51828d",[[1,"ix-burger-menu",{"ixAriaLabel":[1,"ix-aria-label"],"expanded":[516],"pinned":[4]}]]],["p-4bb08459",[[1,"ix-tab-item",{"selected":[4],"disabled":[4],"small":[4],"icon":[4],"rounded":[4],"counter":[2],"layout":[1],"placement":[1]}],[1,"ix-tabs",{"small":[4],"rounded":[4],"selected":[1026],"layout":[1],"placement":[1],"totalItems":[32],"currentScrollAmount":[32],"scrollAmount":[32],"scrollActionAmount":[32]},[[9,"resize","onWindowResize"],[0,"tabClick","onTabClick"]]]]],["p-050f482a",[[1,"ix-date-time-card",{"standaloneAppearance":[8,"standalone-appearance"],"individual":[4],"corners":[1]}]]],["p-fc5fd951",[[1,"ix-select-item",{"label":[513],"value":[520],"selected":[4],"hover":[4],"onItemClick":[64]},null,{"label":["labelChange"]}],[1,"ix-filter-chip",{"disabled":[4],"readonly":[4]}]]],["p-75050430",[[1,"ix-card",{"variant":[1],"selected":[4]}],[1,"ix-card-content"]]],["p-f1635e06",[[1,"ix-button",{"variant":[1],"outline":[4],"ghost":[4],"disabled":[516],"type":[1],"loading":[4],"icon":[1],"alignment":[1],"iconSize":[1,"icon-size"]}]]],["p-06b783a7",[[1,"ix-date-picker",{"format":[1],"range":[4],"corners":[1],"from":[1],"to":[1],"minDate":[1,"min-date"],"maxDate":[1,"max-date"],"textSelectDate":[1,"text-select-date"],"i18nDone":[1,"i18n-done"],"weekStartIndex":[2,"week-start-index"],"locale":[1],"individual":[4],"eventDelimiter":[1,"event-delimiter"],"standaloneAppearance":[4,"standalone-appearance"],"today":[1],"currFromDate":[32],"currToDate":[32],"selectedYear":[32],"tempYear":[32],"startYear":[32],"endYear":[32],"selectedMonth":[32],"tempMonth":[32],"dropdownButtonRef":[32],"yearContainerRef":[32],"dayNames":[32],"monthNames":[32],"firstMonthRef":[32],"focusedDay":[32],"focusedDayElem":[32],"getCurrentDate":[64]},null,{"from":["watchFromPropHandler"],"to":["watchToPropHandler"],"locale":["onLocaleChange"]}],[1,"ix-col",{"size":[1],"sizeSm":[1,"size-sm"],"sizeMd":[1,"size-md"],"sizeLg":[1,"size-lg"]},[[9,"resize","onResize"]]],[1,"ix-layout-grid",{"noMargin":[4,"no-margin"],"gap":[1],"columns":[2]}],[1,"ix-row"]]],["p-3bc095f3",[[1,"ix-typography",{"variant":[1],"format":[1],"color":[1],"textColor":[1,"text-color"],"bold":[4],"textDecoration":[1,"text-decoration"]}]]]]'),e)}));
|
|
1
|
+
import{p as e,b as a}from"./p-ea80cb61.js";export{s as setNonce}from"./p-ea80cb61.js";import{g as t}from"./p-737b08c6.js";const i=()=>{const a=import.meta.url;const t={};if(a!==""){t.resourcesUrl=new URL(".",a).href}return e(t)};i().then((async e=>{await t();return a(JSON.parse('[["p-d445b333",[[1,"ix-datetime-picker",{"range":[4],"showHour":[4,"show-hour"],"showMinutes":[4,"show-minutes"],"showSeconds":[4,"show-seconds"],"minDate":[1,"min-date"],"maxDate":[1,"max-date"],"dateFormat":[1,"date-format"],"timeFormat":[1,"time-format"],"from":[1],"to":[1],"time":[1],"showTimeReference":[8,"show-time-reference"],"timeReference":[1,"time-reference"],"textSelectDate":[1,"text-select-date"],"i18nDone":[1,"i18n-done"],"weekStartIndex":[2,"week-start-index"],"locale":[1],"eventDelimiter":[1,"event-delimiter"]}]]],["p-e345d0d2",[[1,"ix-date-dropdown",{"format":[1],"range":[4],"from":[1],"to":[1],"minDate":[1,"min-date"],"maxDate":[1,"max-date"],"dateRangeId":[1,"date-range-id"],"customRangeAllowed":[4,"custom-range-allowed"],"dateRangeOptions":[16],"i18nCustomItem":[1,"i18n-custom-item"],"i18nDone":[1,"i18n-done"],"i18nNoRange":[1,"i18n-no-range"],"today":[1],"selectedDateRangeId":[32],"currentRangeValue":[32],"triggerRef":[32],"getDateRange":[64]},null,{"dateRangeId":["onDateRangeIdChange"],"to":["onDateRangeIdChange"],"from":["onDateRangeIdChange"],"dateRangeOptions":["onDateRangeOptionsChange"]}]]],["p-a643ad05",[[1,"ix-pagination",{"advanced":[4],"itemCount":[2,"item-count"],"showItemCount":[4,"show-item-count"],"count":[2],"selectedPage":[1026,"selected-page"],"i18nPage":[1,"i-1-8n-page"],"i18nOf":[1,"i-1-8n-of"],"i18nItems":[1,"i-1-8n-items"]}]]],["p-f6691728",[[1,"ix-menu-avatar",{"top":[1],"bottom":[1],"image":[1],"initials":[1],"i18nLogout":[1,"i-1-8n-logout"],"showLogoutButton":[4,"show-logout-button"],"showContextMenu":[32]}]]],["p-f8169051",[[1,"ix-card-list",{"label":[1],"collapse":[1028],"listStyle":[1,"list-style"],"maxVisibleCards":[2,"max-visible-cards"],"showAllCount":[2,"show-all-count"],"suppressOverflowHandling":[4,"suppress-overflow-handling"],"i18nShowAll":[1,"i-1-8n-show-all"],"i18nMoreCards":[1,"i-1-8n-more-cards"],"hasOverflowingElements":[32],"numberOfOverflowingElements":[32],"numberOfAllChildElements":[32],"leftScrollDistance":[32],"rightScrollDistance":[32]},[[9,"resize","detectOverflow"]]]]],["p-b62e2edf",[[1,"ix-map-navigation",{"applicationName":[1,"application-name"],"navigationTitle":[1,"navigation-title"],"hideContextMenu":[4,"hide-context-menu"],"isSidebarOpen":[32],"hasContentHeader":[32],"toggleSidebar":[64],"openOverlay":[64],"closeOverlay":[64]}]]],["p-f5af5a9f",[[1,"ix-application-switch-modal",{"config":[16]}]]],["p-4c29feb5",[[1,"ix-basic-navigation",{"applicationName":[1,"application-name"],"hideHeader":[4,"hide-header"],"forceBreakpoint":[1,"force-breakpoint"],"breakpoints":[16],"breakpoint":[32]},null,{"hideHeader":["onHideHeaderChange"],"breakpoints":["onBreakpointsChange"]}]]],["p-cfc7a9ac",[[1,"ix-menu-category",{"label":[1],"icon":[1],"notifications":[2],"menuExpand":[32],"showItems":[32],"showDropdown":[32],"nestedItems":[32]}]]],["p-d59b3f31",[[1,"ix-push-card",{"icon":[1],"notification":[1],"heading":[1],"subheading":[1],"variant":[1],"collapse":[4]}]]],["p-26355e12",[[1,"ix-breadcrumb",{"visibleItemCount":[2,"visible-item-count"],"nextItems":[16],"ghost":[4],"ariaLabelPreviousButton":[1,"aria-label-previous-button"],"previousButtonRef":[32],"nextButtonRef":[32],"items":[32],"isPreviousDropdownExpanded":[32]},null,{"nextItems":["onNextItemsChange"]}]]],["p-6cd2b4d4",[[1,"ix-category-filter",{"disabled":[4],"readonly":[4],"filterState":[16],"placeholder":[1],"categories":[16],"nonSelectableCategories":[16],"suggestions":[16],"icon":[1],"hideIcon":[4,"hide-icon"],"repeatCategories":[4,"repeat-categories"],"tmpDisableScrollIntoView":[4,"tmp-disable-scroll-into-view"],"labelCategories":[1,"label-categories"],"i18nPlainText":[1,"i-1-8n-plain-text"],"showDropdown":[32],"textInput":[32],"hasFocus":[32],"categoryLogicalOperator":[32],"inputValue":[32],"category":[32],"filterTokens":[32]},null,{"filterState":["watchFilterState"]}]]],["p-73d5ea4a",[[1,"ix-dropdown-button",{"variant":[1],"outline":[4],"ghost":[4],"disabled":[4],"label":[1],"icon":[1],"closeBehavior":[8,"close-behavior"],"placement":[1],"dropdownAnchor":[32]}]]],["p-782b33d3",[[1,"ix-group",{"suppressHeaderSelection":[4,"suppress-header-selection"],"header":[1],"subHeader":[1,"sub-header"],"collapsed":[1540],"selected":[1540],"index":[1538],"expandOnHeaderClick":[4,"expand-on-header-click"],"itemSelected":[32],"dropdownTriggerRef":[32],"slotSize":[32],"footerVisible":[32]}]]],["p-6a8d50c3",[[1,"ix-menu",{"showSettings":[1028,"show-settings"],"showAbout":[1028,"show-about"],"enableToggleTheme":[4,"enable-toggle-theme"],"enableSettings":[4,"enable-settings"],"enableMapExpand":[4,"enable-map-expand"],"applicationName":[1,"application-name"],"applicationDescription":[1,"application-description"],"maxVisibleMenuItems":[2,"max-visible-menu-items"],"i18nExpandSidebar":[1,"i-1-8n-expand-sidebar"],"expand":[1540],"pinned":[4],"i18nLegal":[1,"i-1-8n-legal"],"i18nSettings":[1,"i-1-8n-settings"],"i18nToggleTheme":[1,"i-1-8n-toggle-theme"],"i18nExpand":[1,"i-1-8n-expand"],"i18nCollapse":[1,"i-1-8n-collapse"],"showPinned":[32],"mapExpand":[32],"activeTab":[32],"breakpoint":[32],"itemsScrollShadowTop":[32],"itemsScrollShadowBottom":[32],"applicationLayoutContext":[32],"toggleMapExpand":[64],"toggleMenu":[64],"toggleSettings":[64],"toggleAbout":[64]},[[9,"resize","handleOverflowIndicator"],[0,"close","onOverlayClose"]],{"pinned":["pinnedChange"]}]]],["p-fcbe42c4",[[1,"ix-menu-about",{"activeTabLabel":[1025,"active-tab-label"],"label":[1],"show":[4],"items":[32]},null,{"activeTabLabel":["updateTab"]}]]],["p-58f51cce",[[1,"ix-menu-about-news",{"show":[1540],"label":[1],"i18nShowMore":[1,"i-1-8n-show-more"],"aboutItemLabel":[1,"about-item-label"],"offsetBottom":[2,"offset-bottom"],"expanded":[4]}]]],["p-3c6e6130",[[1,"ix-menu-settings",{"activeTabLabel":[1025,"active-tab-label"],"label":[1],"show":[4],"items":[32]},null,{"activeTabLabel":["updateTab"]}]]],["p-d464b60e",[[1,"ix-split-button",{"variant":[1],"outline":[4],"ghost":[4],"label":[1],"icon":[1],"splitIcon":[1,"split-icon"],"disabled":[4],"placement":[1],"toggle":[32]}]]],["p-37d299a4",[[1,"ix-action-card",{"variant":[1],"icon":[1],"heading":[1],"subheading":[1],"selected":[4]}]]],["p-064a1a47",[[1,"ix-content-header",{"variant":[1],"headerTitle":[1,"header-title"],"headerSubtitle":[1,"header-subtitle"],"hasBackButton":[4,"has-back-button"]}]]],["p-988d23ac",[[1,"ix-empty-state",{"layout":[1],"icon":[1],"header":[1],"subHeader":[1,"sub-header"],"action":[1]}]]],["p-8493da96",[[0,"ix-modal-example"]]],["p-1e5e042b",[[1,"ix-pane",{"heading":[1],"variant":[1],"hideOnCollapse":[4,"hide-on-collapse"],"size":[1],"borderless":[4],"expanded":[1028],"composition":[1025],"icon":[1],"ignoreLayoutSettings":[4,"ignore-layout-settings"],"isMobile":[1028,"is-mobile"],"expandIcon":[32],"showContent":[32],"minimizeIcon":[32],"floating":[32],"parentWidthPx":[32],"parentHeightPx":[32]},null,{"isMobile":["onMobileChange"],"composition":["onPositionChange"],"hideOnCollapse":["onHideOnCollapseChange"],"variant":["onVariantChange"],"borderless":["onBorderlessChange"],"expanded":["onExpandedChange"],"parentHeightPx":["onParentSizeChange"],"parentWidthPx":["onParentSizeChange"],"size":["onSizeChange"]}]]],["p-f5a108d5",[[1,"ix-toast-container",{"containerId":[1,"container-id"],"containerClass":[1,"container-class"],"position":[1],"showToast":[64]},null,{"position":["onPositionChange"]}]]],["p-535ee46b",[[1,"ix-chip",{"variant":[513],"active":[4],"closable":[4],"icon":[1],"background":[1],"color":[1],"chipColor":[1,"chip-color"],"outline":[4]}]]],["p-ca53ecd8",[[1,"ix-drawer",{"show":[1028],"closeOnClickOutside":[4,"close-on-click-outside"],"fullHeight":[4,"full-height"],"minWidth":[2,"min-width"],"maxWidth":[2,"max-width"],"width":[8],"toggleDrawer":[64]},null,{"show":["onShowChanged"]}]]],["p-f10824af",[[1,"ix-expanding-search",{"icon":[1],"placeholder":[1],"value":[1025],"fullWidth":[4,"full-width"],"isFieldChanged":[32],"expanded":[32],"hasFocus":[32]}]]],["p-92fc6ba1",[[1,"ix-flip-tile",{"state":[1],"height":[8],"width":[8],"index":[32],"isFlipAnimationActive":[32]}]]],["p-34ccbe57",[[1,"ix-message-bar",{"type":[1],"dismissible":[4],"icon":[32],"color":[32]}]]],["p-0e0e5f67",[[1,"ix-slider",{"step":[2],"min":[2],"max":[2],"value":[2],"marker":[16],"trace":[4],"traceReference":[2,"trace-reference"],"disabled":[4],"error":[8],"rangeInput":[32],"rangeMin":[32],"rangeMax":[32],"rangeTraceReference":[32],"showTooltip":[32]},null,{"showTooltip":["onShowTooltipChange"],"value":["updateRangeVariables"],"max":["updateRangeVariables"],"min":["updateRangeVariables"],"traceReference":["updateRangeVariables"]}]]],["p-ddf93bce",[[1,"ix-upload",{"accept":[1],"multiple":[4],"multiline":[4],"disabled":[4],"state":[1],"selectFileText":[1,"select-file-text"],"loadingText":[1,"loading-text"],"uploadFailedText":[1,"upload-failed-text"],"uploadSuccessText":[1,"upload-success-text"],"i18nUploadFile":[1,"i-1-8n-upload-file"],"i18nUploadDisabled":[1,"i-1-8n-upload-disabled"],"isFileOver":[32],"setFilesToUpload":[64]}]]],["p-b6c75dc3",[[1,"ix-blind",{"collapsed":[1540],"label":[1],"sublabel":[1],"icon":[1],"variant":[1]},null,{"collapsed":["animation"]}]]],["p-14d2576e",[[1,"ix-dropdown-header",{"label":[1]}]]],["p-8be3bc6d",[[1,"ix-icon-toggle-button",{"variant":[1],"outline":[4],"ghost":[4],"icon":[1],"pressed":[4],"size":[1],"disabled":[516],"loading":[4]},null,{"variant":["onVariantChange"],"ghost":["onGhostChange"],"outline":["onOutlineChange"]}]]],["p-fe760d17",[[1,"ix-modal-loading"]]],["p-232bee46",[[1,"ix-split-button-item",{"icon":[1],"label":[1],"getDropdownItemElement":[64]}]]],["p-5d3975c8",[[1,"ix-toggle-button",{"variant":[1],"outline":[4],"ghost":[4],"disabled":[516],"loading":[4],"icon":[1],"pressed":[4]},null,{"variant":["onVariantChange"],"ghost":["onGhostChange"],"outline":["onOutlineChange"]}]]],["p-c0bf9382",[[1,"ix-tree",{"root":[1],"model":[16],"renderItem":[16],"context":[1040]},null,{"model":["modelChange"]}]]],["p-2462fc76",[[1,"ix-application",{"theme":[1],"themeSystemAppearance":[4,"theme-system-appearance"],"forceBreakpoint":[1,"force-breakpoint"],"breakpoints":[16],"appSwitchConfig":[16],"breakpoint":[32],"applicationSidebarSlotted":[32]},null,{"breakpoints":["onBreakpointsChange"],"theme":["changeTheme"],"themeSystemAppearance":["changeTheme"],"appSwitchConfig":["onApplicationSidebarChange"],"applicationSidebarSlotted":["onApplicationSidebarChange"]}]]],["p-5ca2ef74",[[1,"ix-application-sidebar",{"visible":[32]},[[8,"application-sidebar-toggle","listenToggleEvent"]]]]],["p-d277e7e2",[[1,"ix-content",{"isContentHeaderSlotted":[32]}]]],["p-2cdd0028",[[1,"ix-css-grid",{"templates":[16],"currentTemplate":[32]}]]],["p-3c0425f3",[[1,"ix-css-grid-item",{"itemName":[1,"item-name"]}]]],["p-e1b790d3",[[1,"ix-dropdown-quick-actions"]]],["p-81b570f5",[[1,"ix-event-list",{"itemHeight":[8,"item-height"],"compact":[4],"animated":[4],"chevron":[4]},null,{"chevron":["watchChevron"]}]]],["p-4dad31fa",[[1,"ix-event-list-item",{"color":[1],"itemColor":[1,"item-color"],"selected":[4],"disabled":[4],"chevron":[4]},[[1,"click","handleItemClick"]]]]],["p-eb6ea42d",[[1,"ix-flip-tile-content",{"contentVisible":[4,"content-visible"]}]]],["p-db47293b",[[1,"ix-form-field",{"label":[1]}]]],["p-8b51637c",[[1,"ix-input-group",{"inputPaddingLeft":[32],"inputPaddingRight":[32]}]]],["p-42f7289e",[[1,"ix-key-value",{"icon":[1],"label":[1],"labelPosition":[1,"label-position"],"value":[1]}]]],["p-572455df",[[1,"ix-key-value-list",{"striped":[4]}]]],["p-47919d43",[[1,"ix-kpi",{"label":[1],"value":[8],"unit":[1],"state":[1],"orientation":[1]}]]],["p-50f12507",[[1,"ix-link-button",{"disabled":[4],"url":[1],"target":[1]}]]],["p-196d2cef",[[1,"ix-menu-about-item",{"label":[513]},null,{"label":["watchLabel"]}]]],["p-78e332f4",[[1,"ix-menu-settings-item",{"label":[513]},null,{"label":["watchLabel"]}]]],["p-04ba3c79",[[1,"ix-modal",{"size":[1],"animation":[4],"backdrop":[4],"closeOnBackdropClick":[4,"close-on-backdrop-click"],"beforeDismiss":[16],"centered":[4],"keyboard":[4],"closeOnEscape":[4,"close-on-escape"],"modalVisible":[32],"showModal":[64],"dismissModal":[64],"closeModal":[64]}]]],["p-c98d8ec2",[[1,"ix-modal-footer"]]],["p-75943110",[[1,"ix-pane-layout",{"layout":[1],"variant":[1],"borderless":[4],"isMobile":[32],"paneElements":[32]},[[0,"slotChanged","onSlotChanged"],[0,"hideOnCollapseChanged","onCollapsibleChanged"],[0,"variantChanged","onVariantChanged"]],{"paneElements":["onPaneElementsChange"],"variant":["onVariableChange"],"borderless":["onBorderChange"],"layout":["onLayoutChange"],"isMobile":["onMobileChange"]}]]],["p-9ceabb5f",[[1,"ix-pill",{"variant":[513],"outline":[4],"icon":[1],"background":[1],"color":[1],"pillColor":[1,"pill-color"],"alignLeft":[4,"align-left"]}]]],["p-975cb736",[[2,"ix-playground-internal"]]],["p-3ead4fed",[[1,"ix-tile",{"size":[1],"hasHeaderSlot":[32],"hasFooterSlot":[32]}]]],["p-ab282d03",[[1,"ix-toggle",{"checked":[1540],"disabled":[4],"indeterminate":[1540],"textOn":[1,"text-on"],"textOff":[1,"text-off"],"textIndeterminate":[1,"text-indeterminate"],"hideText":[4,"hide-text"]}]]],["p-f1e94d25",[[1,"ix-validation-tooltip",{"message":[1],"placement":[1],"suppressAutomaticPlacement":[4,"suppress-automatic-placement"],"isInputValid":[32],"tooltipPosition":[32],"arrowPosition":[32]},null,{"isInputValid":["validationChanged"]}]]],["p-31bfd5ff",[[1,"ix-workflow-step",{"vertical":[4],"disabled":[4],"status":[1],"clickable":[4],"selected":[4],"position":[1],"iconName":[32],"iconColor":[32]},null,{"selected":["selectedHandler"],"disabled":["watchPropHandler"],"status":["watchPropHandler"]}]]],["p-da9f8709",[[1,"ix-workflow-steps",{"vertical":[4],"clickable":[4],"selectedIndex":[2,"selected-index"]},[[0,"selectedChanged","onStepSelectionChanged"]]]]],["p-ca8407f5",[[1,"ix-dropdown-item",{"label":[1],"icon":[1],"hover":[4],"disabled":[4],"checked":[4],"isSubMenu":[4,"is-sub-menu"],"suppressChecked":[4,"suppress-checked"],"emitItemClick":[64],"getDropdownItemElement":[64]}]]],["p-4ca6beed",[[1,"ix-dropdown",{"suppressAutomaticPlacement":[4,"suppress-automatic-placement"],"show":[1540],"trigger":[1],"anchor":[1],"closeBehavior":[8,"close-behavior"],"placement":[1],"positioningStrategy":[1,"positioning-strategy"],"header":[1],"offset":[16],"overwriteDropdownStyle":[16],"discoverAllSubmenus":[4,"discover-all-submenus"],"discoverSubmenu":[64],"updatePosition":[64]},[[0,"ix-assign-sub-menu","cacheSubmenuId"]],{"show":["changedShow"],"trigger":["changedTrigger"]}]]],["p-a3431d63",[[1,"ix-icon-button",{"a11yLabel":[1,"a11y-label"],"variant":[1],"outline":[4],"ghost":[4],"oval":[4],"icon":[1],"size":[1],"color":[1],"iconColor":[1,"icon-color"],"disabled":[4],"type":[1],"loading":[4]}],[1,"ix-spinner",{"variant":[1],"size":[1],"hideTrack":[4,"hide-track"]}]]],["p-353e2dd5",[[1,"ix-select",{"selectedIndices":[1025,"selected-indices"],"value":[1025],"allowClear":[4,"allow-clear"],"mode":[1],"editable":[4],"disabled":[4],"readonly":[4],"i18nPlaceholder":[1,"i-1-8n-placeholder"],"i18nPlaceholderEditable":[1,"i-1-8n-placeholder-editable"],"i18nSelectListHeader":[1,"i-1-8n-select-list-header"],"i18nNoMatches":[1,"i-1-8n-no-matches"],"hideListHeader":[4,"hide-list-header"],"dropdownShow":[32],"selectedLabels":[32],"dropdownWrapperRef":[32],"dropdownAnchor":[32],"isDropdownEmpty":[32],"hasFocus":[32],"navigationItem":[32],"inputFilterText":[32],"inputValue":[32]},[[0,"itemClick","onItemClicked"],[0,"ix-select-item:labelChange","onLabelChange"]],{"selectedIndices":["watchSelectedIndices"],"value":["watchValue"]}]]],["p-e1d7c7fa",[[1,"ix-time-picker",{"format":[1],"corners":[1],"standaloneAppearance":[4,"standalone-appearance"],"individual":[4],"showHour":[4,"show-hour"],"showMinutes":[4,"show-minutes"],"showSeconds":[4,"show-seconds"],"time":[1],"showTimeReference":[1028,"show-time-reference"],"timeReference":[1,"time-reference"],"textSelectTime":[1,"text-select-time"],"textTime":[1,"text-time"],"_time":[32],"_timeRef":[32],"_formattedTime":[32],"getCurrentTime":[64]},null,{"time":["watchTimePropHandler"],"_time":["formatTime","onInternalTimeChange"]}]]],["p-27118d3b",[[1,"ix-map-navigation-overlay",{"name":[1],"icon":[1],"color":[1],"iconColor":[1,"icon-color"]}]]],["p-f56686c9",[[1,"ix-toast",{"type":[1],"toastTitle":[1,"toast-title"],"autoCloseDelay":[2,"auto-close-delay"],"autoClose":[4,"auto-close"],"icon":[1],"iconColor":[1,"icon-color"],"progress":[32],"touched":[32]}]]],["p-8b1add8f",[[1,"ix-breadcrumb-item",{"label":[1],"icon":[1],"ghost":[4],"visible":[4],"showChevron":[4,"show-chevron"],"isDropdownTrigger":[4,"is-dropdown-trigger"],"a11y":[32]}]]],["p-3214478e",[[1,"ix-tooltip",{"for":[1],"titleContent":[1,"title-content"],"interactive":[4],"placement":[1],"animationFrame":[4,"animation-frame"],"visible":[32],"showTooltip":[64],"hideTooltip":[64]}]]],["p-f2ee640a",[[1,"ix-tree-item",{"text":[1],"hasChildren":[4,"has-children"],"context":[16]}]]],["p-e23cd82e",[[1,"ix-avatar",{"image":[1],"initials":[1],"username":[1],"extra":[1],"isClosestApplicationHeader":[32],"hasSlottedElements":[32]}],[1,"ix-menu-avatar-item",{"icon":[1],"label":[1],"getDropdownItemElement":[64]}]]],["p-40335e7c",[[1,"ix-application-header",{"name":[1],"breakpoint":[32],"menuExpanded":[32],"suppressResponsive":[32],"hasSlottedElements":[32],"applicationLayoutContext":[32]}]]],["p-16d529ee",[[1,"ix-modal-header",{"hideClose":[4,"hide-close"],"icon":[1],"iconColor":[1,"icon-color"]},null,{"icon":["onIconChange"]}],[1,"ix-modal-content"]]],["p-8c01fea2",[[1,"ix-group-context-menu",{"showContextMenu":[32]}],[1,"ix-group-item",{"icon":[1],"text":[1],"secondaryText":[1,"secondary-text"],"suppressSelection":[4,"suppress-selection"],"selected":[4],"focusable":[4],"index":[2]},[[1,"click","clickListen"]]]]],["p-fdccc402",[[1,"ix-card-accordion",{"collapse":[4],"expandContent":[32]},null,{"collapse":["onInitialExpandChange"]}],[1,"ix-card-title"]]],["p-8efe88e8",[[1,"ix-menu-item",{"home":[4],"bottom":[4],"tabIcon":[1025,"tab-icon"],"icon":[1025],"notifications":[2],"active":[4],"disabled":[4],"title":[32]},null,{"icon":["onIconChange"],"tabIcon":["onTabIconChange"]}]]],["p-2deed888",[[1,"ix-divider"]]],["p-0e51828d",[[1,"ix-burger-menu",{"ixAriaLabel":[1,"ix-aria-label"],"expanded":[516],"pinned":[4]}]]],["p-4bb08459",[[1,"ix-tab-item",{"selected":[4],"disabled":[4],"small":[4],"icon":[4],"rounded":[4],"counter":[2],"layout":[1],"placement":[1]}],[1,"ix-tabs",{"small":[4],"rounded":[4],"selected":[1026],"layout":[1],"placement":[1],"totalItems":[32],"currentScrollAmount":[32],"scrollAmount":[32],"scrollActionAmount":[32]},[[9,"resize","onWindowResize"],[0,"tabClick","onTabClick"]]]]],["p-050f482a",[[1,"ix-date-time-card",{"standaloneAppearance":[8,"standalone-appearance"],"individual":[4],"corners":[1]}]]],["p-fc5fd951",[[1,"ix-select-item",{"label":[513],"value":[520],"selected":[4],"hover":[4],"onItemClick":[64]},null,{"label":["labelChange"]}],[1,"ix-filter-chip",{"disabled":[4],"readonly":[4]}]]],["p-75050430",[[1,"ix-card",{"variant":[1],"selected":[4]}],[1,"ix-card-content"]]],["p-f1635e06",[[1,"ix-button",{"variant":[1],"outline":[4],"ghost":[4],"disabled":[516],"type":[1],"loading":[4],"icon":[1],"alignment":[1],"iconSize":[1,"icon-size"]}]]],["p-06b783a7",[[1,"ix-date-picker",{"format":[1],"range":[4],"corners":[1],"from":[1],"to":[1],"minDate":[1,"min-date"],"maxDate":[1,"max-date"],"textSelectDate":[1,"text-select-date"],"i18nDone":[1,"i18n-done"],"weekStartIndex":[2,"week-start-index"],"locale":[1],"individual":[4],"eventDelimiter":[1,"event-delimiter"],"standaloneAppearance":[4,"standalone-appearance"],"today":[1],"currFromDate":[32],"currToDate":[32],"selectedYear":[32],"tempYear":[32],"startYear":[32],"endYear":[32],"selectedMonth":[32],"tempMonth":[32],"dropdownButtonRef":[32],"yearContainerRef":[32],"dayNames":[32],"monthNames":[32],"firstMonthRef":[32],"focusedDay":[32],"focusedDayElem":[32],"getCurrentDate":[64]},null,{"from":["watchFromPropHandler"],"to":["watchToPropHandler"],"locale":["onLocaleChange"]}],[1,"ix-col",{"size":[1],"sizeSm":[1,"size-sm"],"sizeMd":[1,"size-md"],"sizeLg":[1,"size-lg"]},[[9,"resize","onResize"]]],[1,"ix-layout-grid",{"noMargin":[4,"no-margin"],"gap":[1],"columns":[2]}],[1,"ix-row"]]],["p-3bc095f3",[[1,"ix-typography",{"variant":[1],"format":[1],"color":[1],"textColor":[1,"text-color"],"bold":[4],"textDecoration":[1,"text-decoration"]}]]]]'),e)}));
|
|
2
2
|
//# sourceMappingURL=siemens-ix.esm.js.map
|
package/package.json
CHANGED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r,h as e,H as o}from"./p-ea80cb61.js";const t=":host{display:flex;padding:0.625rem;padding-top:1.5rem;justify-content:flex-end;align-items:center;gap:0.5rem;align-self:stretch}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}";const a=t;const s=class{constructor(e){r(this,e)}render(){return e(o,{key:"62e35b423b00c0ad75954e735188dce705f7ff3e"},e("slot",{key:"29a2a22875ae6197dab3c056329125dcefe70032"}))}};s.style=a;export{s as ix_modal_footer};
|
|
2
|
-
//# sourceMappingURL=p-5dd97d39.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["modalFooterCss","IxModalFooterStyle0","ModalFooter","render","h","Host","key"],"sources":["src/components/modal-footer/modal-footer.scss?tag=ix-modal-footer&encapsulation=shadow","src/components/modal-footer/modal-footer.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n display: flex;\n padding: 0.625rem;\n padding-top: 1.5rem;\n justify-content: flex-end;\n align-items: center;\n gap: 0.5rem;\n align-self: stretch;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host } from '@stencil/core';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-modal-footer',\n styleUrl: 'modal-footer.scss',\n shadow: true,\n})\nexport class ModalFooter {\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"6CAAA,MAAMA,EAAiB,guBACvB,MAAAC,EAAeD,E,MCkBFE,EAAW,M,yBACtB,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,QAAAE,IAAA,6C"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as t,c as e,h as i,H as o,g as s}from"./p-ea80cb61.js";import{a}from"./p-810b5232.js";import{b as l,a as r}from"./p-4f8ac3bf.js";import{A as n}from"./p-46a6cd9d.js";import{O as d}from"./p-6e5beede.js";function h(t,e,i=3e3){return new Promise(((o,s)=>{const a=Date.now();const l=()=>{const r=e.querySelector(t);if(r){o(r)}else{if(Date.now()-a<i){setTimeout(l)}else{s()}}};l()}))}const c="::backdrop{--ix-dialog-backdrop:var(--theme-color-lightbox, #0000008c)}:focus-visible{outline:none !important}:host{display:none}:host dialog{margin:0;left:50%}:host dialog::backdrop{-webkit-backdrop-filter:blur(2.7182817459px);backdrop-filter:blur(2.7182817459px)}:host .modal{display:flex;flex-direction:column;position:relative;border:none;border-radius:var(--theme-default-border-radius);background:var(--theme-modal--background);box-shadow:var(--theme-shadow-4);color:var(--theme-color-std-text);overflow:visible;max-height:80vh;pointer-events:all}:host .modal-size-360{width:22.5rem}:host .modal-size-480{width:30rem}:host .modal-size-600{width:37.5rem}:host .modal-size-720{width:45rem}:host .modal-size-840{width:52.5rem}:host .modal-size-full-width{width:95%}:host .modal-size-full-screen{left:0px !important;top:0px !important;transform:none !important;width:calc(100% - 28px);min-width:calc(100% - 28px);max-width:calc(100% - 28px);height:calc(100% - 28px);min-height:calc(100% - 28px);max-height:calc(100% - 28px)}:host .dialog-backdrop{display:block;position:fixed;width:100vw;height:100vh;top:0px;left:0px;pointer-events:none}:host ::slotted(ix-modal-footer){margin-top:auto}:host(.visible){display:block}:host(.align-center) dialog{margin:0;left:50%;top:50%}:host(.no-backdrop) dialog::backdrop{background-color:transparent !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important}:host(.with-icon) ::slotted(ix-modal-footer),:host(.with-icon) ::slotted(ix-modal-content){margin-left:2.5rem}";const f=c;var m=undefined&&undefined.__decorate||function(t,e,i,o){var s=arguments.length,a=s<3?e:o===null?o=Object.getOwnPropertyDescriptor(e,i):o,l;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")a=Reflect.decorate(t,e,i,o);else for(var r=t.length-1;r>=0;r--)if(l=t[r])a=(s<3?l(a):s>3?l(e,i,a):l(e,i))||a;return s>3&&a&&Object.defineProperty(e,i,a),a};const p=class{constructor(i){t(this,i);this.dialogClose=e(this,"dialogClose",7);this.dialogDismiss=e(this,"dialogDismiss",7);this.ariaAttributes={};this.size="360";this.animation=true;this.backdrop=true;this.closeOnBackdropClick=false;this.beforeDismiss=undefined;this.centered=false;this.keyboard=true;this.closeOnEscape=true;this.modalVisible=false}onKey(t){if(t.key==="Escape"){t.preventDefault()}}get dialog(){return this.hostElement.shadowRoot.querySelector("dialog")}slideInModal(){const t=this.animation?n.mediumTime:0;let e=this.centered?"-50%":40;a({targets:this.dialog,duration:t,opacity:[0,1],translateY:[0,e],translateX:["-50%","-50%"],easing:"easeOutSine"})}slideOutModal(t){const e=this.animation?n.mediumTime:0;let i=this.centered?"-50%":40;a({targets:this.dialog,duration:e,opacity:[1,0],translateY:[i,0],translateX:["-50%","-50%"],easing:"easeInSine",complete:()=>{if(t){t()}}})}onModalClick(t){if(t.target!==this.dialog){return}const e=this.dialog.getBoundingClientRect();const i=e.top<=t.clientY&&t.clientY<=e.top+e.height&&e.left<=t.clientX&&t.clientX<=e.left+e.width;if(!i&&this.closeOnBackdropClick){this.dismissModal()}}async showModal(){try{const t=await h("dialog",this.hostElement.shadowRoot);this.modalVisible=true;t.showModal()}catch(t){console.error("HTMLDialogElement not existing")}}async dismissModal(t){let e=true;if(this.beforeDismiss!==undefined){e=await this.beforeDismiss(t)}if(!e){return}this.slideOutModal((()=>{this.modalVisible=false;this.dialog.close(JSON.stringify({type:"dismiss",reason:t},null,2));this.dialogDismiss.emit(t)}))}async closeModal(t){this.slideOutModal((()=>{this.dialog.close(JSON.stringify({type:"close",reason:t},null,2));this.dialogClose.emit(t)}))}componentDidLoad(){this.slideInModal()}componentWillLoad(){this.ariaAttributes=l(this.hostElement)}render(){return i(o,{key:"185b4d7fdc54c5657f7a1b11f08ff0e53114f633",class:{visible:this.modalVisible,"no-backdrop":this.backdrop===false,"align-center":this.centered}},i("div",{key:"455364c00c366ae949cbaab74a9d7c47c3c822f1",class:"dialog-backdrop"},i("dialog",{key:"6603b83c715d18aa0f7aa32524e82ff01453235d","aria-modal":r(true),"aria-describedby":this.ariaAttributes["aria-describedby"],"aria-labelledby":this.ariaAttributes["aria-labelledby"],class:{modal:true,[`modal-size-${this.size}`]:true},onClose:()=>this.dismissModal(),onClick:t=>this.onModalClick(t),onCancel:t=>{t.preventDefault();this.dismissModal()}},i("slot",{key:"b5d0d5a56fa225d229822c4c6a00376f2a73f03c"}))))}get hostElement(){return s(this)}};m([d("keydown",(t=>!t.closeOnEscape||!t.keyboard))],p.prototype,"onKey",null);p.style=f;export{p as ix_modal};
|
|
2
|
-
//# sourceMappingURL=p-b4e3a4fd.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["waitForElement","selector","doc","timeout","Promise","resolve","reject","startTime","Date","now","checkIfElementExist","dialog","querySelector","setTimeout","modalCss","IxModalStyle0","Modal","this","ariaAttributes","onKey","e","key","preventDefault","hostElement","shadowRoot","slideInModal","duration","animation","Animation","mediumTime","transformY","centered","anime","targets","opacity","translateY","translateX","easing","slideOutModal","completeCallback","complete","onModalClick","event","target","rect","getBoundingClientRect","isClickOutside","top","clientY","height","left","clientX","width","closeOnBackdropClick","dismissModal","showModal","modalVisible","console","error","reason","allowDismiss","beforeDismiss","undefined","close","JSON","stringify","type","dialogDismiss","emit","closeModal","dialogClose","componentDidLoad","componentWillLoad","a11yHostAttributes","render","h","Host","class","visible","backdrop","a11yBoolean","modal","size","onClose","onClick","onCancel","__decorate","OnListener","self","closeOnEscape","keyboard"],"sources":["src/components/utils/waitForElement.ts","src/components/modal/modal.scss?tag=ix-modal&encapsulation=shadow","src/components/modal/modal.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nexport function waitForElement<R extends HTMLElement>(\n selector: string,\n doc: any,\n timeout = 3000\n): Promise<R> {\n return new Promise<R>((resolve, reject) => {\n const startTime = Date.now();\n\n const checkIfElementExist = () => {\n const dialog = doc.querySelector(selector) satisfies R;\n\n if (dialog) {\n resolve(dialog);\n } else {\n if (Date.now() - startTime < timeout) {\n setTimeout(checkIfElementExist);\n } else {\n reject();\n }\n }\n };\n\n checkIfElementExist();\n });\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n::backdrop {\n --ix-dialog-backdrop: var(--theme-color-lightbox, #0000008c);\n}\n\n:focus-visible {\n outline: none !important;\n}\n\n:host {\n display: none;\n\n dialog {\n margin: 0;\n left: 50%;\n }\n\n dialog::backdrop {\n backdrop-filter: blur(2.7182817459106445px);\n }\n\n .modal {\n display: flex;\n flex-direction: column;\n position: relative;\n border: none;\n border-radius: var(--theme-default-border-radius);\n background: var(--theme-modal--background);\n box-shadow: var(--theme-shadow-4);\n color: var(--theme-color-std-text);\n overflow: visible;\n max-height: 80vh;\n pointer-events: all;\n }\n\n .modal-size-360 {\n width: 22.5rem;\n }\n\n .modal-size-480 {\n width: 30rem;\n }\n\n .modal-size-600 {\n width: 37.5rem;\n }\n\n .modal-size-720 {\n width: 45rem;\n }\n\n .modal-size-840 {\n width: 52.5rem;\n }\n\n .modal-size-full-width {\n width: 95%;\n }\n\n .modal-size-full-screen {\n left: 0px !important;\n top: 0px !important;\n transform: none !important;\n\n width: calc(100% - 28px);\n min-width: calc(100% - 28px);\n max-width: calc(100% - 28px);\n\n height: calc(100% - 28px);\n min-height: calc(100% - 28px);\n max-height: calc(100% - 28px);\n }\n\n .dialog-backdrop {\n display: block;\n position: fixed;\n width: 100vw;\n height: 100vh;\n top: 0px;\n left: 0px;\n\n pointer-events: none;\n }\n\n ::slotted(ix-modal-footer) {\n margin-top: auto;\n }\n}\n\n:host(.visible) {\n display: block;\n}\n\n:host(.align-center) {\n dialog {\n margin: 0;\n left: 50%;\n top: 50%;\n }\n}\n\n:host(.no-backdrop) {\n dialog::backdrop {\n background-color: transparent !important;\n backdrop-filter: none !important;\n }\n}\n\n:host(.with-icon) {\n ::slotted(ix-modal-footer),\n ::slotted(ix-modal-content) {\n margin-left: 2.5rem;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport anime from 'animejs';\nimport { A11yAttributes, a11yBoolean, a11yHostAttributes } from '../utils/a11y';\nimport Animation from '../utils/animation';\nimport { OnListener } from '../utils/listener';\nimport { waitForElement } from '../utils/waitForElement';\n\nexport type IxModalFixedSize = '360' | '480' | '600' | '720' | '840';\nexport type IxModalDynamicSize = 'full-width' | 'full-screen';\nexport type IxModalSize = IxModalFixedSize | IxModalDynamicSize;\n\n@Component({\n tag: 'ix-modal',\n styleUrl: 'modal.scss',\n shadow: true,\n})\nexport class Modal {\n private ariaAttributes: A11yAttributes = {};\n\n @Element() hostElement!: HTMLIxModalElement;\n\n /**\n * Modal size\n *\n * @since 2.0.0\n */\n @Prop() size: IxModalSize = '360';\n\n /**\n * Should the modal be animated\n */\n @Prop() animation = true;\n\n /**\n * Show a backdrop behind the modal dialog\n */\n @Prop() backdrop = true;\n\n /**\n * Dismiss modal on backdrop click\n *\n * @since 2.0.0\n */\n @Prop() closeOnBackdropClick = false;\n\n /**\n * Is called before the modal is dismissed.\n *\n * - Return `true` to proceed in dismissing the modal\n * - Return `false` to abort in dismissing the modal\n */\n @Prop() beforeDismiss: (reason?: any) => boolean | Promise<boolean>;\n\n /**\n * Centered modal\n */\n @Prop() centered = false;\n\n /**\n * Use ESC to dismiss the modal\n * @deprecated - Use closeOnEscape instead\n */\n @Prop() keyboard = true;\n\n /**\n * If set to true the modal can be closed by pressing the Escape key\n */\n @Prop() closeOnEscape = true;\n\n /**\n * Dialog close\n */\n @Event() dialogClose: EventEmitter;\n\n /**\n * Dialog cancel\n */\n @Event() dialogDismiss: EventEmitter;\n\n @State() modalVisible = false;\n\n @OnListener<Modal>('keydown', (self) => !self.closeOnEscape || !self.keyboard)\n onKey(e: KeyboardEvent) {\n if (e.key === 'Escape') {\n e.preventDefault();\n }\n }\n\n get dialog() {\n return this.hostElement.shadowRoot.querySelector('dialog');\n }\n\n private slideInModal() {\n const duration = this.animation ? Animation.mediumTime : 0;\n\n let transformY = this.centered ? '-50%' : 40;\n\n anime({\n targets: this.dialog,\n duration,\n opacity: [0, 1],\n translateY: [0, transformY],\n translateX: ['-50%', '-50%'],\n easing: 'easeOutSine',\n });\n }\n\n private slideOutModal(completeCallback: Function) {\n const duration = this.animation ? Animation.mediumTime : 0;\n\n let transformY = this.centered ? '-50%' : 40;\n\n anime({\n targets: this.dialog,\n duration,\n opacity: [1, 0],\n translateY: [transformY, 0],\n translateX: ['-50%', '-50%'],\n easing: 'easeInSine',\n complete: () => {\n if (completeCallback) {\n completeCallback();\n }\n },\n });\n }\n\n private onModalClick(event: MouseEvent) {\n if (event.target !== this.dialog) {\n return;\n }\n\n const rect = this.dialog.getBoundingClientRect();\n const isClickOutside =\n rect.top <= event.clientY &&\n event.clientY <= rect.top + rect.height &&\n rect.left <= event.clientX &&\n event.clientX <= rect.left + rect.width;\n\n if (!isClickOutside && this.closeOnBackdropClick) {\n this.dismissModal();\n }\n }\n\n /**\n * Show the dialog\n */\n @Method()\n async showModal() {\n try {\n const dialog = await waitForElement<HTMLDialogElement>(\n 'dialog',\n this.hostElement.shadowRoot\n );\n this.modalVisible = true;\n dialog.showModal();\n } catch (e) {\n console.error('HTMLDialogElement not existing');\n }\n }\n\n /**\n * Dismiss the dialog\n */\n @Method()\n async dismissModal<T = any>(reason?: T) {\n let allowDismiss = true;\n\n if (this.beforeDismiss !== undefined) {\n allowDismiss = await this.beforeDismiss(reason);\n }\n if (!allowDismiss) {\n return;\n }\n\n this.slideOutModal(() => {\n this.modalVisible = false;\n this.dialog.close(\n JSON.stringify(\n {\n type: 'dismiss',\n reason,\n },\n null,\n 2\n )\n );\n\n this.dialogDismiss.emit(reason);\n });\n }\n\n /**\n * Close the dialog\n */\n @Method()\n async closeModal<T = any>(reason: T) {\n this.slideOutModal(() => {\n this.dialog.close(\n JSON.stringify(\n {\n type: 'close',\n reason,\n },\n null,\n 2\n )\n );\n\n this.dialogClose.emit(reason);\n });\n }\n\n componentDidLoad() {\n this.slideInModal();\n }\n\n componentWillLoad() {\n this.ariaAttributes = a11yHostAttributes(this.hostElement);\n }\n\n render() {\n return (\n <Host\n class={{\n visible: this.modalVisible,\n 'no-backdrop': this.backdrop === false,\n 'align-center': this.centered,\n }}\n >\n <div class=\"dialog-backdrop\">\n <dialog\n aria-modal={a11yBoolean(true)}\n aria-describedby={this.ariaAttributes['aria-describedby']}\n aria-labelledby={this.ariaAttributes['aria-labelledby']}\n class={{\n modal: true,\n [`modal-size-${this.size}`]: true,\n }}\n onClose={() => this.dismissModal()}\n onClick={(event) => this.onModalClick(event)}\n onCancel={(e) => {\n e.preventDefault();\n this.dismissModal();\n }}\n >\n <slot></slot>\n </dialog>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r,h as o,H as t,c as e,g as s}from"./p-ea80cb61.js";import{a}from"./p-712e0ee0.js";const c=":host{display:block;position:relative;overflow:auto;padding:0.125rem 0.625rem 0.125rem 0.625rem}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}";const i=c;const l=class{constructor(o){r(this,o)}render(){return o(t,{key:"7d65ee586b3d78c89cc6f6a90689eaa1d98f4ec2"},o("slot",{key:"a2cb0a30400cf62e782a0fbb9e2926f4127ace4f"}))}};l.style=i;const h=":host{display:flex;padding:2px 16px 16px 10px;align-items:center;align-self:stretch}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .modal-close{margin-left:auto;margin-right:-20px}:host .modal-icon{margin-right:1rem}";const b=h;const n=class{constructor(o){r(this,o);this.closeClick=e(this,"closeClick",7);this.hideClose=false;this.icon=undefined;this.iconColor=undefined}onIconChange(r){if(this.parentDialog){if(r){this.parentDialog.classList.add("with-icon")}else{this.parentDialog.classList.remove("with-icon")}}}componentDidLoad(){this.parentDialog=a(this.hostElement,"ix-modal");this.onIconChange(this.icon)}onCloseClick(r){const o=this.closeClick.emit(r);if(o.defaultPrevented||r.defaultPrevented){return}this.parentDialog.dismissModal()}render(){return o(t,{key:"93f0022e034724d55e1ef5d158e26c3c52f187ea"},this.icon?o("ix-icon",{class:"modal-icon",name:this.icon,color:this.iconColor}):null,o("ix-typography",{key:"da388b084f8a380c731a45ae72d9b40fce7b2ef5",variant:"default-title"},o("slot",{key:"425ec3dd532be2169aa3782e01e923c0518646bb"})),!this.hideClose?o("ix-icon-button",{onClick:r=>this.onCloseClick(r),ghost:true,icon:"close",class:"modal-close"}):null)}get hostElement(){return s(this)}static get watchers(){return{icon:["onIconChange"]}}};n.style=b;export{l as ix_modal_content,n as ix_modal_header};
|
|
2
|
-
//# sourceMappingURL=p-d6e7e5da.entry.js.map
|