@siemens/ix 4.2.0 → 4.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/READMEOSS.html +1 -1
- package/components/index.js +26 -2
- package/components/index.js.map +1 -1
- package/components/ix-action-card.js +9 -4
- package/components/ix-action-card.js.map +1 -1
- package/components/ix-application-header.js +24 -16
- package/components/ix-application-header.js.map +1 -1
- package/components/ix-application-switch-modal.js +6 -6
- package/components/ix-avatar.js +1 -1
- package/components/ix-blind.js +1 -1
- package/components/ix-breadcrumb-item.js +1 -1
- package/components/ix-breadcrumb.js +16 -8
- package/components/ix-breadcrumb.js.map +1 -1
- package/components/ix-button.js +1 -1
- package/components/ix-card-list.js +5 -5
- package/components/ix-card.js +1 -1
- package/components/ix-category-filter.js +20 -12
- package/components/ix-category-filter.js.map +1 -1
- package/components/ix-checkbox-group.js +4 -4
- package/components/ix-checkbox.js +1 -1
- package/components/ix-chip.js +4 -4
- package/components/ix-content-header.js +3 -3
- package/components/ix-custom-field.js +4 -4
- package/components/ix-date-dropdown.js +21 -13
- package/components/ix-date-dropdown.js.map +1 -1
- package/components/ix-date-input.js +21 -13
- package/components/ix-date-input.js.map +1 -1
- package/components/ix-date-picker.js +1 -1
- package/components/ix-datetime-picker.js +9 -9
- package/components/ix-drawer.js +8 -8
- package/components/ix-drawer.js.map +1 -1
- package/components/ix-dropdown-button.js +20 -8
- package/components/ix-dropdown-button.js.map +1 -1
- package/components/ix-dropdown-header.js +2 -2
- package/components/ix-dropdown-item.js +1 -1
- package/components/ix-dropdown-quick-actions.js +1 -1
- package/components/ix-dropdown.js +1 -1
- package/components/ix-empty-state.js +4 -4
- package/components/ix-event-list-item.js +4 -4
- package/components/ix-event-list.js +2 -2
- package/components/ix-expanding-search.js +6 -6
- package/components/ix-field-label.js +1 -1
- package/components/ix-field-wrapper.js +1 -1
- package/components/ix-filter-chip.js +1 -1
- package/components/ix-flip-tile-content.js +1 -1
- package/components/ix-flip-tile.js +5 -5
- package/components/ix-group-context-menu.js +1 -1
- package/components/ix-group.js +11 -11
- package/components/ix-helper-text.js +2 -2
- package/components/ix-icon-button.js +1 -1
- package/components/ix-icon-toggle-button.js +3 -3
- package/components/ix-input-group.js +1 -1
- package/components/ix-input.js +10 -10
- 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-layout-auto.js +1 -1
- package/components/ix-layout-grid.js +1 -1
- package/components/ix-link-button.js +3 -3
- package/components/ix-menu-about-item.js +1 -1
- package/components/ix-menu-about-news.js +8 -8
- package/components/ix-menu-about.js +11 -6
- package/components/ix-menu-about.js.map +1 -1
- package/components/ix-menu-avatar-item.js +1 -1
- package/components/ix-menu-avatar.js +30 -10
- package/components/ix-menu-avatar.js.map +1 -1
- package/components/ix-menu-category.js +11 -11
- package/components/ix-menu-category.js.map +1 -1
- package/components/ix-menu-expand-icon.js +1 -1
- package/components/ix-menu-item.js +1 -1
- package/components/ix-menu-settings-item.js +1 -1
- package/components/ix-menu-settings.js +1 -1
- package/components/ix-menu.js +51 -21
- package/components/ix-menu.js.map +1 -1
- package/components/ix-message-bar.js +4 -4
- package/components/ix-message-bar.js.map +1 -1
- package/components/ix-modal-content.js +1 -1
- package/components/ix-modal-footer.js +1 -1
- package/components/ix-modal-header.js +1 -1
- package/components/ix-modal-loading.js +2 -2
- package/components/ix-modal.js +5 -7
- package/components/ix-modal.js.map +1 -1
- package/components/ix-number-input.js +11 -11
- package/components/ix-pagination.js +15 -15
- package/components/ix-pane-layout.js +2 -1
- package/components/ix-pane-layout.js.map +1 -1
- package/components/ix-pane.js +9 -9
- package/components/ix-pill.js +6 -6
- package/components/ix-progress-indicator.js +5 -5
- package/components/ix-push-card.js +9 -4
- package/components/ix-push-card.js.map +1 -1
- package/components/ix-radio-group.js +6 -6
- package/components/ix-radio.js +4 -4
- package/components/ix-row.js +1 -1
- package/components/ix-select-item.js +1 -1
- package/components/ix-select.js +1 -1
- package/components/ix-slider.js +111 -30
- package/components/ix-slider.js.map +1 -1
- package/components/ix-spinner.js +1 -1
- package/components/ix-split-button.js +13 -5
- package/components/ix-split-button.js.map +1 -1
- package/components/ix-tab-item.js +1 -1
- package/components/ix-tabs.js +1 -1
- package/components/ix-textarea.js +6 -6
- package/components/ix-tile.js +4 -4
- package/components/ix-time-input.js +21 -13
- package/components/ix-time-input.js.map +1 -1
- package/components/ix-time-picker.js +1 -1
- package/components/ix-toast-container.js +8 -7
- package/components/ix-toast-container.js.map +1 -1
- package/components/ix-toast.js +1 -1
- package/components/ix-toggle-button.js +4 -4
- package/components/ix-toggle-button.js.map +1 -1
- package/components/ix-toggle.js +4 -4
- package/components/ix-tooltip.js +1 -1
- package/components/ix-tree-item.js +1 -1
- package/components/ix-tree.js +34 -5
- package/components/ix-tree.js.map +1 -1
- package/components/ix-typography.js +1 -1
- package/components/ix-upload.js +5 -5
- package/components/ix-validation-tooltip.js +2 -2
- package/components/ix-workflow-step.js +3 -3
- package/components/ix-workflow-steps.js +1 -1
- package/components/{p-BLeWaHpy.js → p-0gGE-dfR.js} +12 -6
- package/components/p-0gGE-dfR.js.map +1 -0
- package/components/{p-Dy6xvLn4.js → p-B-O8iFhq.js} +4 -4
- package/components/{p-Dy6xvLn4.js.map → p-B-O8iFhq.js.map} +1 -1
- package/components/{p-10zMtvCF.js → p-B09CzVld.js} +133 -52
- package/components/p-B09CzVld.js.map +1 -0
- package/components/{p-DSTHZygb.js → p-BB98pUYU.js} +14 -16
- package/components/p-BB98pUYU.js.map +1 -0
- package/components/{p-BOQ00Fbs.js → p-BElY9X3b.js} +35 -25
- package/components/p-BElY9X3b.js.map +1 -0
- package/components/p-BEuV0Xpe.js +28 -0
- package/components/p-BEuV0Xpe.js.map +1 -0
- package/components/{p-B1p0kpQJ.js → p-BHD2m8UF.js} +16 -8
- package/components/p-BHD2m8UF.js.map +1 -0
- package/components/{p-ColBHyXN.js → p-BJ5sreCN.js} +5 -5
- package/components/{p-ColBHyXN.js.map → p-BJ5sreCN.js.map} +1 -1
- package/components/{p-Bk0vKwmt.js → p-BRg281yQ.js} +4 -4
- package/components/{p-Bk0vKwmt.js.map → p-BRg281yQ.js.map} +1 -1
- package/components/{p-DlVaL0Yi.js → p-BUS4kPN3.js} +13 -8
- package/components/p-BUS4kPN3.js.map +1 -0
- package/components/{p-C4KxNeD2.js → p-Bq5oov4A.js} +3 -3
- package/components/{p-C4KxNeD2.js.map → p-Bq5oov4A.js.map} +1 -1
- package/components/{p-C6_1qmP4.js → p-C5dktNss.js} +4 -4
- package/components/{p-C6_1qmP4.js.map → p-C5dktNss.js.map} +1 -1
- package/components/{p-DC9anobw.js → p-CGqmQsSj.js} +6 -6
- package/components/{p-DC9anobw.js.map → p-CGqmQsSj.js.map} +1 -1
- package/components/{p-7E7AMiQV.js → p-CPnxCsJH.js} +5 -5
- package/components/{p-7E7AMiQV.js.map → p-CPnxCsJH.js.map} +1 -1
- package/components/{p-PpLLlogo.js → p-CUdJN6-t.js} +16 -14
- package/components/p-CUdJN6-t.js.map +1 -0
- package/components/{p-CjDPpSJX.js → p-CtnJ26Ng.js} +19 -11
- package/components/p-CtnJ26Ng.js.map +1 -0
- package/components/{p-B006bhbX.js → p-CwfaZReW.js} +3 -3
- package/components/{p-B006bhbX.js.map → p-CwfaZReW.js.map} +1 -1
- package/components/{p-BIg1TSrD.js → p-D-nChuuk.js} +7 -7
- package/components/{p-BIg1TSrD.js.map → p-D-nChuuk.js.map} +1 -1
- package/components/{p-MuPiaYr1.js → p-D0T_1WDk.js} +32 -2
- package/components/p-D0T_1WDk.js.map +1 -0
- package/components/{p-Bye33cYU.js → p-D2BfqYng.js} +7 -7
- package/components/{p-Bye33cYU.js.map → p-D2BfqYng.js.map} +1 -1
- package/components/{p-DXFN8JXp.js → p-D8qc3Tjo.js} +4 -4
- package/components/{p-DXFN8JXp.js.map → p-D8qc3Tjo.js.map} +1 -1
- package/components/{p-BBwXlKhE.js → p-DBeR3Qpr.js} +3 -3
- package/components/{p-BBwXlKhE.js.map → p-DBeR3Qpr.js.map} +1 -1
- package/components/{p-CvD2yWeJ.js → p-DFkWFa-O.js} +4 -4
- package/components/{p-CvD2yWeJ.js.map → p-DFkWFa-O.js.map} +1 -1
- package/components/{p-BGdI6-nv.js → p-DTobrL4g.js} +3 -3
- package/components/{p-BGdI6-nv.js.map → p-DTobrL4g.js.map} +1 -1
- package/components/{p-BmMUyJRQ.js → p-DV7UGci6.js} +10 -10
- package/components/{p-BmMUyJRQ.js.map → p-DV7UGci6.js.map} +1 -1
- package/components/{p-CV_EVAOW.js → p-DZkGd7CV.js} +10 -4
- package/components/p-DZkGd7CV.js.map +1 -0
- package/components/{p-BI7B-PUA.js → p-Djmkeupf.js} +105 -38
- package/components/p-Djmkeupf.js.map +1 -0
- package/components/{p-1pd_0dhF.js → p-Ds0M0G_e.js} +3 -3
- package/components/{p-1pd_0dhF.js.map → p-Ds0M0G_e.js.map} +1 -1
- package/components/{p-BR5ayBuu.js → p-DtGtkvRX.js} +4 -4
- package/components/{p-BR5ayBuu.js.map → p-DtGtkvRX.js.map} +1 -1
- package/components/{p-Dp03DeD0.js → p-Dwnv8fgy.js} +5 -5
- package/components/{p-Dp03DeD0.js.map → p-Dwnv8fgy.js.map} +1 -1
- package/components/{p-BQk7HpA-.js → p-U0nRzcrj.js} +3 -3
- package/components/{p-BQk7HpA-.js.map → p-U0nRzcrj.js.map} +1 -1
- package/components/{p-BiqdnsgA.js → p-jwHZJhcU.js} +63 -58
- package/components/p-jwHZJhcU.js.map +1 -0
- package/components/{p-hwPzPVf8.js → p-rFxiFp44.js} +12 -6
- package/components/p-rFxiFp44.js.map +1 -0
- package/components/{p-ClQxnZ3d.js → p-u9QR9x88.js} +6 -6
- package/components/{p-ClQxnZ3d.js.map → p-u9QR9x88.js.map} +1 -1
- package/components/{p-BEDohapR.js → p-uIFuspHx.js} +8 -5
- package/components/p-uIFuspHx.js.map +1 -0
- package/dist/cjs/{base-button-CjsUotrL.js → base-button-DVckB2S-.js} +10 -4
- package/dist/cjs/base-button-DVckB2S-.js.map +1 -0
- package/dist/cjs/{base-icon-button-D3kZg-im.js → base-icon-button-BMxa9fiN.js} +3 -3
- package/dist/cjs/{base-icon-button-D3kZg-im.js.map → base-icon-button-BMxa9fiN.js.map} +1 -1
- package/dist/cjs/index-C8Xo8L1k.js +4 -4
- package/dist/cjs/{index-B7AMgiIZ.js → index-CgfiBgkm.js} +3 -3
- package/dist/cjs/{index-B7AMgiIZ.js.map → index-CgfiBgkm.js.map} +1 -1
- package/dist/cjs/index.cjs.js +25 -1
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/ix-action-card.cjs.entry.js +5 -1
- package/dist/cjs/ix-action-card.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-application-header.cjs.entry.js +19 -12
- package/dist/cjs/ix-application-header.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-application-switch-modal.cjs.entry.js +1 -1
- package/dist/cjs/ix-avatar_2.cjs.entry.js +2 -2
- package/dist/cjs/ix-breadcrumb-item.cjs.entry.js +1 -1
- package/dist/cjs/ix-breadcrumb.cjs.entry.js +11 -4
- package/dist/cjs/ix-breadcrumb.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-button.cjs.entry.js +1 -1
- package/dist/cjs/ix-card.ix-card-content.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-card_2.cjs.entry.js +8 -3
- package/dist/cjs/ix-category-filter.cjs.entry.js +15 -8
- package/dist/cjs/ix-category-filter.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-col_4.cjs.entry.js +15 -8
- package/dist/cjs/ix-date-dropdown.cjs.entry.js +12 -5
- package/dist/cjs/ix-date-dropdown.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-date-input.cjs.entry.js +11 -4
- package/dist/cjs/ix-date-input.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-drawer.cjs.entry.js +6 -6
- package/dist/cjs/ix-drawer.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-dropdown-button.cjs.entry.js +14 -3
- package/dist/cjs/ix-dropdown-button.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-dropdown-header.cjs.entry.js +1 -1
- package/dist/cjs/ix-dropdown-item.cjs.entry.js +9 -3
- package/dist/cjs/ix-dropdown-item.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js +1 -1
- package/dist/cjs/ix-dropdown.cjs.entry.js +103 -37
- package/dist/cjs/ix-dropdown.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-empty-state.cjs.entry.js +1 -1
- package/dist/cjs/ix-event-list-item.cjs.entry.js +4 -4
- 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-field-label.ix-field-wrapper.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-field-label_2.cjs.entry.js +14 -7
- 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 +3 -3
- package/dist/cjs/ix-group-context-menu_2.cjs.entry.js +1 -1
- package/dist/cjs/ix-group.cjs.entry.js +8 -8
- package/dist/cjs/ix-helper-text.cjs.entry.js +1 -1
- package/dist/cjs/ix-icon-button.ix-spinner.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-icon-button_2.cjs.entry.js +7 -4
- package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +3 -3
- package/dist/cjs/ix-input-group.cjs.entry.js +1 -1
- package/dist/cjs/ix-input.cjs.entry.js +4 -4
- 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-layout-auto.cjs.entry.js +1 -1
- package/dist/cjs/ix-link-button.cjs.entry.js +3 -3
- 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.cjs.entry.js +6 -2
- package/dist/cjs/ix-menu-about.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-menu-avatar.cjs.entry.js +20 -3
- package/dist/cjs/ix-menu-avatar.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-menu-category.cjs.entry.js +6 -6
- package/dist/cjs/ix-menu-category.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-menu-expand-icon.cjs.entry.js +10 -8
- package/dist/cjs/ix-menu-expand-icon.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-menu-item.cjs.entry.js +10 -12
- package/dist/cjs/ix-menu-item.entry.cjs.js.map +1 -1
- package/dist/cjs/{ix-menu-settings-CtWl0bME.js → ix-menu-settings-BYr52N4C.js} +42 -38
- package/dist/cjs/ix-menu-settings-BYr52N4C.js.map +1 -0
- 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 +44 -16
- package/dist/cjs/ix-menu.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-message-bar.cjs.entry.js +2 -2
- package/dist/cjs/ix-message-bar.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-modal-content_2.cjs.entry.js +2 -2
- 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 +5 -7
- package/dist/cjs/ix-modal.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-number-input.cjs.entry.js +5 -5
- package/dist/cjs/ix-pagination.cjs.entry.js +4 -4
- package/dist/cjs/ix-pane-layout.cjs.entry.js +2 -1
- package/dist/cjs/ix-pane-layout.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-pane.cjs.entry.js +6 -6
- package/dist/cjs/ix-pill.cjs.entry.js +4 -4
- package/dist/cjs/ix-progress-indicator.cjs.entry.js +3 -3
- package/dist/cjs/ix-push-card.cjs.entry.js +5 -1
- package/dist/cjs/ix-push-card.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-radio-group.cjs.entry.js +2 -2
- package/dist/cjs/ix-radio.cjs.entry.js +3 -3
- package/dist/cjs/ix-select.cjs.entry.js +22 -13
- package/dist/cjs/ix-select.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-slider.cjs.entry.js +87 -25
- package/dist/cjs/ix-slider.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-split-button.cjs.entry.js +8 -1
- package/dist/cjs/ix-split-button.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-tab-item.ix-tabs.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-tab-item_2.cjs.entry.js +135 -54
- package/dist/cjs/ix-textarea.cjs.entry.js +2 -2
- package/dist/cjs/ix-tile.cjs.entry.js +4 -4
- package/dist/cjs/ix-time-input.cjs.entry.js +11 -4
- package/dist/cjs/ix-time-input.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-time-picker.cjs.entry.js +5 -5
- package/dist/cjs/ix-toast-container.cjs.entry.js +4 -3
- package/dist/cjs/ix-toast-container.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-toast.cjs.entry.js +7 -3
- package/dist/cjs/ix-toast.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-toggle-button.cjs.entry.js +3 -3
- package/dist/cjs/ix-toggle-button.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-toggle.cjs.entry.js +3 -3
- package/dist/cjs/ix-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/ix-tree-item.cjs.entry.js +4 -4
- package/dist/cjs/ix-tree.cjs.entry.js +33 -4
- package/dist/cjs/ix-tree.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-typography.cjs.entry.js +1 -1
- package/dist/cjs/ix-upload.cjs.entry.js +3 -3
- package/dist/cjs/ix-validation-tooltip.cjs.entry.js +2 -2
- package/dist/cjs/ix-workflow-step.cjs.entry.js +3 -3
- package/dist/cjs/ix-workflow-steps.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{modal-CsEGB0kd.js → modal-CUsbxNFf.js} +32 -2
- package/dist/cjs/modal-CUsbxNFf.js.map +1 -0
- package/dist/cjs/requestAnimationFrame-B0rWQ3G-.js +30 -0
- package/dist/cjs/requestAnimationFrame-B0rWQ3G-.js.map +1 -0
- package/dist/cjs/siemens-ix.cjs.js +1 -1
- package/dist/collection/components/action-card/action-card.js +25 -1
- package/dist/collection/components/action-card/action-card.js.map +1 -1
- package/dist/collection/components/application-header/application-header.js +46 -10
- package/dist/collection/components/application-header/application-header.js.map +1 -1
- package/dist/collection/components/breadcrumb/breadcrumb.js +37 -4
- package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
- package/dist/collection/components/button/base-button.js +8 -2
- package/dist/collection/components/button/base-button.js.map +1 -1
- package/dist/collection/components/card/card.css +49 -0
- package/dist/collection/components/card/card.js +27 -2
- package/dist/collection/components/card/card.js.map +1 -1
- package/dist/collection/components/category-filter/category-filter.js +41 -8
- package/dist/collection/components/category-filter/category-filter.js.map +1 -1
- package/dist/collection/components/date-dropdown/date-dropdown.js +38 -5
- package/dist/collection/components/date-dropdown/date-dropdown.js.map +1 -1
- package/dist/collection/components/date-input/date-input.js +37 -4
- package/dist/collection/components/date-input/date-input.js.map +1 -1
- package/dist/collection/components/date-picker/date-picker.js +38 -5
- package/dist/collection/components/date-picker/date-picker.js.map +1 -1
- package/dist/collection/components/drawer/drawer.js +6 -6
- package/dist/collection/components/drawer/drawer.js.map +1 -1
- package/dist/collection/components/dropdown/dropdown.css +42 -0
- package/dist/collection/components/dropdown/dropdown.js +125 -36
- package/dist/collection/components/dropdown/dropdown.js.map +1 -1
- package/dist/collection/components/dropdown-button/dropdown-button.js +42 -5
- 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-item/dropdown-item.js +10 -4
- 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/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/field-label/field-label.js +14 -5
- package/dist/collection/components/field-label/field-label.js.map +1 -1
- package/dist/collection/components/field-wrapper/field-wrapper.js +2 -2
- package/dist/collection/components/filter-chip/filter-chip.js +1 -1
- package/dist/collection/components/flip-tile/flip-tile.js +3 -3
- package/dist/collection/components/flip-tile-content/flip-tile-content.js +1 -1
- package/dist/collection/components/group/group-context-menu.js +1 -1
- package/dist/collection/components/group/group.js +8 -8
- package/dist/collection/components/helper-text/helper-text.js +1 -1
- package/dist/collection/components/icon-button/icon-button.js +5 -2
- package/dist/collection/components/icon-button/icon-button.js.map +1 -1
- package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +1 -1
- package/dist/collection/components/input/input.js +4 -4
- package/dist/collection/components/input/number-input.js +5 -5
- package/dist/collection/components/input/textarea.js +2 -2
- 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.js +3 -3
- package/dist/collection/components/layout-auto/layout-auto.js +1 -1
- package/dist/collection/components/layout-grid/layout-grid.js +2 -2
- package/dist/collection/components/link-button/link-button.js +3 -3
- package/dist/collection/components/menu/menu-expand-icon.js +33 -36
- package/dist/collection/components/menu/menu-expand-icon.js.map +1 -1
- package/dist/collection/components/menu/menu.js +50 -16
- package/dist/collection/components/menu/menu.js.map +1 -1
- package/dist/collection/components/menu-about/menu-about.js +25 -1
- package/dist/collection/components/menu-about/menu-about.js.map +1 -1
- 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-avatar/menu-avatar.js +90 -3
- package/dist/collection/components/menu-avatar/menu-avatar.js.map +1 -1
- package/dist/collection/components/menu-avatar-item/menu-avatar-item.js +1 -1
- package/dist/collection/components/menu-category/menu-category.js +6 -6
- package/dist/collection/components/menu-category/menu-category.js.map +1 -1
- package/dist/collection/components/menu-item/menu-item.js +10 -12
- package/dist/collection/components/menu-item/menu-item.js.map +1 -1
- package/dist/collection/components/menu-settings/menu-settings.js +25 -1
- package/dist/collection/components/menu-settings/menu-settings.js.map +1 -1
- package/dist/collection/components/menu-settings-item/menu-settings-item.js +1 -1
- package/dist/collection/components/message-bar/message-bar.css +0 -11
- package/dist/collection/components/message-bar/message-bar.js +1 -1
- package/dist/collection/components/modal/modal.css +1 -4
- package/dist/collection/components/modal/modal.js +4 -6
- package/dist/collection/components/modal/modal.js.map +1 -1
- 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.js +1 -1
- package/dist/collection/components/modal-loading/modal-loading.js +1 -1
- package/dist/collection/components/pagination/pagination.js +3 -3
- package/dist/collection/components/pane/pane.js +6 -6
- package/dist/collection/components/pane-layout/pane-layout.js +2 -1
- package/dist/collection/components/pane-layout/pane-layout.js.map +1 -1
- package/dist/collection/components/pill/pill.js +4 -4
- package/dist/collection/components/progress-indicator/progress-indicator.js +3 -3
- package/dist/collection/components/push-card/push-card.js +25 -1
- package/dist/collection/components/push-card/push-card.js.map +1 -1
- package/dist/collection/components/radio/radio.js +3 -3
- package/dist/collection/components/radio-group/radio-group.js +2 -2
- package/dist/collection/components/row/row.js +1 -1
- package/dist/collection/components/select/select.js +49 -14
- package/dist/collection/components/select/select.js.map +1 -1
- package/dist/collection/components/select-item/select-item.js +1 -1
- package/dist/collection/components/slider/slider.css +86 -44
- package/dist/collection/components/slider/slider.js +290 -27
- package/dist/collection/components/slider/slider.js.map +1 -1
- package/dist/collection/components/spinner/spinner.js +1 -1
- package/dist/collection/components/split-button/split-button.js +35 -2
- package/dist/collection/components/split-button/split-button.js.map +1 -1
- package/dist/collection/components/tab-item/tab-item.js +3 -3
- package/dist/collection/components/tabs/tabs.js +130 -26
- package/dist/collection/components/tabs/tabs.js.map +1 -1
- package/dist/collection/components/tile/tile.js +4 -4
- package/dist/collection/components/time-input/time-input.js +37 -4
- package/dist/collection/components/time-input/time-input.js.map +1 -1
- package/dist/collection/components/time-picker/time-picker.js +5 -5
- package/dist/collection/components/toast/toast-container.js +4 -3
- package/dist/collection/components/toast/toast-container.js.map +1 -1
- package/dist/collection/components/toast/toast-utils.js +21 -0
- package/dist/collection/components/toast/toast-utils.js.map +1 -1
- package/dist/collection/components/toast/toast.css +8 -6
- package/dist/collection/components/toast/toast.js +26 -2
- package/dist/collection/components/toast/toast.js.map +1 -1
- package/dist/collection/components/toggle/toggle.js +3 -3
- package/dist/collection/components/toggle-button/toggle-button.js +3 -3
- package/dist/collection/components/toggle-button/toggle-button.js.map +1 -1
- package/dist/collection/components/tooltip/tooltip.js +1 -1
- package/dist/collection/components/tree/tree.js +1 -1
- package/dist/collection/components/tree-item/tree-item.js +4 -4
- package/dist/collection/components/typography/typography.js +1 -1
- package/dist/collection/components/upload/upload.js +3 -3
- package/dist/collection/components/utils/lazy-list/lazy.js +32 -3
- package/dist/collection/components/utils/lazy-list/lazy.js.map +1 -1
- package/dist/collection/components/utils/menu-tabs/menu-tabs-fc.js +3 -3
- package/dist/collection/components/utils/menu-tabs/menu-tabs-fc.js.map +1 -1
- package/dist/collection/components/utils/modal/loading.js +3 -0
- package/dist/collection/components/utils/modal/loading.js.map +1 -1
- package/dist/collection/components/utils/modal/message.js +18 -0
- package/dist/collection/components/utils/modal/message.js.map +1 -1
- package/dist/collection/components/utils/modal/modal.js +12 -0
- package/dist/collection/components/utils/modal/modal.js.map +1 -1
- package/dist/collection/components/validation-tooltip/validation-tooltip.js +2 -2
- package/dist/collection/components/workflow-step/workflow-step.js +3 -3
- package/dist/collection/components/workflow-steps/workflow-steps.js +1 -1
- package/dist/esm/{base-button-TVpiK7pg.js → base-button-D4FlHdn0.js} +10 -4
- package/dist/esm/base-button-D4FlHdn0.js.map +1 -0
- package/dist/esm/{base-icon-button-B3ULQ24g.js → base-icon-button-rBR4ri6c.js} +3 -3
- package/dist/esm/{base-icon-button-B3ULQ24g.js.map → base-icon-button-rBR4ri6c.js.map} +1 -1
- package/dist/esm/{index-Kp5Wf9wr.js → index-75AAQH08.js} +3 -3
- package/dist/esm/{index-Kp5Wf9wr.js.map → index-75AAQH08.js.map} +1 -1
- package/dist/esm/index-CtoreFVF.js +4 -4
- package/dist/esm/index.js +26 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/ix-action-card.entry.js +5 -1
- package/dist/esm/ix-action-card.entry.js.map +1 -1
- package/dist/esm/ix-application-header.entry.js +19 -12
- package/dist/esm/ix-application-header.entry.js.map +1 -1
- package/dist/esm/ix-application-switch-modal.entry.js +1 -1
- package/dist/esm/ix-avatar_2.entry.js +2 -2
- package/dist/esm/ix-breadcrumb-item.entry.js +1 -1
- package/dist/esm/ix-breadcrumb.entry.js +11 -4
- package/dist/esm/ix-breadcrumb.entry.js.map +1 -1
- package/dist/esm/ix-button.entry.js +1 -1
- package/dist/esm/ix-card.ix-card-content.entry.js.map +1 -1
- package/dist/esm/ix-card_2.entry.js +8 -3
- package/dist/esm/ix-category-filter.entry.js +15 -8
- package/dist/esm/ix-category-filter.entry.js.map +1 -1
- package/dist/esm/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.js.map +1 -1
- package/dist/esm/ix-col_4.entry.js +15 -8
- package/dist/esm/ix-date-dropdown.entry.js +12 -5
- package/dist/esm/ix-date-dropdown.entry.js.map +1 -1
- package/dist/esm/ix-date-input.entry.js +11 -4
- package/dist/esm/ix-date-input.entry.js.map +1 -1
- package/dist/esm/ix-drawer.entry.js +6 -6
- package/dist/esm/ix-drawer.entry.js.map +1 -1
- package/dist/esm/ix-dropdown-button.entry.js +14 -3
- 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-item.entry.js +9 -3
- 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 +103 -37
- package/dist/esm/ix-dropdown.entry.js.map +1 -1
- package/dist/esm/ix-empty-state.entry.js +1 -1
- package/dist/esm/ix-event-list-item.entry.js +4 -4
- package/dist/esm/ix-event-list.entry.js +2 -2
- package/dist/esm/ix-expanding-search.entry.js +4 -4
- package/dist/esm/ix-field-label.ix-field-wrapper.entry.js.map +1 -1
- package/dist/esm/ix-field-label_2.entry.js +14 -7
- 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 +3 -3
- package/dist/esm/ix-group-context-menu_2.entry.js +1 -1
- package/dist/esm/ix-group.entry.js +8 -8
- package/dist/esm/ix-helper-text.entry.js +1 -1
- package/dist/esm/ix-icon-button.ix-spinner.entry.js.map +1 -1
- package/dist/esm/ix-icon-button_2.entry.js +7 -4
- package/dist/esm/ix-icon-toggle-button.entry.js +3 -3
- package/dist/esm/ix-input-group.entry.js +1 -1
- package/dist/esm/ix-input.entry.js +4 -4
- 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-layout-auto.entry.js +1 -1
- package/dist/esm/ix-link-button.entry.js +3 -3
- 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.entry.js +6 -2
- package/dist/esm/ix-menu-about.entry.js.map +1 -1
- package/dist/esm/ix-menu-avatar.entry.js +20 -3
- package/dist/esm/ix-menu-avatar.entry.js.map +1 -1
- 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 +10 -8
- package/dist/esm/ix-menu-expand-icon.entry.js.map +1 -1
- package/dist/esm/ix-menu-item.entry.js +10 -12
- package/dist/esm/ix-menu-item.entry.js.map +1 -1
- package/dist/esm/{ix-menu-settings-f9o5GGw5.js → ix-menu-settings-CG60xQKd.js} +42 -38
- package/dist/esm/ix-menu-settings-CG60xQKd.js.map +1 -0
- 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 +44 -16
- package/dist/esm/ix-menu.entry.js.map +1 -1
- package/dist/esm/ix-message-bar.entry.js +2 -2
- package/dist/esm/ix-message-bar.entry.js.map +1 -1
- package/dist/esm/ix-modal-content_2.entry.js +2 -2
- 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 +5 -7
- package/dist/esm/ix-modal.entry.js.map +1 -1
- package/dist/esm/ix-number-input.entry.js +5 -5
- package/dist/esm/ix-pagination.entry.js +4 -4
- package/dist/esm/ix-pane-layout.entry.js +2 -1
- package/dist/esm/ix-pane-layout.entry.js.map +1 -1
- package/dist/esm/ix-pane.entry.js +6 -6
- package/dist/esm/ix-pill.entry.js +4 -4
- package/dist/esm/ix-progress-indicator.entry.js +3 -3
- package/dist/esm/ix-push-card.entry.js +5 -1
- package/dist/esm/ix-push-card.entry.js.map +1 -1
- package/dist/esm/ix-radio-group.entry.js +2 -2
- package/dist/esm/ix-radio.entry.js +3 -3
- package/dist/esm/ix-select.entry.js +22 -13
- package/dist/esm/ix-select.entry.js.map +1 -1
- package/dist/esm/ix-slider.entry.js +87 -25
- package/dist/esm/ix-slider.entry.js.map +1 -1
- package/dist/esm/ix-split-button.entry.js +8 -1
- package/dist/esm/ix-split-button.entry.js.map +1 -1
- package/dist/esm/ix-tab-item.ix-tabs.entry.js.map +1 -1
- package/dist/esm/ix-tab-item_2.entry.js +134 -53
- package/dist/esm/ix-textarea.entry.js +2 -2
- package/dist/esm/ix-tile.entry.js +4 -4
- package/dist/esm/ix-time-input.entry.js +11 -4
- package/dist/esm/ix-time-input.entry.js.map +1 -1
- package/dist/esm/ix-time-picker.entry.js +5 -5
- package/dist/esm/ix-toast-container.entry.js +4 -3
- package/dist/esm/ix-toast-container.entry.js.map +1 -1
- package/dist/esm/ix-toast.entry.js +7 -3
- package/dist/esm/ix-toast.entry.js.map +1 -1
- package/dist/esm/ix-toggle-button.entry.js +3 -3
- package/dist/esm/ix-toggle-button.entry.js.map +1 -1
- package/dist/esm/ix-toggle.entry.js +3 -3
- package/dist/esm/ix-tooltip.entry.js +1 -1
- package/dist/esm/ix-tree-item.entry.js +4 -4
- package/dist/esm/ix-tree.entry.js +33 -4
- package/dist/esm/ix-tree.entry.js.map +1 -1
- package/dist/esm/ix-typography.entry.js +1 -1
- package/dist/esm/ix-upload.entry.js +3 -3
- package/dist/esm/ix-validation-tooltip.entry.js +2 -2
- package/dist/esm/ix-workflow-step.entry.js +3 -3
- package/dist/esm/ix-workflow-steps.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{modal-BTxff2hq.js → modal-DCXtePY2.js} +32 -2
- package/dist/esm/modal-DCXtePY2.js.map +1 -0
- package/dist/esm/requestAnimationFrame-BEuV0Xpe.js +28 -0
- package/dist/esm/requestAnimationFrame-BEuV0Xpe.js.map +1 -0
- package/dist/esm/siemens-ix.js +1 -1
- package/dist/siemens-ix/index.esm.js +1 -1
- package/dist/siemens-ix/index.esm.js.map +1 -1
- package/dist/siemens-ix/ix-action-card.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-application-header.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-breadcrumb.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-card.ix-card-content.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-category-filter.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-date-dropdown.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-date-input.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-drawer.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-dropdown-button.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-dropdown-item.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-dropdown.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-field-label.ix-field-wrapper.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-icon-button.ix-spinner.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-menu-about.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-menu-avatar.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-menu-category.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-menu-expand-icon.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-menu-item.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-menu.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-message-bar.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-modal.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-pane-layout.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-push-card.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-select.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-slider.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-split-button.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-tab-item.ix-tabs.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-time-input.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-toast-container.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-toast.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-toggle-button.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-tree.entry.esm.js.map +1 -1
- package/dist/siemens-ix/p-00d9e974.entry.js +2 -0
- package/dist/siemens-ix/{p-26c629c3.entry.js.map → p-00d9e974.entry.js.map} +1 -1
- package/dist/siemens-ix/p-00f783c2.entry.js +2 -0
- package/dist/siemens-ix/p-00f783c2.entry.js.map +1 -0
- package/dist/siemens-ix/{p-eba7f62c.entry.js → p-012e0b64.entry.js} +2 -2
- package/dist/siemens-ix/p-01f33c21.entry.js +2 -0
- package/dist/siemens-ix/p-01f33c21.entry.js.map +1 -0
- package/dist/siemens-ix/{p-c94739d0.entry.js → p-0693e4bf.entry.js} +2 -2
- package/dist/siemens-ix/p-07ab03fe.entry.js +2 -0
- package/dist/siemens-ix/p-07ab03fe.entry.js.map +1 -0
- package/dist/siemens-ix/{p-dc8de6cb.entry.js → p-0c5021bc.entry.js} +2 -2
- package/dist/siemens-ix/{p-b9880608.entry.js → p-0f80678c.entry.js} +2 -2
- package/dist/siemens-ix/p-13dc936a.entry.js +2 -0
- package/dist/siemens-ix/p-13dc936a.entry.js.map +1 -0
- package/dist/siemens-ix/{p-d3a60c52.entry.js → p-163090c1.entry.js} +2 -2
- package/dist/siemens-ix/{p-d3a60c52.entry.js.map → p-163090c1.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-ea15fc79.entry.js → p-18d39c8a.entry.js} +2 -2
- package/dist/siemens-ix/{p-b3453edf.entry.js → p-1b4cfce2.entry.js} +2 -2
- package/dist/siemens-ix/{p-de12078d.entry.js → p-22735495.entry.js} +2 -2
- package/dist/siemens-ix/p-24af7715.entry.js +2 -0
- package/dist/siemens-ix/p-24af7715.entry.js.map +1 -0
- package/dist/siemens-ix/p-29d397e7.entry.js +2 -0
- package/dist/siemens-ix/p-29d397e7.entry.js.map +1 -0
- package/dist/siemens-ix/p-2e1bb4bf.entry.js +2 -0
- package/dist/siemens-ix/p-2e1bb4bf.entry.js.map +1 -0
- package/dist/siemens-ix/{p-1de1a2bf.entry.js → p-2eda608a.entry.js} +2 -2
- package/dist/siemens-ix/{p-6a4bc78a.entry.js → p-2f83d5de.entry.js} +2 -2
- package/dist/siemens-ix/p-332b3d09.entry.js +2 -0
- package/dist/siemens-ix/{p-c15e64a8.entry.js → p-346c5039.entry.js} +2 -2
- package/dist/siemens-ix/p-38ba4776.entry.js +2 -0
- package/dist/siemens-ix/p-38ba4776.entry.js.map +1 -0
- package/dist/siemens-ix/{p-b7ef70d4.entry.js → p-3ff8cf24.entry.js} +2 -2
- package/dist/siemens-ix/p-3ff8cf24.entry.js.map +1 -0
- package/dist/siemens-ix/{p-4431f891.entry.js → p-4a6f8ce8.entry.js} +2 -2
- package/dist/siemens-ix/p-4a9cceff.entry.js +2 -0
- package/dist/siemens-ix/{p-0ce03ad3.entry.js.map → p-4a9cceff.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-396e1f3d.entry.js → p-4d004e44.entry.js} +2 -2
- package/dist/siemens-ix/{p-b76df1c7.entry.js → p-4d540a34.entry.js} +2 -2
- package/dist/siemens-ix/p-4d540a34.entry.js.map +1 -0
- package/dist/siemens-ix/p-4e985847.entry.js +2 -0
- package/dist/siemens-ix/p-4e985847.entry.js.map +1 -0
- package/dist/siemens-ix/p-5306efc0.entry.js +2 -0
- package/dist/siemens-ix/p-5306efc0.entry.js.map +1 -0
- package/dist/siemens-ix/p-568e5673.entry.js +2 -0
- package/dist/siemens-ix/p-568e5673.entry.js.map +1 -0
- package/dist/siemens-ix/{p-38e45020.entry.js → p-591664be.entry.js} +2 -2
- package/dist/siemens-ix/{p-c5c863e1.entry.js → p-6794955e.entry.js} +2 -2
- package/dist/siemens-ix/{p-79537728.entry.js → p-69526242.entry.js} +2 -2
- package/dist/siemens-ix/p-7752df0f.entry.js +2 -0
- package/dist/siemens-ix/p-78ac2dbc.entry.js +2 -0
- package/dist/siemens-ix/{p-8f9368b8.entry.js → p-7ab95193.entry.js} +2 -2
- package/dist/siemens-ix/p-7c3ed8dc.entry.js +2 -0
- package/dist/siemens-ix/p-7c3ed8dc.entry.js.map +1 -0
- package/dist/siemens-ix/{p-fb8877bc.entry.js → p-7df00cac.entry.js} +2 -2
- package/dist/siemens-ix/p-7df00cac.entry.js.map +1 -0
- package/dist/siemens-ix/{p-e7bdc0a0.entry.js → p-7fa55c16.entry.js} +2 -2
- package/dist/siemens-ix/p-7fa55c16.entry.js.map +1 -0
- package/dist/siemens-ix/{p-ff83eafd.entry.js → p-7fbcc15c.entry.js} +2 -2
- package/dist/siemens-ix/p-828db41e.entry.js +2 -0
- package/dist/siemens-ix/{p-6dc6eb63.entry.js.map → p-828db41e.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-496e98ac.entry.js → p-82c3a8a2.entry.js} +2 -2
- package/dist/siemens-ix/p-899b445d.entry.js +2 -0
- package/dist/siemens-ix/p-899b445d.entry.js.map +1 -0
- package/dist/siemens-ix/{p-5779f16e.entry.js → p-8b6f2e0e.entry.js} +2 -2
- package/dist/siemens-ix/p-8c8bad0a.entry.js +2 -0
- package/dist/siemens-ix/{p-b8f4b001.entry.js → p-8e26b723.entry.js} +2 -2
- package/dist/siemens-ix/p-8e26b723.entry.js.map +1 -0
- package/dist/siemens-ix/{p-7bc90e7e.entry.js → p-8e7f7343.entry.js} +2 -2
- package/dist/siemens-ix/{p-484bddf4.entry.js → p-922a49d7.entry.js} +2 -2
- package/dist/siemens-ix/{p-196cffb5.entry.js → p-9362445d.entry.js} +2 -2
- package/dist/siemens-ix/p-9492ebc4.entry.js +2 -0
- package/dist/siemens-ix/p-9492ebc4.entry.js.map +1 -0
- package/dist/siemens-ix/{p-d2c18c15.entry.js → p-96c371c8.entry.js} +2 -2
- package/dist/siemens-ix/{p-2ffde2d5.entry.js → p-97c3d27e.entry.js} +2 -2
- package/dist/siemens-ix/{p-f119c105.entry.js → p-98cf2c22.entry.js} +2 -2
- package/dist/siemens-ix/{p-ca3b24b1.entry.js → p-99dda4c4.entry.js} +2 -2
- package/dist/siemens-ix/{p-e48977ed.entry.js → p-9b917ecd.entry.js} +2 -2
- package/dist/siemens-ix/p-9ea48663.entry.js +2 -0
- package/dist/siemens-ix/p-9ea48663.entry.js.map +1 -0
- package/dist/siemens-ix/{p-CObJ-t0Z.js → p-B3-0mRq1.js} +2 -2
- package/dist/siemens-ix/{p-CObJ-t0Z.js.map → p-B3-0mRq1.js.map} +1 -1
- package/dist/siemens-ix/p-BEuV0Xpe.js +2 -0
- package/dist/siemens-ix/p-BEuV0Xpe.js.map +1 -0
- package/dist/siemens-ix/p-BYhznbns.js +2 -0
- package/dist/siemens-ix/p-BYhznbns.js.map +1 -0
- package/dist/siemens-ix/p-BvohuWNe.js +2 -0
- package/dist/siemens-ix/p-BvohuWNe.js.map +1 -0
- package/dist/siemens-ix/p-CSUx_zC3.js +2 -0
- package/dist/siemens-ix/{p-DpM4lbAX.js.map → p-CSUx_zC3.js.map} +1 -1
- package/dist/siemens-ix/{p-BC0Exw_O.js → p-IHkSWEwz.js} +1 -1
- package/dist/siemens-ix/p-IHkSWEwz.js.map +1 -0
- package/dist/siemens-ix/p-a9c3bb03.entry.js +2 -0
- package/dist/siemens-ix/p-a9c3bb03.entry.js.map +1 -0
- package/dist/siemens-ix/{p-4c18f123.entry.js → p-ad911b63.entry.js} +2 -2
- package/dist/siemens-ix/{p-74e7b03f.entry.js → p-b1eac110.entry.js} +2 -2
- package/dist/siemens-ix/p-b7438aeb.entry.js +2 -0
- package/dist/siemens-ix/p-b7438aeb.entry.js.map +1 -0
- package/dist/siemens-ix/{p-d10b9798.entry.js → p-b7734b9d.entry.js} +2 -2
- package/dist/siemens-ix/{p-df6bb698.entry.js → p-bc85feef.entry.js} +2 -2
- package/dist/siemens-ix/{p-a4225101.entry.js → p-c6ee37e4.entry.js} +2 -2
- package/dist/siemens-ix/{p-a8308559.entry.js → p-ca2533b1.entry.js} +2 -2
- package/dist/siemens-ix/p-cb5e0db6.entry.js +2 -0
- package/dist/siemens-ix/{p-3f62166e.entry.js.map → p-cb5e0db6.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-667e3184.entry.js → p-ceb7b1da.entry.js} +2 -2
- package/dist/siemens-ix/{p-e0b9cf68.entry.js → p-d2ce70ac.entry.js} +2 -2
- package/dist/siemens-ix/{p-8fc2bea6.entry.js → p-d384611d.entry.js} +2 -2
- package/dist/siemens-ix/p-d63ac3e3.entry.js +2 -0
- package/dist/siemens-ix/p-d63ac3e3.entry.js.map +1 -0
- package/dist/siemens-ix/p-d73d0805.entry.js +2 -0
- package/dist/siemens-ix/p-d73d0805.entry.js.map +1 -0
- package/dist/siemens-ix/{p-b41a7abb.entry.js → p-d82ac1e1.entry.js} +2 -2
- package/dist/siemens-ix/{p-7beba4ad.entry.js → p-d9776ef8.entry.js} +2 -2
- package/dist/siemens-ix/p-db913bc4.entry.js +2 -0
- package/dist/siemens-ix/p-db913bc4.entry.js.map +1 -0
- package/dist/siemens-ix/{p-367df024.entry.js → p-dc0be9bf.entry.js} +2 -2
- package/dist/siemens-ix/p-dc0be9bf.entry.js.map +1 -0
- package/dist/siemens-ix/{p-33b3ed5b.entry.js → p-de59209e.entry.js} +2 -2
- package/dist/siemens-ix/{p-cf041cfd.entry.js → p-e29533a3.entry.js} +2 -2
- package/dist/siemens-ix/{p-3ce5fd87.entry.js → p-e4dabf5b.entry.js} +2 -2
- package/dist/siemens-ix/p-e4dabf5b.entry.js.map +1 -0
- package/dist/siemens-ix/{p-cd1afcc9.entry.js → p-e69d8217.entry.js} +2 -2
- package/dist/siemens-ix/{p-7827c263.entry.js → p-e7ef43ed.entry.js} +2 -2
- package/dist/siemens-ix/{p-8f17f6ec.entry.js → p-ec9dc8d8.entry.js} +2 -2
- package/dist/siemens-ix/p-ec9dc8d8.entry.js.map +1 -0
- package/dist/siemens-ix/{p-77fd2138.entry.js → p-f4264893.entry.js} +2 -2
- package/dist/siemens-ix/p-f42f74c2.entry.js +2 -0
- package/dist/siemens-ix/p-f7cb5560.entry.js +2 -0
- package/dist/siemens-ix/p-f7cb5560.entry.js.map +1 -0
- package/dist/siemens-ix/siemens-ix-core.css +1 -1
- package/dist/siemens-ix/siemens-ix.esm.js +1 -1
- package/dist/types/components/action-card/action-card.d.ts +4 -0
- package/dist/types/components/application-header/application-header.d.ts +8 -0
- package/dist/types/components/breadcrumb/breadcrumb.d.ts +7 -0
- package/dist/types/components/card/card.d.ts +4 -0
- package/dist/types/components/category-filter/category-filter.d.ts +7 -0
- package/dist/types/components/date-dropdown/date-dropdown.d.ts +8 -1
- package/dist/types/components/date-input/date-input.d.ts +7 -0
- package/dist/types/components/date-picker/date-picker.d.ts +7 -0
- package/dist/types/components/dropdown/dropdown.d.ts +11 -1
- package/dist/types/components/dropdown-button/dropdown-button.d.ts +7 -0
- package/dist/types/components/field-label/field-label.d.ts +2 -0
- package/dist/types/components/menu/menu-expand-icon.d.ts +5 -2
- package/dist/types/components/menu/menu.d.ts +6 -0
- package/dist/types/components/menu-about/menu-about.d.ts +4 -0
- package/dist/types/components/menu-avatar/menu-avatar.d.ts +20 -0
- package/dist/types/components/menu-item/menu-item.d.ts +1 -1
- package/dist/types/components/menu-settings/menu-settings.d.ts +4 -0
- package/dist/types/components/modal/modal.d.ts +0 -1
- package/dist/types/components/push-card/push-card.d.ts +4 -0
- package/dist/types/components/select/select.d.ts +7 -0
- package/dist/types/components/slider/slider.d.ts +57 -2
- package/dist/types/components/split-button/split-button.d.ts +8 -1
- package/dist/types/components/tabs/tabs.d.ts +12 -0
- package/dist/types/components/time-input/time-input.d.ts +7 -0
- package/dist/types/components/toast/toast-utils.d.ts +13 -0
- package/dist/types/components/toast/toast.d.ts +4 -0
- package/dist/types/components/toggle-button/toggle-button.d.ts +1 -3
- package/dist/types/components/utils/lazy-list/lazy.d.ts +2 -0
- package/dist/types/components/utils/modal/loading.d.ts +3 -0
- package/dist/types/components/utils/modal/message.d.ts +3 -0
- package/dist/types/components/utils/modal/modal.d.ts +63 -0
- package/dist/types/components.d.ts +326 -7
- package/hydrate/index.js +1144 -678
- package/hydrate/index.mjs +1144 -678
- package/package.json +1 -1
- package/components/p-10zMtvCF.js.map +0 -1
- package/components/p-B1p0kpQJ.js.map +0 -1
- package/components/p-BEDohapR.js.map +0 -1
- package/components/p-BI7B-PUA.js.map +0 -1
- package/components/p-BLeWaHpy.js.map +0 -1
- package/components/p-BOQ00Fbs.js.map +0 -1
- package/components/p-BiqdnsgA.js.map +0 -1
- package/components/p-CV_EVAOW.js.map +0 -1
- package/components/p-CjDPpSJX.js.map +0 -1
- package/components/p-DSTHZygb.js.map +0 -1
- package/components/p-DlVaL0Yi.js.map +0 -1
- package/components/p-MuPiaYr1.js.map +0 -1
- package/components/p-PpLLlogo.js.map +0 -1
- package/components/p-hwPzPVf8.js.map +0 -1
- package/dist/cjs/base-button-CjsUotrL.js.map +0 -1
- package/dist/cjs/ix-menu-settings-CtWl0bME.js.map +0 -1
- package/dist/cjs/modal-CsEGB0kd.js.map +0 -1
- package/dist/esm/base-button-TVpiK7pg.js.map +0 -1
- package/dist/esm/ix-menu-settings-f9o5GGw5.js.map +0 -1
- package/dist/esm/modal-BTxff2hq.js.map +0 -1
- package/dist/siemens-ix/p-0411df39.entry.js +0 -2
- package/dist/siemens-ix/p-0c325f08.entry.js +0 -2
- package/dist/siemens-ix/p-0c325f08.entry.js.map +0 -1
- package/dist/siemens-ix/p-0ce03ad3.entry.js +0 -2
- package/dist/siemens-ix/p-0d621531.entry.js +0 -2
- package/dist/siemens-ix/p-0d621531.entry.js.map +0 -1
- package/dist/siemens-ix/p-0eca5a77.entry.js +0 -2
- package/dist/siemens-ix/p-0eca5a77.entry.js.map +0 -1
- package/dist/siemens-ix/p-2597a988.entry.js +0 -2
- package/dist/siemens-ix/p-2597a988.entry.js.map +0 -1
- package/dist/siemens-ix/p-26c629c3.entry.js +0 -2
- package/dist/siemens-ix/p-31a8eaf9.entry.js +0 -2
- package/dist/siemens-ix/p-33fcea65.entry.js +0 -2
- package/dist/siemens-ix/p-33fcea65.entry.js.map +0 -1
- package/dist/siemens-ix/p-367df024.entry.js.map +0 -1
- package/dist/siemens-ix/p-37bd983a.entry.js +0 -2
- package/dist/siemens-ix/p-37bd983a.entry.js.map +0 -1
- package/dist/siemens-ix/p-3ce5fd87.entry.js.map +0 -1
- package/dist/siemens-ix/p-3f62166e.entry.js +0 -2
- package/dist/siemens-ix/p-4c1f90cb.entry.js +0 -2
- package/dist/siemens-ix/p-4c1f90cb.entry.js.map +0 -1
- package/dist/siemens-ix/p-4e4d792d.entry.js +0 -2
- package/dist/siemens-ix/p-4e4d792d.entry.js.map +0 -1
- package/dist/siemens-ix/p-5b57bde1.entry.js +0 -2
- package/dist/siemens-ix/p-5b57bde1.entry.js.map +0 -1
- package/dist/siemens-ix/p-68aaf0fe.entry.js +0 -2
- package/dist/siemens-ix/p-68aaf0fe.entry.js.map +0 -1
- package/dist/siemens-ix/p-6dc6eb63.entry.js +0 -2
- package/dist/siemens-ix/p-7bad0544.entry.js +0 -2
- package/dist/siemens-ix/p-7bad0544.entry.js.map +0 -1
- package/dist/siemens-ix/p-8418f756.entry.js +0 -2
- package/dist/siemens-ix/p-8418f756.entry.js.map +0 -1
- package/dist/siemens-ix/p-8b42ad35.entry.js +0 -2
- package/dist/siemens-ix/p-8b42ad35.entry.js.map +0 -1
- package/dist/siemens-ix/p-8f17f6ec.entry.js.map +0 -1
- package/dist/siemens-ix/p-8fa8d0e3.entry.js +0 -2
- package/dist/siemens-ix/p-92ec7f27.entry.js +0 -2
- package/dist/siemens-ix/p-BC0Exw_O.js.map +0 -1
- package/dist/siemens-ix/p-BcCDexod.js +0 -2
- package/dist/siemens-ix/p-BcCDexod.js.map +0 -1
- package/dist/siemens-ix/p-DiMfcbUU.js +0 -2
- package/dist/siemens-ix/p-DiMfcbUU.js.map +0 -1
- package/dist/siemens-ix/p-DpM4lbAX.js +0 -2
- package/dist/siemens-ix/p-a3baca2f.entry.js +0 -2
- package/dist/siemens-ix/p-a61972c5.entry.js +0 -2
- package/dist/siemens-ix/p-a61972c5.entry.js.map +0 -1
- package/dist/siemens-ix/p-b76df1c7.entry.js.map +0 -1
- package/dist/siemens-ix/p-b7ef70d4.entry.js.map +0 -1
- package/dist/siemens-ix/p-b8f4b001.entry.js.map +0 -1
- package/dist/siemens-ix/p-ba9ed3d1.entry.js +0 -2
- package/dist/siemens-ix/p-ba9ed3d1.entry.js.map +0 -1
- package/dist/siemens-ix/p-c1160cf8.entry.js +0 -2
- package/dist/siemens-ix/p-c1160cf8.entry.js.map +0 -1
- package/dist/siemens-ix/p-d193381f.entry.js +0 -2
- package/dist/siemens-ix/p-d193381f.entry.js.map +0 -1
- package/dist/siemens-ix/p-e42f62a1.entry.js +0 -2
- package/dist/siemens-ix/p-e42f62a1.entry.js.map +0 -1
- package/dist/siemens-ix/p-e7bdc0a0.entry.js.map +0 -1
- package/dist/siemens-ix/p-ea37abf6.entry.js +0 -2
- package/dist/siemens-ix/p-ea37abf6.entry.js.map +0 -1
- package/dist/siemens-ix/p-ea410634.entry.js +0 -2
- package/dist/siemens-ix/p-ea410634.entry.js.map +0 -1
- package/dist/siemens-ix/p-fb8877bc.entry.js.map +0 -1
- package/dist/siemens-ix/p-fc73c8cc.entry.js +0 -2
- package/dist/siemens-ix/p-fc73c8cc.entry.js.map +0 -1
- /package/dist/siemens-ix/{p-eba7f62c.entry.js.map → p-012e0b64.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-c94739d0.entry.js.map → p-0693e4bf.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-dc8de6cb.entry.js.map → p-0c5021bc.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-b9880608.entry.js.map → p-0f80678c.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-ea15fc79.entry.js.map → p-18d39c8a.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-b3453edf.entry.js.map → p-1b4cfce2.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-de12078d.entry.js.map → p-22735495.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-1de1a2bf.entry.js.map → p-2eda608a.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-6a4bc78a.entry.js.map → p-2f83d5de.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-a3baca2f.entry.js.map → p-332b3d09.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-c15e64a8.entry.js.map → p-346c5039.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-4431f891.entry.js.map → p-4a6f8ce8.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-396e1f3d.entry.js.map → p-4d004e44.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-38e45020.entry.js.map → p-591664be.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-c5c863e1.entry.js.map → p-6794955e.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-79537728.entry.js.map → p-69526242.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-8fa8d0e3.entry.js.map → p-7752df0f.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-0411df39.entry.js.map → p-78ac2dbc.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-8f9368b8.entry.js.map → p-7ab95193.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-ff83eafd.entry.js.map → p-7fbcc15c.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-496e98ac.entry.js.map → p-82c3a8a2.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-5779f16e.entry.js.map → p-8b6f2e0e.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-31a8eaf9.entry.js.map → p-8c8bad0a.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-7bc90e7e.entry.js.map → p-8e7f7343.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-484bddf4.entry.js.map → p-922a49d7.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-196cffb5.entry.js.map → p-9362445d.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-d2c18c15.entry.js.map → p-96c371c8.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-2ffde2d5.entry.js.map → p-97c3d27e.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-f119c105.entry.js.map → p-98cf2c22.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-ca3b24b1.entry.js.map → p-99dda4c4.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-e48977ed.entry.js.map → p-9b917ecd.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-4c18f123.entry.js.map → p-ad911b63.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-74e7b03f.entry.js.map → p-b1eac110.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-d10b9798.entry.js.map → p-b7734b9d.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-df6bb698.entry.js.map → p-bc85feef.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-a4225101.entry.js.map → p-c6ee37e4.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-a8308559.entry.js.map → p-ca2533b1.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-667e3184.entry.js.map → p-ceb7b1da.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-e0b9cf68.entry.js.map → p-d2ce70ac.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-8fc2bea6.entry.js.map → p-d384611d.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-b41a7abb.entry.js.map → p-d82ac1e1.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-7beba4ad.entry.js.map → p-d9776ef8.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-33b3ed5b.entry.js.map → p-de59209e.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-cf041cfd.entry.js.map → p-e29533a3.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-cd1afcc9.entry.js.map → p-e69d8217.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-7827c263.entry.js.map → p-e7ef43ed.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-77fd2138.entry.js.map → p-f4264893.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-92ec7f27.entry.js.map → p-f42f74c2.entry.js.map} +0 -0
|
@@ -8,10 +8,12 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import { autoUpdate, computePosition, flip, inline, offset, shift, } from "@floating-ui/dom";
|
|
10
10
|
import { h, Host, } from "@stencil/core";
|
|
11
|
+
import { addDisposableEventListener, } from "../utils/disposable-event-listener";
|
|
12
|
+
import { findElement } from "../utils/find-element";
|
|
11
13
|
import { ArrowFocusController } from "../utils/focus";
|
|
14
|
+
import { makeRef } from "../utils/make-ref";
|
|
15
|
+
import { requestAnimationFrameNoNgZone } from "../utils/requestAnimationFrame";
|
|
12
16
|
import { dropdownController, hasDropdownItemWrapperImplemented, } from "./dropdown-controller";
|
|
13
|
-
import { findElement } from "../utils/find-element";
|
|
14
|
-
import { addDisposableEventListener, } from "../utils/disposable-event-listener";
|
|
15
17
|
let sequenceId = 0;
|
|
16
18
|
export class Dropdown {
|
|
17
19
|
constructor() {
|
|
@@ -46,6 +48,13 @@ export class Dropdown {
|
|
|
46
48
|
this.ignoreRelatedSubmenu = false;
|
|
47
49
|
/** @internal */
|
|
48
50
|
this.suppressOverflowBehavior = false;
|
|
51
|
+
/**
|
|
52
|
+
* Enable Popover API rendering for top-layer positioning.
|
|
53
|
+
*
|
|
54
|
+
* @default false in v4.x, will default to true in v5.0.0
|
|
55
|
+
*/
|
|
56
|
+
this.enableTopLayer = false;
|
|
57
|
+
this.dialogRef = makeRef();
|
|
49
58
|
this.localUId = `dropdown-${sequenceId++}`;
|
|
50
59
|
this.assignedSubmenu = [];
|
|
51
60
|
this.itemObserver = new MutationObserver(() => {
|
|
@@ -207,24 +216,27 @@ export class Dropdown {
|
|
|
207
216
|
}
|
|
208
217
|
}
|
|
209
218
|
async changedShow(newShow) {
|
|
210
|
-
var _a
|
|
211
|
-
if (newShow) {
|
|
212
|
-
|
|
213
|
-
if (this.
|
|
214
|
-
this.
|
|
219
|
+
var _a;
|
|
220
|
+
if (!newShow) {
|
|
221
|
+
this.cleanupOnHide();
|
|
222
|
+
if (this.enableTopLayer) {
|
|
223
|
+
await this.hideDropdownAsync();
|
|
215
224
|
}
|
|
216
|
-
|
|
217
|
-
(_a = this.itemObserver) === null || _a === void 0 ? void 0 : _a.observe(this.hostElement, {
|
|
218
|
-
childList: true,
|
|
219
|
-
subtree: true,
|
|
220
|
-
});
|
|
221
|
-
this.registerKeyListener();
|
|
225
|
+
return;
|
|
222
226
|
}
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
227
|
+
this.arrowFocusController = new ArrowFocusController(this.dropdownItems, this.hostElement, (index) => this.focusDropdownItem(index));
|
|
228
|
+
(_a = this.itemObserver) === null || _a === void 0 ? void 0 : _a.observe(this.hostElement, {
|
|
229
|
+
childList: true,
|
|
230
|
+
subtree: true,
|
|
231
|
+
});
|
|
232
|
+
this.registerKeyListener();
|
|
233
|
+
if (this.enableTopLayer) {
|
|
234
|
+
await this.showDropdownAsync();
|
|
235
|
+
return;
|
|
236
|
+
}
|
|
237
|
+
await this.resolveAnchorElement();
|
|
238
|
+
if (this.anchorElement) {
|
|
239
|
+
this.applyDropdownPosition();
|
|
228
240
|
}
|
|
229
241
|
}
|
|
230
242
|
changedTrigger(newTriggerValue) {
|
|
@@ -245,6 +257,42 @@ export class Dropdown {
|
|
|
245
257
|
}
|
|
246
258
|
return true;
|
|
247
259
|
}
|
|
260
|
+
async showDropdownAsync() {
|
|
261
|
+
const popover = await this.dialogRef.waitForCurrent();
|
|
262
|
+
if (!popover) {
|
|
263
|
+
return;
|
|
264
|
+
}
|
|
265
|
+
popover.showPopover();
|
|
266
|
+
await this.resolveAnchorElement();
|
|
267
|
+
if (this.anchorElement) {
|
|
268
|
+
this.applyDropdownPosition();
|
|
269
|
+
}
|
|
270
|
+
else {
|
|
271
|
+
requestAnimationFrameNoNgZone(() => {
|
|
272
|
+
const referenceElement = this.hostElement.parentElement || this.hostElement;
|
|
273
|
+
const refRect = referenceElement.getBoundingClientRect();
|
|
274
|
+
const transform = `translate(${Math.round(refRect.left)}px, ${Math.round(refRect.top)}px)`;
|
|
275
|
+
Object.assign(popover.style, {
|
|
276
|
+
top: '0',
|
|
277
|
+
left: '0',
|
|
278
|
+
transform,
|
|
279
|
+
});
|
|
280
|
+
});
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
async hideDropdownAsync() {
|
|
284
|
+
const popover = await this.dialogRef.waitForCurrent();
|
|
285
|
+
if (popover === null || popover === void 0 ? void 0 : popover.matches(':popover-open')) {
|
|
286
|
+
popover.hidePopover();
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
cleanupOnHide() {
|
|
290
|
+
var _a, _b, _c;
|
|
291
|
+
this.destroyAutoUpdate();
|
|
292
|
+
(_a = this.arrowFocusController) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
293
|
+
(_b = this.itemObserver) === null || _b === void 0 ? void 0 : _b.disconnect();
|
|
294
|
+
(_c = this.disposeKeyListener) === null || _c === void 0 ? void 0 : _c.call(this);
|
|
295
|
+
}
|
|
248
296
|
async applyDropdownPosition() {
|
|
249
297
|
var _a, _b;
|
|
250
298
|
if (!this.show) {
|
|
@@ -253,9 +301,20 @@ export class Dropdown {
|
|
|
253
301
|
if (!this.anchorElement) {
|
|
254
302
|
return;
|
|
255
303
|
}
|
|
304
|
+
const referenceElement = this.anchorElement;
|
|
256
305
|
const isSubmenu = this.isAnchorSubmenu();
|
|
306
|
+
let targetElement = this.hostElement;
|
|
307
|
+
let strategy = this.positioningStrategy;
|
|
308
|
+
if (this.enableTopLayer) {
|
|
309
|
+
const dialog = await this.dialogRef.waitForCurrent();
|
|
310
|
+
if (!dialog) {
|
|
311
|
+
return;
|
|
312
|
+
}
|
|
313
|
+
targetElement = dialog;
|
|
314
|
+
strategy = 'fixed';
|
|
315
|
+
}
|
|
257
316
|
let positionConfig = {
|
|
258
|
-
strategy
|
|
317
|
+
strategy,
|
|
259
318
|
middleware: [],
|
|
260
319
|
};
|
|
261
320
|
if (!this.suppressAutomaticPlacement) {
|
|
@@ -271,24 +330,19 @@ export class Dropdown {
|
|
|
271
330
|
positionConfig.middleware.push(offset(this.offset));
|
|
272
331
|
}
|
|
273
332
|
this.destroyAutoUpdate();
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
top: '0',
|
|
282
|
-
left: '0',
|
|
283
|
-
transform: `translate(${Math.round(computeResponse.x)}px,${Math.round(computeResponse.y)}px)`,
|
|
284
|
-
});
|
|
285
|
-
}
|
|
333
|
+
this.autoUpdateCleanup = autoUpdate(referenceElement, targetElement, async () => {
|
|
334
|
+
const computeResponse = await computePosition(referenceElement, targetElement, positionConfig);
|
|
335
|
+
Object.assign(targetElement.style, {
|
|
336
|
+
top: '0',
|
|
337
|
+
left: '0',
|
|
338
|
+
transform: `translate(${Math.round(computeResponse.x)}px,${Math.round(computeResponse.y)}px)`,
|
|
339
|
+
});
|
|
286
340
|
if (this.overwriteDropdownStyle) {
|
|
287
341
|
const overwriteStyle = await this.overwriteDropdownStyle({
|
|
288
|
-
dropdownRef:
|
|
342
|
+
dropdownRef: targetElement,
|
|
289
343
|
triggerRef: this.triggerElement,
|
|
290
344
|
});
|
|
291
|
-
Object.assign(
|
|
345
|
+
Object.assign(targetElement.style, overwriteStyle);
|
|
292
346
|
}
|
|
293
347
|
}, {
|
|
294
348
|
ancestorResize: true,
|
|
@@ -297,7 +351,7 @@ export class Dropdown {
|
|
|
297
351
|
});
|
|
298
352
|
}
|
|
299
353
|
focusDropdownItem(index) {
|
|
300
|
-
|
|
354
|
+
requestAnimationFrameNoNgZone(() => {
|
|
301
355
|
var _a, _b;
|
|
302
356
|
const button = (_b = (_a = this.dropdownItems[index]) === null || _a === void 0 ? void 0 : _a.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('button');
|
|
303
357
|
if (button) {
|
|
@@ -306,6 +360,9 @@ export class Dropdown {
|
|
|
306
360
|
});
|
|
307
361
|
}
|
|
308
362
|
async componentDidLoad() {
|
|
363
|
+
if (this.show) {
|
|
364
|
+
this.changedShow(true);
|
|
365
|
+
}
|
|
309
366
|
if (!this.trigger) {
|
|
310
367
|
return;
|
|
311
368
|
}
|
|
@@ -346,7 +403,16 @@ export class Dropdown {
|
|
|
346
403
|
this.applyDropdownPosition();
|
|
347
404
|
}
|
|
348
405
|
render() {
|
|
349
|
-
|
|
406
|
+
if (this.enableTopLayer) {
|
|
407
|
+
return (h(Host, { "data-ix-dropdown": this.localUId, class: {
|
|
408
|
+
'dropdown-menu': true,
|
|
409
|
+
show: this.show,
|
|
410
|
+
} }, h("dialog", { ref: this.dialogRef, class: {
|
|
411
|
+
dialog: true,
|
|
412
|
+
overflow: !this.suppressOverflowBehavior,
|
|
413
|
+
}, popover: "manual", "aria-modal": "true", "aria-label": this.header, tabindex: -1, onClick: (event) => this.onDropdownClick(event) }, h("div", { class: "dropdown-container" }, this.header && h("div", { class: "dropdown-header" }, this.header), this.show && h("slot", null)))));
|
|
414
|
+
}
|
|
415
|
+
return (h(Host, { "data-ix-dropdown": this.localUId, class: {
|
|
350
416
|
'dropdown-menu': true,
|
|
351
417
|
show: this.show,
|
|
352
418
|
overflow: !this.suppressOverflowBehavior,
|
|
@@ -354,7 +420,7 @@ export class Dropdown {
|
|
|
354
420
|
margin: '0',
|
|
355
421
|
minWidth: '0px',
|
|
356
422
|
position: this.positioningStrategy,
|
|
357
|
-
}, role: "list", onClick: (event) => this.onDropdownClick(event) }, h("div", {
|
|
423
|
+
}, role: "list", onClick: (event) => this.onDropdownClick(event) }, h("div", { style: { display: 'contents' } }, this.header && h("div", { class: "dropdown-header" }, this.header), this.show && h("slot", null))));
|
|
358
424
|
}
|
|
359
425
|
static get is() { return "ix-dropdown"; }
|
|
360
426
|
static get encapsulation() { return "shadow"; }
|
|
@@ -678,6 +744,29 @@ export class Dropdown {
|
|
|
678
744
|
"setter": false,
|
|
679
745
|
"reflect": false,
|
|
680
746
|
"defaultValue": "false"
|
|
747
|
+
},
|
|
748
|
+
"enableTopLayer": {
|
|
749
|
+
"type": "boolean",
|
|
750
|
+
"attribute": "enable-top-layer",
|
|
751
|
+
"mutable": false,
|
|
752
|
+
"complexType": {
|
|
753
|
+
"original": "boolean",
|
|
754
|
+
"resolved": "boolean",
|
|
755
|
+
"references": {}
|
|
756
|
+
},
|
|
757
|
+
"required": false,
|
|
758
|
+
"optional": false,
|
|
759
|
+
"docs": {
|
|
760
|
+
"tags": [{
|
|
761
|
+
"name": "default",
|
|
762
|
+
"text": "false in v4.x, will default to true in v5.0.0"
|
|
763
|
+
}],
|
|
764
|
+
"text": "Enable Popover API rendering for top-layer positioning."
|
|
765
|
+
},
|
|
766
|
+
"getter": false,
|
|
767
|
+
"setter": false,
|
|
768
|
+
"reflect": false,
|
|
769
|
+
"defaultValue": "false"
|
|
681
770
|
}
|
|
682
771
|
};
|
|
683
772
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n 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 { findElement } from '../utils/find-element';\nimport {\n addDisposableEventListener,\n DisposableEventListener,\n} from '../utils/disposable-event-listener';\nimport { ElementReference } from '../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 @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 initialization of this dropdown is expected to be deferred 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 /** @internal */\n @Prop() suppressOverflowBehavior = 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 private arrowFocusController?: ArrowFocusController;\n\n private localUId = `dropdown-${sequenceId++}`;\n private assignedSubmenu: string[] = [];\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 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 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: !this.suppressOverflowBehavior,\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"]}
|
|
1
|
+
{"version":3,"file":"dropdown.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n autoUpdate,\n computePosition,\n ComputePositionConfig,\n flip,\n inline,\n offset,\n shift,\n} from '@floating-ui/dom';\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { ComponentInterface } from '@stencil/core/internal';\nimport {\n addDisposableEventListener,\n DisposableEventListener,\n} from '../utils/disposable-event-listener';\nimport { ElementReference } from '../utils/element-reference';\nimport { findElement } from '../utils/find-element';\nimport { ArrowFocusController } from '../utils/focus';\nimport { makeRef } from '../utils/make-ref';\nimport { requestAnimationFrameNoNgZone } from '../utils/requestAnimationFrame';\nimport {\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 @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 initialization of this dropdown is expected to be deferred 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 /** @internal */\n @Prop() suppressOverflowBehavior = false;\n\n /**\n * Enable Popover API rendering for top-layer positioning.\n *\n * @default false in v4.x, will default to true in v5.0.0\n */\n @Prop() enableTopLayer: boolean = false;\n\n /**\n * Fire event after visibility of dropdown has changed\n */\n @Event() showChanged!: EventEmitter<boolean>;\n\n private autoUpdateCleanup?: () => void;\n private readonly dialogRef = makeRef<HTMLDialogElement>();\n\n private triggerElement?: Element;\n private anchorElement?: Element;\n private arrowFocusController?: ArrowFocusController;\n\n private localUId = `dropdown-${sequenceId++}`;\n private assignedSubmenu: string[] = [];\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 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 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 this.cleanupOnHide();\n\n if (this.enableTopLayer) {\n await this.hideDropdownAsync();\n }\n return;\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\n if (this.enableTopLayer) {\n await this.showDropdownAsync();\n return;\n }\n\n await this.resolveAnchorElement();\n\n if (this.anchorElement) {\n this.applyDropdownPosition();\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 showDropdownAsync() {\n const popover = await this.dialogRef.waitForCurrent();\n if (!popover) {\n return;\n }\n\n popover.showPopover();\n\n await this.resolveAnchorElement();\n\n if (this.anchorElement) {\n this.applyDropdownPosition();\n } else {\n requestAnimationFrameNoNgZone(() => {\n const referenceElement =\n this.hostElement.parentElement || this.hostElement;\n const refRect = referenceElement.getBoundingClientRect();\n\n const transform = `translate(${Math.round(\n refRect.left\n )}px, ${Math.round(refRect.top)}px)`;\n\n Object.assign(popover.style, {\n top: '0',\n left: '0',\n transform,\n });\n });\n }\n }\n\n private async hideDropdownAsync() {\n const popover = await this.dialogRef.waitForCurrent();\n if (popover?.matches(':popover-open')) {\n popover.hidePopover();\n }\n }\n\n private cleanupOnHide() {\n this.destroyAutoUpdate();\n this.arrowFocusController?.disconnect();\n this.itemObserver?.disconnect();\n this.disposeKeyListener?.();\n }\n\n private async applyDropdownPosition() {\n if (!this.show) {\n return;\n }\n if (!this.anchorElement) {\n return;\n }\n\n const referenceElement = this.anchorElement;\n const isSubmenu = this.isAnchorSubmenu();\n\n let targetElement: HTMLElement = this.hostElement;\n let strategy: 'fixed' | 'absolute' = this.positioningStrategy;\n\n if (this.enableTopLayer) {\n const dialog = await this.dialogRef.waitForCurrent();\n if (!dialog) {\n return;\n }\n targetElement = dialog;\n strategy = 'fixed';\n }\n\n let positionConfig: Partial<ComputePositionConfig> = {\n strategy,\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 this.autoUpdateCleanup = autoUpdate(\n referenceElement,\n targetElement,\n async () => {\n const computeResponse = await computePosition(\n referenceElement,\n targetElement,\n positionConfig\n );\n Object.assign(targetElement.style, {\n top: '0',\n left: '0',\n transform: `translate(${Math.round(computeResponse.x)}px,${Math.round(\n computeResponse.y\n )}px)`,\n });\n\n if (this.overwriteDropdownStyle) {\n const overwriteStyle = await this.overwriteDropdownStyle({\n dropdownRef: targetElement,\n triggerRef: this.triggerElement as HTMLElement,\n });\n\n Object.assign(targetElement.style, overwriteStyle);\n }\n },\n {\n ancestorResize: true,\n ancestorScroll: true,\n elementResize: true,\n }\n );\n }\n\n private focusDropdownItem(index: number) {\n requestAnimationFrameNoNgZone(() => {\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.show) {\n this.changedShow(true);\n }\n\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 if (this.enableTopLayer) {\n return (\n <Host\n data-ix-dropdown={this.localUId}\n class={{\n 'dropdown-menu': true,\n show: this.show,\n }}\n >\n <dialog\n ref={this.dialogRef}\n class={{\n dialog: true,\n overflow: !this.suppressOverflowBehavior,\n }}\n popover=\"manual\"\n aria-modal=\"true\"\n aria-label={this.header}\n tabindex={-1}\n onClick={(event: PointerEvent) => this.onDropdownClick(event)}\n >\n <div class=\"dropdown-container\">\n {this.header && <div class=\"dropdown-header\">{this.header}</div>}\n {this.show && <slot></slot>}\n </div>\n </dialog>\n </Host>\n );\n }\n\n return (\n <Host\n data-ix-dropdown={this.localUId}\n class={{\n 'dropdown-menu': true,\n show: this.show,\n overflow: !this.suppressOverflowBehavior,\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"]}
|
|
@@ -6,8 +6,9 @@
|
|
|
6
6
|
* This source code is licensed under the MIT license found in the
|
|
7
7
|
* LICENSE file in the root directory of this source tree.
|
|
8
8
|
*/
|
|
9
|
-
import { h, Host } from "@stencil/core";
|
|
10
9
|
import { iconChevronDownSmall, iconChevronUpSmall, } from "@siemens/ix-icons/icons";
|
|
10
|
+
import { h, Host } from "@stencil/core";
|
|
11
|
+
import { a11yBoolean } from "../utils/a11y";
|
|
11
12
|
import { makeRef } from "../utils/make-ref";
|
|
12
13
|
export class DropdownButton {
|
|
13
14
|
constructor() {
|
|
@@ -23,9 +24,19 @@ export class DropdownButton {
|
|
|
23
24
|
* Controls if the dropdown will be closed in response to a click event depending on the position of the event relative to the dropdown.
|
|
24
25
|
*/
|
|
25
26
|
this.closeBehavior = 'both';
|
|
27
|
+
/**
|
|
28
|
+
* Enable Popover API rendering for dropdown.
|
|
29
|
+
*
|
|
30
|
+
* @default false
|
|
31
|
+
* @since 4.3.0
|
|
32
|
+
*/
|
|
33
|
+
this.enableTopLayer = false;
|
|
26
34
|
this.dropdownShow = false;
|
|
27
35
|
this.dropdownAnchor = makeRef();
|
|
28
36
|
this.onDropdownShowChanged = (event) => {
|
|
37
|
+
if (this.disabled && event.detail) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
29
40
|
this.dropdownShow = event.detail;
|
|
30
41
|
};
|
|
31
42
|
}
|
|
@@ -38,11 +49,11 @@ export class DropdownButton {
|
|
|
38
49
|
} }));
|
|
39
50
|
}
|
|
40
51
|
render() {
|
|
41
|
-
return (h(Host, { key: '
|
|
52
|
+
return (h(Host, { key: '2232add1b732f43028df1725baa05a08ce025b69', "aria-disabled": a11yBoolean(this.disabled), class: {
|
|
42
53
|
disabled: this.disabled,
|
|
43
|
-
}, ref: this.dropdownAnchor }, h("div", { key: '
|
|
54
|
+
}, ref: this.dropdownAnchor }, h("div", { key: '0bbbbef21fd826b770c8231e449dd5beb9d799e1', class: "dropdown-button" }, this.label ? (h("ix-button", { variant: this.variant, disabled: this.disabled, alignment: "start", ariaLabel: this.ariaLabelDropdownButton, tabIndex: this.disabled ? -1 : 0 }, h("div", { class: 'content' }, this.icon ? (h("ix-icon", { name: this.icon, size: "24", class: 'dropdown-icon' })) : null, h("div", { class: 'button-label' }, this.label), h("ix-icon", { name: this.dropdownShow
|
|
44
55
|
? iconChevronUpSmall
|
|
45
|
-
: iconChevronDownSmall, size: "24" })))) : (h("div", null, h("ix-icon-button", { icon: this.icon, variant: this.variant, disabled: this.disabled }), this.getTriangle()))), h("ix-dropdown", { key: '
|
|
56
|
+
: iconChevronDownSmall, size: "24" })))) : (h("div", null, h("ix-icon-button", { icon: this.icon, variant: this.variant, disabled: this.disabled, tabIndex: this.disabled ? -1 : 0 }), this.getTriangle()))), h("ix-dropdown", { key: 'd5d252fbef9edbf613eab9d1275e4a276582842c', class: "dropdown", trigger: this.dropdownAnchor.waitForCurrent(), placement: this.placement, closeBehavior: this.closeBehavior, enableTopLayer: this.enableTopLayer, onShowChanged: this.onDropdownShowChanged }, h("slot", { key: '648209786997a3ca47955ea921a42dd80ae5a6bc' }))));
|
|
46
57
|
}
|
|
47
58
|
static get is() { return "ix-dropdown-button"; }
|
|
48
59
|
static get encapsulation() { return "shadow"; }
|
|
@@ -101,7 +112,7 @@ export class DropdownButton {
|
|
|
101
112
|
},
|
|
102
113
|
"getter": false,
|
|
103
114
|
"setter": false,
|
|
104
|
-
"reflect":
|
|
115
|
+
"reflect": true,
|
|
105
116
|
"defaultValue": "false"
|
|
106
117
|
},
|
|
107
118
|
"label": {
|
|
@@ -208,6 +219,32 @@ export class DropdownButton {
|
|
|
208
219
|
"getter": false,
|
|
209
220
|
"setter": false,
|
|
210
221
|
"reflect": false
|
|
222
|
+
},
|
|
223
|
+
"enableTopLayer": {
|
|
224
|
+
"type": "boolean",
|
|
225
|
+
"attribute": "enable-top-layer",
|
|
226
|
+
"mutable": false,
|
|
227
|
+
"complexType": {
|
|
228
|
+
"original": "boolean",
|
|
229
|
+
"resolved": "boolean",
|
|
230
|
+
"references": {}
|
|
231
|
+
},
|
|
232
|
+
"required": false,
|
|
233
|
+
"optional": false,
|
|
234
|
+
"docs": {
|
|
235
|
+
"tags": [{
|
|
236
|
+
"name": "default",
|
|
237
|
+
"text": "false"
|
|
238
|
+
}, {
|
|
239
|
+
"name": "since",
|
|
240
|
+
"text": "4.3.0"
|
|
241
|
+
}],
|
|
242
|
+
"text": "Enable Popover API rendering for dropdown."
|
|
243
|
+
},
|
|
244
|
+
"getter": false,
|
|
245
|
+
"setter": false,
|
|
246
|
+
"reflect": false,
|
|
247
|
+
"defaultValue": "false"
|
|
211
248
|
}
|
|
212
249
|
};
|
|
213
250
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown-button.js","sourceRoot":"","sources":["../../../src/components/dropdown-button/dropdown-button.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEzE,OAAO,
|
|
1
|
+
{"version":3,"file":"dropdown-button.js","sourceRoot":"","sources":["../../../src/components/dropdown-button/dropdown-button.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n iconChevronDownSmall,\n iconChevronUpSmall,\n} from '@siemens/ix-icons/icons';\nimport { Component, Element, h, Host, Prop, State } from '@stencil/core';\nimport { AlignedPlacement } from '../dropdown/placement';\nimport { a11yBoolean } from '../utils/a11y';\nimport { makeRef } from '../utils/make-ref';\nimport type { DropdownButtonVariant } from './dropdown-button.types';\n\n@Component({\n tag: 'ix-dropdown-button',\n styleUrl: 'dropdown-button.scss',\n shadow: true,\n})\nexport class DropdownButton {\n @Element() hostElement!: HTMLIxDropdownButtonElement;\n\n /**\n * Button variant\n */\n @Prop() variant: DropdownButtonVariant = 'primary';\n\n /**\n * Disable button\n */\n @Prop({ reflect: true }) disabled = false;\n\n /**\n * Set label\n */\n @Prop() label?: string;\n\n /**\n * Button icon\n */\n @Prop() icon?: string;\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 */\n @Prop() closeBehavior: 'inside' | 'outside' | 'both' | boolean = 'both';\n\n /**\n * Placement of the dropdown\n */\n @Prop() placement?: AlignedPlacement;\n\n /**\n * ARIA label for the dropdown button\n * Will be set as aria-label on the nested HTML button element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelDropdownButton?: string;\n\n /**\n * Enable Popover API rendering for dropdown.\n *\n * @default false\n * @since 4.3.0\n */\n @Prop() enableTopLayer: boolean = false;\n\n @State() dropdownShow = false;\n\n private readonly dropdownAnchor = makeRef<HTMLElement>();\n\n private getTriangle() {\n return (\n <div\n class={{\n triangle: true,\n [this.variant]: true,\n hide: !!this.label,\n disabled: this.disabled,\n }}\n ></div>\n );\n }\n\n private readonly onDropdownShowChanged = (event: CustomEvent<boolean>) => {\n if (this.disabled && event.detail) {\n return;\n }\n this.dropdownShow = event.detail;\n };\n\n render() {\n return (\n <Host\n aria-disabled={a11yBoolean(this.disabled)}\n class={{\n disabled: this.disabled,\n }}\n ref={this.dropdownAnchor}\n >\n <div class=\"dropdown-button\">\n {this.label ? (\n <ix-button\n variant={this.variant}\n disabled={this.disabled}\n alignment=\"start\"\n ariaLabel={this.ariaLabelDropdownButton}\n tabIndex={this.disabled ? -1 : 0}\n >\n <div class={'content'}>\n {this.icon ? (\n <ix-icon\n name={this.icon}\n size=\"24\"\n class={'dropdown-icon'}\n ></ix-icon>\n ) : null}\n <div class={'button-label'}>{this.label}</div>\n <ix-icon\n name={\n this.dropdownShow\n ? iconChevronUpSmall\n : iconChevronDownSmall\n }\n size=\"24\"\n ></ix-icon>\n </div>\n </ix-button>\n ) : (\n <div>\n <ix-icon-button\n icon={this.icon}\n variant={this.variant}\n disabled={this.disabled}\n tabIndex={this.disabled ? -1 : 0}\n ></ix-icon-button>\n {this.getTriangle()}\n </div>\n )}\n </div>\n\n <ix-dropdown\n class=\"dropdown\"\n trigger={this.dropdownAnchor.waitForCurrent()}\n placement={this.placement}\n closeBehavior={this.closeBehavior}\n enableTopLayer={this.enableTopLayer}\n onShowChanged={this.onDropdownShowChanged}\n >\n <slot></slot>\n </ix-dropdown>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
import { h, Host } from "@stencil/core";
|
|
10
10
|
export class DropdownHeader {
|
|
11
11
|
render() {
|
|
12
|
-
return (h(Host, { key: '
|
|
12
|
+
return (h(Host, { key: '6ec911ed6360d3e523a5a871007d874d67cf1334' }, h("ix-typography", { key: 'f1a8142ff1d8212a389649a6b7cc31495ccb9fa0', class: 'category-text', format: 'h5' }, this.label)));
|
|
13
13
|
}
|
|
14
14
|
static get is() { return "ix-dropdown-header"; }
|
|
15
15
|
static get encapsulation() { return "shadow"; }
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import { h, Host, } from "@stencil/core";
|
|
10
10
|
import { iconChevronRightSmall, iconSingleCheck, } from "@siemens/ix-icons/icons";
|
|
11
|
+
import { a11yBoolean } from "../utils/a11y";
|
|
11
12
|
export class DropdownItem {
|
|
12
13
|
constructor() {
|
|
13
14
|
/**
|
|
@@ -41,15 +42,20 @@ export class DropdownItem {
|
|
|
41
42
|
this.icon !== undefined);
|
|
42
43
|
}
|
|
43
44
|
render() {
|
|
44
|
-
return (h(Host, { key: '
|
|
45
|
+
return (h(Host, { key: '6792db1dd356481085735838df4cfcdf11cee1ba', class: {
|
|
45
46
|
hover: this.hover,
|
|
46
47
|
'icon-only': this.isIconOnly(),
|
|
47
48
|
disabled: this.disabled,
|
|
48
49
|
submenu: this.isSubMenu,
|
|
49
|
-
}, role: "listitem" }, h("button", { key: '
|
|
50
|
+
}, role: "listitem" }, h("button", { key: '878eed19e5127942f10f561db2205930a7bb01ef', type: "button", tabIndex: this.disabled ? -1 : 0, class: {
|
|
50
51
|
'dropdown-item': true,
|
|
51
52
|
'no-checked-field': this.suppressChecked,
|
|
52
|
-
|
|
53
|
+
disabled: this.disabled,
|
|
54
|
+
}, onClick: () => {
|
|
55
|
+
if (!this.disabled) {
|
|
56
|
+
this.emitItemClick();
|
|
57
|
+
}
|
|
58
|
+
}, "aria-label": this.ariaLabelButton, "aria-disabled": a11yBoolean(this.disabled), disabled: this.disabled }, !this.suppressChecked ? (h("div", { class: "dropdown-item-checked" }, this.checked ? (h("ix-icon", { class: "checkmark", name: iconSingleCheck, size: "16" })) : null)) : null, this.icon ? (h("ix-icon", { class: "dropdown-item-icon", name: this.icon, "aria-label": this.ariaLabelIcon })) : null, h("div", { key: 'faf59089cf0887b1fc1907b6e98b1f1cd2aa62ab', class: "dropdown-item-text" }, this.label, h("slot", { key: '112c5601bae07f6ab8807b42014a268f7e402d59' })), this.isSubMenu ? (h("ix-icon", { name: iconChevronRightSmall, class: 'submenu-icon' })) : null)));
|
|
53
59
|
}
|
|
54
60
|
static get is() { return "ix-dropdown-item"; }
|
|
55
61
|
static get encapsulation() { return "shadow"; }
|
|
@@ -181,7 +187,7 @@ export class DropdownItem {
|
|
|
181
187
|
},
|
|
182
188
|
"getter": false,
|
|
183
189
|
"setter": false,
|
|
184
|
-
"reflect":
|
|
190
|
+
"reflect": true,
|
|
185
191
|
"defaultValue": "false"
|
|
186
192
|
},
|
|
187
193
|
"checked": {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown-item.js","sourceRoot":"","sources":["../../../src/components/dropdown-item/dropdown-item.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,SAAS,EACT,OAAO,EACP,KAAK,EAEL,CAAC,EACD,IAAI,EACJ,MAAM,EACN,IAAI,GACL,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,qBAAqB,EACrB,eAAe,GAChB,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"dropdown-item.js","sourceRoot":"","sources":["../../../src/components/dropdown-item/dropdown-item.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n} from '@stencil/core';\nimport { DropdownItemWrapper } from '../dropdown/dropdown-controller';\nimport {\n iconChevronRightSmall,\n iconSingleCheck,\n} from '@siemens/ix-icons/icons';\nimport { a11yBoolean } from '../utils/a11y';\n\n@Component({\n tag: 'ix-dropdown-item',\n styleUrl: 'dropdown-item.scss',\n shadow: true,\n})\nexport class DropdownItem implements DropdownItemWrapper {\n @Element() hostElement!: HTMLIxDropdownItemElement;\n\n /**\n * Label of dropdown item\n */\n @Prop() label?: string;\n\n /**\n * Icon of dropdown item\n */\n @Prop() icon?: string;\n\n /**\n * ARIA label for the icon\n */\n @Prop() ariaLabelIcon?: string;\n\n /**\n * ARIA label for the item's button\n * Will be set as aria-label for the nested HTML button element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelButton?: string;\n\n /**\n * Display hover state\n */\n @Prop() hover = false;\n\n /**\n * Disable item and remove event listeners\n */\n @Prop({ reflect: true }) disabled = false;\n\n /**\n * Whether the item is checked or not. If true a checkmark will mark the item as checked.\n */\n @Prop() checked = false;\n\n /** @internal */\n @Prop() isSubMenu = false;\n\n /** @internal */\n @Prop() suppressChecked = false;\n\n /** @internal */\n @Event() itemClick!: EventEmitter<HTMLIxDropdownItemElement>;\n\n /** @internal */\n @Method()\n async emitItemClick() {\n this.itemClick.emit(this.hostElement);\n }\n\n /** @internal */\n @Method()\n async getDropdownItemElement() {\n return this.hostElement;\n }\n\n private isIconOnly() {\n return (\n this.label === undefined &&\n this.hostElement.innerText === '' &&\n this.icon !== undefined\n );\n }\n\n render() {\n return (\n <Host\n class={{\n hover: this.hover,\n 'icon-only': this.isIconOnly(),\n disabled: this.disabled,\n submenu: this.isSubMenu,\n }}\n role=\"listitem\"\n >\n <button\n type=\"button\"\n tabIndex={this.disabled ? -1 : 0}\n class={{\n 'dropdown-item': true,\n 'no-checked-field': this.suppressChecked,\n disabled: this.disabled,\n }}\n onClick={() => {\n if (!this.disabled) {\n this.emitItemClick();\n }\n }}\n aria-label={this.ariaLabelButton}\n aria-disabled={a11yBoolean(this.disabled)}\n disabled={this.disabled}\n >\n {!this.suppressChecked ? (\n <div class=\"dropdown-item-checked\">\n {this.checked ? (\n <ix-icon\n class=\"checkmark\"\n name={iconSingleCheck}\n size=\"16\"\n ></ix-icon>\n ) : null}\n </div>\n ) : null}\n {this.icon ? (\n <ix-icon\n class=\"dropdown-item-icon\"\n name={this.icon}\n aria-label={this.ariaLabelIcon}\n ></ix-icon>\n ) : null}\n <div class=\"dropdown-item-text\">\n {this.label}\n <slot></slot>\n </div>\n {this.isSubMenu ? (\n <ix-icon\n name={iconChevronRightSmall}\n class={'submenu-icon'}\n ></ix-icon>\n ) : null}\n </button>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
import { h, Host } from "@stencil/core";
|
|
10
10
|
export class DropdownQuickActions {
|
|
11
11
|
render() {
|
|
12
|
-
return (h(Host, { key: '
|
|
12
|
+
return (h(Host, { key: '5b9938da726bfe31dffe1667ff81c1b3a5935e1e' }, h("slot", { key: 'a3f04dc61e5896ede45c0484506b3ee611b413c8' })));
|
|
13
13
|
}
|
|
14
14
|
static get is() { return "ix-dropdown-quick-actions"; }
|
|
15
15
|
static get encapsulation() { return "shadow"; }
|
|
@@ -15,7 +15,7 @@ export class EmptyState {
|
|
|
15
15
|
this.layout = 'large';
|
|
16
16
|
}
|
|
17
17
|
render() {
|
|
18
|
-
return (h(Host, { key: '
|
|
18
|
+
return (h(Host, { key: 'f87d35f9c8ae39f3ed46f8ebf0fe1b0487d91108', class: `emptyState emptyState--${this.layout}` }, this.icon && (h("div", { key: '41eb63bad03958baeb5f683895ea196f883b5312', class: "emptyState__icon" }, h("ix-icon", { key: '3bd1032f996cdf7c046f767ac9fec79756a7b8e5', name: this.icon, size: this.layout === 'large' ? '32' : '32', color: "color-soft-text", "aria-label": this.ariaLabelEmptyStateIcon }))), h("div", { key: '1a287d69a879f7dd52e9801e9fd0a973849fc244', class: "emptyState__content" }, h("div", { key: '8e2ff9b6f189e732dd16bf943922b09f32b9adfc', class: "content__label" }, h("ix-typography", { key: '74bc4394d9b94c2d3161091b71fbeb8ca091d6d8', format: this.layout === 'large' ? 'h3' : 'body' }, this.header), this.subHeader && (h("div", { key: '43e21aec14323f18a4df1116c7841702a945bcfe', class: "label__subHeader" }, this.subHeader))), this.action && (h("div", { key: 'd80c01f388e99df9affc47086ac2f67ef89ca8ca', class: "content__action" }, h("ix-button", { key: '0ba60803afb761fbae046546ed06f6ab07bc728c', onClick: () => this.actionClick.emit() }, this.action))))));
|
|
19
19
|
}
|
|
20
20
|
static get is() { return "ix-empty-state"; }
|
|
21
21
|
static get encapsulation() { return "shadow"; }
|
|
@@ -128,11 +128,11 @@ export class EventList {
|
|
|
128
128
|
});
|
|
129
129
|
}
|
|
130
130
|
render() {
|
|
131
|
-
return (h(Host, { key: '
|
|
131
|
+
return (h(Host, { key: 'a21a4d23666ba43d7d10bd569c7a9feb01423b1f', class: {
|
|
132
132
|
'item-size-s': this.itemHeight === 'S',
|
|
133
133
|
'item-size-l': this.itemHeight === 'L',
|
|
134
134
|
compact: this.compact,
|
|
135
|
-
} }, h("div", { key: '
|
|
135
|
+
} }, h("div", { key: 'cbb5ffb72ce1a393c99df6624ffc3e36a3d6a4b5', role: "list" }, h("slot", { key: '50ca67f2071b058ee4e43bfcad1bf23d5fc623d3' }))));
|
|
136
136
|
}
|
|
137
137
|
static get is() { return "ix-event-list"; }
|
|
138
138
|
static get encapsulation() { return "shadow"; }
|