@ukic/canary-web-components 3.0.0-canary.10 → 3.0.0-canary.12
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/core.cjs.js +1 -1
- package/dist/cjs/ic-back-to-top.cjs.entry.js +3 -1
- package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +22 -21
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +4 -3
- package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card-vertical.cjs.entry.js +1 -1
- package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +1 -1
- package/dist/cjs/ic-data-table-title-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-table.cjs.entry.js +14 -13
- package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-date-input.cjs.entry.js +6 -0
- package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-dialog.cjs.entry.js +20 -5
- package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-empty-state_2.cjs.entry.js +17 -7
- package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-link.cjs.entry.js +1 -1
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination_4.cjs.entry.js +1 -1
- package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +2 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js +1 -2
- package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +5 -6
- package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button.cjs.entry.js +1 -1
- package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tree-item.cjs.entry.js +41 -16
- package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tree-view.cjs.entry.js +7 -9
- package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/ic-data-table/ic-data-table.css +19 -5
- package/dist/collection/components/ic-data-table/ic-data-table.js +15 -14
- package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
- package/dist/collection/components/ic-data-table/ic-data-table.types.js.map +1 -1
- package/dist/collection/components/ic-data-table/story-data.js +190 -0
- package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
- package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js +0 -27
- package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js.map +1 -1
- package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.css +6 -6
- package/dist/collection/components/ic-date-input/ic-date-input.js +6 -0
- package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +17 -7
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
- package/dist/collection/components/ic-tree-item/ic-tree-item.js +41 -16
- package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
- package/dist/collection/components/ic-tree-view/ic-tree-view.js +7 -9
- package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
- package/dist/components/ic-back-to-top.js +4 -1
- package/dist/components/ic-back-to-top.js.map +1 -1
- package/dist/components/ic-breadcrumb-group.js +22 -21
- package/dist/components/ic-breadcrumb-group.js.map +1 -1
- package/dist/components/ic-breadcrumb2.js +4 -3
- package/dist/components/ic-breadcrumb2.js.map +1 -1
- package/dist/components/ic-card-vertical.js +1 -1
- package/dist/components/ic-card-vertical.js.map +1 -1
- package/dist/components/ic-checkbox.js +1 -1
- package/dist/components/ic-checkbox.js.map +1 -1
- package/dist/components/ic-data-table-title-bar.js +1 -1
- package/dist/components/ic-data-table-title-bar.js.map +1 -1
- package/dist/components/ic-data-table.js +14 -13
- package/dist/components/ic-data-table.js.map +1 -1
- package/dist/components/ic-date-input2.js +6 -0
- package/dist/components/ic-date-input2.js.map +1 -1
- package/dist/components/ic-dialog.js +21 -6
- package/dist/components/ic-dialog.js.map +1 -1
- package/dist/components/ic-footer-link.js +1 -1
- package/dist/components/ic-footer-link.js.map +1 -1
- package/dist/components/ic-link2.js +1 -1
- package/dist/components/ic-link2.js.map +1 -1
- package/dist/components/ic-pagination-bar2.js +17 -7
- package/dist/components/ic-pagination-bar2.js.map +1 -1
- package/dist/components/ic-radio-group.js +2 -1
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-radio-option.js +1 -1
- package/dist/components/ic-radio-option.js.map +1 -1
- package/dist/components/ic-select2.js +1 -1
- package/dist/components/ic-select2.js.map +1 -1
- package/dist/components/ic-tab-context.js +1 -2
- package/dist/components/ic-tab-context.js.map +1 -1
- package/dist/components/ic-tab-panel.js +6 -6
- package/dist/components/ic-tab-panel.js.map +1 -1
- package/dist/components/ic-toggle-button.js +1 -1
- package/dist/components/ic-toggle-button.js.map +1 -1
- package/dist/components/ic-top-navigation.js +1 -1
- package/dist/components/ic-top-navigation.js.map +1 -1
- package/dist/components/ic-tree-item.js +41 -16
- package/dist/components/ic-tree-item.js.map +1 -1
- package/dist/components/ic-tree-view.js +7 -9
- package/dist/components/ic-tree-view.js.map +1 -1
- package/dist/core/core.css +13 -7
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/{p-fc155ae2.entry.js → p-01e4affd.entry.js} +2 -2
- package/dist/core/{p-fc155ae2.entry.js.map → p-01e4affd.entry.js.map} +1 -1
- package/dist/core/p-04bd65fb.entry.js +2 -0
- package/dist/core/p-04bd65fb.entry.js.map +1 -0
- package/dist/core/{p-2169e75b.entry.js → p-052a9f31.entry.js} +2 -2
- package/dist/core/{p-b85466a7.entry.js → p-059c08a0.entry.js} +2 -2
- package/dist/core/{p-88913402.entry.js → p-07784e04.entry.js} +2 -2
- package/dist/core/p-07784e04.entry.js.map +1 -0
- package/dist/core/p-0c225c1a.entry.js +2 -0
- package/dist/core/p-0c225c1a.entry.js.map +1 -0
- package/dist/core/{p-4347f05c.entry.js → p-1684a003.entry.js} +2 -2
- package/dist/core/{p-6ac8e09b.entry.js → p-1bf881bb.entry.js} +2 -2
- package/dist/core/{p-8ebd64ae.entry.js → p-1eb21184.entry.js} +2 -2
- package/dist/core/{p-0054bdc2.entry.js → p-2039e996.entry.js} +2 -2
- package/dist/core/{p-01a23e24.entry.js → p-20c780cb.entry.js} +2 -2
- package/dist/core/{p-be1ec9aa.entry.js → p-21c90000.entry.js} +2 -2
- package/dist/core/p-21c90000.entry.js.map +1 -0
- package/dist/core/{p-4f96bec1.entry.js → p-2376e171.entry.js} +2 -2
- package/dist/core/p-23f62fca.entry.js +2 -0
- package/dist/core/p-23f62fca.entry.js.map +1 -0
- package/dist/core/{p-71496305.entry.js → p-28c8d6e3.entry.js} +2 -2
- package/dist/core/p-2c59f79e.entry.js +2 -0
- package/dist/core/p-2c59f79e.entry.js.map +1 -0
- package/dist/core/{p-0c5d45e1.entry.js → p-2e261288.entry.js} +2 -2
- package/dist/core/p-34e05e3f.entry.js +2 -0
- package/dist/core/p-34e05e3f.entry.js.map +1 -0
- package/dist/core/{p-9a392c41.entry.js → p-36242f26.entry.js} +2 -2
- package/dist/core/{p-f3d2af04.entry.js → p-37cced7a.entry.js} +2 -2
- package/dist/core/{p-ce923b92.entry.js → p-3c17ca15.entry.js} +2 -2
- package/dist/core/p-41e48902.entry.js +2 -0
- package/dist/core/p-41e48902.entry.js.map +1 -0
- package/dist/core/{p-47a1ce8d.entry.js → p-435d9ce2.entry.js} +2 -2
- package/dist/core/p-47e0072d.entry.js +2 -0
- package/dist/core/p-47e0072d.entry.js.map +1 -0
- package/dist/core/{p-ace8126b.entry.js → p-49fbe074.entry.js} +2 -2
- package/dist/core/{p-78ed3070.entry.js → p-4ba91306.entry.js} +2 -2
- package/dist/core/{p-32726b89.entry.js → p-50e24896.entry.js} +2 -2
- package/dist/core/p-534f7f0d.entry.js +2 -0
- package/dist/core/p-534f7f0d.entry.js.map +1 -0
- package/dist/core/{p-bd4401d5.entry.js → p-542ffaf4.entry.js} +2 -2
- package/dist/core/{p-8e56516a.entry.js → p-555dd292.entry.js} +2 -2
- package/dist/core/p-596ad611.entry.js +2 -0
- package/dist/core/p-596ad611.entry.js.map +1 -0
- package/dist/core/p-5d03b04e.entry.js +2 -0
- package/dist/core/p-5d03b04e.entry.js.map +1 -0
- package/dist/core/{p-54dc696e.entry.js → p-5e616d85.entry.js} +2 -2
- package/dist/core/p-63f90f39.entry.js +2 -0
- package/dist/core/p-63f90f39.entry.js.map +1 -0
- package/dist/core/{p-abda7e21.entry.js → p-64101c64.entry.js} +2 -2
- package/dist/core/{p-897fac99.js → p-70616efa.js} +2 -2
- package/dist/core/{p-d2b2b7df.entry.js → p-76c94cee.entry.js} +2 -2
- package/dist/core/{p-794ff553.entry.js → p-7d1f7976.entry.js} +2 -2
- package/dist/core/p-9038c7e3.entry.js +2 -0
- package/dist/core/p-9038c7e3.entry.js.map +1 -0
- package/dist/core/p-9bf9da9b.entry.js +2 -0
- package/dist/core/p-9bf9da9b.entry.js.map +1 -0
- package/dist/core/{p-33110185.entry.js → p-a33bf749.entry.js} +2 -2
- package/dist/core/p-a699b343.entry.js +2 -0
- package/dist/core/p-a699b343.entry.js.map +1 -0
- package/dist/core/{p-157b47bc.entry.js → p-a707b036.entry.js} +2 -2
- package/dist/core/p-a707b036.entry.js.map +1 -0
- package/dist/core/{p-bd87bf33.entry.js → p-a74be80c.entry.js} +2 -2
- package/dist/core/{p-abdd8560.entry.js → p-af547c0a.entry.js} +2 -2
- package/dist/core/{p-abdd8560.entry.js.map → p-af547c0a.entry.js.map} +1 -1
- package/dist/core/{p-b5a5fe39.entry.js → p-b0170269.entry.js} +2 -2
- package/dist/core/{p-51058719.entry.js → p-bb418e1b.entry.js} +2 -2
- package/dist/core/{p-1658e577.entry.js → p-d2dbb1dc.entry.js} +2 -2
- package/dist/core/{p-26aff39e.entry.js → p-e3303bbe.entry.js} +2 -2
- package/dist/core/{p-6188f029.entry.js → p-e62e5ca3.entry.js} +2 -2
- package/dist/core/{p-e3e0cf46.entry.js → p-e9ed9a29.entry.js} +2 -2
- package/dist/core/p-e9ed9a29.entry.js.map +1 -0
- package/dist/core/{p-9462f294.entry.js → p-ebd84a67.entry.js} +2 -2
- package/dist/core/{p-b717ae40.entry.js → p-f154d6e6.entry.js} +2 -2
- package/dist/core/{p-77157922.entry.js → p-f1d5bdbd.entry.js} +2 -2
- package/dist/core/{p-a1d5fff2.entry.js → p-f482ccb8.entry.js} +2 -2
- package/dist/core/p-f60c8a1b.entry.js +2 -0
- package/dist/core/p-f60c8a1b.entry.js.map +1 -0
- package/dist/core/{p-45177148.entry.js → p-fc71c920.entry.js} +2 -2
- package/dist/esm/core.js +1 -1
- package/dist/esm/{helpers-56c75bf4.js → helpers-b4561326.js} +2 -2
- package/dist/esm/{helpers-56c75bf4.js.map → helpers-b4561326.js.map} +1 -1
- package/dist/esm/ic-accordion-group.entry.js +1 -1
- package/dist/esm/ic-accordion.entry.js +1 -1
- package/dist/esm/ic-alert.entry.js +1 -1
- package/dist/esm/ic-back-to-top.entry.js +4 -2
- package/dist/esm/ic-back-to-top.entry.js.map +1 -1
- package/dist/esm/ic-badge.entry.js +1 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +23 -22
- package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb.entry.js +5 -4
- package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
- package/dist/esm/ic-button_3.entry.js +1 -1
- package/dist/esm/ic-card-vertical.entry.js +2 -2
- package/dist/esm/ic-card-vertical.entry.js.map +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +1 -1
- package/dist/esm/ic-checkbox.entry.js +2 -2
- package/dist/esm/ic-checkbox.entry.js.map +1 -1
- package/dist/esm/ic-chip.entry.js +1 -1
- package/dist/esm/ic-data-row.entry.js +1 -1
- package/dist/esm/ic-data-table-title-bar.entry.js +1 -1
- package/dist/esm/ic-data-table-title-bar.entry.js.map +1 -1
- package/dist/esm/ic-data-table.entry.js +14 -13
- package/dist/esm/ic-data-table.entry.js.map +1 -1
- package/dist/esm/ic-date-input.entry.js +6 -0
- package/dist/esm/ic-date-input.entry.js.map +1 -1
- package/dist/esm/ic-dialog.entry.js +21 -6
- package/dist/esm/ic-dialog.entry.js.map +1 -1
- package/dist/esm/ic-divider.entry.js +1 -1
- package/dist/esm/ic-empty-state_2.entry.js +18 -8
- package/dist/esm/ic-empty-state_2.entry.js.map +1 -1
- package/dist/esm/ic-footer-link-group.entry.js +1 -1
- package/dist/esm/ic-footer-link.entry.js +2 -2
- package/dist/esm/ic-footer-link.entry.js.map +1 -1
- package/dist/esm/ic-footer.entry.js +1 -1
- package/dist/esm/ic-hero.entry.js +1 -1
- package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
- package/dist/esm/ic-input-component-container_3.entry.js +1 -1
- package/dist/esm/ic-input-label_2.entry.js +1 -1
- package/dist/esm/ic-link.entry.js +2 -2
- package/dist/esm/ic-link.entry.js.map +1 -1
- package/dist/esm/ic-menu-group.entry.js +1 -1
- package/dist/esm/ic-menu-item.entry.js +1 -1
- package/dist/esm/ic-navigation-button.entry.js +1 -1
- package/dist/esm/ic-navigation-group.entry.js +1 -1
- package/dist/esm/ic-navigation-item.entry.js +1 -1
- package/dist/esm/ic-navigation-menu.entry.js +1 -1
- package/dist/esm/ic-page-header.entry.js +1 -1
- package/dist/esm/ic-pagination_4.entry.js +2 -2
- package/dist/esm/ic-pagination_4.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +1 -1
- package/dist/esm/ic-radio-group.entry.js +3 -2
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-option.entry.js +2 -2
- package/dist/esm/ic-radio-option.entry.js.map +1 -1
- package/dist/esm/ic-search-bar.entry.js +1 -1
- package/dist/esm/ic-side-navigation.entry.js +1 -1
- package/dist/esm/ic-status-tag.entry.js +1 -1
- package/dist/esm/ic-step.entry.js +1 -1
- package/dist/esm/ic-stepper.entry.js +1 -1
- package/dist/esm/ic-switch.entry.js +1 -1
- package/dist/esm/ic-tab-context.entry.js +1 -2
- package/dist/esm/ic-tab-context.entry.js.map +1 -1
- package/dist/esm/ic-tab-group.entry.js +1 -1
- package/dist/esm/ic-tab-panel.entry.js +5 -6
- package/dist/esm/ic-tab-panel.entry.js.map +1 -1
- package/dist/esm/ic-tab.entry.js +1 -1
- package/dist/esm/ic-theme.entry.js +1 -1
- package/dist/esm/ic-toast.entry.js +1 -1
- package/dist/esm/ic-toggle-button-group.entry.js +1 -1
- package/dist/esm/ic-toggle-button.entry.js +2 -2
- package/dist/esm/ic-toggle-button.entry.js.map +1 -1
- package/dist/esm/ic-top-navigation.entry.js +2 -2
- package/dist/esm/ic-top-navigation.entry.js.map +1 -1
- package/dist/esm/ic-tree-item.entry.js +41 -16
- package/dist/esm/ic-tree-item.entry.js.map +1 -1
- package/dist/esm/ic-tree-view.entry.js +7 -9
- package/dist/esm/ic-tree-view.entry.js.map +1 -1
- package/dist/esm/ic-typography.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/ic-data-table/ic-data-table.d.ts +1 -2
- package/dist/types/components/ic-data-table/ic-data-table.types.d.ts +1 -1
- package/dist/types/components/ic-data-table/story-data.d.ts +59 -0
- package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +1 -0
- package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +2 -0
- package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +2 -0
- package/dist/types/components.d.ts +0 -2
- package/hydrate/index.js +153 -92
- package/package.json +3 -3
- package/dist/core/p-063911a8.entry.js +0 -2
- package/dist/core/p-063911a8.entry.js.map +0 -1
- package/dist/core/p-0c9155f4.entry.js +0 -2
- package/dist/core/p-0c9155f4.entry.js.map +0 -1
- package/dist/core/p-14098257.entry.js +0 -2
- package/dist/core/p-14098257.entry.js.map +0 -1
- package/dist/core/p-157b47bc.entry.js.map +0 -1
- package/dist/core/p-15a5cce5.entry.js +0 -2
- package/dist/core/p-15a5cce5.entry.js.map +0 -1
- package/dist/core/p-27b1223d.entry.js +0 -2
- package/dist/core/p-27b1223d.entry.js.map +0 -1
- package/dist/core/p-3963201d.entry.js +0 -2
- package/dist/core/p-3963201d.entry.js.map +0 -1
- package/dist/core/p-41bfa3e5.entry.js +0 -2
- package/dist/core/p-41bfa3e5.entry.js.map +0 -1
- package/dist/core/p-51faa4ba.entry.js +0 -2
- package/dist/core/p-51faa4ba.entry.js.map +0 -1
- package/dist/core/p-82b408ad.entry.js +0 -2
- package/dist/core/p-82b408ad.entry.js.map +0 -1
- package/dist/core/p-88913402.entry.js.map +0 -1
- package/dist/core/p-a1cf5884.entry.js +0 -2
- package/dist/core/p-a1cf5884.entry.js.map +0 -1
- package/dist/core/p-a69ef3eb.entry.js +0 -2
- package/dist/core/p-a69ef3eb.entry.js.map +0 -1
- package/dist/core/p-b2a6f0dd.entry.js +0 -2
- package/dist/core/p-b2a6f0dd.entry.js.map +0 -1
- package/dist/core/p-be1ec9aa.entry.js.map +0 -1
- package/dist/core/p-c035d7b9.entry.js +0 -2
- package/dist/core/p-c035d7b9.entry.js.map +0 -1
- package/dist/core/p-e1df1b9a.entry.js +0 -2
- package/dist/core/p-e1df1b9a.entry.js.map +0 -1
- package/dist/core/p-e3e0cf46.entry.js.map +0 -1
- package/dist/core/p-ffb11ad1.entry.js +0 -2
- package/dist/core/p-ffb11ad1.entry.js.map +0 -1
- /package/dist/core/{p-2169e75b.entry.js.map → p-052a9f31.entry.js.map} +0 -0
- /package/dist/core/{p-b85466a7.entry.js.map → p-059c08a0.entry.js.map} +0 -0
- /package/dist/core/{p-4347f05c.entry.js.map → p-1684a003.entry.js.map} +0 -0
- /package/dist/core/{p-6ac8e09b.entry.js.map → p-1bf881bb.entry.js.map} +0 -0
- /package/dist/core/{p-8ebd64ae.entry.js.map → p-1eb21184.entry.js.map} +0 -0
- /package/dist/core/{p-0054bdc2.entry.js.map → p-2039e996.entry.js.map} +0 -0
- /package/dist/core/{p-01a23e24.entry.js.map → p-20c780cb.entry.js.map} +0 -0
- /package/dist/core/{p-4f96bec1.entry.js.map → p-2376e171.entry.js.map} +0 -0
- /package/dist/core/{p-71496305.entry.js.map → p-28c8d6e3.entry.js.map} +0 -0
- /package/dist/core/{p-0c5d45e1.entry.js.map → p-2e261288.entry.js.map} +0 -0
- /package/dist/core/{p-9a392c41.entry.js.map → p-36242f26.entry.js.map} +0 -0
- /package/dist/core/{p-f3d2af04.entry.js.map → p-37cced7a.entry.js.map} +0 -0
- /package/dist/core/{p-ce923b92.entry.js.map → p-3c17ca15.entry.js.map} +0 -0
- /package/dist/core/{p-47a1ce8d.entry.js.map → p-435d9ce2.entry.js.map} +0 -0
- /package/dist/core/{p-ace8126b.entry.js.map → p-49fbe074.entry.js.map} +0 -0
- /package/dist/core/{p-78ed3070.entry.js.map → p-4ba91306.entry.js.map} +0 -0
- /package/dist/core/{p-32726b89.entry.js.map → p-50e24896.entry.js.map} +0 -0
- /package/dist/core/{p-bd4401d5.entry.js.map → p-542ffaf4.entry.js.map} +0 -0
- /package/dist/core/{p-8e56516a.entry.js.map → p-555dd292.entry.js.map} +0 -0
- /package/dist/core/{p-54dc696e.entry.js.map → p-5e616d85.entry.js.map} +0 -0
- /package/dist/core/{p-abda7e21.entry.js.map → p-64101c64.entry.js.map} +0 -0
- /package/dist/core/{p-897fac99.js.map → p-70616efa.js.map} +0 -0
- /package/dist/core/{p-d2b2b7df.entry.js.map → p-76c94cee.entry.js.map} +0 -0
- /package/dist/core/{p-794ff553.entry.js.map → p-7d1f7976.entry.js.map} +0 -0
- /package/dist/core/{p-33110185.entry.js.map → p-a33bf749.entry.js.map} +0 -0
- /package/dist/core/{p-bd87bf33.entry.js.map → p-a74be80c.entry.js.map} +0 -0
- /package/dist/core/{p-b5a5fe39.entry.js.map → p-b0170269.entry.js.map} +0 -0
- /package/dist/core/{p-51058719.entry.js.map → p-bb418e1b.entry.js.map} +0 -0
- /package/dist/core/{p-1658e577.entry.js.map → p-d2dbb1dc.entry.js.map} +0 -0
- /package/dist/core/{p-26aff39e.entry.js.map → p-e3303bbe.entry.js.map} +0 -0
- /package/dist/core/{p-6188f029.entry.js.map → p-e62e5ca3.entry.js.map} +0 -0
- /package/dist/core/{p-9462f294.entry.js.map → p-ebd84a67.entry.js.map} +0 -0
- /package/dist/core/{p-b717ae40.entry.js.map → p-f154d6e6.entry.js.map} +0 -0
- /package/dist/core/{p-77157922.entry.js.map → p-f1d5bdbd.entry.js.map} +0 -0
- /package/dist/core/{p-a1d5fff2.entry.js.map → p-f482ccb8.entry.js.map} +0 -0
- /package/dist/core/{p-45177148.entry.js.map → p-fc71c920.entry.js.map} +0 -0
@@ -1 +1 @@
|
|
1
|
-
{"file":"ic-top-navigation.entry.cjs.js","mappings":"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","names":["isSlotUsed","getSlot","getCurrentDeviceSize","DEVICE_SIZES","getBrandForegroundAppearance","onComponentPropUndefinedChange","checkResizeObserver","onComponentRequiredPropUndefined","isPropDefined","h","Host","IcBrandForegroundEnum","isEmptyString"],"sources":["../web-components/dist/collection/components/ic-top-navigation/ic-top-navigation.css?tag=ic-top-navigation&encapsulation=shadow","../web-components/dist/collection/components/ic-top-navigation/ic-top-navigation.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n:host {\n display: block;\n color: var(--ic-top-navigation-text);\n width: 100%;\n position: relative;\n\n --ic-typography-color: var(--ic-top-navigation-text);\n\n --ic-button-secondary-text-monochrome: var(--ic-brand-text-color);\n --ic-button-secondary-border-monochrome: var(--ic-brand-text-color);\n}\n\n:host(.dark) {\n color: var(--ic-color-text-primary-light);\n --ic-typography-color: var(--ic-color-text-primary-light);\n --ic-top-navigation-logo: var(--ic-color-icon-neutral);\n --ic-top-navigation-icon: var(--ic-color-icon-neutral);\n --ic-top-navigation-theme: var(--ic-color-icon-neutral);\n --ic-top-navigation-status-tag: var(--ic-color-background-primary-dark);\n --ic-top-navigation-status-tag-text: var(--ic-color-brand-text);\n --ic-top-navigation-status-tag-secondary: var(--ic-state-layer-darken-10);\n --navigation-link-colour: var(--ic-color-text-primary-light);\n}\n\n:host ::slotted(ic-navigation-item) {\n --navigation-link-colour: var(--ic-top-navigation-text);\n}\n\n:host(.dark) ::slotted(ic-navigation-button) {\n --ic-button-icon-monochrome: var(--ic-color-text-primary-light);\n}\n\n::slotted(ic-navigation-button) {\n --ic-button-icon-monochrome: white;\n}\n\n:host .top-navigation {\n background-color: var(--ic-top-navigation-background);\n height: -moz-max-content;\n height: max-content;\n}\n\n:host(.fullwidth-searchbar) slot[name=\"search\"]::slotted(form) {\n width: 100%;\n}\n\n:host .title-link {\n display: inline-flex;\n align-items: center;\n text-decoration: none;\n padding: var(--ic-space-xxs);\n transition: var(--ic-easing-transition-fast);\n}\n\n:host .title-link,\n:host .title-link:visited,\n:host .title-link:active,\n:host .title-link ::slotted(a),\n:host .title-link:visited ::slotted(a),\n:host .title-link:active ::slotted(a) {\n color: var(--ic-top-navigation-icon-and-label);\n text-decoration: none;\n outline: none;\n}\n\n:host .title-link:hover:not(:focus) {\n background-color: var(--ic-top-navigation-title-hover);\n}\n\n:host .title-link:active:not(:focus) {\n background-color: var(--ic-top-navigation-title-pressed);\n}\n\n:host .title-link:hover {\n border-radius: var(--ic-border-radius);\n}\n\n:host .title-link:focus,\n:host .title-link:focus-within {\n border-radius: var(--ic-border-radius);\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n}\n\n:host .title-link ic-typography {\n font-weight: 600;\n}\n\n:host .nav-panel-container {\n border-top: var(--ic-space-1px) solid var(--ic-top-navigation-keyline);\n padding: 0 var(--ic-space-lg);\n margin-left: calc(-1 * var(--section-container-margin));\n margin-right: calc(-1 * var(--section-container-margin));\n display: flex;\n}\n\n:host(.dark) .nav-panel-container {\n border-top: var(--ic-border-keyline-darken);\n}\n\n.top-panel-container {\n display: flex;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.navigation-tabs {\n margin-top: calc(-1 * var(--ic-space-1px));\n}\n\n.app-details-container {\n display: flex;\n align-items: center;\n flex: 1 1 auto;\n margin-right: var(--ic-space-md);\n}\n\n.app-icon-container {\n display: flex;\n padding-right: var(--ic-space-xs);\n}\n\n.icon-buttons-container {\n display: flex;\n margin-left: var(--ic-space-md);\n}\n\n.icon-buttons-container ::slotted(nav) {\n display: flex;\n}\n\n.title-wrap {\n overflow-wrap: break-word;\n word-wrap: break-word;\n -ms-word-break: break-all;\n word-break: break-word;\n -webkit-hyphens: auto;\n hyphens: auto;\n}\n\n:host .app-status {\n border-radius: var(--ic-space-md);\n background-color: var(--ic-top-navigation-status-tag);\n color: var(--ic-top-navigation-status-tag-text);\n --ic-typography-color: var(--ic-top-navigation-status-tag-text);\n padding: var(--ic-space-xxs) var(--ic-space-lg);\n margin-left: var(--ic-space-md);\n flex: 1 1 0;\n max-width: -moz-fit-content;\n max-width: fit-content;\n}\n\n:host .app-version {\n border-radius: var(--ic-space-md);\n background-color: var(--ic-top-navigation-status-tag-secondary);\n color: var(--ic-top-navigation-status-tag);\n padding: var(--ic-space-xxs) var(--ic-space-sm);\n margin-left: var(--ic-space-xs);\n flex: 1 1 0;\n max-width: -moz-fit-content;\n max-width: fit-content;\n}\n\nslot[name=\"app-icon\"]::slotted(*) {\n fill: var(--ic-top-navigation-logo);\n width: 2em;\n height: 2em;\n}\n\nslot[name=\"toggle-icon\"] svg {\n fill: var(--ic-top-navigation-icon);\n}\n\n.search-menu-container {\n justify-content: right;\n display: flex;\n align-items: center;\n}\n\n.menu-button-container {\n margin-left: var(--ic-space-md);\n}\n\n.menu-button-container .navigation-landmark-button-text {\n position: absolute;\n left: -10000px;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n}\n\n.search-actions-container {\n display: flex;\n}\n\n.menu-buttons-slot {\n display: flex;\n flex-direction: column;\n}\n\n.navigation-landmark-text {\n position: absolute;\n width: var(--ic-space-1px);\n height: var(--ic-space-1px);\n padding: 0;\n margin: calc(-1 * var(--ic-space-1px));\n overflow: hidden;\n}\n\n.navigation-item-list {\n display: flex;\n list-style: none;\n height: 2.75rem;\n}\n\n.navigation-item-list::-webkit-scrollbar {\n display: none;\n}\n\n:host ic-section-container {\n padding-bottom: 0 !important;\n padding-top: 0 !important;\n}\n\n@media screen and (min-width: 993px) {\n .app-details-container {\n margin-right: var(--ic-space-lg);\n }\n}\n\n/* large */\n@media screen and (max-width: 1200px) {\n :host .nav-panel-container {\n padding: 0 var(--ic-space-md);\n }\n}\n\n/** Mobile styling **/\n:host(.mobile-mode) .app-status,\n:host(.mobile-mode) .app-version {\n display: none;\n}\n\n:host(.mobile-mode) .title-link {\n margin-right: var(--ic-space-xs);\n}\n\n:host(.mobile-mode) .search-menu-container {\n max-width: 10rem;\n}\n\n:host(.mobile-mode) .search-bar-container {\n display: flex;\n justify-content: center;\n align-items: center;\n border-top: var(--ic-border-keyline-darken);\n height: 4rem;\n padding-left: var(--ic-space-md);\n padding-right: var(--ic-space-md);\n margin-left: calc(-1 * var(--section-container-margin));\n margin-right: calc(-1 * var(--section-container-margin));\n}\n\n/* x small */\n@media screen and (max-width: 576px) {\n :host .title-link {\n margin-right: var(--ic-space-xxxs);\n word-break: break-word;\n -webkit-hyphens: none;\n hyphens: none;\n }\n\n .top-panel-container {\n min-height: 2.5rem;\n }\n\n .search-bar-container {\n margin-top: 0;\n height: 3.5rem;\n padding-left: var(--ic-space-xs);\n padding-right: var(--ic-space-xs);\n }\n\n .menu-button-container {\n margin-left: var(--ic-space-sm);\n }\n\n slot[name=\"app-icon\"]::slotted(*) {\n width: 1.5em;\n height: 1.5em;\n }\n\n slot[name=\"toggle-icon\"] svg {\n width: 1.5em;\n height: 1.5em;\n }\n}\n\n@media (forced-colors: active) {\n :host .top-navigation {\n border-bottom: var(--ic-border-hc);\n }\n\n .app-status,\n .app-version {\n border: var(--ic-border-hc);\n }\n\n slot[name=\"app-icon\"]::slotted(*) {\n fill: currentcolor;\n }\n\n slot[name=\"toggle-icon\"] svg {\n fill: currentcolor;\n }\n}\n","import { Host, h, } from \"@stencil/core\";\nimport { IcBrandForegroundEnum, } from \"../../utils/types\";\nimport { checkResizeObserver, DEVICE_SIZES, getCurrentDeviceSize, getBrandForegroundAppearance, getSlot, onComponentPropUndefinedChange, onComponentRequiredPropUndefined, isSlotUsed, isEmptyString, isPropDefined, } from \"../../utils/helpers\";\n/**\n * @slot app-icon - Content will be rendered to left of app title. Anything that is slotted here will be hidden from screen readers.\n * @slot app-title - Handle routing by nesting a route in the app title.\n * @slot short-app-title - Handle routing by nesting a route in the short app title (to be displayed in place of app title on small screen sizes).\n * @slot search - Content will be rendered in search area to left of buttons.\n * @slot toggle-icon - Icon to be displayed on the button to toggle search slot content on smaller devices\n * @slot navigation - Content will be rendered in navigation panel.\n * @slot buttons - Content will be rendered to right of search bar.\n */\nexport class TopNavigation {\n constructor() {\n this.hasAppIcon = false;\n this.hasIconButtons = false;\n this.hasNavigation = false;\n this.hasSearchSlotContent = false;\n this.resizeObserver = null;\n this.searchBar = null;\n this.checkSlots = () => {\n this.hasAppIcon = isSlotUsed(this.el, \"app-icon\");\n this.hasNavigation = isSlotUsed(this.el, \"navigation\");\n this.hasIconButtons = isSlotUsed(this.el, \"buttons\");\n this.hasSearchSlotContent = isSlotUsed(this.el, \"search\");\n };\n this.initialiseSearchBar = () => {\n if (this.hasSearchSlotContent) {\n const slot = getSlot(this.el, \"search\");\n if ((slot === null || slot === void 0 ? void 0 : slot.tagName) === \"IC-SEARCH-BAR\") {\n this.searchBar = slot;\n }\n else if ((slot === null || slot === void 0 ? void 0 : slot.tagName) === \"FORM\") {\n this.searchBar = slot.querySelector(\"ic-search-bar\");\n }\n if (this.searchBar !== null) {\n this.searchBar.hideLabel = true;\n }\n }\n };\n this.menuButtonClick = () => {\n this.showNavMenu(true);\n };\n this.searchButtonMouseDownHandler = () => {\n this.searchButtonClick = true;\n };\n this.searchButtonClickHandler = () => {\n this.toggleSearchBar();\n this.searchButtonClick = false;\n };\n this.resizeObserverCallback = (currSize) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n if (currSize > this.customMobileBreakpoint) {\n this.showNavMenu(false);\n if (this.mobileSearchBarVisible) {\n this.toggleSearchBar();\n }\n }\n this.icTopNavResized.emit({\n size: currSize,\n });\n if (this.searchBar && document.activeElement === this.searchBar) {\n this.searchBar.setAttribute(\"hidden\", \"true\");\n //remove attribute again as this trigger a redraw & applies css\n this.searchBar.removeAttribute(\"hidden\");\n setTimeout(() => {\n this.searchBar.focus();\n }, 100);\n }\n }\n };\n this.runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.resizeObserverCallback(getCurrentDeviceSize());\n });\n this.resizeObserver.observe(this.el);\n };\n this.deviceSize = DEVICE_SIZES.XL;\n this.foregroundColor = getBrandForegroundAppearance();\n this.hasFullWidthSearchBar = false;\n this.mobileSearchBarVisible = false;\n this.mobileSearchHiddenOnBlur = false;\n this.navMenuVisible = false;\n this.searchButtonClick = false;\n this.searchValue = \"\";\n this.contentAligned = \"full-width\";\n this.customMobileBreakpoint = DEVICE_SIZES.L;\n this.href = \"/\";\n this.inline = false;\n this.shortAppTitle = \"\";\n this.status = \"\";\n this.theme = \"inherit\";\n this.version = \"\";\n this.appTitle = undefined;\n }\n watchPropHandler(newValue, oldValue) {\n //added for Gatsby rehydration issue where prop is initially undefined but then changes to actual value\n //this watch can be removed once Gatsby hydration issue is resolved\n onComponentPropUndefinedChange(oldValue, newValue, this.initialiseSearchBar);\n }\n disconnectedCallback() {\n var _a;\n (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();\n }\n componentWillLoad() {\n this.checkSlots();\n this.deviceSize = getCurrentDeviceSize();\n this.initialiseSearchBar();\n }\n componentDidLoad() {\n checkResizeObserver(this.runResizeObserver);\n !isSlotUsed(this.el, \"app-title\") &&\n onComponentRequiredPropUndefined([{ prop: this.appTitle, propName: \"app-title\" }], \"Top Navigation\");\n }\n componentWillRender() {\n this.checkSlots();\n }\n navBarMenuCloseHandler() {\n this.showNavMenu(false);\n this.el.shadowRoot.querySelector(\"#menu-button\").focus();\n }\n searchInputBlurHandler({ detail, }) {\n if (detail !== null) {\n if (this.mobileSearchBarVisible && !this.searchButtonClick) {\n //don't hide if blur was triggered by click on search button - let the click handler toggle the state\n this.toggleSearchBar();\n }\n this.searchValue = detail.value;\n }\n }\n searchValueChangeHandler({ detail }) {\n this.searchValue = detail.value;\n }\n brandChangeHandler({ detail }) {\n this.foregroundColor = detail.mode;\n }\n toggleSearchBar() {\n this.mobileSearchBarVisible = !this.mobileSearchBarVisible;\n if (this.searchBar !== null) {\n this.mobileSearchButtonEl.setAttribute(\"aria-label\", `${this.mobileSearchBarVisible ? \"Hide\" : \"Show\"} search`);\n this.hasFullWidthSearchBar = this.mobileSearchBarVisible;\n this.searchBar.fullWidth = this.mobileSearchBarVisible;\n if (this.mobileSearchBarVisible) {\n setTimeout(() => {\n this.searchBar.focus();\n }, 100);\n }\n }\n }\n showNavMenu(show) {\n this.navMenuVisible = show;\n (show ? this.icNavigationMenuOpened : this.icNavigationMenuClosed).emit();\n document.body.style.height = show ? \"100%\" : \"auto\";\n document.body.style.overflow = show ? \"hidden\" : \"auto\";\n }\n render() {\n const { appTitle, contentAligned, customMobileBreakpoint, deviceSize, el, foregroundColor, hasAppIcon, hasFullWidthSearchBar, hasIconButtons, hasNavigation, hasSearchSlotContent, href, inline, menuButtonClick, mobileSearchBarVisible, navMenuVisible, searchButtonClickHandler, searchButtonMouseDownHandler, shortAppTitle, status, version, theme, } = this;\n const hasStatus = status !== \"\";\n const hasVersion = version !== \"\";\n const hasMenuContent = hasNavigation || hasIconButtons || hasStatus || hasVersion;\n const searchButtonSize = deviceSize <= DEVICE_SIZES.S ? \"medium\" : \"large\";\n const hasTitle = appTitle !== \"\" && isPropDefined(appTitle);\n const overMobileBreakpoint = deviceSize <= customMobileBreakpoint;\n const appTitleVariant = overMobileBreakpoint\n ? deviceSize <= DEVICE_SIZES.S\n ? \"subtitle-small\"\n : \"h4\"\n : \"h3\";\n const mobileSearchButtonTitle = `${mobileSearchBarVisible ? \"Hide\" : \"Show\"} search`;\n const menuSize = deviceSize <= DEVICE_SIZES.S ? \"small\" : \"medium\";\n const shortAppTitleSlot = isSlotUsed(el, \"short-app-title\");\n const hasAppTitleSlot = isSlotUsed(el, \"app-title\");\n const Component = hasAppTitleSlot ? \"div\" : \"a\";\n const attrs = Component == \"a\" && {\n href: href,\n };\n return (h(Host, { class: {\n \"fullwidth-searchbar\": hasFullWidthSearchBar,\n \"mobile-mode\": overMobileBreakpoint,\n [IcBrandForegroundEnum.Dark]: foregroundColor === IcBrandForegroundEnum.Dark,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n } }, h(\"div\", { class: \"top-navigation\" }, h(\"ic-section-container\", { aligned: contentAligned, \"full-height\": true }, h(\"header\", { role: \"banner\" }, h(\"div\", { class: \"top-panel-container\" }, h(\"div\", { class: \"app-details-container\" }, (hasTitle || hasAppTitleSlot) && (h(Component, Object.assign({ class: \"title-link\" }, attrs), hasAppIcon && (h(\"div\", { class: \"app-icon-container\" }, h(\"slot\", { name: \"app-icon\" }))), deviceSize <= DEVICE_SIZES.S &&\n (!isEmptyString(shortAppTitle) || shortAppTitleSlot) ? (h(\"ic-typography\", { variant: \"subtitle-small\", \"aria-label\": (!hasAppTitleSlot || !shortAppTitleSlot) &&\n `${appTitle} (${shortAppTitle})` }, h(\"h1\", null, shortAppTitleSlot ? (h(\"slot\", { name: \"short-app-title\" })) : (shortAppTitle)))) : (h(\"ic-typography\", { variant: appTitleVariant }, h(\"h1\", { class: \"title-wrap\" }, hasAppTitleSlot ? (h(\"slot\", { name: \"app-title\" })) : (appTitle)))))), hasStatus && (h(\"div\", { class: \"app-status\" }, h(\"ic-typography\", { \"aria-label\": \"app tag\", variant: \"label-uppercase\", class: \"app-status-text\" }, status))), hasVersion && (h(\"div\", { class: \"app-version\" }, h(\"ic-typography\", { variant: \"label\", class: \"app-version-text\", \"aria-label\": \"app version\" }, version)))), (hasSearchSlotContent || hasMenuContent) && (h(\"div\", { class: \"search-menu-container\" }, h(\"div\", { class: \"search-actions-container\" }, !overMobileBreakpoint && h(\"slot\", { name: \"search\" }), hasSearchSlotContent && overMobileBreakpoint && (h(\"ic-button\", { id: \"search-toggle-button\", ref: (el) => (this.mobileSearchButtonEl = el), onMouseDown: searchButtonMouseDownHandler, variant: \"icon-tertiary\", monochrome: true, size: searchButtonSize, \"aria-label\": mobileSearchButtonTitle, theme: foregroundColor == IcBrandForegroundEnum.Light\n ? IcBrandForegroundEnum.Dark\n : IcBrandForegroundEnum.Light, onClick: searchButtonClickHandler }, h(\"slot\", { name: \"toggle-icon\" }, h(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", viewBox: \"0 0 24 24\", fill: \"#ffffff\" }, h(\"path\", { d: \"M0 0h24v24H0V0z\", fill: \"none\" }), h(\"path\", { d: \"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z\" }))))), hasIconButtons && !overMobileBreakpoint && (h(\"div\", { class: \"icon-buttons-container\" }, h(\"slot\", { name: \"buttons\" }))), hasMenuContent && overMobileBreakpoint && (h(\"div\", { class: \"menu-button-container\" }, h(\"span\", { id: \"navigation-landmark-button-text\", class: \"navigation-landmark-button-text\", \"aria-hidden\": \"true\" }, \"Main navigation button\"), h(\"nav\", { \"aria-labelledby\": \"navigation-landmark-button-text\", \"aria-hidden\": `${navMenuVisible}` }, h(\"ic-button\", { id: \"menu-button\", theme: foregroundColor == IcBrandForegroundEnum.Light\n ? IcBrandForegroundEnum.Dark\n : IcBrandForegroundEnum.Light, variant: \"secondary\", monochrome: true, \"aria-expanded\": \"false\", \"aria-haspopup\": \"true\", \"aria-label\": `Open ${hasNavigation ? \"navigation\" : \"app\"} menu`, size: menuSize, onClick: menuButtonClick }, \"Menu\", h(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", height: \"24px\", viewBox: \"0 0 24 24\", width: \"24px\", fill: \"#ffffff\", slot: \"left-icon\" }, h(\"path\", { d: \"M0 0h24v24H0V0z\", fill: \"none\" }), h(\"path\", { d: \"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z\" })))))))))), mobileSearchBarVisible && (h(\"div\", { class: \"search-bar-container\" }, h(\"slot\", { name: \"search\" }))), hasNavigation && !overMobileBreakpoint && (h(\"div\", { class: \"navigation-tabs\" }, h(\"span\", { id: \"navigation-landmark-text\", class: \"navigation-landmark-text\", \"aria-hidden\": \"true\" }, \"Main pages\"), h(\"nav\", { \"aria-labelledby\": \"navigation-landmark-text\", class: \"nav-panel-container\" }, h(\"ic-horizontal-scroll\", { monochrome: true, appearance: foregroundColor }, h(\"ul\", { class: \"navigation-item-list\", tabindex: \"-1\" }, h(\"slot\", { name: \"navigation\" }))))))))), navMenuVisible && (h(\"ic-navigation-menu\", { version: version, status: status, class: {\n [\"inline\"]: inline,\n } }, hasIconButtons && (h(\"div\", { class: \"menu-buttons-slot\", slot: \"buttons\" }, h(\"slot\", { name: \"buttons\" }))), h(\"ul\", { slot: \"navigation\" }, h(\"slot\", { name: \"navigation\" }))))));\n }\n static get is() { return \"ic-top-navigation\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-top-navigation.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-top-navigation.css\"]\n };\n }\n static get properties() {\n return {\n \"contentAligned\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcAlignment\",\n \"resolved\": \"\\\"center\\\" | \\\"full-width\\\" | \\\"left\\\"\",\n \"references\": {\n \"IcAlignment\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcAlignment\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The alignment of the top navigation content.\"\n },\n \"attribute\": \"content-aligned\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"full-width\\\"\"\n },\n \"customMobileBreakpoint\": {\n \"type\": \"number\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcDeviceSizes\",\n \"resolved\": \"0 | 1200 | 576 | 768 | 992\",\n \"references\": {\n \"IcDeviceSizes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcDeviceSizes\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Can set a custom breakpoint for the top navigation to switch to mobile mode.\\nMust be one of our specified breakpoints in px: `0`, `576`, `768`, `992`, `1200`.\"\n },\n \"attribute\": \"custom-mobile-breakpoint\",\n \"reflect\": false,\n \"defaultValue\": \"DEVICE_SIZES.L\"\n },\n \"href\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The URL to navigate to when the app title is clicked.\"\n },\n \"attribute\": \"href\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"/\\\"\"\n },\n \"inline\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the flyout navigation menu on small devices will be contained by the parent element.\"\n },\n \"attribute\": \"inline\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"shortAppTitle\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The short title of the app to be displayed at small screen sizes in place of the app title.\"\n },\n \"attribute\": \"short-app-title\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"status\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The status info to be displayed.\"\n },\n \"attribute\": \"status\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcThemeMode\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\"\",\n \"references\": {\n \"IcThemeMode\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeMode\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Sets the theme color to the dark or light theme color. \\\"inherit\\\" will set the color based on the system settings or ic-theme component.\"\n },\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n },\n \"version\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The version info to be displayed.\"\n },\n \"attribute\": \"version\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"appTitle\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The app title to be displayed. This is required, unless a slotted app title link is used.\"\n },\n \"attribute\": \"app-title\",\n \"reflect\": false\n }\n };\n }\n static get states() {\n return {\n \"deviceSize\": {},\n \"foregroundColor\": {},\n \"hasFullWidthSearchBar\": {},\n \"mobileSearchBarVisible\": {},\n \"mobileSearchHiddenOnBlur\": {},\n \"navMenuVisible\": {},\n \"searchButtonClick\": {},\n \"searchValue\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"icNavigationMenuClosed\",\n \"name\": \"icNavigationMenuClosed\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"- Emitted when the menu is closed.\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"icNavigationMenuOpened\",\n \"name\": \"icNavigationMenuOpened\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"- Emitted when the menu is opened.\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"icTopNavResized\",\n \"name\": \"icTopNavResized\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the top navigation is resized.\"\n },\n \"complexType\": {\n \"original\": \"{ size: number }\",\n \"resolved\": \"{ size: number; }\",\n \"references\": {}\n }\n }];\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"appTitle\",\n \"methodName\": \"watchPropHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"icNavigationMenuClose\",\n \"method\": \"navBarMenuCloseHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"icSearchBarBlur\",\n \"method\": \"searchInputBlurHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"icChange\",\n \"method\": \"searchValueChangeHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"brandChange\",\n \"method\": \"brandChangeHandler\",\n \"target\": \"document\",\n \"capture\": false,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-top-navigation.js.map\n"],"version":3}
|
1
|
+
{"file":"ic-top-navigation.entry.cjs.js","mappings":"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","names":["isSlotUsed","getSlot","getCurrentDeviceSize","DEVICE_SIZES","getBrandForegroundAppearance","onComponentPropUndefinedChange","checkResizeObserver","onComponentRequiredPropUndefined","isPropDefined","h","Host","IcBrandForegroundEnum","isEmptyString"],"sources":["../web-components/dist/collection/components/ic-top-navigation/ic-top-navigation.css?tag=ic-top-navigation&encapsulation=shadow","../web-components/dist/collection/components/ic-top-navigation/ic-top-navigation.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n:host {\n display: block;\n color: var(--ic-top-navigation-text);\n width: 100%;\n position: relative;\n\n --ic-typography-color: var(--ic-top-navigation-text);\n\n --ic-button-secondary-text-monochrome: var(--ic-brand-text-color);\n --ic-button-secondary-border-monochrome: var(--ic-brand-text-color);\n --navigation-link-colour: var(--ic-top-navigation-text);\n}\n\n:host(.dark) {\n color: var(--ic-color-text-primary-light);\n --ic-typography-color: var(--ic-color-text-primary-light);\n --ic-top-navigation-logo: var(--ic-color-icon-neutral);\n --ic-top-navigation-icon: var(--ic-color-icon-neutral);\n --ic-top-navigation-icon-and-label: var(--ic-color-text-primary-light);\n --ic-top-navigation-theme: var(--ic-color-icon-neutral);\n --ic-top-navigation-status-tag: var(--ic-color-background-primary-dark);\n --ic-top-navigation-status-tag-text: var(--ic-color-brand-text);\n --ic-top-navigation-status-tag-secondary: var(--ic-state-layer-darken-10);\n --ic-top-navigation-title-hover: var(--ic-action-dark-bg-hover);\n --ic-top-navigation-title-pressed: var(--ic-action-dark-bg-pressed);\n --navigation-link-colour: var(--ic-color-text-primary-light);\n}\n\n:host(.dark) ::slotted(ic-navigation-button) {\n --ic-button-icon-monochrome: var(--ic-color-text-primary-light);\n}\n\n::slotted(ic-navigation-button) {\n --ic-button-icon-monochrome: white;\n}\n\n:host .top-navigation {\n background-color: var(--ic-top-navigation-background);\n height: -moz-max-content;\n height: max-content;\n}\n\n:host(.fullwidth-searchbar) slot[name=\"search\"]::slotted(form) {\n width: 100%;\n}\n\n:host .title-link {\n display: inline-flex;\n align-items: center;\n text-decoration: none;\n padding: var(--ic-space-xxs);\n transition: var(--ic-easing-transition-fast);\n}\n\n:host .title-link,\n:host .title-link:visited,\n:host .title-link:active,\n:host .title-link ::slotted(a),\n:host .title-link:visited ::slotted(a),\n:host .title-link:active ::slotted(a) {\n color: var(--ic-top-navigation-icon-and-label);\n text-decoration: none;\n outline: none;\n}\n\n:host .title-link:hover:not(:focus) {\n background-color: var(--ic-top-navigation-title-hover);\n}\n\n:host .title-link:active:not(:focus) {\n background-color: var(--ic-top-navigation-title-pressed);\n}\n\n:host .title-link:hover {\n border-radius: var(--ic-border-radius);\n}\n\n:host .title-link:focus,\n:host .title-link:focus-within {\n border-radius: var(--ic-border-radius);\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n}\n\n:host .title-link ic-typography {\n font-weight: 600;\n}\n\n:host .nav-panel-container {\n border-top: var(--ic-space-1px) solid var(--ic-top-navigation-keyline);\n padding: 0 var(--ic-space-lg);\n margin-left: calc(-1 * var(--section-container-margin));\n margin-right: calc(-1 * var(--section-container-margin));\n display: flex;\n}\n\n:host(.dark) .nav-panel-container {\n border-top: var(--ic-border-keyline-darken);\n}\n\n.top-panel-container {\n display: flex;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.navigation-tabs {\n margin-top: calc(-1 * var(--ic-space-1px));\n}\n\n.app-details-container {\n display: flex;\n align-items: center;\n flex: 1 1 auto;\n margin-right: var(--ic-space-md);\n}\n\n.app-icon-container {\n display: flex;\n padding-right: var(--ic-space-xs);\n}\n\n.icon-buttons-container {\n display: flex;\n margin-left: var(--ic-space-md);\n}\n\n.icon-buttons-container ::slotted(nav) {\n display: flex;\n}\n\n.title-wrap {\n overflow-wrap: break-word;\n word-wrap: break-word;\n -ms-word-break: break-all;\n word-break: break-word;\n -webkit-hyphens: auto;\n hyphens: auto;\n}\n\n:host .app-status {\n border-radius: var(--ic-space-md);\n background-color: var(--ic-top-navigation-status-tag);\n color: var(--ic-top-navigation-status-tag-text);\n --ic-typography-color: var(--ic-top-navigation-status-tag-text);\n padding: var(--ic-space-xxs) var(--ic-space-lg);\n margin-left: var(--ic-space-md);\n flex: 1 1 0;\n max-width: -moz-fit-content;\n max-width: fit-content;\n}\n\n:host .app-version {\n border-radius: var(--ic-space-md);\n background-color: var(--ic-top-navigation-status-tag-secondary);\n color: var(--ic-top-navigation-status-tag);\n padding: var(--ic-space-xxs) var(--ic-space-sm);\n margin-left: var(--ic-space-xs);\n flex: 1 1 0;\n max-width: -moz-fit-content;\n max-width: fit-content;\n}\n\nslot[name=\"app-icon\"]::slotted(*) {\n fill: var(--ic-top-navigation-logo);\n width: 2em;\n height: 2em;\n}\n\nslot[name=\"toggle-icon\"] svg {\n fill: var(--ic-top-navigation-icon);\n}\n\n.search-menu-container {\n justify-content: right;\n display: flex;\n align-items: center;\n}\n\n.menu-button-container {\n margin-left: var(--ic-space-md);\n}\n\n.menu-button-container .navigation-landmark-button-text {\n position: absolute;\n left: -10000px;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n}\n\n.search-actions-container {\n display: flex;\n}\n\n.menu-buttons-slot {\n display: flex;\n flex-direction: column;\n}\n\n.navigation-landmark-text {\n position: absolute;\n width: var(--ic-space-1px);\n height: var(--ic-space-1px);\n padding: 0;\n margin: calc(-1 * var(--ic-space-1px));\n overflow: hidden;\n}\n\n.navigation-item-list {\n display: flex;\n list-style: none;\n height: 2.75rem;\n}\n\n.navigation-item-list::-webkit-scrollbar {\n display: none;\n}\n\n:host ic-section-container {\n padding-bottom: 0 !important;\n padding-top: 0 !important;\n}\n\n@media screen and (min-width: 993px) {\n .app-details-container {\n margin-right: var(--ic-space-lg);\n }\n}\n\n/* large */\n@media screen and (max-width: 1200px) {\n :host .nav-panel-container {\n padding: 0 var(--ic-space-md);\n }\n}\n\n/** Mobile styling **/\n:host(.mobile-mode) .app-status,\n:host(.mobile-mode) .app-version {\n display: none;\n}\n\n:host(.mobile-mode) .title-link {\n margin-right: var(--ic-space-xs);\n}\n\n:host(.mobile-mode) .search-menu-container {\n max-width: 10rem;\n}\n\n:host(.mobile-mode) .search-bar-container {\n display: flex;\n justify-content: center;\n align-items: center;\n border-top: var(--ic-border-keyline-darken);\n height: 4rem;\n padding-left: var(--ic-space-md);\n padding-right: var(--ic-space-md);\n margin-left: calc(-1 * var(--section-container-margin));\n margin-right: calc(-1 * var(--section-container-margin));\n}\n\n/* x small */\n@media screen and (max-width: 576px) {\n :host .title-link {\n margin-right: var(--ic-space-xxxs);\n word-break: break-word;\n -webkit-hyphens: none;\n hyphens: none;\n }\n\n .top-panel-container {\n min-height: 2.5rem;\n }\n\n .search-bar-container {\n margin-top: 0;\n height: 3.5rem;\n padding-left: var(--ic-space-xs);\n padding-right: var(--ic-space-xs);\n }\n\n .menu-button-container {\n margin-left: var(--ic-space-sm);\n }\n\n slot[name=\"app-icon\"]::slotted(*) {\n width: 1.5em;\n height: 1.5em;\n }\n\n slot[name=\"toggle-icon\"] svg {\n width: 1.5em;\n height: 1.5em;\n }\n}\n\n@media (forced-colors: active) {\n :host .top-navigation {\n border-bottom: var(--ic-border-hc);\n }\n\n .app-status,\n .app-version {\n border: var(--ic-border-hc);\n }\n\n slot[name=\"app-icon\"]::slotted(*) {\n fill: currentcolor;\n }\n\n slot[name=\"toggle-icon\"] svg {\n fill: currentcolor;\n }\n}\n","import { Host, h, } from \"@stencil/core\";\nimport { IcBrandForegroundEnum, } from \"../../utils/types\";\nimport { checkResizeObserver, DEVICE_SIZES, getCurrentDeviceSize, getBrandForegroundAppearance, getSlot, onComponentPropUndefinedChange, onComponentRequiredPropUndefined, isSlotUsed, isEmptyString, isPropDefined, } from \"../../utils/helpers\";\n/**\n * @slot app-icon - Content will be rendered to left of app title. Anything that is slotted here will be hidden from screen readers.\n * @slot app-title - Handle routing by nesting a route in the app title.\n * @slot short-app-title - Handle routing by nesting a route in the short app title (to be displayed in place of app title on small screen sizes).\n * @slot search - Content will be rendered in search area to left of buttons.\n * @slot toggle-icon - Icon to be displayed on the button to toggle search slot content on smaller devices\n * @slot navigation - Content will be rendered in navigation panel.\n * @slot buttons - Content will be rendered to right of search bar.\n */\nexport class TopNavigation {\n constructor() {\n this.hasAppIcon = false;\n this.hasIconButtons = false;\n this.hasNavigation = false;\n this.hasSearchSlotContent = false;\n this.resizeObserver = null;\n this.searchBar = null;\n this.checkSlots = () => {\n this.hasAppIcon = isSlotUsed(this.el, \"app-icon\");\n this.hasNavigation = isSlotUsed(this.el, \"navigation\");\n this.hasIconButtons = isSlotUsed(this.el, \"buttons\");\n this.hasSearchSlotContent = isSlotUsed(this.el, \"search\");\n };\n this.initialiseSearchBar = () => {\n if (this.hasSearchSlotContent) {\n const slot = getSlot(this.el, \"search\");\n if ((slot === null || slot === void 0 ? void 0 : slot.tagName) === \"IC-SEARCH-BAR\") {\n this.searchBar = slot;\n }\n else if ((slot === null || slot === void 0 ? void 0 : slot.tagName) === \"FORM\") {\n this.searchBar = slot.querySelector(\"ic-search-bar\");\n }\n if (this.searchBar !== null) {\n this.searchBar.hideLabel = true;\n }\n }\n };\n this.menuButtonClick = () => {\n this.showNavMenu(true);\n };\n this.searchButtonMouseDownHandler = () => {\n this.searchButtonClick = true;\n };\n this.searchButtonClickHandler = () => {\n this.toggleSearchBar();\n this.searchButtonClick = false;\n };\n this.resizeObserverCallback = (currSize) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n if (currSize > this.customMobileBreakpoint) {\n this.showNavMenu(false);\n if (this.mobileSearchBarVisible) {\n this.toggleSearchBar();\n }\n }\n this.icTopNavResized.emit({\n size: currSize,\n });\n if (this.searchBar && document.activeElement === this.searchBar) {\n this.searchBar.setAttribute(\"hidden\", \"true\");\n //remove attribute again as this trigger a redraw & applies css\n this.searchBar.removeAttribute(\"hidden\");\n setTimeout(() => {\n this.searchBar.focus();\n }, 100);\n }\n }\n };\n this.runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.resizeObserverCallback(getCurrentDeviceSize());\n });\n this.resizeObserver.observe(this.el);\n };\n this.deviceSize = DEVICE_SIZES.XL;\n this.foregroundColor = getBrandForegroundAppearance();\n this.hasFullWidthSearchBar = false;\n this.mobileSearchBarVisible = false;\n this.mobileSearchHiddenOnBlur = false;\n this.navMenuVisible = false;\n this.searchButtonClick = false;\n this.searchValue = \"\";\n this.contentAligned = \"full-width\";\n this.customMobileBreakpoint = DEVICE_SIZES.L;\n this.href = \"/\";\n this.inline = false;\n this.shortAppTitle = \"\";\n this.status = \"\";\n this.theme = \"inherit\";\n this.version = \"\";\n this.appTitle = undefined;\n }\n watchPropHandler(newValue, oldValue) {\n //added for Gatsby rehydration issue where prop is initially undefined but then changes to actual value\n //this watch can be removed once Gatsby hydration issue is resolved\n onComponentPropUndefinedChange(oldValue, newValue, this.initialiseSearchBar);\n }\n disconnectedCallback() {\n var _a;\n (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();\n }\n componentWillLoad() {\n this.checkSlots();\n this.deviceSize = getCurrentDeviceSize();\n this.initialiseSearchBar();\n }\n componentDidLoad() {\n checkResizeObserver(this.runResizeObserver);\n !isSlotUsed(this.el, \"app-title\") &&\n onComponentRequiredPropUndefined([{ prop: this.appTitle, propName: \"app-title\" }], \"Top Navigation\");\n }\n componentWillRender() {\n this.checkSlots();\n }\n navBarMenuCloseHandler() {\n this.showNavMenu(false);\n this.el.shadowRoot.querySelector(\"#menu-button\").focus();\n }\n searchInputBlurHandler({ detail, }) {\n if (detail !== null) {\n if (this.mobileSearchBarVisible && !this.searchButtonClick) {\n //don't hide if blur was triggered by click on search button - let the click handler toggle the state\n this.toggleSearchBar();\n }\n this.searchValue = detail.value;\n }\n }\n searchValueChangeHandler({ detail }) {\n this.searchValue = detail.value;\n }\n brandChangeHandler({ detail }) {\n this.foregroundColor = detail.mode;\n }\n toggleSearchBar() {\n this.mobileSearchBarVisible = !this.mobileSearchBarVisible;\n if (this.searchBar !== null) {\n this.mobileSearchButtonEl.setAttribute(\"aria-label\", `${this.mobileSearchBarVisible ? \"Hide\" : \"Show\"} search`);\n this.hasFullWidthSearchBar = this.mobileSearchBarVisible;\n this.searchBar.fullWidth = this.mobileSearchBarVisible;\n if (this.mobileSearchBarVisible) {\n setTimeout(() => {\n this.searchBar.focus();\n }, 100);\n }\n }\n }\n showNavMenu(show) {\n this.navMenuVisible = show;\n (show ? this.icNavigationMenuOpened : this.icNavigationMenuClosed).emit();\n document.body.style.height = show ? \"100%\" : \"auto\";\n document.body.style.overflow = show ? \"hidden\" : \"auto\";\n }\n render() {\n const { appTitle, contentAligned, customMobileBreakpoint, deviceSize, el, foregroundColor, hasAppIcon, hasFullWidthSearchBar, hasIconButtons, hasNavigation, hasSearchSlotContent, href, inline, menuButtonClick, mobileSearchBarVisible, navMenuVisible, searchButtonClickHandler, searchButtonMouseDownHandler, shortAppTitle, status, version, theme, } = this;\n const hasStatus = status !== \"\";\n const hasVersion = version !== \"\";\n const hasMenuContent = hasNavigation || hasIconButtons || hasStatus || hasVersion;\n const searchButtonSize = deviceSize <= DEVICE_SIZES.S ? \"medium\" : \"large\";\n const hasTitle = appTitle !== \"\" && isPropDefined(appTitle);\n const overMobileBreakpoint = deviceSize <= customMobileBreakpoint;\n const appTitleVariant = overMobileBreakpoint\n ? deviceSize <= DEVICE_SIZES.S\n ? \"subtitle-small\"\n : \"h4\"\n : \"h3\";\n const mobileSearchButtonTitle = `${mobileSearchBarVisible ? \"Hide\" : \"Show\"} search`;\n const menuSize = deviceSize <= DEVICE_SIZES.S ? \"small\" : \"medium\";\n const shortAppTitleSlot = isSlotUsed(el, \"short-app-title\");\n const hasAppTitleSlot = isSlotUsed(el, \"app-title\");\n const Component = hasAppTitleSlot ? \"div\" : \"a\";\n const attrs = Component == \"a\" && {\n href: href,\n };\n return (h(Host, { class: {\n \"fullwidth-searchbar\": hasFullWidthSearchBar,\n \"mobile-mode\": overMobileBreakpoint,\n [IcBrandForegroundEnum.Dark]: foregroundColor === IcBrandForegroundEnum.Dark,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n } }, h(\"div\", { class: \"top-navigation\" }, h(\"ic-section-container\", { aligned: contentAligned, \"full-height\": true }, h(\"header\", { role: \"banner\" }, h(\"div\", { class: \"top-panel-container\" }, h(\"div\", { class: \"app-details-container\" }, (hasTitle || hasAppTitleSlot) && (h(Component, Object.assign({ class: \"title-link\" }, attrs), hasAppIcon && (h(\"div\", { class: \"app-icon-container\" }, h(\"slot\", { name: \"app-icon\" }))), deviceSize <= DEVICE_SIZES.S &&\n (!isEmptyString(shortAppTitle) || shortAppTitleSlot) ? (h(\"ic-typography\", { variant: \"subtitle-small\", \"aria-label\": (!hasAppTitleSlot || !shortAppTitleSlot) &&\n `${appTitle} (${shortAppTitle})` }, h(\"h1\", null, shortAppTitleSlot ? (h(\"slot\", { name: \"short-app-title\" })) : (shortAppTitle)))) : (h(\"ic-typography\", { variant: appTitleVariant }, h(\"h1\", { class: \"title-wrap\" }, hasAppTitleSlot ? (h(\"slot\", { name: \"app-title\" })) : (appTitle)))))), hasStatus && (h(\"div\", { class: \"app-status\" }, h(\"ic-typography\", { \"aria-label\": \"app tag\", variant: \"label-uppercase\", class: \"app-status-text\" }, status))), hasVersion && (h(\"div\", { class: \"app-version\" }, h(\"ic-typography\", { variant: \"label\", class: \"app-version-text\", \"aria-label\": \"app version\" }, version)))), (hasSearchSlotContent || hasMenuContent) && (h(\"div\", { class: \"search-menu-container\" }, h(\"div\", { class: \"search-actions-container\" }, !overMobileBreakpoint && h(\"slot\", { name: \"search\" }), hasSearchSlotContent && overMobileBreakpoint && (h(\"ic-button\", { id: \"search-toggle-button\", ref: (el) => (this.mobileSearchButtonEl = el), onMouseDown: searchButtonMouseDownHandler, variant: \"icon-tertiary\", monochrome: true, size: searchButtonSize, \"aria-label\": mobileSearchButtonTitle, theme: foregroundColor == IcBrandForegroundEnum.Light\n ? IcBrandForegroundEnum.Dark\n : IcBrandForegroundEnum.Light, onClick: searchButtonClickHandler }, h(\"slot\", { name: \"toggle-icon\" }, h(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", viewBox: \"0 0 24 24\", fill: \"#ffffff\" }, h(\"path\", { d: \"M0 0h24v24H0V0z\", fill: \"none\" }), h(\"path\", { d: \"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z\" }))))), hasIconButtons && !overMobileBreakpoint && (h(\"div\", { class: \"icon-buttons-container\" }, h(\"slot\", { name: \"buttons\" }))), hasMenuContent && overMobileBreakpoint && (h(\"div\", { class: \"menu-button-container\" }, h(\"span\", { id: \"navigation-landmark-button-text\", class: \"navigation-landmark-button-text\", \"aria-hidden\": \"true\" }, \"Main navigation button\"), h(\"nav\", { \"aria-labelledby\": \"navigation-landmark-button-text\", \"aria-hidden\": `${navMenuVisible}` }, h(\"ic-button\", { id: \"menu-button\", theme: foregroundColor == IcBrandForegroundEnum.Light\n ? IcBrandForegroundEnum.Dark\n : IcBrandForegroundEnum.Light, variant: \"secondary\", monochrome: true, \"aria-expanded\": \"false\", \"aria-haspopup\": \"true\", \"aria-label\": `Open ${hasNavigation ? \"navigation\" : \"app\"} menu`, size: menuSize, onClick: menuButtonClick }, \"Menu\", h(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", height: \"24px\", viewBox: \"0 0 24 24\", width: \"24px\", fill: \"#ffffff\", slot: \"left-icon\" }, h(\"path\", { d: \"M0 0h24v24H0V0z\", fill: \"none\" }), h(\"path\", { d: \"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z\" })))))))))), mobileSearchBarVisible && (h(\"div\", { class: \"search-bar-container\" }, h(\"slot\", { name: \"search\" }))), hasNavigation && !overMobileBreakpoint && (h(\"div\", { class: \"navigation-tabs\" }, h(\"span\", { id: \"navigation-landmark-text\", class: \"navigation-landmark-text\", \"aria-hidden\": \"true\" }, \"Main pages\"), h(\"nav\", { \"aria-labelledby\": \"navigation-landmark-text\", class: \"nav-panel-container\" }, h(\"ic-horizontal-scroll\", { monochrome: true, appearance: foregroundColor }, h(\"ul\", { class: \"navigation-item-list\", tabindex: \"-1\" }, h(\"slot\", { name: \"navigation\" }))))))))), navMenuVisible && (h(\"ic-navigation-menu\", { version: version, status: status, class: {\n [\"inline\"]: inline,\n } }, hasIconButtons && (h(\"div\", { class: \"menu-buttons-slot\", slot: \"buttons\" }, h(\"slot\", { name: \"buttons\" }))), h(\"ul\", { slot: \"navigation\" }, h(\"slot\", { name: \"navigation\" }))))));\n }\n static get is() { return \"ic-top-navigation\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-top-navigation.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-top-navigation.css\"]\n };\n }\n static get properties() {\n return {\n \"contentAligned\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcAlignment\",\n \"resolved\": \"\\\"center\\\" | \\\"full-width\\\" | \\\"left\\\"\",\n \"references\": {\n \"IcAlignment\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcAlignment\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The alignment of the top navigation content.\"\n },\n \"attribute\": \"content-aligned\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"full-width\\\"\"\n },\n \"customMobileBreakpoint\": {\n \"type\": \"number\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcDeviceSizes\",\n \"resolved\": \"0 | 1200 | 576 | 768 | 992\",\n \"references\": {\n \"IcDeviceSizes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcDeviceSizes\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Can set a custom breakpoint for the top navigation to switch to mobile mode.\\nMust be one of our specified breakpoints in px: `0`, `576`, `768`, `992`, `1200`.\"\n },\n \"attribute\": \"custom-mobile-breakpoint\",\n \"reflect\": false,\n \"defaultValue\": \"DEVICE_SIZES.L\"\n },\n \"href\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The URL to navigate to when the app title is clicked.\"\n },\n \"attribute\": \"href\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"/\\\"\"\n },\n \"inline\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the flyout navigation menu on small devices will be contained by the parent element.\"\n },\n \"attribute\": \"inline\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"shortAppTitle\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The short title of the app to be displayed at small screen sizes in place of the app title.\"\n },\n \"attribute\": \"short-app-title\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"status\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The status info to be displayed.\"\n },\n \"attribute\": \"status\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcThemeMode\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\"\",\n \"references\": {\n \"IcThemeMode\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeMode\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Sets the theme color to the dark or light theme color. \\\"inherit\\\" will set the color based on the system settings or ic-theme component.\"\n },\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n },\n \"version\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The version info to be displayed.\"\n },\n \"attribute\": \"version\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"appTitle\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The app title to be displayed. This is required, unless a slotted app title link is used.\"\n },\n \"attribute\": \"app-title\",\n \"reflect\": false\n }\n };\n }\n static get states() {\n return {\n \"deviceSize\": {},\n \"foregroundColor\": {},\n \"hasFullWidthSearchBar\": {},\n \"mobileSearchBarVisible\": {},\n \"mobileSearchHiddenOnBlur\": {},\n \"navMenuVisible\": {},\n \"searchButtonClick\": {},\n \"searchValue\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"icNavigationMenuClosed\",\n \"name\": \"icNavigationMenuClosed\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"- Emitted when the menu is closed.\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"icNavigationMenuOpened\",\n \"name\": \"icNavigationMenuOpened\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"- Emitted when the menu is opened.\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"icTopNavResized\",\n \"name\": \"icTopNavResized\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the top navigation is resized.\"\n },\n \"complexType\": {\n \"original\": \"{ size: number }\",\n \"resolved\": \"{ size: number; }\",\n \"references\": {}\n }\n }];\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"appTitle\",\n \"methodName\": \"watchPropHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"icNavigationMenuClose\",\n \"method\": \"navBarMenuCloseHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"icSearchBarBlur\",\n \"method\": \"searchInputBlurHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"icChange\",\n \"method\": \"searchValueChangeHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"brandChange\",\n \"method\": \"brandChangeHandler\",\n \"target\": \"document\",\n \"capture\": false,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-top-navigation.js.map\n"],"version":3}
|
@@ -20,6 +20,7 @@ const TreeItem = class {
|
|
20
20
|
this.treeItemTag = "IC-TREE-ITEM";
|
21
21
|
this.hostMutationObserver = null;
|
22
22
|
this.TOOLTIP = "ic-tooltip";
|
23
|
+
this.TREE_ITEM_LABEL_CLASS_SELECTOR = ".tree-item-label";
|
23
24
|
this.handleTreeItemClicked = () => {
|
24
25
|
if (this.isParent) {
|
25
26
|
this.expanded = !this.expanded;
|
@@ -73,24 +74,43 @@ const TreeItem = class {
|
|
73
74
|
}
|
74
75
|
};
|
75
76
|
this.truncateTreeItemLabel = (treeItem) => {
|
76
|
-
|
77
|
-
const
|
78
|
-
|
79
|
-
if (
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
77
|
+
let typographyEl = treeItem.shadowRoot.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR);
|
78
|
+
const slottedContent = treeItem.querySelector("[slot='router-item']");
|
79
|
+
let contentHeight = slottedContent === null || slottedContent === void 0 ? void 0 : slottedContent.scrollHeight;
|
80
|
+
if (!typographyEl) {
|
81
|
+
const newTypographyEl = document.createElement("ic-typography");
|
82
|
+
newTypographyEl.innerHTML = slottedContent.textContent;
|
83
|
+
newTypographyEl.classList.add("tree-item-label");
|
84
|
+
slottedContent.replaceChild(newTypographyEl, slottedContent.firstChild);
|
85
|
+
typographyEl = newTypographyEl;
|
86
|
+
}
|
87
|
+
else {
|
88
|
+
contentHeight = typographyEl.scrollHeight;
|
89
|
+
}
|
90
|
+
const tooltipAlreadyExists = !!(typographyEl === null || typographyEl === void 0 ? void 0 : typographyEl.closest(this.TOOLTIP));
|
91
|
+
const treeContent = treeItem.shadowRoot.querySelector(".tree-item-content") || slottedContent;
|
92
|
+
if (contentHeight > (treeContent === null || treeContent === void 0 ? void 0 : treeContent.clientHeight) && !tooltipAlreadyExists) {
|
93
|
+
const tooltipEl = document.createElement("ic-tooltip");
|
94
|
+
tooltipEl.setAttribute("target", this.el.id);
|
95
|
+
tooltipEl.setAttribute("label", typographyEl.textContent);
|
96
|
+
tooltipEl.setAttribute("placement", "right");
|
97
|
+
if (treeContent === slottedContent) {
|
98
|
+
treeContent.addEventListener("focus", () => this.handleDisplayTooltip(true));
|
99
|
+
treeContent.addEventListener("blur", () => this.handleDisplayTooltip(false));
|
100
|
+
tooltipEl.setAttribute("style", "overflow:hidden;");
|
101
|
+
typographyEl.setAttribute("style", "overflow:hidden;text-overflow:ellipsis;white-space:nowrap;");
|
102
|
+
}
|
103
|
+
else {
|
85
104
|
tooltipEl.classList.add("ic-tooltip-overflow");
|
86
|
-
|
87
|
-
treeContent.appendChild(tooltipEl);
|
88
|
-
tooltipEl.appendChild(typographyEl);
|
105
|
+
typographyEl.classList.add("ic-text-overflow");
|
89
106
|
}
|
107
|
+
treeContent.appendChild(tooltipEl);
|
108
|
+
tooltipEl.appendChild(typographyEl);
|
90
109
|
}
|
91
110
|
};
|
92
111
|
this.handleDisplayTooltip = (display) => {
|
93
|
-
const typographyEl = this.el.shadowRoot.querySelector(
|
112
|
+
const typographyEl = this.el.shadowRoot.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR) ||
|
113
|
+
this.el.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR);
|
94
114
|
const tooltip = typographyEl === null || typographyEl === void 0 ? void 0 : typographyEl.closest(this.TOOLTIP);
|
95
115
|
tooltip === null || tooltip === void 0 ? void 0 : tooltip.displayTooltip(display);
|
96
116
|
};
|
@@ -141,10 +161,15 @@ const TreeItem = class {
|
|
141
161
|
childList: true,
|
142
162
|
});
|
143
163
|
}
|
144
|
-
|
145
|
-
// Truncation is run here because truncateTreeItem prop gets applied on second render
|
146
|
-
// if being passed down from parent tree view
|
164
|
+
componentDidRender() {
|
147
165
|
this.truncateTreeItem && this.truncateTreeItemLabel(this.el);
|
166
|
+
if (this.expanded) {
|
167
|
+
this.childTreeItems.forEach((child) => {
|
168
|
+
child.truncateTreeItem && this.truncateTreeItemLabel(child);
|
169
|
+
});
|
170
|
+
}
|
171
|
+
}
|
172
|
+
componentDidUpdate() {
|
148
173
|
if (this.hasParentExpanded) {
|
149
174
|
this.childTreeItems.forEach((child) => {
|
150
175
|
child.truncateTreeItem && this.truncateTreeItemLabel(child);
|
@@ -1 +1 @@
|
|
1
|
-
{"file":"ic-tree-item.entry.cjs.js","mappings":"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","names":["removeDisabledFalse","isSlotUsed","onComponentRequiredPropUndefined","renderDynamicChildSlots","h","Host"],"sources":["src/components/ic-tree-item/ic-tree-item.css?tag=ic-tree-item&encapsulation=shadow","src/components/ic-tree-item/ic-tree-item.tsx"],"sourcesContent":[":host {\n display: block;\n border: none;\n position: relative;\n}\n\n:host .tree-item-content {\n display: flex;\n align-items: center;\n min-height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n padding: 0 var(--ic-space-xs);\n text-decoration: none;\n color: var(--ic-tree-view-text);\n\n --ic-typography-color: var(--ic-tree-view-text);\n}\n\n::slotted([slot=\"router-item\"]) {\n display: flex;\n align-items: center;\n min-height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n text-decoration: none;\n font-family: var(--ic-font-body-family);\n color: var(--ic-tree-view-text);\n padding: 0 var(--ic-space-xs) !important;\n}\n\n:host(.ic-tree-item-truncate) .tree-item-content,\n:host(.ic-tree-item-truncate) ::slotted([slot=\"router-item\"]) {\n height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n::slotted([slot=\"router-item\"].ic-tree-item-single) {\n padding-left: calc(var(--ic-space-xl) + var(--ic-space-xs)) !important;\n}\n\n:host .tree-item-content:focus,\n::slotted([slot=\"router-item\"]:focus) {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n transition: var(--ic-transition-duration-fast);\n outline: none;\n}\n\n:host(.ic-tree-item-focus-inset) .tree-item-content:focus,\n:host(.ic-tree-item-focus-inset) ::slotted([slot=\"router-item\"]:focus) {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n}\n\n:host(.ic-tree-item-focus-inset) .tree-item-content,\n:host(.ic-tree-item-focus-inset) ::slotted([slot=\"router-item\"]) {\n padding: 0 var(--ic-space-sm);\n}\n\n:host .tree-item-content:hover,\n::slotted([slot=\"router-item\"]:hover) {\n background-color: var(--ic-tree-view-hover) !important;\n cursor: pointer;\n}\n\n:host .tree-item-content:active,\n::slotted([slot=\"router-item\"]:active) {\n background-color: var(--ic-tree-view-pressed) !important;\n}\n\n:host(.ic-tree-item-selected) .tree-item-content,\n:host(.ic-tree-item-selected) ::slotted([slot=\"router-item\"]) {\n background-color: var(--ic-tree-view-selected) !important;\n}\n\n:host(.ic-tree-item-small) .tree-item-content,\n:host(.ic-tree-item-small) ::slotted([slot=\"router-item\"]) {\n min-height: var(--ic-space-xl);\n}\n\n:host(.ic-tree-item-large) .tree-item-content,\n:host(.ic-tree-item-large) ::slotted([slot=\"router-item\"]) {\n min-height: var(--ic-space-xxl);\n}\n\n:host(.ic-tree-item-truncate.ic-tree-item-small) .tree-item-content,\n:host(.ic-tree-item-truncate.ic-tree-item-small)\n ::slotted([slot=\"router-item\"]) {\n height: var(--ic-space-xl);\n}\n\n:host(.ic-tree-item-truncate.ic-tree-item-large) .tree-item-content,\n:host(.ic-tree-item-truncate.ic-tree-item-large)\n ::slotted([slot=\"router-item\"]) {\n height: var(--ic-space-xxl);\n}\n\n:host(.ic-tree-item-disabled) {\n pointer-events: none;\n}\n\n:host(.ic-tree-item-disabled) .tree-item-content,\n:host(.ic-tree-item-disabled) ::slotted([slot=\"icon\"]),\n:host(.ic-tree-item-disabled) ::slotted([slot=\"router-item\"]) {\n color: var(--ic-tree-view-text-disabled) !important;\n\n --ic-typography-color: var(--ic-tree-view-text-disabled) !important;\n\n fill: var(--ic-tree-view-icon-disabled);\n pointer-events: none;\n}\n\n:host .arrow-dropdown {\n color: var(--ic-tree-view-dropdown-arrow);\n margin-right: var(--ic-space-xs);\n}\n\n:host(.ic-tree-item-disabled) .arrow-dropdown {\n color: var(--ic-tree-view-dropdown-arrow-disabled);\n}\n\n:host(.ic-tree-item-small) .arrow-dropdown {\n margin-right: var(--ic-space-xxs);\n}\n\n:host .tree-item-expanded {\n transform: rotate(180deg);\n margin-top: calc(-1 * var(--ic-space-xxs));\n}\n\n:host .ic-tree-item-single {\n padding-left: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n:host(.ic-tree-item-small) .ic-tree-item-single {\n padding-left: calc(var(--ic-space-xl) + var(--ic-space-xxs));\n}\n\n.icon-container {\n min-width: var(--ic-space-lg);\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n margin: 0 var(--ic-space-xs) 0 0;\n}\n\n:host(.ic-tree-item-small) .icon-container {\n margin: 0 var(--ic-space-xxs) 0 0;\n}\n\n.ic-text-overflow {\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.ic-tooltip-overflow {\n overflow: hidden;\n}\n\n::slotted([slot=\"icon\"]) {\n fill: var(--ic-tree-view-icon);\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n ::slotted([slot=\"icon\"]) {\n fill: currentcolor;\n }\n\n :host .tree-item-content:hover,\n ::slotted([slot=\"router-item\"]:hover),\n :host .tree-item-content:active,\n ::slotted([slot=\"router-item\"]:active),\n :host(.ic-tree-item-selected) .tree-item-content,\n :host(.ic-tree-item-selected) ::slotted([slot=\"router-item\"]) {\n background-color: none !important;\n }\n\n :host(.ic-tree-item-disabled) .tree-item-content,\n :host(.ic-tree-item-disabled) .arrow-dropdown,\n :host(.ic-tree-item-disabled) ::slotted([slot=\"icon\"]),\n :host(.ic-tree-item-disabled) ::slotted([slot=\"router-item\"]) {\n color: GrayText !important;\n\n --ic-typography-color: GrayText !important;\n\n fill: GrayText !important;\n }\n\n :host .tree-item-content:focus,\n ::slotted([slot=\"router-item\"]:focus) {\n border: var(--ic-border-hc) !important;\n }\n\n :host(.ic-tree-item-selected) .tree-item-content,\n :host(.ic-tree-item-selected) ::slotted([slot=\"router-item\"]) {\n color: Highlight !important;\n\n --ic-typography-color: Highlight !important;\n }\n}\n","import {\n Component,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n Host,\n Watch,\n State,\n Listen,\n Method,\n} from \"@stencil/core\";\nimport { IcSizes, IcThemeMode } from \"../../utils/types\";\nimport {\n isSlotUsed,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\nimport arrowDropdown from \"../../assets/arrow-dropdown.svg\";\n\nlet treeItemIds = 0;\n\n/**\n * @slot label - Content is set as the tree item label.\n * @slot icon - Content is placed to the left of the label.\n * @slot router-item - Handle routing by nesting your routes in this slot.\n */\n@Component({\n tag: \"ic-tree-item\",\n styleUrl: \"ic-tree-item.css\",\n shadow: true,\n})\nexport class TreeItem {\n private treeItemId = `ic-tree-item-${treeItemIds++}`;\n private treeItemElement: HTMLElement;\n private treeItemTag = \"IC-TREE-ITEM\";\n private routerSlot: HTMLElement;\n private hostMutationObserver: MutationObserver = null;\n private TOOLTIP = \"ic-tooltip\";\n\n @Element() el: HTMLIcTreeItemElement;\n\n @State() childTreeItems: HTMLIcTreeItemElement[];\n\n /**\n * If `true`, the tree item appears in the disabled state.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the tree item appears in the expanded state.\n */\n @Prop({ mutable: true }) expanded: boolean = false;\n\n /**\n * @internal If `true`, the tree item will have an inset focus border.\n */\n @Prop() focusInset?: boolean = false;\n\n /**\n * @internal Determines if the parent tree item has been expanded.\n */\n @Prop({ mutable: true }) hasParentExpanded: boolean = false;\n\n /**\n * The URL that the tree item link points to. If set, the tree item will render as an \"a\" tag, otherwise it will render as a div.\n */\n @Prop() href?: string | undefined;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string = \"\";\n\n /**\n * @internal If `true`, the tree item is a parent of other tree items.\n */\n @Prop({ mutable: true }) isParent: boolean = false;\n\n /**\n * The label of the tree item.\n */\n @Prop() label: string = \"\";\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * If `true`, the tree item appears in the selected state.\n */\n @Prop({ mutable: true }) selected: boolean = false;\n @Watch(\"selected\")\n watchSelectedHandler(): void {\n if (this.selected) {\n this.icTreeItemSelected.emit({ id: this.el.id });\n }\n this.updateAriaLabel();\n }\n\n /**\n * @internal Determines the size of the tree item.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * If `true`, the tree item label will be truncated instead of text wrapping.\n */\n @Prop() truncateTreeItem?: boolean;\n\n /**\n * Emitted when tree item is selected.\n */\n @Event() icTreeItemSelected: EventEmitter<{ id: string }>;\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n\n this.childTreeItems = Array.from((this.el as HTMLElement).children).filter(\n (child) => child.tagName === this.treeItemTag\n ) as HTMLIcTreeItemElement[];\n\n if (this.childTreeItems.length > 0) {\n this.isParent = true;\n }\n }\n\n componentDidLoad(): void {\n this.setTreeItemPadding();\n\n this.updateAriaLabel();\n\n !isSlotUsed(this.el, \"label\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Tree item\"\n );\n\n this.hostMutationObserver = new MutationObserver((mutationList) =>\n renderDynamicChildSlots(mutationList, \"icon\", this)\n );\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n\n componentDidUpdate(): void {\n // Truncation is run here because truncateTreeItem prop gets applied on second render\n // if being passed down from parent tree view\n this.truncateTreeItem && this.truncateTreeItemLabel(this.el);\n\n if (this.hasParentExpanded) {\n this.childTreeItems.forEach((child: HTMLIcTreeItemElement) => {\n child.truncateTreeItem && this.truncateTreeItemLabel(child);\n });\n this.hasParentExpanded = false;\n }\n }\n\n @Listen(\"keydown\", {})\n handleKeyDown(ev: KeyboardEvent): void {\n if (ev.key === \"Enter\" || ev.key === \" \") {\n ev.stopImmediatePropagation();\n this.handleTreeItemClicked();\n }\n }\n\n /**\n * Sets focus on the native `input`.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.hasRouterSlot()) {\n this.routerSlot?.focus();\n } else {\n this.treeItemElement?.focus();\n }\n }\n\n private handleTreeItemClicked = (): void => {\n if (this.isParent) {\n this.expanded = !this.expanded;\n this.hasParentExpanded = true;\n }\n\n this.updateAriaLabel();\n this.selected = true;\n this.watchSelectedHandler();\n };\n\n /**\n * @internal Updates the aria-label of the tree item.\n */\n @Method()\n async updateAriaLabel(): Promise<void> {\n let ariaLabel;\n\n if (this.hasRouterSlot()) {\n ariaLabel = this.routerSlot.textContent;\n } else if (isSlotUsed(this.el, \"label\")) {\n ariaLabel = this.el.querySelector('[slot=\"label\"]').textContent;\n } else {\n ariaLabel = this.label;\n }\n\n if (this.isParent) {\n ariaLabel = `${ariaLabel}, triggers submenu, ${\n this.expanded ? \"expanded\" : \"collapsed\"\n }`;\n }\n\n if (this.el.parentElement) {\n const treeItems = Array.from(\n (this.el.parentElement as HTMLElement).children\n ).filter(\n (child) => child.tagName === this.treeItemTag\n ) as HTMLIcTreeItemElement[];\n\n const index = treeItems.indexOf(this.el) + 1;\n const parentChildren = treeItems.length;\n\n ariaLabel = `${ariaLabel}, ${index} of ${parentChildren}`;\n }\n\n if (this.selected) {\n ariaLabel = `${ariaLabel}, active`;\n }\n\n if (this.disabled) {\n ariaLabel = `${ariaLabel}, dimmed`;\n }\n\n if (this.hasRouterSlot()) {\n this.routerSlot.ariaLabel = ariaLabel;\n } else {\n this.treeItemElement.ariaLabel = ariaLabel;\n }\n }\n\n private setTreeItemPadding = () => {\n let level = 1;\n let parentElement = this.el.parentElement;\n const treeItemContent = this.el.shadowRoot.querySelector(\n \".tree-item-content\"\n ) as HTMLElement;\n\n const isSiblingOfParent = Array.from(parentElement.children)\n .map((sibling) => {\n if (\n sibling !== this.el &&\n !sibling.querySelector('[slot=\"router-item\"]') &&\n !sibling.querySelector('[slot=\"label\"]')\n ) {\n return sibling.children.length > 0;\n } else {\n return false;\n }\n })\n .includes(true);\n\n const isChild = parentElement.tagName === this.treeItemTag;\n\n const isRouterItem = this.hasRouterSlot();\n\n if (\n (isSiblingOfParent && !this.el.isParent) ||\n (isChild && !this.el.isParent)\n ) {\n if (isRouterItem) {\n this.routerSlot.classList.add(\"ic-tree-item-single\");\n } else {\n treeItemContent.classList.add(\"ic-tree-item-single\");\n }\n }\n\n while (parentElement) {\n if (parentElement.tagName === this.treeItemTag) {\n level++;\n if (!this.el.isParent && isSiblingOfParent) {\n treeItemContent.style.paddingLeft = `calc(var(--ic-space-xl) + ${\n level * 16\n }px)`;\n } else if (!this.el.isParent) {\n treeItemContent.style.paddingLeft = `calc(var(--ic-space-xs) + ${\n level * 24\n }px`;\n } else {\n treeItemContent.style.paddingLeft = `${level * 16}px`;\n }\n }\n parentElement = parentElement.parentElement;\n }\n };\n\n private truncateTreeItemLabel = (treeItem: HTMLIcTreeItemElement) => {\n const typographyEl: HTMLIcTypographyElement =\n treeItem.shadowRoot.querySelector(\".tree-item-label\");\n const tooltip = typographyEl?.closest(this.TOOLTIP);\n const treeContent: HTMLElement =\n treeItem.shadowRoot.querySelector(\".tree-item-content\");\n\n if (typographyEl?.scrollHeight > treeContent?.clientHeight) {\n typographyEl.classList.add(\"ic-text-overflow\");\n\n if (!tooltip) {\n const tooltipEl = document.createElement(\"ic-tooltip\");\n tooltipEl.setAttribute(\"target\", this.el.id);\n tooltipEl.setAttribute(\"label\", typographyEl.textContent);\n tooltipEl.classList.add(\"ic-tooltip-overflow\");\n tooltipEl.setAttribute(\"placement\", \"right\");\n treeContent.appendChild(tooltipEl);\n tooltipEl.appendChild(typographyEl);\n }\n }\n };\n\n private hasRouterSlot(): boolean {\n this.routerSlot = this.el.querySelector('[slot=\"router-item\"]');\n return !!this.routerSlot;\n }\n\n private handleDisplayTooltip = (display: boolean) => {\n const typographyEl: HTMLIcTypographyElement =\n this.el.shadowRoot.querySelector(\".tree-item-label\");\n const tooltip: HTMLIcTooltipElement = typographyEl?.closest(this.TOOLTIP);\n\n tooltip?.displayTooltip(display);\n };\n\n render() {\n const { disabled, label, selected, size, expanded, focusInset, theme } =\n this;\n\n const Component = this.href && !this.disabled ? \"a\" : \"div\";\n\n const attrs = Component == \"a\" && {\n href: this.href,\n hrefLang: this.hreflang,\n referrerPolicy: this.referrerpolicy,\n rel: this.rel,\n target: this.target,\n };\n\n return (\n <Host\n class={{\n \"ic-tree-item-disabled\": disabled,\n \"ic-tree-item-selected\": !disabled && selected,\n [`ic-tree-item-${size}`]: size !== \"medium\",\n [`ic-tree-item-focus-inset`]: focusInset,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n \"ic-tree-item-truncate\": this.truncateTreeItem,\n }}\n id={this.treeItemId}\n >\n {this.hasRouterSlot() ? (\n <slot name=\"router-item\" />\n ) : (\n <Component\n class={{\n \"tree-item-content\": true,\n }}\n tabIndex={disabled ? -1 : 0}\n onClick={this.handleTreeItemClicked}\n ref={(el) => (this.treeItemElement = el)}\n aria-disabled={disabled ? \"true\" : \"false\"}\n aria-live=\"polite\"\n {...attrs}\n onFocus={() => this.handleDisplayTooltip(true)}\n onBlur={() => this.handleDisplayTooltip(false)}\n >\n {this.isParent && (\n <span\n class={{\n [\"arrow-dropdown\"]: true,\n [\"tree-item-expanded\"]: expanded,\n }}\n aria-hidden=\"true\"\n innerHTML={arrowDropdown}\n />\n )}\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon-container\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography class=\"tree-item-label\">\n {isSlotUsed(this.el, \"label\") ? <slot name=\"label\" /> : label}\n </ic-typography>\n </Component>\n )}\n {expanded && (\n <div aria-hidden={`${!expanded}`}>\n <slot />\n </div>\n )}\n </Host>\n );\n }\n}\n"],"version":3}
|
1
|
+
{"file":"ic-tree-item.entry.cjs.js","mappings":";;;;;;;;;;;AAAA,MAAM,aAAa,GAAG,6pJAA6pJ;;ACsBnrJ,IAAI,WAAW,GAAG,CAAC,CAAC;MAYP,QAAQ;;;;QACX,eAAU,GAAG,gBAAgB,WAAW,EAAE,EAAE,CAAC;QAE7C,gBAAW,GAAG,cAAc,CAAC;QAE7B,yBAAoB,GAAqB,IAAI,CAAC;QAC9C,YAAO,GAAG,YAAY,CAAC;QACvB,mCAA8B,GAAG,kBAAkB,CAAC;QAyKpD,0BAAqB,GAAG;YAC9B,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAC/B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;aAC/B;YAED,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,oBAAoB,EAAE,CAAC;SAC7B,CAAC;QAmDM,uBAAkB,GAAG;YAC3B,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,aAAa,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;YAC1C,MAAM,eAAe,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CACtD,oBAAoB,CACN,CAAC;YAEjB,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;iBACzD,GAAG,CAAC,CAAC,OAAO;gBACX,IACE,OAAO,KAAK,IAAI,CAAC,EAAE;oBACnB,CAAC,OAAO,CAAC,aAAa,CAAC,sBAAsB,CAAC;oBAC9C,CAAC,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,EACxC;oBACA,OAAO,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;iBACpC;qBAAM;oBACL,OAAO,KAAK,CAAC;iBACd;aACF,CAAC;iBACD,QAAQ,CAAC,IAAI,CAAC,CAAC;YAElB,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,KAAK,IAAI,CAAC,WAAW,CAAC;YAE3D,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YAE1C,IACE,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ;iBACtC,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,EAC9B;gBACA,IAAI,YAAY,EAAE;oBAChB,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;iBACtD;qBAAM;oBACL,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;iBACtD;aACF;YAED,OAAO,aAAa,EAAE;gBACpB,IAAI,aAAa,CAAC,OAAO,KAAK,IAAI,CAAC,WAAW,EAAE;oBAC9C,KAAK,EAAE,CAAC;oBACR,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,IAAI,iBAAiB,EAAE;wBAC1C,eAAe,CAAC,KAAK,CAAC,WAAW,GAAG,6BAClC,KAAK,GAAG,EACV,KAAK,CAAC;qBACP;yBAAM,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE;wBAC5B,eAAe,CAAC,KAAK,CAAC,WAAW,GAAG,6BAClC,KAAK,GAAG,EACV,IAAI,CAAC;qBACN;yBAAM;wBACL,eAAe,CAAC,KAAK,CAAC,WAAW,GAAG,GAAG,KAAK,GAAG,EAAE,IAAI,CAAC;qBACvD;iBACF;gBACD,aAAa,GAAG,aAAa,CAAC,aAAa,CAAC;aAC7C;SACF,CAAC;QAEM,0BAAqB,GAAG,CAAC,QAA+B;YAC9D,IAAI,YAAY,GACd,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;YACzE,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;YACtE,IAAI,aAAa,GAAG,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,YAAY,CAAC;YAEjD,IAAI,CAAC,YAAY,EAAE;gBACjB,MAAM,eAAe,GAAG,QAAQ,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;gBAChE,eAAe,CAAC,SAAS,GAAG,cAAc,CAAC,WAAW,CAAC;gBACvD,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;gBACjD,cAAc,CAAC,YAAY,CAAC,eAAe,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;gBACxE,YAAY,GAAG,eAAe,CAAC;aAChC;iBAAM;gBACL,aAAa,GAAG,YAAY,CAAC,YAAY,CAAC;aAC3C;YAED,MAAM,oBAAoB,GAAG,CAAC,EAAC,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA,CAAC;YACnE,MAAM,WAAW,GACf,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,oBAAoB,CAAC,IAAI,cAAc,CAAC;YAE5E,IAAI,aAAa,IAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,YAAY,CAAA,IAAI,CAAC,oBAAoB,EAAE;gBACtE,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;gBACvD,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC7C,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;gBAC1D,SAAS,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gBAE7C,IAAI,WAAW,KAAK,cAAc,EAAE;oBAClC,WAAW,CAAC,gBAAgB,CAAC,OAAO,EAAE,MACpC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAChC,CAAC;oBACF,WAAW,CAAC,gBAAgB,CAAC,MAAM,EAAE,MACnC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CACjC,CAAC;oBACF,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;oBACpD,YAAY,CAAC,YAAY,CACvB,OAAO,EACP,4DAA4D,CAC7D,CAAC;iBACH;qBAAM;oBACL,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;oBAC/C,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;iBAChD;gBAED,WAAW,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBACnC,SAAS,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;aACrC;SACF,CAAC;QAOM,yBAAoB,GAAG,CAAC,OAAgB;YAC9C,MAAM,YAAY,GAChB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,8BAA8B,CAAC;gBACrE,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;YAC7D,MAAM,OAAO,GAAyB,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAE1E,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,CAAC,OAAO,CAAC,CAAC;SAClC,CAAC;;wBA/U2B,KAAK;wBASW,KAAK;0BAKnB,KAAK;iCAKkB,KAAK;;wBAU/B,EAAE;wBAKe,KAAK;qBAK1B,EAAE;;;wBAemB,KAAK;oBAYzB,QAAQ;;qBAUH,SAAS;;;IA1EvC,oBAAoB;QAClBA,2BAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;KAC7C;IAoDD,oBAAoB;QAClB,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;SAClD;QACD,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;IA2BD,oBAAoB;;QAClB,MAAA,IAAI,CAAC,oBAAoB,0CAAE,UAAU,EAAE,CAAC;KACzC;IAED,iBAAiB;QACfA,2BAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAE5C,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,IAAI,CAAE,IAAI,CAAC,EAAkB,CAAC,QAAQ,CAAC,CAAC,MAAM,CACxE,CAAC,KAAK,KAAK,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,WAAW,CACnB,CAAC;QAE7B,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;YAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;SACtB;KACF;IAED,gBAAgB;QACd,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,CAAC,eAAe,EAAE,CAAC;QAEvB,CAACC,kBAAU,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC;YAC3BC,wCAAgC,CAC9B,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EACzC,WAAW,CACZ,CAAC;QAEJ,IAAI,CAAC,oBAAoB,GAAG,IAAI,gBAAgB,CAAC,CAAC,YAAY,KAC5DC,+BAAuB,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,CACpD,CAAC;QACF,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;YACzC,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;KACJ;IACD,kBAAkB;QAChB,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7D,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,KAA4B;gBACvD,KAAK,CAAC,gBAAgB,IAAI,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;aAC7D,CAAC,CAAC;SACJ;KACF;IAED,kBAAkB;QAChB,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,KAA4B;gBACvD,KAAK,CAAC,gBAAgB,IAAI,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;aAC7D,CAAC,CAAC;YACH,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;SAChC;KACF;IAGD,aAAa,CAAC,EAAiB;QAC7B,IAAI,EAAE,CAAC,GAAG,KAAK,OAAO,IAAI,EAAE,CAAC,GAAG,KAAK,GAAG,EAAE;YACxC,EAAE,CAAC,wBAAwB,EAAE,CAAC;YAC9B,IAAI,CAAC,qBAAqB,EAAE,CAAC;SAC9B;KACF;;;;IAMD,MAAM,QAAQ;;QACZ,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE;YACxB,MAAA,IAAI,CAAC,UAAU,0CAAE,KAAK,EAAE,CAAC;SAC1B;aAAM;YACL,MAAA,IAAI,CAAC,eAAe,0CAAE,KAAK,EAAE,CAAC;SAC/B;KACF;;;;IAiBD,MAAM,eAAe;QACnB,IAAI,SAAS,CAAC;QAEd,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE;YACxB,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;SACzC;aAAM,IAAIF,kBAAU,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE;YACvC,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,WAAW,CAAC;SACjE;aAAM;YACL,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;SACxB;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,SAAS,GAAG,GAAG,SAAS,uBACtB,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,WAC/B,EAAE,CAAC;SACJ;QAED,IAAI,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;YACzB,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CACzB,IAAI,CAAC,EAAE,CAAC,aAA6B,CAAC,QAAQ,CAChD,CAAC,MAAM,CACN,CAAC,KAAK,KAAK,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,WAAW,CACnB,CAAC;YAE7B,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;YAC7C,MAAM,cAAc,GAAG,SAAS,CAAC,MAAM,CAAC;YAExC,SAAS,GAAG,GAAG,SAAS,KAAK,KAAK,OAAO,cAAc,EAAE,CAAC;SAC3D;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,SAAS,GAAG,GAAG,SAAS,UAAU,CAAC;SACpC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,SAAS,GAAG,GAAG,SAAS,UAAU,CAAC;SACpC;QAED,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE;YACxB,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,SAAS,CAAC;SACvC;aAAM;YACL,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,SAAS,CAAC;SAC5C;KACF;IAyGO,aAAa;QACnB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;QAChE,OAAO,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;KAC1B;IAWD,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,GACpE,IAAI,CAAC;QAEP,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,GAAG,GAAG,KAAK,CAAC;QAE5D,MAAM,KAAK,GAAG,SAAS,IAAI,GAAG,IAAI;YAChC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;QAEF,QACEG,QAACC,UAAI,IACH,KAAK,EAAE;gBACL,uBAAuB,EAAE,QAAQ;gBACjC,uBAAuB,EAAE,CAAC,QAAQ,IAAI,QAAQ;gBAC9C,CAAC,gBAAgB,IAAI,EAAE,GAAG,IAAI,KAAK,QAAQ;gBAC3C,CAAC,0BAA0B,GAAG,UAAU;gBACxC,CAAC,YAAY,KAAK,EAAE,GAAG,KAAK,KAAK,SAAS;gBAC1C,uBAAuB,EAAE,IAAI,CAAC,gBAAgB;aAC/C,EACD,EAAE,EAAE,IAAI,CAAC,UAAU,IAElB,IAAI,CAAC,aAAa,EAAE,IACnBD,kBAAM,IAAI,EAAC,aAAa,GAAG,KAE3BA,QAAC,SAAS,kBACR,KAAK,EAAE;gBACL,mBAAmB,EAAE,IAAI;aAC1B,EACD,QAAQ,EAAE,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,EAC3B,OAAO,EAAE,IAAI,CAAC,qBAAqB,EACnC,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC,mBACzB,QAAQ,GAAG,MAAM,GAAG,OAAO,eAChC,QAAQ,IACd,KAAK,IACT,OAAO,EAAE,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAC9C,MAAM,EAAE,MAAM,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAE7C,IAAI,CAAC,QAAQ,KACZA,kBACE,KAAK,EAAE;gBACL,CAAC,gBAAgB,GAAG,IAAI;gBACxB,CAAC,oBAAoB,GAAG,QAAQ;aACjC,iBACW,MAAM,EAClB,SAAS,EAAE,aAAa,GACxB,CACH,EACAH,kBAAU,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,KAC1BG,iBAAK,KAAK,EAAC,gBAAgB,IACzBA,kBAAM,IAAI,EAAC,MAAM,GAAG,CAChB,CACP,EACDA,2BAAe,KAAK,EAAC,iBAAiB,IACnCH,kBAAU,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,GAAGG,kBAAM,IAAI,EAAC,OAAO,GAAG,GAAG,KAAK,CAC/C,CACN,CACb,EACA,QAAQ,KACPA,gCAAkB,GAAG,CAAC,QAAQ,EAAE,IAC9BA,qBAAQ,CACJ,CACP,CACI,EACP;KACH;;;;;;;;;;;","names":["removeDisabledFalse","isSlotUsed","onComponentRequiredPropUndefined","renderDynamicChildSlots","h","Host"],"sources":["src/components/ic-tree-item/ic-tree-item.css?tag=ic-tree-item&encapsulation=shadow","src/components/ic-tree-item/ic-tree-item.tsx"],"sourcesContent":[":host {\n display: block;\n border: none;\n position: relative;\n}\n\n:host .tree-item-content {\n display: flex;\n align-items: center;\n min-height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n padding: 0 var(--ic-space-xs);\n text-decoration: none;\n color: var(--ic-tree-view-text);\n\n --ic-typography-color: var(--ic-tree-view-text);\n}\n\n::slotted([slot=\"router-item\"]) {\n display: flex;\n align-items: center;\n min-height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n text-decoration: none;\n font-family: var(--ic-font-body-family);\n color: var(--ic-tree-view-text);\n padding: 0 var(--ic-space-xs) !important;\n}\n\n:host(.ic-tree-item-truncate) .tree-item-content,\n:host(.ic-tree-item-truncate) ::slotted([slot=\"router-item\"]) {\n height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n::slotted([slot=\"router-item\"].ic-tree-item-single) {\n padding-left: calc(var(--ic-space-xl) + var(--ic-space-xs)) !important;\n}\n\n:host .tree-item-content:focus,\n::slotted([slot=\"router-item\"]:focus) {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n transition: var(--ic-transition-duration-fast);\n outline: none;\n}\n\n:host(.ic-tree-item-focus-inset) .tree-item-content:focus,\n:host(.ic-tree-item-focus-inset) ::slotted([slot=\"router-item\"]:focus) {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n}\n\n:host(.ic-tree-item-focus-inset) .tree-item-content,\n:host(.ic-tree-item-focus-inset) ::slotted([slot=\"router-item\"]) {\n padding: 0 var(--ic-space-sm);\n}\n\n:host .tree-item-content:hover,\n::slotted([slot=\"router-item\"]:hover) {\n background-color: var(--ic-tree-view-hover) !important;\n cursor: pointer;\n}\n\n:host .tree-item-content:active,\n::slotted([slot=\"router-item\"]:active) {\n background-color: var(--ic-tree-view-pressed) !important;\n}\n\n:host(.ic-tree-item-selected) .tree-item-content,\n:host(.ic-tree-item-selected) ::slotted([slot=\"router-item\"]) {\n background-color: var(--ic-tree-view-selected) !important;\n}\n\n:host(.ic-tree-item-small) .tree-item-content,\n:host(.ic-tree-item-small) ::slotted([slot=\"router-item\"]) {\n min-height: var(--ic-space-xl);\n}\n\n:host(.ic-tree-item-large) .tree-item-content,\n:host(.ic-tree-item-large) ::slotted([slot=\"router-item\"]) {\n min-height: var(--ic-space-xxl);\n}\n\n:host(.ic-tree-item-truncate.ic-tree-item-small) .tree-item-content,\n:host(.ic-tree-item-truncate.ic-tree-item-small)\n ::slotted([slot=\"router-item\"]) {\n height: var(--ic-space-xl);\n}\n\n:host(.ic-tree-item-truncate.ic-tree-item-large) .tree-item-content,\n:host(.ic-tree-item-truncate.ic-tree-item-large)\n ::slotted([slot=\"router-item\"]) {\n height: var(--ic-space-xxl);\n}\n\n:host(.ic-tree-item-disabled) {\n pointer-events: none;\n}\n\n:host(.ic-tree-item-disabled) .tree-item-content,\n:host(.ic-tree-item-disabled) ::slotted([slot=\"icon\"]),\n:host(.ic-tree-item-disabled) ::slotted([slot=\"router-item\"]) {\n color: var(--ic-tree-view-text-disabled) !important;\n\n --ic-typography-color: var(--ic-tree-view-text-disabled) !important;\n\n fill: var(--ic-tree-view-icon-disabled);\n pointer-events: none;\n}\n\n:host .arrow-dropdown {\n color: var(--ic-tree-view-dropdown-arrow);\n margin-right: var(--ic-space-xs);\n}\n\n:host(.ic-tree-item-disabled) .arrow-dropdown {\n color: var(--ic-tree-view-dropdown-arrow-disabled);\n}\n\n:host(.ic-tree-item-small) .arrow-dropdown {\n margin-right: var(--ic-space-xxs);\n}\n\n:host .tree-item-expanded {\n transform: rotate(180deg);\n margin-top: calc(-1 * var(--ic-space-xxs));\n}\n\n:host .ic-tree-item-single {\n padding-left: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n:host(.ic-tree-item-small) .ic-tree-item-single {\n padding-left: calc(var(--ic-space-xl) + var(--ic-space-xxs));\n}\n\n.icon-container {\n min-width: var(--ic-space-lg);\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n margin: 0 var(--ic-space-xs) 0 0;\n}\n\n:host(.ic-tree-item-small) .icon-container {\n margin: 0 var(--ic-space-xxs) 0 0;\n}\n\n.ic-text-overflow {\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.ic-tooltip-overflow {\n overflow: hidden;\n}\n\n::slotted([slot=\"icon\"]) {\n fill: var(--ic-tree-view-icon);\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n ::slotted([slot=\"icon\"]) {\n fill: currentcolor;\n }\n\n :host .tree-item-content:hover,\n ::slotted([slot=\"router-item\"]:hover),\n :host .tree-item-content:active,\n ::slotted([slot=\"router-item\"]:active),\n :host(.ic-tree-item-selected) .tree-item-content,\n :host(.ic-tree-item-selected) ::slotted([slot=\"router-item\"]) {\n background-color: none !important;\n }\n\n :host(.ic-tree-item-disabled) .tree-item-content,\n :host(.ic-tree-item-disabled) .arrow-dropdown,\n :host(.ic-tree-item-disabled) ::slotted([slot=\"icon\"]),\n :host(.ic-tree-item-disabled) ::slotted([slot=\"router-item\"]) {\n color: GrayText !important;\n\n --ic-typography-color: GrayText !important;\n\n fill: GrayText !important;\n }\n\n :host .tree-item-content:focus,\n ::slotted([slot=\"router-item\"]:focus) {\n border: var(--ic-border-hc) !important;\n }\n\n :host(.ic-tree-item-selected) .tree-item-content,\n :host(.ic-tree-item-selected) ::slotted([slot=\"router-item\"]) {\n color: Highlight !important;\n\n --ic-typography-color: Highlight !important;\n }\n}\n","import {\n Component,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n Host,\n Watch,\n State,\n Listen,\n Method,\n} from \"@stencil/core\";\nimport { IcSizes, IcThemeMode } from \"../../utils/types\";\nimport {\n isSlotUsed,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\nimport arrowDropdown from \"../../assets/arrow-dropdown.svg\";\n\nlet treeItemIds = 0;\n\n/**\n * @slot label - Content is set as the tree item label.\n * @slot icon - Content is placed to the left of the label.\n * @slot router-item - Handle routing by nesting your routes in this slot.\n */\n@Component({\n tag: \"ic-tree-item\",\n styleUrl: \"ic-tree-item.css\",\n shadow: true,\n})\nexport class TreeItem {\n private treeItemId = `ic-tree-item-${treeItemIds++}`;\n private treeItemElement: HTMLElement;\n private treeItemTag = \"IC-TREE-ITEM\";\n private routerSlot: HTMLElement;\n private hostMutationObserver: MutationObserver = null;\n private TOOLTIP = \"ic-tooltip\";\n private TREE_ITEM_LABEL_CLASS_SELECTOR = \".tree-item-label\";\n\n @Element() el: HTMLIcTreeItemElement;\n\n @State() childTreeItems: HTMLIcTreeItemElement[];\n\n /**\n * If `true`, the tree item appears in the disabled state.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the tree item appears in the expanded state.\n */\n @Prop({ mutable: true }) expanded: boolean = false;\n\n /**\n * @internal If `true`, the tree item will have an inset focus border.\n */\n @Prop() focusInset?: boolean = false;\n\n /**\n * @internal Determines if the parent tree item has been expanded.\n */\n @Prop({ mutable: true }) hasParentExpanded: boolean = false;\n\n /**\n * The URL that the tree item link points to. If set, the tree item will render as an \"a\" tag, otherwise it will render as a div.\n */\n @Prop() href?: string | undefined;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string = \"\";\n\n /**\n * @internal If `true`, the tree item is a parent of other tree items.\n */\n @Prop({ mutable: true }) isParent: boolean = false;\n\n /**\n * The label of the tree item.\n */\n @Prop() label: string = \"\";\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * If `true`, the tree item appears in the selected state.\n */\n @Prop({ mutable: true }) selected: boolean = false;\n @Watch(\"selected\")\n watchSelectedHandler(): void {\n if (this.selected) {\n this.icTreeItemSelected.emit({ id: this.el.id });\n }\n this.updateAriaLabel();\n }\n\n /**\n * @internal Determines the size of the tree item.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * If `true`, the tree item label will be truncated instead of text wrapping.\n */\n @Prop() truncateTreeItem?: boolean;\n\n /**\n * Emitted when tree item is selected.\n */\n @Event() icTreeItemSelected: EventEmitter<{ id: string }>;\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n\n this.childTreeItems = Array.from((this.el as HTMLElement).children).filter(\n (child) => child.tagName === this.treeItemTag\n ) as HTMLIcTreeItemElement[];\n\n if (this.childTreeItems.length > 0) {\n this.isParent = true;\n }\n }\n\n componentDidLoad(): void {\n this.setTreeItemPadding();\n\n this.updateAriaLabel();\n\n !isSlotUsed(this.el, \"label\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Tree item\"\n );\n\n this.hostMutationObserver = new MutationObserver((mutationList) =>\n renderDynamicChildSlots(mutationList, \"icon\", this)\n );\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n componentDidRender(): void {\n this.truncateTreeItem && this.truncateTreeItemLabel(this.el);\n if (this.expanded) {\n this.childTreeItems.forEach((child: HTMLIcTreeItemElement) => {\n child.truncateTreeItem && this.truncateTreeItemLabel(child);\n });\n }\n }\n\n componentDidUpdate(): void {\n if (this.hasParentExpanded) {\n this.childTreeItems.forEach((child: HTMLIcTreeItemElement) => {\n child.truncateTreeItem && this.truncateTreeItemLabel(child);\n });\n this.hasParentExpanded = false;\n }\n }\n\n @Listen(\"keydown\", {})\n handleKeyDown(ev: KeyboardEvent): void {\n if (ev.key === \"Enter\" || ev.key === \" \") {\n ev.stopImmediatePropagation();\n this.handleTreeItemClicked();\n }\n }\n\n /**\n * Sets focus on the native `input`.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.hasRouterSlot()) {\n this.routerSlot?.focus();\n } else {\n this.treeItemElement?.focus();\n }\n }\n\n private handleTreeItemClicked = (): void => {\n if (this.isParent) {\n this.expanded = !this.expanded;\n this.hasParentExpanded = true;\n }\n\n this.updateAriaLabel();\n this.selected = true;\n this.watchSelectedHandler();\n };\n\n /**\n * @internal Updates the aria-label of the tree item.\n */\n @Method()\n async updateAriaLabel(): Promise<void> {\n let ariaLabel;\n\n if (this.hasRouterSlot()) {\n ariaLabel = this.routerSlot.textContent;\n } else if (isSlotUsed(this.el, \"label\")) {\n ariaLabel = this.el.querySelector('[slot=\"label\"]').textContent;\n } else {\n ariaLabel = this.label;\n }\n\n if (this.isParent) {\n ariaLabel = `${ariaLabel}, triggers submenu, ${\n this.expanded ? \"expanded\" : \"collapsed\"\n }`;\n }\n\n if (this.el.parentElement) {\n const treeItems = Array.from(\n (this.el.parentElement as HTMLElement).children\n ).filter(\n (child) => child.tagName === this.treeItemTag\n ) as HTMLIcTreeItemElement[];\n\n const index = treeItems.indexOf(this.el) + 1;\n const parentChildren = treeItems.length;\n\n ariaLabel = `${ariaLabel}, ${index} of ${parentChildren}`;\n }\n\n if (this.selected) {\n ariaLabel = `${ariaLabel}, active`;\n }\n\n if (this.disabled) {\n ariaLabel = `${ariaLabel}, dimmed`;\n }\n\n if (this.hasRouterSlot()) {\n this.routerSlot.ariaLabel = ariaLabel;\n } else {\n this.treeItemElement.ariaLabel = ariaLabel;\n }\n }\n\n private setTreeItemPadding = () => {\n let level = 1;\n let parentElement = this.el.parentElement;\n const treeItemContent = this.el.shadowRoot.querySelector(\n \".tree-item-content\"\n ) as HTMLElement;\n\n const isSiblingOfParent = Array.from(parentElement.children)\n .map((sibling) => {\n if (\n sibling !== this.el &&\n !sibling.querySelector('[slot=\"router-item\"]') &&\n !sibling.querySelector('[slot=\"label\"]')\n ) {\n return sibling.children.length > 0;\n } else {\n return false;\n }\n })\n .includes(true);\n\n const isChild = parentElement.tagName === this.treeItemTag;\n\n const isRouterItem = this.hasRouterSlot();\n\n if (\n (isSiblingOfParent && !this.el.isParent) ||\n (isChild && !this.el.isParent)\n ) {\n if (isRouterItem) {\n this.routerSlot.classList.add(\"ic-tree-item-single\");\n } else {\n treeItemContent.classList.add(\"ic-tree-item-single\");\n }\n }\n\n while (parentElement) {\n if (parentElement.tagName === this.treeItemTag) {\n level++;\n if (!this.el.isParent && isSiblingOfParent) {\n treeItemContent.style.paddingLeft = `calc(var(--ic-space-xl) + ${\n level * 16\n }px)`;\n } else if (!this.el.isParent) {\n treeItemContent.style.paddingLeft = `calc(var(--ic-space-xs) + ${\n level * 24\n }px`;\n } else {\n treeItemContent.style.paddingLeft = `${level * 16}px`;\n }\n }\n parentElement = parentElement.parentElement;\n }\n };\n\n private truncateTreeItemLabel = (treeItem: HTMLIcTreeItemElement) => {\n let typographyEl: HTMLIcTypographyElement =\n treeItem.shadowRoot.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR);\n const slottedContent = treeItem.querySelector(\"[slot='router-item']\");\n let contentHeight = slottedContent?.scrollHeight;\n\n if (!typographyEl) {\n const newTypographyEl = document.createElement(\"ic-typography\");\n newTypographyEl.innerHTML = slottedContent.textContent;\n newTypographyEl.classList.add(\"tree-item-label\");\n slottedContent.replaceChild(newTypographyEl, slottedContent.firstChild);\n typographyEl = newTypographyEl;\n } else {\n contentHeight = typographyEl.scrollHeight;\n }\n\n const tooltipAlreadyExists = !!typographyEl?.closest(this.TOOLTIP);\n const treeContent =\n treeItem.shadowRoot.querySelector(\".tree-item-content\") || slottedContent;\n\n if (contentHeight > treeContent?.clientHeight && !tooltipAlreadyExists) {\n const tooltipEl = document.createElement(\"ic-tooltip\");\n tooltipEl.setAttribute(\"target\", this.el.id);\n tooltipEl.setAttribute(\"label\", typographyEl.textContent);\n tooltipEl.setAttribute(\"placement\", \"right\");\n\n if (treeContent === slottedContent) {\n treeContent.addEventListener(\"focus\", () =>\n this.handleDisplayTooltip(true)\n );\n treeContent.addEventListener(\"blur\", () =>\n this.handleDisplayTooltip(false)\n );\n tooltipEl.setAttribute(\"style\", \"overflow:hidden;\");\n typographyEl.setAttribute(\n \"style\",\n \"overflow:hidden;text-overflow:ellipsis;white-space:nowrap;\"\n );\n } else {\n tooltipEl.classList.add(\"ic-tooltip-overflow\");\n typographyEl.classList.add(\"ic-text-overflow\");\n }\n\n treeContent.appendChild(tooltipEl);\n tooltipEl.appendChild(typographyEl);\n }\n };\n\n private hasRouterSlot(): boolean {\n this.routerSlot = this.el.querySelector('[slot=\"router-item\"]');\n return !!this.routerSlot;\n }\n\n private handleDisplayTooltip = (display: boolean) => {\n const typographyEl: HTMLIcTypographyElement =\n this.el.shadowRoot.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR) ||\n this.el.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR);\n const tooltip: HTMLIcTooltipElement = typographyEl?.closest(this.TOOLTIP);\n\n tooltip?.displayTooltip(display);\n };\n\n render() {\n const { disabled, label, selected, size, expanded, focusInset, theme } =\n this;\n\n const Component = this.href && !this.disabled ? \"a\" : \"div\";\n\n const attrs = Component == \"a\" && {\n href: this.href,\n hrefLang: this.hreflang,\n referrerPolicy: this.referrerpolicy,\n rel: this.rel,\n target: this.target,\n };\n\n return (\n <Host\n class={{\n \"ic-tree-item-disabled\": disabled,\n \"ic-tree-item-selected\": !disabled && selected,\n [`ic-tree-item-${size}`]: size !== \"medium\",\n [`ic-tree-item-focus-inset`]: focusInset,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n \"ic-tree-item-truncate\": this.truncateTreeItem,\n }}\n id={this.treeItemId}\n >\n {this.hasRouterSlot() ? (\n <slot name=\"router-item\" />\n ) : (\n <Component\n class={{\n \"tree-item-content\": true,\n }}\n tabIndex={disabled ? -1 : 0}\n onClick={this.handleTreeItemClicked}\n ref={(el) => (this.treeItemElement = el)}\n aria-disabled={disabled ? \"true\" : \"false\"}\n aria-live=\"polite\"\n {...attrs}\n onFocus={() => this.handleDisplayTooltip(true)}\n onBlur={() => this.handleDisplayTooltip(false)}\n >\n {this.isParent && (\n <span\n class={{\n [\"arrow-dropdown\"]: true,\n [\"tree-item-expanded\"]: expanded,\n }}\n aria-hidden=\"true\"\n innerHTML={arrowDropdown}\n />\n )}\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon-container\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography class=\"tree-item-label\">\n {isSlotUsed(this.el, \"label\") ? <slot name=\"label\" /> : label}\n </ic-typography>\n </Component>\n )}\n {expanded && (\n <div aria-hidden={`${!expanded}`}>\n <slot />\n </div>\n )}\n </Host>\n );\n }\n}\n"],"version":3}
|
@@ -159,13 +159,17 @@ const TreeView = class {
|
|
159
159
|
(_a = this.el) === null || _a === void 0 ? void 0 : _a.removeEventListener("slotchange", this.setTreeItems);
|
160
160
|
(_b = this.hostMutationObserver) === null || _b === void 0 ? void 0 : _b.disconnect();
|
161
161
|
}
|
162
|
-
|
162
|
+
componentWillLoad() {
|
163
163
|
this.setTreeItems();
|
164
164
|
this.watchSizeHandler();
|
165
165
|
this.watchFocusInsetHandler();
|
166
166
|
this.watchThemeHandler();
|
167
167
|
this.watchTruncateTreeItemsHandler();
|
168
|
+
}
|
169
|
+
componentDidRender() {
|
168
170
|
this.truncateHeading && this.truncateTreeViewHeading();
|
171
|
+
}
|
172
|
+
componentDidLoad() {
|
169
173
|
this.addSlotChangeListener();
|
170
174
|
this.hostMutationObserver = new MutationObserver((mutationList) => helpers.renderDynamicChildSlots(mutationList, "icon", this));
|
171
175
|
this.hostMutationObserver.observe(this.el, {
|
@@ -194,7 +198,7 @@ const TreeView = class {
|
|
194
198
|
return treeItems;
|
195
199
|
}
|
196
200
|
render() {
|
197
|
-
const {
|
201
|
+
const { heading, isLoaded, size, theme, truncateHeading } = this;
|
198
202
|
return (index.h(index.Host, { "context-id": this.treeViewId, class: {
|
199
203
|
[`ic-tree-view-${size}`]: size !== "medium",
|
200
204
|
[`ic-theme-${theme}`]: theme !== "inherit",
|
@@ -202,13 +206,7 @@ const TreeView = class {
|
|
202
206
|
}, onKeyDown: this.handleKeyDown, "aria-label": this.isHeadingDefined() ? heading : null }, this.hasHeadingAreaContent() && (index.h("div", { class: "heading-area-container" }, helpers.isSlotUsed(this.el, "icon") && (index.h("div", { class: "icon-container" }, index.h("slot", { name: "icon" }))), index.h("ic-typography", { variant: "subtitle-large", class: {
|
203
207
|
"tree-view-header": true,
|
204
208
|
"with-padding": this.truncateHeading && !isLoaded,
|
205
|
-
} }, helpers.isSlotUsed(this.el, "heading") ? (index.h("slot", { name: "heading" })) : (heading)))), index.h("
|
206
|
-
// Hide tree items until fully loaded with props passed down from tree view - prevents FOUC
|
207
|
-
class: {
|
208
|
-
"tree-items-container-hidden": (focusInset || size !== "medium" || truncateTreeItems) &&
|
209
|
-
!isLoaded,
|
210
|
-
}
|
211
|
-
}, index.h("slot", null))));
|
209
|
+
} }, helpers.isSlotUsed(this.el, "heading") ? (index.h("slot", { name: "heading" })) : (heading)))), index.h("slot", null)));
|
212
210
|
}
|
213
211
|
get el() { return index.getElement(this); }
|
214
212
|
static get watchers() { return {
|