@siemens/ix 3.0.0-alpha.4 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/ix-action-card.js +4 -4
- package/components/ix-action-card.js.map +1 -1
- package/components/ix-application-header.js +1 -1
- package/components/ix-application-switch-modal.js +4 -4
- package/components/ix-application.js +3 -3
- package/components/ix-application.js.map +1 -1
- package/components/ix-avatar.js +1 -1
- package/components/ix-basic-navigation.js +5 -5
- package/components/ix-blind.js +6 -7
- package/components/ix-blind.js.map +1 -1
- package/components/ix-breadcrumb.js +3 -5
- package/components/ix-breadcrumb.js.map +1 -1
- package/components/ix-button.js +1 -1
- package/components/ix-card-accordion.js +1 -1
- package/components/ix-card-content.js +1 -1
- package/components/ix-card-list.js +9 -11
- package/components/ix-card-list.js.map +1 -1
- package/components/ix-card-title.js +1 -1
- package/components/ix-card.js +1 -1
- package/components/ix-category-filter.js +6 -6
- package/components/ix-category-filter.js.map +1 -1
- package/components/ix-checkbox-group.js +55 -8
- package/components/ix-checkbox-group.js.map +1 -1
- package/components/ix-checkbox.js +15 -7
- package/components/ix-checkbox.js.map +1 -1
- package/components/ix-chip.js +8 -7
- package/components/ix-chip.js.map +1 -1
- package/components/ix-col.js +1 -1
- package/components/ix-content-header.js +2 -2
- package/components/ix-content.js +4 -4
- package/components/ix-content.js.map +1 -1
- package/components/ix-custom-field.js +6 -6
- package/components/ix-custom-field.js.map +1 -1
- package/components/ix-date-dropdown.js +12 -16
- package/components/ix-date-dropdown.js.map +1 -1
- package/components/ix-date-input.js +14 -14
- package/components/ix-date-input.js.map +1 -1
- package/components/ix-date-picker.js +1 -1
- package/components/ix-date-time-card.js +1 -1
- package/components/ix-datetime-picker.js +12 -22
- package/components/ix-datetime-picker.js.map +1 -1
- package/components/ix-divider.js +1 -1
- package/components/ix-drawer.js +1 -1
- package/components/ix-dropdown-button.js +5 -6
- package/components/ix-dropdown-button.js.map +1 -1
- package/components/ix-dropdown-header.js +2 -2
- package/components/ix-dropdown-header.js.map +1 -1
- package/components/ix-dropdown-quick-actions.js +1 -1
- package/components/ix-dropdown-quick-actions.js.map +1 -1
- package/components/ix-dropdown.js +1 -1
- package/components/ix-empty-state.js +3 -3
- package/components/ix-empty-state.js.map +1 -1
- package/components/ix-expanding-search.js +5 -6
- package/components/ix-expanding-search.js.map +1 -1
- 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.js +5 -7
- package/components/ix-flip-tile.js.map +1 -1
- package/components/ix-group-context-menu.js +1 -1
- package/components/ix-group.js +2 -2
- package/components/ix-helper-text.js +2 -2
- package/components/ix-icon-button.js +1 -1
- package/components/ix-icon-toggle-button.js +1 -1
- package/components/ix-icon-toggle-button.js.map +1 -1
- package/components/ix-input-group.js +1 -1
- package/components/ix-input-group.js.map +1 -1
- package/components/ix-input.js +18 -11
- package/components/ix-input.js.map +1 -1
- package/components/ix-key-value-list.js +1 -1
- package/components/ix-key-value-list.js.map +1 -1
- package/components/ix-key-value.js +1 -1
- package/components/ix-key-value.js.map +1 -1
- package/components/ix-layout-auto.js +1 -1
- package/components/ix-layout-auto.js.map +1 -1
- package/components/ix-layout-grid.js +1 -1
- package/components/ix-link-button.js +3 -3
- package/components/ix-link-button.js.map +1 -1
- package/components/ix-map-navigation-overlay.js +1 -1
- package/components/ix-map-navigation.js +8 -9
- package/components/ix-map-navigation.js.map +1 -1
- package/components/ix-menu-about-news.js +3 -3
- package/components/ix-menu-about.js +4 -4
- package/components/ix-menu-avatar.js +6 -8
- package/components/ix-menu-avatar.js.map +1 -1
- package/components/ix-menu-category.js +10 -10
- 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.js +1 -1
- package/components/ix-menu.js +17 -19
- package/components/ix-menu.js.map +1 -1
- package/components/ix-message-bar.js +1 -1
- package/components/ix-modal-content.js +1 -1
- package/components/ix-modal-footer.js +1 -1
- package/components/ix-modal-footer.js.map +1 -1
- package/components/ix-modal-header.js +1 -1
- package/components/ix-modal.js +3 -7
- package/components/ix-modal.js.map +1 -1
- package/components/ix-number-input.js +20 -15
- package/components/ix-number-input.js.map +1 -1
- package/components/ix-pagination.js +10 -10
- package/components/ix-pagination.js.map +1 -1
- package/components/ix-pane-layout.js +1 -1
- package/components/ix-pane-layout.js.map +1 -1
- package/components/ix-pane.js +8 -8
- package/components/ix-pane.js.map +1 -1
- package/components/ix-pill.js +2 -2
- package/components/ix-push-card.js +6 -7
- package/components/ix-push-card.js.map +1 -1
- package/components/ix-radio-group.js +37 -11
- package/components/ix-radio-group.js.map +1 -1
- package/components/ix-radio.js +25 -7
- package/components/ix-radio.js.map +1 -1
- package/components/ix-row.js +1 -1
- package/components/ix-select.js +1 -1
- package/components/ix-slider.js +8 -8
- package/components/ix-slider.js.map +1 -1
- package/components/ix-split-button.js +4 -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 +8 -8
- package/components/ix-textarea.js.map +1 -1
- package/components/ix-time-picker.js +1 -1
- package/components/ix-toast-container.js +2 -2
- package/components/ix-toast.js +1 -1
- package/components/ix-toggle-button.js +3 -3
- package/components/ix-toggle-button.js.map +1 -1
- package/components/ix-toggle.js +38 -5
- package/components/ix-toggle.js.map +1 -1
- package/components/ix-tooltip.js +1 -1
- package/components/ix-tree.js +56 -52
- package/components/ix-tree.js.map +1 -1
- package/components/ix-typography.js +1 -1
- package/components/ix-upload.js +1 -1
- package/components/ix-validation-tooltip.js +3 -5
- package/components/ix-validation-tooltip.js.map +1 -1
- package/components/{p-DFQ_caA4.js → p-8eL4ti2y.js} +4 -4
- package/components/{p-DFQ_caA4.js.map → p-8eL4ti2y.js.map} +1 -1
- package/components/{p-Dfzl82x1.js → p-B19EzNYi.js} +3 -3
- package/components/{p-Dfzl82x1.js.map → p-B19EzNYi.js.map} +1 -1
- package/components/{p-B9lvhAOc.js → p-B60BmY2x.js} +3 -3
- package/components/{p-B9lvhAOc.js.map → p-B60BmY2x.js.map} +1 -1
- package/components/{p-BuK5WByk.js → p-B9XDeCpV.js} +4 -4
- package/components/{p-BuK5WByk.js.map → p-B9XDeCpV.js.map} +1 -1
- package/components/{p-12nKYxsa.js → p-BPVegBx7.js} +9 -11
- package/components/p-BPVegBx7.js.map +1 -0
- package/components/{p-C8vn2GFY.js → p-BRCAzgk8.js} +4 -4
- package/components/p-BRCAzgk8.js.map +1 -0
- package/components/{p-iEAZQC4t.js → p-BXPo5zF6.js} +3 -3
- package/components/{p-iEAZQC4t.js.map → p-BXPo5zF6.js.map} +1 -1
- package/components/{p-CB1ADCkU.js → p-B_C2-EkQ.js} +4 -5
- package/components/p-B_C2-EkQ.js.map +1 -0
- package/components/{p-DIzxAERt.js → p-Bcmjgmqd.js} +4 -5
- package/components/p-Bcmjgmqd.js.map +1 -0
- package/components/{p-bM5r59DG.js → p-Bw3J9644.js} +5 -5
- package/components/{p-bM5r59DG.js.map → p-Bw3J9644.js.map} +1 -1
- package/components/{p-DylMlJTZ.js → p-C8xOvcAt.js} +4 -7
- package/components/p-C8xOvcAt.js.map +1 -0
- package/components/{p-2g5-4fWy.js → p-CGLA6FT7.js} +5 -6
- package/components/p-CGLA6FT7.js.map +1 -0
- package/components/{p-C7EBCKmV.js → p-CKoR0lxP.js} +3 -3
- package/components/{p-C7EBCKmV.js.map → p-CKoR0lxP.js.map} +1 -1
- package/components/{p-pyY5jSfE.js → p-CPs2id8p.js} +5 -5
- package/components/{p-pyY5jSfE.js.map → p-CPs2id8p.js.map} +1 -1
- package/components/{p-CniBfLG8.js → p-CTuKljhZ.js} +3 -3
- package/components/{p-CniBfLG8.js.map → p-CTuKljhZ.js.map} +1 -1
- package/components/{p-CVSy9bZ3.js → p-ClepN0Ea.js} +3 -3
- package/components/{p-CVSy9bZ3.js.map → p-ClepN0Ea.js.map} +1 -1
- package/components/{p-DXzHgqiB.js → p-Cu4GsGII.js} +3 -3
- package/components/p-Cu4GsGII.js.map +1 -0
- package/components/{p-C1BF91hb.js → p-CufZ3bGn.js} +3 -3
- package/components/{p-C1BF91hb.js.map → p-CufZ3bGn.js.map} +1 -1
- package/components/{p-0nVQO6bk.js → p-CwYYFZjd.js} +7 -7
- package/components/{p-0nVQO6bk.js.map → p-CwYYFZjd.js.map} +1 -1
- package/components/{p-BwyqOnwc.js → p-CxztL6IE.js} +18 -25
- package/components/p-CxztL6IE.js.map +1 -0
- package/components/{p-B-zHEqXz.js → p-Cyxle5Ec.js} +5 -5
- package/components/{p-B-zHEqXz.js.map → p-Cyxle5Ec.js.map} +1 -1
- package/components/{p-DPZsirnB.js → p-DAYuUWi5.js} +5 -5
- package/components/{p-DPZsirnB.js.map → p-DAYuUWi5.js.map} +1 -1
- package/components/{p-B55mem60.js → p-DPZN-4Ph.js} +4 -4
- package/components/{p-B55mem60.js.map → p-DPZN-4Ph.js.map} +1 -1
- package/components/{p-BgpUzYBq.js → p-DUuL9bnV.js} +3 -3
- package/components/{p-BgpUzYBq.js.map → p-DUuL9bnV.js.map} +1 -1
- package/components/{p-BBSHeR_p.js → p-DVOgkNlf.js} +3 -3
- package/components/p-DVOgkNlf.js.map +1 -0
- package/components/p-Dn_WjwtW.js.map +1 -1
- package/components/{p-D0LdqSVb.js → p-FayACwNG.js} +10 -18
- package/components/p-FayACwNG.js.map +1 -0
- package/components/{p-CjvgrV9j.js → p-QHGR-zzJ.js} +3 -3
- package/components/{p-CjvgrV9j.js.map → p-QHGR-zzJ.js.map} +1 -1
- package/components/{p-DDisdyRU.js → p-R4QcECdA.js} +5 -5
- package/components/{p-DDisdyRU.js.map → p-R4QcECdA.js.map} +1 -1
- package/components/{p-Bnux5wOx.js → p-UMH0sD7L.js} +5 -5
- package/components/{p-Bnux5wOx.js.map → p-UMH0sD7L.js.map} +1 -1
- package/components/{p-DM43N7pD.js → p-VXLdiXU0.js} +11 -19
- package/components/p-VXLdiXU0.js.map +1 -0
- package/components/{p-DGeWaNlt.js → p-aw_FhcJ5.js} +4 -2
- package/components/p-aw_FhcJ5.js.map +1 -0
- package/components/{p-D_wwWxx8.js → p-d7CnwTHv.js} +3 -6
- package/components/p-d7CnwTHv.js.map +1 -0
- package/components/{p-Dy35mbzK.js → p-uhiF1LKf.js} +4 -6
- package/components/p-uhiF1LKf.js.map +1 -0
- package/components/{p-qnnCtPgc.js → p-zx7LlxPa.js} +3 -3
- package/components/{p-qnnCtPgc.js.map → p-zx7LlxPa.js.map} +1 -1
- package/dist/cjs/index-DIFIjYrm.js.map +1 -1
- package/dist/cjs/{input.util-DuJG4-L-.js → input.util-DOEvwiFv.js} +4 -4
- package/dist/cjs/input.util-DOEvwiFv.js.map +1 -0
- package/dist/cjs/ix-action-card.cjs.entry.js +1 -1
- package/dist/cjs/ix-action-card.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-action-card.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-application-header.cjs.entry.js +3 -5
- package/dist/cjs/ix-application-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-application-header.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-application.cjs.entry.js +3 -3
- package/dist/cjs/ix-application.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-application.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-avatar.ix-menu-avatar-item.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-avatar_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-blind.cjs.entry.js +5 -6
- package/dist/cjs/ix-blind.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-blind.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-breadcrumb.cjs.entry.js +2 -4
- package/dist/cjs/ix-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-breadcrumb.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-button.cjs.entry.js +2 -5
- package/dist/cjs/ix-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-button.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-card-accordion.ix-card-title.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-card-accordion_2.cjs.entry.js +4 -5
- package/dist/cjs/ix-card-accordion_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-card-list.cjs.entry.js +4 -6
- package/dist/cjs/ix-card-list.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-card-list.entry.cjs.js.map +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 +4 -4
- package/dist/cjs/ix-card_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-category-filter.cjs.entry.js +3 -3
- package/dist/cjs/ix-category-filter.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-category-filter.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-checkbox-group.cjs.entry.js +47 -3
- package/dist/cjs/ix-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-checkbox-group.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-checkbox.cjs.entry.js +12 -5
- package/dist/cjs/ix-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-checkbox.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-chip.cjs.entry.js +5 -4
- package/dist/cjs/ix-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-chip.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 +9 -17
- package/dist/cjs/ix-col_4.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-content.cjs.entry.js +4 -4
- package/dist/cjs/ix-content.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-content.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-custom-field.cjs.entry.js +2 -2
- package/dist/cjs/ix-custom-field.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-custom-field.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-date-dropdown.cjs.entry.js +4 -8
- package/dist/cjs/ix-date-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-date-dropdown.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-date-input.cjs.entry.js +5 -5
- package/dist/cjs/ix-date-input.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-date-input.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-date-time-card.cjs.entry.js +1 -1
- package/dist/cjs/ix-date-time-card.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-date-time-card.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-datetime-picker.cjs.entry.js +2 -12
- package/dist/cjs/ix-datetime-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-datetime-picker.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-divider.cjs.entry.js +1 -1
- package/dist/cjs/ix-divider.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-divider.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-dropdown-button.cjs.entry.js +2 -3
- package/dist/cjs/ix-dropdown-button.cjs.entry.js.map +1 -1
- 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-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-dropdown-header.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js +1 -1
- package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-dropdown-quick-actions.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-dropdown.cjs.entry.js +2 -4
- package/dist/cjs/ix-dropdown.cjs.entry.js.map +1 -1
- 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-empty-state.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-empty-state.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-expanding-search.cjs.entry.js +4 -5
- package/dist/cjs/ix-expanding-search.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-expanding-search.entry.cjs.js.map +1 -1
- 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 +1 -1
- package/dist/cjs/ix-field-label_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-filter-chip.ix-select-item.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-filter-chip_2.cjs.entry.js +1 -2
- package/dist/cjs/ix-filter-chip_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-flip-tile.cjs.entry.js +4 -6
- package/dist/cjs/ix-flip-tile.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-flip-tile.entry.cjs.js.map +1 -1
- 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 +1 -4
- package/dist/cjs/ix-icon-button_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +1 -1
- package/dist/cjs/ix-icon-toggle-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-icon-toggle-button.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-input-group.cjs.entry.js +1 -1
- package/dist/cjs/ix-input-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-input-group.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-input.cjs.entry.js +12 -6
- package/dist/cjs/ix-input.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-input.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-key-value-list.cjs.entry.js +1 -1
- package/dist/cjs/ix-key-value-list.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-key-value-list.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-key-value.cjs.entry.js +1 -1
- package/dist/cjs/ix-key-value.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-key-value.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-layout-auto.cjs.entry.js +1 -1
- package/dist/cjs/ix-layout-auto.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-layout-auto.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-link-button.cjs.entry.js +3 -3
- package/dist/cjs/ix-link-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-link-button.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-map-navigation.cjs.entry.js +2 -3
- package/dist/cjs/ix-map-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-map-navigation.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-menu-avatar.cjs.entry.js +2 -4
- package/dist/cjs/ix-menu-avatar.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-menu-avatar.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-menu-category.cjs.entry.js +5 -5
- package/dist/cjs/ix-menu-category.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-menu-category.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-menu-item.cjs.entry.js +3 -3
- package/dist/cjs/ix-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-menu-item.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-menu.cjs.entry.js +12 -14
- package/dist/cjs/ix-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-menu.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-modal-content.ix-modal-header.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-modal-content_2.cjs.entry.js +2 -2
- package/dist/cjs/ix-modal-content_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-modal-footer.cjs.entry.js +1 -1
- package/dist/cjs/ix-modal-footer.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-modal-footer.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-modal.cjs.entry.js +3 -7
- package/dist/cjs/ix-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-modal.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-number-input.cjs.entry.js +14 -10
- package/dist/cjs/ix-number-input.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-number-input.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-pagination.cjs.entry.js +2 -2
- package/dist/cjs/ix-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-pagination.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-pane-layout.cjs.entry.js +1 -1
- package/dist/cjs/ix-pane-layout.cjs.entry.js.map +1 -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-pane.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-pane.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-push-card.cjs.entry.js +1 -2
- package/dist/cjs/ix-push-card.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-push-card.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-radio-group.cjs.entry.js +29 -6
- package/dist/cjs/ix-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-radio-group.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-radio.cjs.entry.js +23 -6
- package/dist/cjs/ix-radio.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-radio.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-select.cjs.entry.js +9 -16
- package/dist/cjs/ix-select.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-select.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-slider.cjs.entry.js +6 -6
- package/dist/cjs/ix-slider.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-slider.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-split-button.cjs.entry.js +1 -2
- package/dist/cjs/ix-split-button.cjs.entry.js.map +1 -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 +5 -5
- package/dist/cjs/ix-tab-item_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-textarea.cjs.entry.js +4 -4
- package/dist/cjs/ix-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-textarea.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-time-picker.cjs.entry.js +4 -12
- package/dist/cjs/ix-time-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-time-picker.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-toggle-button.cjs.entry.js +3 -3
- package/dist/cjs/ix-toggle-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-toggle-button.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-toggle.cjs.entry.js +35 -3
- package/dist/cjs/ix-toggle.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-toggle.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-tooltip.cjs.entry.js +1 -2
- package/dist/cjs/ix-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-tooltip.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-tree.cjs.entry.js +55 -51
- package/dist/cjs/ix-tree.cjs.entry.js.map +1 -1
- 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-typography.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-typography.entry.cjs.js.map +1 -1
- package/dist/cjs/ix-validation-tooltip.cjs.entry.js +3 -5
- package/dist/cjs/ix-validation-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-validation-tooltip.entry.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/siemens-ix.cjs.js +1 -1
- package/dist/cjs/{validation-B-wzGaWF.js → validation-othAjI_Z.js} +4 -2
- package/dist/cjs/validation-othAjI_Z.js.map +1 -0
- package/dist/collection/components/action-card/action-card.js +1 -4
- package/dist/collection/components/action-card/action-card.js.map +1 -1
- package/dist/collection/components/application/application.js +3 -6
- package/dist/collection/components/application/application.js.map +1 -1
- package/dist/collection/components/application-header/application-header.js +5 -13
- package/dist/collection/components/application-header/application-header.js.map +1 -1
- package/dist/collection/components/avatar/avatar.js +2 -11
- package/dist/collection/components/avatar/avatar.js.map +1 -1
- package/dist/collection/components/blind/blind.js +8 -18
- package/dist/collection/components/blind/blind.js.map +1 -1
- package/dist/collection/components/breadcrumb/breadcrumb.js +3 -8
- package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
- package/dist/collection/components/button/button.js +4 -13
- package/dist/collection/components/button/button.js.map +1 -1
- package/dist/collection/components/card/card.js +5 -11
- package/dist/collection/components/card/card.js.map +1 -1
- package/dist/collection/components/card-accordion/card-accordion.js +4 -11
- package/dist/collection/components/card-accordion/card-accordion.js.map +1 -1
- package/dist/collection/components/card-content/card-content.js +1 -4
- package/dist/collection/components/card-content/card-content.js.map +1 -1
- package/dist/collection/components/card-list/card-list.js +5 -13
- package/dist/collection/components/card-list/card-list.js.map +1 -1
- package/dist/collection/components/card-title/card-title.js +1 -3
- package/dist/collection/components/card-title/card-title.js.map +1 -1
- package/dist/collection/components/category-filter/category-filter.js +4 -7
- package/dist/collection/components/category-filter/category-filter.js.map +1 -1
- package/dist/collection/components/checkbox/checkbox.js +47 -7
- package/dist/collection/components/checkbox/checkbox.js.map +1 -1
- package/dist/collection/components/checkbox-group/checkbox-group.js +115 -5
- package/dist/collection/components/checkbox-group/checkbox-group.js.map +1 -1
- package/dist/collection/components/checkbox-group/test/checkbox-group.ct.js +48 -0
- package/dist/collection/components/checkbox-group/test/checkbox-group.ct.js.map +1 -0
- package/dist/collection/components/chip/chip.js +6 -8
- package/dist/collection/components/chip/chip.js.map +1 -1
- package/dist/collection/components/col/col.js +1 -4
- package/dist/collection/components/col/col.js.map +1 -1
- package/dist/collection/components/content/content.css +1 -3
- package/dist/collection/components/content/content.js +3 -4
- package/dist/collection/components/content/content.js.map +1 -1
- package/dist/collection/components/custom-field/custom-field.js +1 -4
- package/dist/collection/components/custom-field/custom-field.js.map +1 -1
- package/dist/collection/components/date-dropdown/date-dropdown.js +7 -23
- package/dist/collection/components/date-dropdown/date-dropdown.js.map +1 -1
- package/dist/collection/components/date-input/date-input.js +6 -9
- package/dist/collection/components/date-input/date-input.js.map +1 -1
- package/dist/collection/components/date-picker/date-picker.js +15 -53
- package/dist/collection/components/date-picker/date-picker.js.map +1 -1
- package/dist/collection/components/date-time-card/date-time-card.css +2 -2
- package/dist/collection/components/datetime-picker/datetime-picker.css +4 -0
- package/dist/collection/components/datetime-picker/datetime-picker.js +15 -67
- package/dist/collection/components/datetime-picker/datetime-picker.js.map +1 -1
- package/dist/collection/components/divider/divider.js +1 -4
- package/dist/collection/components/divider/divider.js.map +1 -1
- package/dist/collection/components/dropdown/dropdown.js +3 -8
- package/dist/collection/components/dropdown/dropdown.js.map +1 -1
- package/dist/collection/components/dropdown-button/dropdown-button.js +4 -14
- package/dist/collection/components/dropdown-button/dropdown-button.js.map +1 -1
- package/dist/collection/components/dropdown-header/dropdown-header.js +1 -4
- package/dist/collection/components/dropdown-header/dropdown-header.js.map +1 -1
- package/dist/collection/components/dropdown-quick-actions/dropdown-quick-actions.js +1 -4
- package/dist/collection/components/dropdown-quick-actions/dropdown-quick-actions.js.map +1 -1
- package/dist/collection/components/empty-state/empty-state.js +1 -4
- package/dist/collection/components/empty-state/empty-state.js.map +1 -1
- package/dist/collection/components/expanding-search/expanding-search.js +5 -9
- package/dist/collection/components/expanding-search/expanding-search.js.map +1 -1
- package/dist/collection/components/filter-chip/filter-chip.js +2 -6
- package/dist/collection/components/filter-chip/filter-chip.js.map +1 -1
- package/dist/collection/components/flip-tile/flip-tile.js +6 -14
- package/dist/collection/components/flip-tile/flip-tile.js.map +1 -1
- package/dist/collection/components/icon-button/icon-button.js +4 -16
- package/dist/collection/components/icon-button/icon-button.js.map +1 -1
- package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +1 -4
- package/dist/collection/components/icon-toggle-button/icon-toggle-button.js.map +1 -1
- package/dist/collection/components/input/input.fc.js +1 -1
- package/dist/collection/components/input/input.fc.js.map +1 -1
- package/dist/collection/components/input/input.js +32 -6
- package/dist/collection/components/input/input.js.map +1 -1
- package/dist/collection/components/input/number-input.js +35 -10
- package/dist/collection/components/input/number-input.js.map +1 -1
- package/dist/collection/components/input/tests/form-ready.ct.js +10 -0
- package/dist/collection/components/input/tests/form-ready.ct.js.map +1 -1
- package/dist/collection/components/input/tests/validation.ct.js +48 -8
- package/dist/collection/components/input/tests/validation.ct.js.map +1 -1
- package/dist/collection/components/input/textarea.js +3 -4
- package/dist/collection/components/input/textarea.js.map +1 -1
- package/dist/collection/components/input-group/input-group.js +2 -2
- package/dist/collection/components/input-group/input-group.js.map +1 -1
- package/dist/collection/components/key-value/key-value.js +1 -3
- package/dist/collection/components/key-value/key-value.js.map +1 -1
- package/dist/collection/components/key-value-list/key-value-list.js +1 -4
- package/dist/collection/components/key-value-list/key-value-list.js.map +1 -1
- package/dist/collection/components/layout-auto/layout-auto.js +1 -4
- package/dist/collection/components/layout-auto/layout-auto.js.map +1 -1
- package/dist/collection/components/layout-grid/layout-grid.js +2 -5
- package/dist/collection/components/layout-grid/layout-grid.js.map +1 -1
- package/dist/collection/components/link-button/link-button.js +3 -6
- package/dist/collection/components/link-button/link-button.js.map +1 -1
- package/dist/collection/components/map-navigation/map-navigation.js +2 -6
- package/dist/collection/components/map-navigation/map-navigation.js.map +1 -1
- package/dist/collection/components/menu/menu.js +13 -18
- package/dist/collection/components/menu/menu.js.map +1 -1
- package/dist/collection/components/menu-avatar/menu-avatar.js +5 -16
- package/dist/collection/components/menu-avatar/menu-avatar.js.map +1 -1
- package/dist/collection/components/menu-category/menu-category.js +5 -8
- package/dist/collection/components/menu-category/menu-category.js.map +1 -1
- package/dist/collection/components/menu-item/menu-item.js +4 -7
- package/dist/collection/components/menu-item/menu-item.js.map +1 -1
- package/dist/collection/components/modal/modal.js +5 -15
- package/dist/collection/components/modal/modal.js.map +1 -1
- package/dist/collection/components/modal-content/modal-content.js +1 -4
- package/dist/collection/components/modal-content/modal-content.js.map +1 -1
- package/dist/collection/components/modal-footer/modal-footer.js +1 -4
- package/dist/collection/components/modal-footer/modal-footer.js.map +1 -1
- package/dist/collection/components/modal-header/modal-header.js +1 -4
- package/dist/collection/components/modal-header/modal-header.js.map +1 -1
- package/dist/collection/components/pagination/pagination.js +2 -5
- package/dist/collection/components/pagination/pagination.js.map +1 -1
- package/dist/collection/components/pane/pane.js +6 -9
- package/dist/collection/components/pane/pane.js.map +1 -1
- package/dist/collection/components/pane-layout/pane-layout.js +1 -4
- package/dist/collection/components/pane-layout/pane-layout.js.map +1 -1
- package/dist/collection/components/push-card/push-card.js +2 -9
- package/dist/collection/components/push-card/push-card.js.map +1 -1
- package/dist/collection/components/radio/radio.js +61 -8
- package/dist/collection/components/radio/radio.js.map +1 -1
- package/dist/collection/components/radio-group/radio-group.js +96 -7
- package/dist/collection/components/radio-group/radio-group.js.map +1 -1
- package/dist/collection/components/radio-group/test/radio-group.ct.js +17 -0
- package/dist/collection/components/radio-group/test/radio-group.ct.js.map +1 -1
- package/dist/collection/components/row/row.js +1 -4
- package/dist/collection/components/row/row.js.map +1 -1
- package/dist/collection/components/select/select.js +25 -80
- package/dist/collection/components/select/select.js.map +1 -1
- package/dist/collection/components/slider/slider.js +6 -8
- package/dist/collection/components/slider/slider.js.map +1 -1
- package/dist/collection/components/split-button/split-button.js +2 -6
- package/dist/collection/components/split-button/split-button.js.map +1 -1
- package/dist/collection/components/tab-item/tab-item.js +4 -7
- package/dist/collection/components/tab-item/tab-item.js.map +1 -1
- package/dist/collection/components/tabs/tabs.js +3 -6
- package/dist/collection/components/tabs/tabs.js.map +1 -1
- package/dist/collection/components/time-picker/time-picker.js +8 -28
- package/dist/collection/components/time-picker/time-picker.js.map +1 -1
- package/dist/collection/components/toggle/toggle.js +63 -5
- package/dist/collection/components/toggle/toggle.js.map +1 -1
- package/dist/collection/components/toggle-button/toggle-button.css +15 -0
- package/dist/collection/components/toggle-button/toggle-button.js +2 -5
- package/dist/collection/components/toggle-button/toggle-button.js.map +1 -1
- package/dist/collection/components/tooltip/tooltip.js +2 -8
- package/dist/collection/components/tooltip/tooltip.js.map +1 -1
- package/dist/collection/components/tree/tree.js +68 -61
- package/dist/collection/components/tree/tree.js.map +1 -1
- package/dist/collection/components/typography/typography.js +1 -4
- package/dist/collection/components/typography/typography.js.map +1 -1
- package/dist/collection/components/utils/input/index.js.map +1 -1
- package/dist/collection/components/utils/input/validation.js +2 -0
- package/dist/collection/components/utils/input/validation.js.map +1 -1
- package/dist/collection/components/validation-tooltip/validation-tooltip.css +1 -0
- package/dist/collection/components/validation-tooltip/validation-tooltip.js +5 -8
- package/dist/collection/components/validation-tooltip/validation-tooltip.js.map +1 -1
- package/dist/esm/index-CrTP-icT.js.map +1 -1
- package/dist/esm/{input.util-DpnoI5lb.js → input.util-DORL_qfP.js} +4 -4
- package/dist/esm/input.util-DORL_qfP.js.map +1 -0
- package/dist/esm/ix-action-card.entry.js +1 -1
- package/dist/esm/ix-action-card.entry.js.map +1 -1
- package/dist/esm/ix-application-header.entry.js +3 -5
- package/dist/esm/ix-application-header.entry.js.map +1 -1
- package/dist/esm/ix-application.entry.js +3 -3
- package/dist/esm/ix-application.entry.js.map +1 -1
- package/dist/esm/ix-avatar.ix-menu-avatar-item.entry.js.map +1 -1
- package/dist/esm/ix-avatar_2.entry.js.map +1 -1
- package/dist/esm/ix-blind.entry.js +5 -6
- package/dist/esm/ix-blind.entry.js.map +1 -1
- package/dist/esm/ix-breadcrumb.entry.js +2 -4
- package/dist/esm/ix-breadcrumb.entry.js.map +1 -1
- package/dist/esm/ix-button.entry.js +2 -5
- package/dist/esm/ix-button.entry.js.map +1 -1
- package/dist/esm/ix-card-accordion.ix-card-title.entry.js.map +1 -1
- package/dist/esm/ix-card-accordion_2.entry.js +4 -5
- package/dist/esm/ix-card-accordion_2.entry.js.map +1 -1
- package/dist/esm/ix-card-list.entry.js +4 -6
- package/dist/esm/ix-card-list.entry.js.map +1 -1
- package/dist/esm/ix-card.ix-card-content.entry.js.map +1 -1
- package/dist/esm/ix-card_2.entry.js +4 -4
- package/dist/esm/ix-card_2.entry.js.map +1 -1
- package/dist/esm/ix-category-filter.entry.js +3 -3
- package/dist/esm/ix-category-filter.entry.js.map +1 -1
- package/dist/esm/ix-checkbox-group.entry.js +47 -3
- package/dist/esm/ix-checkbox-group.entry.js.map +1 -1
- package/dist/esm/ix-checkbox.entry.js +12 -5
- package/dist/esm/ix-checkbox.entry.js.map +1 -1
- package/dist/esm/ix-chip.entry.js +5 -4
- package/dist/esm/ix-chip.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 +9 -17
- package/dist/esm/ix-col_4.entry.js.map +1 -1
- package/dist/esm/ix-content.entry.js +4 -4
- package/dist/esm/ix-content.entry.js.map +1 -1
- package/dist/esm/ix-custom-field.entry.js +2 -2
- package/dist/esm/ix-custom-field.entry.js.map +1 -1
- package/dist/esm/ix-date-dropdown.entry.js +4 -8
- package/dist/esm/ix-date-dropdown.entry.js.map +1 -1
- package/dist/esm/ix-date-input.entry.js +5 -5
- package/dist/esm/ix-date-input.entry.js.map +1 -1
- package/dist/esm/ix-date-time-card.entry.js +1 -1
- package/dist/esm/ix-date-time-card.entry.js.map +1 -1
- package/dist/esm/ix-datetime-picker.entry.js +2 -12
- package/dist/esm/ix-datetime-picker.entry.js.map +1 -1
- package/dist/esm/ix-divider.entry.js +1 -1
- package/dist/esm/ix-divider.entry.js.map +1 -1
- package/dist/esm/ix-dropdown-button.entry.js +2 -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-header.entry.js.map +1 -1
- package/dist/esm/ix-dropdown-quick-actions.entry.js +1 -1
- package/dist/esm/ix-dropdown-quick-actions.entry.js.map +1 -1
- package/dist/esm/ix-dropdown.entry.js +2 -4
- package/dist/esm/ix-dropdown.entry.js.map +1 -1
- package/dist/esm/ix-empty-state.entry.js +1 -1
- package/dist/esm/ix-empty-state.entry.js.map +1 -1
- package/dist/esm/ix-expanding-search.entry.js +4 -5
- package/dist/esm/ix-expanding-search.entry.js.map +1 -1
- package/dist/esm/ix-field-label.ix-field-wrapper.entry.js.map +1 -1
- package/dist/esm/ix-field-label_2.entry.js +1 -1
- package/dist/esm/ix-field-label_2.entry.js.map +1 -1
- package/dist/esm/ix-filter-chip.ix-select-item.entry.js.map +1 -1
- package/dist/esm/ix-filter-chip_2.entry.js +1 -2
- package/dist/esm/ix-filter-chip_2.entry.js.map +1 -1
- package/dist/esm/ix-flip-tile.entry.js +4 -6
- package/dist/esm/ix-flip-tile.entry.js.map +1 -1
- 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 +1 -4
- package/dist/esm/ix-icon-button_2.entry.js.map +1 -1
- package/dist/esm/ix-icon-toggle-button.entry.js +1 -1
- package/dist/esm/ix-icon-toggle-button.entry.js.map +1 -1
- package/dist/esm/ix-input-group.entry.js +1 -1
- package/dist/esm/ix-input-group.entry.js.map +1 -1
- package/dist/esm/ix-input.entry.js +12 -6
- package/dist/esm/ix-input.entry.js.map +1 -1
- package/dist/esm/ix-key-value-list.entry.js +1 -1
- package/dist/esm/ix-key-value-list.entry.js.map +1 -1
- package/dist/esm/ix-key-value.entry.js +1 -1
- package/dist/esm/ix-key-value.entry.js.map +1 -1
- package/dist/esm/ix-layout-auto.entry.js +1 -1
- package/dist/esm/ix-layout-auto.entry.js.map +1 -1
- package/dist/esm/ix-link-button.entry.js +3 -3
- package/dist/esm/ix-link-button.entry.js.map +1 -1
- package/dist/esm/ix-map-navigation.entry.js +2 -3
- package/dist/esm/ix-map-navigation.entry.js.map +1 -1
- package/dist/esm/ix-menu-avatar.entry.js +2 -4
- package/dist/esm/ix-menu-avatar.entry.js.map +1 -1
- package/dist/esm/ix-menu-category.entry.js +5 -5
- package/dist/esm/ix-menu-category.entry.js.map +1 -1
- package/dist/esm/ix-menu-item.entry.js +3 -3
- package/dist/esm/ix-menu-item.entry.js.map +1 -1
- package/dist/esm/ix-menu.entry.js +12 -14
- package/dist/esm/ix-menu.entry.js.map +1 -1
- package/dist/esm/ix-modal-content.ix-modal-header.entry.js.map +1 -1
- package/dist/esm/ix-modal-content_2.entry.js +2 -2
- package/dist/esm/ix-modal-content_2.entry.js.map +1 -1
- package/dist/esm/ix-modal-footer.entry.js +1 -1
- package/dist/esm/ix-modal-footer.entry.js.map +1 -1
- package/dist/esm/ix-modal.entry.js +3 -7
- package/dist/esm/ix-modal.entry.js.map +1 -1
- package/dist/esm/ix-number-input.entry.js +14 -10
- package/dist/esm/ix-number-input.entry.js.map +1 -1
- package/dist/esm/ix-pagination.entry.js +2 -2
- package/dist/esm/ix-pagination.entry.js.map +1 -1
- package/dist/esm/ix-pane-layout.entry.js +1 -1
- package/dist/esm/ix-pane-layout.entry.js.map +1 -1
- package/dist/esm/ix-pane.entry.js +6 -6
- package/dist/esm/ix-pane.entry.js.map +1 -1
- package/dist/esm/ix-push-card.entry.js +1 -2
- package/dist/esm/ix-push-card.entry.js.map +1 -1
- package/dist/esm/ix-radio-group.entry.js +29 -6
- package/dist/esm/ix-radio-group.entry.js.map +1 -1
- package/dist/esm/ix-radio.entry.js +23 -6
- package/dist/esm/ix-radio.entry.js.map +1 -1
- package/dist/esm/ix-select.entry.js +9 -16
- package/dist/esm/ix-select.entry.js.map +1 -1
- package/dist/esm/ix-slider.entry.js +6 -6
- package/dist/esm/ix-slider.entry.js.map +1 -1
- package/dist/esm/ix-split-button.entry.js +1 -2
- 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 +5 -5
- package/dist/esm/ix-tab-item_2.entry.js.map +1 -1
- package/dist/esm/ix-textarea.entry.js +4 -4
- package/dist/esm/ix-textarea.entry.js.map +1 -1
- package/dist/esm/ix-time-picker.entry.js +4 -12
- package/dist/esm/ix-time-picker.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 +35 -3
- package/dist/esm/ix-toggle.entry.js.map +1 -1
- package/dist/esm/ix-tooltip.entry.js +1 -2
- package/dist/esm/ix-tooltip.entry.js.map +1 -1
- package/dist/esm/ix-tree.entry.js +55 -51
- package/dist/esm/ix-tree.entry.js.map +1 -1
- package/dist/esm/ix-typography.entry.js +1 -1
- package/dist/esm/ix-typography.entry.js.map +1 -1
- package/dist/esm/ix-validation-tooltip.entry.js +3 -5
- package/dist/esm/ix-validation-tooltip.entry.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/siemens-ix.js +1 -1
- package/dist/esm/{validation-C_w_pHgR.js → validation-CS0nhfz1.js} +4 -2
- package/dist/esm/validation-CS0nhfz1.js.map +1 -0
- 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-application.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-avatar.ix-menu-avatar-item.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-blind.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-breadcrumb.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-button.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-card-accordion.ix-card-title.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-card-list.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-checkbox-group.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-checkbox.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-chip.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-content.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-custom-field.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-date-time-card.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-datetime-picker.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-divider.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-header.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-dropdown-quick-actions.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-dropdown.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-empty-state.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-expanding-search.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-filter-chip.ix-select-item.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-flip-tile.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-icon-toggle-button.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-input-group.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-input.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-key-value-list.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-key-value.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-layout-auto.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-link-button.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-map-navigation.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-item.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-menu.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-modal-content.ix-modal-header.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-modal-footer.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-modal.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-number-input.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-pagination.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-pane-layout.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-pane.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-push-card.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-radio-group.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-radio.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-textarea.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-time-picker.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-toggle-button.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-toggle.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-tooltip.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-tree.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-typography.entry.esm.js.map +1 -1
- package/dist/siemens-ix/ix-validation-tooltip.entry.esm.js.map +1 -1
- package/dist/siemens-ix/{p-0c830977.entry.js → p-04338b3f.entry.js} +2 -2
- package/dist/siemens-ix/p-04338b3f.entry.js.map +1 -0
- package/dist/siemens-ix/p-0443dc8d.entry.js +2 -0
- package/dist/siemens-ix/p-0443dc8d.entry.js.map +1 -0
- package/dist/siemens-ix/p-054136c2.entry.js +2 -0
- package/dist/siemens-ix/{p-518b1e6b.entry.js.map → p-054136c2.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-0488a734.entry.js → p-06843648.entry.js} +2 -2
- package/dist/siemens-ix/{p-0488a734.entry.js.map → p-06843648.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-ff2171f6.entry.js → p-071f63d6.entry.js} +2 -2
- package/dist/siemens-ix/p-071f63d6.entry.js.map +1 -0
- package/dist/siemens-ix/{p-c7384379.entry.js → p-07c17517.entry.js} +2 -2
- package/dist/siemens-ix/p-07c17517.entry.js.map +1 -0
- package/dist/siemens-ix/{p-5fef5328.entry.js → p-09b83f0e.entry.js} +2 -2
- package/dist/siemens-ix/p-09b83f0e.entry.js.map +1 -0
- package/dist/siemens-ix/p-144e4ad0.entry.js +2 -0
- package/dist/siemens-ix/p-144e4ad0.entry.js.map +1 -0
- package/dist/siemens-ix/{p-19ae7d99.entry.js → p-158d9068.entry.js} +2 -2
- package/dist/siemens-ix/p-158d9068.entry.js.map +1 -0
- package/dist/siemens-ix/{p-ac5f5042.entry.js → p-18a47d9f.entry.js} +2 -2
- package/dist/siemens-ix/p-18a47d9f.entry.js.map +1 -0
- package/dist/siemens-ix/{p-96bbbbcb.entry.js → p-1d28d516.entry.js} +2 -2
- package/dist/siemens-ix/p-1d28d516.entry.js.map +1 -0
- package/dist/siemens-ix/{p-9e3a36df.entry.js → p-1ff3556a.entry.js} +2 -2
- package/dist/siemens-ix/p-1ff3556a.entry.js.map +1 -0
- package/dist/siemens-ix/{p-08931f8c.entry.js → p-215df096.entry.js} +2 -2
- package/dist/siemens-ix/p-215df096.entry.js.map +1 -0
- package/dist/siemens-ix/{p-d1cf2407.entry.js → p-23a50a0c.entry.js} +2 -2
- package/dist/siemens-ix/p-23a50a0c.entry.js.map +1 -0
- package/dist/siemens-ix/{p-3e1a9763.entry.js → p-24339d35.entry.js} +2 -2
- package/dist/siemens-ix/p-24339d35.entry.js.map +1 -0
- package/dist/siemens-ix/{p-28055ea5.entry.js → p-27b13c4c.entry.js} +2 -2
- package/dist/siemens-ix/p-27b13c4c.entry.js.map +1 -0
- package/dist/siemens-ix/{p-3138015e.entry.js → p-27cc0e94.entry.js} +2 -2
- package/dist/siemens-ix/{p-3138015e.entry.js.map → p-27cc0e94.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-eb5da5a0.entry.js → p-2b496519.entry.js} +2 -2
- package/dist/siemens-ix/{p-eb5da5a0.entry.js.map → p-2b496519.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-d3f99d59.entry.js → p-32488953.entry.js} +2 -2
- package/dist/siemens-ix/p-32488953.entry.js.map +1 -0
- package/dist/siemens-ix/p-34824a84.entry.js +2 -0
- package/dist/siemens-ix/p-34824a84.entry.js.map +1 -0
- package/dist/siemens-ix/{p-4b0c3eeb.entry.js → p-356b0c5c.entry.js} +2 -2
- package/dist/siemens-ix/p-356b0c5c.entry.js.map +1 -0
- package/dist/siemens-ix/{p-93ba92af.entry.js → p-37f6a541.entry.js} +2 -2
- package/dist/siemens-ix/p-37f6a541.entry.js.map +1 -0
- package/dist/siemens-ix/p-387fd147.entry.js +2 -0
- package/dist/siemens-ix/p-387fd147.entry.js.map +1 -0
- package/dist/siemens-ix/{p-c675b650.entry.js → p-44670707.entry.js} +2 -2
- package/dist/siemens-ix/p-44670707.entry.js.map +1 -0
- package/dist/siemens-ix/p-47a889ca.entry.js +2 -0
- package/dist/siemens-ix/{p-b01c5093.entry.js.map → p-47a889ca.entry.js.map} +1 -1
- package/dist/siemens-ix/p-4cc099ea.entry.js +2 -0
- package/dist/siemens-ix/{p-b39463a7.entry.js.map → p-4cc099ea.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-f8a852c3.entry.js → p-4dac8359.entry.js} +2 -2
- package/dist/siemens-ix/p-4dac8359.entry.js.map +1 -0
- package/dist/siemens-ix/{p-576fade1.entry.js → p-521dfa2a.entry.js} +2 -2
- package/dist/siemens-ix/p-521dfa2a.entry.js.map +1 -0
- package/dist/siemens-ix/p-6de38c2a.entry.js +2 -0
- package/dist/siemens-ix/p-6de38c2a.entry.js.map +1 -0
- package/dist/siemens-ix/{p-34ff567f.entry.js → p-70cbacb8.entry.js} +2 -2
- package/dist/siemens-ix/p-70cbacb8.entry.js.map +1 -0
- package/dist/siemens-ix/{p-f8b08d7b.entry.js → p-71b2c8cd.entry.js} +2 -2
- package/dist/siemens-ix/{p-f8b08d7b.entry.js.map → p-71b2c8cd.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-e365aee3.entry.js → p-7535cbf6.entry.js} +2 -2
- package/dist/siemens-ix/{p-ce0642f0.entry.js → p-76565681.entry.js} +2 -2
- package/dist/siemens-ix/p-76565681.entry.js.map +1 -0
- package/dist/siemens-ix/{p-f7bfd5f6.entry.js → p-781e0057.entry.js} +2 -2
- package/dist/siemens-ix/p-781e0057.entry.js.map +1 -0
- package/dist/siemens-ix/{p-2295246b.entry.js → p-78b7ce69.entry.js} +2 -2
- package/dist/siemens-ix/p-78b7ce69.entry.js.map +1 -0
- package/dist/siemens-ix/p-78f99962.entry.js.map +1 -1
- package/dist/siemens-ix/{p-f3f6e45d.entry.js → p-827653a3.entry.js} +2 -2
- package/dist/siemens-ix/p-827653a3.entry.js.map +1 -0
- package/dist/siemens-ix/{p-cd52e37a.entry.js → p-83367279.entry.js} +2 -2
- package/dist/siemens-ix/p-83367279.entry.js.map +1 -0
- package/dist/siemens-ix/{p-c80dddf1.entry.js → p-8804a378.entry.js} +2 -2
- package/dist/siemens-ix/p-8804a378.entry.js.map +1 -0
- package/dist/siemens-ix/p-8df5873d.entry.js +2 -0
- package/dist/siemens-ix/p-8df5873d.entry.js.map +1 -0
- package/dist/siemens-ix/{p-575b3137.entry.js → p-8e525190.entry.js} +2 -2
- package/dist/siemens-ix/p-8e525190.entry.js.map +1 -0
- package/dist/siemens-ix/{p-3283a5f3.entry.js → p-94b89b14.entry.js} +2 -2
- package/dist/siemens-ix/p-94b89b14.entry.js.map +1 -0
- package/dist/siemens-ix/{p-f0575255.entry.js → p-9646b346.entry.js} +2 -2
- package/dist/siemens-ix/p-9646b346.entry.js.map +1 -0
- package/dist/siemens-ix/{p-273bd3ab.entry.js → p-9920ec79.entry.js} +2 -2
- package/dist/siemens-ix/{p-273bd3ab.entry.js.map → p-9920ec79.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-734bcb23.entry.js → p-9bac6252.entry.js} +2 -2
- package/dist/siemens-ix/p-9bac6252.entry.js.map +1 -0
- package/dist/siemens-ix/{p-9a679e62.entry.js → p-9bbca220.entry.js} +2 -2
- package/dist/siemens-ix/p-9bbca220.entry.js.map +1 -0
- package/dist/siemens-ix/p-CASZsflI.js +2 -0
- package/dist/siemens-ix/p-CASZsflI.js.map +1 -0
- package/dist/siemens-ix/p-CrTP-icT.js.map +1 -1
- package/dist/siemens-ix/p-DHml78Yc.js +2 -0
- package/dist/siemens-ix/p-DHml78Yc.js.map +1 -0
- package/dist/siemens-ix/{p-3a0a5bc2.entry.js → p-a289764d.entry.js} +2 -2
- package/dist/siemens-ix/p-a289764d.entry.js.map +1 -0
- package/dist/siemens-ix/{p-e6c7e87a.entry.js → p-ac4548a8.entry.js} +2 -2
- package/dist/siemens-ix/p-ac4548a8.entry.js.map +1 -0
- package/dist/siemens-ix/{p-aee95ea9.entry.js → p-aca27756.entry.js} +2 -2
- package/dist/siemens-ix/p-aca27756.entry.js.map +1 -0
- package/dist/siemens-ix/{p-c0e4bf8a.entry.js → p-b35df537.entry.js} +2 -2
- package/dist/siemens-ix/{p-c0e4bf8a.entry.js.map → p-b35df537.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-c93a8094.entry.js → p-b6966cc0.entry.js} +2 -2
- package/dist/siemens-ix/p-b6966cc0.entry.js.map +1 -0
- package/dist/siemens-ix/{p-9e83986f.entry.js → p-b78847d5.entry.js} +2 -2
- package/dist/siemens-ix/{p-9e83986f.entry.js.map → p-b78847d5.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-3edc7dd2.entry.js → p-beed1dd8.entry.js} +2 -2
- package/dist/siemens-ix/p-beed1dd8.entry.js.map +1 -0
- package/dist/siemens-ix/p-c1b10464.entry.js +2 -0
- package/dist/siemens-ix/{p-3db26a34.entry.js.map → p-c1b10464.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-87b30e60.entry.js → p-c76e3ee3.entry.js} +2 -2
- package/dist/siemens-ix/p-c76e3ee3.entry.js.map +1 -0
- package/dist/siemens-ix/{p-66fb6549.entry.js → p-c8fe1a7e.entry.js} +2 -2
- package/dist/siemens-ix/p-c8fe1a7e.entry.js.map +1 -0
- package/dist/siemens-ix/{p-89edecbd.entry.js → p-ca8a2b16.entry.js} +2 -2
- package/dist/siemens-ix/p-ca8a2b16.entry.js.map +1 -0
- package/dist/siemens-ix/p-cb7de112.entry.js +2 -0
- package/dist/siemens-ix/p-cb7de112.entry.js.map +1 -0
- package/dist/siemens-ix/{p-aeb1eb75.entry.js → p-cbf6c3bf.entry.js} +2 -2
- package/dist/siemens-ix/p-cbf6c3bf.entry.js.map +1 -0
- package/dist/siemens-ix/{p-3d8a3b8a.entry.js → p-cca07b68.entry.js} +2 -2
- package/dist/siemens-ix/{p-3d8a3b8a.entry.js.map → p-cca07b68.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-20d1d114.entry.js → p-ccec1de1.entry.js} +2 -2
- package/dist/siemens-ix/p-ccec1de1.entry.js.map +1 -0
- package/dist/siemens-ix/p-d6caa4f4.entry.js +2 -0
- package/dist/siemens-ix/p-d6caa4f4.entry.js.map +1 -0
- package/dist/siemens-ix/p-da040b8b.entry.js +2 -0
- package/dist/siemens-ix/p-da040b8b.entry.js.map +1 -0
- package/dist/siemens-ix/{p-000cfb14.entry.js → p-dd11dd49.entry.js} +2 -2
- package/dist/siemens-ix/{p-000cfb14.entry.js.map → p-dd11dd49.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-2290614f.entry.js → p-e09ab46a.entry.js} +2 -2
- package/dist/siemens-ix/{p-2290614f.entry.js.map → p-e09ab46a.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-5963369c.entry.js → p-e3c930ac.entry.js} +2 -2
- package/dist/siemens-ix/p-e3c930ac.entry.js.map +1 -0
- package/dist/siemens-ix/{p-933f6e1f.entry.js → p-ea310106.entry.js} +2 -2
- package/dist/siemens-ix/p-ea310106.entry.js.map +1 -0
- package/dist/siemens-ix/siemens-ix-core.css +1 -1
- package/dist/siemens-ix/siemens-ix.css +174 -0
- package/dist/siemens-ix/siemens-ix.esm.js +1 -1
- package/dist/types/components/action-card/action-card.d.ts +0 -3
- package/dist/types/components/application/application.d.ts +0 -3
- package/dist/types/components/application-header/application-header.d.ts +0 -4
- package/dist/types/components/avatar/avatar.d.ts +0 -7
- package/dist/types/components/blind/blind.d.ts +0 -3
- package/dist/types/components/breadcrumb/breadcrumb.d.ts +0 -2
- package/dist/types/components/button/button.d.ts +0 -3
- package/dist/types/components/card/card.d.ts +1 -4
- package/dist/types/components/card-accordion/card-accordion.d.ts +0 -4
- package/dist/types/components/card-content/card-content.d.ts +0 -3
- package/dist/types/components/card-list/card-list.d.ts +0 -5
- package/dist/types/components/card-title/card-title.d.ts +0 -2
- package/dist/types/components/category-filter/category-filter.d.ts +0 -2
- package/dist/types/components/checkbox/checkbox.d.ts +8 -2
- package/dist/types/components/checkbox-group/checkbox-group.d.ts +21 -2
- package/dist/types/components/checkbox-group/test/checkbox-group.ct.d.ts +1 -0
- package/dist/types/components/chip/chip.d.ts +1 -2
- package/dist/types/components/col/col.d.ts +0 -3
- package/dist/types/components/content/content.d.ts +0 -1
- package/dist/types/components/custom-field/custom-field.d.ts +0 -3
- package/dist/types/components/date-dropdown/date-dropdown.d.ts +0 -9
- package/dist/types/components/date-input/date-input.d.ts +2 -4
- package/dist/types/components/date-picker/date-picker.d.ts +0 -20
- package/dist/types/components/datetime-picker/datetime-picker.d.ts +0 -29
- package/dist/types/components/divider/divider.d.ts +0 -3
- package/dist/types/components/dropdown/dropdown.d.ts +0 -2
- package/dist/types/components/dropdown-button/dropdown-button.d.ts +0 -6
- package/dist/types/components/dropdown-header/dropdown-header.d.ts +0 -3
- package/dist/types/components/dropdown-quick-actions/dropdown-quick-actions.d.ts +0 -3
- package/dist/types/components/empty-state/empty-state.d.ts +0 -3
- package/dist/types/components/expanding-search/expanding-search.d.ts +0 -1
- package/dist/types/components/filter-chip/filter-chip.d.ts +0 -1
- package/dist/types/components/flip-tile/flip-tile.d.ts +0 -2
- package/dist/types/components/icon-button/icon-button.d.ts +0 -5
- package/dist/types/components/icon-toggle-button/icon-toggle-button.d.ts +0 -3
- package/dist/types/components/input/input.d.ts +5 -2
- package/dist/types/components/input/input.fc.d.ts +5 -4
- package/dist/types/components/input/number-input.d.ts +7 -2
- package/dist/types/components/input/textarea.d.ts +1 -2
- package/dist/types/components/input-group/input-group.d.ts +1 -1
- package/dist/types/components/key-value/key-value.d.ts +0 -2
- package/dist/types/components/key-value-list/key-value-list.d.ts +0 -3
- package/dist/types/components/layout-auto/layout-auto.d.ts +0 -3
- package/dist/types/components/layout-grid/layout-grid.d.ts +0 -3
- package/dist/types/components/link-button/link-button.d.ts +0 -3
- package/dist/types/components/map-navigation/map-navigation.d.ts +0 -1
- package/dist/types/components/menu/menu.d.ts +0 -2
- package/dist/types/components/menu-avatar/menu-avatar.d.ts +0 -6
- package/dist/types/components/menu-category/menu-category.d.ts +0 -3
- package/dist/types/components/menu-item/menu-item.d.ts +0 -2
- package/dist/types/components/modal/modal.d.ts +0 -4
- package/dist/types/components/modal-content/modal-content.d.ts +0 -3
- package/dist/types/components/modal-footer/modal-footer.d.ts +0 -3
- package/dist/types/components/modal-header/modal-header.d.ts +0 -3
- package/dist/types/components/pagination/pagination.d.ts +0 -3
- package/dist/types/components/pane/pane.d.ts +0 -3
- package/dist/types/components/pane-layout/pane-layout.d.ts +0 -3
- package/dist/types/components/push-card/push-card.d.ts +0 -4
- package/dist/types/components/radio/radio.d.ts +13 -5
- package/dist/types/components/radio-group/radio-group.d.ts +15 -3
- package/dist/types/components/row/row.d.ts +0 -3
- package/dist/types/components/select/select.d.ts +1 -32
- package/dist/types/components/slider/slider.d.ts +0 -2
- package/dist/types/components/split-button/split-button.d.ts +0 -1
- package/dist/types/components/tab-item/tab-item.d.ts +0 -2
- package/dist/types/components/tabs/tabs.d.ts +0 -2
- package/dist/types/components/time-picker/time-picker.d.ts +0 -8
- package/dist/types/components/toggle/toggle.d.ts +10 -2
- package/dist/types/components/toggle-button/toggle-button.d.ts +0 -3
- package/dist/types/components/tooltip/tooltip.d.ts +0 -3
- package/dist/types/components/tree/tree.d.ts +4 -6
- package/dist/types/components/typography/typography.d.ts +0 -3
- package/dist/types/components/utils/input/index.d.ts +1 -1
- package/dist/types/components/validation-tooltip/validation-tooltip.d.ts +2 -2
- package/dist/types/components.d.ts +110 -673
- package/hydrate/index.js +435 -467
- package/hydrate/index.mjs +435 -467
- package/package.json +3 -3
- package/scss/_core.scss +2 -0
- package/scss/components/_button-group.scss +13 -0
- package/components/p-12nKYxsa.js.map +0 -1
- package/components/p-2g5-4fWy.js.map +0 -1
- package/components/p-BBSHeR_p.js.map +0 -1
- package/components/p-BwyqOnwc.js.map +0 -1
- package/components/p-C8vn2GFY.js.map +0 -1
- package/components/p-CB1ADCkU.js.map +0 -1
- package/components/p-D0LdqSVb.js.map +0 -1
- package/components/p-DGeWaNlt.js.map +0 -1
- package/components/p-DIzxAERt.js.map +0 -1
- package/components/p-DM43N7pD.js.map +0 -1
- package/components/p-DXzHgqiB.js.map +0 -1
- package/components/p-D_wwWxx8.js.map +0 -1
- package/components/p-Dy35mbzK.js.map +0 -1
- package/components/p-DylMlJTZ.js.map +0 -1
- package/dist/cjs/input.util-DuJG4-L-.js.map +0 -1
- package/dist/cjs/validation-B-wzGaWF.js.map +0 -1
- package/dist/esm/input.util-DpnoI5lb.js.map +0 -1
- package/dist/esm/validation-C_w_pHgR.js.map +0 -1
- package/dist/siemens-ix/p-08931f8c.entry.js.map +0 -1
- package/dist/siemens-ix/p-0c830977.entry.js.map +0 -1
- package/dist/siemens-ix/p-19ae7d99.entry.js.map +0 -1
- package/dist/siemens-ix/p-20d1d114.entry.js.map +0 -1
- package/dist/siemens-ix/p-2295246b.entry.js.map +0 -1
- package/dist/siemens-ix/p-28055ea5.entry.js.map +0 -1
- package/dist/siemens-ix/p-2j3Ly91D.js +0 -2
- package/dist/siemens-ix/p-2j3Ly91D.js.map +0 -1
- package/dist/siemens-ix/p-3283a5f3.entry.js.map +0 -1
- package/dist/siemens-ix/p-34ff567f.entry.js.map +0 -1
- package/dist/siemens-ix/p-37fa26f9.entry.js +0 -2
- package/dist/siemens-ix/p-37fa26f9.entry.js.map +0 -1
- package/dist/siemens-ix/p-3a0a5bc2.entry.js.map +0 -1
- package/dist/siemens-ix/p-3db26a34.entry.js +0 -2
- package/dist/siemens-ix/p-3e1a9763.entry.js.map +0 -1
- package/dist/siemens-ix/p-3edc7dd2.entry.js.map +0 -1
- package/dist/siemens-ix/p-4b0c3eeb.entry.js.map +0 -1
- package/dist/siemens-ix/p-518b1e6b.entry.js +0 -2
- package/dist/siemens-ix/p-575b3137.entry.js.map +0 -1
- package/dist/siemens-ix/p-576fade1.entry.js.map +0 -1
- package/dist/siemens-ix/p-5963369c.entry.js.map +0 -1
- package/dist/siemens-ix/p-5b1d3595.entry.js +0 -2
- package/dist/siemens-ix/p-5b1d3595.entry.js.map +0 -1
- package/dist/siemens-ix/p-5fef5328.entry.js.map +0 -1
- package/dist/siemens-ix/p-6691703e.entry.js +0 -2
- package/dist/siemens-ix/p-6691703e.entry.js.map +0 -1
- package/dist/siemens-ix/p-66fb6549.entry.js.map +0 -1
- package/dist/siemens-ix/p-6d197072.entry.js +0 -2
- package/dist/siemens-ix/p-6d197072.entry.js.map +0 -1
- package/dist/siemens-ix/p-734bcb23.entry.js.map +0 -1
- package/dist/siemens-ix/p-7abb0f0c.entry.js +0 -2
- package/dist/siemens-ix/p-7abb0f0c.entry.js.map +0 -1
- package/dist/siemens-ix/p-87b30e60.entry.js.map +0 -1
- package/dist/siemens-ix/p-87c777a1.entry.js +0 -2
- package/dist/siemens-ix/p-87c777a1.entry.js.map +0 -1
- package/dist/siemens-ix/p-89edecbd.entry.js.map +0 -1
- package/dist/siemens-ix/p-933f6e1f.entry.js.map +0 -1
- package/dist/siemens-ix/p-93ba92af.entry.js.map +0 -1
- package/dist/siemens-ix/p-96bbbbcb.entry.js.map +0 -1
- package/dist/siemens-ix/p-9a679e62.entry.js.map +0 -1
- package/dist/siemens-ix/p-9e3a36df.entry.js.map +0 -1
- package/dist/siemens-ix/p-BPfEX8mR.js +0 -2
- package/dist/siemens-ix/p-BPfEX8mR.js.map +0 -1
- package/dist/siemens-ix/p-ac5f5042.entry.js.map +0 -1
- package/dist/siemens-ix/p-aeb1eb75.entry.js.map +0 -1
- package/dist/siemens-ix/p-aee95ea9.entry.js.map +0 -1
- package/dist/siemens-ix/p-b01c5093.entry.js +0 -2
- package/dist/siemens-ix/p-b39463a7.entry.js +0 -2
- package/dist/siemens-ix/p-c675b650.entry.js.map +0 -1
- package/dist/siemens-ix/p-c7384379.entry.js.map +0 -1
- package/dist/siemens-ix/p-c80dddf1.entry.js.map +0 -1
- package/dist/siemens-ix/p-c93a8094.entry.js.map +0 -1
- package/dist/siemens-ix/p-cd52e37a.entry.js.map +0 -1
- package/dist/siemens-ix/p-ce0642f0.entry.js.map +0 -1
- package/dist/siemens-ix/p-d1cf2407.entry.js.map +0 -1
- package/dist/siemens-ix/p-d3f99d59.entry.js.map +0 -1
- package/dist/siemens-ix/p-e501b6ca.entry.js +0 -2
- package/dist/siemens-ix/p-e501b6ca.entry.js.map +0 -1
- package/dist/siemens-ix/p-e6c7e87a.entry.js.map +0 -1
- package/dist/siemens-ix/p-f0575255.entry.js.map +0 -1
- package/dist/siemens-ix/p-f3022851.entry.js +0 -2
- package/dist/siemens-ix/p-f3022851.entry.js.map +0 -1
- package/dist/siemens-ix/p-f3f6e45d.entry.js.map +0 -1
- package/dist/siemens-ix/p-f7bfd5f6.entry.js.map +0 -1
- package/dist/siemens-ix/p-f81de54a.entry.js +0 -2
- package/dist/siemens-ix/p-f81de54a.entry.js.map +0 -1
- package/dist/siemens-ix/p-f8a852c3.entry.js.map +0 -1
- package/dist/siemens-ix/p-ff2171f6.entry.js.map +0 -1
- /package/dist/siemens-ix/{p-e365aee3.entry.js.map → p-7535cbf6.entry.js.map} +0 -0
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as t,c as i,h as s,H as e,g as o}from"./p-BNpBEtDH.js";import{r as n}from"./p-UQa1aROL.js";import{d as h}from"./p-D3K9vmFp.js";const r=t=>!Number.isNaN(Number(t));const c=(t,i)=>{t.classList.add(i)};class l{static create(t,i=l.defaultConfig){return new l(t,i)}static mergeStyle(t,i){for(let s in i){if(t.style[s]!==i[s]){t.style[s]=i[s]}}}static getMaxBrowserHeight(){const t=document.createElement("div");const i=document.createElement("div");l.mergeStyle(t,{position:"absolute",height:"1px",opacity:0});l.mergeStyle(i,{height:"1e7px"});t.appendChild(i);document.body.appendChild(t);const s=i.offsetHeight;document.body.removeChild(t);return s}constructor(t,i){this._lastRepaint=null;this._maxElementHeight=l.getMaxBrowserHeight();this.refresh(t,i);const s=this._config;const e=()=>{const t=this._getScrollPosition();const i=this._lastRepaint;this._renderAnimationFrame=window.requestAnimationFrame(e);if(t===i){return}const o=i?t-i:0;if(!i||o<0||o>this._averageHeight){let i=this._renderChunk();this._lastRepaint=t;if(i!==false&&typeof s.afterRender==="function"){s.afterRender()}}};e()}destroy(){window.cancelAnimationFrame(this._renderAnimationFrame)}refresh(t,i=l.defaultConfig){this._config=i;if(!t||t.nodeType!==1){throw new Error("HyperList requires a valid DOM Node container")}this._element=t;const s=this._config;const e=this._scroller||s.scroller||document.createElement(s.scrollerTagName||"tr");if(typeof s.useFragment!=="boolean"){this._config.useFragment=true}if(!s.generate){throw new Error("Missing required `generate` function")}if(!r(s.total)){throw new Error("Invalid required `total` value, expected number")}if(!Array.isArray(s.itemHeight)&&!r(s.itemHeight)){throw new Error(`\n Invalid required \`itemHeight\` value, expected number or array\n `.trim())}else if(r(s.itemHeight)){this._itemHeights=Array(s.total).fill(s.itemHeight)}else{this._itemHeights=[s.itemHeight]}Object.keys(l.defaultConfig).filter((t=>t in s)).forEach((t=>{const i=s[t];const e=r(i);if(i&&typeof i!=="string"&&typeof i!=="number"){let i=`Invalid optional \`${t}\`, expected string or number`;throw new Error(i)}else if(e){s[t]=`${i}px`}}));const o=Boolean(s.horizontal);const n=s[o?"width":"height"];if(n){const t=r(n);const i=t?false:n.slice(-1)==="%";const s=t?parseInt(n,10):parseInt(n.replace(/px|%/,""),10);const e=window[o?"innerWidth":"innerHeight"];if(i){this._containerSize=e*s/100}else{this._containerSize=r(n)?n:s}}const h=s.scrollContainer;const c=s.itemHeight*s.total;const a=this._maxElementHeight;if(c>a){console.warn(["HyperList: The maximum element height",a+"px has","been exceeded; please reduce your item height."].join(" "))}const d={width:`${s.width}`,height:h?`${c}px`:`${s.height}`,overflow:h?"none":"auto",position:"relative"};l.mergeStyle(t,d);if(h){l.mergeStyle(s.scrollContainer,{overflow:"auto"})}const f={opacity:"0",position:"absolute",[o?"height":"width"]:"1px",[o?"width":"height"]:`${c}px`};l.mergeStyle(e,f);if(!this._scroller){t.appendChild(e)}const u=this._computeScrollPadding();this._scrollPaddingBottom=u.bottom;this._scrollPaddingTop=u.top;this._scroller=e;this._scrollHeight=this._computeScrollHeight();this._itemPositions=this._itemPositions||Array(s.total).fill(0);this._computePositions(0);this._renderChunk(this._lastRepaint!==null);if(typeof s.afterRender==="function"){s.afterRender()}}_getRow(t){const i=this._config;let s=i.generate(t);let e=s.height;if(e!==undefined&&r(e)){s=s.element;if(e!==this._itemHeights[t]){this._itemHeights[t]=e;this._computePositions(t);this._scrollHeight=this._computeScrollHeight()}}else{e=this._itemHeights[t]}if(!s||s.nodeType!==1){throw new Error(`Generator did not return a DOM Node for index: ${t}`)}c(s,i.rowClassName||"vrow");const o=this._itemPositions[t]+this._scrollPaddingTop;l.mergeStyle(s,{position:"absolute",[i.horizontal?"left":"top"]:`${o}px`});return s}_getScrollPosition(){const t=this._config;if(typeof t.overrideScrollPosition==="function"){return t.overrideScrollPosition()}return this._element[t.horizontal?"scrollLeft":"scrollTop"]}_renderChunk(t=false){const i=this._config;const s=this._element;const e=this._getScrollPosition();const o=i.total;let n=this._getFrom(e)-1;if(n<0||n-this._screenItemsLen<0){n=0}if(!t&&this._lastFrom===n){return false}this._lastFrom=n;let h=n+this._cachedItemsLen;if(h>o||h+this._cachedItemsLen>o){h=o}const r=i.useFragment?document.createDocumentFragment():[];const c=this._scroller;r[i.useFragment?"appendChild":"push"](c);for(let t=n;t<h;t++){let s=this._getRow(t);r[i.useFragment?"appendChild":"push"](s)}if(i.applyPatch){return i.applyPatch(s,r)}s.innerHTML="";s.appendChild(r)}_computePositions(t=1){const i=this._config;const s=i.total;if(t<1){t=1}for(let i=t;i<s;i++){this._itemPositions[i]=this._itemHeights[i-1]+this._itemPositions[i-1]}}_computeScrollHeight(){const t=this._config;const i=Boolean(t.horizontal);const s=t.total;const e=this._itemHeights.reduce(((t,i)=>t+i),0)+this._scrollPaddingBottom+this._scrollPaddingTop;l.mergeStyle(this._scroller,{opacity:0,position:"absolute",top:"0px",[i?"height":"width"]:"1px",[i?"width":"height"]:`${e}px`});const o=this._itemHeights.slice(0).sort(((t,i)=>t-i));const n=Math.floor(s/2);const h=s%2===0?(o[n]+o[n-1])/2:o[n];const r=i?"clientWidth":"clientHeight";const c=t.scrollContainer?t.scrollContainer:this._element;const a=c[r]?c[r]:this._containerSize;this._screenItemsLen=Math.ceil(a/h);this._containerSize=a;this._cachedItemsLen=Math.max(this._cachedItemsLen||0,this._screenItemsLen*3);this._averageHeight=h;return e}_computeScrollPadding(){const t=this._config;const i=Boolean(t.horizontal);const s=window.getComputedStyle(this._element);const e=t=>{const i=s.getPropertyValue(`padding-${t}`);return parseInt(i,10)||0};if(i){return{bottom:e("right"),top:e("left")}}else{return{bottom:e("bottom"),top:e("top")}}}_getFrom(t){let i=0;while(this._itemPositions[i]<t){i++}return i}}l.defaultConfig={width:"100%",height:"100%"};const a=":host{display:block}";const d=class{constructor(s){t(this,s);this.contextChange=i(this,"contextChange",7);this.nodeToggled=i(this,"nodeToggled",7);this.nodeClicked=i(this,"nodeClicked",7);this.nodeRemoved=i(this,"nodeRemoved",7);this.model={};this.context={};this.toggleListener=new Map;this.itemClickListener=new Map;this.updates=new Map;this.hasFirstRender=false}updatePadding(t,i){t.style.paddingLeft=i.level+"rem"}getVirtualizerOptions(){const t=this.buildTreeList(this.model[this.root]);let i=(i,s,e)=>{if(i.hasChildren&&!this.toggleListener.has(s)){const o=s=>{s.preventDefault();s.stopPropagation();const o=this.getContext(t[e].id);o.isExpanded=!o.isExpanded;this.nodeToggled.emit({id:i.id,isExpaned:o.isExpanded});this.setContext(i.id,o)};s.addEventListener("toggle",o);this.toggleListener.set(s,o)}};return{width:"100%",height:"100%",itemHeight:32,total:t.length,generate:s=>{const e=t[s];const o=this.hostElement.querySelector(`[data-tree-node-id="${e.id}"]`);const r=this.getContext(e.id);if(o){o.hasChildren=e.hasChildren;o.context=Object.assign({},r);i(e,o,s);if(this.updates.has(e.id)){const t=this.updates.get(e.id);if(t){t(e,Object.assign({},this.context))}}this.updatePadding(o,e);return o}const c=t=>{this.updates.set(e.id,t)};let l=null;if(this.renderItem){l=this.renderItem(s,e,t,Object.assign({},this.context),c)}if(l===null){l=n(e,r,c)}const a=l;a.setAttribute("data-tree-node-id",e.id);a.style.paddingRight="1rem";this.updatePadding(a,e);if(!this.itemClickListener.has(a)){const t=t=>{const i=t.composedPath();const s=i.indexOf(this.hostElement);const o=i.slice(0,s);const n=h.pathIncludesTrigger(o);if(n){return}if(!t.defaultPrevented){Object.values(this.context).forEach((t=>t.isSelected=false));const t=this.getContext(e.id);t.isSelected=true;this.setContext(e.id,t)}if(this.toggleOnItemClick&&e.hasChildren){const t=this.getContext(e.id);t.isExpanded=!t.isExpanded;this.nodeToggled.emit({id:e.id,isExpaned:t.isExpanded});this.setContext(e.id,t)}this.nodeClicked.emit(e.id)};a.addEventListener("toggle",(t=>{t.preventDefault()}));a.addEventListener("click",t);this.itemClickListener.set(a,t)}i(e,a,s);return a}}}setContext(t,i){this.context=Object.assign(Object.assign({},this.context),{[t]:i});this.contextChange.emit(this.context)}getContext(t){if(!this.context){return{isExpanded:false,isSelected:false}}if(!this.context[t]){this.context[t]={isExpanded:false,isSelected:false}}return this.context[t]}buildTreeList(t,i=0){const s=[];if(t===null||t===void 0?void 0:t.hasChildren){const e=i+1;t.children.forEach((t=>{const o=this.model[t];const n=this.getContext(t);s.push(Object.assign(Object.assign({},o),{level:i}));if(o.hasChildren&&n.isExpanded){s.push(...this.buildTreeList(o,e))}}))}return s}componentDidLoad(){this.initList();this.observer=new MutationObserver((t=>{let i=[];t.forEach((t=>{i=[...i,...Array.from(t.removedNodes)];t.addedNodes.forEach((t=>{const s=i.indexOf(t);if(s>=0){i.splice(s,1)}}))}));this.nodeRemoved.emit(i)}));this.observer.observe(this.hostElement,{childList:true})}componentWillRender(){this.hasFirstRender=true;if(this.isListInitialized()){this.refreshList()}else{this.initList()}}connectedCallback(){if(this.hasFirstRender){this.initList()}}disconnectedCallback(){var t,i;(t=this.hyperlist)===null||t===void 0?void 0:t.destroy();(i=this.observer)===null||i===void 0?void 0:i.disconnect()}modelChange(){if(this.hasFirstRender&&!this.isListInitialized()){this.initList()}}isListInitialized(){var t;const i=(t=this.hyperlist)===null||t===void 0?void 0:t._itemPositions;return i!==undefined&&i.length&&!(i===null||i===void 0?void 0:i.some((t=>t===undefined||Number.isNaN(t))))}refreshList(){if(this.hyperlist){this.hyperlist.refresh(this.hostElement,this.getVirtualizerOptions())}}initList(){var t;if(!this.model){return}(t=this.hyperlist)===null||t===void 0?void 0:t.destroy();const i=this.getVirtualizerOptions();this.hyperlist=new l(this.hostElement,i)}render(){return s(e,{key:"3d9a880f2714c69333145042506d396a3a2828cd"},s("slot",{key:"7d61c95a13e449305c3a8d33c509eed0389e5abe"}))}get hostElement(){return o(this)}static get watchers(){return{model:["modelChange"]}}};d.style=a;export{d as ix_tree};
|
|
2
|
-
//# sourceMappingURL=p-f3022851.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["isNumber","input","Number","isNaN","addClass","element","className","classList","add","VirtualList","create","userProvidedConfig","defaultConfig","mergeStyle","style","i","getMaxBrowserHeight","wrapper","document","createElement","fixture","position","height","opacity","appendChild","body","maxElementHeight","offsetHeight","removeChild","constructor","this","_lastRepaint","_maxElementHeight","refresh","config","_config","render","scrollTop","_getScrollPosition","lastRepaint","_renderAnimationFrame","window","requestAnimationFrame","diff","_averageHeight","rendered","_renderChunk","afterRender","destroy","cancelAnimationFrame","nodeType","Error","_element","scroller","_scroller","scrollerTagName","useFragment","generate","total","Array","isArray","itemHeight","trim","_itemHeights","fill","Object","keys","filter","prop","forEach","value","isValueNumber","msg","isHorizontal","Boolean","horizontal","isValuePercent","slice","numberValue","parseInt","replace","innerSize","_containerSize","scrollContainer","scrollerHeight","console","warn","join","elementStyle","width","overflow","scrollerStyle","padding","_computeScrollPadding","_scrollPaddingBottom","bottom","_scrollPaddingTop","top","_scrollHeight","_computeScrollHeight","_itemPositions","_computePositions","_getRow","item","undefined","rowClassName","overrideScrollPosition","force","from","_getFrom","_screenItemsLen","_lastFrom","to","_cachedItemsLen","fragment","createDocumentFragment","row","applyPatch","innerHTML","scrollHeight","reduce","a","b","sortedItemHeights","sort","middle","Math","floor","averageHeight","clientProp","containerHeight","ceil","max","isHoriz","styles","getComputedStyle","location","cssValue","getPropertyValue","treeCss","Tree","hostRef","model","context","toggleListener","Map","itemClickListener","updates","hasFirstRender","updatePadding","paddingLeft","level","getVirtualizerOptions","list","buildTreeList","root","setToggleListener","el","index","hasChildren","has","toggleCallback","e","preventDefault","stopPropagation","getContext","id","isExpanded","nodeToggled","emit","isExpaned","setContext","addEventListener","set","length","renderedTreeItem","hostElement","querySelector","assign","doUpdate","get","update","callback","innerElement","renderItem","renderDefaultItem","setAttribute","paddingRight","itemClickCallback","event","path","composedPath","treeIndex","indexOf","treePath","hasTrigger","dropdownController","pathIncludesTrigger","defaultPrevented","values","c","isSelected","toggleOnItemClick","nodeClicked","contextChange","itemList","newLevel","children","push","componentDidLoad","initList","observer","MutationObserver","records","removed","record","removedNodes","addedNodes","an","splice","nodeRemoved","observe","childList","componentWillRender","isListInitialized","refreshList","connectedCallback","disconnectedCallback","_a","hyperlist","_b","disconnect","modelChange","itemPositions","some","h","Host","key"],"sources":["src/components/utils/lazy-list/lazy.ts","src/components/tree/tree.css?tag=ix-tree&encapsulation=shadow","src/components/tree/tree.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n// Manually forked from https://github.com/tbranyen/hyperlist to remove\n// features a direct document calls\n//\n// Hyperlist is licensed MIT. https://github.com/tbranyen/hyperlist\n\nexport type VirtualListConfig = {\n applyPatch?: (\n element: HTMLElement,\n fragment: DocumentFragment | DocumentFragment[]\n ) => void;\n overrideScrollPosition?: () => void;\n rowClassName?: string;\n scrollContainer?: HTMLElement;\n width: string;\n height: string;\n afterRender?: () => void;\n scrollerTagName?: string;\n scroller?: HTMLElement;\n useFragment?: boolean;\n generate?: (index: number) => HTMLElement;\n total?: number;\n itemHeight?: number;\n horizontal?: boolean;\n};\n\nconst isNumber = (input: unknown) => !Number.isNaN(Number(input));\n\nconst addClass = (element: HTMLElement, className: string) => {\n element.classList.add(className);\n};\n\nexport class VirtualList {\n _config!: VirtualListConfig;\n _lastRepaint: null;\n _maxElementHeight: number;\n _renderAnimationFrame!: number;\n _averageHeight!: number;\n\n static readonly defaultConfig: VirtualListConfig = {\n width: '100%',\n height: '100%',\n };\n _element: any;\n _scroller: any;\n _itemHeights!: number[];\n _containerSize!: number | string;\n _scrollPaddingBottom!: number;\n _scrollPaddingTop!: number;\n _scrollHeight: any;\n _itemPositions: any;\n _screenItemsLen!: number;\n _lastFrom!: number;\n _cachedItemsLen: any;\n\n static create(\n element: HTMLElement,\n userProvidedConfig: VirtualListConfig = VirtualList.defaultConfig\n ) {\n return new VirtualList(element, userProvidedConfig);\n }\n\n static mergeStyle(element: HTMLElement, style: any) {\n for (let i in style) {\n if (element.style[i as any] !== style[i]) {\n element.style[i as any] = style[i];\n }\n }\n }\n\n static getMaxBrowserHeight() {\n // Create two elements, the wrapper is `1px` tall and is transparent and\n // positioned at the top of the page. Inside that is an element that gets\n // set to 1 billion pixels. Then reads the max height the browser can\n // calculate.\n const wrapper = document.createElement('div');\n const fixture = document.createElement('div');\n\n // As said above, these values get set to put the fixture elements into the\n // right visual state.\n VirtualList.mergeStyle(wrapper, {\n position: 'absolute',\n height: '1px',\n opacity: 0,\n });\n VirtualList.mergeStyle(fixture, { height: '1e7px' });\n\n // Add the fixture into the wrapper element.\n wrapper.appendChild(fixture);\n\n // Apply to the page, the values won't kick in unless this is attached.\n document.body.appendChild(wrapper);\n\n // Get the maximum element height in pixels.\n const maxElementHeight = fixture.offsetHeight;\n\n // Remove the element immediately after reading the value.\n document.body.removeChild(wrapper);\n\n return maxElementHeight;\n }\n\n constructor(element: HTMLElement, userProvidedConfig: VirtualListConfig) {\n this._lastRepaint = null;\n this._maxElementHeight = VirtualList.getMaxBrowserHeight();\n\n this.refresh(element, userProvidedConfig);\n\n const config = this._config;\n\n // Create internal render loop.\n const render = () => {\n const scrollTop = this._getScrollPosition();\n const lastRepaint = this._lastRepaint;\n\n this._renderAnimationFrame = window.requestAnimationFrame(render);\n\n if (scrollTop === lastRepaint) {\n return;\n }\n\n const diff = lastRepaint ? scrollTop - lastRepaint : 0;\n if (!lastRepaint || diff < 0 || diff > this._averageHeight) {\n let rendered = this._renderChunk();\n\n this._lastRepaint = scrollTop;\n\n if (rendered !== false && typeof config.afterRender === 'function') {\n config.afterRender();\n }\n }\n };\n\n render();\n }\n\n destroy() {\n window.cancelAnimationFrame(this._renderAnimationFrame);\n }\n\n refresh(\n element: HTMLElement,\n userProvidedConfig: VirtualListConfig = VirtualList.defaultConfig\n ) {\n this._config = userProvidedConfig;\n\n if (!element || element.nodeType !== 1) {\n throw new Error('HyperList requires a valid DOM Node container');\n }\n\n this._element = element;\n\n const config = this._config as any;\n\n const scroller =\n this._scroller ||\n config.scroller ||\n document.createElement(config.scrollerTagName || 'tr');\n\n // Default configuration option `useFragment` to `true`.\n if (typeof config.useFragment !== 'boolean') {\n this._config.useFragment = true;\n }\n\n if (!config.generate) {\n throw new Error('Missing required `generate` function');\n }\n\n if (!isNumber(config.total)) {\n throw new Error('Invalid required `total` value, expected number');\n }\n\n if (!Array.isArray(config.itemHeight) && !isNumber(config.itemHeight)) {\n throw new Error(\n `\n Invalid required \\`itemHeight\\` value, expected number or array\n `.trim()\n );\n } else if (isNumber(config.itemHeight)) {\n this._itemHeights = Array(config.total).fill(config.itemHeight);\n } else {\n this._itemHeights = [config.itemHeight as any];\n }\n\n // Width and height should be coerced to string representations. Either in\n // `%` or `px`.\n Object.keys(VirtualList.defaultConfig)\n .filter((prop) => prop in config)\n .forEach((prop) => {\n const value = config[prop as any];\n const isValueNumber = isNumber(value);\n\n if (value && typeof value !== 'string' && typeof value !== 'number') {\n let msg = `Invalid optional \\`${prop}\\`, expected string or number`;\n throw new Error(msg);\n } else if (isValueNumber) {\n config[prop] = `${value}px`;\n }\n });\n\n const isHorizontal = Boolean(config.horizontal);\n const value = config[isHorizontal ? 'width' : 'height'];\n\n if (value) {\n const isValueNumber = isNumber(value);\n const isValuePercent = isValueNumber ? false : value.slice(-1) === '%';\n // Compute the containerHeight as number\n const numberValue = isValueNumber\n ? parseInt(value, 10)\n : parseInt(value.replace(/px|%/, ''), 10);\n const innerSize = window[isHorizontal ? 'innerWidth' : 'innerHeight'];\n\n if (isValuePercent) {\n this._containerSize = (innerSize * numberValue) / 100;\n } else {\n this._containerSize = isNumber(value) ? value : numberValue;\n }\n }\n\n const scrollContainer = config.scrollContainer;\n const scrollerHeight = config.itemHeight * config.total;\n const maxElementHeight = this._maxElementHeight;\n\n if (scrollerHeight > maxElementHeight) {\n console.warn(\n [\n 'HyperList: The maximum element height',\n maxElementHeight + 'px has',\n 'been exceeded; please reduce your item height.',\n ].join(' ')\n );\n }\n\n // Decorate the container element with styles that will match\n // the user supplied configuration.\n const elementStyle = {\n width: `${config.width}`,\n height: scrollContainer ? `${scrollerHeight}px` : `${config.height}`,\n overflow: scrollContainer ? 'none' : 'auto',\n position: 'relative',\n };\n\n VirtualList.mergeStyle(element, elementStyle);\n\n if (scrollContainer) {\n VirtualList.mergeStyle(config.scrollContainer, { overflow: 'auto' });\n }\n\n const scrollerStyle = {\n opacity: '0',\n position: 'absolute',\n [isHorizontal ? 'height' : 'width']: '1px',\n [isHorizontal ? 'width' : 'height']: `${scrollerHeight}px`,\n };\n\n VirtualList.mergeStyle(scroller, scrollerStyle);\n\n // Only append the scroller element once.\n if (!this._scroller) {\n element.appendChild(scroller);\n }\n\n const padding = this._computeScrollPadding();\n this._scrollPaddingBottom = padding.bottom;\n this._scrollPaddingTop = padding.top;\n\n // Set the scroller instance.\n this._scroller = scroller;\n this._scrollHeight = this._computeScrollHeight();\n\n // Reuse the item positions if refreshed, otherwise set to empty array.\n this._itemPositions = this._itemPositions || Array(config.total).fill(0);\n\n // Each index in the array should represent the position in the DOM.\n this._computePositions(0);\n\n // Render after refreshing. Force render if we're calling refresh manually.\n this._renderChunk(this._lastRepaint !== null);\n\n if (typeof config.afterRender === 'function') {\n config.afterRender();\n }\n }\n\n _getRow(i: number) {\n const config = this._config as any;\n let item = config.generate(i) as any;\n let height = item.height;\n\n if (height !== undefined && isNumber(height)) {\n item = item.element;\n\n // The height isn't the same as predicted, compute positions again\n if (height !== this._itemHeights[i]) {\n this._itemHeights[i] = height;\n this._computePositions(i);\n this._scrollHeight = this._computeScrollHeight();\n }\n } else {\n height = this._itemHeights[i];\n }\n\n if (!item || item.nodeType !== 1) {\n throw new Error(`Generator did not return a DOM Node for index: ${i}`);\n }\n\n addClass(item, config.rowClassName || 'vrow');\n\n const top = this._itemPositions[i] + this._scrollPaddingTop;\n\n VirtualList.mergeStyle(item, {\n position: 'absolute',\n [config.horizontal ? 'left' : 'top']: `${top}px`,\n });\n\n return item;\n }\n\n _getScrollPosition() {\n const config = this._config;\n\n if (typeof config.overrideScrollPosition === 'function') {\n return config.overrideScrollPosition();\n }\n\n return this._element[config.horizontal ? 'scrollLeft' : 'scrollTop'];\n }\n\n _renderChunk(force: boolean = false) {\n const config = this._config;\n const element = this._element;\n const scrollTop = this._getScrollPosition();\n const total: number = config.total!;\n\n let from = this._getFrom(scrollTop) - 1;\n\n if (from < 0 || from - this._screenItemsLen < 0) {\n from = 0;\n }\n\n if (!force && this._lastFrom === from) {\n return false;\n }\n\n this._lastFrom = from;\n\n let to = from + this._cachedItemsLen;\n\n if (to > total || to + this._cachedItemsLen > total) {\n to = total;\n }\n\n // Append all the new rows in a document fragment that we will later append\n // to the parent node\n const fragment: any = config.useFragment\n ? document.createDocumentFragment()\n : [\n // Sometimes you'll pass fake elements to this tool and Fragments require\n // real elements.\n ];\n\n // The element that forces the container to scroll.\n const scroller = this._scroller;\n\n // Keep the scroller in the list of children.\n fragment[config.useFragment ? 'appendChild' : 'push'](scroller);\n\n for (let i = from; i < to; i++) {\n let row = this._getRow(i);\n\n fragment[config.useFragment ? 'appendChild' : 'push'](row);\n }\n\n if (config.applyPatch) {\n return config.applyPatch(element, fragment);\n }\n\n element.innerHTML = '';\n element.appendChild(fragment);\n }\n\n _computePositions(from = 1) {\n const config = this._config;\n const total = config.total!;\n\n if (from < 1) {\n from = 1;\n }\n\n for (let i = from; i < total; i++) {\n this._itemPositions[i] =\n this._itemHeights[i - 1] + this._itemPositions[i - 1];\n }\n }\n\n _computeScrollHeight() {\n const config = this._config as any;\n const isHorizontal = Boolean(config.horizontal);\n const total = config.total;\n const scrollHeight =\n this._itemHeights.reduce((a, b) => a + b, 0) +\n this._scrollPaddingBottom +\n this._scrollPaddingTop;\n\n VirtualList.mergeStyle(this._scroller, {\n opacity: 0,\n position: 'absolute',\n top: '0px',\n [isHorizontal ? 'height' : 'width']: '1px',\n [isHorizontal ? 'width' : 'height']: `${scrollHeight}px`,\n });\n\n // Calculate the height median\n const sortedItemHeights = this._itemHeights.slice(0).sort((a, b) => a - b);\n const middle = Math.floor(total / 2);\n const averageHeight =\n total % 2 === 0\n ? (sortedItemHeights[middle] + sortedItemHeights[middle - 1]) / 2\n : sortedItemHeights[middle];\n\n const clientProp = isHorizontal ? 'clientWidth' : 'clientHeight';\n const element = config.scrollContainer\n ? config.scrollContainer\n : this._element;\n const containerHeight = element[clientProp]\n ? element[clientProp]\n : this._containerSize;\n this._screenItemsLen = Math.ceil(containerHeight / averageHeight);\n this._containerSize = containerHeight;\n\n // Cache 3 times the number of items that fit in the container viewport.\n this._cachedItemsLen = Math.max(\n this._cachedItemsLen || 0,\n this._screenItemsLen * 3\n );\n this._averageHeight = averageHeight;\n\n return scrollHeight;\n }\n\n _computeScrollPadding() {\n const config = this._config;\n const isHoriz = Boolean(config.horizontal);\n const styles = window.getComputedStyle(this._element);\n\n const padding = (location: string) => {\n const cssValue = styles.getPropertyValue(`padding-${location}`);\n return parseInt(cssValue, 10) || 0;\n };\n\n if (isHoriz) {\n return {\n bottom: padding('right'),\n top: padding('left'),\n };\n } else {\n return {\n bottom: padding('bottom'),\n top: padding('top'),\n };\n }\n }\n\n _getFrom(scrollTop: number) {\n let i = 0;\n\n while (this._itemPositions[i] < scrollTop) {\n i++;\n }\n\n return i;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n:host {\n display: block;\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { VirtualList, VirtualListConfig } from './../utils/lazy-list';\nimport { renderDefaultItem } from '../tree-item/default-tree-item';\nimport {\n TreeContext,\n TreeItem,\n TreeItemContext,\n TreeItemVisual,\n TreeModel,\n UpdateCallback,\n} from './tree-model';\nimport { dropdownController } from '../dropdown/dropdown-controller';\n\n@Component({\n tag: 'ix-tree',\n styleUrl: 'tree.css',\n shadow: true,\n})\nexport class Tree {\n @Element() hostElement!: HTMLIxTreeElement;\n\n /**\n * Initial root element will not be rendered\n */\n @Prop() root!: string;\n\n /**\n * Tree model\n */\n @Prop() model: TreeModel<any> = {};\n\n /**\n * Render function of tree items\n */\n @Prop() renderItem?: <T = any>(\n index: number,\n data: T,\n dataList: Array<T>,\n context: TreeContext,\n update: (callback: UpdateCallback) => void\n ) => HTMLElement;\n\n /**\n * Selection and collapsed state management\n */\n @Prop({ mutable: true }) context: TreeContext = {};\n\n /**\n * Enable to toggle items by click on the item\n * @since 3.0.0\n */\n @Prop() toggleOnItemClick?: boolean;\n\n /**\n * Context changed\n */\n @Event() contextChange!: EventEmitter<TreeContext>;\n\n /**\n * Node toggled event\n * @since 1.5.0\n */\n @Event() nodeToggled!: EventEmitter<{ id: string; isExpaned: boolean }>;\n\n /**\n * Node clicked event\n * @since 1.5.0\n */\n @Event() nodeClicked!: EventEmitter<string>;\n\n /**\n * Emits removed nodes\n */\n @Event() nodeRemoved!: EventEmitter<any>;\n\n private hyperlist?: VirtualList;\n\n private toggleListener = new Map<HTMLElement, Function>();\n private itemClickListener = new Map<HTMLElement, Function>();\n private updates = new Map<string, UpdateCallback>();\n private observer!: MutationObserver;\n private hasFirstRender = false;\n\n private updatePadding(element: HTMLElement, item: TreeItemVisual<unknown>) {\n element.style.paddingLeft = item.level + 'rem';\n }\n\n private getVirtualizerOptions(): VirtualListConfig {\n const list = this.buildTreeList(this.model[this.root]);\n\n let setToggleListener = (\n item: TreeItemVisual<any>,\n el: HTMLElement,\n index: number\n ) => {\n if (item.hasChildren && !this.toggleListener.has(el)) {\n const toggleCallback = (e: Event) => {\n e.preventDefault();\n e.stopPropagation();\n const context = this.getContext(list[index].id);\n context.isExpanded = !context.isExpanded;\n this.nodeToggled.emit({ id: item.id, isExpaned: context.isExpanded });\n this.setContext(item.id, context);\n };\n el.addEventListener('toggle', toggleCallback);\n this.toggleListener.set(el, toggleCallback);\n }\n };\n\n return {\n width: '100%',\n height: '100%',\n itemHeight: 32,\n total: list.length,\n generate: (index: number) => {\n const item = list[index];\n\n const renderedTreeItem = this.hostElement.querySelector(\n `[data-tree-node-id=\"${item.id}\"]`\n ) as HTMLIxTreeItemElement;\n\n const context = this.getContext(item.id);\n\n if (renderedTreeItem) {\n renderedTreeItem.hasChildren = item.hasChildren;\n renderedTreeItem.context = { ...context };\n\n setToggleListener(item, renderedTreeItem, index);\n\n if (this.updates.has(item.id)) {\n const doUpdate = this.updates.get(item.id);\n\n if (doUpdate) {\n doUpdate(item, { ...this.context });\n }\n }\n\n this.updatePadding(renderedTreeItem, item);\n return renderedTreeItem;\n }\n\n const update = (callback: UpdateCallback) => {\n this.updates.set(item.id, callback);\n };\n\n let innerElement: HTMLElement | null = null;\n if (this.renderItem) {\n innerElement = this.renderItem(\n index,\n item,\n list,\n { ...this.context },\n update\n );\n }\n\n if (innerElement === null) {\n innerElement = renderDefaultItem(item, context, update);\n }\n\n const el = innerElement;\n el.setAttribute('data-tree-node-id', item.id);\n el.style.paddingRight = '1rem';\n this.updatePadding(el, item);\n\n if (!this.itemClickListener.has(el)) {\n const itemClickCallback = (event: Event) => {\n const path = event.composedPath();\n const treeIndex = path.indexOf(this.hostElement);\n const treePath = path.slice(0, treeIndex);\n const hasTrigger = dropdownController.pathIncludesTrigger(treePath);\n\n if (hasTrigger) {\n return;\n }\n\n if (!event.defaultPrevented) {\n Object.values(this.context).forEach(\n (c) => (c.isSelected = false)\n );\n const context = this.getContext(item.id);\n context.isSelected = true;\n this.setContext(item.id, context);\n }\n\n if (this.toggleOnItemClick && item.hasChildren) {\n const context = this.getContext(item.id);\n context.isExpanded = !context.isExpanded;\n this.nodeToggled.emit({\n id: item.id,\n isExpaned: context.isExpanded,\n });\n this.setContext(item.id, context);\n }\n\n this.nodeClicked.emit(item.id);\n };\n el.addEventListener('toggle', (event) => {\n event.preventDefault();\n });\n el.addEventListener('click', itemClickCallback);\n this.itemClickListener.set(el, itemClickCallback);\n }\n\n setToggleListener(item, el, index);\n\n return el;\n },\n };\n }\n\n private setContext(id: string, context: TreeItemContext) {\n this.context = {\n ...this.context,\n [id]: context,\n };\n\n this.contextChange.emit(this.context);\n }\n\n private getContext(id: string): TreeItemContext {\n if (!this.context) {\n return {\n isExpanded: false,\n isSelected: false,\n };\n }\n if (!this.context[id]) {\n this.context[id] = {\n isExpanded: false,\n isSelected: false,\n };\n }\n return this.context[id];\n }\n\n private buildTreeList(\n root: TreeItem<any>,\n level: number = 0\n ): TreeItemVisual<any>[] {\n const itemList: TreeItemVisual<any>[] = [];\n\n if (root?.hasChildren) {\n const newLevel = level + 1;\n root.children.forEach((id: string) => {\n const item = this.model[id];\n const context = this.getContext(id);\n itemList.push({ ...item, level });\n if (item.hasChildren && context.isExpanded) {\n itemList.push(...this.buildTreeList(item, newLevel));\n }\n });\n }\n\n return itemList;\n }\n\n componentDidLoad() {\n this.initList();\n\n this.observer = new MutationObserver((records) => {\n let removed: unknown[] = [];\n\n records.forEach((record) => {\n removed = [...removed, ...Array.from(record.removedNodes)];\n\n record.addedNodes.forEach((an) => {\n const index = removed.indexOf(an);\n if (index >= 0) {\n removed.splice(index, 1);\n }\n });\n });\n\n this.nodeRemoved.emit(removed);\n });\n\n this.observer.observe(this.hostElement, {\n childList: true,\n });\n }\n\n componentWillRender() {\n this.hasFirstRender = true;\n\n if (this.isListInitialized()) {\n this.refreshList();\n } else {\n this.initList();\n }\n }\n\n connectedCallback() {\n if (this.hasFirstRender) {\n this.initList();\n }\n }\n\n disconnectedCallback() {\n this.hyperlist?.destroy();\n this.observer?.disconnect();\n }\n\n @Watch('model')\n modelChange() {\n if (this.hasFirstRender && !this.isListInitialized()) {\n this.initList();\n }\n }\n\n private isListInitialized() {\n //@ts-ignore\n const itemPositions = this.hyperlist?._itemPositions;\n\n return (\n itemPositions !== undefined &&\n itemPositions.length &&\n !itemPositions?.some(\n (item: number) => item === undefined || Number.isNaN(item)\n )\n );\n }\n\n private refreshList() {\n if (this.hyperlist) {\n this.hyperlist.refresh(this.hostElement, this.getVirtualizerOptions());\n }\n }\n\n private initList() {\n if (!this.model) {\n return;\n }\n\n this.hyperlist?.destroy();\n const config = this.getVirtualizerOptions();\n this.hyperlist = new VirtualList(this.hostElement, config);\n }\n\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["createEnterLeaveDebounce","enterCallback","leaveCallback","debounceTimeEnter","debounceTimeLeave","enterTimeout","leaveTimeout","onEnter","clearTimeout","setTimeout","onLeave","menuCategoryCss","DefaultIxMenuItemHeight","DefaultAnimationTimeout","MenuCategory","constructor","hostRef","this","menuExpand","showItems","showDropdown","nestedItems","enterLeaveDebounce","onPointerEnter","onPointerLeave","isNestedItemActive","getNestedItems","some","item","active","Array","from","hostElement","querySelectorAll","getNestedItemsHeight","items","length","onExpandCategory","animateFadeIn","animateFadeOut","slotHideThresholdMs","anime","targets","menuItemsContainer","duration","easing","opacity","maxHeight","complete","begin","_a","ixMenu","expand","closeOtherCategories","emit","onCategoryClick","e","stopPropagation","onNestedItemsChanged","mutations","oldNestedItemsLength","style","mutation","attributeName","target","HTMLElement","classList","contains","isCategoryItemListVisible","componentWillLoad","closestMenu","closestIxMenu","Error","componentDidLoad","observer","createMutationObserver","observe","attributes","childList","subtree","requestAnimationFrame","addEventListener","detail","clearMenuItemStyles","removeProperty","_b","disconnectedCallback","disconnect","render","h","Host","key","class","expanded","event","pointerType","notifications","icon","onClick","onFocus","isCategory","label","name","iconChevronDownSmall","ref","closeBehavior","show","onShowChanged","dropdownShown","anchor","placement","offset","mainAxis","tagName","preventDefault","format","bold","textColor"],"sources":["src/components/menu-category/enter-leave.ts","src/components/menu-category/menu-category.scss?tag=ix-menu-category&encapsulation=shadow","src/components/menu-category/menu-category.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nexport function createEnterLeaveDebounce(\n enterCallback: Function,\n leaveCallback: Function,\n {\n debounceTimeEnter,\n debounceTimeLeave,\n }: {\n debounceTimeEnter: number;\n debounceTimeLeave: number;\n } = {\n debounceTimeEnter: 0,\n debounceTimeLeave: 500,\n }\n) {\n let enterTimeout: NodeJS.Timeout;\n let leaveTimeout: NodeJS.Timeout;\n\n return {\n onEnter: () => {\n clearTimeout(leaveTimeout);\n enterTimeout = setTimeout(() => {\n enterCallback();\n }, debounceTimeEnter);\n },\n onLeave: () => {\n clearTimeout(enterTimeout);\n leaveTimeout = setTimeout(() => {\n leaveCallback();\n }, debounceTimeLeave);\n },\n };\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'mixins/shadow-dom/component';\n@import 'mixins/text-truncation';\n\n:host {\n @include ix-component;\n display: flex;\n flex-direction: column;\n position: relative;\n\n .category {\n display: flex;\n position: relative;\n align-items: center;\n width: 100%;\n height: 100%;\n }\n\n .category-text {\n width: 100%;\n padding-right: 0.25rem;\n @include ellipsis;\n }\n\n .category-chevron {\n margin-left: auto;\n margin-right: 0;\n transition: var(--theme-default-time) transform ease-in-out;\n }\n\n .category-chevron--open {\n transform: rotate(-180deg);\n }\n\n .menu-items {\n overflow: hidden;\n max-height: 0;\n transition: var(--theme-default-time) max-height ease-in-out;\n }\n\n .menu-items--expanded {\n max-height: 999999999px;\n padding: 0.25rem 0 0.25rem 1.625rem;\n }\n\n .menu-items--collapsed {\n display: none;\n }\n\n .category-dropdown {\n ::slotted(ix-menu-item) {\n --ix-menu-item-height: 2.5rem;\n }\n }\n\n .category-dropdown-header {\n pointer-events: none;\n padding-left: 0.125rem;\n min-width: 256px;\n }\n\n ::slotted(ix-menu-item) {\n --ix-menu-item-height: 2.5rem;\n }\n}\n\n:host(.expanded) {\n background-color: var(--theme-color-ghost--active);\n}\n\n:host {\n ::slotted(a[href]) {\n text-decoration: none !important;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport {\n Component,\n Element,\n h,\n Host,\n Prop,\n State,\n Event,\n EventEmitter,\n Listen,\n} from '@stencil/core';\nimport anime from 'animejs';\nimport { closestIxMenu } from '../utils/application-layout/context';\nimport { createMutationObserver } from '../utils/mutation-observer';\nimport { createEnterLeaveDebounce } from './enter-leave';\nimport { iconChevronDownSmall } from '@siemens/ix-icons/icons';\n\nconst DefaultIxMenuItemHeight = 40;\nconst DefaultAnimationTimeout = 150;\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-menu-category',\n styleUrl: 'menu-category.scss',\n shadow: true,\n})\nexport class MenuCategory {\n @Element() hostElement!: HTMLIxMenuCategoryElement;\n\n /**\n * Display name of the category\n */\n @Prop() label?: string;\n\n /**\n * Icon of the category\n */\n @Prop() icon?: string;\n\n /**\n * Show notification count on the category\n */\n @Prop() notifications?: number;\n\n /** @internal */\n // eslint-disable-next-line @stencil-community/decorators-style\n @Event({ bubbles: true, cancelable: true })\n closeOtherCategories!: EventEmitter;\n\n @State() menuExpand = false;\n @State() showItems = false;\n @State() showDropdown = false;\n @State() nestedItems: HTMLIxMenuItemElement[] = [];\n\n private observer?: MutationObserver;\n private menuItemsContainer?: HTMLDivElement;\n private ixMenu?: HTMLIxMenuElement;\n\n private enterLeaveDebounce = createEnterLeaveDebounce(\n () => {\n this.onPointerEnter();\n },\n () => {\n this.onPointerLeave();\n }\n );\n\n private isNestedItemActive() {\n return this.getNestedItems().some((item) => item.active);\n }\n\n private getNestedItems() {\n return Array.from(\n this.hostElement.querySelectorAll(':scope ix-menu-item')\n ) as HTMLIxMenuItemElement[];\n }\n\n private getNestedItemsHeight() {\n const items = this.getNestedItems();\n\n return items.length * DefaultIxMenuItemHeight;\n }\n\n private onExpandCategory(showItems: boolean) {\n if (showItems) {\n this.animateFadeIn();\n } else {\n this.animateFadeOut();\n }\n }\n\n private animateFadeOut() {\n const slotHideThresholdMs = 25;\n anime({\n targets: this.menuItemsContainer,\n duration: DefaultAnimationTimeout,\n easing: 'easeInSine',\n opacity: [1, 0],\n maxHeight: [this.getNestedItemsHeight() + DefaultIxMenuItemHeight, 0],\n complete: () => {\n setTimeout(() => {\n this.showItems = false;\n this.showDropdown = false;\n }, DefaultAnimationTimeout + slotHideThresholdMs);\n },\n });\n }\n\n private animateFadeIn() {\n anime({\n targets: this.menuItemsContainer,\n duration: DefaultAnimationTimeout,\n easing: 'easeInSine',\n opacity: [0, 1],\n maxHeight: [0, this.getNestedItemsHeight() + DefaultIxMenuItemHeight],\n begin: () => {\n this.showItems = true;\n this.showDropdown = false;\n },\n });\n }\n\n private onPointerEnter() {\n if (this.ixMenu?.expand) {\n return;\n }\n this.closeOtherCategories.emit();\n this.showDropdown = true;\n }\n\n @Listen('closeOtherCategories', { target: 'window' })\n private onPointerLeave() {\n this.showDropdown = false;\n }\n\n private onCategoryClick(e: MouseEvent) {\n e.stopPropagation();\n if (this.ixMenu?.expand) {\n this.onExpandCategory(!this.showItems);\n return;\n }\n }\n\n private onNestedItemsChanged(mutations?: MutationRecord[]) {\n const oldNestedItemsLength = this.nestedItems.length;\n this.nestedItems = this.getNestedItems();\n\n if (\n this.showItems &&\n this.menuItemsContainer &&\n oldNestedItemsLength !== this.nestedItems.length\n ) {\n this.menuItemsContainer.style.maxHeight = `${\n this.getNestedItemsHeight() + DefaultIxMenuItemHeight\n }px`;\n }\n\n if (!this.menuExpand || this.showItems || !mutations) {\n return;\n }\n\n for (const mutation of mutations ?? []) {\n if (\n mutation.attributeName === 'class' &&\n mutation.target instanceof HTMLElement &&\n mutation.target.classList.contains('active')\n ) {\n this.showItems = true;\n this.onExpandCategory(true);\n return;\n }\n }\n }\n\n private isCategoryItemListVisible() {\n return this.menuExpand && (this.showItems || this.isNestedItemActive());\n }\n\n componentWillLoad() {\n const closestMenu = closestIxMenu(this.hostElement);\n if (!closestMenu) {\n throw Error('ix-menu-category can only be used as a child of ix-menu');\n }\n this.ixMenu = closestMenu;\n\n this.menuExpand = this.ixMenu.expand;\n this.showItems = this.isCategoryItemListVisible();\n }\n\n componentDidLoad() {\n this.observer = createMutationObserver((mutations: MutationRecord[]) =>\n this.onNestedItemsChanged(mutations)\n );\n\n this.observer.observe(this.hostElement, {\n attributes: true,\n childList: true,\n subtree: true,\n });\n\n requestAnimationFrame(() => {\n this.onNestedItemsChanged();\n });\n\n this.ixMenu?.addEventListener(\n 'expandChange',\n ({ detail: menuExpand }: CustomEvent<boolean>) => {\n this.menuExpand = menuExpand;\n if (!menuExpand) {\n this.clearMenuItemStyles();\n }\n this.showItems = this.isCategoryItemListVisible();\n }\n );\n }\n\n clearMenuItemStyles() {\n this.menuItemsContainer?.style.removeProperty('max-height');\n this.menuItemsContainer?.style.removeProperty('opacity');\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n }\n\n render() {\n return (\n <Host\n class={{\n expanded: this.showItems,\n }}\n onPointerEnter={() => {\n this.enterLeaveDebounce.onEnter();\n }}\n onPointerLeave={(event: PointerEvent) => {\n if (event.pointerType === 'touch') {\n return;\n }\n this.enterLeaveDebounce.onLeave();\n }}\n >\n <ix-menu-item\n class={'category-parent'}\n active={this.isNestedItemActive()}\n notifications={this.notifications}\n icon={this.icon}\n onClick={(e) => this.onCategoryClick(e)}\n onFocus={() => this.onPointerEnter()}\n isCategory\n >\n <div class=\"category\">\n <div class=\"category-text\">{this.label}</div>\n <ix-icon\n name={iconChevronDownSmall}\n class={{\n 'category-chevron': true,\n 'category-chevron--open': this.showItems,\n }}\n ></ix-icon>\n </div>\n </ix-menu-item>\n <div\n ref={(ref) => (this.menuItemsContainer = ref!)}\n class={{\n 'menu-items': true,\n 'menu-items--expanded': this.showItems,\n 'menu-items--collapsed': !this.showItems,\n }}\n >\n {this.showItems ? <slot></slot> : null}\n </div>\n <ix-dropdown\n closeBehavior={'both'}\n show={this.showDropdown}\n onShowChanged={({ detail: dropdownShown }: CustomEvent<boolean>) => {\n this.showDropdown = dropdownShown;\n }}\n class={'category-dropdown'}\n anchor={this.hostElement}\n placement=\"right-start\"\n offset={{\n mainAxis: 3,\n }}\n onClick={(e) => {\n if (e.target instanceof HTMLElement) {\n if (e.target.tagName === 'IX-MENU-ITEM') {\n this.showDropdown = false;\n } else {\n e.preventDefault();\n }\n }\n }}\n >\n <ix-dropdown-item class={'category-dropdown-header'}>\n <ix-typography format=\"label\" bold textColor=\"std\">\n {this.label}\n </ix-typography>\n </ix-dropdown-item>\n <ix-divider></ix-divider>\n <slot></slot>\n </ix-dropdown>\n </Host>\n );\n }\n}\n"],"mappings":"wOAQM,SAAUA,EACdC,EACAC,GACAC,kBACEA,EAAiBC,kBACjBA,GAIE,CACFD,kBAAmB,EACnBC,kBAAmB,MAGrB,IAAIC,EACJ,IAAIC,EAEJ,MAAO,CACLC,QAAS,KACPC,aAAaF,GACbD,EAAeI,YAAW,KACxBR,GAAe,GACdE,EAAkB,EAEvBO,QAAS,KACPF,aAAaH,GACbC,EAAeG,YAAW,KACxBP,GAAe,GACdE,EAAkB,EAG3B,CCvCA,MAAMO,EAAkB,ovDCyBxB,MAAMC,EAA0B,GAChC,MAAMC,EAA0B,I,MAUnBC,EAAY,MALzB,WAAAC,CAAAC,G,qEA4BWC,KAAUC,WAAG,MACbD,KAASE,UAAG,MACZF,KAAYG,aAAG,MACfH,KAAWI,YAA4B,GAMxCJ,KAAAK,mBAAqBtB,GAC3B,KACEiB,KAAKM,gBAAgB,IAEvB,KACEN,KAAKO,gBAAgB,GAmP1B,CA/OS,kBAAAC,GACN,OAAOR,KAAKS,iBAAiBC,MAAMC,GAASA,EAAKC,Q,CAG3C,cAAAH,GACN,OAAOI,MAAMC,KACXd,KAAKe,YAAYC,iBAAiB,uB,CAI9B,oBAAAC,GACN,MAAMC,EAAQlB,KAAKS,iBAEnB,OAAOS,EAAMC,OAASxB,C,CAGhB,gBAAAyB,CAAiBlB,GACvB,GAAIA,EAAW,CACbF,KAAKqB,e,KACA,CACLrB,KAAKsB,gB,EAID,cAAAA,GACN,MAAMC,EAAsB,GAC5BC,EAAM,CACJC,QAASzB,KAAK0B,mBACdC,SAAU/B,EACVgC,OAAQ,aACRC,QAAS,CAAC,EAAG,GACbC,UAAW,CAAC9B,KAAKiB,uBAAyBtB,EAAyB,GACnEoC,SAAU,KACRvC,YAAW,KACTQ,KAAKE,UAAY,MACjBF,KAAKG,aAAe,KAAK,GACxBP,EAA0B2B,EAAoB,G,CAK/C,aAAAF,GACNG,EAAM,CACJC,QAASzB,KAAK0B,mBACdC,SAAU/B,EACVgC,OAAQ,aACRC,QAAS,CAAC,EAAG,GACbC,UAAW,CAAC,EAAG9B,KAAKiB,uBAAyBtB,GAC7CqC,MAAO,KACLhC,KAAKE,UAAY,KACjBF,KAAKG,aAAe,KAAK,G,CAKvB,cAAAG,G,MACN,IAAI2B,EAAAjC,KAAKkC,UAAQ,MAAAD,SAAA,SAAAA,EAAAE,OAAQ,CACvB,M,CAEFnC,KAAKoC,qBAAqBC,OAC1BrC,KAAKG,aAAe,I,CAId,cAAAI,GACNP,KAAKG,aAAe,K,CAGd,eAAAmC,CAAgBC,G,MACtBA,EAAEC,kBACF,IAAIP,EAAAjC,KAAKkC,UAAQ,MAAAD,SAAA,SAAAA,EAAAE,OAAQ,CACvBnC,KAAKoB,kBAAkBpB,KAAKE,WAC5B,M,EAII,oBAAAuC,CAAqBC,GAC3B,MAAMC,EAAuB3C,KAAKI,YAAYe,OAC9CnB,KAAKI,YAAcJ,KAAKS,iBAExB,GACET,KAAKE,WACLF,KAAK0B,oBACLiB,IAAyB3C,KAAKI,YAAYe,OAC1C,CACAnB,KAAK0B,mBAAmBkB,MAAMd,UAAY,GACxC9B,KAAKiB,uBAAyBtB,K,CAIlC,IAAKK,KAAKC,YAAcD,KAAKE,YAAcwC,EAAW,CACpD,M,CAGF,IAAK,MAAMG,KAAYH,IAAS,MAATA,SAAS,EAATA,EAAa,GAAI,CACtC,GACEG,EAASC,gBAAkB,SAC3BD,EAASE,kBAAkBC,aAC3BH,EAASE,OAAOE,UAAUC,SAAS,UACnC,CACAlD,KAAKE,UAAY,KACjBF,KAAKoB,iBAAiB,MACtB,M,GAKE,yBAAA+B,GACN,OAAOnD,KAAKC,aAAeD,KAAKE,WAAaF,KAAKQ,qB,CAGpD,iBAAA4C,GACE,MAAMC,EAAcC,EAActD,KAAKe,aACvC,IAAKsC,EAAa,CAChB,MAAME,MAAM,0D,CAEdvD,KAAKkC,OAASmB,EAEdrD,KAAKC,WAAaD,KAAKkC,OAAOC,OAC9BnC,KAAKE,UAAYF,KAAKmD,2B,CAGxB,gBAAAK,G,MACExD,KAAKyD,SAAWC,GAAwBhB,GACtC1C,KAAKyC,qBAAqBC,KAG5B1C,KAAKyD,SAASE,QAAQ3D,KAAKe,YAAa,CACtC6C,WAAY,KACZC,UAAW,KACXC,QAAS,OAGXC,uBAAsB,KACpB/D,KAAKyC,sBAAsB,KAG7BR,EAAAjC,KAAKkC,UAAM,MAAAD,SAAA,SAAAA,EAAE+B,iBACX,gBACA,EAAGC,OAAQhE,MACTD,KAAKC,WAAaA,EAClB,IAAKA,EAAY,CACfD,KAAKkE,qB,CAEPlE,KAAKE,UAAYF,KAAKmD,2BAA2B,G,CAKvD,mBAAAe,G,SACEjC,EAAAjC,KAAK0B,sBAAoB,MAAAO,SAAA,SAAAA,EAAAW,MAAMuB,eAAe,eAC9CC,EAAApE,KAAK0B,sBAAoB,MAAA0C,SAAA,SAAAA,EAAAxB,MAAMuB,eAAe,U,CAGhD,oBAAAE,GACE,GAAIrE,KAAKyD,SAAU,CACjBzD,KAAKyD,SAASa,Y,EAIlB,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAO,CACLC,SAAU5E,KAAKE,WAEjBI,eAAgB,KACdN,KAAKK,mBAAmBf,SAAS,EAEnCiB,eAAiBsE,IACf,GAAIA,EAAMC,cAAgB,QAAS,CACjC,M,CAEF9E,KAAKK,mBAAmBZ,SAAS,GAGnC+E,EACE,gBAAAE,IAAA,2CAAAC,MAAO,kBACP/D,OAAQZ,KAAKQ,qBACbuE,cAAe/E,KAAK+E,cACpBC,KAAMhF,KAAKgF,KACXC,QAAU1C,GAAMvC,KAAKsC,gBAAgBC,GACrC2C,QAAS,IAAMlF,KAAKM,iBACpB6E,WAAU,MAEVX,EAAK,OAAAE,IAAA,2CAAAC,MAAM,YACTH,EAAA,OAAAE,IAAA,2CAAKC,MAAM,iBAAiB3E,KAAKoF,OACjCZ,EAAA,WAAAE,IAAA,2CACEW,KAAMC,EACNX,MAAO,CACL,mBAAoB,KACpB,yBAA0B3E,KAAKE,eAKvCsE,EAAA,OAAAE,IAAA,2CACEa,IAAMA,GAASvF,KAAK0B,mBAAqB6D,EACzCZ,MAAO,CACL,aAAc,KACd,uBAAwB3E,KAAKE,UAC7B,yBAA0BF,KAAKE,YAGhCF,KAAKE,UAAYsE,EAAA,aAAgB,MAEpCA,EAAA,eAAAE,IAAA,2CACEc,cAAe,OACfC,KAAMzF,KAAKG,aACXuF,cAAe,EAAGzB,OAAQ0B,MACxB3F,KAAKG,aAAewF,CAAa,EAEnChB,MAAO,oBACPiB,OAAQ5F,KAAKe,YACb8E,UAAU,cACVC,OAAQ,CACNC,SAAU,GAEZd,QAAU1C,IACR,GAAIA,EAAEQ,kBAAkBC,YAAa,CACnC,GAAIT,EAAEQ,OAAOiD,UAAY,eAAgB,CACvChG,KAAKG,aAAe,K,KACf,CACLoC,EAAE0D,gB,KAKRzB,EAAkB,oBAAAE,IAAA,2CAAAC,MAAO,4BACvBH,EAAA,iBAAAE,IAAA,2CAAewB,OAAO,QAAQC,KAAK,KAAAC,UAAU,OAC1CpG,KAAKoF,QAGVZ,EAAyB,cAAAE,IAAA,6CACzBF,EAAa,QAAAE,IAAA,8C","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["menuAvatarCss","MenuAvatar","constructor","hostRef","this","i18nLogout","showLogoutButton","showContextMenu","avatarElementId","onSlotChange","slot","hostElement","shadowRoot","querySelector","elements","getSlottedElements","length","render","h","Host","key","class","title","top","id","tabIndex","image","initials","bottom","trigger","placement","hidden","offset","mainAxis","onSlotchange","label","icon","iconLogOut","onClick","e","logoutClick","emit"],"sources":["src/components/menu-avatar/menu-avatar.scss?tag=ix-menu-avatar&encapsulation=shadow","src/components/menu-avatar/menu-avatar.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/text-truncation';\n@import 'mixins/hover';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n display: block;\n position: relative;\n margin-bottom: 0.5rem;\n margin-right: 0.75rem;\n\n .avatar {\n all: unset;\n box-sizing: border-box;\n\n display: flex;\n align-items: center;\n height: 2.5rem;\n width: 100%;\n max-height: 2.5rem;\n padding-left: 0.25rem;\n margin-left: 0.41rem;\n margin-right: 0.35rem;\n transition: var(--theme-default-time);\n\n .avatar-name {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n white-space: nowrap;\n margin-left: $default-space;\n line-height: 1.14;\n\n .text-default-single {\n color: var(--theme-nav-item-primary--color);\n @include ellipsis;\n }\n }\n\n border-radius: 1.25rem;\n\n @include hover {\n background-color: var(--theme-avatar-btn--background--hover);\n color: var(--theme-avatar-btn--color--hover);\n }\n\n @include active {\n background-color: var(--theme-avatar-btn--background--active);\n color: var(--theme-avatar-btn--color--active);\n }\n }\n\n .avatar:focus-visible {\n outline: 1px solid var(--theme-color-focus-bdr);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n State,\n} from '@stencil/core';\nimport { getSlottedElements } from '../utils/shadow-dom';\nimport { iconLogOut } from '@siemens/ix-icons/icons';\n\n@Component({\n tag: 'ix-menu-avatar',\n styleUrl: 'menu-avatar.scss',\n shadow: true,\n})\nexport class MenuAvatar {\n @Element() hostElement!: HTMLIxMenuAvatarElement;\n\n /**\n * First line of text\n */\n @Prop() top?: string;\n\n /**\n * Second line of text\n */\n @Prop() bottom?: string;\n\n /**\n * Display a avatar image\n *\n * @since 1.4.0\n */\n @Prop() image?: string;\n\n /**\n * Display the initials of the user. Will be overwritten by image\n *\n * @since 1.4.0\n */\n @Prop() initials?: string;\n\n /**\n * Use for translation\n */\n @Prop() i18nLogout: string = 'Logout';\n\n /**\n * Control the visibility of the logout button\n * @since 2.1.0\n */\n @Prop() showLogoutButton: boolean = true;\n\n /**\n * Control the visibility of the dropdown menu\n * @since 2.1.0\n */\n @State() showContextMenu: boolean = false;\n\n /**\n * Logout click\n */\n @Event() logoutClick!: EventEmitter;\n\n private avatarElementId = 'ix-menu-avatar-id';\n\n onSlotChange() {\n const slot = this.hostElement.shadowRoot!.querySelector('slot');\n if (!slot) {\n return;\n }\n const elements = getSlottedElements(slot);\n this.showContextMenu = elements.length !== 0;\n }\n\n render() {\n return (\n <Host slot=\"ix-menu-avatar\">\n <button\n class=\"nav-item top-item avatar no-hover\"\n title={this.top}\n id={this.avatarElementId}\n tabIndex={0}\n >\n <ix-avatar image={this.image} initials={this.initials}></ix-avatar>\n\n <div class=\"avatar-name\">\n <span class=\"text-default-single\" title={this.top}>\n {this.top}\n </span>\n <span class=\"text-default-single\" title={this.bottom}>\n {this.bottom}\n </span>\n </div>\n </button>\n <ix-dropdown\n trigger={this.hostElement}\n placement={'right-start'}\n hidden={!this.showContextMenu && !this.showLogoutButton}\n offset={{\n mainAxis: 16,\n }}\n >\n <slot onSlotchange={() => this.onSlotChange()}></slot>\n {this.showLogoutButton ? (\n <ix-menu-avatar-item\n label={this.i18nLogout}\n icon={iconLogOut}\n onClick={(e) => {\n this.logoutClick.emit(e);\n }}\n ></ix-menu-avatar-item>\n ) : null}\n </ix-dropdown>\n </Host>\n );\n }\n}\n"],"mappings":"wIAAA,MAAMA,EAAgB,g4D,MC0BTC,EAAU,MALvB,WAAAC,CAAAC,G,mDAmCUC,KAAUC,WAAW,SAMrBD,KAAgBE,iBAAY,KAM3BF,KAAeG,gBAAY,MAO5BH,KAAeI,gBAAG,mBAqD3B,CAnDC,YAAAC,GACE,MAAMC,EAAON,KAAKO,YAAYC,WAAYC,cAAc,QACxD,IAAKH,EAAM,CACT,M,CAEF,MAAMI,EAAWC,EAAmBL,GACpCN,KAAKG,gBAAkBO,EAASE,SAAW,C,CAG7C,MAAAC,GACE,OACEC,EAACC,EAAK,CAAAC,IAAA,2CAAAV,KAAK,kBACTQ,EAAA,UAAAE,IAAA,2CACEC,MAAM,oCACNC,MAAOlB,KAAKmB,IACZC,GAAIpB,KAAKI,gBACTiB,SAAU,GAEVP,EAAW,aAAAE,IAAA,2CAAAM,MAAOtB,KAAKsB,MAAOC,SAAUvB,KAAKuB,WAE7CT,EAAK,OAAAE,IAAA,2CAAAC,MAAM,eACTH,EAAA,QAAAE,IAAA,2CAAMC,MAAM,sBAAsBC,MAAOlB,KAAKmB,KAC3CnB,KAAKmB,KAERL,EAAA,QAAAE,IAAA,2CAAMC,MAAM,sBAAsBC,MAAOlB,KAAKwB,QAC3CxB,KAAKwB,UAIZV,EACE,eAAAE,IAAA,2CAAAS,QAASzB,KAAKO,YACdmB,UAAW,cACXC,QAAS3B,KAAKG,kBAAoBH,KAAKE,iBACvC0B,OAAQ,CACNC,SAAU,KAGZf,EAAM,QAAAE,IAAA,2CAAAc,aAAc,IAAM9B,KAAKK,iBAC9BL,KAAKE,iBACJY,EAAA,uBACEiB,MAAO/B,KAAKC,WACZ+B,KAAMC,EACNC,QAAUC,IACRnC,KAAKoC,YAAYC,KAAKF,EAAE,IAG1B,M","ignoreList":[]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as t,c as e,h as i,f as r,H as s,g as o}from"./p-BNpBEtDH.js";import{b as a,a as h}from"./p-Bb7pDeaQ.js";import{c as l}from"./p-CX81WQtk.js";import{m as n}from"./p-bcj7UEIC.js";const c=":host{display:flex;justify-content:flex-start;height:2.5rem;align-items:center;background-color:transparent;overflow:hidden}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .previous-button{width:3rem;min-width:0px}:host .crumb-dropdown{overflow:visible}:host .remove-anchor::after{display:none}:host .more-text{display:flex}:host .more-text .more-text-ellipsis{width:1rem;display:inline-block;font-weight:700}:host .more-text ix-icon{padding-top:2px}:host nav,:host ol,:host .crumb-items{display:contents}";let b=0;const d=(t="breadcrumb-")=>`${t}-${b++}`;const m=class{constructor(i){t(this,i);this.itemClick=e(this,"itemClick",7);this.nextClick=e(this,"nextClick",7);this.visibleItemCount=9;this.nextItems=[];this.ghost=true;this.ariaLabelPreviousButton="previous";this.previousButtonRef=n();this.nextButtonRef=n();this.items=[];this.isPreviousDropdownExpanded=false;this.previousButtonId=d();this.previousDropdownId=d()}onNextItemsChange(){this.onChildMutation()}onItemClick(t){this.itemClick.emit(t)}componentDidLoad(){this.mutationObserver=l((()=>this.onChildMutation()));this.mutationObserver.observe(this.hostElement,{subtree:true,childList:true})}componentWillLoad(){this.onChildMutation()}disconnectedCallback(){var t;(t=this.mutationObserver)===null||t===void 0?void 0:t.disconnect()}async onChildMutation(){const t=this.getItems();t.forEach(((e,i)=>{const r=this.nextItems.length!==0&&t.length-1===i;e.ghost=this.ghost;e.showChevron=t.length-1!==i||r;e.isDropdownTrigger=r;if(r){this.nextButtonRef(e)}if(t.length<this.visibleItemCount){return}e.visible=i>=t.length-this.visibleItemCount}));this.items=t}getItems(){return Array.from(this.hostElement.querySelectorAll("ix-breadcrumb-item"))}render(){var t,e,o,l;const n=a(this.hostElement);return i(s,{key:"ad4b8c147f3478a9cb8f01d5f46b99ff86ee323f"},i("ix-dropdown",{key:"b8fa759644e7252e3f25c5805e06196ad7acfeb3",id:this.previousDropdownId,"aria-label":this.ariaLabelPreviousButton,trigger:((t=this.items)===null||t===void 0?void 0:t.length)>this.visibleItemCount?this.previousButtonRef.waitForCurrent():undefined,onShowChanged:({detail:t})=>{this.isPreviousDropdownExpanded=t;const e=this.hostElement.shadowRoot.getElementById(this.previousButtonId);if(e){r(e)}}},this.items.slice(0,this.items.length-this.visibleItemCount).map((t=>{var e;const r=(e=t.label)!==null&&e!==void 0?e:t.innerText;return i("ix-dropdown-item",{label:r,onClick:()=>{this.onItemClick(r)},onItemClick:t=>t.stopPropagation()})}))),((e=this.items)===null||e===void 0?void 0:e.length)>this.visibleItemCount?i("ix-breadcrumb-item",{id:this.previousButtonId,ref:this.previousButtonRef,label:"...",tabIndex:1,onItemClick:t=>t.stopPropagation(),"aria-describedby":this.previousDropdownId,"aria-controls":this.previousDropdownId,"aria-expanded":h(this.isPreviousDropdownExpanded),class:"previous-button"}):null,i("nav",{key:"894aa6aba077c3154ff4e2f75ea90e044c9dd1b8",class:"crumb-items","aria-label":(o=n["aria-label"])!==null&&o!==void 0?o:"breadcrumbs"},i("ol",{key:"a1bba2fc77e17877306e996373dc6269c7530e48"},i("slot",{key:"50dea282515e311e37ea48776793cc0aaa6746b2"}))),i("ix-dropdown",{key:"3ebe74020ea3edabcaff09c3840db5fdeef1581d",trigger:this.nextButtonRef.waitForCurrent()},(l=this.nextItems)===null||l===void 0?void 0:l.map((t=>i("ix-dropdown-item",{label:t,onClick:e=>{this.nextClick.emit({event:e,item:t})},onItemClick:t=>t.stopPropagation()})))))}get hostElement(){return o(this)}static get watchers(){return{nextItems:["onNextItemsChange"]}}};m.style=c;export{m as ix_breadcrumb};
|
|
2
|
-
//# sourceMappingURL=p-f81de54a.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["breadcrumbCss","sequenceId","createId","prefix","Breadcrumb","constructor","hostRef","this","visibleItemCount","nextItems","ghost","ariaLabelPreviousButton","previousButtonRef","makeRef","nextButtonRef","items","isPreviousDropdownExpanded","previousButtonId","previousDropdownId","onNextItemsChange","onChildMutation","onItemClick","item","itemClick","emit","componentDidLoad","mutationObserver","createMutationObserver","observe","hostElement","subtree","childList","componentWillLoad","disconnectedCallback","_a","disconnect","updatedItems","getItems","forEach","bc","index","shouldShowDropdown","length","showChevron","isDropdownTrigger","visible","Array","from","querySelectorAll","render","a11y","a11yHostAttributes","h","Host","key","id","trigger","waitForCurrent","undefined","onShowChanged","detail","previousButton","shadowRoot","getElementById","forceUpdate","slice","map","label","innerText","onClick","event","stopPropagation","_b","ref","tabIndex","a11yBoolean","class","_c","_d","e","nextClick"],"sources":["src/components/breadcrumb/breadcrumb.scss?tag=ix-breadcrumb&encapsulation=shadow","src/components/breadcrumb/breadcrumb.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/hover';\n@import 'mixins/text-truncation';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n\n display: flex;\n justify-content: flex-start;\n height: 2.5rem;\n align-items: center;\n background-color: transparent;\n overflow: hidden;\n\n .previous-button {\n width: 3rem;\n min-width: 0px;\n }\n\n .crumb-dropdown {\n overflow: visible;\n }\n\n .remove-anchor::after {\n display: none;\n }\n\n .more-text {\n display: flex;\n\n .more-text-ellipsis {\n width: 1rem;\n display: inline-block;\n font-weight: $font-weight-bold;\n }\n\n ix-icon {\n // line-height: unset; --> Note: 'line-height' can't be applied due to shadow DOM encapsulation at ix-icon\n // using padding-top to achieve same position as before\n padding-top: 2px;\n }\n }\n\n nav,\n ol,\n .crumb-items {\n display: contents;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n forceUpdate,\n h,\n Host,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { a11yBoolean, a11yHostAttributes } from '../utils/a11y';\nimport { createMutationObserver } from '../utils/mutation-observer';\nimport { makeRef } from '../utils/make-ref';\n\nlet sequenceId = 0;\nconst createId = (prefix: string = 'breadcrumb-') => {\n return `${prefix}-${sequenceId++}`;\n};\n\n@Component({\n tag: 'ix-breadcrumb',\n styleUrl: 'breadcrumb.scss',\n shadow: true,\n})\nexport class Breadcrumb {\n @Element() hostElement!: HTMLIxBreadcrumbElement;\n\n /**\n * Excess items will get hidden inside of dropdown\n */\n @Prop() visibleItemCount = 9;\n\n /**\n * Items will be accessible through a dropdown\n */\n @Prop() nextItems: string[] = [];\n @Watch('nextItems')\n onNextItemsChange() {\n this.onChildMutation();\n }\n\n /**\n * Ghost breadcrumbs will not show solid backgrounds on individual crumbs unless there is a mouse event (e.g. hover)\n */\n @Prop() ghost = true;\n\n /**\n * Accessibility label for the dropdown button (ellipsis icon) used to access the dropdown list\n * with conditionally hidden previous items\n *\n * @since 2.0.0\n */\n @Prop() ariaLabelPreviousButton = 'previous';\n\n /**\n * Crumb item clicked event\n */\n @Event() itemClick!: EventEmitter<string>;\n\n /**\n * Next item clicked event\n */\n @Event() nextClick!: EventEmitter<{ event: UIEvent; item: string }>;\n\n private readonly previousButtonRef = makeRef<HTMLIxBreadcrumbItemElement>();\n private readonly nextButtonRef = makeRef<HTMLElement>();\n\n @State() items: HTMLIxBreadcrumbItemElement[] = [];\n @State() isPreviousDropdownExpanded = false;\n\n private mutationObserver?: MutationObserver;\n\n private previousButtonId = createId();\n private previousDropdownId = createId();\n\n private onItemClick(item: string) {\n this.itemClick.emit(item);\n }\n\n componentDidLoad() {\n this.mutationObserver = createMutationObserver(() =>\n this.onChildMutation()\n );\n\n this.mutationObserver.observe(this.hostElement, {\n subtree: true,\n childList: true,\n });\n }\n\n componentWillLoad() {\n this.onChildMutation();\n }\n\n disconnectedCallback() {\n this.mutationObserver?.disconnect();\n }\n\n private async onChildMutation() {\n const updatedItems = this.getItems();\n\n updatedItems.forEach((bc, index) => {\n const shouldShowDropdown =\n this.nextItems.length !== 0 && updatedItems.length - 1 === index;\n\n bc.ghost = this.ghost;\n bc.showChevron = updatedItems.length - 1 !== index || shouldShowDropdown;\n bc.isDropdownTrigger = shouldShowDropdown;\n\n if (shouldShowDropdown) {\n this.nextButtonRef(bc);\n }\n\n if (updatedItems.length < this.visibleItemCount) {\n return;\n }\n\n bc.visible = index >= updatedItems.length - this.visibleItemCount;\n });\n\n this.items = updatedItems;\n }\n\n private getItems() {\n return Array.from(this.hostElement.querySelectorAll('ix-breadcrumb-item'));\n }\n\n render() {\n const a11y = a11yHostAttributes(this.hostElement);\n return (\n <Host>\n <ix-dropdown\n id={this.previousDropdownId}\n aria-label={this.ariaLabelPreviousButton}\n trigger={\n this.items?.length > this.visibleItemCount\n ? this.previousButtonRef.waitForCurrent()\n : undefined\n }\n onShowChanged={({ detail }) => {\n this.isPreviousDropdownExpanded = detail;\n\n const previousButton = this.hostElement.shadowRoot!.getElementById(\n this.previousButtonId\n );\n\n // Need to force update previous button to change `aria-expanded`\n if (previousButton) {\n forceUpdate(previousButton);\n }\n }}\n >\n {this.items\n .slice(0, this.items.length - this.visibleItemCount)\n .map((item) => {\n const label = item.label ?? item.innerText;\n\n return (\n <ix-dropdown-item\n label={label}\n onClick={() => {\n this.onItemClick(label);\n }}\n onItemClick={(event) => event.stopPropagation()}\n ></ix-dropdown-item>\n );\n })}\n </ix-dropdown>\n {this.items?.length > this.visibleItemCount ? (\n <ix-breadcrumb-item\n id={this.previousButtonId}\n ref={this.previousButtonRef}\n label=\"...\"\n tabIndex={1}\n onItemClick={(event) => event.stopPropagation()}\n aria-describedby={this.previousDropdownId}\n aria-controls={this.previousDropdownId}\n aria-expanded={a11yBoolean(this.isPreviousDropdownExpanded)}\n class={'previous-button'}\n ></ix-breadcrumb-item>\n ) : null}\n <nav\n class=\"crumb-items\"\n aria-label={a11y['aria-label'] ?? 'breadcrumbs'}\n >\n <ol>\n <slot></slot>\n </ol>\n </nav>\n <ix-dropdown trigger={this.nextButtonRef.waitForCurrent()}>\n {this.nextItems?.map((item) => (\n <ix-dropdown-item\n label={item}\n onClick={(e) => {\n this.nextClick.emit({\n event: e,\n item,\n });\n }}\n onItemClick={(event) => event.stopPropagation()}\n ></ix-dropdown-item>\n ))}\n </ix-dropdown>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["applicationCss","Application","constructor","hostRef","this","themeSystemAppearance","breakpoints","breakpoint","applicationSidebarSlotted","forceLayoutChange","newMode","applicationLayoutService","enableBreakpointDetection","disableBreakpointDetection","setBreakpoint","onBreakpointsChange","setBreakpoints","menu","hostElement","querySelector","applicationSidebarSlot","shadowRoot","onContentClick","menuController","isPinned","_a","toggleMenu","componentWillLoad","contextProvider","useContextProvider","ApplicationLayoutContext","hideHeader","host","sidebar","appSwitchConfig","modeDisposable","onChange","on","mode","forceBreakpoint","changeTheme","disconnectedCallback","dispose","theme","themeSwitcher","setVariant","hasVariantSuffix","setTheme","onApplicationSidebarChange","console","error","emit","render","h","Host","key","class","name","slotted","onClick","onSlotchange","hasSlottedElements"],"sources":["src/components/application/application.scss?tag=ix-application&encapsulation=shadow","src/components/application/application.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n\n display: flex;\n position: relative;\n width: 100vw;\n height: 100vh;\n\n flex-direction: column;\n\n ix-application-header {\n z-index: calc(var(--theme-z-index-sticky) + 1);\n }\n\n .logo-wrapper {\n display: contents;\n }\n\n .application {\n display: flex;\n position: relative;\n flex-direction: row;\n height: 100%;\n width: 100%;\n overflow: hidden;\n }\n\n .content-area {\n display: flex;\n position: relative;\n flex-direction: column;\n flex-wrap: nowrap;\n height: calc(100% - var(--ix-safe-area-inset-bottom, 0px));\n width: 100%;\n margin-left: var(--ix-application-menu-margin-left);\n }\n\n main {\n display: block;\n position: relative;\n flex-grow: 1;\n\n width: 100%;\n padding-bottom: var(--ix-safe-area-inset-bottom);\n overflow: auto;\n }\n\n footer {\n display: block;\n position: relative;\n width: 100%;\n }\n}\n\n:host(.breakpoint-md) {\n --ix-application-menu-margin-left: calc(\n 3.25rem + var(--ix-application-menu-safe-area-left, 0rem)\n );\n\n aside.slotted {\n margin-left: var(--ix-application-menu-margin-left);\n }\n\n aside.slotted + .content-area {\n margin-left: 0;\n }\n\n aside:not(.slotted) + .content-area {\n margin-left: var(--ix-application-menu-margin-left);\n }\n}\n\n:host(.breakpoint-lg) {\n --ix-application-menu-margin-left: 0;\n}\n\n:host(.breakpoint-sm) {\n --ix-application-menu-margin-left: var(\n --ix-application-menu-safe-area-left,\n 0rem\n );\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, Element, h, Host, Prop, State, Watch } from '@stencil/core';\nimport {\n ApplicationLayoutContext,\n AppSwitchConfiguration,\n} from '../utils/application-layout/context';\nimport { applicationLayoutService } from '../utils/application-layout/service';\nimport { Breakpoint } from '../utils/breakpoints';\nimport { ContextProvider, useContextProvider } from '../utils/context';\nimport { menuController } from '../utils/menu-service/menu-service';\nimport { hasSlottedElements } from '../utils/shadow-dom';\nimport { IxTheme, themeSwitcher } from '../utils/theme-switcher';\nimport { Disposable } from '../utils/typed-event';\n\n/**\n * @since 2.1.0\n */\n@Component({\n tag: 'ix-application',\n styleUrl: 'application.scss',\n shadow: true,\n})\nexport class Application {\n @Element() hostElement!: HTMLIxApplicationElement;\n\n /**\n * Application theme\n */\n @Prop() theme?: IxTheme;\n\n /**\n * Use the system appearance dark or light\n */\n @Prop() themeSystemAppearance = false;\n\n /**\n * Change the responsive layout of the menu structure\n */\n @Prop() forceBreakpoint: Breakpoint | undefined;\n forceLayoutChange(newMode: Breakpoint | undefined) {\n if (!newMode) {\n applicationLayoutService.enableBreakpointDetection();\n return;\n }\n\n applicationLayoutService.disableBreakpointDetection();\n applicationLayoutService.setBreakpoint(newMode);\n }\n\n /**\n * Supported layouts\n */\n @Prop() breakpoints: Breakpoint[] = ['sm', 'md', 'lg'];\n @Watch('breakpoints')\n onBreakpointsChange(breakpoints: Breakpoint[]) {\n applicationLayoutService.setBreakpoints(breakpoints);\n }\n\n /**\n * Define application switch configuration\n */\n @Prop() appSwitchConfig?: AppSwitchConfiguration;\n\n @State() breakpoint: Breakpoint = 'lg';\n @State() applicationSidebarSlotted = false;\n\n private contextProvider?: ContextProvider<typeof ApplicationLayoutContext>;\n\n get menu(): HTMLIxMenuElement | null {\n return this.hostElement.querySelector('ix-menu');\n }\n\n get applicationSidebarSlot() {\n return this.hostElement.shadowRoot!.querySelector(\n '.application-sidebar slot'\n ) as HTMLSlotElement;\n }\n\n private modeDisposable?: Disposable;\n\n private onContentClick() {\n if (menuController.isPinned) {\n return;\n }\n this.menu?.toggleMenu(false);\n }\n\n componentWillLoad() {\n applicationLayoutService.setBreakpoints(this.breakpoints);\n\n this.contextProvider = useContextProvider(\n this.hostElement,\n ApplicationLayoutContext,\n {\n hideHeader: false,\n host: 'basic-navigation',\n sidebar: this.applicationSidebarSlotted,\n appSwitchConfig: this.appSwitchConfig,\n }\n );\n\n this.modeDisposable = applicationLayoutService.onChange.on((mode) => {\n this.breakpoint = mode;\n });\n this.breakpoint = applicationLayoutService.breakpoint;\n\n if (this.forceBreakpoint) {\n this.forceLayoutChange(this.forceBreakpoint);\n }\n\n this.changeTheme();\n }\n\n disconnectedCallback() {\n this.modeDisposable?.dispose();\n }\n\n @Watch('theme')\n @Watch('themeSystemAppearance')\n private changeTheme() {\n if (!this.theme) {\n if (this.themeSystemAppearance) {\n themeSwitcher.setVariant();\n }\n\n return;\n }\n\n if (themeSwitcher.hasVariantSuffix(this.theme)) {\n themeSwitcher.setTheme(`theme-${this.theme}`);\n return;\n }\n\n themeSwitcher.setTheme(\n `theme-${this.theme}-dark`,\n this.themeSystemAppearance\n );\n }\n\n @Watch('appSwitchConfig')\n @Watch('applicationSidebarSlotted')\n onApplicationSidebarChange() {\n if (!this.contextProvider) {\n console.error('Context provider not available');\n return;\n }\n this.contextProvider.emit({\n hideHeader: false,\n host: 'basic-navigation',\n sidebar: this.applicationSidebarSlotted,\n appSwitchConfig: this.appSwitchConfig,\n });\n }\n\n render() {\n return (\n <Host\n data-role=\"\"\n class={{\n [`breakpoint-${this.breakpoint}`]: true,\n }}\n >\n <slot name=\"application-header\"></slot>\n <div class=\"application\">\n <slot name=\"menu\"></slot>\n <aside\n class={{\n 'application-sidebar': true,\n slotted: this.applicationSidebarSlotted,\n }}\n onClick={() => this.onContentClick()}\n >\n <slot\n name=\"application-sidebar\"\n onSlotchange={() =>\n (this.applicationSidebarSlotted = hasSlottedElements(\n this.applicationSidebarSlot\n ))\n }\n ></slot>\n </aside>\n <div class=\"content-area\">\n <main class=\"content\" onClick={() => this.onContentClick()}>\n <slot></slot>\n </main>\n <footer class=\"footer\">\n <slot name=\"bottom\"></slot>\n </footer>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"oSAAA,MAAMA,EAAiB,y+D,MC8BVC,EAAW,MALxB,WAAAC,CAAAC,G,UAgBUC,KAAqBC,sBAAG,MAmBxBD,KAAWE,YAAiB,CAAC,KAAM,KAAM,MAWxCF,KAAUG,WAAe,KACzBH,KAAyBI,0BAAG,KAiItC,CA1JC,iBAAAC,CAAkBC,GAChB,IAAKA,EAAS,CACZC,EAAyBC,4BACzB,M,CAGFD,EAAyBE,6BACzBF,EAAyBG,cAAcJ,E,CAQzC,mBAAAK,CAAoBT,GAClBK,EAAyBK,eAAeV,E,CAa1C,QAAIW,GACF,OAAOb,KAAKc,YAAYC,cAAc,U,CAGxC,0BAAIC,GACF,OAAOhB,KAAKc,YAAYG,WAAYF,cAClC,4B,CAMI,cAAAG,G,MACN,GAAIC,EAAeC,SAAU,CAC3B,M,EAEFC,EAAArB,KAAKa,QAAI,MAAAQ,SAAA,SAAAA,EAAEC,WAAW,M,CAGxB,iBAAAC,GACEhB,EAAyBK,eAAeZ,KAAKE,aAE7CF,KAAKwB,gBAAkBC,EACrBzB,KAAKc,YACLY,EACA,CACEC,WAAY,MACZC,KAAM,mBACNC,QAAS7B,KAAKI,0BACd0B,gBAAiB9B,KAAK8B,kBAI1B9B,KAAK+B,eAAiBxB,EAAyByB,SAASC,IAAIC,IAC1DlC,KAAKG,WAAa+B,CAAI,IAExBlC,KAAKG,WAAaI,EAAyBJ,WAE3C,GAAIH,KAAKmC,gBAAiB,CACxBnC,KAAKK,kBAAkBL,KAAKmC,gB,CAG9BnC,KAAKoC,a,CAGP,oBAAAC,G,OACEhB,EAAArB,KAAK+B,kBAAgB,MAAAV,SAAA,SAAAA,EAAAiB,S,CAKf,WAAAF,GACN,IAAKpC,KAAKuC,MAAO,CACf,GAAIvC,KAAKC,sBAAuB,CAC9BuC,EAAcC,Y,CAGhB,M,CAGF,GAAID,EAAcE,iBAAiB1C,KAAKuC,OAAQ,CAC9CC,EAAcG,SAAS,SAAS3C,KAAKuC,SACrC,M,CAGFC,EAAcG,SACZ,SAAS3C,KAAKuC,aACdvC,KAAKC,sB,CAMT,0BAAA2C,GACE,IAAK5C,KAAKwB,gBAAiB,CACzBqB,QAAQC,MAAM,kCACd,M,CAEF9C,KAAKwB,gBAAgBuB,KAAK,CACxBpB,WAAY,MACZC,KAAM,mBACNC,QAAS7B,KAAKI,0BACd0B,gBAAiB9B,KAAK8B,iB,CAI1B,MAAAkB,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,uDACO,GACVC,MAAO,CACL,CAAC,cAAcpD,KAAKG,cAAe,OAGrC8C,EAAM,QAAAE,IAAA,2CAAAE,KAAK,uBACXJ,EAAK,OAAAE,IAAA,2CAAAC,MAAM,eACTH,EAAM,QAAAE,IAAA,2CAAAE,KAAK,SACXJ,EAAA,SAAAE,IAAA,2CACEC,MAAO,CACL,sBAAuB,KACvBE,QAAStD,KAAKI,2BAEhBmD,QAAS,IAAMvD,KAAKkB,kBAEpB+B,EACE,QAAAE,IAAA,2CAAAE,KAAK,sBACLG,aAAc,IACXxD,KAAKI,0BAA4BqD,EAChCzD,KAAKgB,2BAKbiC,EAAK,OAAAE,IAAA,2CAAAC,MAAM,gBACTH,EAAA,QAAAE,IAAA,2CAAMC,MAAM,UAAUG,QAAS,IAAMvD,KAAKkB,kBACxC+B,EAAA,QAAAE,IAAA,8CAEFF,EAAQ,UAAAE,IAAA,2CAAAC,MAAM,UACZH,EAAM,QAAAE,IAAA,2CAAAE,KAAK,c","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["categoryFilterCss","CategoryFilter","constructor","hostRef","this","ID_CUSTOM_FILTER_VALUE","textInput","makeRef","showDropdown","hasFocus","categoryLogicalOperator","LogicalFilterOperator","EQUAL","inputValue","category","filterTokens","disabled","readonly","nonSelectableCategories","hideIcon","repeatCategories","tmpDisableScrollIntoView","labelCategories","i18nPlainText","dropdown","hostElement","shadowRoot","querySelector","watchFilterState","newValue","setFilterState","preventDefault","e","onFocusIn","onFocusOut","onInput","_c","_b","_a","current","value","inputState","InputState","inputChanged","emit","_d","show","openDropdown","componentWillLoad","a11yAttributes","a11yHostAttributes","componentDidLoad","setTimeout","filterState","undefined","formElement","formKeyDownListener","addDisposableEventListener","handleFormElementKeyDown","preventDefaultListener","console","warn","inputKeyDownListener","handleInputElementKeyDown","focusInListener","focusOutListener","inputListener","state","token","tokens","addToken","categories","id","operator","emitFilterEvent","closeDropdown","code","document","activeElement","classList","contains","getAttribute","hasCategorySelection","selectCategory","focusPreviousItem","focusNextItem","sibling","previousSibling","HTMLElement","focus","nextSibling","focusElement","selector","item","onArrowDown","baseSelector","fallbackSelector","stopPropagation","suggestions","length","tokenCount","removeToken","filter","map","filterChanged","emitEvent","newToken","trim","hasToken","pair","isScrollStateDirty","index","_","i","getCategoryIds","ids","Object","prototype","hasOwnProperty","call","push","categoryChanged","resetFilter","defaultPrevented","filterCleared","filterMultiples","isCategoryAlreadySet","find","some","filterToken","hasSameValue","filterDuplicateTokens","filterByInput","toLowerCase","indexOf","toggleCategoryOperator","NOT_EQUAL","getFilterChipLabel","operatorString","label","_e","getFilteredSuggestions","renderPlainSuggestions","h","class","suggestion","onClick","key","title","renderOperatorButton","staticOperator","params","type","variant","outline","ghost","iconOnly","iconOval","selected","loading","icon","extraClasses","BaseButton","assign","getFilterOperatorString","renderCategoryValues","options","renderDropdownContent","renderCategorySelection","tabindex","getDropdownHeader","componentDidRender","scrollIntoView","disconnectedCallback","getResetButton","oval","iconClear","size","getIconColor","render","Host","ref","el","color","name","iconSearch","toString","animate__animated","animate__fadein","onCloseClick","autocomplete","placeholder","closeBehavior","offset","mainAxis","anchor","waitForCurrent","trigger","header"],"sources":["src/components/category-filter/category-filter.scss?tag=ix-category-filter&encapsulation=shadow","src/components/category-filter/category-filter.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'legacy/mixins/fonts';\n@import 'mixins/hover';\n@import 'mixins/shadows';\n@import 'mixins/shadow-dom/component';\n@import 'mixins/text-truncation';\n@import '../button/button';\n@import 'legacy/components/dropdown';\n@import 'legacy/components/forms';\n@import 'mixins/input';\n\n@include form;\n\n:host {\n @include ix-component;\n\n display: block;\n position: relative;\n height: auto;\n\n .reset-button {\n position: absolute;\n top: $tiny-space;\n right: $tiny-space;\n }\n\n .reset-button.hide-reset-button {\n display: none;\n }\n\n .input-container {\n &:not(.readonly):not(.disabled) {\n @include element-input('false');\n }\n\n &:not(.readonly):not(.disabled):hover {\n border-color: var(--theme-input--border-color--hover) !important;\n background-color: var(--theme-input--background--hover);\n }\n\n &:not(.readonly):not(.disabled).focus {\n outline: 1px solid var(--theme-color-focus-bdr);\n outline-offset: var(--theme-input--focus--outline-offset);\n border-color: var(--theme-input--border-color--focus) !important;\n }\n\n &.disabled {\n color: var(--theme-input--color--disabled);\n border-bottom: var(--theme-input--border-thickness, 1px) solid\n var(--theme-input--border-color-bottom--disabled);\n }\n\n &.readonly {\n @include element-input;\n }\n\n display: flex;\n height: auto;\n max-height: 3.75rem;\n padding: 1px $large-space 1px 1.75rem !important;\n\n &.no-icon {\n padding-left: $tiny-space;\n }\n }\n\n .token-container {\n flex-grow: 1;\n overflow: hidden;\n }\n\n .text-input {\n @include ellipsis;\n @include text-default;\n width: auto;\n height: 1.75rem;\n min-height: $large-space;\n background: transparent;\n flex-grow: 1;\n box-shadow: none;\n\n &,\n &:hover,\n &:focus,\n &:focus-visible {\n border: none !important;\n outline: none !important;\n }\n\n &.hide-placeholder::placeholder {\n opacity: 0;\n }\n }\n\n .list-unstyled {\n display: flex;\n flex-wrap: wrap;\n height: 100%;\n overflow-y: auto;\n }\n\n ix-icon {\n position: absolute;\n top: $small-space;\n left: $small-space;\n }\n\n ix-filter-chip {\n margin-right: $tiny-space;\n }\n\n .category-preview {\n display: flex;\n align-items: center;\n height: $large-space;\n background-color: var(--theme-bg-3);\n border-top-left-radius: $default-space;\n border-bottom-left-radius: $default-space;\n padding: $small-space;\n margin: 2px 0;\n }\n\n ul {\n height: 100%;\n }\n\n .list-unstyled > span:not(.category-preview),\n input {\n padding-inline-start: 0;\n padding-top: 2px;\n padding-bottom: 2px;\n }\n\n ix-dropdown {\n min-width: 10rem !important;\n\n .dropdown-item-container {\n display: flex;\n flex-direction: column;\n\n .dropdown-item {\n @include text-default-single;\n @include ellipsis;\n @include focus-visible {\n border-color: var(--theme-color-focus-bdr);\n }\n\n height: $large-control-height;\n margin: $tiny-space $small-space;\n padding-inline: $small-space;\n border: 1px solid transparent;\n border-radius: 100rem;\n width: auto;\n justify-content: flex-start;\n flex-grow: 1;\n }\n\n .category-item {\n border-end-end-radius: 0;\n border-start-end-radius: 0;\n }\n\n .category-item-value {\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n }\n }\n\n .btn-toggle-operator {\n width: 2rem;\n height: 2rem;\n margin-inline: $small-space;\n }\n }\n\n .display-none {\n display: none;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { BaseButton, BaseButtonProps } from '../button/base-button';\nimport { FilterState } from './filter-state';\nimport { InputState } from './input-state';\nimport { LogicalFilterOperator } from './logical-filter-operator';\nimport { iconClear, iconSearch } from '@siemens/ix-icons/icons';\nimport { makeRef } from '../utils/make-ref';\nimport {\n addDisposableEventListener,\n DisposableEventListener,\n} from '../utils/disposable-event-listener';\nimport { A11yAttributes, a11yHostAttributes } from '../utils/a11y';\n\n@Component({\n tag: 'ix-category-filter',\n styleUrl: 'category-filter.scss',\n shadow: true,\n})\nexport class CategoryFilter {\n private readonly ID_CUSTOM_FILTER_VALUE = 'CW_CUSTOM_FILTER_VALUE';\n\n private formKeyDownListener?: DisposableEventListener;\n private preventDefaultListener?: DisposableEventListener;\n private inputKeyDownListener?: DisposableEventListener;\n private focusInListener?: DisposableEventListener;\n private focusOutListener?: DisposableEventListener;\n private inputListener?: DisposableEventListener;\n\n private readonly textInput? = makeRef<HTMLInputElement>();\n private formElement?: HTMLFormElement;\n private isScrollStateDirty?: boolean;\n private a11yAttributes?: A11yAttributes;\n\n @Element() hostElement!: HTMLIxCategoryFilterElement;\n\n @State() showDropdown = false;\n @State() hasFocus = false;\n @State() categoryLogicalOperator = LogicalFilterOperator.EQUAL;\n @State() inputValue: string = '';\n @State() category: string = '';\n @State() filterTokens: Array<{\n id: string;\n value: string;\n operator: LogicalFilterOperator;\n }> = [];\n\n /**\n * If true the filter will be in disabled state\n */\n @Prop() disabled = false;\n\n /**\n * If true the filter will be in readonly mode\n */\n @Prop() readonly = false;\n\n /**\n * A set of search criteria to populate the component with.\n */\n @Prop() filterState?: FilterState;\n\n /**\n * Placeholder text to be displayed in an empty input field.\n */\n @Prop() placeholder?: string;\n\n /**\n * Configuration object hash used to populate the dropdown menu for type-ahead and quick selection functionality.\n * Each ID maps to an object with a label and an array of options to select from.\n */\n @Prop() categories?: {\n [id: string]: {\n label: string;\n options: string[];\n };\n };\n\n /**\n * In certain use cases some categories may not be available for selection anymore.\n * To allow proper display of set filters with these categories this ID to label mapping can be populated.\n *\n * Configuration object hash used to supply labels to the filter chips in the input field.\n * Each ID maps to a string representing the label to display.\n */\n @Prop() nonSelectableCategories?: {\n [id: string]: string;\n } = {};\n\n /**\n * A list of strings that will be supplied as type-ahead suggestions not tied to any categories.\n */\n @Prop() suggestions?: string[];\n\n /**\n * The icon next to the actual text input\n * Defaults to 'search'\n */\n @Prop() icon?: string;\n\n /**\n * Allows to hide the icon inside the text input.\n * Defaults to false\n */\n @Prop() hideIcon: boolean = false;\n\n /**\n * If set categories will always be filtered via the respective logical operator.\n * Toggling of the operator will not be available to the user.\n *\n * @since 2.2.0\n */\n @Prop() staticOperator?: LogicalFilterOperator;\n\n /**\n * If set to true, allows that a single category can be set more than once.\n * An already set category will not appear in the category dropdown if set to false.\n *\n * Defaults to true\n */\n @Prop() repeatCategories = true;\n\n /**\n * @internal For debugging purposes only!\n */\n @Prop() tmpDisableScrollIntoView = true;\n\n /**\n * i18n\n */\n @Prop() labelCategories = 'Categories';\n\n /**\n * i18n\n */\n @Prop() i18nPlainText = 'Filter by text';\n\n /**\n * Event dispatched whenever a category gets selected in the dropdown\n */\n @Event() categoryChanged!: EventEmitter<string>;\n\n /**\n * Event dispatched whenever the text input changes.\n */\n @Event() inputChanged!: EventEmitter<InputState>;\n\n /**\n * Event dispatched whenever the filter state changes.\n */\n @Event() filterChanged!: EventEmitter<FilterState>;\n\n /**\n * Event dispatched whenever the filter gets cleared.\n */\n @Event() filterCleared!: EventEmitter<void>;\n\n get dropdown() {\n return this.hostElement.shadowRoot!.querySelector('ix-dropdown');\n }\n\n @Watch('filterState')\n watchFilterState(newValue: FilterState) {\n this.setFilterState(newValue);\n }\n\n private preventDefault(e: Event) {\n e.preventDefault();\n }\n\n private onFocusIn() {\n this.hasFocus = true;\n }\n\n private onFocusOut() {\n this.hasFocus = false;\n }\n\n private onInput() {\n this.inputValue = this.textInput?.current?.value ?? '';\n const inputState = new InputState(this.inputValue, this.category);\n this.inputChanged.emit(inputState);\n\n if (!this.dropdown?.show) {\n this.openDropdown();\n }\n }\n\n componentWillLoad() {\n this.a11yAttributes = a11yHostAttributes(this.hostElement);\n }\n\n componentDidLoad() {\n setTimeout(() => {\n if (this.filterState !== undefined) {\n this.setFilterState(this.filterState);\n }\n });\n\n if (this.formElement !== undefined) {\n this.formKeyDownListener = addDisposableEventListener(\n this.formElement,\n 'keydown',\n ((e: KeyboardEvent) =>\n this.handleFormElementKeyDown(e)) as EventListener\n );\n\n this.preventDefaultListener = addDisposableEventListener(\n this.formElement,\n 'submit',\n this.preventDefault\n );\n }\n\n if (this.textInput?.current == null) {\n console.warn(\n 'ix-category-filter - unable to add event listeners to native input element'\n );\n return;\n }\n\n this.inputKeyDownListener = addDisposableEventListener(\n this.textInput.current,\n 'keydown',\n ((e: KeyboardEvent) => this.handleInputElementKeyDown(e)) as EventListener\n );\n\n this.focusInListener = addDisposableEventListener(\n this.textInput.current,\n 'focusin',\n () => this.onFocusIn()\n );\n\n this.focusOutListener = addDisposableEventListener(\n this.textInput.current,\n 'focusout',\n () => this.onFocusOut()\n );\n\n this.inputListener = addDisposableEventListener(\n this.textInput.current,\n 'input',\n () => this.onInput()\n );\n }\n\n private setFilterState(state: FilterState) {\n this.filterTokens = [];\n\n for (const token of state.tokens) {\n this.addToken(\n token,\n this.ID_CUSTOM_FILTER_VALUE,\n this.categoryLogicalOperator,\n false\n );\n }\n\n for (const category of state.categories) {\n this.addToken(category.value, category.id, category.operator, false);\n }\n\n this.emitFilterEvent();\n }\n\n private closeDropdown() {\n if (this.disabled || this.readonly) {\n return;\n }\n\n if (this.dropdown) {\n this.dropdown.show = false;\n }\n }\n\n private openDropdown() {\n if (this.disabled || this.readonly) {\n return;\n }\n\n if (this.dropdown) {\n this.dropdown.show = true;\n }\n }\n\n private handleFormElementKeyDown(e: KeyboardEvent) {\n switch (e.code) {\n case 'Enter':\n case 'NumpadEnter':\n if (!document.activeElement?.classList.contains('dropdown-item')) {\n return;\n }\n\n const token = document.activeElement.getAttribute('data-id');\n\n if (token === null) {\n break;\n }\n\n if (this.hasCategorySelection()) {\n if (this.category !== '') {\n this.addToken(token, this.category);\n } else if (\n document.activeElement.classList.contains('category-item-id')\n ) {\n this.selectCategory(token);\n }\n } else {\n this.addToken(token);\n }\n\n e.preventDefault();\n break;\n\n case 'ArrowUp':\n this.focusPreviousItem();\n e.preventDefault();\n break;\n\n case 'ArrowDown':\n this.showDropdown = true;\n this.focusNextItem();\n e.preventDefault();\n break;\n\n case 'Escape':\n this.closeDropdown();\n break;\n }\n }\n\n private focusPreviousItem() {\n const sibling = document.activeElement?.previousSibling;\n if (sibling instanceof HTMLElement) {\n sibling.focus();\n }\n }\n\n private focusNextItem() {\n const sibling = document.activeElement?.nextSibling;\n if (sibling instanceof HTMLElement) {\n sibling.focus();\n }\n }\n\n private focusElement(selector: string): boolean {\n const item = this.hostElement.shadowRoot!.querySelector(selector);\n if (item instanceof HTMLElement) {\n item.focus();\n return true;\n }\n return false;\n }\n\n private onArrowDown(e: KeyboardEvent) {\n const baseSelector = `.category-item-${\n this.category !== '' ? 'value' : 'id'\n }`;\n const fallbackSelector = '.category-item';\n\n if (this.focusElement(baseSelector)) {\n e.stopPropagation();\n return;\n }\n\n if (this.suggestions?.length && this.focusElement(fallbackSelector)) {\n e.stopPropagation();\n }\n }\n\n private handleInputElementKeyDown(e: KeyboardEvent) {\n switch (e.code) {\n case 'ArrowDown': {\n this.onArrowDown(e);\n break;\n }\n\n case 'Backspace':\n if (this.textInput?.current?.value !== '') {\n return;\n }\n\n if (this.category !== '') {\n this.category = '';\n return;\n }\n\n const tokenCount = this.filterTokens.length;\n if (tokenCount > 0) {\n this.removeToken(tokenCount - 1);\n }\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n this.addToken(\n this.inputValue,\n this.category || this.ID_CUSTOM_FILTER_VALUE\n );\n e.preventDefault();\n break;\n }\n }\n\n private emitFilterEvent() {\n const tokens = this.filterTokens\n .filter((item) => item.id === this.ID_CUSTOM_FILTER_VALUE)\n .map((item) => item.value);\n const categories = this.filterTokens.filter(\n (item) => item.id !== this.ID_CUSTOM_FILTER_VALUE\n );\n const filterState: FilterState = {\n tokens,\n categories,\n };\n\n this.filterChanged.emit(filterState);\n }\n\n private addToken(\n token: string,\n category: string = this.ID_CUSTOM_FILTER_VALUE,\n operator = this.categoryLogicalOperator,\n emitEvent = true\n ) {\n if (token === undefined || token === null) {\n return;\n }\n\n const newToken = token.trim();\n\n if (newToken === '') {\n return;\n }\n\n if (this.hasToken(newToken)) {\n return;\n }\n\n const pair = { id: category, value: newToken, operator };\n this.filterTokens = [...this.filterTokens, pair];\n if (this.textInput?.current) {\n this.textInput.current.value = '';\n }\n this.inputValue = '';\n this.categoryLogicalOperator = LogicalFilterOperator.EQUAL;\n\n if (this.category !== '') {\n this.category = '';\n }\n\n this.isScrollStateDirty = true;\n\n this.textInput?.current?.focus();\n\n if (emitEvent) {\n this.emitFilterEvent();\n }\n }\n\n private removeToken(index: number) {\n this.filterTokens = this.filterTokens.filter((_, i) => i !== index);\n this.emitFilterEvent();\n }\n\n private getCategoryIds() {\n const ids = [];\n for (const id in this.categories) {\n if (Object.prototype.hasOwnProperty.call(this.categories, id)) {\n ids.push(id);\n }\n }\n\n return ids;\n }\n\n private selectCategory(category: string) {\n this.category = category;\n if (this.textInput?.current) {\n this.textInput.current.value = '';\n }\n this.inputValue = '';\n this.textInput?.current?.focus();\n this.categoryChanged.emit(category);\n }\n\n private resetFilter(e: Event) {\n const { defaultPrevented } = this.filterCleared.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n e.stopPropagation();\n this.closeDropdown();\n this.filterTokens = [];\n if (this.category) {\n this.category = '';\n this.categoryChanged.emit(undefined);\n }\n\n this.emitFilterEvent();\n }\n\n private filterMultiples(value: string) {\n if (this.repeatCategories) {\n return true;\n }\n\n const isCategoryAlreadySet = this.filterTokens.find(\n (token) => token.id === value\n );\n\n return !isCategoryAlreadySet;\n }\n\n private hasToken(token: string) {\n return this.filterTokens.some((filterToken) => {\n const hasSameValue = filterToken.value === token;\n\n if (!hasSameValue) {\n return false;\n }\n\n if (this.category !== '') {\n return this.category === filterToken.id;\n }\n\n if (filterToken.id) {\n return filterToken.id === this.ID_CUSTOM_FILTER_VALUE;\n }\n\n return hasSameValue;\n });\n }\n\n private filterDuplicateTokens(value: string) {\n return !this.hasToken(value);\n }\n\n private filterByInput(value: string) {\n if (this.inputValue === undefined || this.inputValue === '') {\n return true;\n }\n\n return value.toLowerCase().indexOf(this.inputValue.toLowerCase()) !== -1;\n }\n\n private toggleCategoryOperator() {\n switch (this.categoryLogicalOperator) {\n case LogicalFilterOperator.EQUAL:\n this.categoryLogicalOperator = LogicalFilterOperator.NOT_EQUAL;\n break;\n\n case LogicalFilterOperator.NOT_EQUAL:\n this.categoryLogicalOperator = LogicalFilterOperator.EQUAL;\n break;\n }\n }\n\n private getFilterChipLabel(value: {\n id: string;\n value: string;\n operator: LogicalFilterOperator;\n }): string {\n if (value.id === this.ID_CUSTOM_FILTER_VALUE) {\n return value.value;\n }\n\n const operatorString =\n value.operator === LogicalFilterOperator.EQUAL ? '=' : '!=';\n const label =\n this.categories?.[value.id]?.label ??\n this.nonSelectableCategories?.[value.id] ??\n value.id;\n\n return `${label} ${operatorString} ${value.value}`;\n }\n\n private getFilteredSuggestions() {\n if (!this.suggestions?.length) {\n return [];\n }\n\n return this.suggestions\n ?.filter((value) => this.filterByInput(value))\n .filter((value) => this.filterDuplicateTokens(value));\n }\n\n private hasCategorySelection() {\n return this.categories !== undefined;\n }\n\n private renderPlainSuggestions() {\n return (\n <div class=\"dropdown-item-container\">\n {this.getFilteredSuggestions().map((suggestion) => (\n <button\n class=\"dropdown-item\"\n data-id={suggestion}\n onClick={() => this.addToken(suggestion)}\n key={suggestion}\n title={suggestion}\n >\n {suggestion}\n </button>\n ))}\n </div>\n );\n }\n\n private renderOperatorButton() {\n if (this.staticOperator) {\n return '';\n }\n\n const params: BaseButtonProps = {\n type: 'button',\n variant: 'secondary',\n outline: false,\n ghost: true,\n iconOnly: true,\n iconOval: false,\n selected: false,\n disabled: this.disabled || this.staticOperator !== undefined,\n loading: false,\n icon: '',\n onClick: (e: Event) => {\n e.stopPropagation();\n this.toggleCategoryOperator();\n },\n extraClasses: {\n 'btn-icon-32': true,\n 'btn-toggle-operator': true,\n },\n };\n\n return (\n <BaseButton {...params}>\n {this.categoryLogicalOperator === LogicalFilterOperator.NOT_EQUAL\n ? '='\n : '!='}\n </BaseButton>\n );\n }\n\n private getFilterOperatorString() {\n let operator: LogicalFilterOperator;\n if (this.staticOperator !== undefined) {\n operator = this.staticOperator;\n } else {\n operator = this.categoryLogicalOperator;\n }\n return `${operator === LogicalFilterOperator.EQUAL ? '=' : '!='} `;\n }\n\n private renderCategoryValues() {\n if (this.categories === undefined) {\n return;\n }\n\n return (\n <div class=\"dropdown-item-container\">\n {this.renderOperatorButton()}\n <div class=\"dropdown-header\">\n {this.categories[this.category]?.label}\n </div>\n {this.categories[this.category]?.options\n .filter((value) => this.filterByInput(value))\n .filter((value) => this.filterDuplicateTokens(value))\n .map((id) => (\n <button\n class=\"dropdown-item category-item-value\"\n data-id={id}\n title={id}\n key={id}\n onClick={(e) => {\n e.preventDefault();\n this.addToken(id, this.category);\n }}\n >\n {`${this.getFilterOperatorString()} ${id}`}\n </button>\n ))}\n </div>\n );\n }\n\n private renderDropdownContent() {\n if (this.hasCategorySelection()) {\n if (this.category !== '') {\n return this.renderCategoryValues();\n } else {\n return this.renderCategorySelection();\n }\n } else return this.renderPlainSuggestions();\n }\n\n private renderCategorySelection() {\n return (\n <div class=\"dropdown-item-container\">\n {this.getCategoryIds()\n ?.filter(\n (id) =>\n this.categories && this.filterByInput(this.categories[id].label)\n )\n .filter((id) => this.filterMultiples(id))\n .map((id) => (\n <button\n class=\"dropdown-item category-item category-item-id\"\n data-id={id}\n title={this.categories?.[id]?.label}\n key={id}\n onClick={(e) => {\n e.preventDefault();\n this.selectCategory(id);\n }}\n tabindex=\"0\"\n >\n {this.categories?.[id]?.label}\n </button>\n ))}\n </div>\n );\n }\n\n private getDropdownHeader() {\n if (this.categories !== undefined) {\n if (this.category !== '') {\n return undefined;\n } else {\n return this.labelCategories;\n }\n }\n\n return this.i18nPlainText;\n }\n\n componentDidRender() {\n if (this.isScrollStateDirty) {\n if (!this.tmpDisableScrollIntoView) {\n this.textInput?.current?.scrollIntoView();\n }\n this.isScrollStateDirty = false;\n }\n }\n\n disconnectedCallback() {\n if (this.preventDefaultListener) {\n this.preventDefaultListener();\n }\n if (this.formKeyDownListener) {\n this.formKeyDownListener();\n }\n if (this.inputKeyDownListener) {\n this.inputKeyDownListener?.();\n }\n if (this.focusInListener) {\n this.focusInListener();\n }\n if (this.focusOutListener) {\n this.focusOutListener();\n }\n if (this.inputListener) {\n this.inputListener();\n }\n }\n\n private getResetButton() {\n return (\n <ix-icon-button\n onClick={(e) => this.resetFilter(e)}\n class={{\n 'reset-button': true,\n 'hide-reset-button':\n !this.filterTokens.length && this.category === '',\n }}\n ghost\n oval\n icon={iconClear}\n size=\"16\"\n ></ix-icon-button>\n );\n }\n\n private getIconColor() {\n if (this.disabled) {\n return 'color-componentn-1';\n }\n\n if (this.readonly) {\n return 'color-std-txt';\n }\n\n return 'color-primary';\n }\n\n render() {\n return (\n <Host>\n <form ref={(el) => (this.formElement = el)}>\n <div\n read-only={this.readonly}\n class={{\n 'input-container': true,\n disabled: this.disabled,\n focus: this.hasFocus,\n readonly: this.readonly,\n 'no-icon': this.hideIcon,\n }}\n >\n <ix-icon\n color={this.getIconColor()}\n class={{ 'display-none': this.hideIcon }}\n name={this.icon ?? iconSearch}\n size=\"16\"\n ></ix-icon>\n <div class=\"token-container\">\n <div class=\"list-unstyled\">\n {this.filterTokens.map((value, index) => (\n <span\n key={value.toString()}\n class={{\n animate__animated: true,\n animate__fadein: true,\n }}\n >\n <ix-filter-chip\n disabled={this.disabled}\n readonly={this.readonly}\n onClick={(e) => e.stopPropagation()}\n onCloseClick={() => this.removeToken(index)}\n >\n {this.getFilterChipLabel(value)}\n </ix-filter-chip>\n </span>\n ))}\n {this.categories === undefined ? (\n ''\n ) : (\n <span\n class={{\n 'category-preview': true,\n 'display-none': this.category === '',\n }}\n >\n {this.categories[this.category]?.label}\n </span>\n )}\n <input\n class={{\n 'text-input': true,\n 'hide-placeholder':\n this.readonly || this.disabled || this.category !== '',\n }}\n autocomplete=\"off\"\n name=\"category-filter-input\"\n disabled={this.disabled}\n readonly={this.readonly}\n ref={this.textInput}\n type=\"text\"\n placeholder={this.placeholder}\n {...this.a11yAttributes}\n ></input>\n </div>\n </div>\n {!this.readonly && !this.disabled && this.getResetButton()}\n </div>\n </form>\n\n {this.disabled || this.readonly ? (\n ''\n ) : (\n <ix-dropdown\n show={this.showDropdown}\n closeBehavior=\"outside\"\n offset={{ mainAxis: 2 }}\n anchor={this.textInput?.waitForCurrent()}\n trigger={this.hostElement}\n header={this.getDropdownHeader()}\n >\n {this.renderDropdownContent()}\n </ix-dropdown>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
File without changes
|