@siemens/ix 0.0.0-pr-1373-20240705054533 → 0.0.0-pr-1522-20241022123832
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/a11y.js +1 -1
- package/components/a11y.js.map +1 -1
- package/components/application-header.js +51 -15
- package/components/application-header.js.map +1 -1
- package/components/avatar.js +1 -1
- package/components/avatar.js.map +1 -1
- package/components/base-button.js +2 -2
- package/components/base-button.js.map +1 -1
- package/components/button.js +2 -2
- package/components/button.js.map +1 -1
- package/components/card-accordion.js +6 -6
- package/components/card-accordion.js.map +1 -1
- package/components/card-content.js +1 -1
- package/components/card-title.js +1 -1
- package/components/card.js +4 -4
- package/components/card.js.map +1 -1
- package/components/col.js +1 -1
- package/components/col.js.map +1 -1
- package/components/context.js +6 -3
- package/components/context.js.map +1 -1
- package/components/date-picker.js +53 -41
- package/components/date-picker.js.map +1 -1
- package/components/date-time-card.js +1 -1
- package/components/divider.js +1 -1
- package/components/dropdown-controller.js +148 -0
- package/components/dropdown-controller.js.map +1 -0
- package/components/dropdown-item.js +4 -4
- package/components/dropdown-item.js.map +1 -1
- package/components/dropdown.js +115 -201
- package/components/dropdown.js.map +1 -1
- package/components/filter-chip.js +1 -1
- package/components/floating-ui.dom.esm.js +533 -60
- package/components/floating-ui.dom.esm.js.map +1 -1
- package/components/group-context-menu.js +1 -1
- package/components/group-context-menu.js.map +1 -1
- package/components/group-item.js +4 -8
- package/components/group-item.js.map +1 -1
- package/components/icon-button.js +1 -1
- package/components/index.js +1 -0
- package/components/index.js.map +1 -1
- package/components/ix-action-card.js +1 -1
- package/components/ix-action-card.js.map +1 -1
- package/components/ix-application-sidebar.js +1 -1
- package/components/ix-application-switch-modal.js +1 -1
- package/components/ix-application.js +4 -4
- package/components/ix-application.js.map +1 -1
- package/components/ix-basic-navigation.js +18 -12
- package/components/ix-basic-navigation.js.map +1 -1
- package/components/ix-blind.js +5 -5
- package/components/ix-blind.js.map +1 -1
- package/components/ix-breadcrumb.js +9 -10
- package/components/ix-breadcrumb.js.map +1 -1
- package/components/ix-card-list.js +6 -6
- package/components/ix-card-list.js.map +1 -1
- package/components/ix-category-filter.js +129 -71
- package/components/ix-category-filter.js.map +1 -1
- package/components/ix-chip.js +4 -4
- package/components/ix-chip.js.map +1 -1
- package/components/ix-content-header.js +2 -2
- package/components/ix-content-header.js.map +1 -1
- package/components/ix-content.js +3 -3
- package/components/ix-css-grid-item.js +1 -1
- package/components/ix-css-grid.js +8 -3
- package/components/ix-css-grid.js.map +1 -1
- package/components/ix-date-dropdown.js +25 -16
- package/components/ix-date-dropdown.js.map +1 -1
- package/components/ix-datetime-picker.js +1 -1
- package/components/ix-drawer.js +2 -2
- package/components/ix-dropdown-button.js +5 -7
- package/components/ix-dropdown-button.js.map +1 -1
- package/components/ix-dropdown-header.js +1 -1
- package/components/ix-dropdown-header.js.map +1 -1
- package/components/ix-dropdown-quick-actions.js +1 -1
- package/components/ix-empty-state.js +1 -1
- package/components/ix-empty-state.js.map +1 -1
- package/components/ix-event-list-item.js +4 -4
- package/components/ix-event-list.js +2 -2
- package/components/ix-expanding-search.js +4 -4
- package/components/ix-flip-tile-content.js +1 -1
- package/components/ix-flip-tile.js +4 -4
- package/components/ix-form-field.js +2 -2
- package/components/ix-form-field.js.map +1 -1
- package/components/ix-group.js +69 -44
- package/components/ix-group.js.map +1 -1
- package/components/ix-icon-toggle-button.js +1 -2
- package/components/ix-icon-toggle-button.js.map +1 -1
- package/components/ix-input-group.js +1 -1
- package/components/ix-key-value-list.js +1 -1
- package/components/ix-key-value.js +1 -1
- package/components/ix-kpi.js +3 -3
- package/components/ix-kpi.js.map +1 -1
- package/components/ix-link-button.js +3 -3
- package/components/ix-map-navigation.js +21 -15
- package/components/ix-map-navigation.js.map +1 -1
- package/components/ix-menu-about-item.js +1 -1
- package/components/ix-menu-about-news.js +4 -4
- package/components/ix-menu-about-news.js.map +1 -1
- package/components/ix-menu-about.js +1 -1
- package/components/ix-menu-avatar.js +2 -2
- package/components/ix-menu-category.js +5 -5
- package/components/ix-menu-category.js.map +1 -1
- package/components/ix-menu-settings-item.js +1 -1
- package/components/ix-menu.js +12 -12
- package/components/ix-menu.js.map +1 -1
- package/components/ix-message-bar.js +1 -1
- package/components/ix-modal-example.js +1 -1
- package/components/ix-modal-footer.js +1 -1
- package/components/ix-modal-loading.js +1 -1
- package/components/ix-modal.js +11 -4
- package/components/ix-modal.js.map +1 -1
- package/components/ix-pagination.js +3 -3
- package/components/ix-pagination.js.map +1 -1
- package/components/ix-pane-layout.js +1 -1
- package/components/ix-pane.js +6 -6
- package/components/ix-pane.js.map +1 -1
- package/components/ix-pill.js +4 -4
- package/components/ix-pill.js.map +1 -1
- package/components/ix-playground-internal.js +1 -1
- package/components/ix-playground-internal.js.map +1 -1
- package/components/ix-push-card.js +1 -1
- package/components/ix-push-card.js.map +1 -1
- package/components/ix-slider.js +21 -14
- package/components/ix-slider.js.map +1 -1
- package/components/ix-split-button-item.js +1 -1
- package/components/ix-split-button.js +1 -1
- package/components/ix-tile.js +4 -4
- package/components/ix-tile.js.map +1 -1
- package/components/ix-toast-container.js +2 -2
- package/components/ix-toast-container.js.map +1 -1
- package/components/ix-toggle-button.js +2 -2
- package/components/ix-toggle.js +2 -2
- package/components/ix-tree.js +21 -7
- package/components/ix-tree.js.map +1 -1
- package/components/ix-upload.js +60 -4
- package/components/ix-upload.js.map +1 -1
- package/components/ix-validation-tooltip.js +2 -2
- package/components/ix-workflow-step.js +3 -3
- package/components/ix-workflow-step.js.map +1 -1
- package/components/ix-workflow-steps.js +1 -1
- package/components/ix-workflow-steps.js.map +1 -1
- package/components/layout-grid.js +2 -2
- package/components/layout-grid.js.map +1 -1
- package/components/listener.js +2 -2
- package/components/listener.js.map +1 -1
- package/components/logical-filter-operator.js +1 -1
- package/components/logical-filter-operator.js.map +1 -1
- package/components/make-ref.js +7 -12
- package/components/make-ref.js.map +1 -1
- package/components/map-navigation-overlay.js +2 -2
- package/components/menu-avatar-item.js +1 -1
- package/components/menu-expand-icon.js +1 -1
- package/components/menu-expand-icon.js.map +1 -1
- package/components/menu-item.js +14 -14
- package/components/menu-item.js.map +1 -1
- package/components/menu-tabs-fc.js +17 -14
- package/components/menu-tabs-fc.js.map +1 -1
- package/components/modal-content.js +2 -2
- package/components/modal-content.js.map +1 -1
- package/components/modal-header.js +2 -2
- package/components/modal-header.js.map +1 -1
- package/components/row.js +1 -1
- package/components/row.js.map +1 -1
- package/components/select-item.js +1 -1
- package/components/select.js +83 -73
- package/components/select.js.map +1 -1
- package/components/shadow-dom.js +1 -1
- package/components/shadow-dom.js.map +1 -1
- package/components/spinner.js +1 -1
- package/components/tab-item.js +3 -3
- package/components/tab-item.js.map +1 -1
- package/components/tabs.js +77 -43
- package/components/tabs.js.map +1 -1
- package/components/theme-switcher.js +1 -0
- package/components/theme-switcher.js.map +1 -1
- package/components/time-picker.js +4 -4
- package/components/time-picker.js.map +1 -1
- package/components/toast.js +2 -2
- package/components/toast.js.map +1 -1
- package/components/tooltip.js +25 -23
- package/components/tooltip.js.map +1 -1
- package/components/tree-item.js +8 -8
- package/components/tree-item.js.map +1 -1
- package/components/typography.js +3 -25
- package/components/typography.js.map +1 -1
- package/dist/cjs/{a11y-d3ce56d1.js → a11y-eba397e8.js} +2 -2
- package/dist/cjs/{a11y-d3ce56d1.js.map → a11y-eba397e8.js.map} +1 -1
- package/dist/cjs/{base-button-3735b8c2.js → base-button-a472cf2f.js} +3 -3
- package/dist/cjs/base-button-a472cf2f.js.map +1 -0
- package/dist/cjs/{base-icon-button-44c72bc8.js → base-icon-button-9ff5faad.js} +2 -2
- package/dist/cjs/{base-icon-button-44c72bc8.js.map → base-icon-button-9ff5faad.js.map} +1 -1
- package/dist/cjs/{context-98f4a0b3.js → context-6644f454.js} +7 -4
- package/dist/cjs/context-6644f454.js.map +1 -0
- package/dist/cjs/disposable-event-listener-1ed769b9.js +20 -0
- package/dist/cjs/disposable-event-listener-1ed769b9.js.map +1 -0
- package/dist/cjs/dropdown-controller-1781ef55.js +151 -0
- package/dist/cjs/dropdown-controller-1781ef55.js.map +1 -0
- package/dist/cjs/{floating-ui.dom.esm-94b4d17c.js → floating-ui.dom.esm-9dde6cd6.js} +534 -60
- package/dist/cjs/floating-ui.dom.esm-9dde6cd6.js.map +1 -0
- package/dist/cjs/{focus-9c8ffbb0.js → focus-83f8f1ba.js} +21 -18
- package/dist/cjs/focus-83f8f1ba.js.map +1 -0
- package/dist/cjs/index.cjs.js +4 -3
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/ix-action-card.cjs.entry.js +1 -1
- package/dist/cjs/ix-action-card.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-application-header.cjs.entry.js +34 -8
- package/dist/cjs/ix-application-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-application-sidebar.cjs.entry.js +1 -1
- package/dist/cjs/ix-application-switch-modal.cjs.entry.js +1 -1
- package/dist/cjs/ix-application.cjs.entry.js +7 -7
- package/dist/cjs/ix-application.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-avatar_2.cjs.entry.js +5 -5
- package/dist/cjs/ix-avatar_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-basic-navigation.cjs.entry.js +3 -3
- package/dist/cjs/ix-basic-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-blind.cjs.entry.js +6 -6
- package/dist/cjs/ix-blind.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-breadcrumb-item.cjs.entry.js +2 -2
- package/dist/cjs/ix-breadcrumb.cjs.entry.js +10 -9
- package/dist/cjs/ix-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-button.cjs.entry.js +3 -3
- package/dist/cjs/ix-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-card-accordion_2.cjs.entry.js +7 -7
- package/dist/cjs/ix-card-accordion_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-card-list.cjs.entry.js +6 -6
- package/dist/cjs/ix-card-list.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-card_2.cjs.entry.js +5 -5
- package/dist/cjs/ix-card_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-category-filter.cjs.entry.js +131 -71
- package/dist/cjs/ix-category-filter.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-chip.cjs.entry.js +4 -4
- package/dist/cjs/ix-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-col_4.cjs.entry.js +58 -42
- package/dist/cjs/ix-col_4.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-content-header.cjs.entry.js +2 -2
- package/dist/cjs/ix-content-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-content.cjs.entry.js +4 -4
- package/dist/cjs/ix-css-grid-item.cjs.entry.js +1 -1
- package/dist/cjs/ix-css-grid.cjs.entry.js +8 -3
- package/dist/cjs/ix-css-grid.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-date-dropdown.cjs.entry.js +25 -15
- package/dist/cjs/ix-date-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-date-time-card.cjs.entry.js +1 -1
- package/dist/cjs/ix-datetime-picker.cjs.entry.js +1 -1
- package/dist/cjs/ix-divider.cjs.entry.js +1 -1
- package/dist/cjs/ix-drawer.cjs.entry.js +2 -2
- package/dist/cjs/ix-dropdown-button.cjs.entry.js +4 -5
- package/dist/cjs/ix-dropdown-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-dropdown-header.cjs.entry.js +1 -1
- package/dist/cjs/ix-dropdown-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-dropdown-item.cjs.entry.js +4 -4
- package/dist/cjs/ix-dropdown-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js +1 -1
- package/dist/cjs/ix-dropdown.cjs.entry.js +95 -196
- package/dist/cjs/ix-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-empty-state.cjs.entry.js +1 -1
- package/dist/cjs/ix-empty-state.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-event-list-item.cjs.entry.js +5 -5
- package/dist/cjs/ix-event-list.cjs.entry.js +2 -2
- package/dist/cjs/ix-expanding-search.cjs.entry.js +4 -4
- package/dist/cjs/ix-filter-chip_2.cjs.entry.js +2 -2
- package/dist/cjs/ix-flip-tile-content.cjs.entry.js +1 -1
- package/dist/cjs/ix-flip-tile.cjs.entry.js +4 -4
- package/dist/cjs/ix-form-field.cjs.entry.js +2 -2
- package/dist/cjs/ix-form-field.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-group-context-menu_2.cjs.entry.js +6 -10
- package/dist/cjs/ix-group-context-menu_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-group.cjs.entry.js +68 -44
- package/dist/cjs/ix-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-icon-button_2.cjs.entry.js +5 -5
- package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +4 -5
- package/dist/cjs/ix-icon-toggle-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-input-group.cjs.entry.js +2 -2
- package/dist/cjs/ix-key-value-list.cjs.entry.js +1 -1
- package/dist/cjs/ix-key-value.cjs.entry.js +1 -1
- package/dist/cjs/ix-kpi.cjs.entry.js +3 -3
- package/dist/cjs/ix-kpi.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-link-button.cjs.entry.js +3 -3
- package/dist/cjs/ix-map-navigation-overlay.cjs.entry.js +2 -2
- package/dist/cjs/ix-map-navigation.cjs.entry.js +4 -4
- package/dist/cjs/ix-map-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-menu-about-item.cjs.entry.js +1 -1
- package/dist/cjs/ix-menu-about-news.cjs.entry.js +4 -4
- package/dist/cjs/ix-menu-about-news.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-menu-about.cjs.entry.js +2 -2
- package/dist/cjs/ix-menu-avatar.cjs.entry.js +3 -3
- package/dist/cjs/ix-menu-category.cjs.entry.js +6 -6
- package/dist/cjs/ix-menu-category.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-menu-expand-icon.cjs.entry.js +3 -3
- package/dist/cjs/ix-menu-expand-icon.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-menu-item.cjs.entry.js +14 -14
- package/dist/cjs/ix-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-menu-settings-item.cjs.entry.js +1 -1
- package/dist/cjs/ix-menu-settings.cjs.entry.js +1 -1
- package/dist/cjs/ix-menu.cjs.entry.js +14 -14
- package/dist/cjs/ix-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-message-bar.cjs.entry.js +1 -1
- package/dist/cjs/ix-modal-content_2.cjs.entry.js +5 -5
- package/dist/cjs/ix-modal-content_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-modal-example.cjs.entry.js +1 -1
- package/dist/cjs/ix-modal-footer.cjs.entry.js +1 -1
- package/dist/cjs/ix-modal-loading.cjs.entry.js +1 -1
- package/dist/cjs/ix-modal.cjs.entry.js +13 -6
- package/dist/cjs/ix-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-pagination.cjs.entry.js +5 -5
- package/dist/cjs/ix-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-pane-layout.cjs.entry.js +1 -1
- package/dist/cjs/ix-pane.cjs.entry.js +6 -6
- package/dist/cjs/ix-pane.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-pill.cjs.entry.js +4 -4
- package/dist/cjs/ix-pill.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-playground-internal.cjs.entry.js +1 -1
- package/dist/cjs/ix-playground-internal.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-push-card.cjs.entry.js +1 -1
- package/dist/cjs/ix-push-card.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-select.cjs.entry.js +86 -73
- package/dist/cjs/ix-select.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-slider.cjs.entry.js +23 -16
- package/dist/cjs/ix-slider.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-split-button-item.cjs.entry.js +2 -2
- package/dist/cjs/ix-split-button.cjs.entry.js +1 -1
- package/dist/cjs/ix-tab-item_2.cjs.entry.js +74 -44
- package/dist/cjs/ix-tab-item_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-tile.cjs.entry.js +4 -4
- package/dist/cjs/ix-tile.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-time-picker.cjs.entry.js +4 -4
- package/dist/cjs/ix-time-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-toast-container.cjs.entry.js +2 -2
- package/dist/cjs/ix-toast-container.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-toast.cjs.entry.js +2 -2
- package/dist/cjs/ix-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-toggle-button.cjs.entry.js +4 -4
- package/dist/cjs/ix-toggle.cjs.entry.js +3 -3
- package/dist/cjs/ix-tooltip.cjs.entry.js +26 -24
- package/dist/cjs/ix-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-tree-item.cjs.entry.js +8 -8
- package/dist/cjs/ix-tree-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-tree.cjs.entry.js +21 -7
- package/dist/cjs/ix-tree.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-typography.cjs.entry.js +3 -24
- package/dist/cjs/ix-typography.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-upload.cjs.entry.js +58 -4
- package/dist/cjs/ix-upload.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-validation-tooltip.cjs.entry.js +3 -3
- package/dist/cjs/ix-workflow-step.cjs.entry.js +3 -3
- package/dist/cjs/ix-workflow-step.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-workflow-steps.cjs.entry.js +1 -1
- package/dist/cjs/ix-workflow-steps.cjs.entry.js.map +1 -1
- package/dist/cjs/{listener-bc3e7c0c.js → listener-164d1a4a.js} +3 -3
- package/dist/cjs/listener-164d1a4a.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{logical-filter-operator-5564322e.js → logical-filter-operator-4917393f.js} +2 -2
- package/dist/cjs/{logical-filter-operator-5564322e.js.map → logical-filter-operator-4917393f.js.map} +1 -1
- package/dist/cjs/{make-ref-c25629b7.js → make-ref-499e1e41.js} +8 -13
- package/dist/cjs/make-ref-499e1e41.js.map +1 -0
- package/dist/cjs/{menu-tabs-fc-df53f176.js → menu-tabs-fc-b532aeb4.js} +18 -15
- package/dist/cjs/menu-tabs-fc-b532aeb4.js.map +1 -0
- package/dist/cjs/{shadow-dom-73f9d553.js → shadow-dom-454acc38.js} +2 -2
- package/dist/cjs/{shadow-dom-73f9d553.js.map → shadow-dom-454acc38.js.map} +1 -1
- package/dist/cjs/siemens-ix.cjs.js +1 -1
- package/dist/cjs/{theme-switcher-2d2bde85.js → theme-switcher-88b70d73.js} +2 -1
- package/dist/cjs/theme-switcher-88b70d73.js.map +1 -0
- package/dist/collection/components/action-card/action-card.js +8 -5
- package/dist/collection/components/action-card/action-card.js.map +1 -1
- package/dist/collection/components/application/application.css +26 -6
- package/dist/collection/components/application/application.js +3 -3
- package/dist/collection/components/application/application.js.map +1 -1
- package/dist/collection/components/application-header/application-header.css +9 -7
- package/dist/collection/components/application-header/application-header.js +78 -6
- package/dist/collection/components/application-header/application-header.js.map +1 -1
- package/dist/collection/components/application-header/application-switch-modal/application-switch-modal.js +1 -1
- package/dist/collection/components/application-sidebar/application-sidebar.js +1 -1
- package/dist/collection/components/avatar/avatar.css +42 -0
- package/dist/collection/components/basic-navigation/basic-navigation.js +7 -4
- package/dist/collection/components/basic-navigation/basic-navigation.js.map +1 -1
- package/dist/collection/components/blind/blind.css +1 -1
- package/dist/collection/components/blind/blind.js +10 -10
- package/dist/collection/components/blind/blind.js.map +1 -1
- package/dist/collection/components/blind/test/blind.ct.js +1 -1
- package/dist/collection/components/blind/test/blind.ct.js.map +1 -1
- package/dist/collection/components/breadcrumb/breadcrumb.js +9 -10
- package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
- package/dist/collection/components/button/base-button.js +2 -2
- package/dist/collection/components/button/base-button.js.map +1 -1
- package/dist/collection/components/button/button.js +3 -3
- package/dist/collection/components/button/button.js.map +1 -1
- package/dist/collection/components/card/card.css +3 -3
- package/dist/collection/components/card/card.js +10 -6
- package/dist/collection/components/card/card.js.map +1 -1
- package/dist/collection/components/card-accordion/card-accordion.css +4 -4
- package/dist/collection/components/card-accordion/card-accordion.js +5 -5
- package/dist/collection/components/card-accordion/card-accordion.js.map +1 -1
- package/dist/collection/components/card-content/card-content.js +1 -1
- package/dist/collection/components/card-list/card-list.css +6 -0
- package/dist/collection/components/card-list/card-list.js +5 -5
- package/dist/collection/components/card-list/card-list.js.map +1 -1
- package/dist/collection/components/card-title/card-title.js +1 -1
- package/dist/collection/components/category-filter/category-filter.css +20 -20
- package/dist/collection/components/category-filter/category-filter.js +138 -78
- package/dist/collection/components/category-filter/category-filter.js.map +1 -1
- package/dist/collection/components/category-filter/logical-filter-operator.js +1 -1
- package/dist/collection/components/category-filter/logical-filter-operator.js.map +1 -1
- package/dist/collection/components/category-filter/test/category-filter.ct.js +52 -0
- package/dist/collection/components/category-filter/test/category-filter.ct.js.map +1 -0
- package/dist/collection/components/chip/chip.css +2 -2
- package/dist/collection/components/chip/chip.js +5 -5
- package/dist/collection/components/chip/chip.js.map +1 -1
- package/dist/collection/components/col/col.css +1 -1
- package/dist/collection/components/col/col.js +2 -2
- package/dist/collection/components/col/col.js.map +1 -1
- package/dist/collection/components/content/content.js +3 -3
- package/dist/collection/components/content-header/content-header.css +6 -3
- package/dist/collection/components/content-header/content-header.js +2 -2
- package/dist/collection/components/content-header/content-header.js.map +1 -1
- package/dist/collection/components/css-grid/css-grid-item.js +1 -1
- package/dist/collection/components/css-grid/css-grid.js +9 -4
- package/dist/collection/components/css-grid/css-grid.js.map +1 -1
- package/dist/collection/components/date-dropdown/date-dropdown.js +34 -21
- package/dist/collection/components/date-dropdown/date-dropdown.js.map +1 -1
- package/dist/collection/components/date-picker/date-picker.js +62 -48
- package/dist/collection/components/date-picker/date-picker.js.map +1 -1
- package/dist/collection/components/date-time-card/date-time-card.js +1 -1
- package/dist/collection/components/datetime-picker/datetime-picker.js +1 -1
- package/dist/collection/components/divider/divider.js +1 -1
- package/dist/collection/components/drawer/drawer.js +2 -2
- package/dist/collection/components/dropdown/dropdown-controller.js +15 -11
- package/dist/collection/components/dropdown/dropdown-controller.js.map +1 -1
- package/dist/collection/components/dropdown/dropdown.js +95 -62
- package/dist/collection/components/dropdown/dropdown.js.map +1 -1
- package/dist/collection/components/dropdown/test/dropdown.ct.js +19 -8
- package/dist/collection/components/dropdown/test/dropdown.ct.js.map +1 -1
- package/dist/collection/components/dropdown-button/dropdown-button.js +7 -13
- package/dist/collection/components/dropdown-button/dropdown-button.js.map +1 -1
- package/dist/collection/components/dropdown-header/dropdown-header.js +1 -1
- package/dist/collection/components/dropdown-header/dropdown-header.js.map +1 -1
- package/dist/collection/components/dropdown-item/dropdown-item.css +3 -3
- package/dist/collection/components/dropdown-item/dropdown-item.js +5 -5
- package/dist/collection/components/dropdown-item/dropdown-item.js.map +1 -1
- package/dist/collection/components/dropdown-quick-actions/dropdown-quick-actions.js +1 -1
- package/dist/collection/components/empty-state/empty-state.js +1 -1
- package/dist/collection/components/empty-state/empty-state.js.map +1 -1
- package/dist/collection/components/event-list/event-list.js +2 -2
- package/dist/collection/components/event-list-item/event-list-item.js +4 -4
- package/dist/collection/components/expanding-search/expanding-search.js +4 -4
- package/dist/collection/components/filter-chip/filter-chip.js +1 -1
- package/dist/collection/components/flip-tile/flip-tile.js +4 -4
- package/dist/collection/components/flip-tile-content/flip-tile-content.js +1 -1
- package/dist/collection/components/form-field/form-field.css +10 -10
- package/dist/collection/components/form-field/form-field.js +1 -1
- package/dist/collection/components/grid/layout-grid.css +1 -1
- package/dist/collection/components/grid/layout-grid.js +3 -3
- package/dist/collection/components/grid/layout-grid.js.map +1 -1
- package/dist/collection/components/group/group-context-menu.css +1 -1
- package/dist/collection/components/group/group-context-menu.js +2 -2
- package/dist/collection/components/group/group-context-menu.js.map +1 -1
- package/dist/collection/components/group/group.css +3 -2
- package/dist/collection/components/group/group.js +84 -48
- package/dist/collection/components/group/group.js.map +1 -1
- package/dist/collection/components/group/test/group.ct.js +70 -2
- package/dist/collection/components/group/test/group.ct.js.map +1 -1
- package/dist/collection/components/group-item/group-item.css +0 -4
- package/dist/collection/components/group-item/group-item.js +9 -12
- package/dist/collection/components/group-item/group-item.js.map +1 -1
- package/dist/collection/components/icon-button/icon-button.js +1 -1
- package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +1 -2
- package/dist/collection/components/icon-toggle-button/icon-toggle-button.js.map +1 -1
- package/dist/collection/components/input-group/input-group.js +1 -1
- package/dist/collection/components/key-value/key-value.js +1 -1
- package/dist/collection/components/key-value-list/key-value-list.js +1 -1
- package/dist/collection/components/kpi/kpi.css +1 -1
- package/dist/collection/components/kpi/kpi.js +4 -4
- package/dist/collection/components/kpi/kpi.js.map +1 -1
- package/dist/collection/components/link-button/link-button.js +3 -3
- package/dist/collection/components/map-navigation/map-navigation.css +3 -3
- package/dist/collection/components/map-navigation/map-navigation.js +2 -2
- package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js +2 -2
- package/dist/collection/components/menu/menu-expand-icon.css +1 -1
- package/dist/collection/components/menu/menu-expand-icon.js +3 -3
- package/dist/collection/components/menu/menu-expand-icon.js.map +1 -1
- package/dist/collection/components/menu/menu.css +4 -3
- package/dist/collection/components/menu/menu.js +12 -12
- package/dist/collection/components/menu/menu.js.map +1 -1
- package/dist/collection/components/menu/test/menu.ct.js +1 -1
- package/dist/collection/components/menu/test/menu.ct.js.map +1 -1
- package/dist/collection/components/menu-about/menu-about.js +1 -1
- package/dist/collection/components/menu-about/test/menu-about.ct.js +44 -0
- package/dist/collection/components/menu-about/test/menu-about.ct.js.map +1 -0
- package/dist/collection/components/menu-about-item/menu-about-item.js +1 -1
- package/dist/collection/components/menu-about-news/menu-about-news.js +4 -4
- package/dist/collection/components/menu-about-news/menu-about-news.js.map +1 -1
- package/dist/collection/components/menu-avatar/menu-avatar.js +2 -2
- package/dist/collection/components/menu-avatar-item/menu-avatar-item.js +1 -1
- package/dist/collection/components/menu-category/menu-category.js +5 -5
- package/dist/collection/components/menu-category/menu-category.js.map +1 -1
- package/dist/collection/components/menu-item/menu-item.js +24 -21
- package/dist/collection/components/menu-item/menu-item.js.map +1 -1
- package/dist/collection/components/menu-settings/menu-settings.js +1 -1
- package/dist/collection/components/menu-settings-item/menu-settings-item.js +1 -1
- package/dist/collection/components/message-bar/message-bar.js +1 -1
- package/dist/collection/components/modal/modal.css +19 -9
- package/dist/collection/components/modal/modal.js +11 -4
- package/dist/collection/components/modal/modal.js.map +1 -1
- package/dist/collection/components/modal/test/modal.ct.js +47 -1
- package/dist/collection/components/modal/test/modal.ct.js.map +1 -1
- package/dist/collection/components/modal-content/modal-content.css +2 -2
- package/dist/collection/components/modal-content/modal-content.js +1 -1
- package/dist/collection/components/modal-footer/modal-footer.js +1 -1
- package/dist/collection/components/modal-header/modal-header.css +6 -7
- package/dist/collection/components/modal-header/modal-header.js +4 -4
- package/dist/collection/components/modal-header/modal-header.js.map +1 -1
- package/dist/collection/components/modal-loading/modal-loading.js +1 -1
- package/dist/collection/components/pagination/pagination.js +5 -4
- package/dist/collection/components/pagination/pagination.js.map +1 -1
- package/dist/collection/components/pane/pane.css +1 -1
- package/dist/collection/components/pane/pane.js +7 -7
- package/dist/collection/components/pane/pane.js.map +1 -1
- package/dist/collection/components/pane/test/panes.ct.js +1 -1
- package/dist/collection/components/pane/test/panes.ct.js.map +1 -1
- package/dist/collection/components/pane-layout/pane-layout.js +1 -1
- package/dist/collection/components/pill/pill.css +2 -2
- package/dist/collection/components/pill/pill.js +5 -5
- package/dist/collection/components/pill/pill.js.map +1 -1
- package/dist/collection/components/playground/example-modal.js +1 -1
- package/dist/collection/components/playground/playground.js +2 -2
- package/dist/collection/components/playground/playground.js.map +1 -1
- package/dist/collection/components/push-card/push-card.js +9 -6
- package/dist/collection/components/push-card/push-card.js.map +1 -1
- package/dist/collection/components/row/row.css +1 -1
- package/dist/collection/components/row/row.js +2 -2
- package/dist/collection/components/row/row.js.map +1 -1
- package/dist/collection/components/select/select.js +83 -73
- package/dist/collection/components/select/select.js.map +1 -1
- package/dist/collection/components/select/test/select.ct.js +48 -3
- package/dist/collection/components/select/test/select.ct.js.map +1 -1
- package/dist/collection/components/select-item/select-item.js +1 -1
- package/dist/collection/components/slider/slider.css +1 -1
- package/dist/collection/components/slider/slider.js +24 -16
- package/dist/collection/components/slider/slider.js.map +1 -1
- package/dist/collection/components/slider/test/slider.ct.js +15 -6
- package/dist/collection/components/slider/test/slider.ct.js.map +1 -1
- package/dist/collection/components/spinner/spinner.js +1 -1
- package/dist/collection/components/split-button/split-button.js +1 -1
- package/dist/collection/components/split-button-item/split-button-item.js +1 -1
- package/dist/collection/components/tab-item/tab-item.js +4 -4
- package/dist/collection/components/tab-item/tab-item.js.map +1 -1
- package/dist/collection/components/tabs/tabs.css +1 -1
- package/dist/collection/components/tabs/tabs.js +78 -43
- package/dist/collection/components/tabs/tabs.js.map +1 -1
- package/dist/collection/components/tabs/test/tabs.ct.js +35 -9
- package/dist/collection/components/tabs/test/tabs.ct.js.map +1 -1
- package/dist/collection/components/tile/tile.css +1 -1
- package/dist/collection/components/tile/tile.js +5 -5
- package/dist/collection/components/tile/tile.js.map +1 -1
- package/dist/collection/components/time-picker/time-picker.css +10 -10
- package/dist/collection/components/time-picker/time-picker.js +3 -3
- package/dist/collection/components/time-picker/time-picker.js.map +1 -1
- package/dist/collection/components/toast/styles/toast-container.css +1 -1
- package/dist/collection/components/toast/toast-container.js +3 -3
- package/dist/collection/components/toast/toast-container.js.map +1 -1
- package/dist/collection/components/toast/toast-utils.js.map +1 -1
- package/dist/collection/components/toast/toast.css +1 -1
- package/dist/collection/components/toast/toast.js +3 -3
- package/dist/collection/components/toast/toast.js.map +1 -1
- package/dist/collection/components/toggle/toggle.js +2 -2
- package/dist/collection/components/toggle-button/toggle-button.js +2 -2
- package/dist/collection/components/tooltip/tooltip.css +15 -5
- package/dist/collection/components/tooltip/tooltip.js +39 -35
- package/dist/collection/components/tooltip/tooltip.js.map +1 -1
- package/dist/collection/components/tree/test/tree.ct.js +37 -1
- package/dist/collection/components/tree/test/tree.ct.js.map +1 -1
- package/dist/collection/components/tree/tree-model.js.map +1 -1
- package/dist/collection/components/tree/tree.css +1 -1
- package/dist/collection/components/tree/tree.js +26 -11
- package/dist/collection/components/tree/tree.js.map +1 -1
- package/dist/collection/components/tree-item/tree-item.css +9 -0
- package/dist/collection/components/tree-item/tree-item.js +13 -12
- package/dist/collection/components/tree-item/tree-item.js.map +1 -1
- package/dist/collection/components/typography/test/ix-typography.spec.js +0 -14
- package/dist/collection/components/typography/test/ix-typography.spec.js.map +1 -1
- package/dist/collection/components/typography/type-mapping.js +3 -0
- package/dist/collection/components/typography/type-mapping.js.map +1 -1
- package/dist/collection/components/typography/typography.js +6 -42
- package/dist/collection/components/typography/typography.js.map +1 -1
- package/dist/collection/components/upload/test/upload.ct.js +17 -0
- package/dist/collection/components/upload/test/upload.ct.js.map +1 -0
- package/dist/collection/components/upload/upload.js +50 -6
- package/dist/collection/components/upload/upload.js.map +1 -1
- package/dist/collection/components/utils/condition-checks.js +1 -1
- package/dist/collection/components/utils/condition-checks.js.map +1 -1
- package/dist/collection/components/utils/context.js +6 -3
- package/dist/collection/components/utils/context.js.map +1 -1
- package/dist/collection/components/utils/disposable-event-listener.js +19 -0
- package/dist/collection/components/utils/disposable-event-listener.js.map +1 -0
- package/dist/collection/components/utils/element-reference.js +2 -0
- package/dist/collection/components/utils/element-reference.js.map +1 -0
- package/dist/collection/components/utils/focus.js +19 -17
- package/dist/collection/components/utils/focus.js.map +1 -1
- package/dist/collection/components/utils/listener.js +2 -2
- package/dist/collection/components/utils/listener.js.map +1 -1
- package/dist/collection/components/utils/make-ref.js +7 -12
- package/dist/collection/components/utils/make-ref.js.map +1 -1
- package/dist/collection/components/utils/menu-tabs/menu-tabs-fc.js +11 -8
- package/dist/collection/components/utils/menu-tabs/menu-tabs-fc.js.map +1 -1
- package/dist/collection/components/utils/notification-color.js.map +1 -1
- package/dist/collection/components/utils/shadow-dom.js +1 -1
- package/dist/collection/components/utils/shadow-dom.js.map +1 -1
- package/dist/collection/components/utils/theme-switcher.js +1 -0
- package/dist/collection/components/utils/theme-switcher.js.map +1 -1
- package/dist/collection/components/validation-tooltip/validation-tooltip.js +2 -2
- package/dist/collection/components/workflow-step/workflow-step.css +1 -1
- package/dist/collection/components/workflow-step/workflow-step.js +4 -4
- package/dist/collection/components/workflow-step/workflow-step.js.map +1 -1
- package/dist/collection/components/workflow-steps/test/workflow-steps.ct.js +2 -2
- package/dist/collection/components/workflow-steps/test/workflow-steps.ct.js.map +1 -1
- package/dist/collection/components/workflow-steps/workflow-steps.css +1 -1
- package/dist/collection/components/workflow-steps/workflow-steps.js +2 -2
- package/dist/collection/components/workflow-steps/workflow-steps.js.map +1 -1
- package/dist/collection/index.js +1 -0
- package/dist/collection/index.js.map +1 -1
- package/dist/collection/tests/application/application.e2e.js.map +1 -1
- package/dist/collection/tests/application-header/application-header.e2e.js +9 -0
- package/dist/collection/tests/application-header/application-header.e2e.js.map +1 -1
- package/dist/collection/tests/avatar/avatar.e2e.js +6 -0
- package/dist/collection/tests/avatar/avatar.e2e.js.map +1 -1
- package/dist/collection/tests/card-list/card-list.e2e.js +7 -1
- package/dist/collection/tests/card-list/card-list.e2e.js.map +1 -1
- package/dist/collection/tests/dropdown/dropdown.e2e.js +6 -0
- package/dist/collection/tests/dropdown/dropdown.e2e.js.map +1 -1
- package/dist/collection/tests/group/group.e2e.js +12 -3
- package/dist/collection/tests/group/group.e2e.js.map +1 -1
- package/dist/collection/tests/input/input.e2e.js +12 -0
- package/dist/collection/tests/input/input.e2e.js.map +1 -1
- package/dist/collection/tests/slider/slider.e2e.js +31 -0
- package/dist/collection/tests/slider/slider.e2e.js.map +1 -1
- package/dist/collection/tests/tabs/tabs.e2e.js +1 -1
- package/dist/collection/tests/tabs/tabs.e2e.js.map +1 -1
- package/dist/collection/tests/tooltip/tooltip.e2e.js +22 -0
- package/dist/collection/tests/tooltip/tooltip.e2e.js.map +1 -1
- package/dist/collection/tests/tree/tree.e2e.js +12 -0
- package/dist/collection/tests/tree/tree.e2e.js.map +1 -1
- package/dist/collection/tests/utils/test/page.js +3 -12
- package/dist/collection/tests/utils/test/page.js.map +1 -1
- package/dist/esm/{a11y-d5444a76.js → a11y-2e34777f.js} +2 -2
- package/dist/esm/{a11y-d5444a76.js.map → a11y-2e34777f.js.map} +1 -1
- package/dist/esm/{base-button-1b40b11d.js → base-button-103d6f26.js} +3 -3
- package/dist/esm/base-button-103d6f26.js.map +1 -0
- package/dist/esm/{base-icon-button-bc1dabe0.js → base-icon-button-9770fa3e.js} +2 -2
- package/dist/esm/{base-icon-button-bc1dabe0.js.map → base-icon-button-9770fa3e.js.map} +1 -1
- package/dist/esm/{context-c9078420.js → context-42311cff.js} +7 -4
- package/dist/esm/context-42311cff.js.map +1 -0
- package/dist/esm/disposable-event-listener-ff2cb862.js +18 -0
- package/dist/esm/disposable-event-listener-ff2cb862.js.map +1 -0
- package/dist/esm/dropdown-controller-c79f65b3.js +148 -0
- package/dist/esm/dropdown-controller-c79f65b3.js.map +1 -0
- package/dist/esm/{floating-ui.dom.esm-6e7c098f.js → floating-ui.dom.esm-d4ad786a.js} +534 -61
- package/dist/esm/floating-ui.dom.esm-d4ad786a.js.map +1 -0
- package/dist/esm/{focus-d4d3abaf.js → focus-5ccebfbc.js} +21 -18
- package/dist/esm/focus-5ccebfbc.js.map +1 -0
- package/dist/esm/index.js +3 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/ix-action-card.entry.js +1 -1
- package/dist/esm/ix-action-card.entry.js.map +1 -1
- package/dist/esm/ix-application-header.entry.js +35 -9
- package/dist/esm/ix-application-header.entry.js.map +1 -1
- package/dist/esm/ix-application-sidebar.entry.js +1 -1
- package/dist/esm/ix-application-switch-modal.entry.js +1 -1
- package/dist/esm/ix-application.entry.js +7 -7
- package/dist/esm/ix-application.entry.js.map +1 -1
- package/dist/esm/ix-avatar_2.entry.js +5 -5
- package/dist/esm/ix-avatar_2.entry.js.map +1 -1
- package/dist/esm/ix-basic-navigation.entry.js +3 -3
- package/dist/esm/ix-basic-navigation.entry.js.map +1 -1
- package/dist/esm/ix-blind.entry.js +6 -6
- package/dist/esm/ix-blind.entry.js.map +1 -1
- package/dist/esm/ix-breadcrumb-item.entry.js +2 -2
- package/dist/esm/ix-breadcrumb.entry.js +10 -9
- package/dist/esm/ix-breadcrumb.entry.js.map +1 -1
- package/dist/esm/ix-button.entry.js +3 -3
- package/dist/esm/ix-button.entry.js.map +1 -1
- package/dist/esm/ix-card-accordion_2.entry.js +7 -7
- package/dist/esm/ix-card-accordion_2.entry.js.map +1 -1
- package/dist/esm/ix-card-list.entry.js +6 -6
- package/dist/esm/ix-card-list.entry.js.map +1 -1
- package/dist/esm/ix-card_2.entry.js +5 -5
- package/dist/esm/ix-card_2.entry.js.map +1 -1
- package/dist/esm/ix-category-filter.entry.js +131 -71
- package/dist/esm/ix-category-filter.entry.js.map +1 -1
- package/dist/esm/ix-chip.entry.js +4 -4
- package/dist/esm/ix-chip.entry.js.map +1 -1
- package/dist/esm/ix-col_4.entry.js +58 -42
- package/dist/esm/ix-col_4.entry.js.map +1 -1
- package/dist/esm/ix-content-header.entry.js +2 -2
- package/dist/esm/ix-content-header.entry.js.map +1 -1
- package/dist/esm/ix-content.entry.js +4 -4
- package/dist/esm/ix-css-grid-item.entry.js +1 -1
- package/dist/esm/ix-css-grid.entry.js +8 -3
- package/dist/esm/ix-css-grid.entry.js.map +1 -1
- package/dist/esm/ix-date-dropdown.entry.js +25 -15
- package/dist/esm/ix-date-dropdown.entry.js.map +1 -1
- package/dist/esm/ix-date-time-card.entry.js +1 -1
- package/dist/esm/ix-datetime-picker.entry.js +1 -1
- package/dist/esm/ix-divider.entry.js +1 -1
- package/dist/esm/ix-drawer.entry.js +2 -2
- package/dist/esm/ix-dropdown-button.entry.js +4 -5
- package/dist/esm/ix-dropdown-button.entry.js.map +1 -1
- package/dist/esm/ix-dropdown-header.entry.js +1 -1
- package/dist/esm/ix-dropdown-header.entry.js.map +1 -1
- package/dist/esm/ix-dropdown-item.entry.js +4 -4
- package/dist/esm/ix-dropdown-item.entry.js.map +1 -1
- package/dist/esm/ix-dropdown-quick-actions.entry.js +1 -1
- package/dist/esm/ix-dropdown.entry.js +82 -183
- package/dist/esm/ix-dropdown.entry.js.map +1 -1
- package/dist/esm/ix-empty-state.entry.js +1 -1
- package/dist/esm/ix-empty-state.entry.js.map +1 -1
- package/dist/esm/ix-event-list-item.entry.js +5 -5
- package/dist/esm/ix-event-list.entry.js +2 -2
- package/dist/esm/ix-expanding-search.entry.js +4 -4
- package/dist/esm/ix-filter-chip_2.entry.js +2 -2
- package/dist/esm/ix-flip-tile-content.entry.js +1 -1
- package/dist/esm/ix-flip-tile.entry.js +4 -4
- package/dist/esm/ix-form-field.entry.js +2 -2
- package/dist/esm/ix-form-field.entry.js.map +1 -1
- package/dist/esm/ix-group-context-menu_2.entry.js +6 -10
- package/dist/esm/ix-group-context-menu_2.entry.js.map +1 -1
- package/dist/esm/ix-group.entry.js +68 -44
- package/dist/esm/ix-group.entry.js.map +1 -1
- package/dist/esm/ix-icon-button_2.entry.js +5 -5
- package/dist/esm/ix-icon-toggle-button.entry.js +4 -5
- package/dist/esm/ix-icon-toggle-button.entry.js.map +1 -1
- package/dist/esm/ix-input-group.entry.js +2 -2
- package/dist/esm/ix-key-value-list.entry.js +1 -1
- package/dist/esm/ix-key-value.entry.js +1 -1
- package/dist/esm/ix-kpi.entry.js +3 -3
- package/dist/esm/ix-kpi.entry.js.map +1 -1
- package/dist/esm/ix-link-button.entry.js +3 -3
- package/dist/esm/ix-map-navigation-overlay.entry.js +2 -2
- package/dist/esm/ix-map-navigation.entry.js +4 -4
- package/dist/esm/ix-map-navigation.entry.js.map +1 -1
- package/dist/esm/ix-menu-about-item.entry.js +1 -1
- package/dist/esm/ix-menu-about-news.entry.js +4 -4
- package/dist/esm/ix-menu-about-news.entry.js.map +1 -1
- package/dist/esm/ix-menu-about.entry.js +2 -2
- package/dist/esm/ix-menu-avatar.entry.js +3 -3
- package/dist/esm/ix-menu-category.entry.js +6 -6
- package/dist/esm/ix-menu-category.entry.js.map +1 -1
- package/dist/esm/ix-menu-expand-icon.entry.js +3 -3
- package/dist/esm/ix-menu-expand-icon.entry.js.map +1 -1
- package/dist/esm/ix-menu-item.entry.js +15 -15
- package/dist/esm/ix-menu-item.entry.js.map +1 -1
- package/dist/esm/ix-menu-settings-item.entry.js +1 -1
- package/dist/esm/ix-menu-settings.entry.js +1 -1
- package/dist/esm/ix-menu.entry.js +14 -14
- package/dist/esm/ix-menu.entry.js.map +1 -1
- package/dist/esm/ix-message-bar.entry.js +1 -1
- package/dist/esm/ix-modal-content_2.entry.js +5 -5
- package/dist/esm/ix-modal-content_2.entry.js.map +1 -1
- package/dist/esm/ix-modal-example.entry.js +1 -1
- package/dist/esm/ix-modal-footer.entry.js +1 -1
- package/dist/esm/ix-modal-loading.entry.js +1 -1
- package/dist/esm/ix-modal.entry.js +13 -6
- package/dist/esm/ix-modal.entry.js.map +1 -1
- package/dist/esm/ix-pagination.entry.js +5 -5
- package/dist/esm/ix-pagination.entry.js.map +1 -1
- package/dist/esm/ix-pane-layout.entry.js +1 -1
- package/dist/esm/ix-pane.entry.js +6 -6
- package/dist/esm/ix-pane.entry.js.map +1 -1
- package/dist/esm/ix-pill.entry.js +4 -4
- package/dist/esm/ix-pill.entry.js.map +1 -1
- package/dist/esm/ix-playground-internal.entry.js +1 -1
- package/dist/esm/ix-playground-internal.entry.js.map +1 -1
- package/dist/esm/ix-push-card.entry.js +1 -1
- package/dist/esm/ix-push-card.entry.js.map +1 -1
- package/dist/esm/ix-select.entry.js +86 -73
- package/dist/esm/ix-select.entry.js.map +1 -1
- package/dist/esm/ix-slider.entry.js +23 -16
- package/dist/esm/ix-slider.entry.js.map +1 -1
- package/dist/esm/ix-split-button-item.entry.js +2 -2
- package/dist/esm/ix-split-button.entry.js +1 -1
- package/dist/esm/ix-tab-item_2.entry.js +74 -44
- package/dist/esm/ix-tab-item_2.entry.js.map +1 -1
- package/dist/esm/ix-tile.entry.js +4 -4
- package/dist/esm/ix-tile.entry.js.map +1 -1
- package/dist/esm/ix-time-picker.entry.js +4 -4
- package/dist/esm/ix-time-picker.entry.js.map +1 -1
- package/dist/esm/ix-toast-container.entry.js +2 -2
- package/dist/esm/ix-toast-container.entry.js.map +1 -1
- package/dist/esm/ix-toast.entry.js +2 -2
- package/dist/esm/ix-toast.entry.js.map +1 -1
- package/dist/esm/ix-toggle-button.entry.js +4 -4
- package/dist/esm/ix-toggle.entry.js +3 -3
- package/dist/esm/ix-tooltip.entry.js +26 -24
- package/dist/esm/ix-tooltip.entry.js.map +1 -1
- package/dist/esm/ix-tree-item.entry.js +8 -8
- package/dist/esm/ix-tree-item.entry.js.map +1 -1
- package/dist/esm/ix-tree.entry.js +21 -7
- package/dist/esm/ix-tree.entry.js.map +1 -1
- package/dist/esm/ix-typography.entry.js +3 -24
- package/dist/esm/ix-typography.entry.js.map +1 -1
- package/dist/esm/ix-upload.entry.js +58 -4
- package/dist/esm/ix-upload.entry.js.map +1 -1
- package/dist/esm/ix-validation-tooltip.entry.js +3 -3
- package/dist/esm/ix-workflow-step.entry.js +3 -3
- package/dist/esm/ix-workflow-step.entry.js.map +1 -1
- package/dist/esm/ix-workflow-steps.entry.js +1 -1
- package/dist/esm/ix-workflow-steps.entry.js.map +1 -1
- package/dist/esm/{listener-4f3baab5.js → listener-ade7081c.js} +3 -3
- package/dist/esm/listener-ade7081c.js.map +1 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{logical-filter-operator-f6701df5.js → logical-filter-operator-d793d1c3.js} +2 -2
- package/dist/esm/{logical-filter-operator-f6701df5.js.map → logical-filter-operator-d793d1c3.js.map} +1 -1
- package/dist/esm/{make-ref-c80046bf.js → make-ref-4b76e9b5.js} +8 -13
- package/dist/esm/make-ref-4b76e9b5.js.map +1 -0
- package/dist/esm/{menu-tabs-fc-d9a7dd06.js → menu-tabs-fc-b549da52.js} +18 -15
- package/dist/esm/menu-tabs-fc-b549da52.js.map +1 -0
- package/dist/esm/{shadow-dom-60e9243d.js → shadow-dom-cc0bc152.js} +2 -2
- package/dist/esm/{shadow-dom-60e9243d.js.map → shadow-dom-cc0bc152.js.map} +1 -1
- package/dist/esm/siemens-ix.js +1 -1
- package/dist/esm/{theme-switcher-b10fb4da.js → theme-switcher-5fcf712d.js} +2 -1
- package/dist/esm/theme-switcher-5fcf712d.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-bf14c60b.entry.js → p-0379b864.entry.js} +2 -2
- package/dist/siemens-ix/{p-24a8737a.entry.js → p-054451cb.entry.js} +2 -2
- package/dist/siemens-ix/{p-5aa0b93c.entry.js → p-0691b6a5.entry.js} +2 -2
- package/dist/siemens-ix/{p-5aa0b93c.entry.js.map → p-0691b6a5.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-90440046.entry.js → p-06f9e19f.entry.js} +2 -2
- package/dist/siemens-ix/p-093c25b1.entry.js +2 -0
- package/dist/siemens-ix/p-093c25b1.entry.js.map +1 -0
- package/dist/siemens-ix/{p-fb4c79c6.entry.js → p-0996d9f6.entry.js} +2 -2
- package/dist/siemens-ix/{p-453fa360.entry.js → p-09e0ede1.entry.js} +2 -2
- package/dist/siemens-ix/{p-453fa360.entry.js.map → p-09e0ede1.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-7076210b.entry.js → p-0b8718d9.entry.js} +2 -2
- package/dist/siemens-ix/p-0b8718d9.entry.js.map +1 -0
- package/dist/siemens-ix/{p-1da901d5.js → p-0e983f70.js} +2 -2
- package/dist/siemens-ix/p-0e983f70.js.map +1 -0
- package/dist/siemens-ix/p-0f099811.entry.js +2 -0
- package/dist/siemens-ix/{p-0f7ef743.entry.js.map → p-0f099811.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-bea7c748.entry.js → p-0f4e62f3.entry.js} +2 -2
- package/dist/siemens-ix/p-10368ba0.entry.js +2 -0
- package/dist/siemens-ix/{p-2ebfd4fd.entry.js.map → p-10368ba0.entry.js.map} +1 -1
- package/dist/siemens-ix/p-10a522ca.js +2 -0
- package/dist/siemens-ix/p-10a522ca.js.map +1 -0
- package/dist/siemens-ix/p-156fa685.entry.js +2 -0
- package/dist/siemens-ix/p-156fa685.entry.js.map +1 -0
- package/dist/siemens-ix/{p-4f8ac3bf.js → p-157b1b28.js} +1 -1
- package/dist/siemens-ix/{p-4f8ac3bf.js.map → p-157b1b28.js.map} +1 -1
- package/dist/siemens-ix/p-17240a7f.entry.js +2 -0
- package/dist/siemens-ix/p-17240a7f.entry.js.map +1 -0
- package/dist/siemens-ix/p-178ce002.js +2 -0
- package/dist/siemens-ix/p-178ce002.js.map +1 -0
- package/dist/siemens-ix/p-1a8e3fea.entry.js +2 -0
- package/dist/siemens-ix/{p-a8d291fa.entry.js → p-1b6dda61.entry.js} +2 -2
- package/dist/siemens-ix/p-1b6dda61.entry.js.map +1 -0
- package/dist/siemens-ix/{p-bc2c74c5.entry.js → p-1e3d6d27.entry.js} +2 -2
- package/dist/siemens-ix/{p-1db6be55.js → p-24afab39.js} +2 -2
- package/dist/{cjs/menu-tabs-fc-df53f176.js.map → siemens-ix/p-24afab39.js.map} +1 -1
- package/dist/siemens-ix/p-26609c63.entry.js +2 -0
- package/dist/siemens-ix/p-26609c63.entry.js.map +1 -0
- package/dist/siemens-ix/{p-68644ee1.entry.js → p-2c1540ba.entry.js} +2 -2
- package/dist/siemens-ix/{p-68644ee1.entry.js.map → p-2c1540ba.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-9ebc4fc3.entry.js → p-2f232c45.entry.js} +2 -2
- package/dist/siemens-ix/p-2f232c45.entry.js.map +1 -0
- package/dist/siemens-ix/{p-6af4415c.entry.js → p-3028d530.entry.js} +2 -2
- package/dist/siemens-ix/{p-6af4415c.entry.js.map → p-3028d530.entry.js.map} +1 -1
- package/dist/siemens-ix/p-3150070f.entry.js +2 -0
- package/dist/siemens-ix/p-3150070f.entry.js.map +1 -0
- package/dist/siemens-ix/{p-f78246bd.entry.js → p-315ecf68.entry.js} +2 -2
- package/dist/siemens-ix/{p-712e0ee0.js → p-345e1c73.js} +1 -1
- package/dist/siemens-ix/{p-712e0ee0.js.map → p-345e1c73.js.map} +1 -1
- package/dist/siemens-ix/{p-fc5814df.entry.js → p-380a7d93.entry.js} +2 -2
- package/dist/siemens-ix/p-380a7d93.entry.js.map +1 -0
- package/dist/siemens-ix/p-3b576b4e.js +2 -0
- package/dist/siemens-ix/{p-112069ca.entry.js → p-3be4c628.entry.js} +2 -2
- package/dist/siemens-ix/p-3be4c628.entry.js.map +1 -0
- package/dist/siemens-ix/p-3e867ef9.entry.js +2 -0
- package/dist/siemens-ix/p-3e867ef9.entry.js.map +1 -0
- package/dist/siemens-ix/p-40f20208.entry.js +2 -0
- package/dist/siemens-ix/p-40f20208.entry.js.map +1 -0
- package/dist/siemens-ix/{p-d95cbd1f.entry.js → p-41935530.entry.js} +2 -2
- package/dist/siemens-ix/{p-d95cbd1f.entry.js.map → p-41935530.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-b663ca16.entry.js → p-41d9a2e4.entry.js} +2 -2
- package/dist/siemens-ix/p-476e4a9d.entry.js +2 -0
- package/dist/siemens-ix/p-476e4a9d.entry.js.map +1 -0
- package/dist/siemens-ix/{p-25ee1b62.js → p-4ac31849.js} +1 -1
- package/dist/siemens-ix/{p-25ee1b62.js.map → p-4ac31849.js.map} +1 -1
- package/dist/siemens-ix/{p-2c4c03d4.entry.js → p-509dba4c.entry.js} +2 -2
- package/dist/siemens-ix/{p-113cc793.entry.js → p-50bcb3f8.entry.js} +2 -2
- package/dist/siemens-ix/{p-dcb3e5be.entry.js → p-5232d441.entry.js} +2 -2
- package/dist/siemens-ix/p-5bf37272.entry.js +2 -0
- package/dist/siemens-ix/p-5bf37272.entry.js.map +1 -0
- package/dist/siemens-ix/{p-5f25e7fd.entry.js → p-619a80d3.entry.js} +2 -2
- package/dist/siemens-ix/{p-5f25e7fd.entry.js.map → p-619a80d3.entry.js.map} +1 -1
- package/dist/siemens-ix/p-633a8884.entry.js +2 -0
- package/dist/siemens-ix/p-633a8884.entry.js.map +1 -0
- package/dist/siemens-ix/{p-dde7eb80.entry.js → p-66d4e328.entry.js} +2 -2
- package/dist/siemens-ix/{p-dde7eb80.entry.js.map → p-66d4e328.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-1a122c76.entry.js → p-6913e59d.entry.js} +2 -2
- package/dist/siemens-ix/{p-fb47546b.entry.js → p-6a9577b5.entry.js} +2 -2
- package/dist/siemens-ix/p-6a9577b5.entry.js.map +1 -0
- package/dist/siemens-ix/{p-882a0233.entry.js → p-72472fa5.entry.js} +2 -2
- package/dist/siemens-ix/{p-1d581190.js → p-72d096e9.js} +2 -2
- package/dist/siemens-ix/p-72d096e9.js.map +1 -0
- package/dist/siemens-ix/{p-052340f9.entry.js → p-7354cdb0.entry.js} +2 -2
- package/dist/siemens-ix/p-737954bf.entry.js +2 -0
- package/dist/siemens-ix/p-737954bf.entry.js.map +1 -0
- package/dist/siemens-ix/p-737c61da.entry.js +2 -0
- package/dist/siemens-ix/{p-4430117a.entry.js.map → p-737c61da.entry.js.map} +1 -1
- package/dist/siemens-ix/p-73bd61ca.entry.js +2 -0
- package/dist/siemens-ix/{p-0653a145.entry.js → p-74461f94.entry.js} +2 -2
- package/dist/siemens-ix/{p-b4ce366d.entry.js → p-7815494b.entry.js} +2 -2
- package/dist/siemens-ix/p-7815494b.entry.js.map +1 -0
- package/dist/siemens-ix/{p-53352bfb.entry.js → p-8578629c.entry.js} +2 -2
- package/dist/siemens-ix/p-8578629c.entry.js.map +1 -0
- package/dist/siemens-ix/p-8a56153a.entry.js +2 -0
- package/dist/siemens-ix/{p-92a18c10.entry.js.map → p-8a56153a.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-fb2b78f7.entry.js → p-8b21fc75.entry.js} +2 -2
- package/dist/siemens-ix/p-8b21fc75.entry.js.map +1 -0
- package/dist/siemens-ix/p-8b2b4ce3.entry.js +2 -0
- package/dist/siemens-ix/p-8b2b4ce3.entry.js.map +1 -0
- package/dist/siemens-ix/p-8f48462b.entry.js +2 -0
- package/dist/siemens-ix/p-8f48462b.entry.js.map +1 -0
- package/dist/siemens-ix/p-9144ea56.entry.js +2 -0
- package/dist/siemens-ix/p-9144ea56.entry.js.map +1 -0
- package/dist/siemens-ix/p-98af5c4d.entry.js +2 -0
- package/dist/siemens-ix/p-98af5c4d.entry.js.map +1 -0
- package/dist/siemens-ix/p-99a1cd81.entry.js +2 -0
- package/dist/siemens-ix/{p-96a3a750.entry.js → p-9b8c6123.entry.js} +2 -2
- package/dist/siemens-ix/p-9b8c6123.entry.js.map +1 -0
- package/dist/siemens-ix/p-9cd40e56.entry.js +2 -0
- package/dist/siemens-ix/p-9cd40e56.entry.js.map +1 -0
- package/dist/siemens-ix/{p-2946fd70.entry.js → p-ad0c6a32.entry.js} +2 -2
- package/dist/siemens-ix/p-af7a836c.entry.js +2 -0
- package/dist/siemens-ix/p-af7a836c.entry.js.map +1 -0
- package/dist/siemens-ix/{p-6fd7ecd0.entry.js → p-b247d124.entry.js} +2 -2
- package/dist/siemens-ix/p-b53aa733.entry.js +2 -0
- package/dist/siemens-ix/p-b53aa733.entry.js.map +1 -0
- package/dist/siemens-ix/{p-b804b8c5.entry.js → p-b6a11e17.entry.js} +2 -2
- package/dist/siemens-ix/p-b9e66925.entry.js +2 -0
- package/dist/siemens-ix/{p-2908cacd.entry.js → p-b9f67de0.entry.js} +2 -2
- package/dist/siemens-ix/{p-2908cacd.entry.js.map → p-b9f67de0.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-14a41c8c.entry.js → p-ba2e041e.entry.js} +2 -2
- package/dist/siemens-ix/p-ba6e955a.js +2 -0
- package/dist/siemens-ix/p-ba6e955a.js.map +1 -0
- package/dist/siemens-ix/p-bf1e16f6.entry.js +2 -0
- package/dist/siemens-ix/p-bf1e16f6.entry.js.map +1 -0
- package/dist/siemens-ix/{p-ff1ac5b3.entry.js → p-c0bf3052.entry.js} +2 -2
- package/dist/siemens-ix/{p-1f4b8463.entry.js → p-c39a6215.entry.js} +2 -2
- package/dist/siemens-ix/p-c5e08d24.entry.js +2 -0
- package/dist/siemens-ix/p-c5e08d24.entry.js.map +1 -0
- package/dist/siemens-ix/{p-29df2e29.entry.js → p-c841c191.entry.js} +2 -2
- package/dist/siemens-ix/p-c841c191.entry.js.map +1 -0
- package/dist/siemens-ix/{p-5696bb62.entry.js → p-cacd4857.entry.js} +2 -2
- package/dist/siemens-ix/p-cdaad9de.entry.js +2 -0
- package/dist/siemens-ix/p-cdaad9de.entry.js.map +1 -0
- package/dist/siemens-ix/p-ce563a48.js +2 -0
- package/dist/siemens-ix/p-ce563a48.js.map +1 -0
- package/dist/siemens-ix/p-ce808a3f.entry.js +2 -0
- package/dist/siemens-ix/{p-d03df401.entry.js.map → p-ce808a3f.entry.js.map} +1 -1
- package/dist/siemens-ix/p-d057b634.entry.js +2 -0
- package/dist/siemens-ix/p-d1a5b773.entry.js +2 -0
- package/dist/siemens-ix/p-d1a5b773.entry.js.map +1 -0
- package/dist/siemens-ix/{p-16b923e9.entry.js → p-d7072aad.entry.js} +2 -2
- package/dist/siemens-ix/{p-af099ca4.entry.js → p-d7a0deb7.entry.js} +2 -2
- package/dist/siemens-ix/p-d8780f8c.entry.js +2 -0
- package/dist/siemens-ix/p-d8780f8c.entry.js.map +1 -0
- package/dist/siemens-ix/p-da71920f.entry.js +2 -0
- package/dist/siemens-ix/p-da71920f.entry.js.map +1 -0
- package/dist/siemens-ix/{p-feac09bc.entry.js → p-dc284f4d.entry.js} +2 -2
- package/dist/siemens-ix/p-dda1ce22.entry.js +2 -0
- package/dist/siemens-ix/p-dda1ce22.entry.js.map +1 -0
- package/dist/siemens-ix/{p-c33cee36.entry.js → p-de44d65b.entry.js} +2 -2
- package/dist/siemens-ix/{p-c33cee36.entry.js.map → p-de44d65b.entry.js.map} +1 -1
- package/dist/siemens-ix/p-e4441794.entry.js +2 -0
- package/dist/siemens-ix/p-e4441794.entry.js.map +1 -0
- package/dist/siemens-ix/{p-e8d3cf35.entry.js → p-e4ca3618.entry.js} +2 -2
- package/dist/siemens-ix/{p-e8d3cf35.entry.js.map → p-e4ca3618.entry.js.map} +1 -1
- package/dist/siemens-ix/p-e6652822.js +2 -0
- package/dist/siemens-ix/p-e6652822.js.map +1 -0
- package/dist/siemens-ix/{p-8629db91.entry.js → p-e89c0e29.entry.js} +2 -2
- package/dist/siemens-ix/{p-0b4e398e.entry.js → p-ead295d5.entry.js} +2 -2
- package/dist/siemens-ix/{p-0b4e398e.entry.js.map → p-ead295d5.entry.js.map} +1 -1
- package/dist/siemens-ix/p-ec037f98.js +2 -0
- package/dist/siemens-ix/p-ec037f98.js.map +1 -0
- package/dist/siemens-ix/p-ee50f7fa.entry.js +2 -0
- package/dist/siemens-ix/{p-8d0758c1.entry.js → p-f47bd4e8.entry.js} +2 -2
- package/dist/siemens-ix/{p-87e692d9.entry.js → p-f576c41d.entry.js} +2 -2
- package/dist/siemens-ix/{p-87e692d9.entry.js.map → p-f576c41d.entry.js.map} +1 -1
- package/dist/siemens-ix/p-f5a9140e.entry.js +2 -0
- package/dist/siemens-ix/p-f5a9140e.entry.js.map +1 -0
- package/dist/siemens-ix/p-fb593d70.entry.js +2 -0
- package/dist/siemens-ix/p-fb593d70.entry.js.map +1 -0
- package/dist/siemens-ix/{p-c1968b80.entry.js → p-fc766ada.entry.js} +2 -2
- package/dist/siemens-ix/p-fe01bff0.js +2 -0
- package/dist/siemens-ix/p-fe01bff0.js.map +1 -0
- package/dist/siemens-ix/p-ff6668b8.entry.js +2 -0
- package/dist/siemens-ix/siemens-ix-core.css +1 -1
- package/dist/siemens-ix/siemens-ix.css +15 -11
- 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/action-card/action-card.d.ts +3 -2
- package/dist/types/components/application-header/application-header.d.ts +19 -1
- package/dist/types/components/basic-navigation/basic-navigation.d.ts +2 -1
- package/dist/types/components/blind/blind.d.ts +4 -4
- package/dist/types/components/breadcrumb/breadcrumb.d.ts +3 -3
- package/dist/types/components/button/base-button.d.ts +3 -2
- package/dist/types/components/button/button.d.ts +2 -2
- package/dist/types/components/card/card.d.ts +2 -1
- package/dist/types/components/category-filter/category-filter.d.ts +23 -12
- package/dist/types/components/category-filter/test/category-filter.ct.d.ts +1 -0
- package/dist/types/components/content-header/content-header.d.ts +1 -1
- package/dist/types/components/css-grid/css-grid.d.ts +2 -2
- package/dist/types/components/date-dropdown/date-dropdown.d.ts +3 -3
- package/dist/types/components/date-picker/date-picker.d.ts +6 -7
- package/dist/types/components/dropdown/dropdown-controller.d.ts +1 -6
- package/dist/types/components/dropdown/dropdown.d.ts +11 -10
- package/dist/types/components/dropdown-button/dropdown-button.d.ts +4 -4
- package/dist/types/components/dropdown-item/dropdown-item.d.ts +2 -2
- package/dist/types/components/group/group.d.ts +7 -6
- package/dist/types/components/group-item/group-item.d.ts +4 -4
- package/dist/types/components/menu-about/test/menu-about.ct.d.ts +1 -0
- package/dist/types/components/menu-item/menu-item.d.ts +6 -5
- package/dist/types/components/modal/test/modal.ct.d.ts +3 -2
- package/dist/types/components/modal-header/modal-header.d.ts +3 -3
- package/dist/types/components/push-card/push-card.d.ts +4 -3
- package/dist/types/components/select/select.d.ts +9 -10
- package/dist/types/components/slider/slider.d.ts +3 -3
- package/dist/types/components/tab-item/tab-item.d.ts +1 -1
- package/dist/types/components/tabs/tabs.d.ts +7 -4
- package/dist/types/components/tooltip/tooltip.d.ts +10 -10
- package/dist/types/components/tree/tree.d.ts +1 -1
- package/dist/types/components/tree-item/tree-item.d.ts +3 -3
- package/dist/types/components/typography/type-mapping.d.ts +3 -0
- package/dist/types/components/typography/typography.d.ts +3 -10
- package/dist/types/components/upload/test/upload.ct.d.ts +1 -0
- package/dist/types/components/upload/upload.d.ts +4 -2
- package/dist/types/components/utils/disposable-event-listener.d.ts +7 -0
- package/dist/types/components/utils/element-reference.d.ts +1 -0
- package/dist/types/components/utils/focus.d.ts +5 -4
- package/dist/types/components/utils/listener.d.ts +4 -2
- package/dist/types/components/utils/make-ref.d.ts +2 -2
- package/dist/types/components/utils/theme-switcher.d.ts +1 -1
- package/dist/types/components.d.ts +114 -75
- package/dist/types/index.d.ts +2 -0
- package/dist/types/tests/utils/test/page.d.ts +1 -3
- package/hydrate/index.js +1536 -788
- package/package.json +6 -4
- package/scss/_core.scss +5 -0
- package/scss/components/form/_input.scss +17 -20
- package/dist/cjs/base-button-3735b8c2.js.map +0 -1
- package/dist/cjs/context-98f4a0b3.js.map +0 -1
- package/dist/cjs/floating-ui.dom.esm-94b4d17c.js.map +0 -1
- package/dist/cjs/focus-9c8ffbb0.js.map +0 -1
- package/dist/cjs/listener-bc3e7c0c.js.map +0 -1
- package/dist/cjs/make-ref-c25629b7.js.map +0 -1
- package/dist/cjs/theme-switcher-2d2bde85.js.map +0 -1
- package/dist/esm/base-button-1b40b11d.js.map +0 -1
- package/dist/esm/context-c9078420.js.map +0 -1
- package/dist/esm/floating-ui.dom.esm-6e7c098f.js.map +0 -1
- package/dist/esm/focus-d4d3abaf.js.map +0 -1
- package/dist/esm/listener-4f3baab5.js.map +0 -1
- package/dist/esm/make-ref-c80046bf.js.map +0 -1
- package/dist/esm/menu-tabs-fc-d9a7dd06.js.map +0 -1
- package/dist/esm/theme-switcher-b10fb4da.js.map +0 -1
- package/dist/siemens-ix/p-0c8a98cd.js +0 -2
- package/dist/siemens-ix/p-0c8a98cd.js.map +0 -1
- package/dist/siemens-ix/p-0d2a6886.entry.js +0 -2
- package/dist/siemens-ix/p-0f7ef743.entry.js +0 -2
- package/dist/siemens-ix/p-112069ca.entry.js.map +0 -1
- package/dist/siemens-ix/p-15b3c17e.entry.js +0 -2
- package/dist/siemens-ix/p-15b3c17e.entry.js.map +0 -1
- package/dist/siemens-ix/p-1cff59db.entry.js +0 -2
- package/dist/siemens-ix/p-1cff59db.entry.js.map +0 -1
- package/dist/siemens-ix/p-1d581190.js.map +0 -1
- package/dist/siemens-ix/p-1da901d5.js.map +0 -1
- package/dist/siemens-ix/p-1db6be55.js.map +0 -1
- package/dist/siemens-ix/p-29df2e29.entry.js.map +0 -1
- package/dist/siemens-ix/p-2ebfd4fd.entry.js +0 -2
- package/dist/siemens-ix/p-2ec7f841.entry.js +0 -2
- package/dist/siemens-ix/p-2ec7f841.entry.js.map +0 -1
- package/dist/siemens-ix/p-309ac3ad.entry.js +0 -2
- package/dist/siemens-ix/p-309ac3ad.entry.js.map +0 -1
- package/dist/siemens-ix/p-315f070d.entry.js +0 -2
- package/dist/siemens-ix/p-315f070d.entry.js.map +0 -1
- package/dist/siemens-ix/p-32375ddb.entry.js +0 -2
- package/dist/siemens-ix/p-32d4ed3b.entry.js +0 -2
- package/dist/siemens-ix/p-427676f4.entry.js +0 -2
- package/dist/siemens-ix/p-427676f4.entry.js.map +0 -1
- package/dist/siemens-ix/p-4430117a.entry.js +0 -2
- package/dist/siemens-ix/p-44db3646.entry.js +0 -2
- package/dist/siemens-ix/p-4b3facea.entry.js +0 -2
- package/dist/siemens-ix/p-4b3facea.entry.js.map +0 -1
- package/dist/siemens-ix/p-52857629.entry.js +0 -2
- package/dist/siemens-ix/p-52857629.entry.js.map +0 -1
- package/dist/siemens-ix/p-53352bfb.entry.js.map +0 -1
- package/dist/siemens-ix/p-5c673ae9.entry.js +0 -2
- package/dist/siemens-ix/p-5c673ae9.entry.js.map +0 -1
- package/dist/siemens-ix/p-60c16878.entry.js +0 -2
- package/dist/siemens-ix/p-60c16878.entry.js.map +0 -1
- package/dist/siemens-ix/p-6227e62b.entry.js +0 -2
- package/dist/siemens-ix/p-6227e62b.entry.js.map +0 -1
- package/dist/siemens-ix/p-64c3fa3d.js +0 -2
- package/dist/siemens-ix/p-64c3fa3d.js.map +0 -1
- package/dist/siemens-ix/p-68532fa2.js +0 -2
- package/dist/siemens-ix/p-7076210b.entry.js.map +0 -1
- package/dist/siemens-ix/p-713828ed.entry.js +0 -2
- package/dist/siemens-ix/p-713828ed.entry.js.map +0 -1
- package/dist/siemens-ix/p-7bfd6cd2.entry.js +0 -2
- package/dist/siemens-ix/p-7bfd6cd2.entry.js.map +0 -1
- package/dist/siemens-ix/p-7c36d3fa.js +0 -2
- package/dist/siemens-ix/p-7c36d3fa.js.map +0 -1
- package/dist/siemens-ix/p-7faa148f.entry.js +0 -2
- package/dist/siemens-ix/p-85423643.entry.js +0 -2
- package/dist/siemens-ix/p-85423643.entry.js.map +0 -1
- package/dist/siemens-ix/p-8d599677.entry.js +0 -2
- package/dist/siemens-ix/p-8d599677.entry.js.map +0 -1
- package/dist/siemens-ix/p-92a18c10.entry.js +0 -2
- package/dist/siemens-ix/p-96a3a750.entry.js.map +0 -1
- package/dist/siemens-ix/p-9ebc4fc3.entry.js.map +0 -1
- package/dist/siemens-ix/p-a0138163.entry.js +0 -2
- package/dist/siemens-ix/p-a0138163.entry.js.map +0 -1
- package/dist/siemens-ix/p-a0a44a2b.entry.js +0 -2
- package/dist/siemens-ix/p-a0a44a2b.entry.js.map +0 -1
- package/dist/siemens-ix/p-a8d291fa.entry.js.map +0 -1
- package/dist/siemens-ix/p-b3b23af7.entry.js +0 -2
- package/dist/siemens-ix/p-b3f35666.js +0 -2
- package/dist/siemens-ix/p-b3f35666.js.map +0 -1
- package/dist/siemens-ix/p-b4ce366d.entry.js.map +0 -1
- package/dist/siemens-ix/p-c09553f3.js +0 -2
- package/dist/siemens-ix/p-c09553f3.js.map +0 -1
- package/dist/siemens-ix/p-c1222581.entry.js +0 -2
- package/dist/siemens-ix/p-c45601cb.entry.js +0 -2
- package/dist/siemens-ix/p-c45601cb.entry.js.map +0 -1
- package/dist/siemens-ix/p-c55db6c7.entry.js +0 -2
- package/dist/siemens-ix/p-c55db6c7.entry.js.map +0 -1
- package/dist/siemens-ix/p-d03df401.entry.js +0 -2
- package/dist/siemens-ix/p-d14024d3.entry.js +0 -2
- package/dist/siemens-ix/p-d14024d3.entry.js.map +0 -1
- package/dist/siemens-ix/p-d1f49940.entry.js +0 -2
- package/dist/siemens-ix/p-d1f49940.entry.js.map +0 -1
- package/dist/siemens-ix/p-d998415f.entry.js +0 -2
- package/dist/siemens-ix/p-d998415f.entry.js.map +0 -1
- package/dist/siemens-ix/p-e30ed20a.entry.js +0 -2
- package/dist/siemens-ix/p-e30ed20a.entry.js.map +0 -1
- package/dist/siemens-ix/p-e9a3f58a.entry.js +0 -2
- package/dist/siemens-ix/p-e9a3f58a.entry.js.map +0 -1
- package/dist/siemens-ix/p-eb6268a6.entry.js +0 -2
- package/dist/siemens-ix/p-eb6268a6.entry.js.map +0 -1
- package/dist/siemens-ix/p-ebb277f0.entry.js +0 -2
- package/dist/siemens-ix/p-ebb277f0.entry.js.map +0 -1
- package/dist/siemens-ix/p-f07110c6.entry.js +0 -2
- package/dist/siemens-ix/p-f07110c6.entry.js.map +0 -1
- package/dist/siemens-ix/p-fb2b78f7.entry.js.map +0 -1
- package/dist/siemens-ix/p-fb47546b.entry.js.map +0 -1
- package/dist/siemens-ix/p-fc5814df.entry.js.map +0 -1
- package/dist/siemens-ix/p-ff148103.entry.js +0 -2
- package/dist/siemens-ix/p-ff148103.entry.js.map +0 -1
- /package/dist/siemens-ix/{p-bf14c60b.entry.js.map → p-0379b864.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-24a8737a.entry.js.map → p-054451cb.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-90440046.entry.js.map → p-06f9e19f.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-fb4c79c6.entry.js.map → p-0996d9f6.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-bea7c748.entry.js.map → p-0f4e62f3.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-c1222581.entry.js.map → p-1a8e3fea.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-bc2c74c5.entry.js.map → p-1e3d6d27.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-f78246bd.entry.js.map → p-315ecf68.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-68532fa2.js.map → p-3b576b4e.js.map} +0 -0
- /package/dist/siemens-ix/{p-b663ca16.entry.js.map → p-41d9a2e4.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-2c4c03d4.entry.js.map → p-509dba4c.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-113cc793.entry.js.map → p-50bcb3f8.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-dcb3e5be.entry.js.map → p-5232d441.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-1a122c76.entry.js.map → p-6913e59d.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-882a0233.entry.js.map → p-72472fa5.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-052340f9.entry.js.map → p-7354cdb0.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-32d4ed3b.entry.js.map → p-73bd61ca.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-0653a145.entry.js.map → p-74461f94.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-b3b23af7.entry.js.map → p-99a1cd81.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-2946fd70.entry.js.map → p-ad0c6a32.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-6fd7ecd0.entry.js.map → p-b247d124.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-b804b8c5.entry.js.map → p-b6a11e17.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-44db3646.entry.js.map → p-b9e66925.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-14a41c8c.entry.js.map → p-ba2e041e.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-ff1ac5b3.entry.js.map → p-c0bf3052.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-1f4b8463.entry.js.map → p-c39a6215.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-5696bb62.entry.js.map → p-cacd4857.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-7faa148f.entry.js.map → p-d057b634.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-16b923e9.entry.js.map → p-d7072aad.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-af099ca4.entry.js.map → p-d7a0deb7.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-feac09bc.entry.js.map → p-dc284f4d.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-8629db91.entry.js.map → p-e89c0e29.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-32375ddb.entry.js.map → p-ee50f7fa.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-8d0758c1.entry.js.map → p-f47bd4e8.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-c1968b80.entry.js.map → p-fc766ada.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-0d2a6886.entry.js.map → p-ff6668b8.entry.js.map} +0 -0
|
@@ -3,145 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-529f21c1.js');
|
|
6
|
-
const floatingUi_dom_esm = require('./floating-ui.dom.esm-
|
|
7
|
-
const focus = require('./focus-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
* SPDX-FileCopyrightText: 2024 Siemens AG
|
|
11
|
-
*
|
|
12
|
-
* SPDX-License-Identifier: MIT
|
|
13
|
-
*
|
|
14
|
-
* This source code is licensed under the MIT license found in the
|
|
15
|
-
* LICENSE file in the root directory of this source tree.
|
|
16
|
-
*/
|
|
17
|
-
function hasDropdownItemWrapperImplemented(item) {
|
|
18
|
-
return (item &&
|
|
19
|
-
item.getDropdownItemElement !== undefined &&
|
|
20
|
-
typeof item.getDropdownItemElement === 'function');
|
|
21
|
-
}
|
|
22
|
-
class DropdownController {
|
|
23
|
-
constructor() {
|
|
24
|
-
this.dropdowns = new Map();
|
|
25
|
-
this.submenuIds = {};
|
|
26
|
-
this.isWindowListenerActive = false;
|
|
27
|
-
}
|
|
28
|
-
connected(dropdown) {
|
|
29
|
-
if (!this.isWindowListenerActive) {
|
|
30
|
-
this.addOverlayListeners();
|
|
31
|
-
}
|
|
32
|
-
this.dropdowns.set(dropdown.getId(), dropdown);
|
|
33
|
-
if (dropdown.discoverAllSubmenus) {
|
|
34
|
-
this.discoverSubmenus();
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
disconnected(dropdown) {
|
|
38
|
-
this.dropdowns.delete(dropdown.getId());
|
|
39
|
-
}
|
|
40
|
-
discoverSubmenus() {
|
|
41
|
-
this.dropdowns.forEach((dropdown) => {
|
|
42
|
-
dropdown.discoverSubmenu();
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
present(dropdown) {
|
|
46
|
-
if (!dropdown.isPresent() && dropdown.willPresent()) {
|
|
47
|
-
this.submenuIds[dropdown.getId()] = dropdown.getAssignedSubmenuIds();
|
|
48
|
-
dropdown.present();
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
dismissChildren(uid) {
|
|
52
|
-
const childIds = this.submenuIds[uid] || [];
|
|
53
|
-
for (const id of childIds) {
|
|
54
|
-
this.dismiss(this.dropdowns.get(id));
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
dismiss(dropdown) {
|
|
58
|
-
if (dropdown.isPresent() && dropdown.willDismiss()) {
|
|
59
|
-
this.dismissChildren(dropdown.getId());
|
|
60
|
-
dropdown.dismiss();
|
|
61
|
-
delete this.submenuIds[dropdown.getId()];
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
dismissAll(ignoreBehaviorForIds = [], ignoreRelatedDropdowns = false) {
|
|
65
|
-
this.dropdowns.forEach((dropdown) => {
|
|
66
|
-
const preventClosing = dropdown.closeBehavior === 'inside' || dropdown.closeBehavior === false;
|
|
67
|
-
const shouldIgnore = ignoreBehaviorForIds.includes(dropdown.getId());
|
|
68
|
-
const path = this.buildComposedPath(dropdown.getId(), new Set());
|
|
69
|
-
if (ignoreBehaviorForIds.length > 0 && ignoreRelatedDropdowns) {
|
|
70
|
-
let skipRelatedDropdown = false;
|
|
71
|
-
ignoreBehaviorForIds.forEach((id) => {
|
|
72
|
-
if (path.has(id)) {
|
|
73
|
-
skipRelatedDropdown = true;
|
|
74
|
-
return;
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
if (!skipRelatedDropdown) {
|
|
78
|
-
return;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
if (!shouldIgnore && preventClosing) {
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
this.dismiss(dropdown);
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
dismissOthers(uid) {
|
|
88
|
-
let path = this.buildComposedPath(uid, new Set());
|
|
89
|
-
path.add(uid);
|
|
90
|
-
this.dropdowns.forEach((dropdown) => {
|
|
91
|
-
if (dropdown.closeBehavior !== 'inside' &&
|
|
92
|
-
dropdown.closeBehavior !== false &&
|
|
93
|
-
!path.has(dropdown.getId())) {
|
|
94
|
-
this.dismiss(dropdown);
|
|
95
|
-
}
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
pathIncludesTrigger(eventTargets) {
|
|
99
|
-
for (let eventTarget of eventTargets) {
|
|
100
|
-
if (eventTarget instanceof HTMLElement) {
|
|
101
|
-
if (eventTarget.hasAttribute('data-ix-dropdown-trigger')) {
|
|
102
|
-
return eventTarget;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
return;
|
|
107
|
-
}
|
|
108
|
-
pathIncludesDropdown(eventTargets) {
|
|
109
|
-
return !!eventTargets.find((element) => element.tagName === 'IX-DROPDOWN');
|
|
110
|
-
}
|
|
111
|
-
buildComposedPath(id, path) {
|
|
112
|
-
if (this.submenuIds[id]) {
|
|
113
|
-
path.add(id);
|
|
114
|
-
}
|
|
115
|
-
for (const ruleKey of Object.keys(this.submenuIds)) {
|
|
116
|
-
if (this.submenuIds[ruleKey].includes(id)) {
|
|
117
|
-
this.buildComposedPath(ruleKey, path).forEach((key) => path.add(key));
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
return path;
|
|
121
|
-
}
|
|
122
|
-
addOverlayListeners() {
|
|
123
|
-
this.isWindowListenerActive = true;
|
|
124
|
-
window.addEventListener('click', (event) => {
|
|
125
|
-
const hasTrigger = this.pathIncludesTrigger(event.composedPath());
|
|
126
|
-
const hasDropdown = this.pathIncludesDropdown(event.composedPath());
|
|
127
|
-
if (!hasTrigger && !hasDropdown) {
|
|
128
|
-
this.dismissAll();
|
|
129
|
-
}
|
|
130
|
-
});
|
|
131
|
-
window.addEventListener('keydown', (event) => {
|
|
132
|
-
if (event.key === 'Escape') {
|
|
133
|
-
this.dismissAll([...this.dropdowns.keys()]);
|
|
134
|
-
}
|
|
135
|
-
});
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
const addDisposableEventListener = (element, eventType, callback) => {
|
|
139
|
-
element.addEventListener(eventType, callback);
|
|
140
|
-
return () => {
|
|
141
|
-
element.removeEventListener(eventType, callback);
|
|
142
|
-
};
|
|
143
|
-
};
|
|
144
|
-
const dropdownController = new DropdownController();
|
|
6
|
+
const floatingUi_dom_esm = require('./floating-ui.dom.esm-9dde6cd6.js');
|
|
7
|
+
const focus = require('./focus-83f8f1ba.js');
|
|
8
|
+
const dropdownController = require('./dropdown-controller-1781ef55.js');
|
|
9
|
+
const disposableEventListener = require('./disposable-event-listener-1ed769b9.js');
|
|
145
10
|
|
|
146
11
|
const dropdownCss = ":host{background-color:var(--theme-color-2);border-radius:var(--theme-default-border-radius);min-width:0px;z-index:var(--theme-z-index-dropdown);box-shadow:var(--theme-shadow-4);padding:0.25rem 0px}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .dropdown-header{display:flex;align-items:center;height:2.5rem;color:var(--theme-menu-header--color);padding:0 1rem}:host(.overflow){max-height:50vh;overflow-y:auto}:host(:not(.show)){display:none}";
|
|
147
12
|
const IxDropdownStyle0 = dropdownCss;
|
|
@@ -151,12 +16,12 @@ const Dropdown = class {
|
|
|
151
16
|
constructor(hostRef) {
|
|
152
17
|
index.registerInstance(this, hostRef);
|
|
153
18
|
this.showChanged = index.createEvent(this, "showChanged", 7);
|
|
154
|
-
this.autoUpdateCleanup = null;
|
|
155
19
|
this.localUId = `dropdown-${sequenceId++}`;
|
|
156
20
|
this.assignedSubmenu = [];
|
|
157
|
-
this.focusDropdownItemBind = this.focusDropdownItem.bind(this);
|
|
158
21
|
this.itemObserver = new MutationObserver(() => {
|
|
159
|
-
this.arrowFocusController
|
|
22
|
+
if (this.arrowFocusController) {
|
|
23
|
+
this.arrowFocusController.items = this.dropdownItems;
|
|
24
|
+
}
|
|
160
25
|
});
|
|
161
26
|
this.suppressAutomaticPlacement = false;
|
|
162
27
|
this.show = false;
|
|
@@ -172,7 +37,7 @@ const Dropdown = class {
|
|
|
172
37
|
this.ignoreRelatedSubmenu = false;
|
|
173
38
|
}
|
|
174
39
|
connectedCallback() {
|
|
175
|
-
dropdownController.connected(this);
|
|
40
|
+
dropdownController.dropdownController.connected(this);
|
|
176
41
|
if (this.trigger != undefined) {
|
|
177
42
|
this.registerListener(this.trigger);
|
|
178
43
|
}
|
|
@@ -186,16 +51,28 @@ const Dropdown = class {
|
|
|
186
51
|
}
|
|
187
52
|
}
|
|
188
53
|
disconnectedCallback() {
|
|
189
|
-
|
|
190
|
-
dropdownController.
|
|
54
|
+
var _a;
|
|
55
|
+
dropdownController.dropdownController.dismiss(this);
|
|
56
|
+
dropdownController.dropdownController.disconnected(this);
|
|
57
|
+
if (this.arrowFocusController) {
|
|
58
|
+
(_a = this.arrowFocusController) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
59
|
+
this.arrowFocusController = undefined;
|
|
60
|
+
}
|
|
61
|
+
if (this.itemObserver) {
|
|
62
|
+
this.itemObserver.disconnect();
|
|
63
|
+
this.itemObserver = undefined;
|
|
64
|
+
}
|
|
191
65
|
if (this.disposeClickListener) {
|
|
192
66
|
this.disposeClickListener();
|
|
67
|
+
this.disposeClickListener = undefined;
|
|
193
68
|
}
|
|
194
69
|
if (this.disposeKeyListener) {
|
|
195
70
|
this.disposeKeyListener();
|
|
71
|
+
this.disposeKeyListener = undefined;
|
|
196
72
|
}
|
|
197
73
|
if (this.autoUpdateCleanup) {
|
|
198
74
|
this.autoUpdateCleanup();
|
|
75
|
+
this.autoUpdateCleanup = undefined;
|
|
199
76
|
}
|
|
200
77
|
}
|
|
201
78
|
getAssignedSubmenuIds() {
|
|
@@ -233,14 +110,17 @@ const Dropdown = class {
|
|
|
233
110
|
(_b = this.disposeKeyListener) === null || _b === void 0 ? void 0 : _b.call(this);
|
|
234
111
|
const toggleController = () => {
|
|
235
112
|
if (!this.isPresent()) {
|
|
236
|
-
dropdownController.present(this);
|
|
113
|
+
dropdownController.dropdownController.present(this);
|
|
237
114
|
}
|
|
238
115
|
else {
|
|
239
|
-
dropdownController.dismiss(this);
|
|
116
|
+
dropdownController.dropdownController.dismiss(this);
|
|
240
117
|
}
|
|
241
|
-
dropdownController.dismissOthers(this.getId());
|
|
118
|
+
dropdownController.dropdownController.dismissOthers(this.getId());
|
|
242
119
|
};
|
|
243
|
-
|
|
120
|
+
if (!this.triggerElement) {
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
this.disposeClickListener = disposableEventListener.addDisposableEventListener(this.triggerElement, 'click', (event) => {
|
|
244
124
|
if (!event.defaultPrevented) {
|
|
245
125
|
toggleController();
|
|
246
126
|
}
|
|
@@ -261,18 +141,18 @@ const Dropdown = class {
|
|
|
261
141
|
if (!this.triggerElement) {
|
|
262
142
|
return;
|
|
263
143
|
}
|
|
264
|
-
this.disposeKeyListener = addDisposableEventListener(this.triggerElement, 'keydown', (event) => {
|
|
144
|
+
this.disposeKeyListener = disposableEventListener.addDisposableEventListener(this.triggerElement, 'keydown', ((event) => {
|
|
265
145
|
if (event.key !== 'ArrowDown') {
|
|
266
146
|
return;
|
|
267
147
|
}
|
|
268
148
|
if (document.activeElement !== this.triggerElement) {
|
|
269
149
|
return;
|
|
270
150
|
}
|
|
271
|
-
dropdownController.present(this);
|
|
151
|
+
dropdownController.dropdownController.present(this);
|
|
272
152
|
setTimeout(() => {
|
|
273
153
|
this.focusDropdownItem(0);
|
|
274
154
|
});
|
|
275
|
-
});
|
|
155
|
+
}));
|
|
276
156
|
}
|
|
277
157
|
async registerListener(element) {
|
|
278
158
|
this.triggerElement = await this.resolveElement(element);
|
|
@@ -287,9 +167,9 @@ const Dropdown = class {
|
|
|
287
167
|
}
|
|
288
168
|
async checkForSubmenuAnchor(element) {
|
|
289
169
|
if (!element) {
|
|
290
|
-
return
|
|
170
|
+
return undefined;
|
|
291
171
|
}
|
|
292
|
-
if (hasDropdownItemWrapperImplemented(element)) {
|
|
172
|
+
if (dropdownController.hasDropdownItemWrapperImplemented(element)) {
|
|
293
173
|
const dropdownItem = await element.getDropdownItemElement();
|
|
294
174
|
dropdownItem.isSubMenu = true;
|
|
295
175
|
this.hostElement.style.zIndex = `var(--theme-z-index-dropdown)`;
|
|
@@ -308,16 +188,18 @@ const Dropdown = class {
|
|
|
308
188
|
return Promise.resolve(element);
|
|
309
189
|
}
|
|
310
190
|
if (typeof element != 'string') {
|
|
311
|
-
return;
|
|
191
|
+
return Promise.resolve(undefined);
|
|
312
192
|
}
|
|
313
193
|
const selector = `#${element}`;
|
|
314
194
|
return new Promise((resolve) => {
|
|
315
|
-
|
|
316
|
-
|
|
195
|
+
const el = document.querySelector(selector);
|
|
196
|
+
if (el !== null) {
|
|
197
|
+
return resolve(el);
|
|
317
198
|
}
|
|
318
199
|
const observer = new MutationObserver(() => {
|
|
319
|
-
|
|
320
|
-
|
|
200
|
+
const el = document.querySelector(selector);
|
|
201
|
+
if (el) {
|
|
202
|
+
resolve(el);
|
|
321
203
|
observer.disconnect();
|
|
322
204
|
}
|
|
323
205
|
});
|
|
@@ -327,34 +209,47 @@ const Dropdown = class {
|
|
|
327
209
|
});
|
|
328
210
|
});
|
|
329
211
|
}
|
|
212
|
+
async resolveAnchorElement() {
|
|
213
|
+
if (this.anchor) {
|
|
214
|
+
this.anchorElement = await this.resolveElement(this.anchor);
|
|
215
|
+
}
|
|
216
|
+
else if (this.trigger) {
|
|
217
|
+
this.anchorElement = await this.resolveElement(this.trigger);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
330
220
|
async changedShow(newShow) {
|
|
331
|
-
var _a, _b;
|
|
221
|
+
var _a, _b, _c, _d;
|
|
332
222
|
if (newShow) {
|
|
333
|
-
|
|
334
|
-
? this.resolveElement(this.anchor)
|
|
335
|
-
: this.resolveElement(this.trigger));
|
|
223
|
+
await this.resolveAnchorElement();
|
|
336
224
|
if (this.anchorElement) {
|
|
337
225
|
this.applyDropdownPosition();
|
|
338
226
|
}
|
|
339
|
-
this.arrowFocusController = new focus.ArrowFocusController(this.dropdownItems, this.
|
|
340
|
-
this.itemObserver.observe(this.
|
|
227
|
+
this.arrowFocusController = new focus.ArrowFocusController(this.dropdownItems, this.hostElement, (index) => this.focusDropdownItem(index));
|
|
228
|
+
(_a = this.itemObserver) === null || _a === void 0 ? void 0 : _a.observe(this.hostElement, {
|
|
341
229
|
childList: true,
|
|
342
230
|
subtree: true,
|
|
343
231
|
});
|
|
344
232
|
this.registerKeyListener();
|
|
345
233
|
}
|
|
346
234
|
else {
|
|
347
|
-
|
|
348
|
-
this.
|
|
349
|
-
(
|
|
235
|
+
this.destroyAutoUpdate();
|
|
236
|
+
(_b = this.arrowFocusController) === null || _b === void 0 ? void 0 : _b.disconnect();
|
|
237
|
+
(_c = this.itemObserver) === null || _c === void 0 ? void 0 : _c.disconnect();
|
|
238
|
+
(_d = this.disposeKeyListener) === null || _d === void 0 ? void 0 : _d.call(this);
|
|
350
239
|
}
|
|
351
240
|
}
|
|
352
241
|
changedTrigger(newTriggerValue) {
|
|
353
242
|
this.registerListener(newTriggerValue);
|
|
354
243
|
}
|
|
244
|
+
destroyAutoUpdate() {
|
|
245
|
+
if (this.autoUpdateCleanup) {
|
|
246
|
+
this.autoUpdateCleanup();
|
|
247
|
+
this.autoUpdateCleanup = undefined;
|
|
248
|
+
}
|
|
249
|
+
}
|
|
355
250
|
isAnchorSubmenu() {
|
|
356
251
|
var _a;
|
|
357
|
-
if (!hasDropdownItemWrapperImplemented(this.anchorElement)) {
|
|
252
|
+
if (!dropdownController.hasDropdownItemWrapperImplemented(this.anchorElement)) {
|
|
358
253
|
// Is no official dropdown-item, but check if any dropdown-item
|
|
359
254
|
// is placed somewhere up the DOM
|
|
360
255
|
return !!((_a = this.anchorElement) === null || _a === void 0 ? void 0 : _a.closest('ix-dropdown-item'));
|
|
@@ -362,49 +257,49 @@ const Dropdown = class {
|
|
|
362
257
|
return true;
|
|
363
258
|
}
|
|
364
259
|
async applyDropdownPosition() {
|
|
260
|
+
var _a, _b;
|
|
365
261
|
if (!this.show) {
|
|
366
262
|
return;
|
|
367
263
|
}
|
|
368
264
|
if (!this.anchorElement) {
|
|
369
265
|
return;
|
|
370
266
|
}
|
|
371
|
-
if (!this.dropdownRef) {
|
|
372
|
-
return;
|
|
373
|
-
}
|
|
374
267
|
const isSubmenu = this.isAnchorSubmenu();
|
|
375
268
|
let positionConfig = {
|
|
376
269
|
strategy: this.positioningStrategy,
|
|
377
270
|
middleware: [],
|
|
378
271
|
};
|
|
379
272
|
if (!this.suppressAutomaticPlacement) {
|
|
380
|
-
positionConfig.middleware.push(floatingUi_dom_esm.flip({ fallbackStrategy: 'initialPlacement' }));
|
|
273
|
+
(_a = positionConfig.middleware) === null || _a === void 0 ? void 0 : _a.push(floatingUi_dom_esm.flip({ fallbackStrategy: 'initialPlacement' }));
|
|
381
274
|
}
|
|
382
275
|
positionConfig.placement = isSubmenu ? 'right-start' : this.placement;
|
|
383
276
|
positionConfig.middleware = [
|
|
384
|
-
...positionConfig.middleware,
|
|
277
|
+
...(((_b = positionConfig.middleware) === null || _b === void 0 ? void 0 : _b.filter(Boolean)) || []),
|
|
385
278
|
floatingUi_dom_esm.inline(),
|
|
386
279
|
floatingUi_dom_esm.shift(),
|
|
387
280
|
];
|
|
388
281
|
if (this.offset) {
|
|
389
282
|
positionConfig.middleware.push(floatingUi_dom_esm.offset(this.offset));
|
|
390
283
|
}
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
284
|
+
this.destroyAutoUpdate();
|
|
285
|
+
if (!this.anchorElement) {
|
|
286
|
+
return;
|
|
394
287
|
}
|
|
395
|
-
this.autoUpdateCleanup = floatingUi_dom_esm.autoUpdate(this.anchorElement, this.
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
288
|
+
this.autoUpdateCleanup = floatingUi_dom_esm.autoUpdate(this.anchorElement, this.hostElement, async () => {
|
|
289
|
+
if (this.anchorElement) {
|
|
290
|
+
const computeResponse = await floatingUi_dom_esm.computePosition(this.anchorElement, this.hostElement, positionConfig);
|
|
291
|
+
Object.assign(this.hostElement.style, {
|
|
292
|
+
top: '0',
|
|
293
|
+
left: '0',
|
|
294
|
+
transform: `translate(${Math.round(computeResponse.x)}px,${Math.round(computeResponse.y)}px)`,
|
|
295
|
+
});
|
|
296
|
+
}
|
|
402
297
|
if (this.overwriteDropdownStyle) {
|
|
403
298
|
const overwriteStyle = await this.overwriteDropdownStyle({
|
|
404
|
-
dropdownRef: this.
|
|
299
|
+
dropdownRef: this.hostElement,
|
|
405
300
|
triggerRef: this.triggerElement,
|
|
406
301
|
});
|
|
407
|
-
Object.assign(this.
|
|
302
|
+
Object.assign(this.hostElement.style, overwriteStyle);
|
|
408
303
|
}
|
|
409
304
|
}, {
|
|
410
305
|
ancestorResize: true,
|
|
@@ -414,25 +309,29 @@ const Dropdown = class {
|
|
|
414
309
|
}
|
|
415
310
|
focusDropdownItem(index) {
|
|
416
311
|
requestAnimationFrame(() => {
|
|
417
|
-
var _a;
|
|
418
|
-
(_a = this.dropdownItems[index]) === null || _a === void 0 ? void 0 : _a.shadowRoot.querySelector('button')
|
|
312
|
+
var _a, _b;
|
|
313
|
+
const button = (_b = (_a = this.dropdownItems[index]) === null || _a === void 0 ? void 0 : _a.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('button');
|
|
314
|
+
if (button) {
|
|
315
|
+
button.focus();
|
|
316
|
+
}
|
|
419
317
|
});
|
|
420
318
|
}
|
|
421
319
|
async componentDidLoad() {
|
|
320
|
+
if (!this.trigger) {
|
|
321
|
+
return;
|
|
322
|
+
}
|
|
422
323
|
this.changedTrigger(this.trigger);
|
|
423
324
|
}
|
|
424
325
|
async componentDidRender() {
|
|
425
326
|
await this.applyDropdownPosition();
|
|
426
|
-
|
|
427
|
-
? this.resolveElement(this.anchor)
|
|
428
|
-
: this.resolveElement(this.trigger));
|
|
327
|
+
await this.resolveAnchorElement();
|
|
429
328
|
}
|
|
430
329
|
isTriggerElement(element) {
|
|
431
330
|
const trigger = !!element.hasAttribute('data-ix-dropdown-trigger');
|
|
432
331
|
return trigger;
|
|
433
332
|
}
|
|
434
333
|
onDropdownClick(event) {
|
|
435
|
-
const target = dropdownController.pathIncludesTrigger(event.composedPath());
|
|
334
|
+
const target = dropdownController.dropdownController.pathIncludesTrigger(event.composedPath());
|
|
436
335
|
if (target) {
|
|
437
336
|
if (target !== this.triggerElement) {
|
|
438
337
|
event.preventDefault();
|
|
@@ -446,10 +345,10 @@ const Dropdown = class {
|
|
|
446
345
|
}
|
|
447
346
|
if (!event.defaultPrevented &&
|
|
448
347
|
(this.closeBehavior === 'inside' || this.closeBehavior === 'both')) {
|
|
449
|
-
dropdownController.dismissAll([this.getId()], this.ignoreRelatedSubmenu);
|
|
348
|
+
dropdownController.dropdownController.dismissAll([this.getId()], this.ignoreRelatedSubmenu);
|
|
450
349
|
return;
|
|
451
350
|
}
|
|
452
|
-
dropdownController.dismissOthers(this.getId());
|
|
351
|
+
dropdownController.dropdownController.dismissOthers(this.getId());
|
|
453
352
|
}
|
|
454
353
|
/**
|
|
455
354
|
* Update position of dropdown
|
|
@@ -458,7 +357,7 @@ const Dropdown = class {
|
|
|
458
357
|
this.applyDropdownPosition();
|
|
459
358
|
}
|
|
460
359
|
render() {
|
|
461
|
-
return (index.h(index.Host, { key: '
|
|
360
|
+
return (index.h(index.Host, { key: '94574fc6f58e0c00c7b8eed80c4b292e4cbf87e7', "data-ix-dropdown": this.localUId, class: {
|
|
462
361
|
'dropdown-menu': true,
|
|
463
362
|
show: this.show,
|
|
464
363
|
overflow: true,
|
|
@@ -466,7 +365,7 @@ const Dropdown = class {
|
|
|
466
365
|
margin: '0',
|
|
467
366
|
minWidth: '0px',
|
|
468
367
|
position: this.positioningStrategy,
|
|
469
|
-
}, role: "list", onClick: (event) => this.onDropdownClick(event) }, index.h("div", { key: '
|
|
368
|
+
}, role: "list", onClick: (event) => this.onDropdownClick(event) }, index.h("div", { key: '842c5e00d9ff0b676560d0dc7a9458410a373d43', style: { display: 'contents' } }, this.header && index.h("div", { key: '43d4162e095c67fe85d4e78926ac154b1ac2a845', class: "dropdown-header" }, this.header), this.show && index.h("slot", { key: 'f82884e6f6801afe404a937c43e02bd4fb50123a' }))));
|
|
470
369
|
}
|
|
471
370
|
get hostElement() { return index.getElement(this); }
|
|
472
371
|
static get watchers() { return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"ix-dropdown.entry.cjs.js","mappings":"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","names":["ArrowFocusController","flip","inline","shift","offset","autoUpdate","computePosition","h","Host"],"sources":["src/components/dropdown/dropdown-controller.ts","src/components/dropdown/dropdown.scss?tag=ix-dropdown&encapsulation=shadow","src/components/dropdown/dropdown.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { IxComponent } from '../utils/internal';\nexport type CloseBehavior = 'inside' | 'outside' | 'both' | boolean;\n\nexport interface DropdownInterface extends IxComponent {\n closeBehavior: CloseBehavior;\n discoverAllSubmenus: boolean;\n\n getAssignedSubmenuIds(): string[];\n getId(): string;\n\n discoverSubmenu(): void;\n\n isPresent(): boolean;\n\n willPresent?(): boolean;\n willDismiss?(): boolean;\n\n present(): void;\n dismiss(): void;\n}\n\nexport function hasDropdownItemWrapperImplemented(\n item: unknown\n): item is DropdownItemWrapper {\n return (\n item &&\n (item as DropdownItemWrapper).getDropdownItemElement !== undefined &&\n typeof (item as DropdownItemWrapper).getDropdownItemElement === 'function'\n );\n}\n\nexport interface DropdownItemWrapper {\n getDropdownItemElement(): Promise<HTMLIxDropdownItemElement>;\n}\n\ntype SubmenuIds = Record<string, string[]>;\n\nclass DropdownController {\n private dropdowns: Map<string, DropdownInterface> = new Map<\n string,\n DropdownInterface\n >();\n private submenuIds: SubmenuIds = {};\n\n private isWindowListenerActive = false;\n\n connected(dropdown: DropdownInterface) {\n if (!this.isWindowListenerActive) {\n this.addOverlayListeners();\n }\n this.dropdowns.set(dropdown.getId(), dropdown);\n\n if (dropdown.discoverAllSubmenus) {\n this.discoverSubmenus();\n }\n }\n\n disconnected(dropdown: DropdownInterface) {\n this.dropdowns.delete(dropdown.getId());\n }\n\n discoverSubmenus() {\n this.dropdowns.forEach((dropdown) => {\n dropdown.discoverSubmenu();\n });\n }\n\n present(dropdown: DropdownInterface) {\n if (!dropdown.isPresent() && dropdown.willPresent()) {\n this.submenuIds[dropdown.getId()] = dropdown.getAssignedSubmenuIds();\n dropdown.present();\n }\n }\n\n dismissChildren(uid: string) {\n const childIds = this.submenuIds[uid] || [];\n for (const id of childIds) {\n this.dismiss(this.dropdowns.get(id));\n }\n }\n\n dismiss(dropdown: DropdownInterface) {\n if (dropdown.isPresent() && dropdown.willDismiss()) {\n this.dismissChildren(dropdown.getId());\n dropdown.dismiss();\n delete this.submenuIds[dropdown.getId()];\n }\n }\n\n dismissAll(\n ignoreBehaviorForIds: string[] = [],\n ignoreRelatedDropdowns = false\n ) {\n this.dropdowns.forEach((dropdown) => {\n const preventClosing =\n dropdown.closeBehavior === 'inside' || dropdown.closeBehavior === false;\n\n const shouldIgnore = ignoreBehaviorForIds.includes(dropdown.getId());\n const path = this.buildComposedPath(dropdown.getId(), new Set<string>());\n\n if (ignoreBehaviorForIds.length > 0 && ignoreRelatedDropdowns) {\n let skipRelatedDropdown = false;\n\n ignoreBehaviorForIds.forEach((id) => {\n if (path.has(id)) {\n skipRelatedDropdown = true;\n return;\n }\n });\n\n if (!skipRelatedDropdown) {\n return;\n }\n }\n\n if (!shouldIgnore && preventClosing) {\n return;\n }\n\n this.dismiss(dropdown);\n });\n }\n\n dismissOthers(uid: string) {\n let path = this.buildComposedPath(uid, new Set<string>());\n path.add(uid);\n\n this.dropdowns.forEach((dropdown) => {\n if (\n dropdown.closeBehavior !== 'inside' &&\n dropdown.closeBehavior !== false &&\n !path.has(dropdown.getId())\n ) {\n this.dismiss(dropdown);\n }\n });\n }\n\n pathIncludesTrigger(eventTargets: EventTarget[]) {\n for (let eventTarget of eventTargets) {\n if (eventTarget instanceof HTMLElement) {\n if (eventTarget.hasAttribute('data-ix-dropdown-trigger')) {\n return eventTarget;\n }\n }\n }\n\n return;\n }\n\n private pathIncludesDropdown(eventTargets: EventTarget[]) {\n return !!eventTargets.find(\n (element: HTMLElement) => element.tagName === 'IX-DROPDOWN'\n );\n }\n\n private buildComposedPath(id: string, path: Set<string>): Set<string> {\n if (this.submenuIds[id]) {\n path.add(id);\n }\n\n for (const ruleKey of Object.keys(this.submenuIds)) {\n if (this.submenuIds[ruleKey].includes(id)) {\n this.buildComposedPath(ruleKey, path).forEach((key) => path.add(key));\n }\n }\n\n return path;\n }\n\n private addOverlayListeners() {\n this.isWindowListenerActive = true;\n\n window.addEventListener('click', (event: PointerEvent) => {\n const hasTrigger = this.pathIncludesTrigger(event.composedPath());\n const hasDropdown = this.pathIncludesDropdown(event.composedPath());\n\n if (!hasTrigger && !hasDropdown) {\n this.dismissAll();\n }\n });\n\n window.addEventListener('keydown', (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n this.dismissAll([...this.dropdowns.keys()]);\n }\n });\n }\n}\n\nexport const addDisposableEventListener = (\n element: Element | Window | Document,\n eventType: string,\n callback: EventListenerOrEventListenerObject\n) => {\n element.addEventListener(eventType, callback);\n\n return () => {\n element.removeEventListener(eventType, callback);\n };\n};\n\nexport const addDisposableEventListenerAsArray = (\n listener: {\n element: Element | Window | Document;\n eventType: string;\n callback: EventListenerOrEventListenerObject;\n }[]\n) => {\n const disposables = listener.map(({ callback, element, eventType }) =>\n addDisposableEventListener(element, eventType, callback)\n );\n\n return () => disposables.forEach((dispose) => dispose());\n};\n\nexport const dropdownController = new DropdownController();\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n\n@import 'legacy/mixins/fonts';\n@import 'mixins/text-truncation';\n@import 'mixins/shadow-dom/component';\n\n:host {\n background-color: var(--theme-color-2);\n border-radius: var(--theme-default-border-radius);\n @include ix-component;\n min-width: 0px;\n z-index: var(--theme-z-index-dropdown);\n box-shadow: var(--theme-shadow-4);\n\n padding: 0.25rem 0px;\n\n .dropdown-header {\n display: flex;\n align-items: center;\n height: $large-control-height;\n color: var(--theme-menu-header--color);\n padding: 0 $default-space;\n }\n}\n\n:host(.overflow) {\n max-height: 50vh;\n overflow-y: auto;\n}\n\n:host(:not(.show)) {\n display: none;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n autoUpdate,\n computePosition,\n ComputePositionConfig,\n flip,\n inline,\n offset,\n shift,\n} from '@floating-ui/dom';\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { ComponentInterface } from '@stencil/core/internal';\nimport { ArrowFocusController } from '../utils/focus';\nimport {\n addDisposableEventListener,\n CloseBehavior,\n dropdownController,\n DropdownInterface,\n hasDropdownItemWrapperImplemented,\n} from './dropdown-controller';\nimport { AlignedPlacement } from './placement';\n\nlet sequenceId = 0;\n\n@Component({\n tag: 'ix-dropdown',\n styleUrl: 'dropdown.scss',\n shadow: true,\n})\nexport class Dropdown implements ComponentInterface, DropdownInterface {\n @Element() hostElement!: HTMLIxDropdownElement;\n\n /**\n * Suppress the automatic placement of the dropdown.\n *\n * @since 2.0.0\n */\n @Prop() suppressAutomaticPlacement = false;\n\n /**\n * Show dropdown\n */\n @Prop({ mutable: true, reflect: true }) show = false;\n\n /**\n * Define an element that triggers the dropdown.\n * A trigger can either be a string that will be interpreted as id attribute or a DOM element.\n */\n @Prop() trigger: string | HTMLElement | Promise<HTMLElement>;\n\n /**\n * Define an anchor element\n */\n @Prop() anchor: string | HTMLElement;\n\n /**\n * Controls if the dropdown will be closed in response to a click event depending on the position of the event relative to the dropdown.\n * If the dropdown is a child of another one, it will be closed with the parent, regardless of its own close behavior.\n */\n @Prop() closeBehavior: CloseBehavior = 'both';\n\n /**\n * Placement of the dropdown\n */\n @Prop() placement: AlignedPlacement = 'bottom-start';\n\n /**\n * Position strategy\n */\n @Prop() positioningStrategy: 'absolute' | 'fixed' = 'fixed';\n\n /**\n * An optional header shown at the top of the dropdown\n */\n @Prop() header?: string;\n\n /**\n * Move dropdown along main axis of alignment\n *\n * @internal\n */\n @Prop() offset: {\n mainAxis?: number;\n crossAxis?: number;\n alignmentAxis?: number;\n };\n\n /**\n * @internal\n */\n @Prop() overwriteDropdownStyle: (delegate: {\n dropdownRef: HTMLElement;\n triggerRef?: HTMLElement;\n }) => Promise<Partial<CSSStyleDeclaration>>;\n\n /**\n * @internal\n * If initialisation of this dropdown is expected to be defered submenu discovery will have to be re-run globally by the controller.\n * This property indicates the need for that to the controller.\n */\n @Prop() discoverAllSubmenus = false;\n\n /** @internal */\n @Prop() ignoreRelatedSubmenu = false;\n\n /**\n * Fire event after visibility of dropdown has changed\n */\n @Event() showChanged: EventEmitter<boolean>;\n\n private autoUpdateCleanup: () => void = null;\n\n private triggerElement?: Element;\n private anchorElement?: Element;\n\n private dropdownRef: HTMLElement;\n private localUId = `dropdown-${sequenceId++}`;\n private assignedSubmenu: string[] = [];\n\n private arrowFocusController: ArrowFocusController;\n private focusDropdownItemBind = this.focusDropdownItem.bind(this);\n\n private itemObserver = new MutationObserver(() => {\n this.arrowFocusController.items = this.dropdownItems;\n });\n\n connectedCallback(): void {\n dropdownController.connected(this);\n\n if (this.trigger != undefined) {\n this.registerListener(this.trigger);\n }\n }\n\n @Listen('ix-assign-sub-menu')\n cacheSubmenuId(event: CustomEvent<string>) {\n event.stopImmediatePropagation();\n event.preventDefault();\n\n const { detail } = event;\n\n if (this.assignedSubmenu.indexOf(detail) === -1) {\n this.assignedSubmenu.push(detail);\n }\n }\n\n disconnectedCallback() {\n dropdownController.dismiss(this);\n dropdownController.disconnected(this);\n\n if (this.disposeClickListener) {\n this.disposeClickListener();\n }\n\n if (this.disposeKeyListener) {\n this.disposeKeyListener();\n }\n\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n }\n }\n\n getAssignedSubmenuIds() {\n return this.assignedSubmenu;\n }\n\n isPresent() {\n return this.show;\n }\n\n present() {\n this.show = true;\n }\n\n dismiss() {\n this.show = false;\n }\n\n getId() {\n return this.localUId;\n }\n\n willDismiss() {\n const { defaultPrevented } = this.showChanged.emit(false);\n return !defaultPrevented;\n }\n\n willPresent() {\n const { defaultPrevented } = this.showChanged.emit(true);\n return !defaultPrevented;\n }\n\n get dropdownItems() {\n return Array.from(this.hostElement.querySelectorAll('ix-dropdown-item'));\n }\n\n get slotElement() {\n return this.hostElement.shadowRoot.querySelector('slot');\n }\n\n private disposeClickListener?: () => void;\n private disposeKeyListener?: () => void;\n\n private addEventListenersFor() {\n this.disposeClickListener?.();\n this.disposeKeyListener?.();\n\n const toggleController = () => {\n if (!this.isPresent()) {\n dropdownController.present(this);\n } else {\n dropdownController.dismiss(this);\n }\n\n dropdownController.dismissOthers(this.getId());\n };\n\n this.disposeClickListener = addDisposableEventListener(\n this.triggerElement,\n 'click',\n (event: PointerEvent) => {\n if (!event.defaultPrevented) {\n toggleController();\n }\n }\n );\n\n this.triggerElement?.setAttribute(\n 'data-ix-dropdown-trigger',\n this.localUId\n );\n }\n\n /** @internal */\n @Method()\n async discoverSubmenu() {\n this.triggerElement?.dispatchEvent(\n new CustomEvent('ix-assign-sub-menu', {\n bubbles: true,\n composed: true,\n cancelable: true,\n detail: this.localUId,\n })\n );\n }\n\n private registerKeyListener() {\n if (!this.triggerElement) {\n return;\n }\n\n this.disposeKeyListener = addDisposableEventListener(\n this.triggerElement,\n 'keydown',\n (event: KeyboardEvent) => {\n if (event.key !== 'ArrowDown') {\n return;\n }\n\n if (document.activeElement !== this.triggerElement) {\n return;\n }\n\n dropdownController.present(this);\n\n setTimeout(() => {\n this.focusDropdownItem(0);\n });\n }\n );\n }\n\n private async registerListener(\n element: string | HTMLElement | Promise<HTMLElement>\n ) {\n this.triggerElement = await this.resolveElement(element);\n if (this.triggerElement) {\n this.addEventListenersFor();\n this.discoverSubmenu();\n }\n }\n\n private async resolveElement(\n element: string | HTMLElement | Promise<HTMLElement>\n ) {\n const el = await this.findElement(element);\n\n return this.checkForSubmenuAnchor(el);\n }\n\n private async checkForSubmenuAnchor(element: Element) {\n if (!element) {\n return null;\n }\n\n if (hasDropdownItemWrapperImplemented(element)) {\n const dropdownItem = await element.getDropdownItemElement();\n dropdownItem.isSubMenu = true;\n this.hostElement.style.zIndex = `var(--theme-z-index-dropdown)`;\n }\n\n if (element.tagName === 'IX-DROPDOWN-ITEM') {\n (element as HTMLIxDropdownItemElement).isSubMenu = true;\n this.hostElement.style.zIndex = `var(--theme-z-index-dropdown)`;\n }\n\n return element;\n }\n\n private findElement(\n element: string | HTMLElement | Promise<HTMLElement>\n ): Promise<Element> {\n if (element instanceof Promise) {\n return element;\n }\n\n if (typeof element === 'object') {\n return Promise.resolve(element);\n }\n\n if (typeof element != 'string') {\n return;\n }\n\n const selector = `#${element}`;\n return new Promise((resolve) => {\n if (document.querySelector(selector)) {\n return resolve(document.querySelector(selector));\n }\n\n const observer = new MutationObserver(() => {\n if (document.querySelector(selector)) {\n resolve(document.querySelector(selector));\n observer.disconnect();\n }\n });\n\n observer.observe(document.body, {\n childList: true,\n subtree: true,\n });\n });\n }\n\n @Watch('show')\n async changedShow(newShow: boolean) {\n if (newShow) {\n this.anchorElement = await (this.anchor\n ? this.resolveElement(this.anchor)\n : this.resolveElement(this.trigger));\n\n if (this.anchorElement) {\n this.applyDropdownPosition();\n }\n\n this.arrowFocusController = new ArrowFocusController(\n this.dropdownItems,\n this.dropdownRef,\n this.focusDropdownItemBind\n );\n\n this.itemObserver.observe(this.dropdownRef, {\n childList: true,\n subtree: true,\n });\n\n this.registerKeyListener();\n } else {\n this.arrowFocusController?.disconnect();\n this.itemObserver.disconnect();\n this.disposeKeyListener?.();\n }\n }\n\n @Watch('trigger')\n changedTrigger(newTriggerValue: string | HTMLElement | Promise<HTMLElement>) {\n this.registerListener(newTriggerValue);\n }\n\n private isAnchorSubmenu(): boolean {\n if (!hasDropdownItemWrapperImplemented(this.anchorElement)) {\n // Is no official dropdown-item, but check if any dropdown-item\n // is placed somewhere up the DOM\n return !!this.anchorElement?.closest('ix-dropdown-item');\n }\n\n return true;\n }\n\n private async applyDropdownPosition() {\n if (!this.show) {\n return;\n }\n if (!this.anchorElement) {\n return;\n }\n if (!this.dropdownRef) {\n return;\n }\n const isSubmenu = this.isAnchorSubmenu();\n\n let positionConfig: Partial<ComputePositionConfig> = {\n strategy: this.positioningStrategy,\n middleware: [],\n };\n\n if (!this.suppressAutomaticPlacement) {\n positionConfig.middleware.push(\n flip({ fallbackStrategy: 'initialPlacement' })\n );\n }\n\n positionConfig.placement = isSubmenu ? 'right-start' : this.placement;\n\n positionConfig.middleware = [\n ...positionConfig.middleware,\n inline(),\n shift(),\n ];\n\n if (this.offset) {\n positionConfig.middleware.push(offset(this.offset));\n }\n\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n this.autoUpdateCleanup = null;\n }\n\n this.autoUpdateCleanup = autoUpdate(\n this.anchorElement,\n this.dropdownRef,\n async () => {\n const computeResponse = await computePosition(\n this.anchorElement,\n this.dropdownRef,\n positionConfig\n );\n Object.assign(this.dropdownRef.style, {\n top: '0',\n left: '0',\n transform: `translate(${Math.round(computeResponse.x)}px,${Math.round(\n computeResponse.y\n )}px)`,\n });\n if (this.overwriteDropdownStyle) {\n const overwriteStyle = await this.overwriteDropdownStyle({\n dropdownRef: this.dropdownRef,\n triggerRef: this.triggerElement as HTMLElement,\n });\n\n Object.assign(this.dropdownRef.style, overwriteStyle);\n }\n },\n {\n ancestorResize: true,\n ancestorScroll: true,\n elementResize: true,\n }\n );\n }\n\n private focusDropdownItem(index: number) {\n requestAnimationFrame(() => {\n this.dropdownItems[index]?.shadowRoot.querySelector('button').focus();\n });\n }\n\n async componentDidLoad() {\n this.changedTrigger(this.trigger);\n }\n\n async componentDidRender() {\n await this.applyDropdownPosition();\n this.anchorElement = await (this.anchor\n ? this.resolveElement(this.anchor)\n : this.resolveElement(this.trigger));\n }\n\n private isTriggerElement(element: HTMLElement) {\n const trigger = !!element.hasAttribute('data-ix-dropdown-trigger');\n\n return trigger;\n }\n\n private onDropdownClick(event: PointerEvent) {\n const target = dropdownController.pathIncludesTrigger(event.composedPath());\n if (target) {\n if (target !== this.triggerElement) {\n event.preventDefault();\n }\n\n if (this.isTriggerElement(target)) {\n if (this.closeBehavior === 'outside') {\n event.preventDefault();\n }\n return;\n }\n }\n\n if (\n !event.defaultPrevented &&\n (this.closeBehavior === 'inside' || this.closeBehavior === 'both')\n ) {\n dropdownController.dismissAll([this.getId()], this.ignoreRelatedSubmenu);\n return;\n }\n\n dropdownController.dismissOthers(this.getId());\n }\n\n /**\n * Update position of dropdown\n */\n @Method()\n async updatePosition() {\n this.applyDropdownPosition();\n }\n\n render() {\n return (\n <Host\n data-ix-dropdown={this.localUId}\n ref={(ref) => (this.dropdownRef = ref)}\n class={{\n 'dropdown-menu': true,\n show: this.show,\n overflow: true,\n }}\n style={{\n margin: '0',\n minWidth: '0px',\n position: this.positioningStrategy,\n }}\n role=\"list\"\n onClick={(event: PointerEvent) => this.onDropdownClick(event)}\n >\n <div style={{ display: 'contents' }}>\n {this.header && <div class=\"dropdown-header\">{this.header}</div>}\n {this.show && <slot></slot>}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"ix-dropdown.entry.cjs.js","mappings":"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","names":["dropdownController","addDisposableEventListener","hasDropdownItemWrapperImplemented","ArrowFocusController","flip","inline","shift","offset","autoUpdate","computePosition","h","Host"],"sources":["src/components/dropdown/dropdown.scss?tag=ix-dropdown&encapsulation=shadow","src/components/dropdown/dropdown.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\n@import 'legacy/mixins/fonts';\n@import 'mixins/text-truncation';\n@import 'mixins/shadow-dom/component';\n\n:host {\n background-color: var(--theme-color-2);\n border-radius: var(--theme-default-border-radius);\n @include ix-component;\n min-width: 0px;\n z-index: var(--theme-z-index-dropdown);\n box-shadow: var(--theme-shadow-4);\n\n padding: 0.25rem 0px;\n\n .dropdown-header {\n display: flex;\n align-items: center;\n height: $large-control-height;\n color: var(--theme-menu-header--color);\n padding: 0 $default-space;\n }\n}\n\n:host(.overflow) {\n max-height: 50vh;\n overflow-y: auto;\n}\n\n:host(:not(.show)) {\n display: none;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n autoUpdate,\n computePosition,\n ComputePositionConfig,\n flip,\n inline,\n offset,\n shift,\n} from '@floating-ui/dom';\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { ComponentInterface } from '@stencil/core/internal';\nimport { ArrowFocusController } from '../utils/focus';\nimport {\n CloseBehavior,\n dropdownController,\n DropdownInterface,\n hasDropdownItemWrapperImplemented,\n} from './dropdown-controller';\nimport { AlignedPlacement } from './placement';\nimport {\n addDisposableEventListener,\n DisposableEventListener,\n} from '../utils/disposable-event-listener';\nimport { ElementReference } from 'src/components/utils/element-reference';\n\nlet sequenceId = 0;\n\n@Component({\n tag: 'ix-dropdown',\n styleUrl: 'dropdown.scss',\n shadow: true,\n})\nexport class Dropdown implements ComponentInterface, DropdownInterface {\n @Element() hostElement!: HTMLIxDropdownElement;\n\n /**\n * Suppress the automatic placement of the dropdown.\n *\n * @since 2.0.0\n */\n @Prop() suppressAutomaticPlacement = false;\n\n /**\n * Show dropdown\n */\n @Prop({ mutable: true, reflect: true }) show = false;\n\n /**\n * Define an element that triggers the dropdown.\n * A trigger can either be a string that will be interpreted as id attribute or a DOM element.\n */\n @Prop() trigger?: ElementReference;\n\n /**\n * Define an anchor element\n */\n @Prop() anchor?: ElementReference;\n\n /**\n * Controls if the dropdown will be closed in response to a click event depending on the position of the event relative to the dropdown.\n * If the dropdown is a child of another one, it will be closed with the parent, regardless of its own close behavior.\n */\n @Prop() closeBehavior: CloseBehavior = 'both';\n\n /**\n * Placement of the dropdown\n */\n @Prop() placement: AlignedPlacement = 'bottom-start';\n\n /**\n * Position strategy\n */\n @Prop() positioningStrategy: 'absolute' | 'fixed' = 'fixed';\n\n /**\n * An optional header shown at the top of the dropdown\n */\n @Prop() header?: string;\n\n /**\n * Move dropdown along main axis of alignment\n *\n * @internal\n */\n @Prop() offset?: {\n mainAxis?: number;\n crossAxis?: number;\n alignmentAxis?: number;\n };\n\n /**\n * @internal\n */\n @Prop() overwriteDropdownStyle?: (delegate: {\n dropdownRef: HTMLElement;\n triggerRef?: HTMLElement;\n }) => Promise<Partial<CSSStyleDeclaration>>;\n\n /**\n * @internal\n * If initialisation of this dropdown is expected to be defered submenu discovery will have to be re-run globally by the controller.\n * This property indicates the need for that to the controller.\n */\n @Prop() discoverAllSubmenus = false;\n\n /** @internal */\n @Prop() ignoreRelatedSubmenu = false;\n\n /**\n * Fire event after visibility of dropdown has changed\n */\n @Event() showChanged!: EventEmitter<boolean>;\n\n private autoUpdateCleanup?: () => void;\n\n private triggerElement?: Element;\n private anchorElement?: Element;\n\n private localUId = `dropdown-${sequenceId++}`;\n private assignedSubmenu: string[] = [];\n\n private arrowFocusController?: ArrowFocusController;\n\n private itemObserver? = new MutationObserver(() => {\n if (this.arrowFocusController) {\n this.arrowFocusController.items = this.dropdownItems;\n }\n });\n\n connectedCallback(): void {\n dropdownController.connected(this);\n\n if (this.trigger != undefined) {\n this.registerListener(this.trigger);\n }\n }\n\n @Listen('ix-assign-sub-menu')\n cacheSubmenuId(event: CustomEvent<string>) {\n event.stopImmediatePropagation();\n event.preventDefault();\n\n const { detail } = event;\n\n if (this.assignedSubmenu.indexOf(detail) === -1) {\n this.assignedSubmenu.push(detail);\n }\n }\n\n disconnectedCallback() {\n dropdownController.dismiss(this);\n dropdownController.disconnected(this);\n\n if (this.arrowFocusController) {\n this.arrowFocusController?.disconnect();\n this.arrowFocusController = undefined;\n }\n\n if (this.itemObserver) {\n this.itemObserver.disconnect();\n this.itemObserver = undefined;\n }\n\n if (this.disposeClickListener) {\n this.disposeClickListener();\n this.disposeClickListener = undefined;\n }\n\n if (this.disposeKeyListener) {\n this.disposeKeyListener();\n this.disposeKeyListener = undefined;\n }\n\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n this.autoUpdateCleanup = undefined;\n }\n }\n\n getAssignedSubmenuIds() {\n return this.assignedSubmenu;\n }\n\n isPresent() {\n return this.show;\n }\n\n present() {\n this.show = true;\n }\n\n dismiss() {\n this.show = false;\n }\n\n getId() {\n return this.localUId;\n }\n\n willDismiss() {\n const { defaultPrevented } = this.showChanged.emit(false);\n return !defaultPrevented;\n }\n\n willPresent() {\n const { defaultPrevented } = this.showChanged.emit(true);\n return !defaultPrevented;\n }\n\n get dropdownItems() {\n return Array.from(this.hostElement.querySelectorAll('ix-dropdown-item'));\n }\n\n get slotElement() {\n return this.hostElement.shadowRoot!.querySelector('slot');\n }\n\n private disposeClickListener?: DisposableEventListener;\n private disposeKeyListener?: DisposableEventListener;\n\n private addEventListenersFor() {\n this.disposeClickListener?.();\n this.disposeKeyListener?.();\n\n const toggleController = () => {\n if (!this.isPresent()) {\n dropdownController.present(this);\n } else {\n dropdownController.dismiss(this);\n }\n\n dropdownController.dismissOthers(this.getId());\n };\n\n if (!this.triggerElement) {\n return;\n }\n\n this.disposeClickListener = addDisposableEventListener(\n this.triggerElement,\n 'click',\n (event: Event) => {\n if (!event.defaultPrevented) {\n toggleController();\n }\n }\n );\n\n this.triggerElement?.setAttribute(\n 'data-ix-dropdown-trigger',\n this.localUId\n );\n }\n\n /** @internal */\n @Method()\n async discoverSubmenu() {\n this.triggerElement?.dispatchEvent(\n new CustomEvent('ix-assign-sub-menu', {\n bubbles: true,\n composed: true,\n cancelable: true,\n detail: this.localUId,\n })\n );\n }\n\n private registerKeyListener() {\n if (!this.triggerElement) {\n return;\n }\n\n this.disposeKeyListener = addDisposableEventListener(\n this.triggerElement,\n 'keydown',\n ((event: KeyboardEvent) => {\n if (event.key !== 'ArrowDown') {\n return;\n }\n\n if (document.activeElement !== this.triggerElement) {\n return;\n }\n\n dropdownController.present(this);\n\n setTimeout(() => {\n this.focusDropdownItem(0);\n });\n }) as EventListener\n );\n }\n\n private async registerListener(element: ElementReference) {\n this.triggerElement = await this.resolveElement(element);\n if (this.triggerElement) {\n this.addEventListenersFor();\n this.discoverSubmenu();\n }\n }\n\n private async resolveElement(element: ElementReference) {\n const el = await this.findElement(element);\n\n return this.checkForSubmenuAnchor(el);\n }\n\n private async checkForSubmenuAnchor(element?: Element) {\n if (!element) {\n return undefined;\n }\n\n if (hasDropdownItemWrapperImplemented(element)) {\n const dropdownItem = await element.getDropdownItemElement();\n dropdownItem.isSubMenu = true;\n this.hostElement.style.zIndex = `var(--theme-z-index-dropdown)`;\n }\n\n if (element.tagName === 'IX-DROPDOWN-ITEM') {\n (element as HTMLIxDropdownItemElement).isSubMenu = true;\n this.hostElement.style.zIndex = `var(--theme-z-index-dropdown)`;\n }\n\n return element;\n }\n\n private findElement(element: ElementReference): Promise<Element | undefined> {\n if (element instanceof Promise) {\n return element;\n }\n\n if (typeof element === 'object') {\n return Promise.resolve(element);\n }\n\n if (typeof element != 'string') {\n return Promise.resolve(undefined);\n }\n\n const selector = `#${element}`;\n return new Promise((resolve) => {\n const el = document.querySelector(selector);\n if (el !== null) {\n return resolve(el);\n }\n\n const observer = new MutationObserver(() => {\n const el = document.querySelector(selector);\n if (el) {\n resolve(el);\n observer.disconnect();\n }\n });\n\n observer.observe(document.body, {\n childList: true,\n subtree: true,\n });\n });\n }\n\n private async resolveAnchorElement() {\n if (this.anchor) {\n this.anchorElement = await this.resolveElement(this.anchor);\n } else if (this.trigger) {\n this.anchorElement = await this.resolveElement(this.trigger);\n }\n }\n\n @Watch('show')\n async changedShow(newShow: boolean) {\n if (newShow) {\n await this.resolveAnchorElement();\n\n if (this.anchorElement) {\n this.applyDropdownPosition();\n }\n\n this.arrowFocusController = new ArrowFocusController(\n this.dropdownItems,\n this.hostElement,\n (index) => this.focusDropdownItem(index)\n );\n\n this.itemObserver?.observe(this.hostElement, {\n childList: true,\n subtree: true,\n });\n\n this.registerKeyListener();\n } else {\n this.destroyAutoUpdate();\n this.arrowFocusController?.disconnect();\n this.itemObserver?.disconnect();\n this.disposeKeyListener?.();\n }\n }\n\n @Watch('trigger')\n changedTrigger(newTriggerValue: ElementReference) {\n this.registerListener(newTriggerValue);\n }\n\n private destroyAutoUpdate() {\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n this.autoUpdateCleanup = undefined;\n }\n }\n\n private isAnchorSubmenu(): boolean {\n if (!hasDropdownItemWrapperImplemented(this.anchorElement)) {\n // Is no official dropdown-item, but check if any dropdown-item\n // is placed somewhere up the DOM\n return !!this.anchorElement?.closest('ix-dropdown-item');\n }\n\n return true;\n }\n\n private async applyDropdownPosition() {\n if (!this.show) {\n return;\n }\n if (!this.anchorElement) {\n return;\n }\n const isSubmenu = this.isAnchorSubmenu();\n\n let positionConfig: Partial<ComputePositionConfig> = {\n strategy: this.positioningStrategy,\n middleware: [],\n };\n\n if (!this.suppressAutomaticPlacement) {\n positionConfig.middleware?.push(\n flip({ fallbackStrategy: 'initialPlacement' })\n );\n }\n\n positionConfig.placement = isSubmenu ? 'right-start' : this.placement;\n\n positionConfig.middleware = [\n ...(positionConfig.middleware?.filter(Boolean) || []),\n inline(),\n shift(),\n ];\n\n if (this.offset) {\n positionConfig.middleware.push(offset(this.offset));\n }\n\n this.destroyAutoUpdate();\n\n if (!this.anchorElement) {\n return;\n }\n\n this.autoUpdateCleanup = autoUpdate(\n this.anchorElement,\n this.hostElement,\n async () => {\n if (this.anchorElement) {\n const computeResponse = await computePosition(\n this.anchorElement,\n this.hostElement,\n positionConfig\n );\n Object.assign(this.hostElement.style, {\n top: '0',\n left: '0',\n transform: `translate(${Math.round(\n computeResponse.x\n )}px,${Math.round(computeResponse.y)}px)`,\n });\n }\n if (this.overwriteDropdownStyle) {\n const overwriteStyle = await this.overwriteDropdownStyle({\n dropdownRef: this.hostElement,\n triggerRef: this.triggerElement as HTMLElement,\n });\n\n Object.assign(this.hostElement.style, overwriteStyle);\n }\n },\n {\n ancestorResize: true,\n ancestorScroll: true,\n elementResize: true,\n }\n );\n }\n\n private focusDropdownItem(index: number) {\n requestAnimationFrame(() => {\n const button =\n this.dropdownItems[index]?.shadowRoot?.querySelector('button');\n\n if (button) {\n button.focus();\n }\n });\n }\n\n async componentDidLoad() {\n if (!this.trigger) {\n return;\n }\n\n this.changedTrigger(this.trigger);\n }\n\n async componentDidRender() {\n await this.applyDropdownPosition();\n await this.resolveAnchorElement();\n }\n\n private isTriggerElement(element: HTMLElement) {\n const trigger = !!element.hasAttribute('data-ix-dropdown-trigger');\n\n return trigger;\n }\n\n private onDropdownClick(event: PointerEvent) {\n const target = dropdownController.pathIncludesTrigger(event.composedPath());\n if (target) {\n if (target !== this.triggerElement) {\n event.preventDefault();\n }\n\n if (this.isTriggerElement(target)) {\n if (this.closeBehavior === 'outside') {\n event.preventDefault();\n }\n return;\n }\n }\n\n if (\n !event.defaultPrevented &&\n (this.closeBehavior === 'inside' || this.closeBehavior === 'both')\n ) {\n dropdownController.dismissAll([this.getId()], this.ignoreRelatedSubmenu);\n return;\n }\n\n dropdownController.dismissOthers(this.getId());\n }\n\n /**\n * Update position of dropdown\n */\n @Method()\n async updatePosition() {\n this.applyDropdownPosition();\n }\n\n render() {\n return (\n <Host\n data-ix-dropdown={this.localUId}\n class={{\n 'dropdown-menu': true,\n show: this.show,\n overflow: true,\n }}\n style={{\n margin: '0',\n minWidth: '0px',\n position: this.positioningStrategy,\n }}\n role=\"list\"\n onClick={(event: PointerEvent) => this.onDropdownClick(event)}\n >\n <div style={{ display: 'contents' }}>\n {this.header && <div class=\"dropdown-header\">{this.header}</div>}\n {this.show && <slot></slot>}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -18,7 +18,7 @@ const EmptyState = class {
|
|
|
18
18
|
this.action = undefined;
|
|
19
19
|
}
|
|
20
20
|
render() {
|
|
21
|
-
return (index.h(index.Host, { key: '
|
|
21
|
+
return (index.h(index.Host, { key: '5014d3a63674f129788ed89432e32be6e9170f22', class: `emptyState emptyState--${this.layout}` }, this.icon && (index.h("div", { key: '6f8bb51723e0737cc1a9b6584196271eac292f0a', class: "emptyState__icon" }, index.h("ix-icon", { key: '41dd56f4b855ccba7ef31feffa7cb975248d367c', name: this.icon, size: this.layout === 'large' ? '32' : '32', color: "color-soft-text" }))), index.h("div", { key: '2c9a5360aa0e9490b19fedea273edef6e7053049', class: "emptyState__content" }, index.h("div", { key: 'cd84a5019558ed72f772499c68f5eeec5ed38102', class: "content__label" }, index.h("ix-typography", { key: 'f81914e44aa72f872f570c36d18464f678c78c24', format: this.layout === 'large' ? 'h3' : 'body' }, this.header), this.subHeader && (index.h("div", { key: '0784c6900080bdace8603b7eabc5a0306833f738', class: "label__subHeader" }, this.subHeader))), this.action && (index.h("div", { key: '5db66133f73860424c8d4146ca92a6f066012373', class: "content__action" }, index.h("ix-button", { key: '73b8faa30fbaa486257a5f841c42e5a9872a449f', onClick: () => this.actionClick.emit() }, this.action))))));
|
|
22
22
|
}
|
|
23
23
|
};
|
|
24
24
|
EmptyState.style = IxEmptyStateStyle0;
|