@siemens/ix 1.5.0-beta.0 → 1.5.0-beta.1
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/dist/cjs/index-478a4b66.js +8 -0
- package/dist/cjs/index.cjs.js +12 -0
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/ix-blind.cjs.entry.js +6 -3
- package/dist/cjs/ix-blind.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-breadcrumb_2.cjs.entry.js +1 -1
- package/dist/cjs/ix-breadcrumb_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-category-filter.cjs.entry.js +2 -2
- package/dist/cjs/ix-category-filter.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-chip.cjs.entry.js +6 -1
- package/dist/cjs/ix-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-dropdown_2.cjs.entry.js +1 -1
- package/dist/cjs/ix-dropdown_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-filter-chip.cjs.entry.js +2 -2
- package/dist/cjs/ix-filter-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-flip-tile_2.cjs.entry.js +11 -2
- package/dist/cjs/ix-flip-tile_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-index-button.cjs.entry.js +28 -0
- package/dist/cjs/ix-index-button.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-input-group.cjs.entry.js +1 -1
- package/dist/cjs/ix-input-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-menu_9.cjs.entry.js +1 -1
- package/dist/cjs/ix-menu_9.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-pagination.cjs.entry.js +115 -0
- package/dist/cjs/ix-pagination.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-select_2.cjs.entry.js +3 -3
- package/dist/cjs/ix-select_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-toast_2.cjs.entry.js +10 -1
- package/dist/cjs/ix-toast_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-tooltip.cjs.entry.js +31 -27
- package/dist/cjs/ix-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-tree_2.cjs.entry.js +4 -0
- package/dist/cjs/ix-tree_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-upload.cjs.entry.js +8 -23
- package/dist/cjs/ix-upload.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-workflow-step_2.cjs.entry.js +1 -1
- package/dist/cjs/ix-workflow-step_2.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/siemens-ix.cjs.js +1 -1
- package/dist/cjs/upload-file-state-a79acf2b.js +19 -0
- package/dist/cjs/upload-file-state-a79acf2b.js.map +1 -0
- package/dist/collection/collection-manifest.json +2 -0
- package/dist/collection/components/blind/blind.css +12 -6
- package/dist/collection/components/blind/blind.js +25 -2
- package/dist/collection/components/blind/blind.js.map +1 -1
- package/dist/collection/components/breadcrumb/breadcrumb.css +1 -2
- package/dist/collection/components/category-filter/category-filter.js +2 -2
- package/dist/collection/components/category-filter/category-filter.js.map +1 -1
- package/dist/collection/components/chip/chip.js +27 -2
- package/dist/collection/components/chip/chip.js.map +1 -1
- package/dist/collection/components/dropdown-item/dropdown-item.js +1 -1
- package/dist/collection/components/dropdown-item/dropdown-item.js.map +1 -1
- package/dist/collection/components/filter-chip/filter-chip.css +14 -7
- package/dist/collection/components/filter-chip/filter-chip.js +1 -1
- package/dist/collection/components/filter-chip/filter-chip.js.map +1 -1
- package/dist/collection/components/flip-tile/flip-tile.css +0 -4
- package/dist/collection/components/flip-tile/flip-tile.js +56 -2
- package/dist/collection/components/flip-tile/flip-tile.js.map +1 -1
- package/dist/collection/components/index-button/index-button.css +31 -0
- package/dist/collection/components/index-button/index-button.js +83 -0
- package/dist/collection/components/index-button/index-button.js.map +1 -0
- package/dist/collection/components/input-group/input-group.css +3 -0
- package/dist/collection/components/menu-item/menu-item.css +15 -10
- package/dist/collection/components/pagination/pagination.css +58 -0
- package/dist/collection/components/pagination/pagination.js +303 -0
- package/dist/collection/components/pagination/pagination.js.map +1 -0
- package/dist/collection/components/select/select.js +3 -3
- package/dist/collection/components/select/select.js.map +1 -1
- package/dist/collection/components/toast/toast-container.js +16 -4
- package/dist/collection/components/toast/toast-container.js.map +1 -1
- package/dist/collection/components/toast/toast-utils.js +4 -1
- package/dist/collection/components/toast/toast-utils.js.map +1 -1
- package/dist/collection/components/tooltip/tooltip.css +8 -7
- package/dist/collection/components/tooltip/tooltip.js +31 -27
- package/dist/collection/components/tooltip/tooltip.js.map +1 -1
- package/dist/collection/components/tree/tree.js +38 -0
- package/dist/collection/components/tree/tree.js.map +1 -1
- package/dist/collection/components/workflow-step/workflow-step.css +1 -0
- package/dist/collection/index.js +1 -0
- package/dist/collection/index.js.map +1 -1
- package/dist/components/dropdown-item.js +1 -1
- package/dist/components/dropdown-item.js.map +1 -1
- package/dist/components/filter-chip.js +2 -2
- package/dist/components/filter-chip.js.map +1 -1
- package/dist/components/index-button.js +41 -0
- package/dist/components/index-button.js.map +1 -0
- package/dist/components/index.js +5 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/ix-blind.js +15 -5
- package/dist/components/ix-blind.js.map +1 -1
- package/dist/components/ix-breadcrumb.js +1 -1
- package/dist/components/ix-breadcrumb.js.map +1 -1
- package/dist/components/ix-category-filter.js +2 -2
- package/dist/components/ix-category-filter.js.map +1 -1
- package/dist/components/ix-chip.js +6 -1
- package/dist/components/ix-chip.js.map +1 -1
- package/dist/components/ix-flip-tile.js +13 -2
- package/dist/components/ix-flip-tile.js.map +1 -1
- package/dist/components/ix-index-button.d.ts +11 -0
- package/dist/components/ix-index-button.js +8 -0
- package/dist/components/ix-index-button.js.map +1 -0
- package/dist/components/ix-input-group.js +1 -1
- package/dist/components/ix-input-group.js.map +1 -1
- package/dist/components/ix-pagination.d.ts +11 -0
- package/dist/components/ix-pagination.js +185 -0
- package/dist/components/ix-pagination.js.map +1 -0
- package/dist/components/ix-select.js +1 -341
- package/dist/components/ix-select.js.map +1 -1
- package/dist/components/ix-toast-container.js +10 -1
- package/dist/components/ix-toast-container.js.map +1 -1
- package/dist/components/ix-tooltip.js +32 -28
- package/dist/components/ix-tooltip.js.map +1 -1
- package/dist/components/ix-tree.js +4 -0
- package/dist/components/ix-tree.js.map +1 -1
- package/dist/components/ix-upload.js +1 -16
- package/dist/components/ix-upload.js.map +1 -1
- package/dist/components/ix-workflow-step.js +1 -1
- package/dist/components/ix-workflow-step.js.map +1 -1
- package/dist/components/menu-item.js +1 -1
- package/dist/components/menu-item.js.map +1 -1
- package/dist/components/select.js +345 -0
- package/dist/components/select.js.map +1 -0
- package/dist/components/upload-file-state.js +19 -0
- package/dist/components/upload-file-state.js.map +1 -0
- package/dist/esm/index-3d163acd.js +8 -0
- package/dist/esm/index.js +5 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/ix-blind.entry.js +6 -3
- package/dist/esm/ix-blind.entry.js.map +1 -1
- package/dist/esm/ix-breadcrumb_2.entry.js +1 -1
- package/dist/esm/ix-breadcrumb_2.entry.js.map +1 -1
- package/dist/esm/ix-category-filter.entry.js +2 -2
- package/dist/esm/ix-category-filter.entry.js.map +1 -1
- package/dist/esm/ix-chip.entry.js +6 -1
- package/dist/esm/ix-chip.entry.js.map +1 -1
- package/dist/esm/ix-dropdown_2.entry.js +1 -1
- package/dist/esm/ix-dropdown_2.entry.js.map +1 -1
- package/dist/esm/ix-filter-chip.entry.js +2 -2
- package/dist/esm/ix-filter-chip.entry.js.map +1 -1
- package/dist/esm/ix-flip-tile_2.entry.js +11 -2
- package/dist/esm/ix-flip-tile_2.entry.js.map +1 -1
- package/dist/esm/ix-index-button.entry.js +24 -0
- package/dist/esm/ix-index-button.entry.js.map +1 -0
- package/dist/esm/ix-input-group.entry.js +1 -1
- package/dist/esm/ix-input-group.entry.js.map +1 -1
- package/dist/esm/ix-menu_9.entry.js +1 -1
- package/dist/esm/ix-menu_9.entry.js.map +1 -1
- package/dist/esm/ix-pagination.entry.js +111 -0
- package/dist/esm/ix-pagination.entry.js.map +1 -0
- package/dist/esm/ix-select_2.entry.js +3 -3
- package/dist/esm/ix-select_2.entry.js.map +1 -1
- package/dist/esm/ix-toast_2.entry.js +10 -1
- package/dist/esm/ix-toast_2.entry.js.map +1 -1
- package/dist/esm/ix-tooltip.entry.js +32 -28
- package/dist/esm/ix-tooltip.entry.js.map +1 -1
- package/dist/esm/ix-tree_2.entry.js +4 -0
- package/dist/esm/ix-tree_2.entry.js.map +1 -1
- package/dist/esm/ix-upload.entry.js +1 -16
- package/dist/esm/ix-upload.entry.js.map +1 -1
- package/dist/esm/ix-workflow-step_2.entry.js +1 -1
- package/dist/esm/ix-workflow-step_2.entry.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/siemens-ix.js +1 -1
- package/dist/esm/upload-file-state-532a36d3.js +19 -0
- package/dist/esm/upload-file-state-532a36d3.js.map +1 -0
- package/dist/siemens-ix/index.esm.js +1 -1
- package/dist/siemens-ix/index.esm.js.map +1 -1
- package/dist/siemens-ix/p-030078b4.entry.js +2 -0
- package/dist/siemens-ix/p-030078b4.entry.js.map +1 -0
- package/dist/siemens-ix/p-076c29d1.js +2 -0
- package/dist/siemens-ix/p-076c29d1.js.map +1 -0
- package/dist/siemens-ix/p-0f864265.entry.js +2 -0
- package/dist/siemens-ix/p-0f864265.entry.js.map +1 -0
- package/dist/siemens-ix/p-16ec6f50.entry.js +2 -0
- package/dist/siemens-ix/p-16ec6f50.entry.js.map +1 -0
- package/dist/siemens-ix/p-1701b127.entry.js +2 -0
- package/dist/siemens-ix/p-1701b127.entry.js.map +1 -0
- package/dist/siemens-ix/p-24d2d95e.entry.js +2 -0
- package/dist/siemens-ix/p-24d2d95e.entry.js.map +1 -0
- package/dist/siemens-ix/{p-11af475f.entry.js → p-28f50519.entry.js} +2 -2
- package/dist/siemens-ix/p-28f50519.entry.js.map +1 -0
- package/dist/siemens-ix/{p-6790d123.entry.js → p-34e3a10e.entry.js} +2 -2
- package/dist/siemens-ix/{p-6790d123.entry.js.map → p-34e3a10e.entry.js.map} +1 -1
- package/dist/siemens-ix/p-446a0a3f.entry.js +2 -0
- package/dist/siemens-ix/p-446a0a3f.entry.js.map +1 -0
- package/dist/siemens-ix/p-55d0fabf.entry.js +2 -0
- package/dist/siemens-ix/p-55d0fabf.entry.js.map +1 -0
- package/dist/siemens-ix/{p-9f55716d.entry.js → p-58ef1328.entry.js} +2 -2
- package/dist/siemens-ix/p-58ef1328.entry.js.map +1 -0
- package/dist/siemens-ix/{p-aafd18a8.entry.js → p-62b4d696.entry.js} +2 -2
- package/dist/siemens-ix/p-62b4d696.entry.js.map +1 -0
- package/dist/siemens-ix/p-6facc3cc.entry.js +2 -0
- package/dist/siemens-ix/p-6facc3cc.entry.js.map +1 -0
- package/dist/siemens-ix/p-73f7ef87.entry.js +2 -0
- package/dist/siemens-ix/p-73f7ef87.entry.js.map +1 -0
- package/dist/siemens-ix/{p-1811d669.entry.js → p-88a47c9b.entry.js} +2 -2
- package/dist/siemens-ix/p-88a47c9b.entry.js.map +1 -0
- package/dist/siemens-ix/p-9546cbdd.entry.js +2 -0
- package/dist/siemens-ix/p-9546cbdd.entry.js.map +1 -0
- package/dist/siemens-ix/{p-5ce07b8b.entry.js → p-afd1f351.entry.js} +2 -2
- package/dist/siemens-ix/p-afd1f351.entry.js.map +1 -0
- package/dist/siemens-ix/p-b9fbd029.entry.js +2 -0
- package/dist/siemens-ix/p-b9fbd029.entry.js.map +1 -0
- package/dist/siemens-ix/siemens-ix.css +6 -0
- package/dist/siemens-ix/siemens-ix.esm.js +1 -1
- package/dist/siemens-ix/siemens-ix.esm.js.map +1 -1
- package/dist/types/components/blind/blind.d.ts +5 -0
- package/dist/types/components/chip/chip.d.ts +8 -0
- package/dist/types/components/flip-tile/flip-tile.d.ts +11 -0
- package/dist/types/components/index-button/index-button.d.ts +16 -0
- package/dist/types/components/pagination/pagination.d.ts +55 -0
- package/dist/types/components/toast/toast-container.d.ts +3 -1
- package/dist/types/components/toast/toast-utils.d.ts +3 -0
- package/dist/types/components/tree/tree.d.ts +13 -0
- package/dist/types/components.d.ts +182 -2
- package/dist/types/index.d.ts +1 -0
- package/package.json +3 -2
- package/scss/components/_forms.scss +1 -1
- package/dist/siemens-ix/p-0d15aa1a.entry.js +0 -2
- package/dist/siemens-ix/p-0d15aa1a.entry.js.map +0 -1
- package/dist/siemens-ix/p-11af475f.entry.js.map +0 -1
- package/dist/siemens-ix/p-1259ea24.entry.js +0 -2
- package/dist/siemens-ix/p-1259ea24.entry.js.map +0 -1
- package/dist/siemens-ix/p-1811d669.entry.js.map +0 -1
- package/dist/siemens-ix/p-29bd1814.entry.js +0 -2
- package/dist/siemens-ix/p-29bd1814.entry.js.map +0 -1
- package/dist/siemens-ix/p-5845a03c.entry.js +0 -2
- package/dist/siemens-ix/p-5845a03c.entry.js.map +0 -1
- package/dist/siemens-ix/p-5ce07b8b.entry.js.map +0 -1
- package/dist/siemens-ix/p-7ce0c0e2.entry.js +0 -2
- package/dist/siemens-ix/p-7ce0c0e2.entry.js.map +0 -1
- package/dist/siemens-ix/p-967f7d5d.entry.js +0 -2
- package/dist/siemens-ix/p-967f7d5d.entry.js.map +0 -1
- package/dist/siemens-ix/p-9f55716d.entry.js.map +0 -1
- package/dist/siemens-ix/p-aafd18a8.entry.js.map +0 -1
- package/dist/siemens-ix/p-d7def96c.entry.js +0 -2
- package/dist/siemens-ix/p-d7def96c.entry.js.map +0 -1
- package/dist/siemens-ix/p-f961c22a.entry.js +0 -2
- package/dist/siemens-ix/p-f961c22a.entry.js.map +0 -1
- package/dist/siemens-ix/p-fe690347.entry.js +0 -2
- package/dist/siemens-ix/p-fe690347.entry.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"ix-toast-container.js","mappings":";;;;;;
|
|
1
|
+
{"file":"ix-toast-container.js","mappings":";;;;;;MAyBa,cAAc;;;;IAeR,0BAAqB,GAAG,mBAAmB,CAAC;uBAVvC,iBAAiB;0BAId,iBAAiB;oBAIO,cAAc;;EAI/D,IAAI,aAAa;IACf,OAAO,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;GAClD;EAED,gBAAgB;IACd,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;MAC9C,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;MACrD,cAAc,CAAC,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC;MACrC,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;MAClD,cAAc,CAAC,SAAS,CAAC,GAAG,CAC1B,GAAG,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,QAAQ,EAAE,CAChD,CAAC;MACF,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;KAC3C;GACF;EAGD,gBAAgB,CAAC,WAAmB,EAAE,WAAmB;IACvD,MAAM,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACjE,cAAc,CAAC,SAAS,CAAC,MAAM,CAC7B,GAAG,IAAI,CAAC,qBAAqB,GAAG,WAAW,EAAE,CAC9C,CAAC;IACF,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,qBAAqB,GAAG,WAAW,EAAE,CAAC,CAAC;GAC7E;;;;;EAOD,MAAM,SAAS,CAAC,MAAmB;IACjC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAEjD,MAAM,OAAO,GAAG,IAAI,UAAU,EAAmB,CAAC;IAElD,SAAS,WAAW,CAAC,MAAY;MAC/B,KAAK,CAAC,MAAM,EAAE,CAAC;MACf,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACtB;IAED,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC;IAChC,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IACzB,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACnC,KAAK,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;IAC7C,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IACzB,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACnC,KAAK,CAAC,gBAAgB,CACpB,YAAY,EACZ,CAAC,KAAmC;MAClC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;MACzB,WAAW,CAAC,MAAM,CAAC,CAAC;KACrB,CACF,CAAC;IAEF,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE;MACtC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC;KAClC;SAAM;MACL,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;KACnC;IAED,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAEtC,OAAO;MACL,OAAO;MACP,KAAK,EAAE,CAAC,MAAY;QAClB,WAAW,CAAC,MAAM,CAAC,CAAC;OACrB;KACF,CAAC;GACH;EAED,MAAM;IACJ,OAAO,EAAC,IAAI,OAAQ,CAAC;GACtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["./src/components/toast/toast-container.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\nimport {\n Component,\n Element,\n h,\n Host,\n Method,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { TypedEvent } from '../utils/typed-event';\nimport { ToastConfig } from './toast-utils';\n\n@Component({\n tag: 'ix-toast-container',\n scoped: true,\n})\nexport class ToastContainer {\n @Element() host!: HTMLIxToastContainerElement;\n\n /**\n */\n @Prop() containerId = 'toast-container';\n\n /**\n */\n @Prop() containerClass = 'toast-container';\n\n /**\n */\n @Prop() position: 'bottom-right' | 'top-right' = 'bottom-right';\n\n private readonly PREFIX_POSITION_CLASS = 'toast-container--';\n\n get hostContainer() {\n return document.getElementById(this.containerId);\n }\n\n componentDidLoad() {\n if (!document.getElementById(this.containerId)) {\n const toastContainer = document.createElement('div');\n toastContainer.id = this.containerId;\n toastContainer.classList.add(this.containerClass);\n toastContainer.classList.add(\n `${this.PREFIX_POSITION_CLASS}${this.position}`\n );\n document.body.appendChild(toastContainer);\n }\n }\n\n @Watch('position')\n onPositionChange(newPosition: string, oldPosition: string) {\n const toastContainer = document.getElementById(this.containerId);\n toastContainer.classList.remove(\n `${this.PREFIX_POSITION_CLASS}${oldPosition}`\n );\n toastContainer.classList.add(`${this.PREFIX_POSITION_CLASS}${newPosition}`);\n }\n\n /**\n * Display a toast message\n * @param config\n */\n @Method()\n async showToast(config: ToastConfig) {\n const toast = document.createElement('ix-toast');\n\n const onClose = new TypedEvent<any | undefined>();\n\n function removeToast(result?: any) {\n toast.remove();\n onClose.emit(result);\n }\n\n toast.toastTitle = config.title;\n toast.type = config.type;\n toast.autoClose = config.autoClose;\n toast.autoCloseDelay = config.autoCloseDelay;\n toast.icon = config.icon;\n toast.iconColor = config.iconColor;\n toast.addEventListener(\n 'closeToast',\n (event: CustomEvent<any | undefined>) => {\n const { detail } = event;\n removeToast(detail);\n }\n );\n\n if (typeof config.message === 'string') {\n toast.innerText = config.message;\n } else {\n toast.appendChild(config.message);\n }\n\n this.hostContainer.appendChild(toast);\n\n return {\n onClose,\n close: (result?: any) => {\n removeToast(result);\n },\n };\n }\n\n render() {\n return <Host></Host>;\n }\n}\n"],"version":3}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
|
|
2
|
-
import { a as autoUpdate, c as computePosition, s as shift, o as offset, b as arrow,
|
|
2
|
+
import { a as autoUpdate, c as computePosition, s as shift, o as offset, b as arrow, f as flip } from './floating-ui.dom.esm.js';
|
|
3
3
|
import { d as defineCustomElement$2 } from './typography.js';
|
|
4
4
|
|
|
5
|
-
const tooltipCss = ":host{display:inline-block;position:
|
|
5
|
+
const tooltipCss = ":host{display:inline-block;position:fixed;left:0px;top:0px;z-index:var(--theme-z-index-tooltip);max-width:18.25rem;opacity:0;visibility:collapse !important;overflow-wrap:break-word;border-radius:0.25rem;background-color:var(--theme-tootlip--background);padding:0.375rem 0.75rem 0.375rem 0.875rem;box-shadow:var(--theme-shadow-4)}:host .tooltip-title{display:flex;align-items:center}:host .tooltip-title ::slotted(ix-icon){margin-right:0.35rem}:host(.visible){opacity:1;visibility:visible !important}:host(.visible) .arrow,:host(.visible) .arrow::before{position:absolute;width:8px;height:8px;background:inherit}:host(.visible) .arrow{visibility:hidden}:host(.visible) .arrow::before{visibility:visible;content:\"\";transform:rotate(45deg);background-color:var(--theme-tootlip--background)}";
|
|
6
6
|
|
|
7
7
|
const Tooltip = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
8
8
|
constructor() {
|
|
@@ -21,7 +21,7 @@ const Tooltip = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
21
21
|
return this.hostElement.shadowRoot.querySelector('.arrow');
|
|
22
22
|
}
|
|
23
23
|
destroyAutoUpdate() {
|
|
24
|
-
if (this.disposeAutoUpdate) {
|
|
24
|
+
if (this.disposeAutoUpdate !== undefined) {
|
|
25
25
|
this.disposeAutoUpdate();
|
|
26
26
|
}
|
|
27
27
|
}
|
|
@@ -38,32 +38,36 @@ const Tooltip = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
38
38
|
}
|
|
39
39
|
async computeTooltipPosition(target) {
|
|
40
40
|
this.disposeAutoUpdate = autoUpdate(target, this.hostElement, async () => {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
41
|
+
requestAnimationFrame(async () => {
|
|
42
|
+
const computeResponse = await computePosition(target, this.hostElement, {
|
|
43
|
+
strategy: 'fixed',
|
|
44
|
+
placement: 'top',
|
|
45
|
+
middleware: [
|
|
46
|
+
shift(),
|
|
47
|
+
offset(8),
|
|
48
|
+
arrow({
|
|
49
|
+
element: this.arrowElement,
|
|
50
|
+
}),
|
|
51
|
+
flip({
|
|
52
|
+
fallbackStrategy: 'initialPlacement',
|
|
53
|
+
}),
|
|
54
|
+
],
|
|
55
|
+
});
|
|
56
|
+
if (computeResponse.middlewareData.arrow) {
|
|
57
|
+
let { x, y } = computeResponse.middlewareData.arrow;
|
|
58
|
+
if (computeResponse.placement === 'bottom') {
|
|
59
|
+
y = -4;
|
|
60
|
+
}
|
|
61
|
+
Object.assign(this.arrowElement.style, {
|
|
62
|
+
left: x != null ? `${x}px` : '',
|
|
63
|
+
top: y != null ? `${y}px` : '',
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
const { x, y } = computeResponse;
|
|
67
|
+
Object.assign(this.hostElement.style, {
|
|
68
|
+
left: x !== null ? `${x}px` : '',
|
|
69
|
+
top: y !== null ? `${y}px` : '',
|
|
61
70
|
});
|
|
62
|
-
}
|
|
63
|
-
const { x, y } = computeResponse;
|
|
64
|
-
Object.assign(this.hostElement.style, {
|
|
65
|
-
left: x !== null ? `${x}px` : '',
|
|
66
|
-
top: y !== null ? `${y}px` : '',
|
|
67
71
|
});
|
|
68
72
|
}, {
|
|
69
73
|
ancestorResize: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"ix-tooltip.js","mappings":";;;;AAAA,MAAM,UAAU,GAAG,
|
|
1
|
+
{"file":"ix-tooltip.js","mappings":"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","names":[],"sources":["./src/components/tooltip/tooltip.scss?tag=ix-tooltip&encapsulation=shadow","./src/components/tooltip/tooltip.tsx"],"sourcesContent":[":host {\n display: inline-block;\n position: fixed;\n left: 0px;\n top: 0px;\n z-index: var(--theme-z-index-tooltip);\n\n max-width: 18.25rem;\n\n opacity: 0;\n visibility: collapse !important;\n overflow-wrap: break-word;\n\n border-radius: 0.25rem;\n background-color: var(--theme-tootlip--background);\n padding: 0.375rem 0.75rem 0.375rem 0.875rem;\n\n box-shadow: var(--theme-shadow-4);\n\n .tooltip-title {\n display: flex;\n align-items: center;\n\n ::slotted(ix-icon) {\n margin-right: 0.35rem;\n }\n }\n}\n\n:host(.visible) {\n opacity: 1;\n visibility: visible !important;\n}\n\n:host(.visible) {\n .arrow,\n .arrow::before {\n position: absolute;\n width: 8px;\n height: 8px;\n background: inherit;\n }\n\n .arrow {\n visibility: hidden;\n }\n\n .arrow::before {\n visibility: visible;\n content: '';\n transform: rotate(45deg);\n background-color: var(--theme-tootlip--background);\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 arrow,\n autoUpdate,\n computePosition,\n flip,\n offset,\n shift,\n} from '@floating-ui/dom';\nimport { Component, Element, h, Host, Prop, State } from '@stencil/core';\n\n/**\n * @slot title-icon - Icon of tooltip title\n * @slot title-content - Content of tooltip title\n *\n * @since 1.4.0\n */\n@Component({\n tag: 'ix-tooltip',\n styleUrl: 'tooltip.scss',\n shadow: true,\n})\nexport class Tooltip {\n /**\n * CSS selector for hover trigger element e.g. `for=\"[data-my-custom-select]\"`\n */\n @Prop() for: string;\n\n /**\n * Title of the tooltip\n */\n @Prop() titleContent: string;\n\n /**\n * Define if the user can access the tooltip via mouse.\n */\n @Prop() interactive = false;\n\n @State() visible = false;\n\n @Element() hostElement: HTMLIxTooltipElement;\n\n private observer: MutationObserver;\n private hideTooltipTimeout: NodeJS.Timeout;\n private onMouseEnterBind = this.showTooltip.bind(this);\n private onMouseLeaveBind = this.hideTooltip.bind(this);\n private disposeAutoUpdate?: () => void;\n private tooltipCloseTimeInMS = 50;\n\n private get arrowElement() {\n return this.hostElement.shadowRoot.querySelector('.arrow') as HTMLElement;\n }\n\n private destroyAutoUpdate() {\n if (this.disposeAutoUpdate !== undefined) {\n this.disposeAutoUpdate();\n }\n }\n\n private showTooltip(e: any) {\n clearTimeout(this.hideTooltipTimeout);\n this.visible = true;\n this.computeTooltipPosition(e.target);\n }\n\n private hideTooltip() {\n this.hideTooltipTimeout = setTimeout(() => {\n this.visible = false;\n }, this.tooltipCloseTimeInMS);\n this.destroyAutoUpdate();\n }\n\n private async computeTooltipPosition(target: HTMLElement) {\n this.disposeAutoUpdate = autoUpdate(\n target,\n this.hostElement,\n async () => {\n requestAnimationFrame(async () => {\n const computeResponse = await computePosition(\n target,\n this.hostElement,\n {\n strategy: 'fixed',\n placement: 'top',\n middleware: [\n shift(),\n offset(8),\n arrow({\n element: this.arrowElement,\n }),\n flip({\n fallbackStrategy: 'initialPlacement',\n }),\n ],\n }\n );\n\n if (computeResponse.middlewareData.arrow) {\n let { x, y } = computeResponse.middlewareData.arrow;\n\n if (computeResponse.placement === 'bottom') {\n y = -4;\n }\n\n Object.assign(this.arrowElement.style, {\n left: x != null ? `${x}px` : '',\n top: y != null ? `${y}px` : '',\n });\n }\n\n const { x, y } = computeResponse;\n Object.assign(this.hostElement.style, {\n left: x !== null ? `${x}px` : '',\n top: y !== null ? `${y}px` : '',\n });\n });\n },\n {\n ancestorResize: true,\n ancestorScroll: true,\n elementResize: true,\n }\n );\n }\n\n private queryAnchorElements() {\n return Array.from(document.querySelectorAll(this.for));\n }\n\n private registerTriggerListener() {\n const elements = this.queryAnchorElements();\n elements.forEach((e) => {\n e.addEventListener('mouseenter', this.onMouseEnterBind);\n e.addEventListener('mouseleave', this.onMouseLeaveBind);\n });\n }\n\n private registerTooltipListener() {\n this.hostElement.addEventListener('mouseenter', () => {\n if (this.interactive) {\n clearTimeout(this.hideTooltipTimeout);\n }\n });\n this.hostElement.addEventListener('mouseleave', () => {\n this.hideTooltip();\n });\n }\n\n componentDidLoad() {\n if (this.interactive) {\n this.tooltipCloseTimeInMS = 150;\n }\n\n this.observer = new MutationObserver(() => {\n this.registerTriggerListener();\n });\n\n this.observer.observe(document.body, {\n attributes: true,\n attributeFilter: ['data-ix-tooltip'],\n childList: true,\n subtree: true,\n });\n\n this.registerTriggerListener();\n this.registerTooltipListener();\n }\n\n disconnectedCallback() {\n this.observer.disconnect();\n this.destroyAutoUpdate();\n }\n\n render() {\n const tooltipContentClass = {\n 'tooltip-content': true,\n };\n\n return (\n <Host\n class={{\n visible: this.visible,\n }}\n >\n <div class={'tooltip-title'}>\n <slot name=\"title-icon\"></slot>\n <ix-typography variant=\"default-title\">\n {this.titleContent}\n <slot name=\"title-content\"></slot>\n </ix-typography>\n </div>\n <div class={tooltipContentClass}>\n <slot></slot>\n </div>\n <div class=\"arrow\"></div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -513,6 +513,8 @@ const Tree = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
513
513
|
super();
|
|
514
514
|
this.__registerHost();
|
|
515
515
|
this.contextChange = createEvent(this, "contextChange", 7);
|
|
516
|
+
this.nodeToggled = createEvent(this, "nodeToggled", 7);
|
|
517
|
+
this.nodeClicked = createEvent(this, "nodeClicked", 7);
|
|
516
518
|
this.nodeRemoved = createEvent(this, "nodeRemoved", 7);
|
|
517
519
|
this.toggleListener = new Map();
|
|
518
520
|
this.itemClickListener = new Map();
|
|
@@ -532,6 +534,7 @@ const Tree = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
532
534
|
e.stopPropagation();
|
|
533
535
|
const context = this.getContext(list[index].id);
|
|
534
536
|
context.isExpanded = !context.isExpanded;
|
|
537
|
+
this.nodeToggled.emit({ id: item.id, isExpaned: context.isExpanded });
|
|
535
538
|
this.setContext(item.id, context);
|
|
536
539
|
};
|
|
537
540
|
el.addEventListener('toggle', toggleCallback);
|
|
@@ -577,6 +580,7 @@ const Tree = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
577
580
|
const context = this.getContext(item.id);
|
|
578
581
|
context.isSelected = true;
|
|
579
582
|
this.setContext(item.id, context);
|
|
583
|
+
this.nodeClicked.emit(item.id);
|
|
580
584
|
};
|
|
581
585
|
el.addEventListener('itemClick', itemClickCallback);
|
|
582
586
|
this.itemClickListener.set(el, itemClickCallback);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"ix-tree.js","mappings":"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","names":["require"],"sources":["../../node_modules/hyperlist/dist/hyperlist.js","./src/components/tree/tree.css?tag=ix-tree&encapsulation=scoped","./src/components/tree/tree.tsx"],"sourcesContent":["(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.HyperList = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(_dereq_,module,exports){\n'use strict';\n\n// Default configuration.\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar defaultConfig = {\n width: '100%',\n height: '100%'\n\n // Check for valid number.\n};var isNumber = function isNumber(input) {\n return Number(input) === Number(input);\n};\n\n// Add a class to an element.\nvar addClass = 'classList' in document.documentElement ? function (element, className) {\n element.classList.add(className);\n} : function (element, className) {\n var oldClass = element.getAttribute('class') || '';\n element.setAttribute('class', oldClass + ' ' + className);\n};\n\n/**\n * Creates a HyperList instance that virtually scrolls very large amounts of\n * data effortlessly.\n */\n\nvar HyperList = function () {\n _createClass(HyperList, null, [{\n key: 'create',\n value: function create(element, userProvidedConfig) {\n return new HyperList(element, userProvidedConfig);\n }\n\n /**\n * Merge given css style on an element\n * @param {DOMElement} element\n * @param {Object} style\n */\n\n }, {\n key: 'mergeStyle',\n value: function mergeStyle(element, style) {\n for (var i in style) {\n if (element.style[i] !== style[i]) {\n element.style[i] = style[i];\n }\n }\n }\n }, {\n key: 'getMaxBrowserHeight',\n value: function getMaxBrowserHeight() {\n // Create two elements, the wrapper is `1px` tall and is transparent and\n // positioned at the top of the page. Inside that is an element that gets\n // set to 1 billion pixels. Then reads the max height the browser can\n // calculate.\n var wrapper = document.createElement('div');\n var fixture = document.createElement('div');\n\n // As said above, these values get set to put the fixture elements into the\n // right visual state.\n HyperList.mergeStyle(wrapper, { position: 'absolute', height: '1px', opacity: 0 });\n HyperList.mergeStyle(fixture, { height: '1e7px' });\n\n // Add the fixture into the wrapper element.\n wrapper.appendChild(fixture);\n\n // Apply to the page, the values won't kick in unless this is attached.\n document.body.appendChild(wrapper);\n\n // Get the maximum element height in pixels.\n var maxElementHeight = fixture.offsetHeight;\n\n // Remove the element immediately after reading the value.\n document.body.removeChild(wrapper);\n\n return maxElementHeight;\n }\n }]);\n\n function HyperList(element, userProvidedConfig) {\n var _this = this;\n\n _classCallCheck(this, HyperList);\n\n this._config = {};\n this._lastRepaint = null;\n this._maxElementHeight = HyperList.getMaxBrowserHeight();\n\n this.refresh(element, userProvidedConfig);\n\n var config = this._config;\n\n // Create internal render loop.\n var render = function render() {\n var scrollTop = _this._getScrollPosition();\n var lastRepaint = _this._lastRepaint;\n\n _this._renderAnimationFrame = window.requestAnimationFrame(render);\n\n if (scrollTop === lastRepaint) {\n return;\n }\n\n var diff = lastRepaint ? scrollTop - lastRepaint : 0;\n if (!lastRepaint || diff < 0 || diff > _this._averageHeight) {\n var rendered = _this._renderChunk();\n\n _this._lastRepaint = scrollTop;\n\n if (rendered !== false && typeof config.afterRender === 'function') {\n config.afterRender();\n }\n }\n };\n\n render();\n }\n\n _createClass(HyperList, [{\n key: 'destroy',\n value: function destroy() {\n window.cancelAnimationFrame(this._renderAnimationFrame);\n }\n }, {\n key: 'refresh',\n value: function refresh(element, userProvidedConfig) {\n var _scrollerStyle;\n\n Object.assign(this._config, defaultConfig, userProvidedConfig);\n\n if (!element || element.nodeType !== 1) {\n throw new Error('HyperList requires a valid DOM Node container');\n }\n\n this._element = element;\n\n var config = this._config;\n\n var scroller = this._scroller || config.scroller || document.createElement(config.scrollerTagName || 'tr');\n\n // Default configuration option `useFragment` to `true`.\n if (typeof config.useFragment !== 'boolean') {\n this._config.useFragment = true;\n }\n\n if (!config.generate) {\n throw new Error('Missing required `generate` function');\n }\n\n if (!isNumber(config.total)) {\n throw new Error('Invalid required `total` value, expected number');\n }\n\n if (!Array.isArray(config.itemHeight) && !isNumber(config.itemHeight)) {\n throw new Error('\\n Invalid required `itemHeight` value, expected number or array\\n '.trim());\n } else if (isNumber(config.itemHeight)) {\n this._itemHeights = Array(config.total).fill(config.itemHeight);\n } else {\n this._itemHeights = config.itemHeight;\n }\n\n // Width and height should be coerced to string representations. Either in\n // `%` or `px`.\n Object.keys(defaultConfig).filter(function (prop) {\n return prop in config;\n }).forEach(function (prop) {\n var value = config[prop];\n var isValueNumber = isNumber(value);\n\n if (value && typeof value !== 'string' && typeof value !== 'number') {\n var msg = 'Invalid optional `' + prop + '`, expected string or number';\n throw new Error(msg);\n } else if (isValueNumber) {\n config[prop] = value + 'px';\n }\n });\n\n var isHoriz = Boolean(config.horizontal);\n var value = config[isHoriz ? 'width' : 'height'];\n\n if (value) {\n var isValueNumber = isNumber(value);\n var isValuePercent = isValueNumber ? false : value.slice(-1) === '%';\n // Compute the containerHeight as number\n var numberValue = isValueNumber ? value : parseInt(value.replace(/px|%/, ''), 10);\n var innerSize = window[isHoriz ? 'innerWidth' : 'innerHeight'];\n\n if (isValuePercent) {\n this._containerSize = innerSize * numberValue / 100;\n } else {\n this._containerSize = isNumber(value) ? value : numberValue;\n }\n }\n\n var scrollContainer = config.scrollContainer;\n var scrollerHeight = config.itemHeight * config.total;\n var maxElementHeight = this._maxElementHeight;\n\n if (scrollerHeight > maxElementHeight) {\n console.warn(['HyperList: The maximum element height', maxElementHeight + 'px has', 'been exceeded; please reduce your item height.'].join(' '));\n }\n\n // Decorate the container element with styles that will match\n // the user supplied configuration.\n var elementStyle = {\n width: '' + config.width,\n height: scrollContainer ? scrollerHeight + 'px' : '' + config.height,\n overflow: scrollContainer ? 'none' : 'auto',\n position: 'relative'\n };\n\n HyperList.mergeStyle(element, elementStyle);\n\n if (scrollContainer) {\n HyperList.mergeStyle(config.scrollContainer, { overflow: 'auto' });\n }\n\n var scrollerStyle = (_scrollerStyle = {\n opacity: '0',\n position: 'absolute'\n }, _defineProperty(_scrollerStyle, isHoriz ? 'height' : 'width', '1px'), _defineProperty(_scrollerStyle, isHoriz ? 'width' : 'height', scrollerHeight + 'px'), _scrollerStyle);\n\n HyperList.mergeStyle(scroller, scrollerStyle);\n\n // Only append the scroller element once.\n if (!this._scroller) {\n element.appendChild(scroller);\n }\n\n var padding = this._computeScrollPadding();\n this._scrollPaddingBottom = padding.bottom;\n this._scrollPaddingTop = padding.top;\n\n // Set the scroller instance.\n this._scroller = scroller;\n this._scrollHeight = this._computeScrollHeight();\n\n // Reuse the item positions if refreshed, otherwise set to empty array.\n this._itemPositions = this._itemPositions || Array(config.total).fill(0);\n\n // Each index in the array should represent the position in the DOM.\n this._computePositions(0);\n\n // Render after refreshing. Force render if we're calling refresh manually.\n this._renderChunk(this._lastRepaint !== null);\n\n if (typeof config.afterRender === 'function') {\n config.afterRender();\n }\n }\n }, {\n key: '_getRow',\n value: function _getRow(i) {\n var config = this._config;\n var item = config.generate(i);\n var height = item.height;\n\n if (height !== undefined && isNumber(height)) {\n item = item.element;\n\n // The height isn't the same as predicted, compute positions again\n if (height !== this._itemHeights[i]) {\n this._itemHeights[i] = height;\n this._computePositions(i);\n this._scrollHeight = this._computeScrollHeight(i);\n }\n } else {\n height = this._itemHeights[i];\n }\n\n if (!item || item.nodeType !== 1) {\n throw new Error('Generator did not return a DOM Node for index: ' + i);\n }\n\n addClass(item, config.rowClassName || 'vrow');\n\n var top = this._itemPositions[i] + this._scrollPaddingTop;\n\n HyperList.mergeStyle(item, _defineProperty({\n position: 'absolute'\n }, config.horizontal ? 'left' : 'top', top + 'px'));\n\n return item;\n }\n }, {\n key: '_getScrollPosition',\n value: function _getScrollPosition() {\n var config = this._config;\n\n if (typeof config.overrideScrollPosition === 'function') {\n return config.overrideScrollPosition();\n }\n\n return this._element[config.horizontal ? 'scrollLeft' : 'scrollTop'];\n }\n }, {\n key: '_renderChunk',\n value: function _renderChunk(force) {\n var config = this._config;\n var element = this._element;\n var scrollTop = this._getScrollPosition();\n var total = config.total;\n\n var from = config.reverse ? this._getReverseFrom(scrollTop) : this._getFrom(scrollTop) - 1;\n\n if (from < 0 || from - this._screenItemsLen < 0) {\n from = 0;\n }\n\n if (!force && this._lastFrom === from) {\n return false;\n }\n\n this._lastFrom = from;\n\n var to = from + this._cachedItemsLen;\n\n if (to > total || to + this._cachedItemsLen > total) {\n to = total;\n }\n\n // Append all the new rows in a document fragment that we will later append\n // to the parent node\n var fragment = config.useFragment ? document.createDocumentFragment() : []\n // Sometimes you'll pass fake elements to this tool and Fragments require\n // real elements.\n\n\n // The element that forces the container to scroll.\n ;var scroller = this._scroller;\n\n // Keep the scroller in the list of children.\n fragment[config.useFragment ? 'appendChild' : 'push'](scroller);\n\n for (var i = from; i < to; i++) {\n var row = this._getRow(i);\n\n fragment[config.useFragment ? 'appendChild' : 'push'](row);\n }\n\n if (config.applyPatch) {\n return config.applyPatch(element, fragment);\n }\n\n element.innerHTML = '';\n element.appendChild(fragment);\n }\n }, {\n key: '_computePositions',\n value: function _computePositions() {\n var from = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n\n var config = this._config;\n var total = config.total;\n var reverse = config.reverse;\n\n if (from < 1 && !reverse) {\n from = 1;\n }\n\n for (var i = from; i < total; i++) {\n if (reverse) {\n if (i === 0) {\n this._itemPositions[0] = this._scrollHeight - this._itemHeights[0];\n } else {\n this._itemPositions[i] = this._itemPositions[i - 1] - this._itemHeights[i];\n }\n } else {\n this._itemPositions[i] = this._itemHeights[i - 1] + this._itemPositions[i - 1];\n }\n }\n }\n }, {\n key: '_computeScrollHeight',\n value: function _computeScrollHeight() {\n var _HyperList$mergeStyle2,\n _this2 = this;\n\n var config = this._config;\n var isHoriz = Boolean(config.horizontal);\n var total = config.total;\n var scrollHeight = this._itemHeights.reduce(function (a, b) {\n return a + b;\n }, 0) + this._scrollPaddingBottom + this._scrollPaddingTop;\n\n HyperList.mergeStyle(this._scroller, (_HyperList$mergeStyle2 = {\n opacity: 0,\n position: 'absolute',\n top: '0px'\n }, _defineProperty(_HyperList$mergeStyle2, isHoriz ? 'height' : 'width', '1px'), _defineProperty(_HyperList$mergeStyle2, isHoriz ? 'width' : 'height', scrollHeight + 'px'), _HyperList$mergeStyle2));\n\n // Calculate the height median\n var sortedItemHeights = this._itemHeights.slice(0).sort(function (a, b) {\n return a - b;\n });\n var middle = Math.floor(total / 2);\n var averageHeight = total % 2 === 0 ? (sortedItemHeights[middle] + sortedItemHeights[middle - 1]) / 2 : sortedItemHeights[middle];\n\n var clientProp = isHoriz ? 'clientWidth' : 'clientHeight';\n var element = config.scrollContainer ? config.scrollContainer : this._element;\n var containerHeight = element[clientProp] ? element[clientProp] : this._containerSize;\n this._screenItemsLen = Math.ceil(containerHeight / averageHeight);\n this._containerSize = containerHeight;\n\n // Cache 3 times the number of items that fit in the container viewport.\n this._cachedItemsLen = Math.max(this._cachedItemsLen || 0, this._screenItemsLen * 3);\n this._averageHeight = averageHeight;\n\n if (config.reverse) {\n window.requestAnimationFrame(function () {\n if (isHoriz) {\n _this2._element.scrollLeft = scrollHeight;\n } else {\n _this2._element.scrollTop = scrollHeight;\n }\n });\n }\n\n return scrollHeight;\n }\n }, {\n key: '_computeScrollPadding',\n value: function _computeScrollPadding() {\n var config = this._config;\n var isHoriz = Boolean(config.horizontal);\n var isReverse = config.reverse;\n var styles = window.getComputedStyle(this._element);\n\n var padding = function padding(location) {\n var cssValue = styles.getPropertyValue('padding-' + location);\n return parseInt(cssValue, 10) || 0;\n };\n\n if (isHoriz && isReverse) {\n return {\n bottom: padding('left'),\n top: padding('right')\n };\n } else if (isHoriz) {\n return {\n bottom: padding('right'),\n top: padding('left')\n };\n } else if (isReverse) {\n return {\n bottom: padding('top'),\n top: padding('bottom')\n };\n } else {\n return {\n bottom: padding('bottom'),\n top: padding('top')\n };\n }\n }\n }, {\n key: '_getFrom',\n value: function _getFrom(scrollTop) {\n var i = 0;\n\n while (this._itemPositions[i] < scrollTop) {\n i++;\n }\n\n return i;\n }\n }, {\n key: '_getReverseFrom',\n value: function _getReverseFrom(scrollTop) {\n var i = this._config.total - 1;\n\n while (i > 0 && this._itemPositions[i] < scrollTop + this._containerSize) {\n i--;\n }\n\n return i;\n }\n }]);\n\n return HyperList;\n}();\n\nexports.default = HyperList;\nmodule.exports = exports['default'];\n\n},{}]},{},[1])(1)\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:host {\n display: block;\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 Hyperlist from 'hyperlist';\nimport { renderDefaultItem } from '../tree-item/default-tree-item';\nimport {\n TreeContext,\n TreeItem,\n TreeItemContext,\n TreeItemVisual,\n TreeModel,\n UpdateCallback,\n} from './tree-model';\n\n@Component({\n tag: 'ix-tree',\n styleUrl: 'tree.css',\n scoped: true,\n})\nexport class Tree {\n @Element() host!: HTMLIxTreeElement;\n\n /**\n * Initial root element will not be rendered\n */\n @Prop() root: string;\n\n /**\n * Tree model\n */\n @Prop() model: TreeModel<any>;\n\n /**\n * Render function of tree items\n */\n @Prop() renderItem: <T = any>(\n index: number,\n data: T,\n dataList: Array<T>,\n context: TreeContext,\n update: (callback: UpdateCallback) => void\n ) => HTMLElement;\n\n /**\n * Selection and collapsed state management\n */\n @Prop({ mutable: true }) context: TreeContext = {};\n\n /**\n * Context changed\n */\n @Event() contextChange: EventEmitter<TreeContext>;\n\n /**\n * Emits removed nodes\n */\n @Event() nodeRemoved: EventEmitter<any>;\n\n private hyperlist: Hyperlist;\n\n private toggleListener = new Map<HTMLElement, Function>();\n private itemClickListener = new Map<HTMLElement, Function>();\n private updates = new Map<string, UpdateCallback>();\n\n private observer: MutationObserver;\n\n private hasFirstRender = false;\n\n private getVirtualizerOptions() {\n const list = this.buildTreeList(this.model[this.root]);\n\n let setToggleListener = (\n item: TreeItemVisual<any>,\n el: HTMLElement,\n index: number\n ) => {\n if (item.hasChildren && !this.toggleListener.has(el)) {\n const toggleCallback = (e: Event) => {\n e.preventDefault();\n e.stopPropagation();\n const context = this.getContext(list[index].id);\n context.isExpanded = !context.isExpanded;\n this.setContext(item.id, context);\n };\n el.addEventListener('toggle', toggleCallback);\n this.toggleListener.set(el, toggleCallback);\n }\n };\n\n return {\n itemHeight: 32,\n total: list.length,\n generate: (index: number) => {\n const item = list[index];\n const renderedTreeItem = this.host.querySelector(\n `[data-tree-node-id=\"${item.id}\"]`\n ) as HTMLIxTreeItemElement;\n\n const context = this.getContext(item.id);\n\n if (renderedTreeItem) {\n renderedTreeItem.hasChildren = item.hasChildren;\n renderedTreeItem.context = { ...context };\n\n setToggleListener(item, renderedTreeItem, index);\n\n if (this.updates.has(item.id)) {\n const doUpdate = this.updates.get(item.id);\n doUpdate(item, { ...this.context });\n }\n\n return renderedTreeItem;\n }\n\n const update = (callback: UpdateCallback) => {\n this.updates.set(item.id, callback);\n };\n\n let innerElement: HTMLElement | null = null;\n if (this.renderItem) {\n innerElement = this.renderItem(\n index,\n item,\n list,\n { ...this.context },\n update\n );\n }\n\n if (innerElement === null) {\n innerElement = renderDefaultItem(item, context, update);\n }\n\n const el = innerElement;\n el.setAttribute('data-tree-node-id', item.id);\n el.style.paddingLeft = item.level + 'rem';\n el.style.paddingRight = '1rem';\n\n if (!this.itemClickListener.has(el)) {\n const itemClickCallback = (e: Event) => {\n e.preventDefault();\n e.stopPropagation();\n Object.values(this.context).forEach((c) => (c.isSelected = false));\n const context = this.getContext(item.id);\n context.isSelected = true;\n this.setContext(item.id, context);\n };\n el.addEventListener('itemClick', itemClickCallback);\n this.itemClickListener.set(el, itemClickCallback);\n }\n\n setToggleListener(item, el, index);\n\n return el;\n },\n };\n }\n\n private setContext(id: string, context: TreeItemContext) {\n this.context = {\n ...this.context,\n [id]: context,\n };\n\n this.contextChange.emit(this.context);\n }\n\n private getContext(id: string): TreeItemContext {\n if (!this.context) {\n return {\n isExpanded: false,\n isSelected: false,\n };\n }\n if (!this.context[id]) {\n this.context[id] = {\n isExpanded: false,\n isSelected: false,\n };\n }\n return this.context[id];\n }\n\n private buildTreeList(\n root: TreeItem<any>,\n level: number = 0\n ): TreeItemVisual<any>[] {\n const itemList: TreeItemVisual<any>[] = [];\n\n if (root?.hasChildren) {\n const newLevel = level + 1;\n root.children.forEach((id: string) => {\n const item = this.model[id];\n const context = this.getContext(id);\n itemList.push({ ...item, level });\n if (item.hasChildren && context.isExpanded) {\n itemList.push(...this.buildTreeList(item, newLevel));\n }\n });\n }\n\n return itemList;\n }\n\n componentDidLoad() {\n this.initList();\n\n this.observer = new MutationObserver((records) => {\n let removed = [];\n\n records.forEach((record) => {\n removed = [...removed, ...Array.from(record.removedNodes)];\n\n record.addedNodes.forEach((an) => {\n const index = removed.indexOf(an);\n if (index >= 0) {\n removed.splice(index, 1);\n }\n });\n });\n\n this.nodeRemoved.emit(removed);\n });\n\n this.observer.observe(this.host, {\n childList: true,\n });\n }\n\n componentWillRender() {\n this.hasFirstRender = true;\n\n if (this.isListInitialized()) {\n this.refreshList();\n } else {\n this.initList();\n }\n }\n\n disconnectedCallback() {\n this.hyperlist.destroy();\n this.observer.disconnect();\n }\n\n @Watch('model')\n modelChange() {\n if (this.hasFirstRender && !this.isListInitialized()) {\n this.initList();\n }\n }\n\n private isListInitialized() {\n const itemPositions = this.hyperlist?._itemPositions;\n\n return (\n itemPositions !== undefined &&\n itemPositions.length &&\n !itemPositions?.some(\n (item: number) => item === undefined || Number.isNaN(item)\n )\n );\n }\n\n private refreshList() {\n if (this.hyperlist) {\n this.hyperlist.refresh(this.host, this.getVirtualizerOptions());\n }\n }\n\n private initList() {\n this.hyperlist?.destroy();\n const config = this.getVirtualizerOptions();\n this.hyperlist = new Hyperlist(this.host, config);\n }\n\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"ix-tree.js","mappings":"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","names":["require"],"sources":["../../node_modules/hyperlist/dist/hyperlist.js","./src/components/tree/tree.css?tag=ix-tree&encapsulation=scoped","./src/components/tree/tree.tsx"],"sourcesContent":["(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.HyperList = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(_dereq_,module,exports){\n'use strict';\n\n// Default configuration.\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar defaultConfig = {\n width: '100%',\n height: '100%'\n\n // Check for valid number.\n};var isNumber = function isNumber(input) {\n return Number(input) === Number(input);\n};\n\n// Add a class to an element.\nvar addClass = 'classList' in document.documentElement ? function (element, className) {\n element.classList.add(className);\n} : function (element, className) {\n var oldClass = element.getAttribute('class') || '';\n element.setAttribute('class', oldClass + ' ' + className);\n};\n\n/**\n * Creates a HyperList instance that virtually scrolls very large amounts of\n * data effortlessly.\n */\n\nvar HyperList = function () {\n _createClass(HyperList, null, [{\n key: 'create',\n value: function create(element, userProvidedConfig) {\n return new HyperList(element, userProvidedConfig);\n }\n\n /**\n * Merge given css style on an element\n * @param {DOMElement} element\n * @param {Object} style\n */\n\n }, {\n key: 'mergeStyle',\n value: function mergeStyle(element, style) {\n for (var i in style) {\n if (element.style[i] !== style[i]) {\n element.style[i] = style[i];\n }\n }\n }\n }, {\n key: 'getMaxBrowserHeight',\n value: function getMaxBrowserHeight() {\n // Create two elements, the wrapper is `1px` tall and is transparent and\n // positioned at the top of the page. Inside that is an element that gets\n // set to 1 billion pixels. Then reads the max height the browser can\n // calculate.\n var wrapper = document.createElement('div');\n var fixture = document.createElement('div');\n\n // As said above, these values get set to put the fixture elements into the\n // right visual state.\n HyperList.mergeStyle(wrapper, { position: 'absolute', height: '1px', opacity: 0 });\n HyperList.mergeStyle(fixture, { height: '1e7px' });\n\n // Add the fixture into the wrapper element.\n wrapper.appendChild(fixture);\n\n // Apply to the page, the values won't kick in unless this is attached.\n document.body.appendChild(wrapper);\n\n // Get the maximum element height in pixels.\n var maxElementHeight = fixture.offsetHeight;\n\n // Remove the element immediately after reading the value.\n document.body.removeChild(wrapper);\n\n return maxElementHeight;\n }\n }]);\n\n function HyperList(element, userProvidedConfig) {\n var _this = this;\n\n _classCallCheck(this, HyperList);\n\n this._config = {};\n this._lastRepaint = null;\n this._maxElementHeight = HyperList.getMaxBrowserHeight();\n\n this.refresh(element, userProvidedConfig);\n\n var config = this._config;\n\n // Create internal render loop.\n var render = function render() {\n var scrollTop = _this._getScrollPosition();\n var lastRepaint = _this._lastRepaint;\n\n _this._renderAnimationFrame = window.requestAnimationFrame(render);\n\n if (scrollTop === lastRepaint) {\n return;\n }\n\n var diff = lastRepaint ? scrollTop - lastRepaint : 0;\n if (!lastRepaint || diff < 0 || diff > _this._averageHeight) {\n var rendered = _this._renderChunk();\n\n _this._lastRepaint = scrollTop;\n\n if (rendered !== false && typeof config.afterRender === 'function') {\n config.afterRender();\n }\n }\n };\n\n render();\n }\n\n _createClass(HyperList, [{\n key: 'destroy',\n value: function destroy() {\n window.cancelAnimationFrame(this._renderAnimationFrame);\n }\n }, {\n key: 'refresh',\n value: function refresh(element, userProvidedConfig) {\n var _scrollerStyle;\n\n Object.assign(this._config, defaultConfig, userProvidedConfig);\n\n if (!element || element.nodeType !== 1) {\n throw new Error('HyperList requires a valid DOM Node container');\n }\n\n this._element = element;\n\n var config = this._config;\n\n var scroller = this._scroller || config.scroller || document.createElement(config.scrollerTagName || 'tr');\n\n // Default configuration option `useFragment` to `true`.\n if (typeof config.useFragment !== 'boolean') {\n this._config.useFragment = true;\n }\n\n if (!config.generate) {\n throw new Error('Missing required `generate` function');\n }\n\n if (!isNumber(config.total)) {\n throw new Error('Invalid required `total` value, expected number');\n }\n\n if (!Array.isArray(config.itemHeight) && !isNumber(config.itemHeight)) {\n throw new Error('\\n Invalid required `itemHeight` value, expected number or array\\n '.trim());\n } else if (isNumber(config.itemHeight)) {\n this._itemHeights = Array(config.total).fill(config.itemHeight);\n } else {\n this._itemHeights = config.itemHeight;\n }\n\n // Width and height should be coerced to string representations. Either in\n // `%` or `px`.\n Object.keys(defaultConfig).filter(function (prop) {\n return prop in config;\n }).forEach(function (prop) {\n var value = config[prop];\n var isValueNumber = isNumber(value);\n\n if (value && typeof value !== 'string' && typeof value !== 'number') {\n var msg = 'Invalid optional `' + prop + '`, expected string or number';\n throw new Error(msg);\n } else if (isValueNumber) {\n config[prop] = value + 'px';\n }\n });\n\n var isHoriz = Boolean(config.horizontal);\n var value = config[isHoriz ? 'width' : 'height'];\n\n if (value) {\n var isValueNumber = isNumber(value);\n var isValuePercent = isValueNumber ? false : value.slice(-1) === '%';\n // Compute the containerHeight as number\n var numberValue = isValueNumber ? value : parseInt(value.replace(/px|%/, ''), 10);\n var innerSize = window[isHoriz ? 'innerWidth' : 'innerHeight'];\n\n if (isValuePercent) {\n this._containerSize = innerSize * numberValue / 100;\n } else {\n this._containerSize = isNumber(value) ? value : numberValue;\n }\n }\n\n var scrollContainer = config.scrollContainer;\n var scrollerHeight = config.itemHeight * config.total;\n var maxElementHeight = this._maxElementHeight;\n\n if (scrollerHeight > maxElementHeight) {\n console.warn(['HyperList: The maximum element height', maxElementHeight + 'px has', 'been exceeded; please reduce your item height.'].join(' '));\n }\n\n // Decorate the container element with styles that will match\n // the user supplied configuration.\n var elementStyle = {\n width: '' + config.width,\n height: scrollContainer ? scrollerHeight + 'px' : '' + config.height,\n overflow: scrollContainer ? 'none' : 'auto',\n position: 'relative'\n };\n\n HyperList.mergeStyle(element, elementStyle);\n\n if (scrollContainer) {\n HyperList.mergeStyle(config.scrollContainer, { overflow: 'auto' });\n }\n\n var scrollerStyle = (_scrollerStyle = {\n opacity: '0',\n position: 'absolute'\n }, _defineProperty(_scrollerStyle, isHoriz ? 'height' : 'width', '1px'), _defineProperty(_scrollerStyle, isHoriz ? 'width' : 'height', scrollerHeight + 'px'), _scrollerStyle);\n\n HyperList.mergeStyle(scroller, scrollerStyle);\n\n // Only append the scroller element once.\n if (!this._scroller) {\n element.appendChild(scroller);\n }\n\n var padding = this._computeScrollPadding();\n this._scrollPaddingBottom = padding.bottom;\n this._scrollPaddingTop = padding.top;\n\n // Set the scroller instance.\n this._scroller = scroller;\n this._scrollHeight = this._computeScrollHeight();\n\n // Reuse the item positions if refreshed, otherwise set to empty array.\n this._itemPositions = this._itemPositions || Array(config.total).fill(0);\n\n // Each index in the array should represent the position in the DOM.\n this._computePositions(0);\n\n // Render after refreshing. Force render if we're calling refresh manually.\n this._renderChunk(this._lastRepaint !== null);\n\n if (typeof config.afterRender === 'function') {\n config.afterRender();\n }\n }\n }, {\n key: '_getRow',\n value: function _getRow(i) {\n var config = this._config;\n var item = config.generate(i);\n var height = item.height;\n\n if (height !== undefined && isNumber(height)) {\n item = item.element;\n\n // The height isn't the same as predicted, compute positions again\n if (height !== this._itemHeights[i]) {\n this._itemHeights[i] = height;\n this._computePositions(i);\n this._scrollHeight = this._computeScrollHeight(i);\n }\n } else {\n height = this._itemHeights[i];\n }\n\n if (!item || item.nodeType !== 1) {\n throw new Error('Generator did not return a DOM Node for index: ' + i);\n }\n\n addClass(item, config.rowClassName || 'vrow');\n\n var top = this._itemPositions[i] + this._scrollPaddingTop;\n\n HyperList.mergeStyle(item, _defineProperty({\n position: 'absolute'\n }, config.horizontal ? 'left' : 'top', top + 'px'));\n\n return item;\n }\n }, {\n key: '_getScrollPosition',\n value: function _getScrollPosition() {\n var config = this._config;\n\n if (typeof config.overrideScrollPosition === 'function') {\n return config.overrideScrollPosition();\n }\n\n return this._element[config.horizontal ? 'scrollLeft' : 'scrollTop'];\n }\n }, {\n key: '_renderChunk',\n value: function _renderChunk(force) {\n var config = this._config;\n var element = this._element;\n var scrollTop = this._getScrollPosition();\n var total = config.total;\n\n var from = config.reverse ? this._getReverseFrom(scrollTop) : this._getFrom(scrollTop) - 1;\n\n if (from < 0 || from - this._screenItemsLen < 0) {\n from = 0;\n }\n\n if (!force && this._lastFrom === from) {\n return false;\n }\n\n this._lastFrom = from;\n\n var to = from + this._cachedItemsLen;\n\n if (to > total || to + this._cachedItemsLen > total) {\n to = total;\n }\n\n // Append all the new rows in a document fragment that we will later append\n // to the parent node\n var fragment = config.useFragment ? document.createDocumentFragment() : []\n // Sometimes you'll pass fake elements to this tool and Fragments require\n // real elements.\n\n\n // The element that forces the container to scroll.\n ;var scroller = this._scroller;\n\n // Keep the scroller in the list of children.\n fragment[config.useFragment ? 'appendChild' : 'push'](scroller);\n\n for (var i = from; i < to; i++) {\n var row = this._getRow(i);\n\n fragment[config.useFragment ? 'appendChild' : 'push'](row);\n }\n\n if (config.applyPatch) {\n return config.applyPatch(element, fragment);\n }\n\n element.innerHTML = '';\n element.appendChild(fragment);\n }\n }, {\n key: '_computePositions',\n value: function _computePositions() {\n var from = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n\n var config = this._config;\n var total = config.total;\n var reverse = config.reverse;\n\n if (from < 1 && !reverse) {\n from = 1;\n }\n\n for (var i = from; i < total; i++) {\n if (reverse) {\n if (i === 0) {\n this._itemPositions[0] = this._scrollHeight - this._itemHeights[0];\n } else {\n this._itemPositions[i] = this._itemPositions[i - 1] - this._itemHeights[i];\n }\n } else {\n this._itemPositions[i] = this._itemHeights[i - 1] + this._itemPositions[i - 1];\n }\n }\n }\n }, {\n key: '_computeScrollHeight',\n value: function _computeScrollHeight() {\n var _HyperList$mergeStyle2,\n _this2 = this;\n\n var config = this._config;\n var isHoriz = Boolean(config.horizontal);\n var total = config.total;\n var scrollHeight = this._itemHeights.reduce(function (a, b) {\n return a + b;\n }, 0) + this._scrollPaddingBottom + this._scrollPaddingTop;\n\n HyperList.mergeStyle(this._scroller, (_HyperList$mergeStyle2 = {\n opacity: 0,\n position: 'absolute',\n top: '0px'\n }, _defineProperty(_HyperList$mergeStyle2, isHoriz ? 'height' : 'width', '1px'), _defineProperty(_HyperList$mergeStyle2, isHoriz ? 'width' : 'height', scrollHeight + 'px'), _HyperList$mergeStyle2));\n\n // Calculate the height median\n var sortedItemHeights = this._itemHeights.slice(0).sort(function (a, b) {\n return a - b;\n });\n var middle = Math.floor(total / 2);\n var averageHeight = total % 2 === 0 ? (sortedItemHeights[middle] + sortedItemHeights[middle - 1]) / 2 : sortedItemHeights[middle];\n\n var clientProp = isHoriz ? 'clientWidth' : 'clientHeight';\n var element = config.scrollContainer ? config.scrollContainer : this._element;\n var containerHeight = element[clientProp] ? element[clientProp] : this._containerSize;\n this._screenItemsLen = Math.ceil(containerHeight / averageHeight);\n this._containerSize = containerHeight;\n\n // Cache 3 times the number of items that fit in the container viewport.\n this._cachedItemsLen = Math.max(this._cachedItemsLen || 0, this._screenItemsLen * 3);\n this._averageHeight = averageHeight;\n\n if (config.reverse) {\n window.requestAnimationFrame(function () {\n if (isHoriz) {\n _this2._element.scrollLeft = scrollHeight;\n } else {\n _this2._element.scrollTop = scrollHeight;\n }\n });\n }\n\n return scrollHeight;\n }\n }, {\n key: '_computeScrollPadding',\n value: function _computeScrollPadding() {\n var config = this._config;\n var isHoriz = Boolean(config.horizontal);\n var isReverse = config.reverse;\n var styles = window.getComputedStyle(this._element);\n\n var padding = function padding(location) {\n var cssValue = styles.getPropertyValue('padding-' + location);\n return parseInt(cssValue, 10) || 0;\n };\n\n if (isHoriz && isReverse) {\n return {\n bottom: padding('left'),\n top: padding('right')\n };\n } else if (isHoriz) {\n return {\n bottom: padding('right'),\n top: padding('left')\n };\n } else if (isReverse) {\n return {\n bottom: padding('top'),\n top: padding('bottom')\n };\n } else {\n return {\n bottom: padding('bottom'),\n top: padding('top')\n };\n }\n }\n }, {\n key: '_getFrom',\n value: function _getFrom(scrollTop) {\n var i = 0;\n\n while (this._itemPositions[i] < scrollTop) {\n i++;\n }\n\n return i;\n }\n }, {\n key: '_getReverseFrom',\n value: function _getReverseFrom(scrollTop) {\n var i = this._config.total - 1;\n\n while (i > 0 && this._itemPositions[i] < scrollTop + this._containerSize) {\n i--;\n }\n\n return i;\n }\n }]);\n\n return HyperList;\n}();\n\nexports.default = HyperList;\nmodule.exports = exports['default'];\n\n},{}]},{},[1])(1)\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:host {\n display: block;\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 Hyperlist from 'hyperlist';\nimport { renderDefaultItem } from '../tree-item/default-tree-item';\nimport {\n TreeContext,\n TreeItem,\n TreeItemContext,\n TreeItemVisual,\n TreeModel,\n UpdateCallback,\n} from './tree-model';\n\n@Component({\n tag: 'ix-tree',\n styleUrl: 'tree.css',\n scoped: true,\n})\nexport class Tree {\n @Element() host!: HTMLIxTreeElement;\n\n /**\n * Initial root element will not be rendered\n */\n @Prop() root: string;\n\n /**\n * Tree model\n */\n @Prop() model: TreeModel<any>;\n\n /**\n * Render function of tree items\n */\n @Prop() renderItem: <T = any>(\n index: number,\n data: T,\n dataList: Array<T>,\n context: TreeContext,\n update: (callback: UpdateCallback) => void\n ) => HTMLElement;\n\n /**\n * Selection and collapsed state management\n */\n @Prop({ mutable: true }) context: TreeContext = {};\n\n /**\n * Context changed\n */\n @Event() contextChange: EventEmitter<TreeContext>;\n\n /**\n * Node toggled event\n * @since 1.5.0\n */\n @Event() nodeToggled: EventEmitter<{ id: string; isExpaned: boolean }>;\n\n /**\n * Node clicked event\n * @since 1.5.0\n */\n @Event() nodeClicked: EventEmitter<string>;\n\n /**\n * Emits removed nodes\n */\n @Event() nodeRemoved: EventEmitter<any>;\n\n private hyperlist: Hyperlist;\n\n private toggleListener = new Map<HTMLElement, Function>();\n private itemClickListener = new Map<HTMLElement, Function>();\n private updates = new Map<string, UpdateCallback>();\n\n private observer: MutationObserver;\n\n private hasFirstRender = false;\n\n private getVirtualizerOptions() {\n const list = this.buildTreeList(this.model[this.root]);\n\n let setToggleListener = (\n item: TreeItemVisual<any>,\n el: HTMLElement,\n index: number\n ) => {\n if (item.hasChildren && !this.toggleListener.has(el)) {\n const toggleCallback = (e: Event) => {\n e.preventDefault();\n e.stopPropagation();\n const context = this.getContext(list[index].id);\n context.isExpanded = !context.isExpanded;\n this.nodeToggled.emit({ id: item.id, isExpaned: context.isExpanded });\n this.setContext(item.id, context);\n };\n el.addEventListener('toggle', toggleCallback);\n this.toggleListener.set(el, toggleCallback);\n }\n };\n\n return {\n itemHeight: 32,\n total: list.length,\n generate: (index: number) => {\n const item = list[index];\n const renderedTreeItem = this.host.querySelector(\n `[data-tree-node-id=\"${item.id}\"]`\n ) as HTMLIxTreeItemElement;\n\n const context = this.getContext(item.id);\n\n if (renderedTreeItem) {\n renderedTreeItem.hasChildren = item.hasChildren;\n renderedTreeItem.context = { ...context };\n\n setToggleListener(item, renderedTreeItem, index);\n\n if (this.updates.has(item.id)) {\n const doUpdate = this.updates.get(item.id);\n doUpdate(item, { ...this.context });\n }\n\n return renderedTreeItem;\n }\n\n const update = (callback: UpdateCallback) => {\n this.updates.set(item.id, callback);\n };\n\n let innerElement: HTMLElement | null = null;\n if (this.renderItem) {\n innerElement = this.renderItem(\n index,\n item,\n list,\n { ...this.context },\n update\n );\n }\n\n if (innerElement === null) {\n innerElement = renderDefaultItem(item, context, update);\n }\n\n const el = innerElement;\n el.setAttribute('data-tree-node-id', item.id);\n el.style.paddingLeft = item.level + 'rem';\n el.style.paddingRight = '1rem';\n\n if (!this.itemClickListener.has(el)) {\n const itemClickCallback = (e: Event) => {\n e.preventDefault();\n e.stopPropagation();\n Object.values(this.context).forEach((c) => (c.isSelected = false));\n const context = this.getContext(item.id);\n context.isSelected = true;\n this.setContext(item.id, context);\n this.nodeClicked.emit(item.id);\n };\n el.addEventListener('itemClick', itemClickCallback);\n this.itemClickListener.set(el, itemClickCallback);\n }\n\n setToggleListener(item, el, index);\n\n return el;\n },\n };\n }\n\n private setContext(id: string, context: TreeItemContext) {\n this.context = {\n ...this.context,\n [id]: context,\n };\n\n this.contextChange.emit(this.context);\n }\n\n private getContext(id: string): TreeItemContext {\n if (!this.context) {\n return {\n isExpanded: false,\n isSelected: false,\n };\n }\n if (!this.context[id]) {\n this.context[id] = {\n isExpanded: false,\n isSelected: false,\n };\n }\n return this.context[id];\n }\n\n private buildTreeList(\n root: TreeItem<any>,\n level: number = 0\n ): TreeItemVisual<any>[] {\n const itemList: TreeItemVisual<any>[] = [];\n\n if (root?.hasChildren) {\n const newLevel = level + 1;\n root.children.forEach((id: string) => {\n const item = this.model[id];\n const context = this.getContext(id);\n itemList.push({ ...item, level });\n if (item.hasChildren && context.isExpanded) {\n itemList.push(...this.buildTreeList(item, newLevel));\n }\n });\n }\n\n return itemList;\n }\n\n componentDidLoad() {\n this.initList();\n\n this.observer = new MutationObserver((records) => {\n let removed = [];\n\n records.forEach((record) => {\n removed = [...removed, ...Array.from(record.removedNodes)];\n\n record.addedNodes.forEach((an) => {\n const index = removed.indexOf(an);\n if (index >= 0) {\n removed.splice(index, 1);\n }\n });\n });\n\n this.nodeRemoved.emit(removed);\n });\n\n this.observer.observe(this.host, {\n childList: true,\n });\n }\n\n componentWillRender() {\n this.hasFirstRender = true;\n\n if (this.isListInitialized()) {\n this.refreshList();\n } else {\n this.initList();\n }\n }\n\n disconnectedCallback() {\n this.hyperlist.destroy();\n this.observer.disconnect();\n }\n\n @Watch('model')\n modelChange() {\n if (this.hasFirstRender && !this.isListInitialized()) {\n this.initList();\n }\n }\n\n private isListInitialized() {\n const itemPositions = this.hyperlist?._itemPositions;\n\n return (\n itemPositions !== undefined &&\n itemPositions.length &&\n !itemPositions?.some(\n (item: number) => item === undefined || Number.isNaN(item)\n )\n );\n }\n\n private refreshList() {\n if (this.hyperlist) {\n this.hyperlist.refresh(this.host, this.getVirtualizerOptions());\n }\n }\n\n private initList() {\n this.hyperlist?.destroy();\n const config = this.getVirtualizerOptions();\n this.hyperlist = new Hyperlist(this.host, config);\n }\n\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -1,23 +1,8 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
|
2
|
+
import { U as UploadFileState } from './upload-file-state.js';
|
|
2
3
|
import { d as defineCustomElement$3 } from './button.js';
|
|
3
4
|
import { d as defineCustomElement$2 } from './spinner.js';
|
|
4
5
|
|
|
5
|
-
/*
|
|
6
|
-
* SPDX-FileCopyrightText: 2023 Siemens AG
|
|
7
|
-
*
|
|
8
|
-
* SPDX-License-Identifier: MIT
|
|
9
|
-
*
|
|
10
|
-
* This source code is licensed under the MIT license found in the
|
|
11
|
-
* LICENSE file in the root directory of this source tree.
|
|
12
|
-
*/
|
|
13
|
-
var UploadFileState;
|
|
14
|
-
(function (UploadFileState) {
|
|
15
|
-
UploadFileState["SELECT_FILE"] = "SELECT_FILE";
|
|
16
|
-
UploadFileState["LOADING"] = "LOADING";
|
|
17
|
-
UploadFileState["UPLOAD_FAILED"] = "UPLOAD_FAILED";
|
|
18
|
-
UploadFileState["UPLOAD_SUCCESSED"] = "UPLOAD_SUCCESSED";
|
|
19
|
-
})(UploadFileState || (UploadFileState = {}));
|
|
20
|
-
|
|
21
6
|
const uploadCss = ".sc-ix-upload-h{display:block;min-height:4rem;height:4rem}.sc-ix-upload-h .file-upload-area.sc-ix-upload{display:flex;flex-direction:row;align-items:center;justify-content:space-between;overflow:hidden;height:100%;width:100%;padding:1rem;border:1px dashed var(--theme-upload--border-color);border-radius:var(--theme-upload--border-radius);color:var(--theme-upload-text--color)}.sc-ix-upload-h .file-upload-area.multiline.sc-ix-upload{max-height:unset;height:auto}.sc-ix-upload-h .file-upload-area.multiline.sc-ix-upload .glyph.sc-ix-upload{align-self:flex-start;-webkit-margin-before:3px;margin-block-start:3px}.sc-ix-upload-h .file-upload-area.multiline.sc-ix-upload>div.sc-ix-upload{align-self:flex-start}.sc-ix-upload-h .file-upload-area.sc-ix-upload:not(.multiline) .state.sc-ix-upload,.sc-ix-upload-h .file-upload-area.sc-ix-upload:not(.multiline) .upload-text.sc-ix-upload{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sc-ix-upload-h .file-upload-area.file-over.sc-ix-upload{border-color:var(--theme-upload--border-color--dragover);border-style:solid}.sc-ix-upload-h .file-upload-area.checking.sc-ix-upload{color:var(--theme-upload-text--color--checking);border-style:solid}.sc-ix-upload-h .file-upload-area.disabled.sc-ix-upload{border-style:solid;color:var(--theme-upload-text--color--disabled)}.sc-ix-upload-h .file-upload-area.sc-ix-upload ix-button.sc-ix-upload{-webkit-margin-start:1rem;margin-inline-start:1rem}.sc-ix-upload-h .file-upload-area.sc-ix-upload .upload-browser.sc-ix-upload{opacity:0;overflow:hidden;position:absolute;z-index:-1}.sc-ix-upload-h .file-upload-area.sc-ix-upload .loader.sc-ix-upload{margin:2.187rem auto;font-size:0.937rem;width:1rem;height:1rem;border-radius:50%;position:relative;text-indent:-9999em;animation:optimise-loading 1.1s infinite ease;transform:translateZ(0)}.sc-ix-upload-h .file-upload-area.sc-ix-upload .upload-filename.sc-ix-upload{margin-bottom:1rem}.sc-ix-upload-h .file-upload-area.sc-ix-upload .state.sc-ix-upload{display:flex;align-items:center}.sc-ix-upload-h .file-upload-area.sc-ix-upload .state.sc-ix-upload>ix-spinner.sc-ix-upload{-webkit-margin-end:0.5rem;margin-inline-end:0.5rem;height:1.5rem;width:1.5rem}.sc-ix-upload-h .file-upload-area.sc-ix-upload .state.sc-ix-upload>i.sc-ix-upload{-webkit-margin-end:0.5rem;margin-inline-end:0.5rem}.sc-ix-upload-h .file-upload-area.sc-ix-upload .state.sc-ix-upload>i.glyph-error.sc-ix-upload{color:var(--theme-color-alarm)}.sc-ix-upload-h .file-upload-area.sc-ix-upload .state.sc-ix-upload>i.glyph-success.sc-ix-upload{color:var(--theme-color-success)}";
|
|
22
7
|
|
|
23
8
|
const Upload = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"ix-upload.js","mappings":"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","names":[],"sources":["./src/components/upload/upload-file-state.ts","./src/components/upload/upload.scss?tag=ix-upload&encapsulation=scoped","./src/components/upload/upload.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\nexport enum UploadFileState {\n SELECT_FILE = 'SELECT_FILE',\n LOADING = 'LOADING',\n UPLOAD_FAILED = 'UPLOAD_FAILED',\n UPLOAD_SUCCESSED = 'UPLOAD_SUCCESSED',\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@import 'common-variables';\n@import 'mixins/text-truncation';\n\n:host {\n display: block;\n min-height: 4rem;\n height: 4rem;\n\n .file-upload-area {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n\n overflow: hidden;\n\n height: 100%;\n width: 100%;\n\n padding: $default-space;\n\n border: 1px dashed var(--theme-upload--border-color);\n border-radius: var(--theme-upload--border-radius);\n color: var(--theme-upload-text--color);\n\n &.multiline {\n max-height: unset;\n height: auto;\n\n .glyph {\n align-self: flex-start;\n margin-block-start: 3px;\n }\n\n > div {\n align-self: flex-start;\n }\n }\n\n &:not(.multiline) {\n .state,\n .upload-text {\n @include ellipsis;\n }\n }\n\n &.file-over {\n border-color: var(--theme-upload--border-color--dragover);\n border-style: solid;\n }\n\n &.checking {\n color: var(--theme-upload-text--color--checking);\n border-style: solid;\n }\n\n &.disabled {\n border-style: solid;\n color: var(--theme-upload-text--color--disabled);\n }\n\n ix-button {\n margin-inline-start: $default-space;\n }\n\n .upload-browser {\n opacity: 0;\n overflow: hidden;\n position: absolute;\n z-index: -1;\n }\n\n .loader {\n margin: 2.187rem auto;\n font-size: 0.937rem;\n width: $default-space;\n height: $default-space;\n border-radius: 50%;\n position: relative;\n text-indent: -9999em;\n animation: optimise-loading 1.1s infinite ease;\n transform: translateZ(0);\n }\n\n .upload-filename {\n margin-bottom: $default-space;\n }\n\n .state {\n display: flex;\n align-items: center;\n\n > ix-spinner {\n margin-inline-end: $small-space;\n height: $large-space;\n width: $large-space;\n }\n\n > i {\n margin-inline-end: $small-space;\n\n &.glyph-error {\n color: var(--theme-color-alarm);\n }\n\n &.glyph-success {\n color: var(--theme-color-success);\n }\n }\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\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport { UploadFileState } from './upload-file-state';\n\n@Component({\n tag: 'ix-upload',\n styleUrl: 'upload.scss',\n scoped: true,\n})\nexport class Upload {\n /**\n * The accept attribute specifies the types of files that the server accepts (that can be submitted through a file upload).\n * [accept]{@link \"https://www.w3schools.com/tags/att_input_accept.asp\"}\n */\n @Prop() accept: string;\n\n /**\n * If multiple is true the user can drop or select multiple files\n */\n @Prop() multiple = false;\n\n /**\n * Whether the text should wrap to more than one line\n */\n @Prop() multiline = false;\n\n /**\n * Disable all input events\n */\n @Prop() disabled = false;\n\n /**\n * After a file is uploaded you can set the upload component to a defined state\n */\n @Prop() state: UploadFileState = UploadFileState.SELECT_FILE;\n\n /**\n * Will be used by state = UploadFileState.SELECT_FILE\n */\n @Prop() selectFileText = '+ Drag files here or…';\n\n /**\n * Will be used by state = UploadFileState.LOADING\n */\n @Prop() loadingText = 'Checking files…';\n\n /**\n * Will be used by state = UploadFileState.UPLOAD_FAILED\n */\n @Prop() uploadFailedText = 'Upload failed. Please try again.';\n\n /**\n * Will be used by state = UploadFileState.UPLOAD_SUCCESSED\n */\n @Prop() uploadSuccessText = 'Upload successful';\n\n /**\n * Label for upload file button\n */\n @Prop() i18nUploadFile = 'Upload file…';\n\n /**\n * Text for disabled state\n */\n @Prop() i18nUploadDisabled = 'File upload currently not possible.';\n\n /**\n * You get an array of Files after drop-action or browse action is finished\n */\n @Event() filesChanged: EventEmitter<Array<File>>;\n\n @Element() hostElement!: HTMLIxUploadElement;\n\n get inputElement(): HTMLInputElement {\n return this.hostElement.querySelector('#upload-browser');\n }\n\n @State() isFileOver = false;\n\n private filesToUpload: Array<File>;\n\n constructor() {}\n\n private fileDropped(evt: DragEvent) {\n evt.preventDefault();\n\n const file: File | FileList = evt.dataTransfer.files;\n this.isFileOver = false;\n\n this.filesToUpload = this.convertToFileArray(file);\n\n this.filesChanged.emit(this.filesToUpload);\n }\n\n private fileOver(event: DragEvent) {\n event.preventDefault();\n event.dataTransfer.dropEffect = 'move';\n\n if (!this.multiple && event.dataTransfer.items.length > 1) {\n event.preventDefault();\n event.stopPropagation();\n event.dataTransfer.effectAllowed = 'none';\n event.dataTransfer.dropEffect = 'none';\n } else {\n this.isFileOver = true;\n }\n }\n\n private fileLeave() {\n this.isFileOver = false;\n }\n\n private fileChangeEvent(event: any) {\n this.filesToUpload = this.convertToFileArray(event.target.files);\n\n this.filesChanged.emit(this.filesToUpload);\n\n // Workaround for bug in native input element, that prevents the user from uploading\n // a file with the same name as the most recent one, but with changed content.\n this.inputElement.type = '';\n this.inputElement.type = 'file';\n }\n\n private convertToFileArray(filesFromEvent: FileList | File): File[] {\n let files = [];\n if (filesFromEvent instanceof FileList) {\n files = Array.from(filesFromEvent);\n } else {\n files = [filesFromEvent];\n }\n return files;\n }\n\n private renderUploadState() {\n if (this.disabled) {\n return (\n <span class=\"state\">\n <span class=\"upload-text\">{this.i18nUploadDisabled}</span>\n </span>\n );\n }\n\n switch (this.state) {\n case UploadFileState.SELECT_FILE:\n return (\n <span class=\"state\">\n <span class=\"upload-text\">{this.selectFileText}</span>\n </span>\n );\n case UploadFileState.LOADING:\n return (\n <span class=\"state\">\n <ix-spinner variant=\"primary\"></ix-spinner>\n <span class=\"upload-text\">{this.loadingText}</span>\n </span>\n );\n case UploadFileState.UPLOAD_FAILED:\n return (\n <span class=\"state\">\n <i class=\"glyph glyph-error\"></i>\n <span class=\"upload-text\">{this.uploadFailedText}</span>\n </span>\n );\n case UploadFileState.UPLOAD_SUCCESSED:\n return (\n <span class=\"state\">\n <i class=\"glyph glyph-success\"></i>\n <span class=\"upload-text\">{this.uploadSuccessText}</span>\n </span>\n );\n default:\n return '';\n }\n }\n\n /**\n * Set files\n * @param obj\n */\n @Method()\n async setFilesToUpload(obj: any) {\n this.filesToUpload = obj;\n }\n\n render() {\n return (\n <Host>\n <div\n class={{\n 'file-upload-area': true,\n 'file-over': this.isFileOver,\n checking: this.state === UploadFileState.LOADING,\n disabled: this.disabled,\n multiline: this.multiline,\n }}\n onDrop={(e) => this.fileDropped(e)}\n onDragOver={(e) => this.fileOver(e)}\n onDragLeave={() => this.fileLeave()}\n draggable={!this.disabled}\n >\n {this.renderUploadState()}\n <div>\n <input\n multiple={this.multiple}\n type=\"file\"\n class=\"upload-browser\"\n id=\"upload-browser\"\n onChange={(e) => {\n this.fileChangeEvent(e);\n }}\n accept={this.accept}\n />\n <ix-button\n tabindex=\"-1\"\n outline\n onClick={() => this.inputElement.click()}\n disabled={this.disabled || this.state === UploadFileState.LOADING}\n >\n {this.i18nUploadFile}\n </ix-button>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"ix-upload.js","mappings":"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","names":[],"sources":["./src/components/upload/upload.scss?tag=ix-upload&encapsulation=scoped","./src/components/upload/upload.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\n@import 'common-variables';\n@import 'mixins/text-truncation';\n\n:host {\n display: block;\n min-height: 4rem;\n height: 4rem;\n\n .file-upload-area {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n\n overflow: hidden;\n\n height: 100%;\n width: 100%;\n\n padding: $default-space;\n\n border: 1px dashed var(--theme-upload--border-color);\n border-radius: var(--theme-upload--border-radius);\n color: var(--theme-upload-text--color);\n\n &.multiline {\n max-height: unset;\n height: auto;\n\n .glyph {\n align-self: flex-start;\n margin-block-start: 3px;\n }\n\n > div {\n align-self: flex-start;\n }\n }\n\n &:not(.multiline) {\n .state,\n .upload-text {\n @include ellipsis;\n }\n }\n\n &.file-over {\n border-color: var(--theme-upload--border-color--dragover);\n border-style: solid;\n }\n\n &.checking {\n color: var(--theme-upload-text--color--checking);\n border-style: solid;\n }\n\n &.disabled {\n border-style: solid;\n color: var(--theme-upload-text--color--disabled);\n }\n\n ix-button {\n margin-inline-start: $default-space;\n }\n\n .upload-browser {\n opacity: 0;\n overflow: hidden;\n position: absolute;\n z-index: -1;\n }\n\n .loader {\n margin: 2.187rem auto;\n font-size: 0.937rem;\n width: $default-space;\n height: $default-space;\n border-radius: 50%;\n position: relative;\n text-indent: -9999em;\n animation: optimise-loading 1.1s infinite ease;\n transform: translateZ(0);\n }\n\n .upload-filename {\n margin-bottom: $default-space;\n }\n\n .state {\n display: flex;\n align-items: center;\n\n > ix-spinner {\n margin-inline-end: $small-space;\n height: $large-space;\n width: $large-space;\n }\n\n > i {\n margin-inline-end: $small-space;\n\n &.glyph-error {\n color: var(--theme-color-alarm);\n }\n\n &.glyph-success {\n color: var(--theme-color-success);\n }\n }\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\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport { UploadFileState } from './upload-file-state';\n\n@Component({\n tag: 'ix-upload',\n styleUrl: 'upload.scss',\n scoped: true,\n})\nexport class Upload {\n /**\n * The accept attribute specifies the types of files that the server accepts (that can be submitted through a file upload).\n * [accept]{@link \"https://www.w3schools.com/tags/att_input_accept.asp\"}\n */\n @Prop() accept: string;\n\n /**\n * If multiple is true the user can drop or select multiple files\n */\n @Prop() multiple = false;\n\n /**\n * Whether the text should wrap to more than one line\n */\n @Prop() multiline = false;\n\n /**\n * Disable all input events\n */\n @Prop() disabled = false;\n\n /**\n * After a file is uploaded you can set the upload component to a defined state\n */\n @Prop() state: UploadFileState = UploadFileState.SELECT_FILE;\n\n /**\n * Will be used by state = UploadFileState.SELECT_FILE\n */\n @Prop() selectFileText = '+ Drag files here or…';\n\n /**\n * Will be used by state = UploadFileState.LOADING\n */\n @Prop() loadingText = 'Checking files…';\n\n /**\n * Will be used by state = UploadFileState.UPLOAD_FAILED\n */\n @Prop() uploadFailedText = 'Upload failed. Please try again.';\n\n /**\n * Will be used by state = UploadFileState.UPLOAD_SUCCESSED\n */\n @Prop() uploadSuccessText = 'Upload successful';\n\n /**\n * Label for upload file button\n */\n @Prop() i18nUploadFile = 'Upload file…';\n\n /**\n * Text for disabled state\n */\n @Prop() i18nUploadDisabled = 'File upload currently not possible.';\n\n /**\n * You get an array of Files after drop-action or browse action is finished\n */\n @Event() filesChanged: EventEmitter<Array<File>>;\n\n @Element() hostElement!: HTMLIxUploadElement;\n\n get inputElement(): HTMLInputElement {\n return this.hostElement.querySelector('#upload-browser');\n }\n\n @State() isFileOver = false;\n\n private filesToUpload: Array<File>;\n\n constructor() {}\n\n private fileDropped(evt: DragEvent) {\n evt.preventDefault();\n\n const file: File | FileList = evt.dataTransfer.files;\n this.isFileOver = false;\n\n this.filesToUpload = this.convertToFileArray(file);\n\n this.filesChanged.emit(this.filesToUpload);\n }\n\n private fileOver(event: DragEvent) {\n event.preventDefault();\n event.dataTransfer.dropEffect = 'move';\n\n if (!this.multiple && event.dataTransfer.items.length > 1) {\n event.preventDefault();\n event.stopPropagation();\n event.dataTransfer.effectAllowed = 'none';\n event.dataTransfer.dropEffect = 'none';\n } else {\n this.isFileOver = true;\n }\n }\n\n private fileLeave() {\n this.isFileOver = false;\n }\n\n private fileChangeEvent(event: any) {\n this.filesToUpload = this.convertToFileArray(event.target.files);\n\n this.filesChanged.emit(this.filesToUpload);\n\n // Workaround for bug in native input element, that prevents the user from uploading\n // a file with the same name as the most recent one, but with changed content.\n this.inputElement.type = '';\n this.inputElement.type = 'file';\n }\n\n private convertToFileArray(filesFromEvent: FileList | File): File[] {\n let files = [];\n if (filesFromEvent instanceof FileList) {\n files = Array.from(filesFromEvent);\n } else {\n files = [filesFromEvent];\n }\n return files;\n }\n\n private renderUploadState() {\n if (this.disabled) {\n return (\n <span class=\"state\">\n <span class=\"upload-text\">{this.i18nUploadDisabled}</span>\n </span>\n );\n }\n\n switch (this.state) {\n case UploadFileState.SELECT_FILE:\n return (\n <span class=\"state\">\n <span class=\"upload-text\">{this.selectFileText}</span>\n </span>\n );\n case UploadFileState.LOADING:\n return (\n <span class=\"state\">\n <ix-spinner variant=\"primary\"></ix-spinner>\n <span class=\"upload-text\">{this.loadingText}</span>\n </span>\n );\n case UploadFileState.UPLOAD_FAILED:\n return (\n <span class=\"state\">\n <i class=\"glyph glyph-error\"></i>\n <span class=\"upload-text\">{this.uploadFailedText}</span>\n </span>\n );\n case UploadFileState.UPLOAD_SUCCESSED:\n return (\n <span class=\"state\">\n <i class=\"glyph glyph-success\"></i>\n <span class=\"upload-text\">{this.uploadSuccessText}</span>\n </span>\n );\n default:\n return '';\n }\n }\n\n /**\n * Set files\n * @param obj\n */\n @Method()\n async setFilesToUpload(obj: any) {\n this.filesToUpload = obj;\n }\n\n render() {\n return (\n <Host>\n <div\n class={{\n 'file-upload-area': true,\n 'file-over': this.isFileOver,\n checking: this.state === UploadFileState.LOADING,\n disabled: this.disabled,\n multiline: this.multiline,\n }}\n onDrop={(e) => this.fileDropped(e)}\n onDragOver={(e) => this.fileOver(e)}\n onDragLeave={() => this.fileLeave()}\n draggable={!this.disabled}\n >\n {this.renderUploadState()}\n <div>\n <input\n multiple={this.multiple}\n type=\"file\"\n class=\"upload-browser\"\n id=\"upload-browser\"\n onChange={(e) => {\n this.fileChangeEvent(e);\n }}\n accept={this.accept}\n />\n <ix-button\n tabindex=\"-1\"\n outline\n onClick={() => this.inputElement.click()}\n disabled={this.disabled || this.state === UploadFileState.LOADING}\n >\n {this.i18nUploadFile}\n </ix-button>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, h, Fragment, Host } from '@stencil/core/internal/client';
|
|
2
2
|
import { d as defineCustomElement$2 } from './icon.js';
|
|
3
3
|
|
|
4
|
-
const workflowStepCss = ".sc-ix-workflow-step-h .step.sc-ix-workflow-step{display:flex;flex-direction:column;align-items:center;background-color:var(--theme-workflow-step--background);border-radius:var(--theme-workflow--border-radius);width:auto;padding:1.125rem 0 0.5rem 0;height:4rem;width:12.75rem}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step{display:flex;width:100%;align-items:center;justify-content:center}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.sc-ix-workflow-step{width:100%;height:0.125rem;background-color:var(--theme-workflow-step-icon-default--color)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.first.sc-ix-workflow-step,.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{width:50%;margin:0 0 0 auto}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{margin:0 auto 0 0}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.selected.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-default--color--selected)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.done.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-done--color)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.done.selected.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-done--color--selected)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.warning.sc-ix-workflow-step{background-color:var(--theme-color-warning)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.success.sc-ix-workflow-step{background-color:var(--theme-color-success)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.error.sc-ix-workflow-step{background-color:var(--theme-color-alarm)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .iconWrapper.sc-ix-workflow-step{display:flex;align-items:center;justify-content:center;position:absolute}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .iconWrapper.sc-ix-workflow-step .absolute.sc-ix-workflow-step{position:absolute}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .text.sc-ix-workflow-step{margin-top:1rem;width:auto;padding:0 0.5rem}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step{flex-direction:row;padding:0}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step{width:auto;padding-left:1.125rem;height:4rem}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.sc-ix-workflow-step{width:0.125rem;height:100%}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.first.sc-ix-workflow-step,.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{height:50%;margin:auto 0 0 0}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{margin:0 0 auto 0}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .text.sc-ix-workflow-step{margin-top:0;margin-left:1rem;padding:0}.sc-ix-workflow-step-h .step.sc-ix-workflow-step:hover{background-color:var(--theme-workflow-step--background--hover)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step:active{background-color:var(--theme-workflow-step--background--active)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step:focus-visible{outline:1px solid var(--focus--border-color);border-radius:0}.sc-ix-workflow-step-h .step.selected.sc-ix-workflow-step{background-color:var(--theme-workflow-step--background--selected)}.sc-ix-workflow-step-h .step.disabled.sc-ix-workflow-step{background-color:var(--theme-workflow-step--background--disabled)}.sc-ix-workflow-step-h .step.disabled.sc-ix-workflow-step .line.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-default--color--disabled) !important}.sc-ix-workflow-step-h .step.disabled.sc-ix-workflow-step .text.sc-ix-workflow-step{color:var(--theme-workflow-step--color--disabled)}";
|
|
4
|
+
const workflowStepCss = ".sc-ix-workflow-step-h .step.sc-ix-workflow-step{display:flex;flex-direction:column;align-items:center;background-color:var(--theme-workflow-step--background);border-radius:var(--theme-workflow--border-radius);width:auto;padding:1.125rem 0 0.5rem 0;height:4rem;width:12.75rem}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step{display:flex;width:100%;align-items:center;justify-content:center;position:relative}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.sc-ix-workflow-step{width:100%;height:0.125rem;background-color:var(--theme-workflow-step-icon-default--color)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.first.sc-ix-workflow-step,.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{width:50%;margin:0 0 0 auto}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{margin:0 auto 0 0}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.selected.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-default--color--selected)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.done.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-done--color)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.done.selected.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-done--color--selected)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.warning.sc-ix-workflow-step{background-color:var(--theme-color-warning)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.success.sc-ix-workflow-step{background-color:var(--theme-color-success)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.error.sc-ix-workflow-step{background-color:var(--theme-color-alarm)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .iconWrapper.sc-ix-workflow-step{display:flex;align-items:center;justify-content:center;position:absolute}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .iconWrapper.sc-ix-workflow-step .absolute.sc-ix-workflow-step{position:absolute}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .text.sc-ix-workflow-step{margin-top:1rem;width:auto;padding:0 0.5rem}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step{flex-direction:row;padding:0}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step{width:auto;padding-left:1.125rem;height:4rem}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.sc-ix-workflow-step{width:0.125rem;height:100%}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.first.sc-ix-workflow-step,.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{height:50%;margin:auto 0 0 0}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{margin:0 0 auto 0}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .text.sc-ix-workflow-step{margin-top:0;margin-left:1rem;padding:0}.sc-ix-workflow-step-h .step.sc-ix-workflow-step:hover{background-color:var(--theme-workflow-step--background--hover)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step:active{background-color:var(--theme-workflow-step--background--active)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step:focus-visible{outline:1px solid var(--focus--border-color);border-radius:0}.sc-ix-workflow-step-h .step.selected.sc-ix-workflow-step{background-color:var(--theme-workflow-step--background--selected)}.sc-ix-workflow-step-h .step.disabled.sc-ix-workflow-step{background-color:var(--theme-workflow-step--background--disabled)}.sc-ix-workflow-step-h .step.disabled.sc-ix-workflow-step .line.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-default--color--disabled) !important}.sc-ix-workflow-step-h .step.disabled.sc-ix-workflow-step .text.sc-ix-workflow-step{color:var(--theme-workflow-step--color--disabled)}";
|
|
5
5
|
|
|
6
6
|
const WorkflowStep = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
7
7
|
constructor() {
|