@ukic/web-components 3.5.0 → 3.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/core.cjs.js +1 -1
- package/dist/cjs/{helpers-931fd72e.js → helpers-8217daf4.js} +14 -2
- package/dist/cjs/helpers-8217daf4.js.map +1 -0
- package/dist/cjs/ic-accordion-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
- package/dist/cjs/ic-alert.cjs.entry.js +8 -8
- package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
- package/dist/cjs/ic-badge.cjs.entry.js +13 -4
- package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/ic-button_3.cjs.entry.js +31 -29
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card-vertical.cjs.entry.js +1 -1
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +2 -2
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js +9 -8
- package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-chip.cjs.entry.js +1 -1
- package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
- package/dist/cjs/ic-dialog.cjs.entry.js +3 -3
- package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-divider.cjs.entry.js +1 -1
- package/dist/cjs/ic-empty-state.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer.cjs.entry.js +1 -1
- package/dist/cjs/ic-hero.cjs.entry.js +1 -1
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +1 -1
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js +1 -1
- package/dist/cjs/ic-input-label_2.cjs.entry.js +2 -2
- package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-link.cjs.entry.js +2 -2
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-menu-item.cjs.entry.js +1 -1
- package/dist/cjs/ic-navigation-button.cjs.entry.js +16 -8
- package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-navigation-item.cjs.entry.js +5 -8
- package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
- package/dist/cjs/ic-page-header.cjs.entry.js +1 -1
- package/dist/cjs/ic-pagination-item.cjs.entry.js +1 -1
- package/dist/cjs/ic-pagination.cjs.entry.js +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +16 -11
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +1 -1
- package/dist/cjs/ic-search-bar.cjs.entry.js +2 -2
- package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-select.cjs.entry.js +2 -2
- package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-side-navigation.cjs.entry.js +1 -1
- package/dist/cjs/ic-status-tag.cjs.entry.js +1 -1
- package/dist/cjs/ic-step.cjs.entry.js +1 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +1 -1
- package/dist/cjs/ic-switch.cjs.entry.js +2 -2
- package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-tab.cjs.entry.js +1 -1
- package/dist/cjs/ic-text-field.cjs.entry.js +2 -2
- package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js +1 -1
- package/dist/cjs/ic-toast.cjs.entry.js +1 -1
- package/dist/cjs/ic-toggle-button-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-toggle-button.cjs.entry.js +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +1 -1
- package/dist/cjs/ic-typography.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/ic-alert/ic-alert.js +7 -7
- package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
- package/dist/collection/components/ic-badge/ic-badge.js +12 -3
- package/dist/collection/components/ic-badge/ic-badge.js.map +1 -1
- package/dist/collection/components/ic-button/ic-button.css +8 -0
- package/dist/collection/components/ic-button/ic-button.stories.js +13 -5
- package/dist/collection/components/ic-checkbox/ic-checkbox.css +4 -1
- package/dist/collection/components/ic-checkbox/ic-checkbox.js +7 -6
- package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
- package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +11 -0
- package/dist/collection/components/ic-dialog/ic-dialog.js +2 -2
- package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
- package/dist/collection/components/ic-dialog/ic-dialog.stories.js +39 -30
- package/dist/collection/components/ic-divider/ic-divider.stories.js +3 -3
- package/dist/collection/components/ic-footer/ic-footer.stories.js +1 -1
- package/dist/collection/components/ic-footer-link/ic-footer-link.css +1 -1
- package/dist/collection/components/ic-input-label/ic-input-label.css +1 -1
- package/dist/collection/components/ic-link/ic-link.css +6 -2
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +19 -24
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
- package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.stories.js +4 -4
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.css +8 -0
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +24 -9
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +1 -2
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +3 -6
- package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +0 -1
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +57 -11
- package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
- package/dist/collection/components/ic-search-bar/ic-search-bar.css +1 -1
- package/dist/collection/components/ic-select/ic-select.css +2 -2
- package/dist/collection/components/ic-switch/ic-switch.css +4 -7
- package/dist/collection/components/ic-text-field/ic-text-field.css +1 -1
- package/dist/collection/components/ic-tooltip/ic-tooltip.js +11 -2
- package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
- package/dist/collection/components/ic-tooltip/ic-tooltip.stories.js +33 -0
- package/dist/collection/components/ic-top-navigation/ic-top-navigation.stories.js +19 -2
- package/dist/collection/patterns/z-index.stories.js +2 -1
- package/dist/collection/utils/helpers.js +12 -0
- package/dist/collection/utils/helpers.js.map +1 -1
- package/dist/components/helpers.js +13 -1
- package/dist/components/helpers.js.map +1 -1
- package/dist/components/ic-alert.js +7 -7
- package/dist/components/ic-alert.js.map +1 -1
- package/dist/components/ic-badge.js +12 -3
- package/dist/components/ic-badge.js.map +1 -1
- package/dist/components/ic-button2.js +1 -1
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-checkbox-group.js +1 -1
- package/dist/components/ic-checkbox-group.js.map +1 -1
- package/dist/components/ic-checkbox.js +8 -7
- package/dist/components/ic-checkbox.js.map +1 -1
- package/dist/components/ic-dialog.js +2 -2
- 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-input-label2.js +1 -1
- package/dist/components/ic-input-label2.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-loading-indicator2.js +22 -27
- package/dist/components/ic-loading-indicator2.js.map +1 -1
- package/dist/components/ic-navigation-button.js +18 -9
- package/dist/components/ic-navigation-button.js.map +1 -1
- package/dist/components/ic-navigation-item.js +4 -7
- package/dist/components/ic-navigation-item.js.map +1 -1
- package/dist/components/ic-popover-menu.js +18 -11
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-radio-option.js.map +1 -1
- package/dist/components/ic-search-bar.js +1 -1
- package/dist/components/ic-search-bar.js.map +1 -1
- package/dist/components/ic-select.js +1 -1
- package/dist/components/ic-select.js.map +1 -1
- package/dist/components/ic-switch.js +1 -1
- package/dist/components/ic-switch.js.map +1 -1
- package/dist/components/ic-tab-panel.js.map +1 -1
- package/dist/components/ic-text-field.js +1 -1
- package/dist/components/ic-text-field.js.map +1 -1
- package/dist/components/ic-tooltip2.js +12 -4
- package/dist/components/ic-tooltip2.js.map +1 -1
- package/dist/core/core.css +38 -24
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/{p-a14025cc.entry.js → p-0179fbd3.entry.js} +2 -2
- package/dist/core/{p-c8555360.entry.js → p-0549305b.entry.js} +2 -2
- package/dist/core/p-056be0df.entry.js +2 -0
- package/dist/core/p-056be0df.entry.js.map +1 -0
- package/dist/core/{p-4dfc41e7.entry.js → p-06b0d0f6.entry.js} +2 -2
- package/dist/core/{p-85f735ed.entry.js → p-06e80441.entry.js} +2 -2
- package/dist/core/{p-1286b234.entry.js → p-08567369.entry.js} +2 -2
- package/dist/core/{p-49ca3f54.entry.js → p-29468171.entry.js} +2 -2
- package/dist/core/{p-d7476f6d.entry.js → p-2ec0d11c.entry.js} +2 -2
- package/dist/core/{p-20a6dc40.entry.js → p-3194e46c.entry.js} +2 -2
- package/dist/core/{p-a7286727.entry.js → p-421b5f2d.entry.js} +2 -2
- package/dist/core/{p-ab4e8b4a.entry.js → p-4301e11e.entry.js} +2 -2
- package/dist/core/{p-ad374f0b.entry.js → p-43b98687.entry.js} +2 -2
- package/dist/core/{p-ad374f0b.entry.js.map → p-43b98687.entry.js.map} +1 -1
- package/dist/core/{p-b811c7a1.entry.js → p-4935b899.entry.js} +2 -2
- package/dist/core/p-4b8bfb59.entry.js +2 -0
- package/dist/core/p-4b8bfb59.entry.js.map +1 -0
- package/dist/core/{p-5b2bf9bb.entry.js → p-4cd83bfe.entry.js} +2 -2
- package/dist/core/{p-44902a33.entry.js → p-50d13439.entry.js} +2 -2
- package/dist/core/p-554c555f.entry.js +2 -0
- package/dist/core/p-554c555f.entry.js.map +1 -0
- package/dist/core/p-57309502.entry.js +2 -0
- package/dist/core/p-57309502.entry.js.map +1 -0
- package/dist/core/{p-13e65198.entry.js → p-5fb58cc8.entry.js} +2 -2
- package/dist/core/p-627f7172.entry.js +2 -0
- package/dist/core/p-627f7172.entry.js.map +1 -0
- package/dist/core/{p-b40ecf16.js → p-70abcb2b.js} +2 -2
- package/dist/core/p-70abcb2b.js.map +1 -0
- package/dist/core/{p-990c37aa.entry.js → p-773ded36.entry.js} +2 -2
- package/dist/core/{p-831e884c.entry.js → p-77750efc.entry.js} +2 -2
- package/dist/core/p-7b9e10a0.entry.js +2 -0
- package/dist/core/p-7b9e10a0.entry.js.map +1 -0
- package/dist/core/{p-ac73cfb8.entry.js → p-7cada631.entry.js} +2 -2
- package/dist/core/p-7cada631.entry.js.map +1 -0
- package/dist/core/{p-6cb81f35.entry.js → p-8a5b0fb0.entry.js} +2 -2
- package/dist/core/{p-ced2e6ca.entry.js → p-91f6884a.entry.js} +2 -2
- package/dist/core/{p-ced2e6ca.entry.js.map → p-91f6884a.entry.js.map} +1 -1
- package/dist/core/p-939adcae.entry.js +2 -0
- package/dist/core/p-939adcae.entry.js.map +1 -0
- package/dist/core/{p-476eac8c.entry.js → p-948086f4.entry.js} +2 -2
- package/dist/core/{p-2b342b23.entry.js → p-97f67617.entry.js} +2 -2
- package/dist/core/{p-b59007a3.entry.js → p-98869fe7.entry.js} +2 -2
- package/dist/core/{p-334672c1.entry.js → p-9caa9e7b.entry.js} +2 -2
- package/dist/core/{p-3d7d2ff4.entry.js → p-9d5e4b62.entry.js} +2 -2
- package/dist/core/{p-6c10e1a2.entry.js → p-9ed5f11d.entry.js} +2 -2
- package/dist/core/p-9ed5f11d.entry.js.map +1 -0
- package/dist/core/{p-ab7a5536.entry.js → p-a2ae5d9e.entry.js} +2 -2
- package/dist/core/p-a591ef38.entry.js +2 -0
- package/dist/core/p-a591ef38.entry.js.map +1 -0
- package/dist/core/{p-1228fd8c.entry.js → p-ae2ea264.entry.js} +2 -2
- package/dist/core/{p-3afc2870.entry.js → p-afde0edc.entry.js} +2 -2
- package/dist/core/p-b730963a.entry.js +2 -0
- package/dist/core/p-b730963a.entry.js.map +1 -0
- package/dist/core/{p-37900547.entry.js → p-b83cca09.entry.js} +2 -2
- package/dist/core/{p-5d9b23ce.entry.js → p-ba89fa16.entry.js} +2 -2
- package/dist/core/{p-8da025b5.entry.js → p-bb21268f.entry.js} +2 -2
- package/dist/core/p-bb21268f.entry.js.map +1 -0
- package/dist/core/{p-226406d6.entry.js → p-c100724d.entry.js} +2 -2
- package/dist/core/p-cd42b7c0.entry.js +2 -0
- package/dist/core/p-cd42b7c0.entry.js.map +1 -0
- package/dist/core/{p-e107d1dd.entry.js → p-cd8dab55.entry.js} +2 -2
- package/dist/core/{p-b08bb522.entry.js → p-ce916f35.entry.js} +2 -2
- package/dist/core/{p-41bb4db1.entry.js → p-d7c8f10d.entry.js} +2 -2
- package/dist/core/{p-7ead8535.entry.js → p-e29ba8bd.entry.js} +2 -2
- package/dist/core/{p-24bb2265.entry.js → p-ec1657fc.entry.js} +2 -2
- package/dist/core/{p-54ea7120.entry.js → p-f4ee5fbb.entry.js} +2 -2
- package/dist/core/p-f9491692.entry.js +2 -0
- package/dist/core/p-f9491692.entry.js.map +1 -0
- package/dist/core/{p-5026eeaf.entry.js → p-fb6e6ac4.entry.js} +2 -2
- package/dist/core/{p-9edc5973.entry.js → p-ff47772c.entry.js} +2 -2
- package/dist/esm/core.js +1 -1
- package/dist/esm/{helpers-91abc444.js → helpers-f5ff3b42.js} +14 -2
- package/dist/esm/helpers-f5ff3b42.js.map +1 -0
- 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 +8 -8
- package/dist/esm/ic-alert.entry.js.map +1 -1
- package/dist/esm/ic-back-to-top.entry.js +1 -1
- package/dist/esm/ic-badge.entry.js +13 -4
- package/dist/esm/ic-badge.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
- package/dist/esm/ic-breadcrumb.entry.js +1 -1
- package/dist/esm/ic-button_3.entry.js +31 -29
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card-vertical.entry.js +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +2 -2
- package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
- package/dist/esm/ic-checkbox.entry.js +9 -8
- 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-dialog.entry.js +3 -3
- 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.entry.js +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 +2 -2
- package/dist/esm/ic-input-label_2.entry.js.map +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 +16 -8
- package/dist/esm/ic-navigation-button.entry.js.map +1 -1
- package/dist/esm/ic-navigation-group.entry.js +1 -1
- package/dist/esm/ic-navigation-item.entry.js +5 -8
- package/dist/esm/ic-navigation-item.entry.js.map +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-item.entry.js +1 -1
- package/dist/esm/ic-pagination.entry.js +1 -1
- package/dist/esm/ic-popover-menu.entry.js +16 -11
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +1 -1
- package/dist/esm/ic-radio-option.entry.js +1 -1
- package/dist/esm/ic-search-bar.entry.js +2 -2
- package/dist/esm/ic-search-bar.entry.js.map +1 -1
- package/dist/esm/ic-select.entry.js +2 -2
- package/dist/esm/ic-select.entry.js.map +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 +2 -2
- package/dist/esm/ic-switch.entry.js.map +1 -1
- package/dist/esm/ic-tab-group.entry.js +1 -1
- package/dist/esm/ic-tab.entry.js +1 -1
- package/dist/esm/ic-text-field.entry.js +2 -2
- package/dist/esm/ic-text-field.entry.js.map +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 +1 -1
- package/dist/esm/ic-top-navigation.entry.js +1 -1
- package/dist/esm/ic-typography.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/ic-badge/ic-badge.d.ts +1 -0
- package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +2 -2
- package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +5 -0
- package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +7 -0
- package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +1 -0
- package/dist/types/components.d.ts +4 -0
- package/dist/types/utils/helpers.d.ts +2 -1
- package/hydrate/index.js +118 -81
- package/hydrate/index.mjs +118 -81
- package/package.json +2 -2
- package/dist/cjs/helpers-931fd72e.js.map +0 -1
- package/dist/core/p-0f3a56bb.entry.js +0 -2
- package/dist/core/p-0f3a56bb.entry.js.map +0 -1
- package/dist/core/p-21ed856c.entry.js +0 -2
- package/dist/core/p-21ed856c.entry.js.map +0 -1
- package/dist/core/p-3abaa877.entry.js +0 -2
- package/dist/core/p-3abaa877.entry.js.map +0 -1
- package/dist/core/p-5f9d1977.entry.js +0 -2
- package/dist/core/p-5f9d1977.entry.js.map +0 -1
- package/dist/core/p-6c10e1a2.entry.js.map +0 -1
- package/dist/core/p-89f493f3.entry.js +0 -2
- package/dist/core/p-89f493f3.entry.js.map +0 -1
- package/dist/core/p-8da025b5.entry.js.map +0 -1
- package/dist/core/p-9e039aba.entry.js +0 -2
- package/dist/core/p-9e039aba.entry.js.map +0 -1
- package/dist/core/p-ac73cfb8.entry.js.map +0 -1
- package/dist/core/p-b40ecf16.js.map +0 -1
- package/dist/core/p-bae2df5e.entry.js +0 -2
- package/dist/core/p-bae2df5e.entry.js.map +0 -1
- package/dist/core/p-d32c377d.entry.js +0 -2
- package/dist/core/p-d32c377d.entry.js.map +0 -1
- package/dist/core/p-d4a77f80.entry.js +0 -2
- package/dist/core/p-d4a77f80.entry.js.map +0 -1
- package/dist/core/p-e506ec91.entry.js +0 -2
- package/dist/core/p-e506ec91.entry.js.map +0 -1
- package/dist/core/p-fca45edb.entry.js +0 -2
- package/dist/core/p-fca45edb.entry.js.map +0 -1
- package/dist/esm/helpers-91abc444.js.map +0 -1
- /package/dist/core/{p-a14025cc.entry.js.map → p-0179fbd3.entry.js.map} +0 -0
- /package/dist/core/{p-c8555360.entry.js.map → p-0549305b.entry.js.map} +0 -0
- /package/dist/core/{p-4dfc41e7.entry.js.map → p-06b0d0f6.entry.js.map} +0 -0
- /package/dist/core/{p-85f735ed.entry.js.map → p-06e80441.entry.js.map} +0 -0
- /package/dist/core/{p-1286b234.entry.js.map → p-08567369.entry.js.map} +0 -0
- /package/dist/core/{p-49ca3f54.entry.js.map → p-29468171.entry.js.map} +0 -0
- /package/dist/core/{p-d7476f6d.entry.js.map → p-2ec0d11c.entry.js.map} +0 -0
- /package/dist/core/{p-20a6dc40.entry.js.map → p-3194e46c.entry.js.map} +0 -0
- /package/dist/core/{p-a7286727.entry.js.map → p-421b5f2d.entry.js.map} +0 -0
- /package/dist/core/{p-ab4e8b4a.entry.js.map → p-4301e11e.entry.js.map} +0 -0
- /package/dist/core/{p-b811c7a1.entry.js.map → p-4935b899.entry.js.map} +0 -0
- /package/dist/core/{p-5b2bf9bb.entry.js.map → p-4cd83bfe.entry.js.map} +0 -0
- /package/dist/core/{p-44902a33.entry.js.map → p-50d13439.entry.js.map} +0 -0
- /package/dist/core/{p-13e65198.entry.js.map → p-5fb58cc8.entry.js.map} +0 -0
- /package/dist/core/{p-990c37aa.entry.js.map → p-773ded36.entry.js.map} +0 -0
- /package/dist/core/{p-831e884c.entry.js.map → p-77750efc.entry.js.map} +0 -0
- /package/dist/core/{p-6cb81f35.entry.js.map → p-8a5b0fb0.entry.js.map} +0 -0
- /package/dist/core/{p-476eac8c.entry.js.map → p-948086f4.entry.js.map} +0 -0
- /package/dist/core/{p-2b342b23.entry.js.map → p-97f67617.entry.js.map} +0 -0
- /package/dist/core/{p-b59007a3.entry.js.map → p-98869fe7.entry.js.map} +0 -0
- /package/dist/core/{p-334672c1.entry.js.map → p-9caa9e7b.entry.js.map} +0 -0
- /package/dist/core/{p-3d7d2ff4.entry.js.map → p-9d5e4b62.entry.js.map} +0 -0
- /package/dist/core/{p-ab7a5536.entry.js.map → p-a2ae5d9e.entry.js.map} +0 -0
- /package/dist/core/{p-1228fd8c.entry.js.map → p-ae2ea264.entry.js.map} +0 -0
- /package/dist/core/{p-3afc2870.entry.js.map → p-afde0edc.entry.js.map} +0 -0
- /package/dist/core/{p-37900547.entry.js.map → p-b83cca09.entry.js.map} +0 -0
- /package/dist/core/{p-5d9b23ce.entry.js.map → p-ba89fa16.entry.js.map} +0 -0
- /package/dist/core/{p-226406d6.entry.js.map → p-c100724d.entry.js.map} +0 -0
- /package/dist/core/{p-e107d1dd.entry.js.map → p-cd8dab55.entry.js.map} +0 -0
- /package/dist/core/{p-b08bb522.entry.js.map → p-ce916f35.entry.js.map} +0 -0
- /package/dist/core/{p-41bb4db1.entry.js.map → p-d7c8f10d.entry.js.map} +0 -0
- /package/dist/core/{p-7ead8535.entry.js.map → p-e29ba8bd.entry.js.map} +0 -0
- /package/dist/core/{p-24bb2265.entry.js.map → p-ec1657fc.entry.js.map} +0 -0
- /package/dist/core/{p-54ea7120.entry.js.map → p-f4ee5fbb.entry.js.map} +0 -0
- /package/dist/core/{p-5026eeaf.entry.js.map → p-fb6e6ac4.entry.js.map} +0 -0
- /package/dist/core/{p-9edc5973.entry.js.map → p-ff47772c.entry.js.map} +0 -0
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["IcInformationStatus","IcBrandForegroundEnum","VARIANT_ICONS","neutral","icon","neutralIcon","ariaLabel","info","infoIcon","warning","warningIcon","error","errorIcon","success","successIcon","IC_INHERITED_ARIA","IC_DEVICE_SIZES","XS","S","M","L","XL","IC_BLOCK_COLOR_COMPONENTS","join","IC_FIXED_COLOR_COMPONENTS","IC_BLOCK_COLOR_EXCEPTIONS","BLACK_MIN_COLOR_BRIGHTNESS","WHITE_MAX_COLOR_BRIGHTNESS","IGNORED_KEYBOARD_CHARACTERS","DARK_MODE_THRESHOLD","ANYWHERE_SEARCH_POSITION","icInput","inheritAttributes","element","attributes","attributeObject","forEach","attr","value","getAttribute","removeAttribute","debounceEvent","event","wait","original","_original","emit","debounce","bind","func","timer","args","clearTimeout","setTimeout","renderHiddenInput","container","name","disabled","always","hasShadowDom","input","getHiddenInputElement","ownerDocument","createElement","type","classList","add","appendChild","Date","toISOString","Array","from","querySelectorAll","filter","el","parentElement","renderFileHiddenInput","multiple","accept","undefined","hidden","files","onchange","click","removeHiddenInput","_a","remove","shadowRoot","attachShadow","getInputHelperTextID","id","getInputValidationTextID","getInputDescribedByText","inputId","helperText","validationText","isSlotUsed","trim","getBrandFromContext","brandFromEvent","getRootNode","host","blockColorParent","closest","Default","parentTag","tagName","toLowerCase","includes","contains","Dark","Light","isMobileOrTablet","navigator","maxTouchPoints","test","userAgent","handleHiddenFormButtonClick","form","button","hiddenFormButton","document","querySelector","setAttribute","_b","style","display","isEmptyString","length","isPropDefined","prop","getLabelFromValue","options","valueField","labelField","ungroupedOptions","map","option","children","push","matchingValue","find","getFilteredMenuOptions","includeDescriptions","searchString","position","label","description","lowerSearchString","startsWith","getOptionsWithoutGroupTitlesCount","optionsWithoutGroupTitles","deviceSizeMatches","size","window","matchMedia","matches","getCurrentDeviceSize","DEVICE_SIZES","UNDEFINED","getCssProperty","cssVar","getComputedStyle","documentElement","getPropertyValue","getBrandColorBrightness","parseInt","getBrandForegroundAppearance","brightness","getSlot","slotHasContent","getSlotContent","slot","getSlotElements","slotContent","firstElementChild","elements","assignedElements","childNodes","getNavItemParentDetails","navType","parent","Number","replace","hasValidationStatus","status","slotName","some","child","onComponentPropUndefinedChange","oldValue","newValue","callback","onComponentRequiredPropUndefined","props","component","propName","console","kebabToCamelCase","kebabCase","split","word","index","substring","toUpperCase","checkResizeObserver","callbackFn","ResizeObserver","hex2dec","v","hexToRgba","hex","hexChars","char","repeat","r","slice","g","b","a","rgbaStrToObj","rgbaStr","isRGBA","rgbValues","elementOverflowsX","scrollWidth","clientWidth","hasClassificationBanner","addFormResetListener","addEventListener","removeFormResetListener","removeEventListener","pxToRem","px","base","removeDisabledFalse","isMacDevice","indexOf","convertToRGBA","color","firstChar","capitalize","text","charAt","checkSlotInChildMutations","addedNodes","removedNodes","hasSlot","nodeList","node","isArray","isElInAGGrid","isSlottedInGroup","hasDynamicChildSlots","mutationList","slotNames","renderDynamicChildSlots","ref","forceUpdate","getElementInheritedTheme","blockParentTheme","theme","wrapperTheme","_d","_c","_e","call"],"sources":["src/utils/types.ts","src/utils/constants.ts","src/utils/helpers.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nexport type IcFocusableComponents =\n | HTMLIcBreadcrumbElement\n | HTMLIcButtonElement\n | HTMLIcCardVerticalElement\n | HTMLIcCheckboxElement\n | HTMLIcChipElement\n | HTMLIcLinkElement\n | HTMLIcNavigationButtonElement\n | HTMLIcNavigationGroupElement\n | HTMLIcNavigationItemElement\n | HTMLIcRadioOptionElement\n | HTMLIcSearchBarElement\n | HTMLIcSelectElement\n | HTMLIcSwitchElement\n | HTMLIcTabElement\n | HTMLIcTextFieldElement;\n\nexport type IcStatusVariants =\n | \"neutral\"\n | \"info\"\n | \"warning\"\n | \"error\"\n | \"success\";\n\nexport enum IcInformationStatus {\n Warning = \"warning\",\n Error = \"error\",\n Success = \"success\",\n}\n\nexport type IcSizes = \"medium\" | \"large\" | \"small\";\n\nexport type IcSizesNoLarge = \"medium\" | \"small\";\n\nexport type IcInformationStatusOrEmpty = \"warning\" | \"error\" | \"success\" | \"\";\n\nexport type IcNavType = \"side\" | \"top\" | \"page-header\";\n\n// From: https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete\nexport type IcAutocompleteTypes =\n | \"on\"\n | \"off\"\n | \"name\"\n | \"honorific-prefix\"\n | \"given-name\"\n | \"additional-name\"\n | \"family-name\"\n | \"honorific-suffix\"\n | \"nickname\"\n | \"email\"\n | \"username\"\n | \"new-password\"\n | \"current-password\"\n | \"one-time-code\"\n | \"organization-title\"\n | \"organization\"\n | \"street-address\"\n | \"address-line1\"\n | \"address-line2\"\n | \"address-line3\"\n | \"address-level4\"\n | \"address-level3\"\n | \"address-level2\"\n | \"address-level1\"\n | \"country\"\n | \"country-name\"\n | \"postal-code\"\n | \"cc-name\"\n | \"cc-given-name\"\n | \"cc-additional-name\"\n | \"cc-family-name\"\n | \"cc-family-name\"\n | \"cc-number\"\n | \"cc-exp\"\n | \"cc-exp-month\"\n | \"cc-exp-year\"\n | \"cc-csc\"\n | \"cc-type\"\n | \"transaction-currency\"\n | \"transaction-amount\"\n | \"language\"\n | \"bday\"\n | \"bday-day\"\n | \"bday-month\"\n | \"bday-year\"\n | \"sex\"\n | \"tel\"\n | \"tel-country-code\"\n | \"tel-national\"\n | \"tel-area-code\"\n | \"tel-local\"\n | \"tel-extension\"\n | \"impp\"\n | \"url\"\n | \"photo\";\n\nexport type IcAlignment = \"left\" | \"center\" | \"full-width\";\n\nexport enum IcBrandForegroundEnum {\n Default = \"default\",\n Dark = \"dark\",\n Light = \"light\",\n}\n\nexport type IcThemeMode = \"dark\" | \"light\" | \"inherit\";\n\nexport type IcBrandForeground = \"default\" | \"dark\" | \"light\";\n\nexport type IcBrandForegroundNoDefault = \"dark\" | \"light\";\n\nexport type IcBrand = {\n mode: IcBrandForeground;\n color: IcColorRGB;\n};\n\nexport type IcAdditionalFieldTypes = \"static\" | \"dynamic\";\n\nexport type IcColorRGB = {\n r: number;\n g: number;\n b: number;\n};\n\nexport type IcColorRGBA = IcColorRGB & {\n a: number;\n};\n\nexport type IcActivationTypes = \"automatic\" | \"manual\";\n\nexport type IcAutocorrectStates = \"on\" | \"off\";\n\nexport type IcNavParentDetails = {\n navType: IcNavType | \"\";\n parent: HTMLElement | null;\n};\n\nexport type IcTypographyVariants =\n | \"h1\"\n | \"h2\"\n | \"h3\"\n | \"h4\"\n | \"subtitle-large\"\n | \"subtitle-small\"\n | \"body\"\n | \"label\"\n | \"label-uppercase\"\n | \"caption\"\n | \"caption-uppercase\"\n | \"code-large\"\n | \"code-small\"\n | \"code-extra-small\"\n | \"badge\"\n | \"badge-small\";\n\n/**\n * @interface IcMenuOption\n * @field {string} A label field to options. Defaults to \"label\", but can have any custom name.\n * @field {string} A value field to options. Defaults to \"value\", but can have any custom name.\n */\nexport interface IcMenuOption {\n description?: string;\n disabled?: boolean;\n recommended?: boolean;\n children?: IcMenuOption[];\n loading?: boolean;\n timedOut?: boolean;\n [key: string]: any;\n element?: {\n component: any;\n ariaLabel: string;\n };\n icon?: any;\n}\n\nexport type IcSearchMatchPositions = \"start\" | \"anywhere\";\n\nexport type IcCallbackFunctionNoReturn = (...args: unknown[]) => void;\n\nexport type IcRequiredPropsTypes =\n | string\n | boolean\n | number\n | HTMLElement\n | IcMenuOption[]\n | undefined;\n\nexport type IcPropObject = { prop: IcRequiredPropsTypes; propName: string };\n\nexport type IcRelatedTarget = EventTarget | undefined;\n\nexport type IcOrientation = \"horizontal\" | \"vertical\";\n\nexport type IcEmphasisType = \"filled\" | \"outlined\";\n\nexport interface IcValueEventDetail {\n value: string;\n keyPressed?: string;\n}\n\nexport interface IcMultiValueEventDetail {\n value: string | string[] | null;\n keyPressed?: string;\n}\n\nexport interface IcBlurEventDetail {\n relatedTarget: IcRelatedTarget | null;\n}\n\nexport type IcSelectTypes = \"single\" | \"multi\";\n\nexport type IcSelectMethodTypes = \"auto\" | \"manual\";\n\nexport type IcDeviceSizes = 0 | 576 | 768 | 992 | 1200;\n\ntype RGB = `rgb(${string})`;\ntype RGBA = `rgba(${string})`;\ntype HEX = `#${string}`;\n\nexport type IcColor = RGB | RGBA | HEX;\n\nexport type IcIconPlacementOptions = \"left\" | \"right\" | \"top\";\n\nexport type IcButtonTooltipPlacement = \"top\" | \"right\" | \"bottom\" | \"left\";\n\nexport type IcThemeSettings = \"dark\" | \"light\" | \"system\";\n","import errorIcon from \"../assets/error-icon.svg\";\nimport infoIcon from \"../assets/info-icon.svg\";\nimport neutralIcon from \"../assets/neutral-icon.svg\";\nimport successIcon from \"../assets/success-icon.svg\";\nimport warningIcon from \"../assets/warning-icon.svg\";\n\n// Global status icons\nexport const VARIANT_ICONS = {\n neutral: {\n icon: neutralIcon,\n ariaLabel: \"Neutral\",\n },\n info: {\n icon: infoIcon,\n ariaLabel: \"For your information\",\n },\n warning: {\n icon: warningIcon,\n ariaLabel: \"Warning\",\n },\n error: {\n icon: errorIcon,\n ariaLabel: \"Error\",\n },\n success: {\n icon: successIcon,\n ariaLabel: \"Success\",\n },\n};\n\n// Global ARIA attributes\nexport const IC_INHERITED_ARIA = [\n \"aria-atomic\",\n \"aria-autocomplete\",\n \"aria-busy\",\n \"aria-controls\",\n \"aria-current\",\n \"aria-describedby\",\n \"aria-description\",\n \"aria-details\",\n \"aria-disabled\",\n \"aria-dropeffect\",\n \"aria-errormessage\",\n \"aria-expanded\",\n \"aria-flowto\",\n \"aria-grabbed\",\n \"aria-haspopup\",\n \"aria-hidden\",\n \"aria-invalid\",\n \"aria-keyshortcuts\",\n \"aria-label\",\n \"aria-labelledby\",\n \"aria-live\",\n \"aria-owns\",\n \"aria-relevant\",\n \"aria-roledescription\",\n];\n\nexport const IC_DEVICE_SIZES = {\n XS: 576,\n S: 768,\n M: 992,\n L: 1200,\n XL: 99999,\n};\n\nexport const IC_BLOCK_COLOR_COMPONENTS = [\n \"ic-hero\",\n \"ic-top-navigation\",\n \"ic-footer\",\n \"ic-side-navigation\",\n \"ic-alert\",\n].join(\",\");\n\nexport const IC_FIXED_COLOR_COMPONENTS = [\"ic-alert\"];\n\nexport interface IcColorExceptions {\n [details: string]: string[];\n}\n\nexport const IC_BLOCK_COLOR_EXCEPTIONS: IcColorExceptions = {\n \"ic-alert\": [\"ic-link\", \"ic-button\"],\n};\n\n/* Range within which the chosen theme colour would not have a sufficient brightness difference with either of the black or white foreground colours\n * The brightness difference must be greater than 125 to provide good colour visibility\n * Calculated by:\n * - Using the brightness formula for both colours: https://www.w3.org/TR/AERT/#color-contrast\n * - Adding 125 to the brightness of the black foreground colour - RGB(11, 12, 12)\n * - Subtracting 125 from the brightness of the white foreground colour - RGB(255, 255, 255)\n */\nexport const BLACK_MIN_COLOR_BRIGHTNESS = 136.701;\nexport const WHITE_MAX_COLOR_BRIGHTNESS = 130;\n\n// Keyboard characters that do not affect the content of an input control when pressed\nexport const IGNORED_KEYBOARD_CHARACTERS = [\n \"Alt\",\n \"AltGraph\",\n \"ArrowDown\",\n \"ArrowLeft\",\n \"ArrowRight\",\n \"ArrowUp\",\n \"AudioVolumeDown\",\n \"AudioVolumeMute\",\n \"AudioVolumeUp\",\n \"CapsLock\",\n \"ContextMenu\",\n \"Control\",\n \"Delete\",\n \"End\",\n \"Enter\",\n \"Escape\",\n \"F1\",\n \"F10\",\n \"F11\",\n \"F12\",\n \"F2\",\n \"F3\",\n \"F4\",\n \"F5\",\n \"F6\",\n \"F7\",\n \"F8\",\n \"F9\",\n \"Home\",\n \"Insert\",\n \"Meta\",\n \"NumLock\",\n \"PageDown\",\n \"PageUp\",\n \"Shift\",\n \"Tab\",\n];\n","import { EventEmitter, forceUpdate } from \"@stencil/core\";\nimport {\n IcCallbackFunctionNoReturn,\n IcInformationStatusOrEmpty,\n IcNavParentDetails,\n IcPropObject,\n IcSearchMatchPositions,\n IcColorRGBA,\n IcDeviceSizes,\n IcColor,\n IcBrandForegroundNoDefault,\n IcThemeMode,\n} from \"./types\";\n\nimport {\n IcMenuOption,\n IcBrandForeground,\n IcBrandForegroundEnum,\n} from \"../utils/types\";\nimport {\n IC_BLOCK_COLOR_COMPONENTS,\n IC_BLOCK_COLOR_EXCEPTIONS,\n IC_FIXED_COLOR_COMPONENTS,\n} from \"./constants\";\n\nconst DARK_MODE_THRESHOLD = 133.3505;\nconst ANYWHERE_SEARCH_POSITION = \"anywhere\";\nconst icInput = \"ic-input\";\n\n/**\n * converts an enum of strings into an array of strings\n */\nexport const stringEnumToArray = (\n theEnum: Record<string, string | number>\n): string[] => {\n const arr: string[] = [];\n Object.values(theEnum).forEach((val) => {\n if (isNaN(Number(val))) {\n const str = val as string;\n arr.push(str);\n }\n });\n return arr;\n};\n\n/**\n * Used to inherit global attributes set on the host. Called in componentWillLoad and assigned\n * to a variable that is later used in the render function.\n *\n * This does not need to be reactive as changing attributes on the host element\n * does not trigger a re-render.\n */\nexport const inheritAttributes = (\n element: HTMLElement,\n attributes: string[] = []\n): { [key: string]: string } => {\n const attributeObject: { [key: string]: string } = {};\n\n attributes.forEach((attr) => {\n const value = element.getAttribute(attr);\n if (value !== null) {\n attributeObject[attr] = value;\n element.removeAttribute(attr);\n }\n });\n\n return attributeObject;\n};\n\nexport const debounceEvent = (\n event: EventEmitter,\n wait: number\n): EventEmitter => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const original = (event as any)._original || event;\n return {\n _original: event,\n emit: debounce(original.emit.bind(original), wait),\n } as EventEmitter;\n};\n\nexport const debounce = (\n func: (...args: unknown[]) => void,\n wait = 0\n): unknown => {\n let timer: ReturnType<typeof setTimeout>;\n return (...args: unknown[]) => {\n clearTimeout(timer);\n timer = setTimeout(func, wait, ...args);\n };\n};\n\n/**\n * This method is used to add a hidden input to a host element that contains\n * a Shadow DOM. It does not add the input inside of the Shadow root which\n * allows it to be picked up inside of forms. It should contain the same\n * values as the host element.\n *\n * @param container The element where the input will be added\n * @param value The value of the input\n * @param name The name of the input\n * @param disabled If true, the input is disabled\n * @param always Add a hidden input even if the container does not use Shadow\n */\nexport const renderHiddenInput = (\n container: HTMLElement,\n value?: string | Date | null,\n name?: string,\n disabled = false,\n always = true\n): void => {\n if (name && (always || hasShadowDom(container))) {\n let input = getHiddenInputElement(container);\n\n if (!input) {\n input = container.ownerDocument.createElement(\"input\");\n input.type = \"hidden\";\n input.classList.add(icInput);\n container.appendChild(input);\n }\n input.disabled = disabled;\n input.name = name;\n input.value = value instanceof Date ? value.toISOString() : value || \"\";\n }\n};\n\nconst getHiddenInputElement = (container: HTMLElement) =>\n Array.from(\n container.querySelectorAll<HTMLInputElement>(`input.${icInput}`)\n ).filter((el) => container === el.parentElement)[0];\n\n/**\n * This method is used to add a hidden file input to a host element that contains\n * a Shadow DOM. It does not add the input inside of the Shadow root which\n * allows it to be picked up inside of forms. It should contain the same\n * values as the host element.\n *\n * @param event: The event that is emitted once a file is selected.\n * @param container The element where the input will be added\n * @param multiple If true, multiple files can be selected\n * @param disabled If true, the input is disabled\n * @param accept A string of the accepted files\n * @param name The name of the input\n * @param value The value of the input\n */\nexport const renderFileHiddenInput = (\n event: EventEmitter,\n container: HTMLElement,\n multiple: boolean,\n disabled: boolean,\n accept?: string,\n name?: string,\n value?: FileList\n): void => {\n if (name !== undefined && hasShadowDom(container)) {\n let input = getHiddenInputElement(container);\n\n if (input === null || input === undefined) {\n input = container.ownerDocument.createElement(\"input\");\n input.classList.add(icInput);\n container.appendChild(input);\n }\n input.type = \"file\";\n input.hidden = true;\n input.multiple = multiple;\n input.name = name;\n input.disabled = disabled;\n\n if (value) input.files = value;\n if (accept) input.accept = accept;\n\n input.onchange = () => {\n event.emit(input.files);\n };\n input.click();\n }\n};\n\nexport const removeHiddenInput = (container: HTMLElement): void => {\n getHiddenInputElement(container)?.remove();\n};\n\nexport const hasShadowDom = (el: HTMLElement | null | undefined): boolean =>\n !!el && !!el.shadowRoot && !!el.attachShadow;\n\nexport const getInputHelperTextID = (id: string): string => id + \"-helper-text\";\n\nexport const getInputValidationTextID = (id: string): string =>\n id + \"-validation-text\";\n\nexport const getInputDescribedByText = (\n el: HTMLElement,\n inputId: string,\n helperText: boolean,\n validationText: boolean\n): string =>\n `${\n isSlotUsed(el, \"helper-text\") || helperText\n ? getInputHelperTextID(inputId)\n : \"\"\n } ${validationText ? getInputValidationTextID(inputId) : \"\"}`.trim();\n\n/**\n * This method helps to understand the context in which a component exists,\n * to assist with choosing appropriate foreground colours to use. For example,\n * this method will help you use the 'white' version of a button if it's within\n * a block colour element using white foreground text.\n *\n * This only works for components/elements passed via <slot> and not if they\n * are part of an IC component.\n *\n * \"\"\n * @returns IcBrandForeground depending on the context\n */\nexport const getBrandFromContext = (\n el: Element,\n brandFromEvent: IcBrandForeground | null = null\n): IcBrandForeground => {\n const parentElement =\n el.parentElement || (<ShadowRoot>el.getRootNode()).host.parentElement;\n const blockColorParent = parentElement?.closest(IC_BLOCK_COLOR_COMPONENTS);\n\n if (!blockColorParent) return IcBrandForegroundEnum.Default;\n\n const parentTag = blockColorParent.tagName.toLowerCase();\n\n if (\n IC_BLOCK_COLOR_EXCEPTIONS[parentTag]?.includes(el.tagName.toLowerCase())\n ) {\n return IcBrandForegroundEnum.Default;\n } else if (\n brandFromEvent !== null &&\n !IC_FIXED_COLOR_COMPONENTS.includes(parentTag)\n ) {\n return brandFromEvent;\n } else if (\n blockColorParent.classList.contains(\n `${parentTag}-${IcBrandForegroundEnum.Dark}`\n ) ||\n blockColorParent.classList.contains(IcBrandForegroundEnum.Dark)\n ) {\n return IcBrandForegroundEnum.Dark;\n } else {\n return IcBrandForegroundEnum.Light;\n }\n};\n\n/**\n * Checks if the current device is a mobile or tablet device.\n * @returns {boolean} Returns true if the device is a mobile or tablet device, otherwise returns false.\n */\nexport const isMobileOrTablet = (): boolean =>\n \"maxTouchPoints\" in navigator && \"userAgent\" in navigator\n ? navigator.maxTouchPoints > 0 &&\n /iPad|iPhone|iPod|Android|webOS|BlackBerry|IEMobile|Opera Mini/i.test(\n navigator.userAgent\n )\n : false;\n\n/**\n * Will create a button within the lightDOM which interacts with the parent form.\n * This is required as buttons within the shadowDOM will not invoke a submit or reset\n *\n * @param form - parent form element which contains shadowDom button\n * @param button - shadowDOM button\n */\nexport const handleHiddenFormButtonClick = (\n form: HTMLFormElement,\n button: HTMLIcButtonElement | HTMLButtonElement\n): void => {\n const hiddenFormButton =\n document.querySelector<HTMLButtonElement>(\"#hidden-form-button\") ??\n document.createElement(\"button\");\n\n hiddenFormButton.setAttribute(\"type\", button.type ?? \"button\");\n hiddenFormButton.id = \"hidden-form-button\";\n hiddenFormButton.style.display = \"none\";\n\n form.appendChild(hiddenFormButton);\n hiddenFormButton.click();\n};\n\nexport const isEmptyString = (value?: string): boolean =>\n !value || value.trim().length === 0;\n\n// A helper function that checks if a prop has been defined\nexport const isPropDefined = (prop?: string): string | undefined =>\n prop !== undefined ? prop : undefined;\n\n/**\n * Extracts the label using the value from an object. Requires the object to have a label and value property.\n * @param value - value from object\n * @param options - list of menu items\n * @returns - label corresponding to value\n */\nexport const getLabelFromValue = (\n value: string,\n options: IcMenuOption[],\n valueField = \"value\",\n labelField = \"label\"\n): string | undefined => {\n const ungroupedOptions: IcMenuOption[] = [];\n if (options.length > 0 && options.map) {\n options.map((option) => {\n if (option.children) {\n option.children.map((option: IcMenuOption) =>\n ungroupedOptions.push(option)\n );\n } else {\n ungroupedOptions.push(option);\n }\n });\n const matchingValue = ungroupedOptions.find(\n (option) => option[valueField] === value\n );\n if (matchingValue !== undefined) return matchingValue[labelField];\n }\n\n return undefined;\n};\n\n/**\n * Filters the options based on the search string.\n * @param options - array of options\n * @param includeDescriptions - determines whether option descriptions are included when filtering options\n * @param searchString - string used to filter the options\n * @param position - whether the search string matches the start of or anywhere in the options\n * @returns filtered array of options\n */\nexport const getFilteredMenuOptions = (\n options: IcMenuOption[],\n includeDescriptions: boolean,\n searchString: string,\n position: IcSearchMatchPositions = ANYWHERE_SEARCH_POSITION,\n labelField = \"label\"\n): IcMenuOption[] =>\n options.filter((option) => {\n const label: string = option[labelField].toLowerCase();\n const description = option.description?.toLowerCase();\n const lowerSearchString = searchString.toLowerCase();\n\n return position === ANYWHERE_SEARCH_POSITION\n ? includeDescriptions\n ? label.includes(lowerSearchString) ||\n description?.includes(lowerSearchString)\n : label.includes(lowerSearchString)\n : includeDescriptions\n ? label.startsWith(lowerSearchString) ||\n description?.startsWith(lowerSearchString)\n : label.startsWith(lowerSearchString);\n });\n\n/**\n * Gets count of options where only group title \"parent\" options have been removed.\n * Disabled options are included in the count.\n * @param options - array of options\n * @returns number of options not including group titles\n */\nexport const getOptionsWithoutGroupTitlesCount = (\n options: IcMenuOption[]\n): number => {\n const optionsWithoutGroupTitles: IcMenuOption[] = [];\n\n if (options.length > 0 && options.map) {\n options.map((option) => {\n if (option.children) {\n option.children.map((option) => optionsWithoutGroupTitles.push(option));\n } else {\n optionsWithoutGroupTitles.push(option);\n }\n });\n }\n\n return optionsWithoutGroupTitles.length;\n};\n\nexport const deviceSizeMatches = (size: number): boolean =>\n window.matchMedia(`(max-width: ${size}px)`).matches;\n\nexport const getCurrentDeviceSize = (): number => {\n if (deviceSizeMatches(DEVICE_SIZES.S)) {\n return DEVICE_SIZES.S;\n }\n if (deviceSizeMatches(DEVICE_SIZES.M)) {\n return DEVICE_SIZES.M;\n }\n if (deviceSizeMatches(DEVICE_SIZES.L)) {\n return DEVICE_SIZES.L;\n }\n if (deviceSizeMatches(DEVICE_SIZES.XL)) {\n return DEVICE_SIZES.XL;\n }\n //fallback needed as all of above get initialised to 0 in jest tests\n return DEVICE_SIZES.UNDEFINED;\n};\n\nexport const getCssProperty = (cssVar: string): string =>\n getComputedStyle(document.documentElement).getPropertyValue(cssVar);\n\n/**\n * Returns the brightness of the theme colour, calculated by using the theme RGB CSS values by:\n * - Multiplying each RGB value by a set number: https://www.w3.org/TR/AERT/#color-contrast\n * - Adding them together and dividing by 1000\n * This is a similar calculation to its CSS counterpart: \"--ic-brand-text-color\"\n * @returns number representing the brightness of the theme colour\n */\nexport const getBrandColorBrightness = (): number =>\n (parseInt(getCssProperty(\"--ic-brand-color-primary-r\")) * 299 +\n parseInt(getCssProperty(\"--ic-brand-color-primary-g\")) * 587 +\n parseInt(getCssProperty(\"--ic-brand-color-primary-b\")) * 114) /\n 1000;\n\n/**\n * Returns if dark or light foreground colors should be used for color contrast reasons\n * @returns \"dark\" or \"light\"\n * @param brightness - Optional custom brightness value. Defaults to `getBrandColorBrightness`\n */\nexport const getBrandForegroundAppearance = (\n brightness = getBrandColorBrightness()\n): IcBrandForegroundNoDefault =>\n brightness > DARK_MODE_THRESHOLD\n ? IcBrandForegroundEnum.Dark\n : IcBrandForegroundEnum.Light;\n\nexport const getSlot = (\n element: HTMLElement | undefined,\n name: string\n): Element | null => element?.querySelector(`[slot=\"${name}\"]`) || null;\n\nexport const slotHasContent = (element: HTMLElement, name: string): boolean =>\n getSlot(element, name) !== null;\n\nexport const getSlotContent = (\n element: HTMLElement,\n name: string\n): Element[] | NodeListOf<ChildNode> | null => {\n const slot = getSlot(element, name);\n return slot ? getSlotElements(slot) : null;\n};\n\nexport const getSlotElements = (\n slot: Element\n): NodeListOf<ChildNode> | Element[] | null => {\n const slotContent = slot.firstElementChild as HTMLSlotElement;\n\n if (slotContent === null) return [slot];\n\n const elements = slotContent.assignedElements\n ? slotContent.assignedElements()\n : slotContent.childNodes;\n return elements.length ? elements : slot.tagName ? [slot] : null;\n};\n\nexport const getNavItemParentDetails = ({\n parentElement,\n}: HTMLElement): IcNavParentDetails => {\n let navType: IcNavParentDetails = { navType: \"\", parent: null };\n if (parentElement) {\n switch (parentElement.tagName) {\n case \"IC-NAVIGATION-GROUP\":\n navType = getNavItemParentDetails(parentElement);\n break;\n case \"IC-TOP-NAVIGATION\":\n navType = { navType: \"top\", parent: parentElement };\n break;\n case \"IC-SIDE-NAVIGATION\":\n navType = { navType: \"side\", parent: parentElement };\n break;\n case \"IC-PAGE-HEADER\":\n navType = { navType: \"page-header\", parent: null };\n break;\n }\n }\n\n return navType;\n};\n\nexport const DEVICE_SIZES = {\n XS: Number(\n getCssProperty(\"--ic-breakpoint-xs\").replace(\"px\", \"\")\n ) as IcDeviceSizes, // 0\n S: Number(\n getCssProperty(\"--ic-breakpoint-sm\").replace(\"px\", \"\")\n ) as IcDeviceSizes, // 576\n M: Number(\n getCssProperty(\"--ic-breakpoint-md\").replace(\"px\", \"\")\n ) as IcDeviceSizes, // 768\n L: Number(\n getCssProperty(\"--ic-breakpoint-lg\").replace(\"px\", \"\")\n ) as IcDeviceSizes, // 992\n XL: Number(\n getCssProperty(\"--ic-breakpoint-xl\").replace(\"px\", \"\")\n ) as IcDeviceSizes, // 1200\n UNDEFINED: 1200,\n};\n\nexport const hasValidationStatus = (\n status?: IcInformationStatusOrEmpty,\n disabled?: boolean\n): boolean => !!status && !disabled;\n\nexport const isSlotUsed = (\n { children }: HTMLElement,\n slotName: string\n): boolean =>\n Array.from(children).some((child) => child.getAttribute(\"slot\") === slotName);\n\n// added as a common method to allow detection of gatsby hydration issue, where (camelCase) props are initially undefined & then update\n// with a value. Allows a callback function to be executed when this is the case\nexport const onComponentPropUndefinedChange = (\n oldValue: string | undefined,\n newValue: string | undefined,\n callback: IcCallbackFunctionNoReturn\n): void => {\n if (oldValue === undefined && newValue !== oldValue) {\n callback();\n }\n};\n\nexport const onComponentRequiredPropUndefined = (\n props: IcPropObject[],\n component: string\n): void => {\n props.forEach(({ prop, propName }) => {\n if (prop === null || prop === undefined) {\n console.error(\n `No ${propName} specified for ${component} component - prop '${propName}' (web components) / '${kebabToCamelCase(\n propName\n )}' (react) required`\n );\n }\n });\n};\n\nexport const kebabToCamelCase = (kebabCase: string): string =>\n kebabCase\n .toLowerCase()\n .split(\"-\")\n .map((word, index) =>\n index === 0\n ? word\n : `${word.substring(0, 1).toUpperCase()}${word.substring(1)}`\n )\n .join(\"\");\n\nexport const checkResizeObserver = (\n callbackFn: IcCallbackFunctionNoReturn\n): void => {\n if (\n typeof window !== \"undefined\" &&\n typeof window.ResizeObserver !== \"undefined\"\n ) {\n callbackFn();\n }\n};\n\nconst hex2dec = (v: string) => parseInt(v, 16);\n\nexport const hexToRgba = (hex: string): IcColorRGBA => {\n const hexChars = hex\n .replace(\"#\", \"\")\n .split(\"\")\n .map((char) => char.repeat(2));\n return {\n r: hex2dec(hex.length === 4 ? hexChars[0] : hex.slice(1, 3)),\n g: hex2dec(hex.length === 4 ? hexChars[1] : hex.slice(3, 5)),\n b: hex2dec(hex.length === 4 ? hexChars[2] : hex.slice(5)),\n a: 1,\n };\n};\n\nexport const rgbaStrToObj = (rgbaStr: string): IcColorRGBA => {\n const isRGBA = rgbaStr.slice(3, 4).toLowerCase() === \"a\";\n const rgbValues = rgbaStr\n .substring(isRGBA ? 5 : 4, rgbaStr.length - 1)\n .replace(/ /g, \"\")\n .split(\",\")\n .map(Number);\n return {\n r: rgbValues[0],\n g: rgbValues[1],\n b: rgbValues[2],\n a: isRGBA ? rgbValues[3] : 1,\n };\n};\n\nexport const elementOverflowsX = ({\n scrollWidth,\n clientWidth,\n}: HTMLElement): boolean => scrollWidth > clientWidth;\n\nexport const hasClassificationBanner = (): boolean =>\n !!document.querySelector(\"ic-classification-banner:not([inline='true'])\");\n\nexport const addFormResetListener = (\n el: HTMLElement,\n callbackFn: IcCallbackFunctionNoReturn\n): void => {\n el.closest(\"FORM\")?.addEventListener(\"reset\", callbackFn);\n};\n\nexport const removeFormResetListener = (\n el: HTMLElement,\n callbackFn: IcCallbackFunctionNoReturn\n): void => {\n el.closest(\"FORM\")?.removeEventListener(\"reset\", callbackFn);\n};\n\nexport const pxToRem = (px: string, base = 16): string =>\n `${(1 / base) * parseInt(px)}rem`;\n\n/**\n * Removes the disabled attribute from the provided element when its value is set to false.\n * This effectively makes it null, to not confuse screen readers that cannot interpret the false value\n */\nexport const removeDisabledFalse = (\n disabled: boolean | undefined,\n element: HTMLElement\n): void => {\n if (!disabled) {\n element.removeAttribute(\"disabled\");\n }\n};\n\nexport const isMacDevice = (): boolean =>\n window.navigator.userAgent.toUpperCase().indexOf(\"MAC\") >= 0;\n\nexport const isNumeric = (value: string): boolean => /^-?\\d+$/.test(value);\n\nexport async function waitForHydration(): Promise<boolean> {\n const elements = document.getElementsByTagName(\"*\");\n\n for (let i = 0; i < elements.length; i++) {\n if (elements[i].tagName.startsWith(\"IC-\")) {\n if (elements[i].classList.contains(\"hydrated\")) {\n return true;\n }\n } else {\n return false;\n }\n }\n\n return false;\n}\n\nexport const convertToRGBA = (color: IcColor): IcColorRGBA | null => {\n const firstChar = color?.slice(0, 1).toLowerCase();\n\n if (firstChar !== \"#\" && firstChar !== \"r\") return null;\n return firstChar === \"#\" ? hexToRgba(color) : rgbaStrToObj(color);\n};\n\nexport const capitalize = (text: string): string =>\n text.charAt(0).toUpperCase() + text.slice(1);\n\nexport const checkSlotInChildMutations = (\n addedNodes: NodeList,\n removedNodes: NodeList,\n slotName: string | string[]\n): boolean => {\n const hasSlot = (nodeList: NodeList) =>\n Array.from(nodeList).some((node) =>\n Array.isArray(slotName)\n ? slotName.some((name) => (node as Element).slot === name)\n : (node as Element).slot === slotName\n );\n return hasSlot(addedNodes) || hasSlot(removedNodes);\n};\n\nexport const isElInAGGrid = (el: HTMLElement): boolean =>\n !!el.closest(\".ag-cell\") && !!el.closest(\".ag-root\");\n\n/**\n * Checks if the component is slotted in its relevant 'group' component\n * @param component - the component to check\n */\nexport const isSlottedInGroup = (component: HTMLElement): boolean =>\n component.parentElement?.tagName === `${component.tagName}-GROUP`;\n\nexport const hasDynamicChildSlots = (\n mutationList: MutationRecord[],\n slotNames: string | string[]\n): boolean =>\n mutationList.some(\n ({ type, addedNodes, removedNodes }) =>\n type === \"childList\" &&\n checkSlotInChildMutations(addedNodes, removedNodes, slotNames)\n );\n\nexport const renderDynamicChildSlots = (\n mutationList: MutationRecord[],\n slotNames: string | string[],\n ref: any\n): void => {\n if (hasDynamicChildSlots(mutationList, slotNames)) {\n forceUpdate(ref);\n }\n};\n\nexport const getElementInheritedTheme = (el: HTMLElement): IcThemeMode => {\n const blockParentTheme =\n el.parentElement?.closest<HTMLIcTopNavigationElement>(\n IC_BLOCK_COLOR_COMPONENTS\n )?.theme;\n\n if (blockParentTheme && blockParentTheme !== \"inherit\")\n return blockParentTheme;\n\n const wrapperTheme = el.parentElement?.closest(\"ic-theme\")?.theme;\n\n if (wrapperTheme && wrapperTheme !== \"system\") return wrapperTheme;\n\n return window.matchMedia?.(\"(prefers-color-scheme: dark)\").matches\n ? \"dark\"\n : \"light\";\n};\n"],"mappings":"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","ignoreList":[]}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{r as t,c as i,h as a,F as e,H as o,g as n}from"./p-8e4e97b4.js";import{D as s,g as r,i as c,Q as l,e as d,o as h,f as p,b,M as m,I as f,d as v}from"./p-b40ecf16.js";const g='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;color:var(--ic-top-navigation-text);width:100%;position:relative;--ic-typography-color:var(--ic-top-navigation-text);--ic-button-secondary-text-monochrome:var(--ic-brand-text-color);--ic-button-secondary-border-monochrome:var(--ic-brand-text-color);--navigation-link-colour:var(--ic-top-navigation-text)}:host(.dark){color:var(--ic-color-text-primary-light);--ic-typography-color:var(--ic-color-text-primary-light);--ic-top-navigation-logo:var(--ic-color-icon-neutral);--ic-top-navigation-icon:var(--ic-color-icon-neutral);--ic-top-navigation-icon-and-label:var(--ic-color-text-primary-light);--ic-top-navigation-theme:var(--ic-color-icon-neutral);--ic-top-navigation-status-tag:var(--ic-color-background-primary-dark);--ic-top-navigation-status-tag-text:var(--ic-color-brand-text);--ic-top-navigation-status-tag-secondary:var(--ic-state-layer-darken-10);--ic-top-navigation-title-hover:var(--ic-action-dark-bg-hover);--ic-top-navigation-title-pressed:var(--ic-action-dark-bg-pressed);--navigation-link-colour:var(--ic-color-text-primary-light)}:host(.dark) ::slotted(ic-navigation-button){--ic-button-icon-monochrome:var(--ic-color-text-primary-light)}::slotted(ic-navigation-button){--ic-button-icon-monochrome:white}:host .top-navigation{background-color:var(--ic-top-navigation-background);height:-moz-max-content;height:max-content}:host(.fullwidth-searchbar) slot[name="search"]::slotted(form){width:100%}:host .title-link{display:inline-flex;align-items:center;text-decoration:none;padding:var(--ic-space-xxs);transition:var(--ic-easing-transition-fast)}:host .title-link,:host .title-link:visited,:host .title-link:active,:host .title-link ::slotted(a),:host .title-link:visited ::slotted(a),:host .title-link:active ::slotted(a){color:var(--ic-top-navigation-icon-and-label);text-decoration:none;outline:none}:host .title-link:hover:not(:focus){background-color:var(--ic-top-navigation-title-hover)}:host .title-link:active:not(:focus){background-color:var(--ic-top-navigation-title-pressed)}:host .title-link:hover{border-radius:var(--ic-border-radius)}:host .title-link:focus,:host .title-link:focus-within{border-radius:var(--ic-border-radius);box-shadow:var(--ic-border-focus);outline:var(--ic-hc-focus-outline)}:host .title-link ic-typography{font-weight:600}:host .nav-panel-container{border-top:var(--ic-space-1px) solid var(--ic-top-navigation-keyline);padding:0 var(--ic-space-lg);margin-left:calc(-1 * var(--section-container-margin));margin-right:calc(-1 * var(--section-container-margin));display:flex}:host(.dark) .nav-panel-container{border-top:var(--ic-border-keyline-darken)}.top-panel-container{display:flex;padding-top:0.5rem;padding-bottom:0.5rem}.navigation-tabs{margin-top:calc(-1 * var(--ic-space-1px))}.app-details-container{display:flex;align-items:center;flex:1 1 auto;margin-right:var(--ic-space-md)}.app-icon-container{display:flex;padding-right:var(--ic-space-xs)}.icon-buttons-container{display:flex;margin-left:var(--ic-space-md)}.icon-buttons-container ::slotted(nav){display:flex}.title-wrap{overflow-wrap:break-word;word-wrap:break-word;-ms-word-break:break-all;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}:host .app-status{border-radius:var(--ic-space-md);background-color:var(--ic-top-navigation-status-tag);color:var(--ic-top-navigation-status-tag-text);--ic-typography-color:var(--ic-top-navigation-status-tag-text);padding:var(--ic-space-xxs) var(--ic-space-lg);margin-left:var(--ic-space-md);flex:1 1 0;max-width:-moz-fit-content;max-width:fit-content}:host .app-version{border-radius:var(--ic-space-md);background-color:var(--ic-top-navigation-status-tag-secondary);color:var(--ic-top-navigation-status-tag);padding:var(--ic-space-xxs) var(--ic-space-sm);margin-left:var(--ic-space-xs);flex:1 1 0;max-width:-moz-fit-content;max-width:fit-content}slot[name="app-icon"]::slotted(*){fill:var(--ic-top-navigation-logo);width:2em;height:2em;cursor:pointer}slot[name="toggle-icon"] svg{fill:var(--ic-top-navigation-icon)}.search-menu-container{justify-content:right;display:flex;align-items:center}.menu-button-container{margin-left:var(--ic-space-md)}.menu-button-container .navigation-landmark-button-text{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.menu-button-container .navigation-landmark-button-text:dir(rtl){right:-9999px}.search-actions-container{display:flex}.menu-buttons-slot{display:flex;flex-direction:column}.navigation-landmark-text{position:absolute;width:var(--ic-space-1px);height:var(--ic-space-1px);padding:0;margin:calc(-1 * var(--ic-space-1px));overflow:hidden}.navigation-item-list{display:flex;list-style:none;height:2.75rem}.navigation-item-list::-webkit-scrollbar{display:none}:host ic-section-container{padding-bottom:0 !important;padding-top:0 !important}@media screen and (min-width: 993px){.app-details-container{margin-right:var(--ic-space-lg)}}@media screen and (max-width: 1200px){:host .nav-panel-container{padding:0 var(--ic-space-md)}}:host(.mobile-mode) .app-status,:host(.mobile-mode) .app-version{display:none}:host(.mobile-mode) .title-link{margin-right:var(--ic-space-xs)}:host(.mobile-mode) .search-menu-container{max-width:10rem}:host(.mobile-mode) .search-bar-container{display:flex;justify-content:center;align-items:center;border-top:var(--ic-border-keyline-darken);height:4rem;padding-left:var(--ic-space-md);padding-right:var(--ic-space-md);margin-left:calc(-1 * var(--section-container-margin));margin-right:calc(-1 * var(--section-container-margin))}@media screen and (max-width: 576px){:host .title-link{margin-right:var(--ic-space-xxxs);word-break:break-word;-webkit-hyphens:none;hyphens:none}.top-panel-container{min-height:2.5rem}.search-bar-container{margin-top:0;height:3.5rem;padding-left:var(--ic-space-xs);padding-right:var(--ic-space-xs)}.menu-button-container{margin-left:var(--ic-space-sm)}slot[name="app-icon"]::slotted(*){width:1.5em;height:1.5em}slot[name="toggle-icon"] svg{width:1.5em;height:1.5em}}@media (forced-colors: active){:host .top-navigation{border-bottom:var(--ic-border-hc)}.app-status,.app-version{border:var(--ic-border-hc)}slot[name="app-icon"]::slotted(*){fill:currentcolor}slot[name="toggle-icon"] svg{fill:currentcolor}}';const u=g;const y=class{constructor(a){t(this,a);this.icNavigationMenuClosed=i(this,"icNavigationMenuClosed",7);this.icNavigationMenuOpened=i(this,"icNavigationMenuOpened",7);this.icTopNavResized=i(this,"icTopNavResized",7);this.hasAppIcon=false;this.hasAppTitleSlot=false;this.hasIconButtons=false;this.hasNavigation=false;this.hasSearchSlotContent=false;this.resizeObserver=null;this.searchBar=null;this.deviceSize=s.XL;this.foregroundColor=r();this.hasFullWidthSearchBar=false;this.mobileSearchBarVisible=false;this.mobileSearchHiddenOnBlur=false;this.navMenuVisible=false;this.searchButtonClick=false;this.searchValue="";this.contentAligned="full-width";this.customMobileBreakpoint=s.L;this.href="/";this.inline=false;this.shortAppTitle="";this.status="";this.theme="inherit";this.version="";this.checkSlots=()=>{this.hasAppIcon=c(this.el,"app-icon");this.hasAppTitleSlot=c(this.el,"app-title");this.hasNavigation=c(this.el,"navigation");this.hasIconButtons=c(this.el,"buttons");this.hasSearchSlotContent=c(this.el,"search");if(this.hasAppIcon){const t=this.el.querySelector('[slot="app-icon"]');if(t&&t.tagName==="A")t.tabIndex=-1}};this.initialiseSearchBar=()=>{if(!this.hasSearchSlotContent)return;const t=l(this.el,"search");if((t===null||t===void 0?void 0:t.tagName)==="IC-SEARCH-BAR"){this.searchBar=t}else if((t===null||t===void 0?void 0:t.tagName)==="FORM"){this.searchBar=t.querySelector("ic-search-bar")}if(this.searchBar!==null){this.searchBar.hideLabel=true}};this.toggleSearchBar=()=>{var t;this.mobileSearchBarVisible=!this.mobileSearchBarVisible;if(!this.searchBar)return;(t=this.mobileSearchButtonEl)===null||t===void 0?void 0:t.setAttribute("aria-label",`${this.mobileSearchBarVisible?"Hide":"Show"} search`);this.hasFullWidthSearchBar=this.mobileSearchBarVisible;this.searchBar.fullWidth=this.mobileSearchBarVisible;if(this.mobileSearchBarVisible){setTimeout((()=>{var t;(t=this.searchBar)===null||t===void 0?void 0:t.focus()}),100)}};this.menuButtonClick=()=>{this.showNavMenu(true)};this.showNavMenu=t=>{this.navMenuVisible=t;(t?this.icNavigationMenuOpened:this.icNavigationMenuClosed).emit();document.body.style.height=t?"100%":"auto";document.body.style.overflow=t?"hidden":"auto"};this.searchButtonMouseDownHandler=()=>{this.searchButtonClick=true};this.searchButtonClickHandler=()=>{this.toggleSearchBar();this.searchButtonClick=false};this.resizeObserverCallback=t=>{if(t===this.deviceSize)return;this.deviceSize=t;if(t>this.customMobileBreakpoint){this.showNavMenu(false);if(this.mobileSearchBarVisible){this.toggleSearchBar()}}this.icTopNavResized.emit({size:t});if(this.searchBar&&document.activeElement===this.searchBar){this.searchBar.setAttribute("hidden","true");this.searchBar.removeAttribute("hidden");setTimeout((()=>{var t;(t=this.searchBar)===null||t===void 0?void 0:t.focus()}),100)}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{this.resizeObserverCallback(d())}));this.resizeObserver.observe(this.el)}}watchPropHandler(t,i){h(i,t,this.initialiseSearchBar)}disconnectedCallback(){var t;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect()}componentWillLoad(){this.checkSlots();this.deviceSize=d();this.initialiseSearchBar()}componentDidLoad(){p(this.runResizeObserver);if(!this.hasAppTitleSlot){b([{prop:this.appTitle,propName:"app-title"}],"Top Navigation")}}componentWillRender(){this.checkSlots()}navBarMenuCloseHandler(){var t;this.showNavMenu(false);(t=this.menuButtonEl)===null||t===void 0?void 0:t.setFocus()}searchInputBlurHandler({detail:t}){if(t!==null){if(this.mobileSearchBarVisible&&!this.searchButtonClick){this.toggleSearchBar()}this.searchValue=t.value}}searchValueChangeHandler({detail:t}){this.searchValue=t.value}brandChangeHandler({detail:t}){this.foregroundColor=t.mode}render(){const{appTitle:t,contentAligned:i,customMobileBreakpoint:n,deviceSize:r,el:l,foregroundColor:d,hasAppIcon:h,hasAppTitleSlot:p,hasFullWidthSearchBar:b,hasIconButtons:g,hasNavigation:u,hasSearchSlotContent:y,href:k,inline:x,menuButtonClick:w,mobileSearchBarVisible:z,navMenuVisible:H,searchButtonClickHandler:M,searchButtonMouseDownHandler:C,shortAppTitle:B,status:S,version:T,theme:j}=this;const A=S!=="";const $=T!=="";const I=u||g||A||$;const N=r<=s.S;const R=N?"medium":"large";const V=t!==""&&v(t);const O=r<=n;const D=O?N?"subtitle-small":"h4":"h3";const L=`${z?"Hide":"Show"} search`;const F=N?"small":"medium";const W=c(l,"short-app-title");const q=p?"div":"a";const P=q=="a"&&{href:k};return a(o,{key:"04ae428a97e2c58967096b74d112eaff245f8dff",class:{"fullwidth-searchbar":b,"mobile-mode":O,[f.Dark]:d===f.Dark,[`ic-theme-${j}`]:j!=="inherit"}},a("div",{key:"567b43f0ff4239ec947520f1b3cfdca5f248a273",class:"top-navigation"},a("ic-section-container",{key:"de93c750d52edcafbf52b45f35adeb6547a68b7b",aligned:i,"full-height":true},a("header",{key:"70f3227f015418d9fa82e64786a0b6c9543b3bee",role:"banner"},a("div",{key:"cd42a8c33f9baef9566f2fea19d3e9462f4e067a",class:"top-panel-container"},a("div",{key:"192dbc95a46ffb8d06a7f55258e791a149003bd4",class:"app-details-container"},(V||p)&&a(q,Object.assign({key:"434d3d4de2d251752145200352425032692fc1cd",class:"title-link"},P),h&&a("div",{key:"6f3d2089eb16b717946baa082706beb46f04657d",class:"app-icon-container"},a("slot",{key:"0daa4b46d9e2d72aa1c68e62279e5a3389ec3ab2",name:"app-icon"})),N&&(!m(B)||W)?a("ic-typography",{variant:"subtitle-small","aria-label":(!p||!W)&&`${t} (${B})`},a("h1",null,W?a("slot",{name:"short-app-title"}):B)):a("ic-typography",{variant:D},a("h1",{class:"title-wrap"},p?a("slot",{name:"app-title"}):t))),A&&a("div",{key:"83a440ebcedf586a87690b57ea9ecfce1495ceb7",class:"app-status"},a("ic-typography",{key:"0889ee69e31b3665821b286915a43e253fd66c1a","aria-label":"app tag",variant:"label-uppercase",class:"app-status-text"},S)),$&&a("div",{key:"542d3f22383d5bac8eda47fcd47ef694f054929b",class:"app-version"},a("ic-typography",{key:"0ed2b7209b4f03da9d462ac1406d3530696b702c",variant:"label",class:"app-version-text","aria-label":"app version"},T))),(y||I)&&a("div",{key:"dbc3439b52e9d9257fc1c98ad50e25e92140ceca",class:"search-menu-container"},a("div",{key:"3f5b5d05659459daab6d0bcbd69dd0ac70eae0f8",class:"search-actions-container"},!O?a(e,null,a("slot",{name:"search"}),g&&a("div",{class:"icon-buttons-container"},a("slot",{name:"buttons"}))):a(e,null,y&&a("ic-button",{id:"search-toggle-button",ref:t=>this.mobileSearchButtonEl=t,onMouseDown:C,variant:"icon-tertiary",monochrome:true,size:R,"aria-label":L,theme:d,onClick:M},a("slot",{name:"toggle-icon"},a("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"#ffffff"},a("path",{d:"M0 0h24v24H0V0z",fill:"none"}),a("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"})))),I&&a("div",{class:"menu-button-container"},a("span",{id:"navigation-landmark-button-text",class:"navigation-landmark-button-text","aria-hidden":"true"},"Main navigation button"),a("nav",{"aria-labelledby":"navigation-landmark-button-text","aria-hidden":`${H}`},a("ic-button",{id:"menu-button",ref:t=>this.menuButtonEl=t,theme:d,variant:"secondary",monochrome:true,"aria-expanded":"false","aria-haspopup":"true","aria-label":`Open ${u?"navigation":"app"} menu`,size:F,onClick:w},"Menu",a("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24px",viewBox:"0 0 24 24",width:"24px",fill:"#ffffff",slot:"left-icon"},a("path",{d:"M0 0h24v24H0V0z",fill:"none"}),a("path",{d:"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"}))))))))),z&&a("div",{key:"b3f55a4e18ef3c55503b56447d5fbeb19e569a4f",class:"search-bar-container"},a("slot",{key:"99ebca2aa04bf76d949384c517dc2012312dbd92",name:"search"})),u&&!O&&a("div",{key:"6113dfcd92cf06c1f9a533ec6c2f0af3d26abca7",class:"navigation-tabs"},a("span",{key:"fa638d34955dccbdb7a8f149e0a8e083e3df0f72",id:"navigation-landmark-text",class:"navigation-landmark-text","aria-hidden":"true"},"Main pages"),a("nav",{key:"fc6e24c76b720a463e81dbbe00c91a065bb260ea","aria-labelledby":"navigation-landmark-text",class:"nav-panel-container"},a("ic-horizontal-scroll",{key:"da133fd91d91ff172067fc9aad86651a4c3a2f95",monochrome:true,appearance:d},a("ul",{key:"f48330caa3937f35f2f65a3fbad830bda2b5c342",class:"navigation-item-list",tabindex:"-1"},a("slot",{key:"74eb909d405109d5387f42e00a633e8ed09ff6f6",name:"navigation"})))))))),H&&a("ic-navigation-menu",{key:"c77d988d1af3ac37eebb5d598b5f649f1d47c899",version:T,status:S,class:{inline:x}},g&&a("div",{key:"77d9283a5fdffa724e13f667e9d09ae72f72329e",class:"menu-buttons-slot",slot:"buttons"},a("slot",{key:"020b485ca53e55926b072738ab7dcb465f1efce5",name:"buttons"})),a("ul",{key:"16101ca81c95d2de0d55c7a051ccffd5a987f5f8",slot:"navigation"},a("slot",{key:"02bde8c67591e4c2c15d005252f1f7ae87cff61a",name:"navigation"}))))}get el(){return n(this)}static get watchers(){return{appTitle:["watchPropHandler"]}}};y.style=u;export{y as ic_top_navigation};
|
2
|
-
//# sourceMappingURL=p-
|
1
|
+
import{r as t,c as i,h as a,F as e,H as o,g as n}from"./p-8e4e97b4.js";import{D as s,g as r,i as c,Q as l,e as d,o as h,f as p,b,M as m,I as f,d as v}from"./p-70abcb2b.js";const g='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;color:var(--ic-top-navigation-text);width:100%;position:relative;--ic-typography-color:var(--ic-top-navigation-text);--ic-button-secondary-text-monochrome:var(--ic-brand-text-color);--ic-button-secondary-border-monochrome:var(--ic-brand-text-color);--navigation-link-colour:var(--ic-top-navigation-text)}:host(.dark){color:var(--ic-color-text-primary-light);--ic-typography-color:var(--ic-color-text-primary-light);--ic-top-navigation-logo:var(--ic-color-icon-neutral);--ic-top-navigation-icon:var(--ic-color-icon-neutral);--ic-top-navigation-icon-and-label:var(--ic-color-text-primary-light);--ic-top-navigation-theme:var(--ic-color-icon-neutral);--ic-top-navigation-status-tag:var(--ic-color-background-primary-dark);--ic-top-navigation-status-tag-text:var(--ic-color-brand-text);--ic-top-navigation-status-tag-secondary:var(--ic-state-layer-darken-10);--ic-top-navigation-title-hover:var(--ic-action-dark-bg-hover);--ic-top-navigation-title-pressed:var(--ic-action-dark-bg-pressed);--navigation-link-colour:var(--ic-color-text-primary-light)}:host(.dark) ::slotted(ic-navigation-button){--ic-button-icon-monochrome:var(--ic-color-text-primary-light)}::slotted(ic-navigation-button){--ic-button-icon-monochrome:white}:host .top-navigation{background-color:var(--ic-top-navigation-background);height:-moz-max-content;height:max-content}:host(.fullwidth-searchbar) slot[name="search"]::slotted(form){width:100%}:host .title-link{display:inline-flex;align-items:center;text-decoration:none;padding:var(--ic-space-xxs);transition:var(--ic-easing-transition-fast)}:host .title-link,:host .title-link:visited,:host .title-link:active,:host .title-link ::slotted(a),:host .title-link:visited ::slotted(a),:host .title-link:active ::slotted(a){color:var(--ic-top-navigation-icon-and-label);text-decoration:none;outline:none}:host .title-link:hover:not(:focus){background-color:var(--ic-top-navigation-title-hover)}:host .title-link:active:not(:focus){background-color:var(--ic-top-navigation-title-pressed)}:host .title-link:hover{border-radius:var(--ic-border-radius)}:host .title-link:focus,:host .title-link:focus-within{border-radius:var(--ic-border-radius);box-shadow:var(--ic-border-focus);outline:var(--ic-hc-focus-outline)}:host .title-link ic-typography{font-weight:600}:host .nav-panel-container{border-top:var(--ic-space-1px) solid var(--ic-top-navigation-keyline);padding:0 var(--ic-space-lg);margin-left:calc(-1 * var(--section-container-margin));margin-right:calc(-1 * var(--section-container-margin));display:flex}:host(.dark) .nav-panel-container{border-top:var(--ic-border-keyline-darken)}.top-panel-container{display:flex;padding-top:0.5rem;padding-bottom:0.5rem}.navigation-tabs{margin-top:calc(-1 * var(--ic-space-1px))}.app-details-container{display:flex;align-items:center;flex:1 1 auto;margin-right:var(--ic-space-md)}.app-icon-container{display:flex;padding-right:var(--ic-space-xs)}.icon-buttons-container{display:flex;margin-left:var(--ic-space-md)}.icon-buttons-container ::slotted(nav){display:flex}.title-wrap{overflow-wrap:break-word;word-wrap:break-word;-ms-word-break:break-all;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}:host .app-status{border-radius:var(--ic-space-md);background-color:var(--ic-top-navigation-status-tag);color:var(--ic-top-navigation-status-tag-text);--ic-typography-color:var(--ic-top-navigation-status-tag-text);padding:var(--ic-space-xxs) var(--ic-space-lg);margin-left:var(--ic-space-md);flex:1 1 0;max-width:-moz-fit-content;max-width:fit-content}:host .app-version{border-radius:var(--ic-space-md);background-color:var(--ic-top-navigation-status-tag-secondary);color:var(--ic-top-navigation-status-tag);padding:var(--ic-space-xxs) var(--ic-space-sm);margin-left:var(--ic-space-xs);flex:1 1 0;max-width:-moz-fit-content;max-width:fit-content}slot[name="app-icon"]::slotted(*){fill:var(--ic-top-navigation-logo);width:2em;height:2em;cursor:pointer}slot[name="toggle-icon"] svg{fill:var(--ic-top-navigation-icon)}.search-menu-container{justify-content:right;display:flex;align-items:center}.menu-button-container{margin-left:var(--ic-space-md)}.menu-button-container .navigation-landmark-button-text{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.menu-button-container .navigation-landmark-button-text:dir(rtl){right:-9999px}.search-actions-container{display:flex}.menu-buttons-slot{display:flex;flex-direction:column}.navigation-landmark-text{position:absolute;width:var(--ic-space-1px);height:var(--ic-space-1px);padding:0;margin:calc(-1 * var(--ic-space-1px));overflow:hidden}.navigation-item-list{display:flex;list-style:none;height:2.75rem}.navigation-item-list::-webkit-scrollbar{display:none}:host ic-section-container{padding-bottom:0 !important;padding-top:0 !important}@media screen and (min-width: 993px){.app-details-container{margin-right:var(--ic-space-lg)}}@media screen and (max-width: 1200px){:host .nav-panel-container{padding:0 var(--ic-space-md)}}:host(.mobile-mode) .app-status,:host(.mobile-mode) .app-version{display:none}:host(.mobile-mode) .title-link{margin-right:var(--ic-space-xs)}:host(.mobile-mode) .search-menu-container{max-width:10rem}:host(.mobile-mode) .search-bar-container{display:flex;justify-content:center;align-items:center;border-top:var(--ic-border-keyline-darken);height:4rem;padding-left:var(--ic-space-md);padding-right:var(--ic-space-md);margin-left:calc(-1 * var(--section-container-margin));margin-right:calc(-1 * var(--section-container-margin))}@media screen and (max-width: 576px){:host .title-link{margin-right:var(--ic-space-xxxs);word-break:break-word;-webkit-hyphens:none;hyphens:none}.top-panel-container{min-height:2.5rem}.search-bar-container{margin-top:0;height:3.5rem;padding-left:var(--ic-space-xs);padding-right:var(--ic-space-xs)}.menu-button-container{margin-left:var(--ic-space-sm)}slot[name="app-icon"]::slotted(*){width:1.5em;height:1.5em}slot[name="toggle-icon"] svg{width:1.5em;height:1.5em}}@media (forced-colors: active){:host .top-navigation{border-bottom:var(--ic-border-hc)}.app-status,.app-version{border:var(--ic-border-hc)}slot[name="app-icon"]::slotted(*){fill:currentcolor}slot[name="toggle-icon"] svg{fill:currentcolor}}';const u=g;const y=class{constructor(a){t(this,a);this.icNavigationMenuClosed=i(this,"icNavigationMenuClosed",7);this.icNavigationMenuOpened=i(this,"icNavigationMenuOpened",7);this.icTopNavResized=i(this,"icTopNavResized",7);this.hasAppIcon=false;this.hasAppTitleSlot=false;this.hasIconButtons=false;this.hasNavigation=false;this.hasSearchSlotContent=false;this.resizeObserver=null;this.searchBar=null;this.deviceSize=s.XL;this.foregroundColor=r();this.hasFullWidthSearchBar=false;this.mobileSearchBarVisible=false;this.mobileSearchHiddenOnBlur=false;this.navMenuVisible=false;this.searchButtonClick=false;this.searchValue="";this.contentAligned="full-width";this.customMobileBreakpoint=s.L;this.href="/";this.inline=false;this.shortAppTitle="";this.status="";this.theme="inherit";this.version="";this.checkSlots=()=>{this.hasAppIcon=c(this.el,"app-icon");this.hasAppTitleSlot=c(this.el,"app-title");this.hasNavigation=c(this.el,"navigation");this.hasIconButtons=c(this.el,"buttons");this.hasSearchSlotContent=c(this.el,"search");if(this.hasAppIcon){const t=this.el.querySelector('[slot="app-icon"]');if(t&&t.tagName==="A")t.tabIndex=-1}};this.initialiseSearchBar=()=>{if(!this.hasSearchSlotContent)return;const t=l(this.el,"search");if((t===null||t===void 0?void 0:t.tagName)==="IC-SEARCH-BAR"){this.searchBar=t}else if((t===null||t===void 0?void 0:t.tagName)==="FORM"){this.searchBar=t.querySelector("ic-search-bar")}if(this.searchBar!==null){this.searchBar.hideLabel=true}};this.toggleSearchBar=()=>{var t;this.mobileSearchBarVisible=!this.mobileSearchBarVisible;if(!this.searchBar)return;(t=this.mobileSearchButtonEl)===null||t===void 0?void 0:t.setAttribute("aria-label",`${this.mobileSearchBarVisible?"Hide":"Show"} search`);this.hasFullWidthSearchBar=this.mobileSearchBarVisible;this.searchBar.fullWidth=this.mobileSearchBarVisible;if(this.mobileSearchBarVisible){setTimeout((()=>{var t;(t=this.searchBar)===null||t===void 0?void 0:t.focus()}),100)}};this.menuButtonClick=()=>{this.showNavMenu(true)};this.showNavMenu=t=>{this.navMenuVisible=t;(t?this.icNavigationMenuOpened:this.icNavigationMenuClosed).emit();document.body.style.height=t?"100%":"auto";document.body.style.overflow=t?"hidden":"auto"};this.searchButtonMouseDownHandler=()=>{this.searchButtonClick=true};this.searchButtonClickHandler=()=>{this.toggleSearchBar();this.searchButtonClick=false};this.resizeObserverCallback=t=>{if(t===this.deviceSize)return;this.deviceSize=t;if(t>this.customMobileBreakpoint){this.showNavMenu(false);if(this.mobileSearchBarVisible){this.toggleSearchBar()}}this.icTopNavResized.emit({size:t});if(this.searchBar&&document.activeElement===this.searchBar){this.searchBar.setAttribute("hidden","true");this.searchBar.removeAttribute("hidden");setTimeout((()=>{var t;(t=this.searchBar)===null||t===void 0?void 0:t.focus()}),100)}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{this.resizeObserverCallback(d())}));this.resizeObserver.observe(this.el)}}watchPropHandler(t,i){h(i,t,this.initialiseSearchBar)}disconnectedCallback(){var t;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect()}componentWillLoad(){this.checkSlots();this.deviceSize=d();this.initialiseSearchBar()}componentDidLoad(){p(this.runResizeObserver);if(!this.hasAppTitleSlot){b([{prop:this.appTitle,propName:"app-title"}],"Top Navigation")}}componentWillRender(){this.checkSlots()}navBarMenuCloseHandler(){var t;this.showNavMenu(false);(t=this.menuButtonEl)===null||t===void 0?void 0:t.setFocus()}searchInputBlurHandler({detail:t}){if(t!==null){if(this.mobileSearchBarVisible&&!this.searchButtonClick){this.toggleSearchBar()}this.searchValue=t.value}}searchValueChangeHandler({detail:t}){this.searchValue=t.value}brandChangeHandler({detail:t}){this.foregroundColor=t.mode}render(){const{appTitle:t,contentAligned:i,customMobileBreakpoint:n,deviceSize:r,el:l,foregroundColor:d,hasAppIcon:h,hasAppTitleSlot:p,hasFullWidthSearchBar:b,hasIconButtons:g,hasNavigation:u,hasSearchSlotContent:y,href:k,inline:x,menuButtonClick:w,mobileSearchBarVisible:z,navMenuVisible:H,searchButtonClickHandler:M,searchButtonMouseDownHandler:C,shortAppTitle:B,status:S,version:T,theme:j}=this;const A=S!=="";const $=T!=="";const I=u||g||A||$;const N=r<=s.S;const R=N?"medium":"large";const V=t!==""&&v(t);const O=r<=n;const D=O?N?"subtitle-small":"h4":"h3";const L=`${z?"Hide":"Show"} search`;const F=N?"small":"medium";const W=c(l,"short-app-title");const q=p?"div":"a";const P=q=="a"&&{href:k};return a(o,{key:"04ae428a97e2c58967096b74d112eaff245f8dff",class:{"fullwidth-searchbar":b,"mobile-mode":O,[f.Dark]:d===f.Dark,[`ic-theme-${j}`]:j!=="inherit"}},a("div",{key:"567b43f0ff4239ec947520f1b3cfdca5f248a273",class:"top-navigation"},a("ic-section-container",{key:"de93c750d52edcafbf52b45f35adeb6547a68b7b",aligned:i,"full-height":true},a("header",{key:"70f3227f015418d9fa82e64786a0b6c9543b3bee",role:"banner"},a("div",{key:"cd42a8c33f9baef9566f2fea19d3e9462f4e067a",class:"top-panel-container"},a("div",{key:"192dbc95a46ffb8d06a7f55258e791a149003bd4",class:"app-details-container"},(V||p)&&a(q,Object.assign({key:"434d3d4de2d251752145200352425032692fc1cd",class:"title-link"},P),h&&a("div",{key:"6f3d2089eb16b717946baa082706beb46f04657d",class:"app-icon-container"},a("slot",{key:"0daa4b46d9e2d72aa1c68e62279e5a3389ec3ab2",name:"app-icon"})),N&&(!m(B)||W)?a("ic-typography",{variant:"subtitle-small","aria-label":(!p||!W)&&`${t} (${B})`},a("h1",null,W?a("slot",{name:"short-app-title"}):B)):a("ic-typography",{variant:D},a("h1",{class:"title-wrap"},p?a("slot",{name:"app-title"}):t))),A&&a("div",{key:"83a440ebcedf586a87690b57ea9ecfce1495ceb7",class:"app-status"},a("ic-typography",{key:"0889ee69e31b3665821b286915a43e253fd66c1a","aria-label":"app tag",variant:"label-uppercase",class:"app-status-text"},S)),$&&a("div",{key:"542d3f22383d5bac8eda47fcd47ef694f054929b",class:"app-version"},a("ic-typography",{key:"0ed2b7209b4f03da9d462ac1406d3530696b702c",variant:"label",class:"app-version-text","aria-label":"app version"},T))),(y||I)&&a("div",{key:"dbc3439b52e9d9257fc1c98ad50e25e92140ceca",class:"search-menu-container"},a("div",{key:"3f5b5d05659459daab6d0bcbd69dd0ac70eae0f8",class:"search-actions-container"},!O?a(e,null,a("slot",{name:"search"}),g&&a("div",{class:"icon-buttons-container"},a("slot",{name:"buttons"}))):a(e,null,y&&a("ic-button",{id:"search-toggle-button",ref:t=>this.mobileSearchButtonEl=t,onMouseDown:C,variant:"icon-tertiary",monochrome:true,size:R,"aria-label":L,theme:d,onClick:M},a("slot",{name:"toggle-icon"},a("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"#ffffff"},a("path",{d:"M0 0h24v24H0V0z",fill:"none"}),a("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"})))),I&&a("div",{class:"menu-button-container"},a("span",{id:"navigation-landmark-button-text",class:"navigation-landmark-button-text","aria-hidden":"true"},"Main navigation button"),a("nav",{"aria-labelledby":"navigation-landmark-button-text","aria-hidden":`${H}`},a("ic-button",{id:"menu-button",ref:t=>this.menuButtonEl=t,theme:d,variant:"secondary",monochrome:true,"aria-expanded":"false","aria-haspopup":"true","aria-label":`Open ${u?"navigation":"app"} menu`,size:F,onClick:w},"Menu",a("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24px",viewBox:"0 0 24 24",width:"24px",fill:"#ffffff",slot:"left-icon"},a("path",{d:"M0 0h24v24H0V0z",fill:"none"}),a("path",{d:"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"}))))))))),z&&a("div",{key:"b3f55a4e18ef3c55503b56447d5fbeb19e569a4f",class:"search-bar-container"},a("slot",{key:"99ebca2aa04bf76d949384c517dc2012312dbd92",name:"search"})),u&&!O&&a("div",{key:"6113dfcd92cf06c1f9a533ec6c2f0af3d26abca7",class:"navigation-tabs"},a("span",{key:"fa638d34955dccbdb7a8f149e0a8e083e3df0f72",id:"navigation-landmark-text",class:"navigation-landmark-text","aria-hidden":"true"},"Main pages"),a("nav",{key:"fc6e24c76b720a463e81dbbe00c91a065bb260ea","aria-labelledby":"navigation-landmark-text",class:"nav-panel-container"},a("ic-horizontal-scroll",{key:"da133fd91d91ff172067fc9aad86651a4c3a2f95",monochrome:true,appearance:d},a("ul",{key:"f48330caa3937f35f2f65a3fbad830bda2b5c342",class:"navigation-item-list",tabindex:"-1"},a("slot",{key:"74eb909d405109d5387f42e00a633e8ed09ff6f6",name:"navigation"})))))))),H&&a("ic-navigation-menu",{key:"c77d988d1af3ac37eebb5d598b5f649f1d47c899",version:T,status:S,class:{inline:x}},g&&a("div",{key:"77d9283a5fdffa724e13f667e9d09ae72f72329e",class:"menu-buttons-slot",slot:"buttons"},a("slot",{key:"020b485ca53e55926b072738ab7dcb465f1efce5",name:"buttons"})),a("ul",{key:"16101ca81c95d2de0d55c7a051ccffd5a987f5f8",slot:"navigation"},a("slot",{key:"02bde8c67591e4c2c15d005252f1f7ae87cff61a",name:"navigation"}))))}get el(){return n(this)}static get watchers(){return{appTitle:["watchPropHandler"]}}};y.style=u;export{y as ic_top_navigation};
|
2
|
+
//# sourceMappingURL=p-773ded36.entry.js.map
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{r as e,c as o,h as t,H as i,g as r}from"./p-8e4e97b4.js";import{v as a,g as n,e as c,f as s,a as l,i as d,w as f,I as
|
2
|
-
//# sourceMappingURL=p-
|
1
|
+
import{r as e,c as o,h as t,H as i,g as r}from"./p-8e4e97b4.js";import{v as a,g as n,e as c,f as s,a as l,i as d,w as f,I as b}from"./p-70abcb2b.js";const p='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;--footer-compliance-padding:1rem 0}:host(.ic-footer-sparse){--footer-links-padding:1.5rem 0;--footer-logo-margin-bottom:calc(var(--ic-space-md) + var(--ic-space-xxs));--footer-link-inner-flex-direction:row}:host(.ic-footer-small){--footer-links-padding:0 0;--footer-logo-margin-bottom:var(--ic-space-md);--footer-link-inner-flex-direction:column}:host(.ic-footer-foreground-dark){--ic-footer-background:var(--ic-brand-color-secondary-light);--ic-footer-bottom-background:var(--ic-brand-color-tertiary-light);--ic-footer-keyline:var(--ic-state-layer-darken-20);--ic-footer-text:var(--ic-color-text-primary-light);--ic-footer-link:var(--ic-color-text-primary-light);--ic-footer-icon:var(--ic-color-icon-neutral);--ic-footer-chevron-icon:var(--ic-color-icon-neutral);--ic-footer-logo:var(--ic-color-icon-neutral);--ic-footer-hover:var(--ic-architectural-700-state-layer-10);--ic-footer-pressed:var(--ic-architectural-700-state-layer-20)}:host(.ic-footer-small.ic-footer-ungrouped){--footer-links-padding:var(--ic-space-md) 0 0 0}footer{display:flex;flex-direction:column;width:100%}.footer-description{background-color:var(--ic-footer-background);color:var(--ic-footer-text);--ic-typography-color:var(--ic-footer-text);border-bottom:var(--ic-space-1px) solid var(--ic-footer-keyline)}.footer-description-inner{padding:1rem 0}.footer-links{padding:var(--footer-links-padding);background-color:var(--ic-footer-background);color:var(--ic-footer-link);--ic-typography-color:var(--ic-footer-link)}.footer-links-inner{display:flex;flex-direction:var(--footer-link-inner-flex-direction)}.footer-compliance{background-color:var(--ic-footer-bottom-background);color:var(--ic-footer-text);--ic-typography-color:var(--ic-footer-text)}.footer-compliance-inner{padding:var(--footer-compliance-padding)}.footer-logo{margin-bottom:var(--footer-logo-margin-bottom);display:flex;gap:var(--ic-space-xxl)}.footer-logo>::slotted(){margin-right:var(--ic-space-md)}.footer-caption{margin-bottom:var(--ic-space-md)}.classification-spacing{margin-bottom:var(--ic-space-lg)}@media (forced-colors: active){footer{border-top:var(--ic-border-hc)}}';const m=p;const g=class{constructor(t){e(this,t);this.footerResized=o(this,"footerResized",7);this.resizeObserver=null;this.hostMutationObserver=null;this.deviceSize=a.XL;this.foregroundColor=n();this.aligned="left";this.breakpoint="medium";this.copyright=true;this.groupLinks=false;this.resizeObserverCallback=e=>{if(e!==this.deviceSize){this.deviceSize=e}this.footerResized.emit()};this.runResizeObserver=()=>{if(this.footerEl){this.resizeObserver=new ResizeObserver((()=>{const e=c();this.resizeObserverCallback(e)}));this.resizeObserver.observe(this.footerEl)}}}disconnectedCallback(){var e;if(this.resizeObserver!==null){this.resizeObserver.disconnect()}(e=this.hostMutationObserver)===null||e===void 0?void 0:e.disconnect()}componentWillLoad(){this.deviceSize=c()}componentDidLoad(){s(this.runResizeObserver);this.hostMutationObserver=new MutationObserver((e=>l(e,"link",this)));this.hostMutationObserver.observe(this.el,{childList:true})}brandChangeHandler(e){this.foregroundColor=e.detail.mode}isSmall(){const e=this.breakpoint;return e==="extra small"?this.deviceSize<a.XS:e==="small"?this.deviceSize<a.S:e==="medium"?this.deviceSize<a.M:e==="large"?this.deviceSize<a.L:e==="extra large"?this.deviceSize<a.XL:false}render(){const{aligned:e,caption:o,copyright:r,description:n,deviceSize:c,el:s,foregroundColor:l,groupLinks:p}=this;const m=this.isSmall();const g=d(s,"logo")||d(s,"caption")||o||r;return t(i,{key:"b25023d5362ca9baca9c01a319c038eb4540e97a",class:{["ic-footer"]:true,[`ic-footer-${m?"small":"sparse"}`]:true,[`ic-footer-${p?"grouped":"ungrouped"}`]:true,[`ic-footer-foreground-${l}`]:true,[`ic-footer-${b.Dark}`]:l===b.Dark,[`ic-footer-${b.Light}`]:l===b.Light}},t("footer",{key:"053aafbd7016c4a74230cb3f4bd15ff1bd331761",ref:e=>this.footerEl=e},(d(s,"description")||n)&&t("div",{key:"c963c42c0f4d0a19d8fe9c133ca3cf9261398d70",class:"footer-description"},t("ic-section-container",{key:"0dd1fd94781722a494368e146f2a0b8417e1849d",aligned:e,fullHeight:true},t("div",{key:"61a25339f136d624ef39c3f72ff920735eac3656",class:"footer-description-inner"},t("ic-typography",{key:"4655d70fa69d5cc7ed44e352d37646a93b95067a",variant:"body"},t("slot",{key:"3a04c622d16c8fbad42bde6e5a62b94a7cc0dbfc",name:"description"},n))))),d(s,"link")&&t("div",{key:"9a98191b7712a906aafa5295786586cdca8fdd63",class:"footer-links"},p&&m?t("div",{class:"footer-links-inner",role:"list"},t("slot",{name:"link"})):t("ic-section-container",{fullHeight:true,aligned:e},t("div",{class:"footer-links-inner",role:"list"},t("slot",{name:"link"})))),g&&t("div",{key:"26f71e1feac14df4ffd9a5f945823e7d8a334f87",class:"footer-compliance"},t("ic-section-container",{key:"d4b53cd4e8b1170b629f6493188f48438c1edd00",aligned:e,fullHeight:true},t("div",{key:"50b07020da89a9ebe53d6fd035b7139ac8ca2282",class:"footer-compliance-inner"},d(s,"logo")&&t("div",{key:"2ea27171f29498639b56426d4d21fbf4afc98798",class:"footer-logo"},t("slot",{key:"b09b28173314c1b0a63ce1ecdf60822d7497ed80",name:"logo"})),(d(s,"caption")||o)&&t("div",{key:"b4ce260f52b3216ec3c73430311b7659e651a544",class:"footer-caption"},t("ic-typography",{key:"f83868bac58237dcd8586d4d161db7677f0b2b16",variant:c<=a.M?"caption":"body"},t("slot",{key:"3da3e317b1f62be124bbabc9283e08258dc57141",name:"caption"},o))),r&&t("div",{key:"63b18007efa190d038048a1d57223dc0547a64ad",class:{["footer-copyright"]:true,["classification-spacing"]:f()}},t("ic-typography",{key:"0dc6200bfb89a7b34743c442f9c61829cd4b9374",variant:c<=a.M?"caption-uppercase":"label-uppercase"},"© Crown Copyright")))))))}get el(){return r(this)}};g.style=m;export{g as ic_footer};
|
2
|
+
//# sourceMappingURL=p-77750efc.entry.js.map
|
@@ -0,0 +1,2 @@
|
|
1
|
+
import{r as i,c as t,h as e,f as a,H as n,g as o}from"./p-8e4e97b4.js";import{B as s,D as r,g as d,e as l,A as c}from"./p-70abcb2b.js";import{C as v}from"./p-3b185c32.js";import{O as h}from"./p-426ec638.js";const g='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;--navigation-link-colour:var(--ic-brand-text-color)}:host(:focus-within){z-index:var(--ic-z-index-navigation-item)}svg{width:var(--ic-space-xl);fill:var(--ic-brand-text-color)}.svg{margin-left:auto}.chevron-container svg,.chevron-container .svg{width:var(--ic-space-lg);height:var(--ic-space-lg)}.chevron-container{flex-grow:1}:host(.expandable.navigation-item) .link,:host(.expandable.navigation-item) ::slotted(a){padding-right:0}:host(.navigation-item) .link,:host(.navigation-item) ::slotted(a){height:calc(100% - var(--ic-space-xxs));width:-moz-fit-content;width:fit-content;color:var(--navigation-link-colour);display:flex;align-items:center;justify-content:center;padding:0 var(--ic-space-md) var(--ic-space-xxs);text-decoration:none;transition:var(--ic-easing-transition-fast);position:relative;white-space:nowrap}:host(.navigation-item) ::slotted(a){height:100%;font:var(--ic-font-label) !important;letter-spacing:var(--ic-font-letter-spacing-0pt025) !important;padding:0 var(--ic-space-md) !important}:host(.navigation-item-selected) .link::after,:host(.navigation-item-selected) ::slotted(a.active)::after,:host(.navigation-item-top-nav) ::slotted(a.active)::after{content:"";height:0.25rem;width:100%;position:absolute;bottom:0;background-color:var(--ic-top-navigation-theme)}:host(.navigation-item-selected.navigation-item-page-header) ::slotted(a.active)::after,:host(.navigation-item-selected.navigation-item-page-header) .link::after,:host(.navigation-item.navigation-item-page-header) ::slotted(a.active)::after,:host(.navigation-item-top-nav-child) ::slotted(a.active)::after{content:none}:host(.navigation-item-side-menu-selected) .link,:host(.navigation-item-side-menu) ::slotted(a.active),:host(.navigation-item-top-nav-child) ::slotted(a.active){box-shadow:none}:host(.navigation-item) .link:hover:not(:focus){background-color:var(--ic-brand-hover);cursor:pointer}:host(.navigation-item:not(.navigation-item-page-header,.navigation-item-side-menu,.navigation-item-top-nav-child)) ::slotted(a:hover:not(:focus)),:host(.navigation-item-side-nav.navigation-item) .link:hover:not(:focus){background-color:var(--ic-brand-hover) !important}:host(.navigation-item:not(.navigation-item-top-nav-child,.navigation-item-side-menu,.navigation-item-top-nav-child-selected .navigation-item-side-menu-selected)) .focus-indicator:focus-within{box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius)}:host(.navigation-item) .link:focus,:host(.navigation-item) ::slotted(a:focus){box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);outline:var(--ic-hc-focus-outline);outline-offset:calc(-1 * (var(--ic-space-xxxs) + var(--ic-space-1px) / 2))}:host(.navigation-item-selected) .link:focus,:host(.navigation-item) ::slotted(a.active:focus){box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);outline:var(--ic-hc-focus-outline);outline-offset:calc(-1 * (var(--ic-space-xxxs) + var(--ic-space-1px) / 2))}:host(.navigation-item) .link:active:not(:focus),:host(.navigation-item) ::slotted(a:active:not(:focus)){background-color:var(--ic-brand-active)}:host(.navigation-item-side-menu) .link,:host(.navigation-item-side-menu) ::slotted(a){min-height:2.5rem;height:auto;width:100%;box-sizing:border-box;color:var(--ic-top-navigation-nav-item);--ic-typography-color:var(--ic-top-navigation-nav-item);display:flex;align-items:center;justify-content:flex-start;text-decoration:none;text-wrap:wrap;white-space:normal;transition:box-shadow var(--ic-transition-duration-fast),\n border-radius var(--ic-transition-duration-fast)}:host(.navigation-item-top-nav-child) ::slotted(svg),:host(.navigation-item-side-menu) ::slotted(svg),:host(.navigation-item-page-header) ::slotted(svg){fill:var(--ic-color-text-primary)}:host(.navigation-item-side-menu) ::slotted(a){font:var(--ic-font-body) !important;letter-spacing:var(--ic-font-letter-spacing-0pt005) !important;transition:box-shadow var(--ic-easing-transition-fast),\n background-color var(--ic-easing-transition-fast)}:host(.navigation-item-side-menu) .link:hover:not(:focus){background-color:var(--ic-top-navigation-nav-item-hover)}:host(.navigation-item-side-menu) ::slotted(a:hover:not(:focus)){background-color:var(--ic-top-navigation-nav-item-hover) !important}:host(.navigation-item-side-menu) .focus-indicator:focus-within{box-shadow:none}:host(.navigation-item-side-menu) .link:focus,:host(.navigation-item-side-menu) ::slotted(a:focus){box-shadow:var(--ic-border-focus-inset) !important;width:auto;border-radius:var(--ic-border-radius-inset) !important}:host(.navigation-item-side-menu-selected) .link,:host(.navigation-item-side-menu-selected) ::slotted(a){transition:box-shadow var(--ic-easing-transition-slow),\n background-color var(--ic-easing-transition-slow)}:host(.navigation-item-side-menu-selected) .link:focus,:host(.navigation-item-side-menu) ::slotted(a.active:focus),:host(.navigation-item-top-nav-child) ::slotted(a.active:focus){margin-left:var(--ic-space-xs) !important;padding-left:var(--ic-space-xs) !important}:host(.navigation-item-top-nav-child) .link,:host(.navigation-item-top-nav-child) ::slotted(a){height:2.5rem;width:calc(100% - var(--ic-space-xl));min-width:9.063rem;color:var(--ic-top-navigation-nav-item);display:flex;align-items:center;justify-content:flex-start;padding:0 var(--ic-space-md) !important;text-decoration:none;position:relative;transition:box-shadow var(--ic-transition-duration-fast),\n border-radius var(--ic-transition-duration-slow)}:host(.navigation-item-top-nav-child) ::slotted(a){font:var(--ic-font-body) !important;letter-spacing:var(--ic-font-letter-spacing-0pt005) !important}:host(.navigation-item-top-nav-child) .link:hover:not(:focus),:host(.navigation-item-top-nav-child) ::slotted(a:hover:not(:focus)){background-color:var(--ic-top-navigation-nav-item-hover) !important}:host(.navigation-item-top-nav-child) .link:focus,:host(.navigation-item-top-nav-child) ::slotted(a:focus){z-index:1;outline:var(--ic-hc-focus-outline);border-radius:var(--ic-border-radius-inset);box-shadow:var(--ic-border-focus-inset);transition:border-radius 0s, box-shadow var(--ic-transition-duration-fast)}:host(.navigation-item-top-nav-child) ::slotted(a.active:focus){box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset)}:host(.navigation-item-side-menu) .link:active:not(:focus){background-color:var(--ic-top-navigation-nav-item-pressed)}:host(.navigation-item-top-nav-child) .link:active:not(:focus),:host(.navigation-item-top-nav-child) ::slotted(a:active:not(:focus)){outline:var(--ic-hc-focus-outline);background-color:var(--ic-top-navigation-nav-item-pressed)}:host(.navigation-item-top-nav-child) ::slotted(a:active:not(:focus)),:host(.navigation-item-side-menu) ::slotted(a:active:not(:focus)){background-color:var(--ic-top-navigation-nav-item-pressed) !important}:host(.navigation-item-side-menu-selected) *,:host(.navigation-item-top-nav-child-selected) *,:host(.navigation-item-side-menu) ::slotted(a.active),:host(.navigation-item-top-nav-child) ::slotted(a.active){font-weight:700 !important}:host(.navigation-item-top-nav-child) ::slotted(a.active)::before,:host(.navigation-item-top-nav-child-selected) .link::before,:host(.navigation-item-side-menu-selected) .link::before,:host(.navigation-item-side-menu) ::slotted(a.active)::before,:host(.navigation-item-side-menu-selected) .link:focus::before,:host(.navigation-item-side-menu) ::slotted(a.active:focus)::before{content:"";position:absolute;left:0;width:var(--ic-space-xs);height:inherit;min-height:2.5rem;background-color:var(--ic-top-navigation-nav-item-banner);transition:left 0s}:host(.navigation-item-side-menu-selected) .link::before,:host(.navigation-item-side-menu-selected) .link:focus::before{margin-top:var(--ic-space-xxs)}:host(.navigation-item-top-nav-child-selected) .link:focus{margin-left:var(--ic-space-xs);margin-right:calc(-1 * var(--ic-space-xs));padding-left:var(--ic-space-xs) !important}:host(.navigation-item-top-nav-child-selected) .link:focus::before{left:calc(-1 * var(--ic-space-xs));z-index:1}:host(.navigation-item-side-menu-selected) .link::before,:host(.navigation-item-side-menu) ::slotted(a.active)::before,:host(.navigation-item-side-menu-selected) .link:focus::before,:host(.navigation-item-side-menu) ::slotted(a.active:focus)::before{z-index:1}:host(.navigation-item-side-menu-selected) .link:focus::before,:host(.navigation-item-side-menu) ::slotted(a.active:focus)::before,:host(.navigation-item-top-nav-child) ::slotted(a.active:focus)::before{left:calc(-1 * var(--ic-space-xs))}:host(.navigation-item-side-menu-selected) .link::after{display:none}:host(.navigation-item-side-nav-collapsed) .link{height:100%}:host(.navigation-item-side-nav-collapsed) ::slotted(svg),:host(.navigation-item-side-nav-collapsed-with-label) ::slotted(svg){margin:auto;pointer-events:none}:host(.navigation-item-side-nav-collapsed) .icon,:host(.navigation-item-side-nav-collapsed-with-label) .icon,:host(.navigation-item-side-nav-collapsed-with-label) ic-typography{align-items:center;padding:0;margin:auto 0;width:-moz-fit-content;width:fit-content;pointer-events:none}:host(.navigation-item-side-nav-collapsed-with-label) ic-typography{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;text-align:center}:host(.navigation-item-side-nav-collapsed-with-label) .link,:host(.navigation-item-side-nav-collapsed-with-label) ::slotted(a){display:flex;flex-direction:column;height:-moz-fit-content;height:fit-content;padding:var(--ic-space-xs) !important;gap:var(--ic-space-xxs)}:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label) .link,:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label) ::slotted(a){height:auto !important;gap:0;width:auto;padding:var(--ic-space-xs) !important}:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label) ::slotted(a){display:block;text-align:center}:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label) .link ic-typography{opacity:1;min-width:-moz-min-content;min-width:min-content}:host(.navigation-item-side-nav-collapsed) svg,:host(.navigation-item-side-nav-collapsed-with-label) svg{display:none}::slotted(svg){fill:var(--ic-brand-text-color);height:var(--ic-space-lg);width:var(--ic-space-lg);margin-left:var(--ic-space-md)}.icon{height:1.5rem;width:var(--ic-space-xxl);margin-left:calc(-1 * var(--ic-space-md));flex:0 1 0%;position:relative}.icon>::slotted(*){margin-left:var(--ic-space-md) !important;margin-right:var(--ic-space-xs)}.inline-badge{margin-left:var(--ic-space-xs)}.badge{margin-left:0}:host(.navigation-item-side-nav-collapsed) .icon>::slotted(*){margin:auto !important}:host(.navigation-item-side-nav) .icon>::slotted(*){margin-right:0}:host(.navigation-item-side-nav) .link,:host(.navigation-item-side-nav) ::slotted(a){height:var(--navigation-item-height, 4rem);min-height:var(--navigation-item-min-height);width:var(--navigation-item-width, auto);justify-content:var(--navigation-item-justify-content);display:flex;gap:var(--ic-space-xs);box-sizing:border-box;color:var(--navigation-item-child-color) !important;text-decoration:none !important;white-space:nowrap;padding:0 var(--ic-space-md);text-wrap:wrap}:host(.navigation-item-side-nav.navigation-item-top-nav-child) .link,:host(.navigation-item-side-nav.navigation-item-top-nav-child) ::slotted(a){height:var(--navigation-item-child-height);width:var(--navigation-group-width);color:var(--navigation-item-child-color) !important;display:flex;gap:0.625rem;box-sizing:border-box;min-width:0;transition:box-shadow var(--ic-easing-transition-fast);text-decoration:none !important;white-space:nowrap}:host(.navigation-item-side-nav.navigation-item-top-nav-child) .link:focus,:host(.navigation-item-side-nav.navigation-item-top-nav-child) ::slotted(a:focus){box-shadow:var(--ic-border-focus-dark)}:host(.navigation-item-side-nav.navigation-item-side-menu) .link:active{background-color:var(--navigation-item-child-active)}:host(.navigation-item-side-nav.navigation-item-top-nav-child) .link:active,:host(.navigation-item-side-nav.navigation-item-top-nav-child) ::slotted(a:active){background-color:var(--navigation-item-child-active)}:host(.navigation-item-side-nav) a.link ic-typography,:host(.navigation-item-side-nav.navigation-item-top-nav-child) a.link ic-typography,:host(.navigation-item-side-nav) div.link ic-typography,:host(.navigation-item-side-nav.navigation-item-top-nav-child) div.link ic-typography,.navigation-item-side-nav-slotted-text{opacity:var(--navigation-item-label-opacity);transition:opacity var(--ic-easing-transition-slow);white-space:wrap;text-overflow:ellipsis;overflow:hidden}:host(.navigation-item-side-nav.navigation-item-selected) .link,:host(.navigation-item-side-nav.navigation-item) ::slotted(a.active){box-shadow:inset 0.313rem 0 0 var(--ic-brand-text-color)}:host(.navigation-item-side-nav.navigation-item-selected) .link::before,:host(.navigation-item-side-nav) ::slotted(a.active)::before{content:"";display:block;position:absolute;inset:0 0 0 0.313rem;border-radius:0.688rem !important;transition:var(--ic-easing-transition-slow)}:host(.navigation-item-side-nav.navigation-item-selected) .link:focus::before,:host(.navigation-item-side-nav) ::slotted(a.active:focus)::before{box-shadow:var(--ic-border-focus-inset)}:host(:not(.navigation-item-side-nav-collapsed).navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label) .link{opacity:var(--navigation-item-label-opacity);height:auto}:host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label) .link,:host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label) ::slotted(a){min-width:var(--navigation-group-item-min-width);padding:var(--ic-space-xs) !important;height:auto;gap:0}:host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label) ::slotted(a){display:block}:host(.navigation-item-side-nav.navigation-item-selected) .link::after,:host(.navigation-item-side-nav) ::slotted(a.active)::after{display:none}:host(.navigation-item-side-nav.navigation-item) .link:focus,:host(.navigation-item-side-nav.navigation-item) ::slotted(a:focus){box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset);background-color:transparent}:host(.navigation-item-side-nav.navigation-item-selected) .link:focus,:host(.navigation-item-side-nav) ::slotted(a.active:focus){margin:0 auto;box-shadow:inset 0.313rem 0 0 var(--ic-brand-text-color);border-radius:0}:host(.navigation-item-page-header).link,:host(.navigation-item-page-header) a,:host(.navigation-item-page-header) ::slotted(a){height:2.5rem !important;color:var(--ic-color-text-primary) !important;transition:all var(--ic-easing-transition-fast) !important;box-shadow:rgba(23 89 188 / 0%) !important}:host(.navigation-item-page-header.navigation-item-selected) .link::after,:host(.navigation-item-page-header) ::slotted(a.active)::after{content:" " !important;position:absolute;bottom:0;left:0;right:0;height:var(--ic-space-xxs);background-color:var(--ic-action-default) !important}:host(.navigation-item-page-header) .link:hover,:host(.navigation-item-page-header) ::slotted(.link:hover),:host(.navigation-item-page-header) ::slotted(a:hover),:host(.navigation-item-page-header) .link:hover:not(:focus){background-color:var(--ic-action-default-bg-hover) !important;cursor:pointer}:host(.navigation-item-page-header) .link:focus,:host(.navigation-item-page-header) ::slotted(a:focus){box-shadow:var(--ic-border-focus)}:host(.navigation-item-page-header) .link:active,:host(.navigation-item-page-header) ::slotted(a:active){background-color:var(--ic-action-default-bg-pressed) !important}:host(.navigation-item-page-header.navigation-item-selected) .link:focus::after,:host(.navigation-item-page-header) ::slotted(a.active:focus)::after{border-bottom-left-radius:var(--ic-border-radius);border-bottom-right-radius:var(--ic-border-radius)}:host(.navigation-item-page-header.navigation-item-selected.with-transition) .link,:host(.navigation-item-page-header.navigation-item-selected.with-transition) ::slotted(a.active){transition:all var(--ic-easing-transition-fast),\n border-color var(--ic-transition-duration-fast)}:host(.navigation-item-page-header) ::slotted(a.active)::before,:host(.navigation-item-page-header) ::slotted(a.active:focus)::before,:host(.navigation-item-page-header.navigation-item-selected) .link:focus::before{display:none}.open-in-new-icon{flex:1}.open-in-new-icon svg{margin-top:var(--ic-space-xxs);padding-left:var(--ic-space-xs)}:host(.navigation-item-side-nav) .open-in-new-icon{margin-left:calc(-1 * var(--ic-space-xs))}:host(.navigation-item-top-nav) .open-in-new-icon svg,:host(.navigation-item-page-header) .open-in-new-icon svg,:host(.navigation-item-side-nav) .open-in-new-icon svg{height:0.875rem;width:0.875rem}:host(.navigation-item-side-menu) .open-in-new-icon svg,:host(.navigation-item-top-nav-child) .open-in-new-icon svg{height:var(--ic-space-md);width:var(--ic-space-md)}:host(.navigation-item-page-header) .open-in-new-icon svg,:host(.navigation-item-top-nav-child) .open-in-new-icon svg,:host(.navigation-item-side-menu) .open-in-new-icon svg{fill:var(--ic-color-text-primary)}@media (forced-colors: active){.open-in-new-icon svg{fill:currentcolor}}';const m=g;const p=class{constructor(n){i(this,n);this.childBlur=t(this,"childBlur",7);this.navItemClicked=t(this,"navItemClicked",7);this.isInitialRender=true;this.hostMutationObserver=null;this.ANIMATION_DURATION=parseInt(s("--ic-transition-duration-slow"))||0;this.ARIA_LABEL_STRING="aria-label";this.isInSideNav=false;this.deviceSize=r.XL;this.focusStyle=d();this.inTopNavSideMenu=false;this.isSideNavMobile=false;this.isTopNavChild=false;this.sideNavExpanded=false;this.ariaLabel="";this.collapsedIconLabel=false;this.displayNavigationTooltip=false;this.download=false;this.expandable=false;this.href="";this.selected=false;this.theme="inherit";this.displayDefaultNavigationItem=(i,t,a,n,o,s,r)=>{const d=this.isTopNavChild||this.inTopNavSideMenu?"body":"label";const l=this.expandable&&e("div",{class:{svg:true},innerHTML:v});const c=this.el.querySelector('[slot="badge"]');const g=c&&e("div",{class:"inline-badge"},e("slot",{name:"badge"}));const m=this.el.querySelector('[slot="icon"]')&&e("div",{class:"icon"},e("slot",{name:"icon"}),this.isInSideNav&&g);return i!==""?e("a",{href:i,target:n,rel:o,hreflang:a,referrerPolicy:s,download:r!==false?r:null,class:"link",ref:i=>this.itemEl=i,part:"link","aria-label":this.ariaLabel?this.ariaLabel:null},m,e("ic-typography",{variant:d},t),n==="_blank"&&e("span",{class:"open-in-new-icon",innerHTML:h}),g,e("div",{class:"chevron-container"},l)):e("div",{tabindex:"0",class:"link",ref:i=>this.itemEl=i},m,e("ic-typography",{variant:d},t),l,g)};this.topNavResizedHandler=({detail:i})=>{var t;const{size:e}=i;if(e!==this.deviceSize){this.deviceSize=e;this.inTopNavSideMenu=e<=(((t=this.parentEl)===null||t===void 0?void 0:t.customMobileBreakpoint)||r.L)}};this.sideNavExpandHandler=({detail:i})=>{const{sideNavExpanded:t,sideNavMobile:e}=i;this.sideNavExpanded=t;this.isSideNavMobile=e;this.sideNavToggleTooltip(!t&&!e)};this.handleBlur=({relatedTarget:i})=>{if(i===null||i.tagName!=="IC-NAVIGATION-ITEM"){this.childBlur.emit()}};this.handleClick=i=>{if(i.type==="click"||i.type==="keydown"&&(i.key==="Enter"||i.key===" ")){this.navItemClicked.emit()}};this.hostMutationCallback=i=>{let t=false;i.forEach((({attributeName:i})=>{if(i){const e=this.el.getAttribute(i);if(e&&i===this.ARIA_LABEL_STRING){this.ariaLabel=e;t=true}}}));if(t){a(this)}};this.generateTooltipLabel=()=>{var i;if(this.label){return this.label}if(this.navigationSlot){return this.navigationSlot.textContent||""}return((i=this.el.children[0])===null||i===void 0?void 0:i.textContent)||""};this.renderNavigationItemContent=()=>{if(!this.label&&!this.navigationSlot)return e("slot",null);return this.label?this.displayDefaultNavigationItem(this.href,this.label,this.hreflang,this.target,this.rel,this.referrerpolicy,this.download):e("slot",{name:"navigation-item"})};this.sideNavToggleTooltip=i=>{var t;const e=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector("ic-tooltip");const a="tooltip-navigation-item-side-nav-collapsed";let n;if(!e)return;if(i){e.displayTooltip(false);n=setTimeout((()=>{e.classList.add(a)}),this.ANIMATION_DURATION)}else{clearTimeout(n);e.classList.remove(a)}}}navigationTypeChangeHandler(){this.isInSideNav=this.navigationType==="side"}disconnectedCallback(){var i,t,e;if(this.isInSideNav){(i=this.parentEl)===null||i===void 0?void 0:i.removeEventListener("icSideNavExpanded",this.sideNavExpandHandler)}else if(this.navigationType==="top"){(t=this.parentEl)===null||t===void 0?void 0:t.removeEventListener("icTopNavResized",this.topNavResizedHandler)}(e=this.hostMutationObserver)===null||e===void 0?void 0:e.disconnect()}componentWillLoad(){var i,t,e,a,n,o;const{navType:s,parent:r}=c(this.el);this.navigationType=s;this.isInSideNav=this.navigationType==="side";this.parentEl=r;this.deviceSize=l();this.sideNavExpanded=((i=this.parentEl)===null||i===void 0?void 0:i.classList.contains("sm-expanded"))||((t=this.parentEl)===null||t===void 0?void 0:t.classList.contains("xs-menu-open"))||false;if(this.isInSideNav){(e=this.parentEl)===null||e===void 0?void 0:e.addEventListener("icSideNavExpanded",this.sideNavExpandHandler)}else if(this.navigationType==="top"){(a=this.parentEl)===null||a===void 0?void 0:a.addEventListener("icTopNavResized",this.topNavResizedHandler);if(((n=this.el.parentElement)===null||n===void 0?void 0:n.tagName)==="IC-NAVIGATION-GROUP")this.isTopNavChild=true;if(this.deviceSize<=this.parentEl.customMobileBreakpoint)this.inTopNavSideMenu=true}this.navigationSlot=this.el.querySelector('[slot="navigation-item"]');if(this.navigationSlot){this.navigationSlot.ariaLabel=((o=this.navigationSlot.textContent)===null||o===void 0?void 0:o.trim())||null}if(this.el.hasAttribute(this.ARIA_LABEL_STRING)){this.ariaLabel=this.el.getAttribute(this.ARIA_LABEL_STRING)||""}}componentDidLoad(){this.hostMutationObserver=new MutationObserver(this.hostMutationCallback);this.hostMutationObserver.observe(this.el,{attributes:true})}componentDidUpdate(){this.isInitialRender=false}brandChangeHandler({detail:i}){this.focusStyle=i.mode}async setFocus(){var i;this.itemEl?this.itemEl.focus():(i=this.el.querySelector("a"))===null||i===void 0?void 0:i.focus()}render(){const{inTopNavSideMenu:i,isTopNavChild:t,selected:a,navigationType:o,focusStyle:s,isInitialRender:r,sideNavExpanded:d,displayNavigationTooltip:l,collapsedIconLabel:c,isSideNavMobile:v,expandable:h,isInSideNav:g,theme:m}=this;const p=t&&!i;return e(n,{key:"fbc3ed6180f0dcf2430f28de0a8c94f397269054",class:{"navigation-item":true,"navigation-item-selected":!t&&a,"navigation-item-top-nav":!i&&o==="top","navigation-item-top-nav-child":p,"navigation-item-top-nav-child-selected":p&&a,"navigation-item-side-menu":i,"navigation-item-side-menu-selected":i&&a,"navigation-item-page-header":o==="page-header","navigation-item-side-nav":g,"navigation-item-side-nav-collapsed":(!d||l)&&g,"navigation-item-side-nav-collapsed-with-label":!d&&g&&c&&!v,"with-transition":!r,expandable:h,[s]:t?g:!i,[`ic-theme-${m}`]:m!=="inherit"},onBlur:p?this.handleBlur:null,onClick:this.handleClick,onKeyDown:this.handleClick,"aria-current":a?"page":null,role:"listitem"},e("ic-tooltip",{key:"d308ed029016a9d3c6c0d2400880b74eaa1e0b2e",label:this.generateTooltipLabel(),target:"navigation-item",placement:"right",class:{"tooltip-navigation-item":true,"tooltip-navigation-item-side-nav-collapsed":l&&g,"tooltip-long-label-navigation-item-side-nav-expanded":this.el.hasAttribute("[display-navigation-tooltip = 'true']")}},this.renderNavigationItemContent()))}static get delegatesFocus(){return true}get el(){return o(this)}static get watchers(){return{navigationType:["navigationTypeChangeHandler"]}}};p.style=m;export{p as ic_navigation_item};
|
2
|
+
//# sourceMappingURL=p-7b9e10a0.entry.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["icNavigationItemCss","IcNavigationItemStyle0","NavigationItem","constructor","hostRef","this","isInitialRender","hostMutationObserver","ANIMATION_DURATION","parseInt","getCssProperty","ARIA_LABEL_STRING","isInSideNav","deviceSize","DEVICE_SIZES","XL","focusStyle","getBrandForegroundAppearance","inTopNavSideMenu","isSideNavMobile","isTopNavChild","sideNavExpanded","ariaLabel","collapsedIconLabel","displayNavigationTooltip","download","expandable","href","selected","theme","displayDefaultNavigationItem","label","hreflang","target","rel","referrerpolicy","variant","ChevronIconComponent","h","class","svg","innerHTML","chevronIcon","slottedBadgeEl","el","querySelector","BadgeComponent","name","IconComponent","referrerPolicy","ref","itemEl","part","OpenInNew","tabindex","topNavResizedHandler","detail","size","_a","parentEl","customMobileBreakpoint","L","sideNavExpandHandler","sideNavMobile","sideNavToggleTooltip","handleBlur","relatedTarget","tagName","childBlur","emit","handleClick","event","type","key","navItemClicked","hostMutationCallback","mutationList","forceComponentUpdate","forEach","attributeName","attribute","getAttribute","forceUpdate","generateTooltipLabel","navigationSlot","textContent","children","renderNavigationItemContent","showTooltip","tooltip","shadowRoot","collapsedClass","timer","displayTooltip","setTimeout","classList","add","clearTimeout","remove","navigationTypeChangeHandler","navigationType","disconnectedCallback","removeEventListener","_b","_c","disconnect","componentWillLoad","navType","parent","getNavItemParentDetails","getCurrentDeviceSize","contains","addEventListener","_d","_e","parentElement","_f","trim","hasAttribute","componentDidLoad","MutationObserver","observe","attributes","componentDidUpdate","brandChangeHandler","mode","setFocus","focus","render","isTopNavChildDesktop","Host","onBlur","onClick","onKeyDown","role","placement"],"sources":["src/components/ic-navigation-item/ic-navigation-item.css?tag=ic-navigation-item&encapsulation=shadow","src/components/ic-navigation-item/ic-navigation-item.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-navigation-item: z-index of navigation item\n */\n\n:host {\n display: block;\n\n --navigation-link-colour: var(--ic-brand-text-color);\n}\n\n:host(:focus-within) {\n z-index: var(--ic-z-index-navigation-item);\n}\n\n/* chevron */\nsvg {\n width: var(--ic-space-xl);\n fill: var(--ic-brand-text-color);\n}\n\n.svg {\n margin-left: auto;\n}\n\n.chevron-container svg,\n.chevron-container .svg {\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n}\n\n.chevron-container {\n flex-grow: 1;\n}\n\n:host(.expandable.navigation-item) .link,\n:host(.expandable.navigation-item) ::slotted(a) {\n padding-right: 0;\n}\n\n:host(.navigation-item) .link,\n:host(.navigation-item) ::slotted(a) {\n height: calc(100% - var(--ic-space-xxs));\n width: fit-content;\n color: var(--navigation-link-colour);\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0 var(--ic-space-md) var(--ic-space-xxs);\n text-decoration: none;\n transition: var(--ic-easing-transition-fast);\n position: relative;\n white-space: nowrap;\n}\n\n:host(.navigation-item) ::slotted(a) {\n height: 100%;\n font: var(--ic-font-label) !important;\n letter-spacing: var(--ic-font-letter-spacing-0pt025) !important;\n padding: 0 var(--ic-space-md) !important;\n}\n\n:host(.navigation-item-selected) .link::after,\n:host(.navigation-item-selected) ::slotted(a.active)::after,\n:host(.navigation-item-top-nav) ::slotted(a.active)::after {\n content: \"\";\n height: 0.25rem;\n width: 100%;\n position: absolute;\n bottom: 0;\n background-color: var(--ic-top-navigation-theme);\n}\n\n:host(.navigation-item-selected.navigation-item-page-header)\n ::slotted(a.active)::after,\n:host(.navigation-item-selected.navigation-item-page-header) .link::after,\n:host(.navigation-item.navigation-item-page-header) ::slotted(a.active)::after,\n:host(.navigation-item-top-nav-child) ::slotted(a.active)::after {\n content: none;\n}\n\n:host(.navigation-item-side-menu-selected) .link,\n:host(.navigation-item-side-menu) ::slotted(a.active),\n:host(.navigation-item-top-nav-child) ::slotted(a.active) {\n box-shadow: none;\n}\n\n:host(.navigation-item) .link:hover:not(:focus) {\n background-color: var(--ic-brand-hover);\n cursor: pointer;\n}\n\n:host(.navigation-item:not(.navigation-item-page-header, .navigation-item-side-menu, .navigation-item-top-nav-child))\n ::slotted(a:hover:not(:focus)),\n:host(.navigation-item-side-nav.navigation-item) .link:hover:not(:focus) {\n background-color: var(--ic-brand-hover) !important;\n}\n\n:host(.navigation-item:not(.navigation-item-top-nav-child, .navigation-item-side-menu, .navigation-item-top-nav-child-selected\n .navigation-item-side-menu-selected))\n .focus-indicator:focus-within {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n}\n\n:host(.navigation-item) .link:focus,\n:host(.navigation-item) ::slotted(a:focus) {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n outline: var(--ic-hc-focus-outline);\n outline-offset: calc(-1 * (var(--ic-space-xxxs) + var(--ic-space-1px) / 2));\n}\n\n:host(.navigation-item-selected) .link:focus,\n:host(.navigation-item) ::slotted(a.active:focus) {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n outline: var(--ic-hc-focus-outline);\n outline-offset: calc(-1 * (var(--ic-space-xxxs) + var(--ic-space-1px) / 2));\n}\n\n:host(.navigation-item) .link:active:not(:focus),\n:host(.navigation-item) ::slotted(a:active:not(:focus)) {\n background-color: var(--ic-brand-active);\n}\n\n:host(.navigation-item-side-menu) .link,\n:host(.navigation-item-side-menu) ::slotted(a) {\n min-height: 2.5rem;\n height: auto;\n width: 100%;\n box-sizing: border-box;\n color: var(--ic-top-navigation-nav-item);\n\n --ic-typography-color: var(--ic-top-navigation-nav-item);\n\n display: flex;\n align-items: center;\n justify-content: flex-start;\n text-decoration: none;\n text-wrap: wrap;\n white-space: normal;\n transition: box-shadow var(--ic-transition-duration-fast),\n border-radius var(--ic-transition-duration-fast);\n}\n\n:host(.navigation-item-top-nav-child) ::slotted(svg),\n:host(.navigation-item-side-menu) ::slotted(svg),\n:host(.navigation-item-page-header) ::slotted(svg) {\n fill: var(--ic-color-text-primary);\n}\n\n:host(.navigation-item-side-menu) ::slotted(a) {\n font: var(--ic-font-body) !important;\n letter-spacing: var(--ic-font-letter-spacing-0pt005) !important;\n transition: box-shadow var(--ic-easing-transition-fast),\n background-color var(--ic-easing-transition-fast);\n}\n\n:host(.navigation-item-side-menu) .link:hover:not(:focus) {\n background-color: var(--ic-top-navigation-nav-item-hover);\n}\n\n:host(.navigation-item-side-menu) ::slotted(a:hover:not(:focus)) {\n background-color: var(--ic-top-navigation-nav-item-hover) !important;\n}\n\n:host(.navigation-item-side-menu) .focus-indicator:focus-within {\n box-shadow: none;\n}\n\n:host(.navigation-item-side-menu) .link:focus,\n:host(.navigation-item-side-menu) ::slotted(a:focus) {\n box-shadow: var(--ic-border-focus-inset) !important;\n width: auto;\n border-radius: var(--ic-border-radius-inset) !important;\n}\n\n:host(.navigation-item-side-menu-selected) .link,\n:host(.navigation-item-side-menu-selected) ::slotted(a) {\n transition: box-shadow var(--ic-easing-transition-slow),\n background-color var(--ic-easing-transition-slow);\n}\n\n:host(.navigation-item-side-menu-selected) .link:focus,\n:host(.navigation-item-side-menu) ::slotted(a.active:focus),\n:host(.navigation-item-top-nav-child) ::slotted(a.active:focus) {\n margin-left: var(--ic-space-xs) !important;\n padding-left: var(--ic-space-xs) !important;\n}\n\n:host(.navigation-item-top-nav-child) .link,\n:host(.navigation-item-top-nav-child) ::slotted(a) {\n height: 2.5rem;\n width: calc(100% - var(--ic-space-xl));\n min-width: 9.063rem;\n color: var(--ic-top-navigation-nav-item);\n display: flex;\n align-items: center;\n justify-content: flex-start;\n padding: 0 var(--ic-space-md) !important;\n text-decoration: none;\n position: relative;\n transition: box-shadow var(--ic-transition-duration-fast),\n border-radius var(--ic-transition-duration-slow);\n}\n\n:host(.navigation-item-top-nav-child) ::slotted(a) {\n font: var(--ic-font-body) !important;\n letter-spacing: var(--ic-font-letter-spacing-0pt005) !important;\n}\n\n:host(.navigation-item-top-nav-child) .link:hover:not(:focus),\n:host(.navigation-item-top-nav-child) ::slotted(a:hover:not(:focus)) {\n background-color: var(--ic-top-navigation-nav-item-hover) !important;\n}\n\n:host(.navigation-item-top-nav-child) .link:focus,\n:host(.navigation-item-top-nav-child) ::slotted(a:focus) {\n z-index: 1;\n outline: var(--ic-hc-focus-outline);\n border-radius: var(--ic-border-radius-inset);\n box-shadow: var(--ic-border-focus-inset);\n transition: border-radius 0s, box-shadow var(--ic-transition-duration-fast);\n}\n\n:host(.navigation-item-top-nav-child) ::slotted(a.active:focus) {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n}\n\n:host(.navigation-item-side-menu) .link:active:not(:focus) {\n background-color: var(--ic-top-navigation-nav-item-pressed);\n}\n\n:host(.navigation-item-top-nav-child) .link:active:not(:focus),\n:host(.navigation-item-top-nav-child) ::slotted(a:active:not(:focus)) {\n outline: var(--ic-hc-focus-outline);\n background-color: var(--ic-top-navigation-nav-item-pressed);\n}\n\n:host(.navigation-item-top-nav-child) ::slotted(a:active:not(:focus)),\n:host(.navigation-item-side-menu) ::slotted(a:active:not(:focus)) {\n background-color: var(--ic-top-navigation-nav-item-pressed) !important;\n}\n\n:host(.navigation-item-side-menu-selected) *,\n:host(.navigation-item-top-nav-child-selected) *,\n:host(.navigation-item-side-menu) ::slotted(a.active),\n:host(.navigation-item-top-nav-child) ::slotted(a.active) {\n font-weight: 700 !important;\n}\n\n:host(.navigation-item-top-nav-child) ::slotted(a.active)::before,\n:host(.navigation-item-top-nav-child-selected) .link::before,\n:host(.navigation-item-side-menu-selected) .link::before,\n:host(.navigation-item-side-menu) ::slotted(a.active)::before,\n:host(.navigation-item-side-menu-selected) .link:focus::before,\n:host(.navigation-item-side-menu) ::slotted(a.active:focus)::before {\n content: \"\";\n position: absolute;\n left: 0;\n width: var(--ic-space-xs);\n height: inherit;\n min-height: 2.5rem;\n background-color: var(--ic-top-navigation-nav-item-banner);\n transition: left 0s;\n}\n\n:host(.navigation-item-side-menu-selected) .link::before,\n:host(.navigation-item-side-menu-selected) .link:focus::before {\n margin-top: var(--ic-space-xxs);\n}\n\n:host(.navigation-item-top-nav-child-selected) .link:focus {\n margin-left: var(--ic-space-xs);\n margin-right: calc(-1 * var(--ic-space-xs));\n padding-left: var(--ic-space-xs) !important;\n}\n\n:host(.navigation-item-top-nav-child-selected) .link:focus::before {\n left: calc(-1 * var(--ic-space-xs));\n z-index: 1;\n}\n\n:host(.navigation-item-side-menu-selected) .link::before,\n:host(.navigation-item-side-menu) ::slotted(a.active)::before,\n:host(.navigation-item-side-menu-selected) .link:focus::before,\n:host(.navigation-item-side-menu) ::slotted(a.active:focus)::before {\n z-index: 1;\n}\n\n:host(.navigation-item-side-menu-selected) .link:focus::before,\n:host(.navigation-item-side-menu) ::slotted(a.active:focus)::before,\n:host(.navigation-item-top-nav-child) ::slotted(a.active:focus)::before {\n left: calc(-1 * var(--ic-space-xs));\n}\n\n:host(.navigation-item-side-menu-selected) .link::after {\n display: none;\n}\n\n:host(.navigation-item-side-nav-collapsed) .link {\n height: 100%;\n}\n\n:host(.navigation-item-side-nav-collapsed) ::slotted(svg),\n:host(.navigation-item-side-nav-collapsed-with-label) ::slotted(svg) {\n margin: auto;\n pointer-events: none;\n}\n\n:host(.navigation-item-side-nav-collapsed) .icon,\n:host(.navigation-item-side-nav-collapsed-with-label) .icon,\n:host(.navigation-item-side-nav-collapsed-with-label) ic-typography {\n align-items: center;\n padding: 0;\n margin: auto 0;\n width: fit-content;\n pointer-events: none;\n}\n\n:host(.navigation-item-side-nav-collapsed-with-label) ic-typography {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 100%;\n text-align: center;\n}\n\n:host(.navigation-item-side-nav-collapsed-with-label) .link,\n:host(.navigation-item-side-nav-collapsed-with-label) ::slotted(a) {\n display: flex;\n flex-direction: column;\n height: fit-content;\n padding: var(--ic-space-xs) !important;\n gap: var(--ic-space-xxs);\n}\n\n:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label)\n .link,\n:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label)\n ::slotted(a) {\n height: auto !important;\n gap: 0;\n width: auto;\n padding: var(--ic-space-xs) !important;\n}\n\n:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label)\n ::slotted(a) {\n display: block;\n text-align: center;\n}\n\n:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label)\n .link\n ic-typography {\n opacity: 1;\n min-width: min-content;\n}\n\n:host(.navigation-item-side-nav-collapsed) svg,\n:host(.navigation-item-side-nav-collapsed-with-label) svg {\n display: none;\n}\n\n::slotted(svg) {\n fill: var(--ic-brand-text-color);\n height: var(--ic-space-lg);\n width: var(--ic-space-lg);\n margin-left: var(--ic-space-md);\n}\n\n.icon {\n height: 1.5rem;\n width: var(--ic-space-xxl);\n margin-left: calc(-1 * var(--ic-space-md));\n flex: 0 1 0%;\n position: relative;\n}\n\n.icon > ::slotted(*) {\n margin-left: var(--ic-space-md) !important;\n margin-right: var(--ic-space-xs);\n}\n\n.inline-badge {\n margin-left: var(--ic-space-xs);\n}\n\n.badge {\n margin-left: 0;\n}\n\n:host(.navigation-item-side-nav-collapsed) .icon > ::slotted(*) {\n margin: auto !important;\n}\n\n:host(.navigation-item-side-nav) .icon > ::slotted(*) {\n margin-right: 0;\n}\n\n:host(.navigation-item-side-nav) .link,\n:host(.navigation-item-side-nav) ::slotted(a) {\n height: var(--navigation-item-height, 4rem);\n min-height: var(--navigation-item-min-height);\n width: var(--navigation-item-width, auto);\n justify-content: var(--navigation-item-justify-content);\n display: flex;\n gap: var(--ic-space-xs);\n box-sizing: border-box;\n color: var(--navigation-item-child-color) !important;\n text-decoration: none !important;\n white-space: nowrap;\n padding: 0 var(--ic-space-md);\n text-wrap: wrap;\n}\n\n:host(.navigation-item-side-nav.navigation-item-top-nav-child) .link,\n:host(.navigation-item-side-nav.navigation-item-top-nav-child) ::slotted(a) {\n height: var(--navigation-item-child-height);\n width: var(--navigation-group-width);\n color: var(--navigation-item-child-color) !important;\n display: flex;\n gap: 0.625rem;\n box-sizing: border-box;\n min-width: 0;\n transition: box-shadow var(--ic-easing-transition-fast);\n text-decoration: none !important;\n white-space: nowrap;\n}\n\n:host(.navigation-item-side-nav.navigation-item-top-nav-child) .link:focus,\n:host(.navigation-item-side-nav.navigation-item-top-nav-child)\n ::slotted(a:focus) {\n box-shadow: var(--ic-border-focus-dark);\n}\n\n:host(.navigation-item-side-nav.navigation-item-side-menu) .link:active {\n background-color: var(--navigation-item-child-active);\n}\n\n:host(.navigation-item-side-nav.navigation-item-top-nav-child) .link:active,\n:host(.navigation-item-side-nav.navigation-item-top-nav-child)\n ::slotted(a:active) {\n background-color: var(--navigation-item-child-active);\n}\n\n:host(.navigation-item-side-nav) a.link ic-typography,\n:host(.navigation-item-side-nav.navigation-item-top-nav-child)\n a.link\n ic-typography,\n:host(.navigation-item-side-nav) div.link ic-typography,\n:host(.navigation-item-side-nav.navigation-item-top-nav-child)\n div.link\n ic-typography,\n.navigation-item-side-nav-slotted-text {\n opacity: var(--navigation-item-label-opacity);\n transition: opacity var(--ic-easing-transition-slow);\n white-space: wrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n:host(.navigation-item-side-nav.navigation-item-selected) .link,\n:host(.navigation-item-side-nav.navigation-item) ::slotted(a.active) {\n box-shadow: inset 0.313rem 0 0 var(--ic-brand-text-color);\n}\n\n:host(.navigation-item-side-nav.navigation-item-selected) .link::before,\n:host(.navigation-item-side-nav) ::slotted(a.active)::before {\n content: \"\";\n display: block;\n position: absolute;\n inset: 0 0 0 0.313rem;\n border-radius: 0.688rem !important;\n transition: var(--ic-easing-transition-slow);\n}\n\n:host(.navigation-item-side-nav.navigation-item-selected) .link:focus::before,\n:host(.navigation-item-side-nav) ::slotted(a.active:focus)::before {\n box-shadow: var(--ic-border-focus-inset);\n}\n\n:host(:not(.navigation-item-side-nav-collapsed).navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label)\n .link {\n opacity: var(--navigation-item-label-opacity);\n height: auto;\n}\n\n:host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label)\n .link,\n:host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label)\n ::slotted(a) {\n min-width: var(--navigation-group-item-min-width);\n padding: var(--ic-space-xs) !important;\n height: auto;\n gap: 0;\n}\n\n:host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label)\n ::slotted(a) {\n display: block;\n}\n\n:host(.navigation-item-side-nav.navigation-item-selected) .link::after,\n:host(.navigation-item-side-nav) ::slotted(a.active)::after {\n display: none;\n}\n\n:host(.navigation-item-side-nav.navigation-item) .link:focus,\n:host(.navigation-item-side-nav.navigation-item) ::slotted(a:focus) {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n background-color: transparent;\n}\n\n:host(.navigation-item-side-nav.navigation-item-selected) .link:focus,\n:host(.navigation-item-side-nav) ::slotted(a.active:focus) {\n margin: 0 auto;\n box-shadow: inset 0.313rem 0 0 var(--ic-brand-text-color);\n border-radius: 0;\n}\n\n:host(.navigation-item-page-header).link,\n:host(.navigation-item-page-header) a,\n:host(.navigation-item-page-header) ::slotted(a) {\n height: 2.5rem !important;\n color: var(--ic-color-text-primary) !important;\n transition: all var(--ic-easing-transition-fast) !important;\n box-shadow: rgba(23 89 188 / 0%) !important;\n}\n\n:host(.navigation-item-page-header.navigation-item-selected) .link::after,\n:host(.navigation-item-page-header) ::slotted(a.active)::after {\n content: \" \" !important;\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n height: var(--ic-space-xxs);\n background-color: var(--ic-action-default) !important;\n}\n\n:host(.navigation-item-page-header) .link:hover,\n:host(.navigation-item-page-header) ::slotted(.link:hover),\n:host(.navigation-item-page-header) ::slotted(a:hover),\n:host(.navigation-item-page-header) .link:hover:not(:focus) {\n background-color: var(--ic-action-default-bg-hover) !important;\n cursor: pointer;\n}\n\n:host(.navigation-item-page-header) .link:focus,\n:host(.navigation-item-page-header) ::slotted(a:focus) {\n box-shadow: var(--ic-border-focus);\n}\n\n:host(.navigation-item-page-header) .link:active,\n:host(.navigation-item-page-header) ::slotted(a:active) {\n background-color: var(--ic-action-default-bg-pressed) !important;\n}\n\n:host(.navigation-item-page-header.navigation-item-selected) .link:focus::after,\n:host(.navigation-item-page-header) ::slotted(a.active:focus)::after {\n border-bottom-left-radius: var(--ic-border-radius);\n border-bottom-right-radius: var(--ic-border-radius);\n}\n\n:host(.navigation-item-page-header.navigation-item-selected.with-transition)\n .link,\n:host(.navigation-item-page-header.navigation-item-selected.with-transition)\n ::slotted(a.active) {\n transition: all var(--ic-easing-transition-fast),\n border-color var(--ic-transition-duration-fast);\n}\n\n:host(.navigation-item-page-header) ::slotted(a.active)::before,\n:host(.navigation-item-page-header) ::slotted(a.active:focus)::before,\n:host(.navigation-item-page-header.navigation-item-selected)\n .link:focus::before {\n display: none;\n}\n\n.open-in-new-icon {\n flex: 1;\n}\n\n.open-in-new-icon svg {\n margin-top: var(--ic-space-xxs);\n padding-left: var(--ic-space-xs);\n}\n\n:host(.navigation-item-side-nav) .open-in-new-icon {\n margin-left: calc(-1 * var(--ic-space-xs));\n}\n\n:host(.navigation-item-top-nav) .open-in-new-icon svg,\n:host(.navigation-item-page-header) .open-in-new-icon svg,\n:host(.navigation-item-side-nav) .open-in-new-icon svg {\n height: 0.875rem;\n width: 0.875rem;\n}\n\n:host(.navigation-item-side-menu) .open-in-new-icon svg,\n:host(.navigation-item-top-nav-child) .open-in-new-icon svg {\n height: var(--ic-space-md);\n width: var(--ic-space-md);\n}\n\n:host(.navigation-item-page-header) .open-in-new-icon svg,\n:host(.navigation-item-top-nav-child) .open-in-new-icon svg,\n:host(.navigation-item-side-menu) .open-in-new-icon svg {\n fill: var(--ic-color-text-primary);\n}\n\n@media (forced-colors: active) {\n .open-in-new-icon svg {\n fill: currentcolor;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n forceUpdate,\n Listen,\n Method,\n h,\n Host,\n Prop,\n State,\n Watch,\n} from \"@stencil/core\";\n\nimport {\n DEVICE_SIZES,\n getCssProperty,\n getCurrentDeviceSize,\n getBrandForegroundAppearance,\n getNavItemParentDetails,\n} from \"../../utils/helpers\";\nimport {\n IcNavType,\n IcBrand,\n IcBrandForeground,\n IcBrandForegroundNoDefault,\n IcThemeMode,\n} from \"../../utils/types\";\n\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\n\nimport OpenInNew from \"../../assets/OpenInNew.svg\";\nimport { IcExpandedDetail } from \"../ic-side-navigation/ic-side-navigation.types\";\n\n/**\n * @part link - The `<a>` within ic-navigation-item\n * @slot badge - Badge component overlaying the top right of the icon.\n * @slot icon - Content will be displayed to the left of the label for expanded navigation items, and in replacement of the label for collapsed navigation items.\n */\n\n@Component({\n tag: \"ic-navigation-item\",\n styleUrl: \"ic-navigation-item.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class NavigationItem {\n private navigationSlot: HTMLElement | null;\n private isInitialRender = true;\n private itemEl?: HTMLElement;\n private hostMutationObserver: MutationObserver | null = null;\n private ANIMATION_DURATION =\n parseInt(getCssProperty(\"--ic-transition-duration-slow\")) || 0;\n private ARIA_LABEL_STRING = \"aria-label\";\n private isInSideNav = false;\n\n @Element() el: HTMLIcNavigationItemElement;\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() focusStyle: IcBrandForegroundNoDefault | IcBrandForeground =\n getBrandForegroundAppearance();\n @State() inTopNavSideMenu = false;\n @State() isSideNavMobile = false;\n @State() isTopNavChild = false;\n\n @State() navigationType: IcNavType | \"\";\n @Watch(\"navigationType\")\n navigationTypeChangeHandler(): void {\n this.isInSideNav = this.navigationType === \"side\";\n }\n\n @State() parentEl: HTMLElement | null;\n @State() sideNavExpanded = false;\n @State() ariaLabel = \"\";\n\n /**\n * @internal If `true`, the icon and label will be displayed when side navigation is collapsed.\n */\n @Prop() collapsedIconLabel = false;\n\n /**\n * @internal If `true`, the navigation item will be displayed within a tooltip.\n */\n @Prop() displayNavigationTooltip = false;\n\n /**\n * If `true`, the user can save the linked URL instead of navigating to it.\n */\n @Prop() download: string | boolean = false;\n\n /**\n * @internal If `true`, the navigation item will be expandable.\n */\n @Prop() expandable = false;\n\n /**\n * The destination of the navigation item.\n */\n @Prop() href = \"\";\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string;\n\n /**\n * The label of the navigation item.\n */\n @Prop() label?: string;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * If `true`, the navigation item will be set in a selected state.\n */\n @Prop() selected = false;\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 * @internal - Emitted when item loses focus.\n */\n @Event() childBlur: EventEmitter<void>;\n\n /**\n * @internal - Emitted when navigation item clicked.\n */\n @Event() navItemClicked: EventEmitter<void>;\n\n disconnectedCallback(): void {\n if (this.isInSideNav) {\n this.parentEl?.removeEventListener(\n \"icSideNavExpanded\",\n this.sideNavExpandHandler as EventListener\n );\n } else if (this.navigationType === \"top\") {\n this.parentEl?.removeEventListener(\n \"icTopNavResized\",\n this.topNavResizedHandler as EventListener\n );\n }\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n const { navType, parent } = getNavItemParentDetails(this.el);\n this.navigationType = navType;\n this.isInSideNav = this.navigationType === \"side\";\n this.parentEl = parent;\n this.deviceSize = getCurrentDeviceSize();\n\n this.sideNavExpanded =\n this.parentEl?.classList.contains(\"sm-expanded\") ||\n this.parentEl?.classList.contains(\"xs-menu-open\") ||\n false;\n\n if (this.isInSideNav) {\n this.parentEl?.addEventListener(\n \"icSideNavExpanded\",\n this.sideNavExpandHandler as EventListener\n );\n } else if (this.navigationType === \"top\") {\n this.parentEl?.addEventListener(\n \"icTopNavResized\",\n this.topNavResizedHandler as EventListener\n );\n if (this.el.parentElement?.tagName === \"IC-NAVIGATION-GROUP\")\n this.isTopNavChild = true;\n if (\n this.deviceSize <=\n (this.parentEl as HTMLIcTopNavigationElement).customMobileBreakpoint\n )\n this.inTopNavSideMenu = true;\n }\n\n this.navigationSlot = this.el.querySelector('[slot=\"navigation-item\"]');\n if (this.navigationSlot) {\n this.navigationSlot.ariaLabel =\n this.navigationSlot.textContent?.trim() || null;\n }\n\n if (this.el.hasAttribute(this.ARIA_LABEL_STRING)) {\n this.ariaLabel = this.el.getAttribute(this.ARIA_LABEL_STRING) || \"\";\n }\n }\n\n componentDidLoad(): void {\n this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);\n this.hostMutationObserver.observe(this.el, {\n attributes: true,\n });\n }\n\n componentDidUpdate(): void {\n this.isInitialRender = false;\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler({ detail }: CustomEvent<IcBrand>): void {\n this.focusStyle = detail.mode;\n }\n\n /**\n * Sets focus on the nav item.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.itemEl ? this.itemEl.focus() : this.el.querySelector(\"a\")?.focus();\n }\n\n private displayDefaultNavigationItem = (\n href: string,\n label: string,\n hreflang?: string,\n target?: string,\n rel?: string,\n referrerpolicy?: ReferrerPolicy,\n download?: string | boolean\n ) => {\n const variant =\n this.isTopNavChild || this.inTopNavSideMenu ? \"body\" : \"label\";\n const ChevronIconComponent = this.expandable && (\n <div class={{ svg: true }} innerHTML={chevronIcon}></div>\n );\n const slottedBadgeEl = this.el.querySelector('[slot=\"badge\"]');\n const BadgeComponent = slottedBadgeEl && (\n <div class=\"inline-badge\">\n <slot name=\"badge\"></slot>\n </div>\n );\n const IconComponent = this.el.querySelector('[slot=\"icon\"]') && (\n <div class=\"icon\">\n <slot name=\"icon\"></slot>\n {this.isInSideNav && BadgeComponent}\n </div>\n );\n\n return href !== \"\" ? (\n <a\n href={href}\n target={target}\n rel={rel}\n hreflang={hreflang}\n referrerPolicy={referrerpolicy}\n download={download !== false ? download : null}\n class=\"link\"\n ref={(el) => (this.itemEl = el)}\n part=\"link\"\n aria-label={this.ariaLabel ? this.ariaLabel : null}\n >\n {IconComponent}\n <ic-typography variant={variant}>{label}</ic-typography>\n {target === \"_blank\" && (\n <span class=\"open-in-new-icon\" innerHTML={OpenInNew} />\n )}\n {BadgeComponent}\n <div class=\"chevron-container\">{ChevronIconComponent}</div>\n </a>\n ) : (\n <div tabindex=\"0\" class=\"link\" ref={(el) => (this.itemEl = el)}>\n {IconComponent}\n <ic-typography variant={variant}>{label}</ic-typography>\n {ChevronIconComponent}\n {BadgeComponent}\n </div>\n );\n };\n\n private topNavResizedHandler = ({\n detail,\n }: CustomEvent<{ size: number }>) => {\n const { size } = detail;\n if (size !== this.deviceSize) {\n this.deviceSize = size;\n this.inTopNavSideMenu =\n size <=\n ((this.parentEl as HTMLIcTopNavigationElement)\n ?.customMobileBreakpoint || DEVICE_SIZES.L);\n }\n };\n\n private sideNavExpandHandler = ({\n detail,\n }: CustomEvent<IcExpandedDetail>) => {\n const { sideNavExpanded, sideNavMobile } = detail;\n this.sideNavExpanded = sideNavExpanded;\n this.isSideNavMobile = sideNavMobile;\n this.sideNavToggleTooltip(!sideNavExpanded && !sideNavMobile);\n };\n\n private handleBlur = ({ relatedTarget }: FocusEvent) => {\n if (\n relatedTarget === null ||\n (relatedTarget as HTMLElement).tagName !== \"IC-NAVIGATION-ITEM\"\n ) {\n this.childBlur.emit();\n }\n };\n\n private handleClick = (event: MouseEvent | KeyboardEvent) => {\n if (\n event.type === \"click\" ||\n (event.type === \"keydown\" &&\n ((event as KeyboardEvent).key === \"Enter\" ||\n (event as KeyboardEvent).key === \" \"))\n ) {\n this.navItemClicked.emit();\n }\n };\n\n // triggered when attributes of host element change\n private hostMutationCallback = (mutationList: MutationRecord[]) => {\n let forceComponentUpdate = false;\n mutationList.forEach(({ attributeName }) => {\n if (attributeName) {\n const attribute = this.el.getAttribute(attributeName);\n if (attribute && attributeName === this.ARIA_LABEL_STRING) {\n this.ariaLabel = attribute;\n forceComponentUpdate = true;\n }\n }\n });\n if (forceComponentUpdate) {\n forceUpdate(this);\n }\n };\n\n private generateTooltipLabel = () => {\n if (this.label) {\n return this.label;\n }\n\n if (this.navigationSlot) {\n return this.navigationSlot.textContent || \"\";\n }\n\n return this.el.children[0]?.textContent || \"\";\n };\n\n private renderNavigationItemContent = () => {\n if (!this.label && !this.navigationSlot) return <slot></slot>;\n\n return this.label ? (\n this.displayDefaultNavigationItem(\n this.href,\n this.label,\n this.hreflang,\n this.target,\n this.rel,\n this.referrerpolicy,\n this.download\n )\n ) : (\n <slot name=\"navigation-item\"></slot>\n );\n };\n\n // Displays tooltip only once the collapsing animation is finished\n private sideNavToggleTooltip = (showTooltip: boolean) => {\n const tooltip = this.el.shadowRoot?.querySelector(\"ic-tooltip\");\n const collapsedClass = \"tooltip-navigation-item-side-nav-collapsed\";\n let timer;\n\n if (!tooltip) return;\n\n if (showTooltip) {\n tooltip.displayTooltip(false); // Hides tooltip for when mouse is hovering over icon\n timer = setTimeout(() => {\n tooltip.classList.add(collapsedClass);\n }, this.ANIMATION_DURATION);\n } else {\n clearTimeout(timer);\n tooltip.classList.remove(collapsedClass);\n }\n };\n\n render() {\n const {\n inTopNavSideMenu,\n isTopNavChild,\n selected,\n navigationType,\n focusStyle,\n isInitialRender,\n sideNavExpanded,\n displayNavigationTooltip,\n collapsedIconLabel,\n isSideNavMobile,\n expandable,\n isInSideNav,\n theme,\n } = this;\n\n const isTopNavChildDesktop = isTopNavChild && !inTopNavSideMenu;\n\n return (\n <Host\n class={{\n \"navigation-item\": true,\n \"navigation-item-selected\": !isTopNavChild && selected,\n \"navigation-item-top-nav\":\n !inTopNavSideMenu && navigationType === \"top\",\n \"navigation-item-top-nav-child\": isTopNavChildDesktop,\n \"navigation-item-top-nav-child-selected\":\n isTopNavChildDesktop && selected,\n \"navigation-item-side-menu\": inTopNavSideMenu,\n \"navigation-item-side-menu-selected\": inTopNavSideMenu && selected,\n \"navigation-item-page-header\": navigationType === \"page-header\",\n \"navigation-item-side-nav\": isInSideNav,\n \"navigation-item-side-nav-collapsed\":\n (!sideNavExpanded || displayNavigationTooltip) && isInSideNav,\n \"navigation-item-side-nav-collapsed-with-label\":\n !sideNavExpanded &&\n isInSideNav &&\n collapsedIconLabel &&\n !isSideNavMobile,\n \"with-transition\": !isInitialRender,\n expandable,\n [focusStyle]: isTopNavChild ? isInSideNav : !inTopNavSideMenu,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n onBlur={isTopNavChildDesktop ? this.handleBlur : null}\n onClick={this.handleClick}\n onKeyDown={this.handleClick}\n aria-current={selected ? \"page\" : null}\n role=\"listitem\"\n >\n {/* Tooltip enabled by applying navigation-item-side-nav-collapsed class to host */}\n <ic-tooltip\n label={this.generateTooltipLabel()}\n target=\"navigation-item\"\n placement=\"right\"\n class={{\n \"tooltip-navigation-item\": true,\n \"tooltip-navigation-item-side-nav-collapsed\":\n displayNavigationTooltip && isInSideNav,\n \"tooltip-long-label-navigation-item-side-nav-expanded\":\n this.el.hasAttribute(\"[display-navigation-tooltip = 'true']\"),\n }}\n >\n {this.renderNavigationItemContent()}\n </ic-tooltip>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{r as i,h as a,H as t,g as c}from"./p-8e4e97b4.js";import{c as s,g as e,d as
|
2
|
-
//# sourceMappingURL=p-
|
1
|
+
import{r as i,h as a,H as t,g as c}from"./p-8e4e97b4.js";import{c as s,g as e,d as r,b as o}from"./p-70abcb2b.js";const d="@media (prefers-reduced-motion: no-preference){:host(.ic-badge-show){animation:expand var(--ic-transition-duration-slow)}:host(.ic-badge-hide){animation:shrink var(--ic-transition-duration-slow)}}:host{display:flex;height:var(--ic-space-md);min-width:var(--ic-space-md);width:-moz-fit-content;width:fit-content;border-radius:calc(2 * var(--ic-space-xxl));position:absolute}:host ic-typography{--ic-typography-color:var(--ic-badge-text)}:host(.ic-badge-neutral){background-color:var(--ic-badge-dark) !important}:host(.ic-badge-light) ic-typography{--ic-typography-color:var(--ic-badge-text-monochrome)}:host(.ic-badge-light) ::slotted(*){fill:var(--ic-badge-icon-monochrome)}:host(.ic-badge-info){background-color:var(--ic-badge-info) !important}:host(.ic-badge-light){background-color:var(--ic-badge-light) !important}:host(.ic-badge-warning){background-color:var(--ic-badge-warning) !important}:host(.ic-badge-warning) ic-typography{--ic-typography-color:var(--ic-badge-warning-text)}:host(.ic-badge-warning) ::slotted(*){fill:var(--ic-badge-warning-icon)}:host(.ic-badge-error){background-color:var(--ic-badge-error) !important}:host(.ic-badge-success){background-color:var(--ic-badge-success) !important}:host(.ic-badge-small){height:var(--ic-space-sm);min-width:var(--ic-space-sm)}:host(.ic-badge-large){height:calc(var(--ic-space-md) + var(--ic-space-xxs));min-width:calc(var(--ic-space-md) + var(--ic-space-xxs))}:host(.ic-badge-dot.ic-badge-medium){height:var(--ic-space-xs);width:var(--ic-space-xs);min-width:var(--ic-space-xs)}:host(.ic-badge-dot.ic-badge-small){height:calc(var(--ic-space-xxs) + var(--ic-space-xxxs));width:calc(var(--ic-space-xxs) + var(--ic-space-xxxs));min-width:calc(var(--ic-space-xxs) + var(--ic-space-xxxs))}:host(.ic-badge-dot.ic-badge-large){height:var(--ic-space-sm);width:var(--ic-space-sm);min-width:var(--ic-space-sm)}:host ::slotted(*){fill:var(--ic-badge-icon)}:host(.ic-badge-foreground-dark) ::slotted(*){fill:var(--ic-color-text-primary-light)}:host(.ic-badge-foreground-light) ::slotted(*){fill:white}:host(.ic-badge-foreground-dark) ic-typography{--ic-typography-color:var(--ic-color-text-primary-light)}:host(.ic-badge-foreground-light) ic-typography{--ic-typography-color:var(--ic-color-text-primary-dark)}:host(.ic-badge-text) ic-typography{align-self:center;padding:0 calc((var(--ic-space-xs) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px)}:host(.ic-badge-text.ic-badge-small) ic-typography{padding:0 0.2132rem}:host(.ic-badge-text.ic-badge-large) ic-typography{padding:0 calc((var(--ic-space-sm) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px)}:host(.ic-badge-icon) ::slotted(svg){width:var(--ic-space-sm);height:var(--ic-space-sm);padding:var(--ic-space-xxxs)}:host(.ic-badge-icon.ic-badge-small) ::slotted(svg){width:var(--ic-space-xs);height:var(--ic-space-xs)}:host(.ic-badge-icon.ic-badge-large) ::slotted(svg){width:calc(var(--ic-space-sm) + var(--ic-space-xxxs));height:calc(var(--ic-space-sm) + var(--ic-space-xxxs));padding:calc(var(--ic-space-xxxs) + var(--ic-space-1px))}:host(.ic-badge-far){top:calc(-1 * var(--ic-space-xs));right:calc(-1 * var(--ic-space-xs))}:host(.ic-badge-far.ic-badge-small),:host(.ic-badge-dot.ic-badge-far.ic-badge-large){top:calc(-1 * var(--ic-space-xxs));right:calc(-1 * var(--ic-space-xxs))}:host(.ic-badge-dot.ic-badge-far),:host(.ic-badge-dot.ic-badge-far.ic-badge-small){top:calc(-1 * var(--ic-space-xxxs));right:calc(-1 * var(--ic-space-xxxs))}:host(.ic-badge-near){top:calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)));right:calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)))}:host(.ic-badge-dot.ic-badge-near){top:calc(-1 * var(--ic-space-1px));right:calc(-1 * var(--ic-space-1px))}:host(.ic-badge-inline){position:static}:host(.ic-badge-hide){visibility:hidden !important;transition:visibility var(--ic-transition-duration-slow)}.sr-only{position:absolute;left:-9999px}.sr-only:dir(rtl){right:-9999px}@keyframes expand{from{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes shrink{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(0)}}";const l=d;const n="IC-TOP-NAVIGATION";const h="IC-SIDE-NAVIGATION";const g=class{constructor(a){i(this,a);var t;this.ariaLabel=null;this.initialPosition=(t=this.position)!==null&&t!==void 0?t:"far";this.position="far";this.size="medium";this.theme="inherit";this.type="text";this.variant="neutral";this.visible=true;this.setBadgeColour=()=>{const i=this.customColor?s(this.customColor):null;if(i){const{r:a,g:t,b:c,a:s}=i;this.el.style.backgroundColor=`rgba(${a}, ${t}, ${c}, ${s})`;this.foregroundColour=e((a*299+t*587+c*114)/1e3)}};this.getLabel=()=>this.maxNumber&&Number(this.label)>this.maxNumber?`${this.maxNumber}+`:this.label;this.setAccessibleLabel=()=>{const i=this.el.parentElement;const a=this.isAccessibleLabelDefined()?this.accessibleLabel:this.label||"with badge being displayed";if(i){const{tagName:t}=i;if(t!=="IC-CARD"&&(t!=="IC-TAB"||t==="IC-TAB"&&this.parentAriaLabel)){const t=this.parentAriaLabel?`${this.parentAriaLabel} ,`:"";i.ariaLabel=this.visible?`${t} ${a}`:null}else{this.ariaLabel=`, ${a}`}}};this.setPositionInTopNavigation=()=>{this.position=this.isInMobileMode()||this.isInNavigationItem()?"inline":this.initialPosition};this.setPositionInSideNavigation=()=>{this.position="near"};this.isInTopNav=()=>{const i=this.el.parentElement;if(!i)return false;const a=i.parentElement;const t=a===null||a===void 0?void 0:a.parentElement;return(a===null||a===void 0?void 0:a.tagName)===n||(t===null||t===void 0?void 0:t.tagName)===n};this.isInSideNav=()=>{const i=this.el.parentElement;if(!i)return false;const a=i.parentElement;const t=a===null||a===void 0?void 0:a.parentElement;return(a===null||a===void 0?void 0:a.tagName)===h||(t===null||t===void 0?void 0:t.tagName)===h};this.isInMobileMode=()=>{const i=this.el.parentElement;if(!i)return false;const a=i.parentElement;const t=a===null||a===void 0?void 0:a.parentElement;return((a===null||a===void 0?void 0:a.tagName)===n||(a===null||a===void 0?void 0:a.tagName)===h)&&a.classList.contains("mobile-mode")||((t===null||t===void 0?void 0:t.tagName)===n||(t===null||t===void 0?void 0:t.tagName)===h)&&t.classList.contains("mobile-mode")};this.isInNavigationItem=()=>{const i=this.el.parentElement;if(!i)return false;return i.tagName==="IC-NAVIGATION-ITEM"};this.isAccessibleLabelDefined=()=>r(this.accessibleLabel)&&this.accessibleLabel!==null}accessibleLabelHandler(){this.setAccessibleLabel()}customColorHandler(){this.variant==="custom"&&this.setBadgeColour()}variantHandler(){if(this.variant==="custom"){this.setBadgeColour()}}visibleHandler(){this.setAccessibleLabel()}componentWillLoad(){var i;this.variant==="custom"&&this.setBadgeColour();const a=(i=this.el.parentElement)===null||i===void 0?void 0:i.ariaLabel;if(a)this.parentAriaLabel=a;this.setAccessibleLabel()}componentDidLoad(){this.type==="text"&&o([{prop:this.label,propName:"label"}],"Badge")}componentWillRender(){this.isInTopNav()&&this.setPositionInTopNavigation();this.isInSideNav()&&this.setPositionInSideNavigation()}navBarMenuOpenHandler(){this.isInTopNav()&&(this.position="inline")}navBarMenuCloseHandler(){this.isInTopNav()&&(this.position=this.initialPosition)}render(){const{ariaLabel:i,el:c,foregroundColour:s,getLabel:e,position:r,size:o,label:d,type:l,variant:n,visible:h,theme:g}=this;return a(t,{key:"09942d6bfbdeb2793ef14cc7adf3293ba43bb479",class:{[`ic-badge-${r}`]:true,[`ic-badge-${o}`]:true,[`ic-badge-${n}`]:true,[`ic-badge-${l}`]:true,[`ic-badge-foreground-${s}`]:s!==null&&n==="custom",[`${h?"ic-badge-show":"ic-badge-hide"}`]:true,[`ic-theme-${g}`]:g!=="inherit"},id:c.id||null,"aria-label":i,role:"status"},l==="icon"&&a("slot",{key:"b11d77516fb8e7676af2e57b6e294c4debea4692",name:"badge-icon"}),l==="text"&&d&&a("ic-typography",{key:"5c351c76e8c4fbfb1ec89dd89e7b099d48f16ab1",variant:o==="small"?"badge-small":"badge"},e()),l==="dot"&&a("span",{key:"2db3b51d4ff7ab28b9dd12e72739871de623c5bd",class:"sr-only"},"badge"))}static get delegatesFocus(){return true}get el(){return c(this)}static get watchers(){return{accessibleLabel:["accessibleLabelHandler"],customColor:["customColorHandler"],variant:["variantHandler"],visible:["visibleHandler"]}}};g.style=l;export{g as ic_badge};
|
2
|
+
//# sourceMappingURL=p-7cada631.entry.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["icBadgeCss","IcBadgeStyle0","TOP_NAVIGATION","SIDE_NAVIGATION","Badge","constructor","hostRef","this","ariaLabel","initialPosition","_a","position","size","theme","type","variant","visible","setBadgeColour","colorRGBA","customColor","convertToRGBA","r","g","b","a","el","style","backgroundColor","foregroundColour","getBrandForegroundAppearance","getLabel","maxNumber","Number","label","setAccessibleLabel","parentEl","parentElement","defaultAriaLabel","isAccessibleLabelDefined","accessibleLabel","tagName","parentAriaLabel","ariaLabelPrefix","setPositionInTopNavigation","isInMobileMode","isInNavigationItem","setPositionInSideNavigation","isInTopNav","grandparentEl","greatGrandparentEl","isInSideNav","classList","contains","isPropDefined","accessibleLabelHandler","customColorHandler","variantHandler","visibleHandler","componentWillLoad","componentDidLoad","onComponentRequiredPropUndefined","prop","propName","componentWillRender","navBarMenuOpenHandler","navBarMenuCloseHandler","render","h","Host","key","class","id","role","name"],"sources":["src/components/ic-badge/ic-badge.css?tag=ic-badge&encapsulation=shadow","src/components/ic-badge/ic-badge.tsx"],"sourcesContent":["@media (prefers-reduced-motion: no-preference) {\n :host(.ic-badge-show) {\n animation: expand var(--ic-transition-duration-slow);\n }\n\n :host(.ic-badge-hide) {\n animation: shrink var(--ic-transition-duration-slow);\n }\n}\n\n:host {\n display: flex;\n height: var(--ic-space-md);\n min-width: var(--ic-space-md);\n width: fit-content;\n border-radius: calc(2 * var(--ic-space-xxl));\n position: absolute;\n}\n\n:host ic-typography {\n --ic-typography-color: var(--ic-badge-text);\n}\n\n:host(.ic-badge-neutral) {\n background-color: var(--ic-badge-dark) !important;\n}\n\n:host(.ic-badge-light) ic-typography {\n --ic-typography-color: var(--ic-badge-text-monochrome);\n}\n\n:host(.ic-badge-light) ::slotted(*) {\n fill: var(--ic-badge-icon-monochrome);\n}\n\n:host(.ic-badge-info) {\n background-color: var(--ic-badge-info) !important;\n}\n\n:host(.ic-badge-light) {\n background-color: var(--ic-badge-light) !important;\n}\n\n:host(.ic-badge-warning) {\n background-color: var(--ic-badge-warning) !important;\n}\n\n:host(.ic-badge-warning) ic-typography {\n --ic-typography-color: var(--ic-badge-warning-text);\n}\n\n:host(.ic-badge-warning) ::slotted(*) {\n fill: var(--ic-badge-warning-icon);\n}\n\n:host(.ic-badge-error) {\n background-color: var(--ic-badge-error) !important;\n}\n\n:host(.ic-badge-success) {\n background-color: var(--ic-badge-success) !important;\n}\n\n:host(.ic-badge-small) {\n height: var(--ic-space-sm);\n min-width: var(--ic-space-sm);\n}\n\n:host(.ic-badge-large) {\n height: calc(var(--ic-space-md) + var(--ic-space-xxs));\n min-width: calc(var(--ic-space-md) + var(--ic-space-xxs));\n}\n\n:host(.ic-badge-dot.ic-badge-medium) {\n height: var(--ic-space-xs);\n width: var(--ic-space-xs);\n min-width: var(--ic-space-xs);\n}\n\n:host(.ic-badge-dot.ic-badge-small) {\n height: calc(var(--ic-space-xxs) + var(--ic-space-xxxs));\n width: calc(var(--ic-space-xxs) + var(--ic-space-xxxs));\n min-width: calc(var(--ic-space-xxs) + var(--ic-space-xxxs));\n}\n\n:host(.ic-badge-dot.ic-badge-large) {\n height: var(--ic-space-sm);\n width: var(--ic-space-sm);\n min-width: var(--ic-space-sm);\n}\n\n:host ::slotted(*) {\n fill: var(--ic-badge-icon);\n}\n\n:host(.ic-badge-foreground-dark) ::slotted(*) {\n fill: var(--ic-color-text-primary-light);\n}\n\n:host(.ic-badge-foreground-light) ::slotted(*) {\n fill: white;\n}\n\n:host(.ic-badge-foreground-dark) ic-typography {\n --ic-typography-color: var(--ic-color-text-primary-light);\n}\n\n:host(.ic-badge-foreground-light) ic-typography {\n --ic-typography-color: var(--ic-color-text-primary-dark);\n}\n\n:host(.ic-badge-text) ic-typography {\n align-self: center;\n padding: 0 calc((var(--ic-space-xs) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px);\n}\n\n:host(.ic-badge-text.ic-badge-small) ic-typography {\n padding: 0 0.2132rem;\n}\n\n:host(.ic-badge-text.ic-badge-large) ic-typography {\n padding: 0 calc((var(--ic-space-sm) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px);\n}\n\n:host(.ic-badge-icon) ::slotted(svg) {\n width: var(--ic-space-sm);\n height: var(--ic-space-sm);\n padding: var(--ic-space-xxxs);\n}\n\n:host(.ic-badge-icon.ic-badge-small) ::slotted(svg) {\n width: var(--ic-space-xs);\n height: var(--ic-space-xs);\n}\n\n:host(.ic-badge-icon.ic-badge-large) ::slotted(svg) {\n width: calc(var(--ic-space-sm) + var(--ic-space-xxxs));\n height: calc(var(--ic-space-sm) + var(--ic-space-xxxs));\n padding: calc(var(--ic-space-xxxs) + var(--ic-space-1px));\n}\n\n:host(.ic-badge-far) {\n top: calc(-1 * var(--ic-space-xs));\n right: calc(-1 * var(--ic-space-xs));\n}\n\n:host(.ic-badge-far.ic-badge-small),\n:host(.ic-badge-dot.ic-badge-far.ic-badge-large) {\n top: calc(-1 * var(--ic-space-xxs));\n right: calc(-1 * var(--ic-space-xxs));\n}\n\n:host(.ic-badge-dot.ic-badge-far),\n:host(.ic-badge-dot.ic-badge-far.ic-badge-small) {\n top: calc(-1 * var(--ic-space-xxxs));\n right: calc(-1 * var(--ic-space-xxxs));\n}\n\n:host(.ic-badge-near) {\n top: calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)));\n right: calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)));\n}\n\n:host(.ic-badge-dot.ic-badge-near) {\n top: calc(-1 * var(--ic-space-1px));\n right: calc(-1 * var(--ic-space-1px));\n}\n\n:host(.ic-badge-inline) {\n position: static;\n}\n\n:host(.ic-badge-hide) {\n visibility: hidden !important;\n transition: visibility var(--ic-transition-duration-slow);\n}\n\n.sr-only {\n position: absolute;\n left: -9999px;\n}\n\n.sr-only:dir(rtl) {\n right: -9999px;\n}\n\n@keyframes expand {\n from {\n opacity: 0;\n transform: scale(0);\n }\n\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n\n@keyframes shrink {\n from {\n opacity: 1;\n transform: scale(1);\n }\n\n to {\n opacity: 0;\n transform: scale(0);\n }\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n Watch,\n h,\n Listen,\n} from \"@stencil/core\";\nimport {\n IcBadgePositions,\n IcBadgeTypes,\n IcBadgeVariants,\n} from \"./ic-badge.types\";\nimport {\n IcSizes,\n IcBrandForeground,\n IcColor,\n IcThemeMode,\n} from \"../../utils/types\";\nimport {\n convertToRGBA,\n getBrandForegroundAppearance,\n isPropDefined,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\n\nconst TOP_NAVIGATION = \"IC-TOP-NAVIGATION\";\nconst SIDE_NAVIGATION = \"IC-SIDE-NAVIGATION\";\n\n/**\n * @slot badge-icon - Icon will be rendered inside the badge if type is set to icon.\n */\n@Component({\n tag: \"ic-badge\",\n styleUrl: \"ic-badge.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Badge {\n private ariaLabel: string | null = null;\n private foregroundColour: IcBrandForeground;\n private parentAriaLabel: string;\n private initialPosition: IcBadgePositions = this.position ?? \"far\";\n\n @Element() el: HTMLIcBadgeElement;\n\n /**\n * The accessible label of the badge component to provide context for screen reader users.\n */\n @Prop() accessibleLabel?: string;\n\n @Watch(\"accessibleLabel\")\n accessibleLabelHandler(): void {\n this.setAccessibleLabel();\n }\n\n /**\n * The custom badge colour. This will only style the badge component if variant=\"custom\".\n * Can be a hex value e.g. \"#ff0000\", RGB e.g. \"rgb(255, 0, 0)\", or RGBA e.g. \"rgba(255, 0, 0, 1)\".\n */\n @Prop() customColor?: IcColor;\n\n @Watch(\"customColor\")\n customColorHandler(): void {\n this.variant === \"custom\" && this.setBadgeColour();\n }\n\n /**\n * The maximum number shown on the badge appended with a +.\n * This will only be displayed if type=\"text\" and label is not empty.\n */\n @Prop() maxNumber?: number;\n\n /**\n * The positioning of the badge in reference to the parent element.\n */\n @Prop({ mutable: true }) position?: IcBadgePositions = \"far\";\n\n /**\n * The size of the badge to be displayed.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n /**\n * The text displayed in the badge. This will only be displayed if type=\"text\".\n */\n @Prop() label?: 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 * The type of badge to be displayed.\n */\n @Prop() type?: IcBadgeTypes = \"text\";\n\n /**\n * The variant of the badge to be displayed.\n */\n @Prop() variant?: IcBadgeVariants = \"neutral\";\n\n @Watch(\"variant\")\n variantHandler(): void {\n if (this.variant === \"custom\") {\n this.setBadgeColour();\n }\n }\n\n /**\n * If `true`, the badge will be displayed.\n */\n @Prop() visible?: boolean = true;\n\n @Watch(\"visible\")\n visibleHandler(): void {\n this.setAccessibleLabel();\n }\n\n componentWillLoad(): void {\n this.variant === \"custom\" && this.setBadgeColour();\n\n const ariaLabel = this.el.parentElement?.ariaLabel;\n if (ariaLabel) this.parentAriaLabel = ariaLabel;\n this.setAccessibleLabel();\n }\n\n componentDidLoad(): void {\n this.type === \"text\" &&\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Badge\"\n );\n }\n\n componentWillRender(): void {\n this.isInTopNav() && this.setPositionInTopNavigation();\n this.isInSideNav() && this.setPositionInSideNavigation();\n }\n\n @Listen(\"icNavigationMenuOpened\", { target: \"document\" })\n navBarMenuOpenHandler(): void {\n this.isInTopNav() && (this.position = \"inline\");\n }\n\n @Listen(\"icNavigationMenuClosed\", { target: \"document\" })\n navBarMenuCloseHandler(): void {\n this.isInTopNav() && (this.position = this.initialPosition);\n }\n\n private setBadgeColour = () => {\n const colorRGBA = this.customColor ? convertToRGBA(this.customColor) : null;\n\n if (colorRGBA) {\n const { r, g, b, a } = colorRGBA;\n this.el.style.backgroundColor = `rgba(${r}, ${g}, ${b}, ${a})`;\n this.foregroundColour = getBrandForegroundAppearance(\n (r * 299 + g * 587 + b * 114) / 1000\n );\n }\n };\n\n private getLabel = () =>\n this.maxNumber && Number(this.label) > this.maxNumber\n ? `${this.maxNumber}+`\n : this.label;\n\n // Set aria-label on badge and / or parent element\n // Aria-describedby seems to not work, probably due to shadow DOM\n private setAccessibleLabel = () => {\n const parentEl = this.el.parentElement;\n const defaultAriaLabel = this.isAccessibleLabelDefined()\n ? this.accessibleLabel\n : this.label || \"with badge being displayed\";\n\n if (parentEl) {\n const { tagName } = parentEl;\n if (\n tagName !== \"IC-CARD\" &&\n (tagName !== \"IC-TAB\" || (tagName === \"IC-TAB\" && this.parentAriaLabel))\n ) {\n const ariaLabelPrefix = this.parentAriaLabel\n ? `${this.parentAriaLabel} ,`\n : \"\";\n parentEl.ariaLabel = this.visible\n ? `${ariaLabelPrefix} ${defaultAriaLabel}`\n : null;\n } else {\n this.ariaLabel = `, ${defaultAriaLabel}`;\n }\n }\n };\n\n private setPositionInTopNavigation = () => {\n this.position =\n this.isInMobileMode() || this.isInNavigationItem()\n ? \"inline\"\n : this.initialPosition;\n };\n\n private setPositionInSideNavigation = () => {\n this.position = \"near\";\n };\n\n private isInTopNav = (): boolean => {\n const parentEl = this.el.parentElement;\n if (!parentEl) return false;\n const grandparentEl = parentEl.parentElement;\n const greatGrandparentEl = grandparentEl?.parentElement;\n return (\n grandparentEl?.tagName === TOP_NAVIGATION ||\n greatGrandparentEl?.tagName === TOP_NAVIGATION\n );\n };\n\n private isInSideNav = (): boolean => {\n const parentEl = this.el.parentElement;\n if (!parentEl) return false;\n const grandparentEl = parentEl.parentElement;\n const greatGrandparentEl = grandparentEl?.parentElement;\n return (\n grandparentEl?.tagName === SIDE_NAVIGATION ||\n greatGrandparentEl?.tagName === SIDE_NAVIGATION\n );\n };\n\n private isInMobileMode = (): boolean => {\n const parentEl = this.el.parentElement;\n if (!parentEl) return false;\n const grandparentEl = parentEl.parentElement;\n const greatGrandparentEl = grandparentEl?.parentElement;\n return (\n ((grandparentEl?.tagName === TOP_NAVIGATION ||\n grandparentEl?.tagName === SIDE_NAVIGATION) &&\n grandparentEl.classList.contains(\"mobile-mode\")) ||\n ((greatGrandparentEl?.tagName === TOP_NAVIGATION ||\n greatGrandparentEl?.tagName === SIDE_NAVIGATION) &&\n greatGrandparentEl.classList.contains(\"mobile-mode\"))\n );\n };\n\n private isInNavigationItem = (): boolean => {\n const parentEl = this.el.parentElement;\n if (!parentEl) return false;\n return parentEl.tagName === \"IC-NAVIGATION-ITEM\";\n };\n\n private isAccessibleLabelDefined = () =>\n isPropDefined(this.accessibleLabel) && this.accessibleLabel !== null;\n\n render() {\n const {\n ariaLabel,\n el,\n foregroundColour,\n getLabel,\n position,\n size,\n label,\n type,\n variant,\n visible,\n theme,\n } = this;\n\n return (\n <Host\n class={{\n [`ic-badge-${position}`]: true,\n [`ic-badge-${size}`]: true,\n [`ic-badge-${variant}`]: true,\n [`ic-badge-${type}`]: true,\n [`ic-badge-foreground-${foregroundColour}`]:\n foregroundColour !== null && variant === \"custom\",\n [`${visible ? \"ic-badge-show\" : \"ic-badge-hide\"}`]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n id={el.id || null}\n aria-label={ariaLabel}\n role=\"status\"\n >\n {type === \"icon\" && <slot name=\"badge-icon\"></slot>}\n {type === \"text\" && label && (\n <ic-typography variant={size === \"small\" ? \"badge-small\" : \"badge\"}>\n {getLabel()}\n </ic-typography>\n )}\n {type === \"dot\" && <span class=\"sr-only\">badge</span>}\n </Host>\n );\n }\n}\n"],"mappings":"kHAAA,MAAMA,EAAa,ogIACnB,MAAAC,EAAeD,EC0Bf,MAAME,EAAiB,oBACvB,MAAMC,EAAkB,qB,MAYXC,EAAK,MAPlB,WAAAC,CAAAC,G,gBAQUC,KAAAC,UAA2B,KAG3BD,KAAAE,iBAAoCC,EAAAH,KAAKI,YAAQ,MAAAD,SAAA,EAAAA,EAAI,MAkCpCH,KAAAI,SAA8B,MAK/CJ,KAAAK,KAAiB,SAUjBL,KAAAM,MAAsB,UAKtBN,KAAAO,KAAsB,OAKtBP,KAAAQ,QAA4B,UAY5BR,KAAAS,QAAoB,KAsCpBT,KAAAU,eAAiB,KACvB,MAAMC,EAAYX,KAAKY,YAAcC,EAAcb,KAAKY,aAAe,KAEvE,GAAID,EAAW,CACb,MAAMG,EAAEA,EAACC,EAAEA,EAACC,EAAEA,EAACC,EAAEA,GAAMN,EACvBX,KAAKkB,GAAGC,MAAMC,gBAAkB,QAAQN,MAAMC,MAAMC,MAAMC,KAC1DjB,KAAKqB,iBAAmBC,GACrBR,EAAI,IAAMC,EAAI,IAAMC,EAAI,KAAO,I,GAK9BhB,KAAAuB,SAAW,IACjBvB,KAAKwB,WAAaC,OAAOzB,KAAK0B,OAAS1B,KAAKwB,UACxC,GAAGxB,KAAKwB,aACRxB,KAAK0B,MAIH1B,KAAA2B,mBAAqB,KAC3B,MAAMC,EAAW5B,KAAKkB,GAAGW,cACzB,MAAMC,EAAmB9B,KAAK+B,2BAC1B/B,KAAKgC,gBACLhC,KAAK0B,OAAS,6BAElB,GAAIE,EAAU,CACZ,MAAMK,QAAEA,GAAYL,EACpB,GACEK,IAAY,YACXA,IAAY,UAAaA,IAAY,UAAYjC,KAAKkC,iBACvD,CACA,MAAMC,EAAkBnC,KAAKkC,gBACzB,GAAGlC,KAAKkC,oBACR,GACJN,EAAS3B,UAAYD,KAAKS,QACtB,GAAG0B,KAAmBL,IACtB,I,KACC,CACL9B,KAAKC,UAAY,KAAK6B,G,IAKpB9B,KAAAoC,2BAA6B,KACnCpC,KAAKI,SACHJ,KAAKqC,kBAAoBrC,KAAKsC,qBAC1B,SACAtC,KAAKE,eAAe,EAGpBF,KAAAuC,4BAA8B,KACpCvC,KAAKI,SAAW,MAAM,EAGhBJ,KAAAwC,WAAa,KACnB,MAAMZ,EAAW5B,KAAKkB,GAAGW,cACzB,IAAKD,EAAU,OAAO,MACtB,MAAMa,EAAgBb,EAASC,cAC/B,MAAMa,EAAqBD,IAAa,MAAbA,SAAa,SAAbA,EAAeZ,cAC1C,OACEY,IAAa,MAAbA,SAAa,SAAbA,EAAeR,WAAYtC,IAC3B+C,IAAkB,MAAlBA,SAAkB,SAAlBA,EAAoBT,WAAYtC,CAAc,EAI1CK,KAAA2C,YAAc,KACpB,MAAMf,EAAW5B,KAAKkB,GAAGW,cACzB,IAAKD,EAAU,OAAO,MACtB,MAAMa,EAAgBb,EAASC,cAC/B,MAAMa,EAAqBD,IAAa,MAAbA,SAAa,SAAbA,EAAeZ,cAC1C,OACEY,IAAa,MAAbA,SAAa,SAAbA,EAAeR,WAAYrC,IAC3B8C,IAAkB,MAAlBA,SAAkB,SAAlBA,EAAoBT,WAAYrC,CAAe,EAI3CI,KAAAqC,eAAiB,KACvB,MAAMT,EAAW5B,KAAKkB,GAAGW,cACzB,IAAKD,EAAU,OAAO,MACtB,MAAMa,EAAgBb,EAASC,cAC/B,MAAMa,EAAqBD,IAAa,MAAbA,SAAa,SAAbA,EAAeZ,cAC1C,QACIY,IAAa,MAAbA,SAAa,SAAbA,EAAeR,WAAYtC,IAC3B8C,IAAa,MAAbA,SAAa,SAAbA,EAAeR,WAAYrC,IAC3B6C,EAAcG,UAAUC,SAAS,kBACjCH,IAAkB,MAAlBA,SAAkB,SAAlBA,EAAoBT,WAAYtC,IAChC+C,IAAkB,MAAlBA,SAAkB,SAAlBA,EAAoBT,WAAYrC,IAChC8C,EAAmBE,UAAUC,SAAS,cAAe,EAInD7C,KAAAsC,mBAAqB,KAC3B,MAAMV,EAAW5B,KAAKkB,GAAGW,cACzB,IAAKD,EAAU,OAAO,MACtB,OAAOA,EAASK,UAAY,oBAAoB,EAG1CjC,KAAA+B,yBAA2B,IACjCe,EAAc9C,KAAKgC,kBAAoBhC,KAAKgC,kBAAoB,I,CArMlE,sBAAAe,GACE/C,KAAK2B,oB,CAUP,kBAAAqB,GACEhD,KAAKQ,UAAY,UAAYR,KAAKU,gB,CAwCpC,cAAAuC,GACE,GAAIjD,KAAKQ,UAAY,SAAU,CAC7BR,KAAKU,gB,EAUT,cAAAwC,GACElD,KAAK2B,oB,CAGP,iBAAAwB,G,MACEnD,KAAKQ,UAAY,UAAYR,KAAKU,iBAElC,MAAMT,GAAYE,EAAAH,KAAKkB,GAAGW,iBAAa,MAAA1B,SAAA,SAAAA,EAAEF,UACzC,GAAIA,EAAWD,KAAKkC,gBAAkBjC,EACtCD,KAAK2B,oB,CAGP,gBAAAyB,GACEpD,KAAKO,OAAS,QACZ8C,EACE,CAAC,CAAEC,KAAMtD,KAAK0B,MAAO6B,SAAU,UAC/B,Q,CAIN,mBAAAC,GACExD,KAAKwC,cAAgBxC,KAAKoC,6BAC1BpC,KAAK2C,eAAiB3C,KAAKuC,6B,CAI7B,qBAAAkB,GACEzD,KAAKwC,eAAiBxC,KAAKI,SAAW,S,CAIxC,sBAAAsD,GACE1D,KAAKwC,eAAiBxC,KAAKI,SAAWJ,KAAKE,gB,CAuG7C,MAAAyD,GACE,MAAM1D,UACJA,EAASiB,GACTA,EAAEG,iBACFA,EAAgBE,SAChBA,EAAQnB,SACRA,EAAQC,KACRA,EAAIqB,MACJA,EAAKnB,KACLA,EAAIC,QACJA,EAAOC,QACPA,EAAOH,MACPA,GACEN,KAEJ,OACE4D,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAO,CACL,CAAC,YAAY3D,KAAa,KAC1B,CAAC,YAAYC,KAAS,KACtB,CAAC,YAAYG,KAAY,KACzB,CAAC,YAAYD,KAAS,KACtB,CAAC,uBAAuBc,KACtBA,IAAqB,MAAQb,IAAY,SAC3C,CAAC,GAAGC,EAAU,gBAAkB,mBAAoB,KACpD,CAAC,YAAYH,KAAUA,IAAU,WAEnC0D,GAAI9C,EAAG8C,IAAM,KAAI,aACL/D,EACZgE,KAAK,UAEJ1D,IAAS,QAAUqD,EAAA,QAAAE,IAAA,2CAAMI,KAAK,eAC9B3D,IAAS,QAAUmB,GAClBkC,EAAA,iBAAAE,IAAA,2CAAetD,QAASH,IAAS,QAAU,cAAgB,SACxDkB,KAGJhB,IAAS,OAASqD,EAAA,QAAAE,IAAA,2CAAMC,MAAM,WAAS,S","ignoreList":[]}
|