@siemens/ix 1.5.0 → 1.6.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/dist/cjs/icon-c65f0901.js +106 -0
- package/dist/cjs/icon-c65f0901.js.map +1 -0
- package/dist/cjs/{index-931d1fb5.js → index-c978628a.js} +53 -5
- package/dist/cjs/index-c978628a.js.map +1 -0
- package/dist/cjs/index.cjs.js +2 -0
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/ix-action-card.cjs.entry.js +28 -0
- package/dist/cjs/ix-action-card.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-animated-tab_2.cjs.entry.js +1 -1
- package/dist/cjs/ix-application-header.cjs.entry.js +1 -1
- package/dist/cjs/ix-basic-navigation.cjs.entry.js +2 -2
- package/dist/cjs/ix-basic-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-blind.cjs.entry.js +4 -7
- package/dist/cjs/ix-blind.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-breadcrumb_2.cjs.entry.js +1 -1
- package/dist/cjs/ix-burger-menu.cjs.entry.js +1 -1
- package/dist/cjs/ix-button.cjs.entry.js +2 -2
- package/dist/cjs/ix-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-card-accordion_2.cjs.entry.js +74 -0
- package/dist/cjs/ix-card-accordion_2.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-card-list.cjs.entry.js +164 -0
- package/dist/cjs/ix-card-list.cjs.entry.js.map +1 -0
- package/dist/cjs/{ix-typography.cjs.entry.js → ix-card_3.cjs.entry.js} +37 -3
- package/dist/cjs/ix-card_3.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-category-filter.cjs.entry.js +1 -1
- package/dist/cjs/ix-chip.cjs.entry.js +1 -1
- package/dist/cjs/ix-content-header.cjs.entry.js +26 -0
- package/dist/cjs/ix-content-header.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-counter-pill.cjs.entry.js +1 -1
- package/dist/cjs/ix-css-grid-item.cjs.entry.js +24 -0
- package/dist/cjs/ix-css-grid-item.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-css-grid.cjs.entry.js +96 -0
- package/dist/cjs/ix-css-grid.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-date-picker_2.cjs.entry.js +103 -19
- package/dist/cjs/ix-date-picker_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-date-time-card.cjs.entry.js +1 -1
- package/dist/cjs/ix-datetime-picker.cjs.entry.js +1 -1
- package/dist/cjs/ix-divider.cjs.entry.js +1 -1
- package/dist/cjs/ix-drawer.cjs.entry.js +4 -4
- package/dist/cjs/ix-drawer.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-dropdown-button.cjs.entry.js +1 -1
- package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js +1 -1
- package/dist/cjs/ix-dropdown_2.cjs.entry.js +1 -1
- package/dist/cjs/ix-empty-state.cjs.entry.js +27 -0
- package/dist/cjs/ix-empty-state.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-event-list_2.cjs.entry.js +1 -1
- package/dist/cjs/ix-expanding-search.cjs.entry.js +5 -2
- package/dist/cjs/ix-expanding-search.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-filter-chip.cjs.entry.js +1 -1
- package/dist/cjs/ix-flip-tile_2.cjs.entry.js +1 -1
- package/dist/cjs/ix-group-context-menu.cjs.entry.js +1 -1
- package/dist/cjs/ix-group_3.cjs.entry.js +1 -1
- package/dist/cjs/ix-icon-button.cjs.entry.js +11 -4
- package/dist/cjs/ix-icon-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-icon.cjs.entry.js +3 -29
- package/dist/cjs/ix-icon.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-index-button.cjs.entry.js +1 -1
- package/dist/cjs/ix-input-group.cjs.entry.js +1 -1
- package/dist/cjs/ix-key-value-list.cjs.entry.js +22 -0
- package/dist/cjs/ix-key-value-list.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-key-value.cjs.entry.js +28 -0
- package/dist/cjs/ix-key-value.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-kpi.cjs.entry.js +2 -2
- package/dist/cjs/ix-kpi.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-map-navigation_2.cjs.entry.js +11 -5
- package/dist/cjs/ix-map-navigation_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-menu_9.cjs.entry.js +24 -15
- package/dist/cjs/ix-menu_9.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-message-bar.cjs.entry.js +2 -2
- package/dist/cjs/ix-message-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-modal-example.cjs.entry.js +1 -1
- package/dist/cjs/ix-modal_2.cjs.entry.js +2 -2
- package/dist/cjs/ix-modal_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-pagination.cjs.entry.js +1 -1
- package/dist/cjs/ix-pill.cjs.entry.js +1 -1
- package/dist/cjs/ix-push-card.cjs.entry.js +27 -0
- package/dist/cjs/ix-push-card.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-select_2.cjs.entry.js +3 -3
- package/dist/cjs/ix-select_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-spinner.cjs.entry.js +2 -2
- package/dist/cjs/ix-spinner.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-split-button_2.cjs.entry.js +1 -1
- package/dist/cjs/ix-tab-item.cjs.entry.js +1 -1
- package/dist/cjs/ix-tabs.cjs.entry.js +1 -1
- package/dist/cjs/ix-tile.cjs.entry.js +1 -1
- package/dist/cjs/ix-toast_2.cjs.entry.js +8 -26
- package/dist/cjs/ix-toast_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-toggle.cjs.entry.js +1 -1
- package/dist/cjs/ix-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/ix-tree_2.cjs.entry.js +1 -1
- package/dist/cjs/ix-upload.cjs.entry.js +1 -1
- package/dist/cjs/ix-validation-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/ix-workflow-step_2.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/my-component.cjs.entry.js +2 -2
- package/dist/cjs/my-component.cjs.entry.js.map +1 -1
- package/dist/cjs/siemens-ix.cjs.js +2 -2
- package/dist/collection/collection-manifest.json +32 -3
- package/dist/collection/components/action-card/action-card.css +161 -0
- package/dist/collection/components/action-card/action-card.js +136 -0
- package/dist/collection/components/action-card/action-card.js.map +1 -0
- package/dist/collection/components/basic-navigation/basic-navigation.css +1 -1
- package/dist/collection/components/blind/blind.css +5 -5
- package/dist/collection/components/blind/blind.js +3 -6
- package/dist/collection/components/blind/blind.js.map +1 -1
- package/dist/collection/components/button/button.css +359 -0
- package/dist/collection/components/button/button.js +2 -2
- package/dist/collection/components/button/button.js.map +1 -1
- package/dist/collection/components/card/card.css +92 -0
- package/dist/collection/components/card/card.js +53 -0
- package/dist/collection/components/card/card.js.map +1 -0
- package/dist/collection/components/card-accordion/card-accordion.css +121 -0
- package/dist/collection/components/card-accordion/card-accordion.js +94 -0
- package/dist/collection/components/card-accordion/card-accordion.js.map +1 -0
- package/dist/collection/components/card-content/card-content.css +29 -0
- package/dist/collection/components/card-content/card-content.js +22 -0
- package/dist/collection/components/card-content/card-content.js.map +1 -0
- package/dist/collection/components/card-list/card-list.css +127 -0
- package/dist/collection/components/card-list/card-list.js +387 -0
- package/dist/collection/components/card-list/card-list.js.map +1 -0
- package/dist/collection/components/card-title/card-title.css +30 -0
- package/dist/collection/components/card-title/card-title.js +24 -0
- package/dist/collection/components/card-title/card-title.js.map +1 -0
- package/dist/collection/components/content-header/content-header.css +28 -0
- package/dist/collection/components/content-header/content-header.js +131 -0
- package/dist/collection/components/content-header/content-header.js.map +1 -0
- package/dist/collection/components/drawer/drawer.css +20 -12
- package/dist/collection/components/drawer/drawer.js +5 -5
- package/dist/collection/components/drawer/drawer.js.map +1 -1
- package/dist/collection/components/empty-state/empty-state.css +100 -0
- package/dist/collection/components/empty-state/empty-state.js +150 -0
- package/dist/collection/components/empty-state/empty-state.js.map +1 -0
- package/dist/collection/components/expanding-search/expanding-search.css +8 -0
- package/dist/collection/components/expanding-search/expanding-search.js +24 -0
- package/dist/collection/components/expanding-search/expanding-search.js.map +1 -1
- package/dist/collection/components/icon-button/icon-button.css +362 -0
- package/dist/collection/components/icon-button/icon-button.js +10 -3
- package/dist/collection/components/icon-button/icon-button.js.map +1 -1
- package/dist/collection/components/key-value/key-value.css +56 -0
- package/dist/collection/components/key-value/key-value.js +119 -0
- package/dist/collection/components/key-value/key-value.js.map +1 -0
- package/dist/collection/components/key-value-list/key-value-list.css +7 -0
- package/dist/collection/components/key-value-list/key-value-list.js +54 -0
- package/dist/collection/components/key-value-list/key-value-list.js.map +1 -0
- package/dist/collection/components/kpi/kpi.css +25 -11
- package/dist/collection/components/kpi/kpi.js +1 -1
- package/dist/collection/components/kpi/kpi.js.map +1 -1
- package/dist/collection/components/layout/css-grid/builder.js +20 -0
- package/dist/collection/components/layout/css-grid/builder.js.map +1 -0
- package/dist/collection/components/layout/css-grid/css-grid-item.css +16 -0
- package/dist/collection/components/layout/css-grid/css-grid-item.js +56 -0
- package/dist/collection/components/layout/css-grid/css-grid-item.js.map +1 -0
- package/dist/collection/components/{icon/icon.css → layout/css-grid/css-grid.css} +5 -23
- package/dist/collection/components/layout/css-grid/css-grid.js +123 -0
- package/dist/collection/components/layout/css-grid/css-grid.js.map +1 -0
- package/dist/collection/components/map-navigation/map-navigation.css +1 -1
- package/dist/collection/components/map-navigation/map-navigation.js +37 -3
- package/dist/collection/components/map-navigation/map-navigation.js.map +1 -1
- package/dist/collection/components/menu/menu.css +4 -4
- package/dist/collection/components/menu/menu.js +1 -1
- package/dist/collection/components/menu/menu.js.map +1 -1
- package/dist/collection/components/menu-about-news/menu-about-news.css +2 -2
- package/dist/collection/components/menu-avatar/menu-avatar.css +2 -2
- package/dist/collection/components/menu-avatar/menu-avatar.js +1 -1
- package/dist/collection/components/menu-avatar/menu-avatar.js.map +1 -1
- package/dist/collection/components/menu-item/menu-item.css +47 -23
- package/dist/collection/components/menu-item/menu-item.js +19 -10
- package/dist/collection/components/menu-item/menu-item.js.map +1 -1
- package/dist/collection/components/message-bar/message-bar.css +19 -11
- package/dist/collection/components/message-bar/message-bar.js +1 -1
- package/dist/collection/components/message-bar/message-bar.js.map +1 -1
- package/dist/collection/components/modal/modal.css +1 -0
- package/dist/collection/components/my-component/my-component.css +1 -0
- package/dist/collection/components/my-component/my-component.js.map +1 -1
- package/dist/collection/components/push-card/push-card.css +74 -0
- package/dist/collection/components/push-card/push-card.js +134 -0
- package/dist/collection/components/push-card/push-card.js.map +1 -0
- package/dist/collection/components/select/select.css +20 -2
- package/dist/collection/components/select/select.js +1 -1
- package/dist/collection/components/select/select.js.map +1 -1
- package/dist/collection/components/spinner/spinner.css +13 -0
- package/dist/collection/components/spinner/spinner.js +1 -1
- package/dist/collection/components/spinner/spinner.js.map +1 -1
- package/dist/collection/components/time-picker/time-picker.css +23 -17
- package/dist/collection/components/time-picker/time-picker.js +102 -18
- package/dist/collection/components/time-picker/time-picker.js.map +1 -1
- package/dist/collection/components/toast/toast.css +0 -10
- package/dist/collection/components/toast/toast.js +6 -25
- package/dist/collection/components/toast/toast.js.map +1 -1
- package/dist/collection/components/typography/{types.js → type-mapping.js} +1 -1
- package/dist/collection/components/typography/type-mapping.js.map +1 -0
- package/dist/collection/components/typography/typography.js +34 -6
- package/dist/collection/components/typography/typography.js.map +1 -1
- package/dist/collection/index.js +1 -0
- package/dist/collection/index.js.map +1 -1
- package/dist/components/button.js +3 -2
- package/dist/components/button.js.map +1 -1
- package/dist/components/card-accordion.js +80 -0
- package/dist/components/card-accordion.js.map +1 -0
- package/dist/components/card-content.js +32 -0
- package/dist/components/card-content.js.map +1 -0
- package/dist/components/card-title.js +32 -0
- package/dist/components/card-title.js.map +1 -0
- package/dist/components/card.js +36 -0
- package/dist/components/card.js.map +1 -0
- package/dist/components/icon-button.js +12 -4
- package/dist/components/icon-button.js.map +1 -1
- package/dist/components/icon.js +87 -14
- package/dist/components/icon.js.map +1 -1
- package/dist/components/ix-action-card.d.ts +11 -0
- package/dist/components/ix-action-card.js +72 -0
- package/dist/components/ix-action-card.js.map +1 -0
- package/dist/components/ix-basic-navigation.js +1 -1
- package/dist/components/ix-basic-navigation.js.map +1 -1
- package/dist/components/ix-blind.js +5 -7
- package/dist/components/ix-blind.js.map +1 -1
- package/dist/components/ix-card-accordion.d.ts +11 -0
- package/dist/components/ix-card-accordion.js +8 -0
- package/dist/components/ix-card-accordion.js.map +1 -0
- package/dist/components/ix-card-content.d.ts +11 -0
- package/dist/components/ix-card-content.js +8 -0
- package/dist/components/ix-card-content.js.map +1 -0
- package/dist/components/ix-card-list.d.ts +11 -0
- package/dist/components/ix-card-list.js +228 -0
- package/dist/components/ix-card-list.js.map +1 -0
- package/dist/components/ix-card-title.d.ts +11 -0
- package/dist/components/ix-card-title.js +8 -0
- package/dist/components/ix-card-title.js.map +1 -0
- package/dist/components/{ix-icon.d.ts → ix-card.d.ts} +4 -4
- package/dist/components/ix-card.js +8 -0
- package/dist/components/ix-card.js.map +1 -0
- package/dist/components/ix-content-header.d.ts +11 -0
- package/dist/components/ix-content-header.js +63 -0
- package/dist/components/ix-content-header.js.map +1 -0
- package/dist/components/ix-css-grid-item.d.ts +11 -0
- package/dist/components/ix-css-grid-item.js +40 -0
- package/dist/components/ix-css-grid-item.js.map +1 -0
- package/dist/components/ix-css-grid.d.ts +11 -0
- package/dist/components/ix-css-grid.js +113 -0
- package/dist/components/ix-css-grid.js.map +1 -0
- package/dist/components/ix-drawer.js +6 -5
- package/dist/components/ix-drawer.js.map +1 -1
- package/dist/components/ix-empty-state.d.ts +11 -0
- package/dist/components/ix-empty-state.js +65 -0
- package/dist/components/ix-empty-state.js.map +1 -0
- package/dist/components/ix-expanding-search.js +5 -1
- package/dist/components/ix-expanding-search.js.map +1 -1
- package/dist/components/ix-key-value-list.d.ts +11 -0
- package/dist/components/ix-key-value-list.js +38 -0
- package/dist/components/ix-key-value-list.js.map +1 -0
- package/dist/components/ix-key-value.d.ts +11 -0
- package/dist/components/ix-key-value.js +53 -0
- package/dist/components/ix-key-value.js.map +1 -0
- package/dist/components/ix-kpi.js +3 -2
- package/dist/components/ix-kpi.js.map +1 -1
- package/dist/components/ix-map-navigation.js +11 -4
- package/dist/components/ix-map-navigation.js.map +1 -1
- package/dist/components/ix-menu-about-news.js +1 -1
- package/dist/components/ix-menu-about-news.js.map +1 -1
- package/dist/components/ix-menu-avatar.js +2 -2
- package/dist/components/ix-menu-avatar.js.map +1 -1
- package/dist/components/ix-menu.js +12 -6
- package/dist/components/ix-menu.js.map +1 -1
- package/dist/components/ix-message-bar.js +3 -2
- package/dist/components/ix-message-bar.js.map +1 -1
- package/dist/components/ix-push-card.d.ts +11 -0
- package/dist/components/ix-push-card.js +83 -0
- package/dist/components/ix-push-card.js.map +1 -0
- package/dist/components/menu-item.js +27 -11
- package/dist/components/menu-item.js.map +1 -1
- package/dist/components/modal.js +1 -1
- package/dist/components/modal.js.map +1 -1
- package/dist/components/my-component.js +1 -1
- package/dist/components/my-component.js.map +1 -1
- package/dist/components/select.js +2 -2
- package/dist/components/select.js.map +1 -1
- package/dist/components/spinner.js +3 -2
- package/dist/components/spinner.js.map +1 -1
- package/dist/components/time-picker.js +103 -19
- package/dist/components/time-picker.js.map +1 -1
- package/dist/components/toast.js +7 -26
- package/dist/components/toast.js.map +1 -1
- package/dist/components/typography.js +9 -2
- package/dist/components/typography.js.map +1 -1
- package/dist/esm/icon-21211f80.js +104 -0
- package/dist/esm/icon-21211f80.js.map +1 -0
- package/dist/esm/{index-57424926.js → index-8ddfb6d8.js} +53 -5
- package/dist/esm/index-8ddfb6d8.js.map +1 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/ix-action-card.entry.js +24 -0
- package/dist/esm/ix-action-card.entry.js.map +1 -0
- package/dist/esm/ix-animated-tab_2.entry.js +1 -1
- package/dist/esm/ix-application-header.entry.js +1 -1
- package/dist/esm/ix-basic-navigation.entry.js +2 -2
- package/dist/esm/ix-basic-navigation.entry.js.map +1 -1
- package/dist/esm/ix-blind.entry.js +4 -7
- package/dist/esm/ix-blind.entry.js.map +1 -1
- package/dist/esm/ix-breadcrumb_2.entry.js +1 -1
- package/dist/esm/ix-burger-menu.entry.js +1 -1
- package/dist/esm/ix-button.entry.js +2 -2
- package/dist/esm/ix-button.entry.js.map +1 -1
- package/dist/esm/ix-card-accordion_2.entry.js +69 -0
- package/dist/esm/ix-card-accordion_2.entry.js.map +1 -0
- package/dist/esm/ix-card-list.entry.js +160 -0
- package/dist/esm/ix-card-list.entry.js.map +1 -0
- package/dist/esm/{ix-typography.entry.js → ix-card_3.entry.js} +36 -4
- package/dist/esm/ix-card_3.entry.js.map +1 -0
- package/dist/esm/ix-category-filter.entry.js +1 -1
- package/dist/esm/ix-chip.entry.js +1 -1
- package/dist/esm/ix-content-header.entry.js +22 -0
- package/dist/esm/ix-content-header.entry.js.map +1 -0
- package/dist/esm/ix-counter-pill.entry.js +1 -1
- package/dist/esm/ix-css-grid-item.entry.js +20 -0
- package/dist/esm/ix-css-grid-item.entry.js.map +1 -0
- package/dist/esm/ix-css-grid.entry.js +92 -0
- package/dist/esm/ix-css-grid.entry.js.map +1 -0
- package/dist/esm/ix-date-picker_2.entry.js +103 -19
- package/dist/esm/ix-date-picker_2.entry.js.map +1 -1
- package/dist/esm/ix-date-time-card.entry.js +1 -1
- package/dist/esm/ix-datetime-picker.entry.js +1 -1
- package/dist/esm/ix-divider.entry.js +1 -1
- package/dist/esm/ix-drawer.entry.js +4 -4
- package/dist/esm/ix-drawer.entry.js.map +1 -1
- package/dist/esm/ix-dropdown-button.entry.js +1 -1
- package/dist/esm/ix-dropdown-quick-actions.entry.js +1 -1
- package/dist/esm/ix-dropdown_2.entry.js +1 -1
- package/dist/esm/ix-empty-state.entry.js +23 -0
- package/dist/esm/ix-empty-state.entry.js.map +1 -0
- package/dist/esm/ix-event-list_2.entry.js +1 -1
- package/dist/esm/ix-expanding-search.entry.js +5 -2
- package/dist/esm/ix-expanding-search.entry.js.map +1 -1
- package/dist/esm/ix-filter-chip.entry.js +1 -1
- package/dist/esm/ix-flip-tile_2.entry.js +1 -1
- package/dist/esm/ix-group-context-menu.entry.js +1 -1
- package/dist/esm/ix-group_3.entry.js +1 -1
- package/dist/esm/ix-icon-button.entry.js +11 -4
- package/dist/esm/ix-icon-button.entry.js.map +1 -1
- package/dist/esm/ix-icon.entry.js +2 -32
- package/dist/esm/ix-icon.entry.js.map +1 -1
- package/dist/esm/ix-index-button.entry.js +1 -1
- package/dist/esm/ix-input-group.entry.js +1 -1
- package/dist/esm/ix-key-value-list.entry.js +18 -0
- package/dist/esm/ix-key-value-list.entry.js.map +1 -0
- package/dist/esm/ix-key-value.entry.js +24 -0
- package/dist/esm/ix-key-value.entry.js.map +1 -0
- package/dist/esm/ix-kpi.entry.js +2 -2
- package/dist/esm/ix-kpi.entry.js.map +1 -1
- package/dist/esm/ix-map-navigation_2.entry.js +11 -5
- package/dist/esm/ix-map-navigation_2.entry.js.map +1 -1
- package/dist/esm/ix-menu_9.entry.js +24 -15
- package/dist/esm/ix-menu_9.entry.js.map +1 -1
- package/dist/esm/ix-message-bar.entry.js +2 -2
- package/dist/esm/ix-message-bar.entry.js.map +1 -1
- package/dist/esm/ix-modal-example.entry.js +1 -1
- package/dist/esm/ix-modal_2.entry.js +2 -2
- package/dist/esm/ix-modal_2.entry.js.map +1 -1
- package/dist/esm/ix-pagination.entry.js +1 -1
- package/dist/esm/ix-pill.entry.js +1 -1
- package/dist/esm/ix-push-card.entry.js +23 -0
- package/dist/esm/ix-push-card.entry.js.map +1 -0
- package/dist/esm/ix-select_2.entry.js +3 -3
- package/dist/esm/ix-select_2.entry.js.map +1 -1
- package/dist/esm/ix-spinner.entry.js +2 -2
- package/dist/esm/ix-spinner.entry.js.map +1 -1
- package/dist/esm/ix-split-button_2.entry.js +1 -1
- package/dist/esm/ix-tab-item.entry.js +1 -1
- package/dist/esm/ix-tabs.entry.js +1 -1
- package/dist/esm/ix-tile.entry.js +1 -1
- package/dist/esm/ix-toast_2.entry.js +8 -26
- package/dist/esm/ix-toast_2.entry.js.map +1 -1
- package/dist/esm/ix-toggle.entry.js +1 -1
- package/dist/esm/ix-tooltip.entry.js +1 -1
- package/dist/esm/ix-tree_2.entry.js +1 -1
- package/dist/esm/ix-upload.entry.js +1 -1
- package/dist/esm/ix-validation-tooltip.entry.js +1 -1
- package/dist/esm/ix-workflow-step_2.entry.js +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/my-component.entry.js +2 -2
- package/dist/esm/my-component.entry.js.map +1 -1
- package/dist/esm/siemens-ix.js +3 -3
- package/dist/siemens-ix/index.esm.js +1 -1
- package/dist/siemens-ix/index.esm.js.map +1 -1
- package/dist/siemens-ix/{p-2850e6b1.entry.js → p-003e9355.entry.js} +2 -2
- package/dist/siemens-ix/p-07c932da.entry.js +2 -0
- package/dist/siemens-ix/p-07c932da.entry.js.map +1 -0
- package/dist/siemens-ix/{p-f20dc192.entry.js → p-1331a920.entry.js} +2 -2
- package/dist/siemens-ix/p-13bda5ea.entry.js +2 -0
- package/dist/siemens-ix/p-13bda5ea.entry.js.map +1 -0
- package/dist/siemens-ix/p-1abcd6ba.js +2 -0
- package/dist/siemens-ix/p-1abcd6ba.js.map +1 -0
- package/dist/siemens-ix/{p-57a5d3d0.js → p-1c64b073.js} +3 -3
- package/dist/siemens-ix/p-1c64b073.js.map +1 -0
- package/dist/siemens-ix/{p-f2355beb.entry.js → p-1e8ee4af.entry.js} +2 -2
- package/dist/siemens-ix/{p-729c8d31.entry.js → p-3172249b.entry.js} +2 -2
- package/dist/siemens-ix/p-3f4a9e1f.entry.js +2 -0
- package/dist/siemens-ix/p-3f4a9e1f.entry.js.map +1 -0
- package/dist/siemens-ix/{p-3b4c5e4b.entry.js → p-40982e21.entry.js} +2 -2
- package/dist/siemens-ix/{p-7cdbc92b.entry.js → p-4597dd77.entry.js} +2 -2
- package/dist/siemens-ix/p-46ced516.entry.js +2 -0
- package/dist/siemens-ix/p-46ced516.entry.js.map +1 -0
- package/dist/siemens-ix/p-47422d47.entry.js +2 -0
- package/dist/siemens-ix/p-47422d47.entry.js.map +1 -0
- package/dist/siemens-ix/{p-d985e147.entry.js → p-4e851aa3.entry.js} +2 -2
- package/dist/siemens-ix/{p-1c1dd6d6.entry.js → p-51c81a20.entry.js} +2 -2
- package/dist/siemens-ix/p-55b54a81.entry.js +2 -0
- package/dist/siemens-ix/p-55b54a81.entry.js.map +1 -0
- package/dist/siemens-ix/p-5ec38498.entry.js +2 -0
- package/dist/siemens-ix/p-5ec38498.entry.js.map +1 -0
- package/dist/siemens-ix/{p-b54c8bba.entry.js → p-6124d173.entry.js} +2 -2
- package/dist/siemens-ix/{p-7f7657ec.entry.js → p-626fbee2.entry.js} +2 -2
- package/dist/siemens-ix/{p-15335e01.entry.js → p-652ba2c1.entry.js} +2 -2
- package/dist/siemens-ix/p-67be3720.entry.js +2 -0
- package/dist/siemens-ix/p-67be3720.entry.js.map +1 -0
- package/dist/siemens-ix/p-6acce5c9.entry.js +2 -0
- package/dist/siemens-ix/p-6acce5c9.entry.js.map +1 -0
- package/dist/siemens-ix/p-6c033b08.entry.js +2 -0
- package/dist/siemens-ix/p-6c033b08.entry.js.map +1 -0
- package/dist/siemens-ix/{p-f7f07386.entry.js → p-821ca55e.entry.js} +2 -2
- package/dist/siemens-ix/p-85f01dba.entry.js +2 -0
- package/dist/siemens-ix/p-85f01dba.entry.js.map +1 -0
- package/dist/siemens-ix/{p-46e468af.entry.js → p-8719eeff.entry.js} +2 -2
- package/dist/siemens-ix/{p-de1e7c64.entry.js → p-94ab7c1c.entry.js} +2 -2
- package/dist/siemens-ix/{p-9da2881b.entry.js → p-9a82921b.entry.js} +2 -2
- package/dist/siemens-ix/{p-908afbed.entry.js → p-a08e1bbc.entry.js} +2 -2
- package/dist/siemens-ix/p-a422c64a.entry.js +2 -0
- package/dist/siemens-ix/p-a422c64a.entry.js.map +1 -0
- package/dist/siemens-ix/p-a7212f01.entry.js +2 -0
- package/dist/siemens-ix/p-a7212f01.entry.js.map +1 -0
- package/dist/siemens-ix/{p-e4f9db28.entry.js → p-a73580a5.entry.js} +2 -2
- package/dist/siemens-ix/p-a89a1fa5.entry.js +2 -0
- package/dist/siemens-ix/p-a89a1fa5.entry.js.map +1 -0
- package/dist/siemens-ix/{p-2ecb0ffd.entry.js → p-b5c40bb3.entry.js} +2 -2
- package/dist/siemens-ix/p-b60bd26c.entry.js +2 -0
- package/dist/siemens-ix/p-b60bd26c.entry.js.map +1 -0
- package/dist/siemens-ix/p-b9c2e7d9.entry.js +2 -0
- package/dist/siemens-ix/p-b9c2e7d9.entry.js.map +1 -0
- package/dist/siemens-ix/{p-0dd51d53.entry.js → p-bd24f35f.entry.js} +2 -2
- package/dist/siemens-ix/p-c349b266.entry.js +2 -0
- package/dist/siemens-ix/p-c349b266.entry.js.map +1 -0
- package/dist/siemens-ix/p-c5124f7b.entry.js +2 -0
- package/dist/siemens-ix/p-c5124f7b.entry.js.map +1 -0
- package/dist/siemens-ix/{p-bbda3133.entry.js → p-c7109071.entry.js} +2 -2
- package/dist/siemens-ix/p-c724bb65.entry.js +2 -0
- package/dist/siemens-ix/p-c724bb65.entry.js.map +1 -0
- package/dist/siemens-ix/p-ca4d28fb.entry.js +2 -0
- package/dist/siemens-ix/p-ca4d28fb.entry.js.map +1 -0
- package/dist/siemens-ix/p-cd3cfc78.entry.js +2 -0
- package/dist/siemens-ix/p-cd3cfc78.entry.js.map +1 -0
- package/dist/siemens-ix/p-cd4e3593.entry.js +2 -0
- package/dist/siemens-ix/p-cd4e3593.entry.js.map +1 -0
- package/dist/siemens-ix/p-cd75b455.entry.js +2 -0
- package/dist/siemens-ix/p-cd75b455.entry.js.map +1 -0
- package/dist/siemens-ix/{p-ae29d220.entry.js → p-cf2717c1.entry.js} +2 -2
- package/dist/siemens-ix/{p-2149ce72.entry.js → p-d2225fc2.entry.js} +2 -2
- package/dist/siemens-ix/{p-925b7d63.entry.js → p-d5302336.entry.js} +2 -2
- package/dist/siemens-ix/{p-c11ebe2f.entry.js → p-d784a04b.entry.js} +2 -2
- package/dist/siemens-ix/{p-9a4a825a.entry.js → p-d7e23a1f.entry.js} +2 -2
- package/dist/siemens-ix/p-d848739e.entry.js +2 -0
- package/dist/siemens-ix/p-d848739e.entry.js.map +1 -0
- package/dist/siemens-ix/p-dbcec49e.entry.js +2 -0
- package/dist/siemens-ix/p-dbcec49e.entry.js.map +1 -0
- package/dist/siemens-ix/{p-dae58ef8.entry.js → p-dc98d3f4.entry.js} +2 -2
- package/dist/siemens-ix/{p-63663ccd.entry.js → p-df138b2a.entry.js} +2 -2
- package/dist/siemens-ix/p-ea55afa3.entry.js +2 -0
- package/dist/siemens-ix/p-ea55afa3.entry.js.map +1 -0
- package/dist/siemens-ix/{p-77c1e1e7.entry.js → p-eccc2475.entry.js} +2 -2
- package/dist/siemens-ix/{p-c4b1210b.entry.js → p-ecd1145b.entry.js} +2 -2
- package/dist/siemens-ix/{p-a36c0c05.entry.js → p-f207e578.entry.js} +2 -2
- package/dist/siemens-ix/p-f207e578.entry.js.map +1 -0
- package/dist/siemens-ix/{p-272b771c.entry.js → p-f48b706b.entry.js} +2 -2
- package/dist/siemens-ix/{p-65d38367.entry.js → p-f50697b9.entry.js} +2 -2
- package/dist/siemens-ix/p-f6ae45fb.entry.js +2 -0
- package/dist/siemens-ix/p-f6ae45fb.entry.js.map +1 -0
- package/dist/siemens-ix/{p-0fcfac90.entry.js → p-f74c7692.entry.js} +2 -2
- package/dist/siemens-ix/{p-7ed22ba1.entry.js → p-feb8c2c4.entry.js} +2 -2
- package/dist/siemens-ix/siemens-ix.css +32 -14
- package/dist/siemens-ix/siemens-ix.esm.js +1 -1
- package/dist/siemens-ix/siemens-ix.esm.js.map +1 -1
- package/dist/types/components/action-card/action-card.d.ts +28 -0
- package/dist/types/components/button/button.d.ts +1 -1
- package/dist/types/components/card/card.d.ts +12 -0
- package/dist/types/components/card-accordion/card-accordion.d.ts +20 -0
- package/dist/types/components/card-content/card-content.d.ts +6 -0
- package/dist/types/components/card-list/card-list.d.ts +78 -0
- package/dist/types/components/card-title/card-title.d.ts +8 -0
- package/dist/types/components/content-header/content-header.d.ts +25 -0
- package/dist/types/components/drawer/drawer.d.ts +1 -1
- package/dist/types/components/empty-state/empty-state.d.ts +32 -0
- package/dist/types/components/expanding-search/expanding-search.d.ts +5 -0
- package/dist/types/components/icon-button/icon-button.d.ts +1 -0
- package/dist/types/components/key-value/key-value.d.ts +25 -0
- package/dist/types/components/key-value-list/key-value-list.d.ts +10 -0
- package/dist/types/components/layout/css-grid/builder.d.ts +1 -0
- package/dist/types/components/layout/css-grid/css-grid-item.d.ts +10 -0
- package/dist/types/components/layout/css-grid/css-grid.d.ts +18 -0
- package/dist/types/components/map-navigation/map-navigation.d.ts +7 -1
- package/dist/types/components/menu-item/menu-item.d.ts +5 -3
- package/dist/types/components/push-card/push-card.d.ts +28 -0
- package/dist/types/components/time-picker/time-picker.d.ts +7 -0
- package/dist/types/components/toast/toast.d.ts +0 -1
- package/dist/types/components/typography/typography.d.ts +7 -2
- package/dist/types/components.d.ts +654 -46
- package/dist/types/index.d.ts +12 -0
- package/package.json +2 -2
- package/scss/components/_buttons.scss +3 -6
- package/scss/components/_forms.scss +18 -12
- package/scss/mixins/shadow-dom/_component.scss +15 -0
- package/scss/mixins/shadow-dom/_hover.scss +19 -0
- package/scss/theme/classic-dark/_borderRadius.scss +1 -1
- package/dist/cjs/index-931d1fb5.js.map +0 -1
- package/dist/cjs/ix-typography.cjs.entry.js.map +0 -1
- package/dist/collection/components/icon/icon.js +0 -101
- package/dist/collection/components/icon/icon.js.map +0 -1
- package/dist/collection/components/typography/types.js.map +0 -1
- package/dist/esm/index-57424926.js.map +0 -1
- package/dist/esm/ix-typography.entry.js.map +0 -1
- package/dist/siemens-ix/p-091accfc.entry.js +0 -2
- package/dist/siemens-ix/p-091accfc.entry.js.map +0 -1
- package/dist/siemens-ix/p-189cdc59.entry.js +0 -2
- package/dist/siemens-ix/p-189cdc59.entry.js.map +0 -1
- package/dist/siemens-ix/p-2206924a.entry.js +0 -2
- package/dist/siemens-ix/p-2206924a.entry.js.map +0 -1
- package/dist/siemens-ix/p-2e2fca5f.entry.js +0 -2
- package/dist/siemens-ix/p-2e2fca5f.entry.js.map +0 -1
- package/dist/siemens-ix/p-57a5d3d0.js.map +0 -1
- package/dist/siemens-ix/p-69c4d72b.entry.js +0 -2
- package/dist/siemens-ix/p-69c4d72b.entry.js.map +0 -1
- package/dist/siemens-ix/p-75045a73.entry.js +0 -2
- package/dist/siemens-ix/p-75045a73.entry.js.map +0 -1
- package/dist/siemens-ix/p-89b7ae4c.entry.js +0 -2
- package/dist/siemens-ix/p-89b7ae4c.entry.js.map +0 -1
- package/dist/siemens-ix/p-8cf56736.entry.js +0 -2
- package/dist/siemens-ix/p-8cf56736.entry.js.map +0 -1
- package/dist/siemens-ix/p-93d6bfe1.entry.js +0 -2
- package/dist/siemens-ix/p-93d6bfe1.entry.js.map +0 -1
- package/dist/siemens-ix/p-9c2ae88d.entry.js +0 -2
- package/dist/siemens-ix/p-9c2ae88d.entry.js.map +0 -1
- package/dist/siemens-ix/p-a36c0c05.entry.js.map +0 -1
- package/dist/siemens-ix/p-a6e443df.entry.js +0 -2
- package/dist/siemens-ix/p-a6e443df.entry.js.map +0 -1
- package/dist/siemens-ix/p-af533e73.entry.js +0 -2
- package/dist/siemens-ix/p-af533e73.entry.js.map +0 -1
- package/dist/siemens-ix/p-b46713aa.entry.js +0 -2
- package/dist/siemens-ix/p-b46713aa.entry.js.map +0 -1
- package/dist/siemens-ix/p-bdaae206.entry.js +0 -2
- package/dist/siemens-ix/p-bdaae206.entry.js.map +0 -1
- package/dist/siemens-ix/p-c29d31ea.entry.js +0 -2
- package/dist/siemens-ix/p-c29d31ea.entry.js.map +0 -1
- package/dist/siemens-ix/p-d57afc21.entry.js +0 -2
- package/dist/siemens-ix/p-d57afc21.entry.js.map +0 -1
- package/dist/siemens-ix/p-f72d10e6.entry.js +0 -2
- package/dist/siemens-ix/p-f72d10e6.entry.js.map +0 -1
- package/dist/types/components/icon/icon.d.ts +0 -15
- /package/dist/siemens-ix/{p-2850e6b1.entry.js.map → p-003e9355.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-f20dc192.entry.js.map → p-1331a920.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-f2355beb.entry.js.map → p-1e8ee4af.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-729c8d31.entry.js.map → p-3172249b.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-3b4c5e4b.entry.js.map → p-40982e21.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-7cdbc92b.entry.js.map → p-4597dd77.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-d985e147.entry.js.map → p-4e851aa3.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-1c1dd6d6.entry.js.map → p-51c81a20.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-b54c8bba.entry.js.map → p-6124d173.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-7f7657ec.entry.js.map → p-626fbee2.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-15335e01.entry.js.map → p-652ba2c1.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-f7f07386.entry.js.map → p-821ca55e.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-46e468af.entry.js.map → p-8719eeff.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-de1e7c64.entry.js.map → p-94ab7c1c.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-9da2881b.entry.js.map → p-9a82921b.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-908afbed.entry.js.map → p-a08e1bbc.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-e4f9db28.entry.js.map → p-a73580a5.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-2ecb0ffd.entry.js.map → p-b5c40bb3.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-0dd51d53.entry.js.map → p-bd24f35f.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-bbda3133.entry.js.map → p-c7109071.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-ae29d220.entry.js.map → p-cf2717c1.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-2149ce72.entry.js.map → p-d2225fc2.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-925b7d63.entry.js.map → p-d5302336.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-c11ebe2f.entry.js.map → p-d784a04b.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-9a4a825a.entry.js.map → p-d7e23a1f.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-dae58ef8.entry.js.map → p-dc98d3f4.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-63663ccd.entry.js.map → p-df138b2a.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-77c1e1e7.entry.js.map → p-eccc2475.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-c4b1210b.entry.js.map → p-ecd1145b.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-272b771c.entry.js.map → p-f48b706b.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-65d38367.entry.js.map → p-f50697b9.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-0fcfac90.entry.js.map → p-f74c7692.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-7ed22ba1.entry.js.map → p-feb8c2c4.entry.js.map} +0 -0
- /package/dist/types/components/typography/{types.d.ts → type-mapping.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu.js","sourceRoot":"","sources":["../../../src/components/menu/menu.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport { menuController } from '../utils/menu-service/menu-service';\nimport { convertToRemString } from '../utils/rwd.util';\nimport { hostContext, isBasicNavigationLayout } from '../utils/screen/context';\nimport { Mode } from '../utils/screen/mode';\nimport { screenMode } from '../utils/screen/service';\nimport { themeSwitcher } from '../utils/theme-switcher';\n\n@Component({\n tag: 'ix-menu',\n styleUrl: 'menu.scss',\n scoped: false,\n})\nexport class Menu {\n @Element() hostElement!: HTMLIxMenuElement;\n\n /**\n * Is settings tab visible\n */\n @Prop({ mutable: true }) showSettings = false;\n\n /**\n * Is about tab visible\n */\n @Prop({ mutable: true }) showAbout = false;\n\n /**\n * Show toggle between light and dark variant. Only if the provided theme have implemented both!\n */\n @Prop() enableToggleTheme = false;\n\n /**\n * Is settings tab is visible\n */\n @Prop() enableSettings = true;\n\n /**\n * Internal\n */\n @Prop() enableMapExpand = false;\n\n /**\n * Should only be set if you use ix-menu standalone\n */\n @Prop() applicationName: string;\n\n /**\n * Should only be set if you use ix-menu standalone\n */\n @Prop() applicationDescription = '';\n\n /**\n * Maximum number of menu items to show in case enough vertical space is available.\n * Extra menu items will be collapsed to 'show more' menu item.\n */\n @Prop() maxVisibleMenuItems = 9;\n\n /**\n */\n @Prop() i18nLegal = 'About & legal information';\n\n /**\n */\n @Prop() i18nSettings = 'Settings';\n\n /**\n */\n @Prop() i18nToggleTheme = 'Toggle theme';\n\n /**\n */\n @Prop() i18nExpand = ' Expand';\n\n /**\n */\n @Prop() i18nCollapse = 'Collapse';\n\n /**\n */\n @Prop() i18nMore = 'More…';\n\n /**\n * Expand menu\n */\n @Prop({ mutable: true, reflect: true }) expand = false;\n\n /**\n * Menu expanded\n */\n @Event() expandChange: EventEmitter<boolean>;\n\n /**\n * Map Sidebar expanded\n */\n @Event() mapExpandChange: EventEmitter<boolean>;\n @State() showMoreItems = false;\n @State() visibleMenuItems = 0;\n @State() countMoreNotifications = 0;\n @State() mapExpand = true;\n @State() activeTab: HTMLIxMenuItemElement;\n @State() isMoreTabEmpty = false;\n @State() mode: Mode = 'desktop';\n\n private readonly domObserver = new MutationObserver(\n this.onDomChange.bind(this)\n );\n\n @Listen('resize', { target: 'window' })\n onWindowResize() {\n this.visibleMenuItems = this.getMaxTabCount();\n }\n\n private handleNodeMutation(node: Node) {\n if (!(node instanceof HTMLElement)) {\n return;\n }\n\n if (node.matches('.tab')) {\n this.onWindowResize();\n }\n\n if (node.matches('ix-menu-about') && this.menu.contains(node)) {\n this.appendAbout();\n }\n\n if (node.matches('ix-menu-settings') && this.menu.contains(node)) {\n this.appendSettings();\n }\n }\n\n private onDomChange(mutations: MutationRecord[]) {\n mutations.forEach((mutationRecord) => {\n mutationRecord.addedNodes.forEach(this.handleNodeMutation.bind(this));\n mutationRecord.removedNodes.forEach(this.handleNodeMutation.bind(this));\n });\n }\n\n // FBC IAM workaround #488\n private readonly isVisible = (elm: HTMLElement) => {\n return (\n elm.style.display !== 'none' &&\n elm.parentElement?.parentElement?.style.display !== 'none'\n );\n };\n\n get popoverArea() {\n return this.hostElement.querySelector('#popover-area');\n }\n\n get overlayContainer() {\n return this.hostElement.querySelector('.menu-overlay');\n }\n\n get invisibleContainer() {\n return this.hostElement.querySelector('.menu-overlay-invisible');\n }\n\n get menu() {\n return this.hostElement.querySelector('.menu');\n }\n\n get menuItems() {\n return Array.from(\n this.hostElement.querySelectorAll(\n 'ix-menu-item:not(.internal-tab):not(.home-tab):not(.bottom-tab):not([slot=\"bottom\"])'\n )\n ).filter(this.isVisible);\n }\n\n get menuBottomItems() {\n return Array.from(\n this.hostElement.querySelectorAll(\n 'ix-menu-item.bottom-tab:not(.internal-tab):not(.home-tab)'\n )\n ).filter(this.isVisible);\n }\n\n get homeTab() {\n return this.hostElement.querySelector('ix-menu-item.home-tab');\n }\n\n get moreItemsDropdown(): HTMLElement {\n return this.hostElement.querySelector('.internal-tab ix-dropdown');\n }\n\n get isMoreItemsDropdownEmpty(): boolean {\n return (\n this.hostElement.querySelectorAll('.internal-tab ix-dropdown .appended')\n .length === 0\n );\n }\n\n get moreItemsDropdownItems() {\n return this.hostElement.querySelectorAll(\n '.internal-tab ix-dropdown ix-menu-item'\n );\n }\n\n get activeMoreTabContainer() {\n return this.hostElement.querySelector('.active-more-tab');\n }\n\n get activeMoreTab() {\n return this.hostElement.querySelector('.active-more-tab ix-menu-item');\n }\n\n get aboutPopoverContainer(): HTMLElement {\n return this.hostElement.querySelector('.about-news');\n }\n\n get aboutPopover(): HTMLIxMenuAboutNewsElement {\n return document.querySelector('ix-menu-about-news');\n }\n\n get aboutTab(): HTMLElement {\n return this.hostElement.querySelector('#aboutAndLegal');\n }\n\n get about(): HTMLIxMenuAboutElement {\n return this.hostElement.querySelector('ix-menu-about');\n }\n\n get settings(): HTMLIxMenuSettingsElement {\n return this.hostElement.querySelector('ix-menu-settings');\n }\n\n get isSettingsEmpty(): boolean {\n return (\n Array.from(this.hostElement.querySelectorAll('ix-menu-settings-item'))\n .length === 0\n );\n }\n\n get avatarItem(): HTMLIxMenuAvatarElement {\n return this.hostElement.querySelector('ix-menu-avatar');\n }\n\n get tabsContainer(): HTMLDivElement {\n return this.hostElement.querySelector('#menu-tabs');\n }\n\n private showTab(index: number) {\n return index + 1 <= this.visibleMenuItems;\n }\n\n componentDidLoad() {\n this.settings?.addEventListener('close', () => {\n this.showSettings = false;\n this.settings.show = this.showSettings;\n });\n\n this.settings?.addEventListener('animationend', () => {\n if (!this.showSettings) {\n this.settings.classList.add('d-none');\n this.overlayContainer.classList.add('d-none');\n }\n });\n\n this.about?.addEventListener('close', () => {\n this.showAbout = false;\n this.about.show = this.showAbout;\n });\n\n this.about?.addEventListener('animationend', () => {\n if (!this.showAbout) {\n this.about.classList.add('d-none');\n this.overlayContainer.classList.add('d-none');\n }\n });\n\n this.overlayContainer.classList.add('d-none');\n\n this.onWindowResize();\n\n this.domObserver.observe(this.hostElement, {\n attributes: false,\n childList: true,\n subtree: true,\n });\n }\n\n componentWillLoad() {\n menuController.register(this.hostElement);\n const layout = hostContext('ix-basic-navigation', this.hostElement);\n if (isBasicNavigationLayout(layout) && layout.hideHeader === false) {\n screenMode.onChange.on((mode) => (this.mode = mode));\n this.mode = screenMode.mode;\n }\n }\n\n componentWillRender() {\n this.appendTabs();\n }\n\n componentDidRender() {\n this.visibleMenuItems = this.getMaxTabCount();\n this.appendFragments();\n }\n\n private appendFragments() {\n this.appendAvatar();\n this.appendAbout();\n this.appendSettings();\n this.appendAboutNewsPopover();\n\n // This lead to none infinite-loops and other bugs.\n this.isMoreTabEmpty = this.isMoreItemsDropdownEmpty;\n\n this.countMoreNotifications = this.getMoreNotificationsCount();\n }\n\n private resetActiveTab() {\n this.activeTab = null;\n }\n\n private isMenuItemActive(item: HTMLIxMenuItemElement) {\n return item.active || item.classList.contains('active');\n }\n\n private appendTabs() {\n this.activeTab = null;\n\n if (this.homeTab) {\n this.hostElement.querySelector('.tabs-top').appendChild(this.homeTab);\n this.homeTab.addEventListener('click', this.resetOverlay.bind(this));\n }\n\n this.menuItems.forEach((item: HTMLIxMenuItemElement, index) => {\n if (this.showTab(index)) {\n item.classList.remove('d-none');\n } else {\n item.classList.add('d-none');\n\n if (this.isMenuItemActive(item)) {\n this.activeTab = item;\n }\n }\n\n // TODO: Find better solution to handle home tab\n this.homeTab?.classList.remove('d-none');\n\n item.addEventListener('click', this.resetOverlay.bind(this));\n });\n }\n\n private appendAvatar() {\n const avatar = this.avatarItem;\n if (avatar) {\n avatar.style.marginBottom = '1rem';\n this.hostElement\n .querySelector('#avatar-tab-placeholder')\n ?.appendChild(avatar);\n }\n }\n\n private getAboutPopoverVerticalPosition() {\n const heightArrow = 12;\n const offsetArrow = 6;\n const rectAbout = this.aboutTab.getBoundingClientRect();\n const offset =\n window.innerHeight -\n (rectAbout.bottom - rectAbout.height / 2 + heightArrow / 2 + offsetArrow);\n return convertToRemString(offset);\n }\n\n private appendAboutNewsPopover() {\n if (!this.aboutPopover) {\n return;\n }\n\n this.aboutPopover.style.bottom = this.getAboutPopoverVerticalPosition();\n\n if (!this.popoverArea?.contains(this.aboutPopover)) {\n const showMore = () => {\n if (this.aboutPopover?.aboutItemLabel) {\n this.about.activeTabLabel = this.aboutPopover.aboutItemLabel;\n this.toggleAbout(true);\n }\n };\n\n this.aboutPopover.addEventListener('showMore', showMore.bind(this));\n document.body.appendChild(this.aboutPopover);\n }\n }\n\n private appendSettings() {\n if (this.settings) {\n this.overlayContainer.appendChild(this.settings);\n }\n }\n\n private appendAbout() {\n if (this.about) {\n this.overlayContainer.appendChild(this.about);\n }\n }\n\n private getMoreNotificationsCount(): number {\n const moreTabs = this.moreItemsDropdown?.querySelectorAll('.appended');\n let count = 0;\n moreTabs?.forEach((tab) => {\n if (tab['notifications']) {\n count += tab['notifications'];\n }\n });\n\n return count;\n }\n\n private getAvailableHeight() {\n const heightBurgerMenu = 60;\n const heightHome = 72;\n const heightAvatar = 56;\n const heightBottomTab = 36;\n\n let availableHeight = this.hostElement.clientHeight;\n\n availableHeight -= heightBurgerMenu;\n\n if (this.avatarItem) {\n availableHeight -= heightAvatar;\n }\n\n if (this.homeTab) {\n availableHeight -= heightHome;\n }\n\n if (this.showAbout) {\n availableHeight -= heightBottomTab;\n }\n\n if (this.showSettings) {\n availableHeight -= heightBottomTab;\n }\n\n if (this.menuBottomItems.length) {\n availableHeight -= this.menuBottomItems.length * heightBottomTab;\n }\n\n if (this.enableMapExpand) {\n availableHeight -= heightBottomTab;\n }\n\n // Subtract height of imprint and theme toggle tabs\n availableHeight -= 2 * heightBottomTab;\n\n // Subtract bottom margin of bottom tabs\n availableHeight -= 16;\n\n return availableHeight;\n }\n\n private getMaxTabCount() {\n const heightTab = 48;\n const availableHeight = this.getAvailableHeight();\n const visibleCount = Math.floor(availableHeight / heightTab);\n const menuItemCount = this.menuItems.length;\n\n if (menuItemCount === 1) {\n return 1;\n }\n\n if (menuItemCount < this.maxVisibleMenuItems) {\n if (visibleCount > menuItemCount) {\n return menuItemCount;\n }\n\n return Math.min(visibleCount - 2, menuItemCount);\n }\n\n if (menuItemCount === this.maxVisibleMenuItems) {\n if (visibleCount < this.maxVisibleMenuItems) {\n return visibleCount - 2;\n }\n\n if (visibleCount === this.maxVisibleMenuItems) {\n return this.maxVisibleMenuItems - 2;\n }\n\n return Math.min(visibleCount, this.maxVisibleMenuItems);\n }\n\n if (visibleCount === this.maxVisibleMenuItems) {\n return this.maxVisibleMenuItems - 2;\n }\n if (visibleCount >= this.maxVisibleMenuItems) {\n return this.maxVisibleMenuItems - 1;\n }\n\n return Math.min(visibleCount - 2, this.maxVisibleMenuItems);\n }\n\n /**\n * Toggle map sidebar expand\n * @param show\n */\n @Method()\n async toggleMapExpand(show?: boolean) {\n this.skipAllOverlayAnimations();\n\n if (show !== undefined) {\n this.mapExpand = show;\n } else {\n this.mapExpand = !this.mapExpand;\n }\n }\n\n private skipAllOverlayAnimations() {\n if (this.about) {\n this.skipOverlayAnimationFor(this.about);\n }\n if (this.settings) {\n this.skipOverlayAnimationFor(this.settings);\n }\n }\n\n private skipOverlayAnimationFor(element: HTMLElement) {\n const animateClass = 'animate__animated';\n\n element?.classList.remove(animateClass);\n\n setTimeout(() => {\n element?.classList.add(animateClass);\n }, 300);\n }\n\n /**\n * Toggle menu\n * @param show\n */\n @Method()\n async toggleMenu(show?: boolean) {\n this.skipAllOverlayAnimations();\n\n if (show !== undefined) {\n this.expand = show;\n } else {\n this.expand = !this.expand;\n }\n\n if (this.aboutPopover) {\n this.aboutPopover.expanded = this.expand;\n }\n\n this.expandChange.emit(this.expand);\n }\n\n /**\n * Toggle Settings tabs\n * @param show\n */\n @Method()\n async toggleSettings(show: boolean) {\n if (this.showAbout) {\n this.skipAllOverlayAnimations();\n } else {\n this.skipOverlayAnimationFor(this.about);\n }\n\n this.about?.classList.add('d-none');\n\n this.resetOverlay();\n this.showSettings = show;\n this.settings.show = this.showSettings;\n this.settings.classList.remove('d-none');\n this.overlayContainer.classList.remove('d-none');\n }\n\n /**\n * Toggle About tabs\n * @param show\n */\n @Method()\n async toggleAbout(show: boolean) {\n if (this.showSettings) {\n this.skipAllOverlayAnimations();\n } else {\n this.skipOverlayAnimationFor(this.settings);\n }\n\n this.settings?.classList.add('d-none');\n\n this.resetOverlay();\n this.showAbout = show;\n this.about.show = this.showAbout;\n this.about.classList.remove('d-none');\n this.overlayContainer.classList.remove('d-none');\n }\n\n private resetOverlay() {\n this.showSettings = false;\n this.showAbout = false;\n\n if (this.settings) {\n this.settings.show = this.showSettings;\n }\n\n if (this.about) {\n this.about.show = this.showAbout;\n }\n\n this.toggleMenu(false);\n }\n\n private showMoreButton() {\n const menuItemCount = this.menuItems.length;\n\n if (menuItemCount === 1) {\n return false;\n }\n\n if (menuItemCount < this.maxVisibleMenuItems) {\n return this.visibleMenuItems < menuItemCount;\n }\n\n if (menuItemCount > this.maxVisibleMenuItems) {\n return this.visibleMenuItems < this.maxVisibleMenuItems;\n }\n\n return this.visibleMenuItems <= this.maxVisibleMenuItems - 2;\n }\n\n private getCollapseText() {\n return this.mapExpand ? this.i18nCollapse : this.i18nExpand;\n }\n\n private getCollapseIcon() {\n return this.mapExpand ? 'double-chevron-left' : 'double-chevron-right';\n }\n\n private isMenuItemClicked(event: MouseEvent) {\n const path = event.composedPath();\n const menuItems = (path as HTMLElement[])\n .filter((element) => element.id !== 'ix-menu-more-tab')\n .filter((element) => {\n return element.tagName === 'IX-MENU-ITEM';\n });\n\n return menuItems.some((menu) => this.tabsContainer.contains(menu));\n }\n\n render() {\n return (\n <Host\n class={{\n expanded: this.expand,\n [`mode-${this.mode}`]: true,\n }}\n >\n <div\n class={{\n menu: true,\n expanded: this.expand,\n }}\n onClick={() => {\n this.resetActiveTab();\n }}\n >\n <ix-burger-menu\n onClick={async () => this.toggleMenu()}\n expanded={this.expand}\n class={{\n 'burger-menu': true,\n }}\n ></ix-burger-menu>\n <div id=\"avatar-tab-placeholder\"></div>\n <div\n id=\"menu-tabs\"\n style={{\n display: 'contents',\n }}\n onClick={(event) => {\n if (this.isMenuItemClicked(event)) {\n this.resetOverlay();\n }\n }}\n >\n <div class=\"tabs-top\"></div>\n <slot></slot>\n <div class=\"active-more-tab\">\n {this.activeTab ? (\n <ix-menu-item\n class=\"internal-tab\"\n active={true}\n tabIcon={this.activeTab.tabIcon}\n >\n {this.activeTab.innerText}\n </ix-menu-item>\n ) : null}\n </div>\n <ix-menu-item\n id=\"ix-menu-more-tab\"\n tabIcon=\"more-menu\"\n class={{\n 'internal-tab': true,\n }}\n style={{\n display: this.showMoreButton() ? 'block' : 'none',\n }}\n title=\"Show more\"\n notifications={this.countMoreNotifications}\n >\n {this.i18nMore}\n <ix-dropdown\n trigger={'ix-menu-more-tab'}\n positioningStrategy={'fixed'}\n placement={'right-start'}\n >\n {this.menuItems\n .filter(\n (elm: HTMLIxMenuItemElement, index) =>\n !this.showTab(index) &&\n !this.isMenuItemActive(elm) &&\n this.isVisible(elm)\n )\n .map((e: HTMLIxMenuItemElement) => {\n return (\n <ix-menu-item\n tabIcon={e.tabIcon}\n active={e.active}\n class=\"internal-tab appended\"\n onClick={() => {\n this.resetOverlay();\n e.dispatchEvent(new CustomEvent('click'));\n }}\n >\n {e.innerText}\n </ix-menu-item>\n );\n })}\n </ix-dropdown>\n </ix-menu-item>\n </div>\n <div class=\"bottom-tab-divider\"></div>\n {this.enableSettings && !this.isSettingsEmpty ? (\n <ix-menu-item\n id=\"settings\"\n class={{\n 'internal-tab': true,\n 'bottom-tab': true,\n active: this.showSettings,\n }}\n tabIcon=\"cogwheel\"\n onClick={async () => this.toggleSettings(!this.showSettings)}\n >\n {this.i18nSettings}\n </ix-menu-item>\n ) : null}\n <slot name=\"bottom\"></slot>\n <div id=\"popover-area\"></div>\n {this.about ? (\n <ix-menu-item\n id=\"aboutAndLegal\"\n class={{\n 'internal-tab': true,\n 'bottom-tab': true,\n active: this.showAbout,\n }}\n tabIcon=\"info\"\n onClick={async () => this.toggleAbout(!this.showAbout)}\n >\n {this.i18nLegal}\n </ix-menu-item>\n ) : null}\n {this.enableToggleTheme ? (\n <ix-menu-item\n id=\"toggleTheme\"\n onClick={() => themeSwitcher.toggleMode()}\n class=\"internal-tab bottom-tab\"\n tabIcon=\"bulb\"\n >\n {this.i18nToggleTheme}\n </ix-menu-item>\n ) : null}\n {this.enableMapExpand ? (\n <ix-menu-item\n id=\"menu-collapse\"\n onClick={() => this.mapExpandChange.emit(this.mapExpand)}\n class=\"internal-tab bottom-tab\"\n tabIcon={`${this.getCollapseIcon()}`}\n >\n {this.getCollapseText()}\n </ix-menu-item>\n ) : null}\n </div>\n <div\n class={{\n 'menu-overlay': true,\n expanded: this.expand,\n 'd-block': this.showAbout || this.showSettings,\n }}\n style={{\n opacity: this.showAbout || this.showSettings ? '1' : '0',\n }}\n ></div>\n <div class=\"menu-overlay-invisible\"></div>\n </Host>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"menu.js","sourceRoot":"","sources":["../../../src/components/menu/menu.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport { menuController } from '../utils/menu-service/menu-service';\nimport { convertToRemString } from '../utils/rwd.util';\nimport { hostContext, isBasicNavigationLayout } from '../utils/screen/context';\nimport { Mode } from '../utils/screen/mode';\nimport { screenMode } from '../utils/screen/service';\nimport { themeSwitcher } from '../utils/theme-switcher';\n\n@Component({\n tag: 'ix-menu',\n styleUrl: 'menu.scss',\n scoped: false,\n})\nexport class Menu {\n @Element() hostElement!: HTMLIxMenuElement;\n\n /**\n * Is settings tab visible\n */\n @Prop({ mutable: true }) showSettings = false;\n\n /**\n * Is about tab visible\n */\n @Prop({ mutable: true }) showAbout = false;\n\n /**\n * Show toggle between light and dark variant. Only if the provided theme have implemented both!\n */\n @Prop() enableToggleTheme = false;\n\n /**\n * Is settings tab is visible\n */\n @Prop() enableSettings = true;\n\n /**\n * Internal\n */\n @Prop() enableMapExpand = false;\n\n /**\n * Should only be set if you use ix-menu standalone\n */\n @Prop() applicationName: string;\n\n /**\n * Should only be set if you use ix-menu standalone\n */\n @Prop() applicationDescription = '';\n\n /**\n * Maximum number of menu items to show in case enough vertical space is available.\n * Extra menu items will be collapsed to 'show more' menu item.\n */\n @Prop() maxVisibleMenuItems = 9;\n\n /**\n */\n @Prop() i18nLegal = 'About & legal information';\n\n /**\n */\n @Prop() i18nSettings = 'Settings';\n\n /**\n */\n @Prop() i18nToggleTheme = 'Toggle theme';\n\n /**\n */\n @Prop() i18nExpand = ' Expand';\n\n /**\n */\n @Prop() i18nCollapse = 'Collapse';\n\n /**\n */\n @Prop() i18nMore = 'More…';\n\n /**\n * Expand menu\n */\n @Prop({ mutable: true, reflect: true }) expand = false;\n\n /**\n * Menu expanded\n */\n @Event() expandChange: EventEmitter<boolean>;\n\n /**\n * Map Sidebar expanded\n */\n @Event() mapExpandChange: EventEmitter<boolean>;\n @State() showMoreItems = false;\n @State() visibleMenuItems = 0;\n @State() countMoreNotifications = 0;\n @State() mapExpand = true;\n @State() activeTab: HTMLIxMenuItemElement;\n @State() isMoreTabEmpty = false;\n @State() mode: Mode = 'desktop';\n\n private readonly domObserver = new MutationObserver(\n this.onDomChange.bind(this)\n );\n\n @Listen('resize', { target: 'window' })\n onWindowResize() {\n this.visibleMenuItems = this.getMaxTabCount();\n }\n\n private handleNodeMutation(node: Node) {\n if (!(node instanceof HTMLElement)) {\n return;\n }\n\n if (node.matches('.tab')) {\n this.onWindowResize();\n }\n\n if (node.matches('ix-menu-about') && this.menu.contains(node)) {\n this.appendAbout();\n }\n\n if (node.matches('ix-menu-settings') && this.menu.contains(node)) {\n this.appendSettings();\n }\n }\n\n private onDomChange(mutations: MutationRecord[]) {\n mutations.forEach((mutationRecord) => {\n mutationRecord.addedNodes.forEach(this.handleNodeMutation.bind(this));\n mutationRecord.removedNodes.forEach(this.handleNodeMutation.bind(this));\n });\n }\n\n // FBC IAM workaround #488\n private readonly isVisible = (elm: HTMLElement) => {\n return (\n elm.style.display !== 'none' &&\n elm.parentElement?.parentElement?.style.display !== 'none'\n );\n };\n\n get popoverArea() {\n return this.hostElement.querySelector('#popover-area');\n }\n\n get overlayContainer() {\n return this.hostElement.querySelector('.menu-overlay');\n }\n\n get invisibleContainer() {\n return this.hostElement.querySelector('.menu-overlay-invisible');\n }\n\n get menu() {\n return this.hostElement.querySelector('.menu');\n }\n\n get menuItems() {\n return Array.from(\n this.hostElement.querySelectorAll(\n 'ix-menu-item:not(.internal-tab):not(.home-tab):not(.bottom-tab):not([slot=\"bottom\"])'\n )\n ).filter(this.isVisible);\n }\n\n get menuBottomItems() {\n return Array.from(\n this.hostElement.querySelectorAll(\n 'ix-menu-item.bottom-tab:not(.internal-tab):not(.home-tab)'\n )\n ).filter(this.isVisible);\n }\n\n get homeTab() {\n return this.hostElement.querySelector('ix-menu-item.home-tab');\n }\n\n get moreItemsDropdown(): HTMLElement {\n return this.hostElement.querySelector('.internal-tab ix-dropdown');\n }\n\n get isMoreItemsDropdownEmpty(): boolean {\n return (\n this.hostElement.querySelectorAll('.internal-tab ix-dropdown .appended')\n .length === 0\n );\n }\n\n get moreItemsDropdownItems() {\n return this.hostElement.querySelectorAll(\n '.internal-tab ix-dropdown ix-menu-item'\n );\n }\n\n get activeMoreTabContainer() {\n return this.hostElement.querySelector('.active-more-tab');\n }\n\n get activeMoreTab() {\n return this.hostElement.querySelector('.active-more-tab ix-menu-item');\n }\n\n get aboutPopoverContainer(): HTMLElement {\n return this.hostElement.querySelector('.about-news');\n }\n\n get aboutPopover(): HTMLIxMenuAboutNewsElement {\n return document.querySelector('ix-menu-about-news');\n }\n\n get aboutTab(): HTMLElement {\n return this.hostElement.querySelector('#aboutAndLegal');\n }\n\n get about(): HTMLIxMenuAboutElement {\n return this.hostElement.querySelector('ix-menu-about');\n }\n\n get settings(): HTMLIxMenuSettingsElement {\n return this.hostElement.querySelector('ix-menu-settings');\n }\n\n get isSettingsEmpty(): boolean {\n return (\n Array.from(this.hostElement.querySelectorAll('ix-menu-settings-item'))\n .length === 0\n );\n }\n\n get avatarItem(): HTMLIxMenuAvatarElement {\n return this.hostElement.querySelector('ix-menu-avatar');\n }\n\n get tabsContainer(): HTMLDivElement {\n return this.hostElement.querySelector('#menu-tabs');\n }\n\n private showTab(index: number) {\n return index + 1 <= this.visibleMenuItems;\n }\n\n componentDidLoad() {\n this.settings?.addEventListener('close', () => {\n this.showSettings = false;\n this.settings.show = this.showSettings;\n });\n\n this.settings?.addEventListener('animationend', () => {\n if (!this.showSettings) {\n this.settings.classList.add('d-none');\n this.overlayContainer.classList.add('d-none');\n }\n });\n\n this.about?.addEventListener('close', () => {\n this.showAbout = false;\n this.about.show = this.showAbout;\n });\n\n this.about?.addEventListener('animationend', () => {\n if (!this.showAbout) {\n this.about.classList.add('d-none');\n this.overlayContainer.classList.add('d-none');\n }\n });\n\n this.overlayContainer.classList.add('d-none');\n\n this.onWindowResize();\n\n this.domObserver.observe(this.hostElement, {\n attributes: false,\n childList: true,\n subtree: true,\n });\n }\n\n componentWillLoad() {\n menuController.register(this.hostElement);\n const layout = hostContext('ix-basic-navigation', this.hostElement);\n if (isBasicNavigationLayout(layout) && layout.hideHeader === false) {\n screenMode.onChange.on((mode) => (this.mode = mode));\n this.mode = screenMode.mode;\n }\n }\n\n componentWillRender() {\n this.appendTabs();\n }\n\n componentDidRender() {\n this.visibleMenuItems = this.getMaxTabCount();\n this.appendFragments();\n }\n\n private appendFragments() {\n this.appendAvatar();\n this.appendAbout();\n this.appendSettings();\n this.appendAboutNewsPopover();\n\n // This lead to none infinite-loops and other bugs.\n this.isMoreTabEmpty = this.isMoreItemsDropdownEmpty;\n\n this.countMoreNotifications = this.getMoreNotificationsCount();\n }\n\n private resetActiveTab() {\n this.activeTab = null;\n }\n\n private isMenuItemActive(item: HTMLIxMenuItemElement) {\n return item.active || item.classList.contains('active');\n }\n\n private appendTabs() {\n this.activeTab = null;\n\n if (this.homeTab) {\n this.hostElement.querySelector('.tabs-top').appendChild(this.homeTab);\n this.homeTab.addEventListener('click', this.resetOverlay.bind(this));\n }\n\n this.menuItems.forEach((item: HTMLIxMenuItemElement, index) => {\n if (this.showTab(index)) {\n item.classList.remove('d-none');\n } else {\n item.classList.add('d-none');\n\n if (this.isMenuItemActive(item)) {\n this.activeTab = item;\n }\n }\n\n // TODO: Find better solution to handle home tab\n this.homeTab?.classList.remove('d-none');\n\n item.addEventListener('click', this.resetOverlay.bind(this));\n });\n }\n\n private appendAvatar() {\n const avatar = this.avatarItem;\n if (avatar) {\n avatar.style.marginBottom = '1rem';\n this.hostElement\n .querySelector('#avatar-tab-placeholder')\n ?.appendChild(avatar);\n }\n }\n\n private getAboutPopoverVerticalPosition() {\n const heightArrow = 12;\n const offsetArrow = 6;\n const rectAbout = this.aboutTab.getBoundingClientRect();\n const offset =\n window.innerHeight -\n (rectAbout.bottom - rectAbout.height / 2 + heightArrow / 2 + offsetArrow);\n return convertToRemString(offset);\n }\n\n private appendAboutNewsPopover() {\n if (!this.aboutPopover) {\n return;\n }\n\n this.aboutPopover.style.bottom = this.getAboutPopoverVerticalPosition();\n\n if (!this.popoverArea?.contains(this.aboutPopover)) {\n const showMore = () => {\n if (this.aboutPopover?.aboutItemLabel) {\n this.about.activeTabLabel = this.aboutPopover.aboutItemLabel;\n this.toggleAbout(true);\n }\n };\n\n this.aboutPopover.addEventListener('showMore', showMore.bind(this));\n document.body.appendChild(this.aboutPopover);\n }\n }\n\n private appendSettings() {\n if (this.settings) {\n this.overlayContainer.appendChild(this.settings);\n }\n }\n\n private appendAbout() {\n if (this.about) {\n this.overlayContainer.appendChild(this.about);\n }\n }\n\n private getMoreNotificationsCount(): number {\n const moreTabs = this.moreItemsDropdown?.querySelectorAll('.appended');\n let count = 0;\n moreTabs?.forEach((tab) => {\n if (tab['notifications']) {\n count += tab['notifications'];\n }\n });\n\n return count;\n }\n\n private getAvailableHeight() {\n const heightBurgerMenu = 60;\n const heightHome = 72;\n const heightAvatar = 56;\n const heightBottomTab = 36;\n\n let availableHeight = this.hostElement.clientHeight;\n\n availableHeight -= heightBurgerMenu;\n\n if (this.avatarItem) {\n availableHeight -= heightAvatar;\n }\n\n if (this.homeTab) {\n availableHeight -= heightHome;\n }\n\n if (this.showAbout) {\n availableHeight -= heightBottomTab;\n }\n\n if (this.showSettings) {\n availableHeight -= heightBottomTab;\n }\n\n if (this.menuBottomItems.length) {\n availableHeight -= this.menuBottomItems.length * heightBottomTab;\n }\n\n if (this.enableMapExpand) {\n availableHeight -= heightBottomTab;\n }\n\n // Subtract height of imprint and theme toggle tabs\n availableHeight -= 2 * heightBottomTab;\n\n // Subtract bottom margin of bottom tabs\n availableHeight -= 16;\n\n return availableHeight;\n }\n\n private getMaxTabCount() {\n const heightTab = 48;\n const availableHeight = this.getAvailableHeight();\n const visibleCount = Math.floor(availableHeight / heightTab);\n const menuItemCount = this.menuItems.length;\n\n if (menuItemCount === 1) {\n return 1;\n }\n\n if (menuItemCount < this.maxVisibleMenuItems) {\n if (visibleCount > menuItemCount) {\n return menuItemCount;\n }\n\n return Math.min(visibleCount - 2, menuItemCount);\n }\n\n if (menuItemCount === this.maxVisibleMenuItems) {\n if (visibleCount < this.maxVisibleMenuItems) {\n return visibleCount - 2;\n }\n\n if (visibleCount === this.maxVisibleMenuItems) {\n return this.maxVisibleMenuItems - 2;\n }\n\n return Math.min(visibleCount, this.maxVisibleMenuItems);\n }\n\n if (visibleCount === this.maxVisibleMenuItems) {\n return this.maxVisibleMenuItems - 2;\n }\n if (visibleCount >= this.maxVisibleMenuItems) {\n return this.maxVisibleMenuItems - 1;\n }\n\n return Math.min(visibleCount - 2, this.maxVisibleMenuItems);\n }\n\n /**\n * Toggle map sidebar expand\n * @param show\n */\n @Method()\n async toggleMapExpand(show?: boolean) {\n this.skipAllOverlayAnimations();\n\n if (show !== undefined) {\n this.mapExpand = show;\n } else {\n this.mapExpand = !this.mapExpand;\n }\n }\n\n private skipAllOverlayAnimations() {\n if (this.about) {\n this.skipOverlayAnimationFor(this.about);\n }\n if (this.settings) {\n this.skipOverlayAnimationFor(this.settings);\n }\n }\n\n private skipOverlayAnimationFor(element: HTMLElement) {\n const animateClass = 'animate__animated';\n\n element?.classList.remove(animateClass);\n\n setTimeout(() => {\n element?.classList.add(animateClass);\n }, 300);\n }\n\n /**\n * Toggle menu\n * @param show\n */\n @Method()\n async toggleMenu(show?: boolean) {\n this.skipAllOverlayAnimations();\n\n if (show !== undefined) {\n this.expand = show;\n } else {\n this.expand = !this.expand;\n }\n\n if (this.aboutPopover) {\n this.aboutPopover.expanded = this.expand;\n }\n\n this.expandChange.emit(this.expand);\n }\n\n /**\n * Toggle Settings tabs\n * @param show\n */\n @Method()\n async toggleSettings(show: boolean) {\n if (this.showAbout) {\n this.skipAllOverlayAnimations();\n } else {\n this.skipOverlayAnimationFor(this.about);\n }\n\n this.about?.classList.add('d-none');\n\n this.resetOverlay();\n this.showSettings = show;\n this.settings.show = this.showSettings;\n this.settings.classList.remove('d-none');\n this.overlayContainer.classList.remove('d-none');\n }\n\n /**\n * Toggle About tabs\n * @param show\n */\n @Method()\n async toggleAbout(show: boolean) {\n if (this.showSettings) {\n this.skipAllOverlayAnimations();\n } else {\n this.skipOverlayAnimationFor(this.settings);\n }\n\n this.settings?.classList.add('d-none');\n\n this.resetOverlay();\n this.showAbout = show;\n this.about.show = this.showAbout;\n this.about.classList.remove('d-none');\n this.overlayContainer.classList.remove('d-none');\n }\n\n private resetOverlay() {\n this.showSettings = false;\n this.showAbout = false;\n\n if (this.settings) {\n this.settings.show = this.showSettings;\n }\n\n if (this.about) {\n this.about.show = this.showAbout;\n }\n\n this.toggleMenu(false);\n }\n\n private showMoreButton() {\n const menuItemCount = this.menuItems.length;\n\n if (menuItemCount === 1) {\n return false;\n }\n\n if (menuItemCount < this.maxVisibleMenuItems) {\n return this.visibleMenuItems < menuItemCount;\n }\n\n if (menuItemCount > this.maxVisibleMenuItems) {\n return this.visibleMenuItems < this.maxVisibleMenuItems;\n }\n\n return this.visibleMenuItems <= this.maxVisibleMenuItems - 2;\n }\n\n private getCollapseText() {\n return this.mapExpand ? this.i18nCollapse : this.i18nExpand;\n }\n\n private getCollapseIcon() {\n return this.mapExpand ? 'double-chevron-left' : 'double-chevron-right';\n }\n\n private isMenuItemClicked(event: MouseEvent) {\n const path = event.composedPath();\n const menuItems = (path as HTMLElement[])\n .filter((element) => element.id !== 'ix-menu-more-tab')\n .filter((element) => {\n return element.tagName === 'IX-MENU-ITEM';\n });\n\n return menuItems.some((menu) => this.tabsContainer.contains(menu));\n }\n\n render() {\n return (\n <Host\n class={{\n expanded: this.expand,\n [`mode-${this.mode}`]: true,\n }}\n >\n <div\n class={{\n menu: true,\n expanded: this.expand,\n }}\n onClick={() => {\n this.resetActiveTab();\n }}\n >\n <ix-burger-menu\n onClick={async () => this.toggleMenu()}\n expanded={this.expand}\n class={{\n 'burger-menu': true,\n }}\n ></ix-burger-menu>\n <div id=\"avatar-tab-placeholder\"></div>\n <div\n id=\"menu-tabs\"\n style={{\n display: 'contents',\n }}\n onClick={(event) => {\n if (this.isMenuItemClicked(event)) {\n this.resetOverlay();\n }\n }}\n >\n <div class=\"tabs-top\"></div>\n <slot></slot>\n <div class=\"active-more-tab\">\n {this.activeTab ? (\n <ix-menu-item\n class=\"internal-tab\"\n active={true}\n tabIcon={this.activeTab.tabIcon}\n >\n {this.activeTab.innerText}\n </ix-menu-item>\n ) : null}\n </div>\n <ix-menu-item\n id=\"ix-menu-more-tab\"\n tabIcon=\"more-menu\"\n class={{\n 'internal-tab': true,\n }}\n style={{\n display: this.showMoreButton() ? 'block' : 'none',\n }}\n title=\"Show more\"\n notifications={this.countMoreNotifications}\n >\n {this.i18nMore}\n <ix-dropdown\n trigger={'ix-menu-more-tab'}\n positioningStrategy={'fixed'}\n placement={'right-start'}\n >\n {this.menuItems\n .filter(\n (elm: HTMLIxMenuItemElement, index) =>\n !this.showTab(index) &&\n !this.isMenuItemActive(elm) &&\n this.isVisible(elm)\n )\n .map((e: HTMLIxMenuItemElement) => {\n return (\n <ix-menu-item\n tabIcon={e.tabIcon}\n active={e.active}\n disabled={e.disabled}\n class=\"internal-tab appended\"\n onClick={() => {\n this.resetOverlay();\n e.dispatchEvent(new CustomEvent('click'));\n }}\n >\n {e.innerText}\n </ix-menu-item>\n );\n })}\n </ix-dropdown>\n </ix-menu-item>\n </div>\n <div class=\"bottom-tab-divider\"></div>\n {this.enableSettings && !this.isSettingsEmpty ? (\n <ix-menu-item\n id=\"settings\"\n class={{\n 'internal-tab': true,\n 'bottom-tab': true,\n active: this.showSettings,\n }}\n tabIcon=\"cogwheel\"\n onClick={async () => this.toggleSettings(!this.showSettings)}\n >\n {this.i18nSettings}\n </ix-menu-item>\n ) : null}\n <slot name=\"bottom\"></slot>\n <div id=\"popover-area\"></div>\n {this.about ? (\n <ix-menu-item\n id=\"aboutAndLegal\"\n class={{\n 'internal-tab': true,\n 'bottom-tab': true,\n active: this.showAbout,\n }}\n tabIcon=\"info\"\n onClick={async () => this.toggleAbout(!this.showAbout)}\n >\n {this.i18nLegal}\n </ix-menu-item>\n ) : null}\n {this.enableToggleTheme ? (\n <ix-menu-item\n id=\"toggleTheme\"\n onClick={() => themeSwitcher.toggleMode()}\n class=\"internal-tab bottom-tab\"\n tabIcon=\"bulb\"\n >\n {this.i18nToggleTheme}\n </ix-menu-item>\n ) : null}\n {this.enableMapExpand ? (\n <ix-menu-item\n id=\"menu-collapse\"\n onClick={() => this.mapExpandChange.emit(this.mapExpand)}\n class=\"internal-tab bottom-tab\"\n tabIcon={`${this.getCollapseIcon()}`}\n >\n {this.getCollapseText()}\n </ix-menu-item>\n ) : null}\n </div>\n <div\n class={{\n 'menu-overlay': true,\n expanded: this.expand,\n 'd-block': this.showAbout || this.showSettings,\n }}\n style={{\n opacity: this.showAbout || this.showSettings ? '1' : '0',\n }}\n ></div>\n <div class=\"menu-overlay-invisible\"></div>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -36,14 +36,14 @@
|
|
|
36
36
|
border: var(--theme-weak-bdr-1);
|
|
37
37
|
border-radius: 0.25rem;
|
|
38
38
|
padding: 1rem;
|
|
39
|
-
left: 4rem;
|
|
39
|
+
left: 3.4rem;
|
|
40
40
|
z-index: 10000;
|
|
41
41
|
transition: left var(--animate-duration);
|
|
42
42
|
margin-left: var(--margin) !important;
|
|
43
43
|
box-shadow: var(--theme-box-shadow-level-4);
|
|
44
44
|
}
|
|
45
45
|
:host.expanded {
|
|
46
|
-
left: calc(4rem +
|
|
46
|
+
left: calc(3.4rem + 12.7rem);
|
|
47
47
|
}
|
|
48
48
|
:host.show {
|
|
49
49
|
display: none;
|
|
@@ -25,7 +25,7 @@ export class MenuAvatar {
|
|
|
25
25
|
}
|
|
26
26
|
render() {
|
|
27
27
|
return (h(Host, null, h("li", { class: "nav-item top-item avatar no-hover", title: this.top, id: this.avatarElementId }, this.image ? (h("img", { src: this.image, class: "avatar-image" })) : (h(DefaultAvatar, { initials: this.initials })), h("div", { class: "avatar-name" }, h("span", { class: "text-default-single", title: this.top }, this.top), h("span", { class: "text-default-single", title: this.bottom }, this.bottom))), h("ix-dropdown", { trigger: this.avatarElementId, placement: 'right-start', offset: {
|
|
28
|
-
mainAxis:
|
|
28
|
+
mainAxis: 6,
|
|
29
29
|
} }, h("slot", null), h("ix-menu-avatar-item", { label: this.i18nLogout, icon: "log-out", onClick: (e) => {
|
|
30
30
|
this.logoutClick.emit(e);
|
|
31
31
|
} }))));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu-avatar.js","sourceRoot":"","sources":["../../../src/components/menu-avatar/menu-avatar.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,SAAS,aAAa,CAAC,KAA4B;EACjD,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;EAE3B,IAAI,QAAQ,EAAE;IACZ,OAAO,WAAK,KAAK,EAAE,iBAAiB,IAAG,QAAQ,CAAO,CAAC;GACxD;EAED,OAAO,CACL,WACE,KAAK,EAAE,cAAc,EACrB,KAAK,EAAC,4BAA4B,EAClC,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW;IAEnB,SAAG,IAAI,EAAC,MAAM,eAAW,SAAS;MAChC,YACE,EAAE,EAAC,wBAAwB,EAC3B,CAAC,EAAC,kIACiE,GACnE;MACF,YACE,EAAE,EAAC,oBAAoB,EACvB,CAAC,EAAC,2TAGgE,GAClE,CACA,CACA,CACP,CAAC;AACJ,CAAC;AAED,OAAO,EACL,SAAS,EACT,OAAO,EACP,KAAK,EAEL,CAAC,EACD,IAAI,EACJ,IAAI,GACL,MAAM,eAAe,CAAC;AAOvB,MAAM,OAAO,UAAU;;IAqCb,oBAAe,GAAG,mBAAmB,CAAC;;;;;sBAPzB,QAAQ;;EAS7B,MAAM;IACJ,OAAO,CACL,EAAC,IAAI;MACH,UACE,KAAK,EAAC,mCAAmC,EACzC,KAAK,EAAE,IAAI,CAAC,GAAG,EACf,EAAE,EAAE,IAAI,CAAC,eAAe;QAEvB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CACZ,WAAK,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAC,cAAc,GAAO,CAClD,CAAC,CAAC,CAAC,CACF,EAAC,aAAa,IAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAI,CAC3C;QACD,WAAK,KAAK,EAAC,aAAa;UACtB,YAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,IAC9C,IAAI,CAAC,GAAG,CACJ;UACP,YAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,IACjD,IAAI,CAAC,MAAM,CACP,CACH,CACH;MACL,mBACE,OAAO,EAAE,IAAI,CAAC,eAAe,EAC7B,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE;UACN,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"menu-avatar.js","sourceRoot":"","sources":["../../../src/components/menu-avatar/menu-avatar.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,SAAS,aAAa,CAAC,KAA4B;EACjD,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;EAE3B,IAAI,QAAQ,EAAE;IACZ,OAAO,WAAK,KAAK,EAAE,iBAAiB,IAAG,QAAQ,CAAO,CAAC;GACxD;EAED,OAAO,CACL,WACE,KAAK,EAAE,cAAc,EACrB,KAAK,EAAC,4BAA4B,EAClC,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW;IAEnB,SAAG,IAAI,EAAC,MAAM,eAAW,SAAS;MAChC,YACE,EAAE,EAAC,wBAAwB,EAC3B,CAAC,EAAC,kIACiE,GACnE;MACF,YACE,EAAE,EAAC,oBAAoB,EACvB,CAAC,EAAC,2TAGgE,GAClE,CACA,CACA,CACP,CAAC;AACJ,CAAC;AAED,OAAO,EACL,SAAS,EACT,OAAO,EACP,KAAK,EAEL,CAAC,EACD,IAAI,EACJ,IAAI,GACL,MAAM,eAAe,CAAC;AAOvB,MAAM,OAAO,UAAU;;IAqCb,oBAAe,GAAG,mBAAmB,CAAC;;;;;sBAPzB,QAAQ;;EAS7B,MAAM;IACJ,OAAO,CACL,EAAC,IAAI;MACH,UACE,KAAK,EAAC,mCAAmC,EACzC,KAAK,EAAE,IAAI,CAAC,GAAG,EACf,EAAE,EAAE,IAAI,CAAC,eAAe;QAEvB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CACZ,WAAK,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAC,cAAc,GAAO,CAClD,CAAC,CAAC,CAAC,CACF,EAAC,aAAa,IAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAI,CAC3C;QACD,WAAK,KAAK,EAAC,aAAa;UACtB,YAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,IAC9C,IAAI,CAAC,GAAG,CACJ;UACP,YAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,IACjD,IAAI,CAAC,MAAM,CACP,CACH,CACH;MACL,mBACE,OAAO,EAAE,IAAI,CAAC,eAAe,EAC7B,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE;UACN,QAAQ,EAAE,CAAC;SACZ;QAED,eAAa;QACb,2BACE,KAAK,EAAE,IAAI,CAAC,UAAU,EACtB,IAAI,EAAC,SAAS,EACd,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;YACb,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;UAC3B,CAAC,GACoB,CACX,CACT,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","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\nfunction DefaultAvatar(props: { initials?: string }) {\n const { initials } = props;\n\n if (initials) {\n return <div class={'avatar-initials'}>{initials}</div>;\n }\n\n return (\n <svg\n class={'avatar-image'}\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"32\"\n height=\"32\"\n viewBox=\"0 0 32 32\"\n >\n <g fill=\"none\" fill-rule=\"evenodd\">\n <path\n id=\"avatar-path-background\"\n d=\"M16 0C7.163 0 0 7.163 0 16s7.163 16 16 16 16-7.163\n 16-16c0-4.243-1.686-8.313-4.686-11.314C24.314 1.686 20.244 0 16 0z\"\n />\n <path\n id=\"avatar-path-person\"\n d=\"M17.897 17.91c3.8-.018 7.358 1.875 9.485 5.046-2.417 3.999-6.734 6.434-11.382\n 6.42-4.648.014-8.965-2.421-11.382-6.42 2.127-3.171 5.685-5.064\n 9.485-5.045h3.794zM15.821 2.129c3.682 0 6.667 2.984 6.667 6.666 0 3.682-2.985\n 6.667-6.667 6.667s-6.667-2.985-6.667-6.667 2.985-6.666 6.667-6.666z\"\n />\n </g>\n </svg>\n );\n}\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n} from '@stencil/core';\n\n@Component({\n tag: 'ix-menu-avatar',\n styleUrl: 'menu-avatar.scss',\n scoped: 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 = 'Logout';\n\n /**\n * Logout click\n */\n @Event() logoutClick: EventEmitter;\n\n private avatarElementId = 'ix-menu-avatar-id';\n\n render() {\n return (\n <Host>\n <li\n class=\"nav-item top-item avatar no-hover\"\n title={this.top}\n id={this.avatarElementId}\n >\n {this.image ? (\n <img src={this.image} class=\"avatar-image\"></img>\n ) : (\n <DefaultAvatar initials={this.initials} />\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 </li>\n <ix-dropdown\n trigger={this.avatarElementId}\n placement={'right-start'}\n offset={{\n mainAxis: 6,\n }}\n >\n <slot></slot>\n <ix-menu-avatar-item\n label={this.i18nLogout}\n icon=\"log-out\"\n onClick={(e) => {\n this.logoutClick.emit(e);\n }}\n ></ix-menu-avatar-item>\n </ix-dropdown>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -38,12 +38,9 @@
|
|
|
38
38
|
position: relative;
|
|
39
39
|
display: block;
|
|
40
40
|
cursor: pointer;
|
|
41
|
-
|
|
42
|
-
:
|
|
43
|
-
|
|
44
|
-
}
|
|
45
|
-
:host:not(.disabled):not(:disabled).active, :host:not(.disabled):not(:disabled):active {
|
|
46
|
-
background-color: var(--theme-ghost--background--active);
|
|
41
|
+
height: 3rem;
|
|
42
|
+
min-height: 3rem;
|
|
43
|
+
max-height: 3rem;
|
|
47
44
|
}
|
|
48
45
|
:host .tab {
|
|
49
46
|
display: flex;
|
|
@@ -51,7 +48,13 @@
|
|
|
51
48
|
align-items: center;
|
|
52
49
|
height: 3rem;
|
|
53
50
|
z-index: 500;
|
|
54
|
-
padding-left:
|
|
51
|
+
padding-left: 0.875rem;
|
|
52
|
+
}
|
|
53
|
+
:host .tab:not(.disabled):not(:disabled).hover, :host .tab:not(.disabled):not(:disabled):hover {
|
|
54
|
+
background-color: var(--theme-ghost--background--hover);
|
|
55
|
+
}
|
|
56
|
+
:host .tab:not(.disabled):not(:disabled).active, :host .tab:not(.disabled):not(:disabled):active {
|
|
57
|
+
background-color: var(--theme-ghost--background--active);
|
|
55
58
|
}
|
|
56
59
|
:host i.glyph {
|
|
57
60
|
color: var(--theme-nav-item-primary-icon--color);
|
|
@@ -69,14 +72,14 @@
|
|
|
69
72
|
:host .notification {
|
|
70
73
|
display: inline-flex;
|
|
71
74
|
position: absolute;
|
|
72
|
-
top:
|
|
73
|
-
|
|
75
|
+
top: 0.25rem;
|
|
76
|
+
left: 1.75rem;
|
|
74
77
|
}
|
|
75
78
|
:host .notification .pill {
|
|
76
79
|
display: inline-flex;
|
|
77
80
|
justify-content: center;
|
|
78
81
|
align-items: center;
|
|
79
|
-
height:
|
|
82
|
+
height: 0.5rem;
|
|
80
83
|
min-width: 1rem;
|
|
81
84
|
position: relative;
|
|
82
85
|
border-radius: 6.25rem;
|
|
@@ -99,10 +102,13 @@
|
|
|
99
102
|
-moz-user-select: none;
|
|
100
103
|
user-select: none;
|
|
101
104
|
}
|
|
102
|
-
|
|
105
|
+
|
|
106
|
+
:host(.active) .tab,
|
|
107
|
+
:host(.selected) .tab {
|
|
103
108
|
background-color: var(--theme-nav-item-primary--background--selected);
|
|
104
109
|
}
|
|
105
|
-
:host.active .tab::before,
|
|
110
|
+
:host(.active) .tab::before,
|
|
111
|
+
:host(.selected) .tab::before {
|
|
106
112
|
content: "";
|
|
107
113
|
background-color: var(--theme-nav-item-primary--border-color--selected);
|
|
108
114
|
height: 3rem;
|
|
@@ -110,39 +116,57 @@
|
|
|
110
116
|
left: 0;
|
|
111
117
|
position: absolute;
|
|
112
118
|
}
|
|
113
|
-
:host.active .tab > .glyph,
|
|
119
|
+
:host(.active) .tab > .glyph,
|
|
120
|
+
:host(.selected) .tab > .glyph {
|
|
114
121
|
color: var(--theme-nav-item-primary-icon--color--selected);
|
|
115
122
|
}
|
|
116
|
-
|
|
123
|
+
|
|
124
|
+
:host(.disabled) {
|
|
117
125
|
color: var(--theme-color-weak-text);
|
|
118
126
|
pointer-events: none;
|
|
119
127
|
cursor: default;
|
|
120
128
|
}
|
|
121
|
-
:host.disabled .tab > .glyph {
|
|
129
|
+
:host(.disabled) .tab > .glyph {
|
|
122
130
|
color: var(--theme-color-weak-text);
|
|
123
131
|
}
|
|
124
|
-
:host.disabled .tab-text {
|
|
132
|
+
:host(.disabled) .tab-text {
|
|
125
133
|
color: var(--theme-color-weak-text);
|
|
126
134
|
}
|
|
127
|
-
|
|
135
|
+
|
|
136
|
+
:host(.home-tab),
|
|
137
|
+
:host([slot=home]) {
|
|
128
138
|
margin-bottom: 1.5rem;
|
|
129
139
|
}
|
|
130
|
-
|
|
140
|
+
|
|
141
|
+
:host(.bottom-tab),
|
|
142
|
+
:host([slot=bottom]) {
|
|
143
|
+
min-height: 2.25rem;
|
|
131
144
|
height: 2.25rem;
|
|
145
|
+
max-height: 2.25rem;
|
|
132
146
|
}
|
|
133
|
-
:host.bottom-tab .tab,
|
|
147
|
+
:host(.bottom-tab) .tab,
|
|
148
|
+
:host([slot=bottom]) .tab {
|
|
134
149
|
height: 2.25rem;
|
|
135
150
|
}
|
|
136
|
-
:host.bottom-tab .tab::before,
|
|
151
|
+
:host(.bottom-tab) .tab::before,
|
|
152
|
+
:host([slot=bottom]) .tab::before {
|
|
137
153
|
height: 2.25rem;
|
|
138
154
|
background-color: transparent;
|
|
139
155
|
}
|
|
140
|
-
:host.bottom-tab.active
|
|
156
|
+
:host(.bottom-tab).active:hover, :host(.bottom-tab).selected:hover,
|
|
157
|
+
:host([slot=bottom]).active:hover,
|
|
158
|
+
:host([slot=bottom]).selected:hover {
|
|
141
159
|
background-color: var(--theme-nav-item-secondary--background--selected);
|
|
142
160
|
}
|
|
143
|
-
:host.bottom-tab.active:
|
|
161
|
+
:host(.bottom-tab).active:active, :host(.bottom-tab).selected:active,
|
|
162
|
+
:host([slot=bottom]).active:active,
|
|
163
|
+
:host([slot=bottom]).selected:active {
|
|
144
164
|
background-color: var(--theme-nav-item-secondary--background--selected);
|
|
145
165
|
}
|
|
146
|
-
|
|
166
|
+
|
|
167
|
+
:host(.bottom-tab.active) .tab,
|
|
168
|
+
:host(.bottom-tab.selected) .tab,
|
|
169
|
+
:host(.active[slot=bottom]) .tab,
|
|
170
|
+
:host(.selected[slot=bottom]) .tab {
|
|
147
171
|
background-color: var(--theme-nav-item-secondary--background--selected);
|
|
148
172
|
}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* LICENSE file in the root directory of this source tree.
|
|
8
8
|
*/
|
|
9
9
|
import { h, Host } from '@stencil/core';
|
|
10
|
+
import { createMutationObserver } from '../utils/mutation-observer';
|
|
10
11
|
export class MenuItem {
|
|
11
12
|
constructor() {
|
|
12
13
|
this.home = false;
|
|
@@ -17,14 +18,22 @@ export class MenuItem {
|
|
|
17
18
|
this.disabled = undefined;
|
|
18
19
|
this.title = undefined;
|
|
19
20
|
}
|
|
20
|
-
|
|
21
|
-
|
|
21
|
+
componentWillRender() {
|
|
22
|
+
this.title = this.hostElement.innerText;
|
|
22
23
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
connectedCallback() {
|
|
25
|
+
this.observer = createMutationObserver(() => {
|
|
26
|
+
this.title = this.hostElement.innerText;
|
|
27
|
+
});
|
|
28
|
+
this.observer.observe(this.hostElement, {
|
|
29
|
+
subtree: true,
|
|
30
|
+
childList: true,
|
|
31
|
+
characterData: true,
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
disconnectedCallback() {
|
|
35
|
+
if (this.observer) {
|
|
36
|
+
this.observer.disconnect();
|
|
28
37
|
}
|
|
29
38
|
}
|
|
30
39
|
render() {
|
|
@@ -33,10 +42,10 @@ export class MenuItem {
|
|
|
33
42
|
'home-tab': this.home,
|
|
34
43
|
'bottom-tab': this.bottom,
|
|
35
44
|
active: this.active,
|
|
36
|
-
} }, h("li", { class: "tab", title: this.title }, h("
|
|
45
|
+
} }, h("li", { class: "tab", title: this.title }, h("ix-icon", { name: this.tabIcon }), h("div", { class: "notification" }, this.notifications ? (h("div", { class: "pill" }, this.notifications)) : null), h("span", { class: "tab-text text-default" }, h("slot", null)))));
|
|
37
46
|
}
|
|
38
47
|
static get is() { return "ix-menu-item"; }
|
|
39
|
-
static get encapsulation() { return "
|
|
48
|
+
static get encapsulation() { return "shadow"; }
|
|
40
49
|
static get originalStyleUrls() {
|
|
41
50
|
return {
|
|
42
51
|
"$": ["menu-item.scss"]
|
|
@@ -118,7 +127,7 @@ export class MenuItem {
|
|
|
118
127
|
"optional": false,
|
|
119
128
|
"docs": {
|
|
120
129
|
"tags": [],
|
|
121
|
-
"text": "Show notification
|
|
130
|
+
"text": "Show notification count on tab"
|
|
122
131
|
},
|
|
123
132
|
"attribute": "notifications",
|
|
124
133
|
"reflect": false
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu-item.js","sourceRoot":"","sources":["../../../src/components/menu-item/menu-item.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"menu-item.js","sourceRoot":"","sources":["../../../src/components/menu-item/menu-item.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAOpE,MAAM,OAAO,QAAQ;;gBAIJ,KAAK;kBASH,KAAK;mBAKJ,UAAU;;;;;;EAuB5B,mBAAmB;IACjB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;EAC1C,CAAC;EAED,iBAAiB;IACf,IAAI,CAAC,QAAQ,GAAG,sBAAsB,CAAC,GAAG,EAAE;MAC1C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;MACtC,OAAO,EAAE,IAAI;MACb,SAAS,EAAE,IAAI;MACf,aAAa,EAAE,IAAI;KACpB,CAAC,CAAC;EACL,CAAC;EAED,oBAAoB;IAClB,IAAI,IAAI,CAAC,QAAQ,EAAE;MACjB,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;KAC5B;EACH,CAAC;EAED,MAAM;IACJ,OAAO,CACL,EAAC,IAAI,IACH,KAAK,EAAE;QACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,UAAU,EAAE,IAAI,CAAC,IAAI;QACrB,YAAY,EAAE,IAAI,CAAC,MAAM;QACzB,MAAM,EAAE,IAAI,CAAC,MAAM;OACpB;MAED,UAAI,KAAK,EAAC,KAAK,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK;QAC/B,eAAS,IAAI,EAAE,IAAI,CAAC,OAAO,GAAY;QACvC,WAAK,KAAK,EAAC,cAAc,IACtB,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CACpB,WAAK,KAAK,EAAC,MAAM,IAAE,IAAI,CAAC,aAAa,CAAO,CAC7C,CAAC,CAAC,CAAC,IAAI,CACJ;QACN,YAAM,KAAK,EAAC,uBAAuB;UACjC,eAAa,CACR,CACJ,CACA,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, Element, h, Host, Prop, State } from '@stencil/core';\nimport { createMutationObserver } from '../utils/mutation-observer';\n\n@Component({\n tag: 'ix-menu-item',\n styleUrl: 'menu-item.scss',\n shadow: true,\n})\nexport class MenuItem {\n /**\n * Move the Tab to a top position.\n */\n @Prop() home = false;\n\n /**\n * Caution: this is no longer working. Please use slot=\"bottom\" instead.\n *\n * Place tab on bottom\n *\n * @deprecated Will be removed in 2.0.0. Replaced by slot based implementation\n */\n @Prop() bottom = false;\n\n /**\n * Icon name from @siemens/ix-icons\n */\n @Prop() tabIcon = 'document';\n\n /**\n * Show notification count on tab\n */\n @Prop() notifications: number;\n\n /**\n * State to display active\n */\n @Prop() active: boolean;\n\n /**\n * Disable tab and remove event handlers\n */\n @Prop() disabled: boolean;\n\n @Element() hostElement: HTMLIxMenuItemElement;\n\n @State() title: string;\n\n private observer: MutationObserver;\n\n componentWillRender() {\n this.title = this.hostElement.innerText;\n }\n\n connectedCallback() {\n this.observer = createMutationObserver(() => {\n this.title = this.hostElement.innerText;\n });\n\n this.observer.observe(this.hostElement, {\n subtree: true,\n childList: true,\n characterData: true,\n });\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n }\n\n render() {\n return (\n <Host\n class={{\n disabled: this.disabled,\n 'home-tab': this.home,\n 'bottom-tab': this.bottom,\n active: this.active,\n }}\n >\n <li class=\"tab\" title={this.title}>\n <ix-icon name={this.tabIcon}></ix-icon>\n <div class=\"notification\">\n {this.notifications ? (\n <div class=\"pill\">{this.notifications}</div>\n ) : null}\n </div>\n <span class=\"tab-text text-default\">\n <slot></slot>\n </span>\n </li>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -26,7 +26,20 @@
|
|
|
26
26
|
* This source code is licensed under the MIT license found in the
|
|
27
27
|
* LICENSE file in the root directory of this source tree.
|
|
28
28
|
*/
|
|
29
|
-
|
|
29
|
+
/*
|
|
30
|
+
* SPDX-FileCopyrightText: 2023 Siemens AG
|
|
31
|
+
*
|
|
32
|
+
* SPDX-License-Identifier: MIT
|
|
33
|
+
*
|
|
34
|
+
* This source code is licensed under the MIT license found in the
|
|
35
|
+
* LICENSE file in the root directory of this source tree.
|
|
36
|
+
*/
|
|
37
|
+
:host *,
|
|
38
|
+
:host *::after,
|
|
39
|
+
:host *::before {
|
|
40
|
+
box-sizing: border-box;
|
|
41
|
+
}
|
|
42
|
+
:host .message-container {
|
|
30
43
|
display: flex;
|
|
31
44
|
flex-direction: row;
|
|
32
45
|
align-items: flex-start;
|
|
@@ -38,20 +51,16 @@
|
|
|
38
51
|
border-radius: var(--theme-message-bar--border-radius);
|
|
39
52
|
background-color: var(--theme-messagebar--background);
|
|
40
53
|
}
|
|
41
|
-
|
|
42
|
-
.danger {
|
|
54
|
+
:host .danger {
|
|
43
55
|
border: solid var(--theme-message-bar--border-thickness) var(--theme-color-alarm);
|
|
44
56
|
}
|
|
45
|
-
|
|
46
|
-
.warning {
|
|
57
|
+
:host .warning {
|
|
47
58
|
border: solid var(--theme-message-bar--border-thickness) var(--theme-color-warning);
|
|
48
59
|
}
|
|
49
|
-
|
|
50
|
-
.info {
|
|
60
|
+
:host .info {
|
|
51
61
|
border: solid var(--theme-message-bar--border-thickness) var(--theme-color-info);
|
|
52
62
|
}
|
|
53
|
-
|
|
54
|
-
.message-content {
|
|
63
|
+
:host .message-content {
|
|
55
64
|
overflow: hidden;
|
|
56
65
|
text-overflow: ellipsis;
|
|
57
66
|
white-space: nowrap;
|
|
@@ -62,7 +71,6 @@
|
|
|
62
71
|
font-weight: bold;
|
|
63
72
|
white-space: normal;
|
|
64
73
|
}
|
|
65
|
-
|
|
66
|
-
ix-icon {
|
|
74
|
+
:host ix-icon {
|
|
67
75
|
margin-top: 0.25rem;
|
|
68
76
|
}
|
|
@@ -47,7 +47,7 @@ export class MessageBar {
|
|
|
47
47
|
}, "data-testid": "close-btn" })) : (''))));
|
|
48
48
|
}
|
|
49
49
|
static get is() { return "ix-message-bar"; }
|
|
50
|
-
static get encapsulation() { return "
|
|
50
|
+
static get encapsulation() { return "shadow"; }
|
|
51
51
|
static get originalStyleUrls() {
|
|
52
52
|
return {
|
|
53
53
|
"$": ["message-bar.scss"]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-bar.js","sourceRoot":"","sources":["../../../src/components/message-bar/message-bar.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,SAAS,EACT,KAAK,EAEL,CAAC,EACD,IAAI,EACJ,IAAI,EACJ,KAAK,GACN,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,MAAM,SAAS,CAAC;AAQ5B,MAAM,OAAO,UAAU;;gBAIyB,MAAM;uBAK9B,IAAI;;;;EAe1B,mBAAmB;IACjB,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;MAC1B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;MACpB,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC;KAC5B;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;MACxB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;MACnB,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC;KAC3B;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;MAC3B,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;MACtB,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC;KAC9B;EACH,CAAC;EAEO,UAAU,CAAC,EAAe;IAChC,KAAK,CAAC;MACJ,OAAO,EAAE,EAAE;MACX,QAAQ,EAAE,UAAU,CAAC,QAAQ;MAC7B,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;MACf,MAAM,EAAE,aAAa;MACrB,QAAQ,EAAE,GAAG,EAAE;QACb,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;MAC7B,CAAC;KACF,CAAC,CAAC;IACH,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;EAC3B,CAAC;EAED,MAAM;IACJ,OAAO,CACL,EAAC,IAAI;MACH,WACE,KAAK,EAAE,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EACvD,IAAI,EAAC,OAAO,EACZ,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,EAAiB,CAAC;QAElD,eAAS,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,GAAY;QACvD,WAAK,KAAK,EAAC,iBAAiB;UAC1B,eAAa,CACT;QACL,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAClB,sBACE,IAAI,EAAC,OAAO,EACZ,IAAI,EAAC,IAAI,EACT,KAAK,EAAE,IAAI,EACX,OAAO,EAAE,GAAG,EAAE;YACZ,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;UACnC,CAAC,iBACW,WAAW,GACP,CACnB,CAAC,CAAC,CAAC,CACF,EAAE,CACH,CACG,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA9DuB,mBAAQ,GAAG,GAAG,CAAC","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n State,\n} from '@stencil/core';\nimport anime from 'animejs';\nimport { NotificationColor } from '../utils/notification-color';\n\n@Component({\n tag: 'ix-message-bar',\n styleUrl: 'message-bar.scss',\n
|
|
1
|
+
{"version":3,"file":"message-bar.js","sourceRoot":"","sources":["../../../src/components/message-bar/message-bar.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,SAAS,EACT,KAAK,EAEL,CAAC,EACD,IAAI,EACJ,IAAI,EACJ,KAAK,GACN,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,MAAM,SAAS,CAAC;AAQ5B,MAAM,OAAO,UAAU;;gBAIyB,MAAM;uBAK9B,IAAI;;;;EAe1B,mBAAmB;IACjB,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;MAC1B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;MACpB,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC;KAC5B;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;MACxB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;MACnB,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC;KAC3B;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;MAC3B,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;MACtB,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC;KAC9B;EACH,CAAC;EAEO,UAAU,CAAC,EAAe;IAChC,KAAK,CAAC;MACJ,OAAO,EAAE,EAAE;MACX,QAAQ,EAAE,UAAU,CAAC,QAAQ;MAC7B,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;MACf,MAAM,EAAE,aAAa;MACrB,QAAQ,EAAE,GAAG,EAAE;QACb,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;MAC7B,CAAC;KACF,CAAC,CAAC;IACH,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;EAC3B,CAAC;EAED,MAAM;IACJ,OAAO,CACL,EAAC,IAAI;MACH,WACE,KAAK,EAAE,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EACvD,IAAI,EAAC,OAAO,EACZ,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,EAAiB,CAAC;QAElD,eAAS,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,GAAY;QACvD,WAAK,KAAK,EAAC,iBAAiB;UAC1B,eAAa,CACT;QACL,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAClB,sBACE,IAAI,EAAC,OAAO,EACZ,IAAI,EAAC,IAAI,EACT,KAAK,EAAE,IAAI,EACX,OAAO,EAAE,GAAG,EAAE;YACZ,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;UACnC,CAAC,iBACW,WAAW,GACP,CACnB,CAAC,CAAC,CAAC,CACF,EAAE,CACH,CACG,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA9DuB,mBAAQ,GAAG,GAAG,CAAC","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n State,\n} from '@stencil/core';\nimport anime from 'animejs';\nimport { NotificationColor } from '../utils/notification-color';\n\n@Component({\n tag: 'ix-message-bar',\n styleUrl: 'message-bar.scss',\n shadow: true,\n})\nexport class MessageBar {\n /**\n * Specifies the type of the alert.\n */\n @Prop() type: 'danger' | 'warning' | 'info' = 'info';\n\n /**\n * If true, close button is enabled and alert can be dismissed by the user\n */\n @Prop() dismissible = true;\n\n /**\n * An event emitted when the close button is clicked\n */\n @Event() closedChange: EventEmitter;\n\n @State() icon: 'error' | 'warning' | 'info';\n\n @State() color: NotificationColor;\n\n private static readonly duration = 300;\n\n private divElement?: HTMLElement;\n\n componentWillRender() {\n if (this.type === 'danger') {\n this.icon = 'error';\n this.color = 'color-alarm';\n }\n\n if (this.type === 'info') {\n this.icon = 'info';\n this.color = 'color-info';\n }\n\n if (this.type === 'warning') {\n this.icon = 'warning';\n this.color = 'color-warning';\n }\n }\n\n private closeAlert(el: HTMLElement) {\n anime({\n targets: el,\n duration: MessageBar.duration,\n opacity: [1, 0],\n easing: 'easeOutSine',\n complete: () => {\n el.classList.add('d-none');\n },\n });\n this.closedChange.emit();\n }\n\n render() {\n return (\n <Host>\n <div\n class={{ 'message-container': true, [this.type]: true }}\n role=\"alert\"\n ref={(el) => (this.divElement = el as HTMLElement)}\n >\n <ix-icon color={this.color} name={this.icon}></ix-icon>\n <div class=\"message-content\">\n <slot></slot>\n </div>\n {this.dismissible ? (\n <ix-icon-button\n icon=\"close\"\n size=\"24\"\n ghost={true}\n onClick={() => {\n this.closeAlert(this.divElement);\n }}\n data-testid=\"close-btn\"\n ></ix-icon-button>\n ) : (\n ''\n )}\n </div>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -56,6 +56,7 @@
|
|
|
56
56
|
border: var(--modal--border-thickness) solid var(--theme-modal--border-color);
|
|
57
57
|
padding: 1.5rem;
|
|
58
58
|
max-height: 100vh;
|
|
59
|
+
border-radius: var(--theme-default-border-radius);
|
|
59
60
|
}
|
|
60
61
|
:host .modal .modal-content .state-icon-container {
|
|
61
62
|
-webkit-margin-end: 1rem;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"my-component.js","sourceRoot":"","sources":["../../../src/components/my-component/my-component.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"my-component.js","sourceRoot":"","sources":["../../../src/components/my-component/my-component.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAOnD,MAAM,OAAO,WAAW;EACtB,MAAM;IACJ,OAAO,EAAC,IAAI,OAAQ,CAAC;EACvB,CAAC;;;;;;;;;CACF","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host } from '@stencil/core';\n\n@Component({\n tag: 'my-component',\n styleUrl: 'my-component.scss',\n scoped: true,\n})\nexport class MyComponent {\n render() {\n return <Host></Host>;\n }\n}\n"]}
|