@ukic/canary-web-components 3.0.0-canary.10 → 3.0.0-canary.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/core.cjs.js +1 -1
- package/dist/cjs/ic-back-to-top.cjs.entry.js +3 -1
- package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +22 -21
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +4 -3
- package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card-vertical.cjs.entry.js +1 -1
- package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +1 -1
- package/dist/cjs/ic-data-table-title-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-table.cjs.entry.js +14 -13
- package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-date-input.cjs.entry.js +6 -0
- package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-dialog.cjs.entry.js +20 -5
- package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-empty-state_2.cjs.entry.js +17 -7
- package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-link.cjs.entry.js +1 -1
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-pagination_4.cjs.entry.js +1 -1
- package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +2 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-context.cjs.entry.js +1 -2
- package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +5 -6
- package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toggle-button.cjs.entry.js +1 -1
- package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tree-item.cjs.entry.js +41 -16
- package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-tree-view.cjs.entry.js +7 -9
- package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/ic-data-table/ic-data-table.css +19 -5
- package/dist/collection/components/ic-data-table/ic-data-table.js +15 -14
- package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
- package/dist/collection/components/ic-data-table/ic-data-table.types.js.map +1 -1
- package/dist/collection/components/ic-data-table/story-data.js +190 -0
- package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
- package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js +0 -27
- package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js.map +1 -1
- package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.css +6 -6
- package/dist/collection/components/ic-date-input/ic-date-input.js +6 -0
- package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +17 -7
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
- package/dist/collection/components/ic-tree-item/ic-tree-item.js +41 -16
- package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
- package/dist/collection/components/ic-tree-view/ic-tree-view.js +7 -9
- package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
- package/dist/components/ic-back-to-top.js +4 -1
- package/dist/components/ic-back-to-top.js.map +1 -1
- package/dist/components/ic-breadcrumb-group.js +22 -21
- package/dist/components/ic-breadcrumb-group.js.map +1 -1
- package/dist/components/ic-breadcrumb2.js +4 -3
- package/dist/components/ic-breadcrumb2.js.map +1 -1
- package/dist/components/ic-card-vertical.js +1 -1
- package/dist/components/ic-card-vertical.js.map +1 -1
- package/dist/components/ic-checkbox.js +1 -1
- package/dist/components/ic-checkbox.js.map +1 -1
- package/dist/components/ic-data-table-title-bar.js +1 -1
- package/dist/components/ic-data-table-title-bar.js.map +1 -1
- package/dist/components/ic-data-table.js +14 -13
- package/dist/components/ic-data-table.js.map +1 -1
- package/dist/components/ic-date-input2.js +6 -0
- package/dist/components/ic-date-input2.js.map +1 -1
- package/dist/components/ic-dialog.js +21 -6
- package/dist/components/ic-dialog.js.map +1 -1
- package/dist/components/ic-footer-link.js +1 -1
- package/dist/components/ic-footer-link.js.map +1 -1
- package/dist/components/ic-link2.js +1 -1
- package/dist/components/ic-link2.js.map +1 -1
- package/dist/components/ic-pagination-bar2.js +17 -7
- package/dist/components/ic-pagination-bar2.js.map +1 -1
- package/dist/components/ic-radio-group.js +2 -1
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-radio-option.js +1 -1
- package/dist/components/ic-radio-option.js.map +1 -1
- package/dist/components/ic-select2.js +1 -1
- package/dist/components/ic-select2.js.map +1 -1
- package/dist/components/ic-tab-context.js +1 -2
- package/dist/components/ic-tab-context.js.map +1 -1
- package/dist/components/ic-tab-panel.js +6 -6
- package/dist/components/ic-tab-panel.js.map +1 -1
- package/dist/components/ic-toggle-button.js +1 -1
- package/dist/components/ic-toggle-button.js.map +1 -1
- package/dist/components/ic-top-navigation.js +1 -1
- package/dist/components/ic-top-navigation.js.map +1 -1
- package/dist/components/ic-tree-item.js +41 -16
- package/dist/components/ic-tree-item.js.map +1 -1
- package/dist/components/ic-tree-view.js +7 -9
- package/dist/components/ic-tree-view.js.map +1 -1
- package/dist/core/core.css +13 -7
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/{p-fc155ae2.entry.js → p-01e4affd.entry.js} +2 -2
- package/dist/core/{p-fc155ae2.entry.js.map → p-01e4affd.entry.js.map} +1 -1
- package/dist/core/p-04bd65fb.entry.js +2 -0
- package/dist/core/p-04bd65fb.entry.js.map +1 -0
- package/dist/core/{p-2169e75b.entry.js → p-052a9f31.entry.js} +2 -2
- package/dist/core/{p-b85466a7.entry.js → p-059c08a0.entry.js} +2 -2
- package/dist/core/{p-88913402.entry.js → p-07784e04.entry.js} +2 -2
- package/dist/core/p-07784e04.entry.js.map +1 -0
- package/dist/core/p-0c225c1a.entry.js +2 -0
- package/dist/core/p-0c225c1a.entry.js.map +1 -0
- package/dist/core/{p-4347f05c.entry.js → p-1684a003.entry.js} +2 -2
- package/dist/core/{p-6ac8e09b.entry.js → p-1bf881bb.entry.js} +2 -2
- package/dist/core/{p-8ebd64ae.entry.js → p-1eb21184.entry.js} +2 -2
- package/dist/core/{p-0054bdc2.entry.js → p-2039e996.entry.js} +2 -2
- package/dist/core/{p-01a23e24.entry.js → p-20c780cb.entry.js} +2 -2
- package/dist/core/{p-be1ec9aa.entry.js → p-21c90000.entry.js} +2 -2
- package/dist/core/p-21c90000.entry.js.map +1 -0
- package/dist/core/{p-4f96bec1.entry.js → p-2376e171.entry.js} +2 -2
- package/dist/core/p-23f62fca.entry.js +2 -0
- package/dist/core/p-23f62fca.entry.js.map +1 -0
- package/dist/core/{p-71496305.entry.js → p-28c8d6e3.entry.js} +2 -2
- package/dist/core/p-2c59f79e.entry.js +2 -0
- package/dist/core/p-2c59f79e.entry.js.map +1 -0
- package/dist/core/{p-0c5d45e1.entry.js → p-2e261288.entry.js} +2 -2
- package/dist/core/p-34e05e3f.entry.js +2 -0
- package/dist/core/p-34e05e3f.entry.js.map +1 -0
- package/dist/core/{p-9a392c41.entry.js → p-36242f26.entry.js} +2 -2
- package/dist/core/{p-f3d2af04.entry.js → p-37cced7a.entry.js} +2 -2
- package/dist/core/{p-ce923b92.entry.js → p-3c17ca15.entry.js} +2 -2
- package/dist/core/p-41e48902.entry.js +2 -0
- package/dist/core/p-41e48902.entry.js.map +1 -0
- package/dist/core/{p-47a1ce8d.entry.js → p-435d9ce2.entry.js} +2 -2
- package/dist/core/p-47e0072d.entry.js +2 -0
- package/dist/core/p-47e0072d.entry.js.map +1 -0
- package/dist/core/{p-ace8126b.entry.js → p-49fbe074.entry.js} +2 -2
- package/dist/core/{p-78ed3070.entry.js → p-4ba91306.entry.js} +2 -2
- package/dist/core/{p-32726b89.entry.js → p-50e24896.entry.js} +2 -2
- package/dist/core/p-534f7f0d.entry.js +2 -0
- package/dist/core/p-534f7f0d.entry.js.map +1 -0
- package/dist/core/{p-bd4401d5.entry.js → p-542ffaf4.entry.js} +2 -2
- package/dist/core/{p-8e56516a.entry.js → p-555dd292.entry.js} +2 -2
- package/dist/core/p-596ad611.entry.js +2 -0
- package/dist/core/p-596ad611.entry.js.map +1 -0
- package/dist/core/p-5d03b04e.entry.js +2 -0
- package/dist/core/p-5d03b04e.entry.js.map +1 -0
- package/dist/core/{p-54dc696e.entry.js → p-5e616d85.entry.js} +2 -2
- package/dist/core/p-63f90f39.entry.js +2 -0
- package/dist/core/p-63f90f39.entry.js.map +1 -0
- package/dist/core/{p-abda7e21.entry.js → p-64101c64.entry.js} +2 -2
- package/dist/core/{p-897fac99.js → p-70616efa.js} +2 -2
- package/dist/core/{p-d2b2b7df.entry.js → p-76c94cee.entry.js} +2 -2
- package/dist/core/{p-794ff553.entry.js → p-7d1f7976.entry.js} +2 -2
- package/dist/core/p-9038c7e3.entry.js +2 -0
- package/dist/core/p-9038c7e3.entry.js.map +1 -0
- package/dist/core/p-9bf9da9b.entry.js +2 -0
- package/dist/core/p-9bf9da9b.entry.js.map +1 -0
- package/dist/core/{p-33110185.entry.js → p-a33bf749.entry.js} +2 -2
- package/dist/core/p-a699b343.entry.js +2 -0
- package/dist/core/p-a699b343.entry.js.map +1 -0
- package/dist/core/{p-157b47bc.entry.js → p-a707b036.entry.js} +2 -2
- package/dist/core/p-a707b036.entry.js.map +1 -0
- package/dist/core/{p-bd87bf33.entry.js → p-a74be80c.entry.js} +2 -2
- package/dist/core/{p-abdd8560.entry.js → p-af547c0a.entry.js} +2 -2
- package/dist/core/{p-abdd8560.entry.js.map → p-af547c0a.entry.js.map} +1 -1
- package/dist/core/{p-b5a5fe39.entry.js → p-b0170269.entry.js} +2 -2
- package/dist/core/{p-51058719.entry.js → p-bb418e1b.entry.js} +2 -2
- package/dist/core/{p-1658e577.entry.js → p-d2dbb1dc.entry.js} +2 -2
- package/dist/core/{p-26aff39e.entry.js → p-e3303bbe.entry.js} +2 -2
- package/dist/core/{p-6188f029.entry.js → p-e62e5ca3.entry.js} +2 -2
- package/dist/core/{p-e3e0cf46.entry.js → p-e9ed9a29.entry.js} +2 -2
- package/dist/core/p-e9ed9a29.entry.js.map +1 -0
- package/dist/core/{p-9462f294.entry.js → p-ebd84a67.entry.js} +2 -2
- package/dist/core/{p-b717ae40.entry.js → p-f154d6e6.entry.js} +2 -2
- package/dist/core/{p-77157922.entry.js → p-f1d5bdbd.entry.js} +2 -2
- package/dist/core/{p-a1d5fff2.entry.js → p-f482ccb8.entry.js} +2 -2
- package/dist/core/p-f60c8a1b.entry.js +2 -0
- package/dist/core/p-f60c8a1b.entry.js.map +1 -0
- package/dist/core/{p-45177148.entry.js → p-fc71c920.entry.js} +2 -2
- package/dist/esm/core.js +1 -1
- package/dist/esm/{helpers-56c75bf4.js → helpers-b4561326.js} +2 -2
- package/dist/esm/{helpers-56c75bf4.js.map → helpers-b4561326.js.map} +1 -1
- package/dist/esm/ic-accordion-group.entry.js +1 -1
- package/dist/esm/ic-accordion.entry.js +1 -1
- package/dist/esm/ic-alert.entry.js +1 -1
- package/dist/esm/ic-back-to-top.entry.js +4 -2
- package/dist/esm/ic-back-to-top.entry.js.map +1 -1
- package/dist/esm/ic-badge.entry.js +1 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +23 -22
- package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb.entry.js +5 -4
- package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
- package/dist/esm/ic-button_3.entry.js +1 -1
- package/dist/esm/ic-card-vertical.entry.js +2 -2
- package/dist/esm/ic-card-vertical.entry.js.map +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +1 -1
- package/dist/esm/ic-checkbox.entry.js +2 -2
- package/dist/esm/ic-checkbox.entry.js.map +1 -1
- package/dist/esm/ic-chip.entry.js +1 -1
- package/dist/esm/ic-data-row.entry.js +1 -1
- package/dist/esm/ic-data-table-title-bar.entry.js +1 -1
- package/dist/esm/ic-data-table-title-bar.entry.js.map +1 -1
- package/dist/esm/ic-data-table.entry.js +14 -13
- package/dist/esm/ic-data-table.entry.js.map +1 -1
- package/dist/esm/ic-date-input.entry.js +6 -0
- package/dist/esm/ic-date-input.entry.js.map +1 -1
- package/dist/esm/ic-dialog.entry.js +21 -6
- package/dist/esm/ic-dialog.entry.js.map +1 -1
- package/dist/esm/ic-divider.entry.js +1 -1
- package/dist/esm/ic-empty-state_2.entry.js +18 -8
- package/dist/esm/ic-empty-state_2.entry.js.map +1 -1
- package/dist/esm/ic-footer-link-group.entry.js +1 -1
- package/dist/esm/ic-footer-link.entry.js +2 -2
- package/dist/esm/ic-footer-link.entry.js.map +1 -1
- package/dist/esm/ic-footer.entry.js +1 -1
- package/dist/esm/ic-hero.entry.js +1 -1
- package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
- package/dist/esm/ic-input-component-container_3.entry.js +1 -1
- package/dist/esm/ic-input-label_2.entry.js +1 -1
- package/dist/esm/ic-link.entry.js +2 -2
- package/dist/esm/ic-link.entry.js.map +1 -1
- package/dist/esm/ic-menu-group.entry.js +1 -1
- package/dist/esm/ic-menu-item.entry.js +1 -1
- package/dist/esm/ic-navigation-button.entry.js +1 -1
- package/dist/esm/ic-navigation-group.entry.js +1 -1
- package/dist/esm/ic-navigation-item.entry.js +1 -1
- package/dist/esm/ic-navigation-menu.entry.js +1 -1
- package/dist/esm/ic-page-header.entry.js +1 -1
- package/dist/esm/ic-pagination_4.entry.js +2 -2
- package/dist/esm/ic-pagination_4.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +1 -1
- package/dist/esm/ic-radio-group.entry.js +3 -2
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-option.entry.js +2 -2
- package/dist/esm/ic-radio-option.entry.js.map +1 -1
- package/dist/esm/ic-search-bar.entry.js +1 -1
- package/dist/esm/ic-side-navigation.entry.js +1 -1
- package/dist/esm/ic-status-tag.entry.js +1 -1
- package/dist/esm/ic-step.entry.js +1 -1
- package/dist/esm/ic-stepper.entry.js +1 -1
- package/dist/esm/ic-switch.entry.js +1 -1
- package/dist/esm/ic-tab-context.entry.js +1 -2
- package/dist/esm/ic-tab-context.entry.js.map +1 -1
- package/dist/esm/ic-tab-group.entry.js +1 -1
- package/dist/esm/ic-tab-panel.entry.js +5 -6
- package/dist/esm/ic-tab-panel.entry.js.map +1 -1
- package/dist/esm/ic-tab.entry.js +1 -1
- package/dist/esm/ic-theme.entry.js +1 -1
- package/dist/esm/ic-toast.entry.js +1 -1
- package/dist/esm/ic-toggle-button-group.entry.js +1 -1
- package/dist/esm/ic-toggle-button.entry.js +2 -2
- package/dist/esm/ic-toggle-button.entry.js.map +1 -1
- package/dist/esm/ic-top-navigation.entry.js +2 -2
- package/dist/esm/ic-top-navigation.entry.js.map +1 -1
- package/dist/esm/ic-tree-item.entry.js +41 -16
- package/dist/esm/ic-tree-item.entry.js.map +1 -1
- package/dist/esm/ic-tree-view.entry.js +7 -9
- package/dist/esm/ic-tree-view.entry.js.map +1 -1
- package/dist/esm/ic-typography.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/ic-data-table/ic-data-table.d.ts +1 -2
- package/dist/types/components/ic-data-table/ic-data-table.types.d.ts +1 -1
- package/dist/types/components/ic-data-table/story-data.d.ts +59 -0
- package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +1 -0
- package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +2 -0
- package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +2 -0
- package/dist/types/components.d.ts +0 -2
- package/hydrate/index.js +153 -92
- package/package.json +3 -3
- package/dist/core/p-063911a8.entry.js +0 -2
- package/dist/core/p-063911a8.entry.js.map +0 -1
- package/dist/core/p-0c9155f4.entry.js +0 -2
- package/dist/core/p-0c9155f4.entry.js.map +0 -1
- package/dist/core/p-14098257.entry.js +0 -2
- package/dist/core/p-14098257.entry.js.map +0 -1
- package/dist/core/p-157b47bc.entry.js.map +0 -1
- package/dist/core/p-15a5cce5.entry.js +0 -2
- package/dist/core/p-15a5cce5.entry.js.map +0 -1
- package/dist/core/p-27b1223d.entry.js +0 -2
- package/dist/core/p-27b1223d.entry.js.map +0 -1
- package/dist/core/p-3963201d.entry.js +0 -2
- package/dist/core/p-3963201d.entry.js.map +0 -1
- package/dist/core/p-41bfa3e5.entry.js +0 -2
- package/dist/core/p-41bfa3e5.entry.js.map +0 -1
- package/dist/core/p-51faa4ba.entry.js +0 -2
- package/dist/core/p-51faa4ba.entry.js.map +0 -1
- package/dist/core/p-82b408ad.entry.js +0 -2
- package/dist/core/p-82b408ad.entry.js.map +0 -1
- package/dist/core/p-88913402.entry.js.map +0 -1
- package/dist/core/p-a1cf5884.entry.js +0 -2
- package/dist/core/p-a1cf5884.entry.js.map +0 -1
- package/dist/core/p-a69ef3eb.entry.js +0 -2
- package/dist/core/p-a69ef3eb.entry.js.map +0 -1
- package/dist/core/p-b2a6f0dd.entry.js +0 -2
- package/dist/core/p-b2a6f0dd.entry.js.map +0 -1
- package/dist/core/p-be1ec9aa.entry.js.map +0 -1
- package/dist/core/p-c035d7b9.entry.js +0 -2
- package/dist/core/p-c035d7b9.entry.js.map +0 -1
- package/dist/core/p-e1df1b9a.entry.js +0 -2
- package/dist/core/p-e1df1b9a.entry.js.map +0 -1
- package/dist/core/p-e3e0cf46.entry.js.map +0 -1
- package/dist/core/p-ffb11ad1.entry.js +0 -2
- package/dist/core/p-ffb11ad1.entry.js.map +0 -1
- /package/dist/core/{p-2169e75b.entry.js.map → p-052a9f31.entry.js.map} +0 -0
- /package/dist/core/{p-b85466a7.entry.js.map → p-059c08a0.entry.js.map} +0 -0
- /package/dist/core/{p-4347f05c.entry.js.map → p-1684a003.entry.js.map} +0 -0
- /package/dist/core/{p-6ac8e09b.entry.js.map → p-1bf881bb.entry.js.map} +0 -0
- /package/dist/core/{p-8ebd64ae.entry.js.map → p-1eb21184.entry.js.map} +0 -0
- /package/dist/core/{p-0054bdc2.entry.js.map → p-2039e996.entry.js.map} +0 -0
- /package/dist/core/{p-01a23e24.entry.js.map → p-20c780cb.entry.js.map} +0 -0
- /package/dist/core/{p-4f96bec1.entry.js.map → p-2376e171.entry.js.map} +0 -0
- /package/dist/core/{p-71496305.entry.js.map → p-28c8d6e3.entry.js.map} +0 -0
- /package/dist/core/{p-0c5d45e1.entry.js.map → p-2e261288.entry.js.map} +0 -0
- /package/dist/core/{p-9a392c41.entry.js.map → p-36242f26.entry.js.map} +0 -0
- /package/dist/core/{p-f3d2af04.entry.js.map → p-37cced7a.entry.js.map} +0 -0
- /package/dist/core/{p-ce923b92.entry.js.map → p-3c17ca15.entry.js.map} +0 -0
- /package/dist/core/{p-47a1ce8d.entry.js.map → p-435d9ce2.entry.js.map} +0 -0
- /package/dist/core/{p-ace8126b.entry.js.map → p-49fbe074.entry.js.map} +0 -0
- /package/dist/core/{p-78ed3070.entry.js.map → p-4ba91306.entry.js.map} +0 -0
- /package/dist/core/{p-32726b89.entry.js.map → p-50e24896.entry.js.map} +0 -0
- /package/dist/core/{p-bd4401d5.entry.js.map → p-542ffaf4.entry.js.map} +0 -0
- /package/dist/core/{p-8e56516a.entry.js.map → p-555dd292.entry.js.map} +0 -0
- /package/dist/core/{p-54dc696e.entry.js.map → p-5e616d85.entry.js.map} +0 -0
- /package/dist/core/{p-abda7e21.entry.js.map → p-64101c64.entry.js.map} +0 -0
- /package/dist/core/{p-897fac99.js.map → p-70616efa.js.map} +0 -0
- /package/dist/core/{p-d2b2b7df.entry.js.map → p-76c94cee.entry.js.map} +0 -0
- /package/dist/core/{p-794ff553.entry.js.map → p-7d1f7976.entry.js.map} +0 -0
- /package/dist/core/{p-33110185.entry.js.map → p-a33bf749.entry.js.map} +0 -0
- /package/dist/core/{p-bd87bf33.entry.js.map → p-a74be80c.entry.js.map} +0 -0
- /package/dist/core/{p-b5a5fe39.entry.js.map → p-b0170269.entry.js.map} +0 -0
- /package/dist/core/{p-51058719.entry.js.map → p-bb418e1b.entry.js.map} +0 -0
- /package/dist/core/{p-1658e577.entry.js.map → p-d2dbb1dc.entry.js.map} +0 -0
- /package/dist/core/{p-26aff39e.entry.js.map → p-e3303bbe.entry.js.map} +0 -0
- /package/dist/core/{p-6188f029.entry.js.map → p-e62e5ca3.entry.js.map} +0 -0
- /package/dist/core/{p-9462f294.entry.js.map → p-ebd84a67.entry.js.map} +0 -0
- /package/dist/core/{p-b717ae40.entry.js.map → p-f154d6e6.entry.js.map} +0 -0
- /package/dist/core/{p-77157922.entry.js.map → p-f1d5bdbd.entry.js.map} +0 -0
- /package/dist/core/{p-a1d5fff2.entry.js.map → p-f482ccb8.entry.js.map} +0 -0
- /package/dist/core/{p-45177148.entry.js.map → p-fc71c920.entry.js.map} +0 -0
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["icRadioGroupCss","RadioGroup","constructor","hostRef","this","resizeObserver","ADDITIONAL_FIELD","RADIO_HORIZONTAL","RADIO_VERTICAL","runResizeObserver","ResizeObserver","checkOrientation","observe","el","handleKeyDown","event","additionalFields","Array","from","querySelectorAll","activeEl","document","activeElement","length","radioOptions","map","slotHasContent","stopPropagation","key","getNextItemToSelect","selectedChild","click","preventDefault","currentItem","movingDown","numRadios","nextItem","disabled","addSlotChangeListener","radioContainer","addEventListener","setRadioOptions","setFirstRadioOptionTabIndex","value","setTabIndex","checkedValue","children","filter","tagName","forEach","radioOption","index","selected","name","groupLabel","label","initialOrientation","undefined","currentOrientation","helperText","hideLabel","orientation","required","size","validationStatus","validationText","theme","watchDisabledHandler","newValue","removeDisabledFalse","orientationChangeHandler","watchThemeHandler","disconnectedCallback","_a","_b","disconnect","removeEventListener","componentWillLoad","componentDidLoad","checkResizeObserver","onComponentRequiredPropUndefined","prop","propName","selectHandler","detail","target","selectedOption","parentElement","icChange","emit","radio","textFieldValue","querySelector","changeHandler","findIndex","totalWidth","isArray","clientWidth","i","arr","render","h","Host","onKeyDown","class","role","horizontal","ref","hasValidationStatus","ariaLiveMode","status","message"],"sources":["../web-components/dist/collection/components/ic-radio-group/ic-radio-group.css?tag=ic-radio-group&encapsulation=shadow","../web-components/dist/collection/components/ic-radio-group/ic-radio-group.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n:host {\n display: block;\n\n --ic-input-label-text-color: var(--ic-radio-button-input-field-label);\n --ic-input-label-helper-text-color: var(\n --ic-radio-button-input-field-subtitle\n );\n --ic-input-validation-status-text-color: var(--ic-radio-button-state-text);\n --ic-input-validation-error: var(--ic-radio-button-state-icon-error);\n}\n\nic-input-label.error {\n --ic-input-label-text-color: var(--ic-radio-button-input-field-label-error);\n}\n\nic-input-label.disabled {\n --ic-input-label-text-color: var(\n --ic-radio-button-input-field-label-disabled\n );\n --ic-input-label-helper-text-color: var(\n --ic-radio-button-input-field-subtitle-disabled\n );\n}\n\nic-input-validation {\n margin-top: var(--ic-space-sm);\n}\n\n:host(.ic-radio-group-small) ic-input-validation {\n margin-top: calc(var(--ic-space-sm) / 2);\n}\n\nic-input-label ic-typography {\n margin-bottom: var(--ic-space-sm);\n}\n\n:host(.ic-radio-group-small) ic-input-label ic-typography {\n margin-bottom: calc(var(--ic-space-sm) / 2);\n}\n\n:host .radio-buttons-container {\n display: flex;\n flex-direction: column;\n gap: var(--ic-space-xxs);\n}\n\n:host(.ic-radio-group-small) .radio-buttons-container {\n gap: var(--ic-space-xxxs);\n}\n\n:host .radio-buttons-container.horizontal {\n display: flex;\n flex-direction: row;\n gap: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n:host(.ic-radio-group-small) .radio-buttons-container.horizontal {\n gap: var(--ic-space-xl);\n}\n","import { Host, h, } from \"@stencil/core\";\nimport { hasValidationStatus, slotHasContent, onComponentRequiredPropUndefined, removeDisabledFalse, checkResizeObserver, } from \"../../utils/helpers\";\nexport class RadioGroup {\n constructor() {\n this.resizeObserver = null;\n this.ADDITIONAL_FIELD = \"additional-field\";\n this.RADIO_HORIZONTAL = \"horizontal\";\n this.RADIO_VERTICAL = \"vertical\";\n this.runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.checkOrientation();\n });\n this.resizeObserver.observe(this.el);\n };\n this.handleKeyDown = (event) => {\n const additionalFields = Array.from(this.el.querySelectorAll('ic-text-field[slot=\"additional-field\"]'));\n const activeEl = document.activeElement;\n if (additionalFields.length > 0 &&\n this.radioOptions.map((el) => slotHasContent(el, this.ADDITIONAL_FIELD)) &&\n additionalFields.map((el) => el == activeEl)) {\n return;\n }\n event.stopPropagation();\n switch (event.key) {\n case \"ArrowDown\":\n case \"ArrowRight\":\n this.radioOptions[this.getNextItemToSelect(this.selectedChild, true)].click();\n event.preventDefault();\n break;\n case \"ArrowUp\":\n case \"ArrowLeft\":\n this.radioOptions[this.getNextItemToSelect(this.selectedChild, false)].click();\n event.preventDefault();\n }\n };\n this.getNextItemToSelect = (currentItem, movingDown) => {\n const numRadios = this.radioOptions.length - 1;\n if (currentItem < 1) {\n currentItem = 0;\n }\n let nextItem = movingDown ? currentItem + 1 : currentItem - 1;\n //check if wrap around necessary\n if (nextItem < 0) {\n nextItem = numRadios;\n }\n else if (nextItem > numRadios) {\n nextItem = 0;\n }\n //if next item is disabled then find next\n if (this.radioOptions[nextItem].disabled) {\n nextItem = this.getNextItemToSelect(nextItem, movingDown);\n }\n return nextItem;\n };\n this.addSlotChangeListener = () => {\n this.radioContainer.addEventListener(\"slotchange\", this.setRadioOptions);\n };\n this.setFirstRadioOptionTabIndex = (value) => {\n this.radioOptions[0].setTabIndex(value);\n };\n this.setRadioOptions = () => {\n this.selectedChild = -1;\n this.checkedValue = \"\";\n this.radioOptions = Array.from(this.el.children).filter((el) => el.tagName === \"IC-RADIO-OPTION\");\n if (this.radioOptions.length > 0) {\n this.radioOptions.forEach((radioOption, index) => {\n if (!radioOption.selected) {\n radioOption.selected = this.checkedValue === radioOption.value;\n }\n radioOption.name = this.name;\n radioOption.groupLabel = this.label;\n if (radioOption.selected) {\n this.selectedChild = index;\n this.checkedValue = radioOption.value;\n }\n if (this.disabled) {\n radioOption.disabled = true;\n }\n });\n this.setFirstRadioOptionTabIndex(this.selectedChild > 0 ? -1 : 0);\n if (this.initialOrientation === this.RADIO_HORIZONTAL &&\n this.radioOptions !== undefined &&\n (this.radioOptions.length > 2 ||\n (this.radioOptions.length === 2 &&\n (slotHasContent(this.radioOptions[0], this.ADDITIONAL_FIELD) ||\n slotHasContent(this.radioOptions[1], this.ADDITIONAL_FIELD))))) {\n this.currentOrientation = this.RADIO_VERTICAL;\n }\n }\n };\n this.checkedValue = \"\";\n this.currentOrientation = undefined;\n this.initialOrientation = undefined;\n this.selectedChild = -1;\n this.disabled = false;\n this.helperText = undefined;\n this.hideLabel = false;\n this.label = undefined;\n this.name = undefined;\n this.orientation = \"vertical\";\n this.required = false;\n this.size = \"medium\";\n this.validationStatus = \"\";\n this.validationText = \"\";\n this.theme = \"inherit\";\n }\n watchDisabledHandler(newValue) {\n this.radioOptions.forEach((radioOption) => (radioOption.disabled = newValue));\n removeDisabledFalse(this.disabled, this.el);\n }\n orientationChangeHandler() {\n this.initialOrientation = this.orientation;\n this.checkOrientation();\n }\n watchThemeHandler(newValue) {\n this.radioOptions.forEach((radioOption) => (radioOption.theme = newValue));\n }\n disconnectedCallback() {\n var _a, _b;\n (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();\n (_b = this.radioContainer) === null || _b === void 0 ? void 0 : _b.removeEventListener(\"slotchange\", this.setRadioOptions);\n }\n componentWillLoad() {\n removeDisabledFalse(this.disabled, this.el);\n this.orientationChangeHandler();\n this.currentOrientation = this.initialOrientation;\n }\n componentDidLoad() {\n this.setRadioOptions();\n checkResizeObserver(this.runResizeObserver);\n this.addSlotChangeListener();\n onComponentRequiredPropUndefined([\n { prop: this.label, propName: \"label\" },\n { prop: this.name, propName: \"name\" },\n ], \"Radio Group\");\n this.watchThemeHandler(this.theme);\n }\n selectHandler({ detail, target }) {\n var _a;\n const selectedOption = target;\n if (selectedOption.parentElement === this.el) {\n this.checkedValue = detail.value;\n this.icChange.emit({\n value: this.checkedValue,\n selectedOption: {\n radio: selectedOption,\n textFieldValue: (_a = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.querySelector(\"ic-text-field\")) === null || _a === void 0 ? void 0 : _a.value,\n },\n });\n if (this.radioOptions !== undefined) {\n this.radioOptions.forEach((radioOption, index) => {\n radioOption.selected = selectedOption === radioOption;\n if (radioOption.selected) {\n this.selectedChild = index;\n }\n });\n this.setFirstRadioOptionTabIndex(this.selectedChild > 0 ? -1 : 0);\n }\n }\n }\n changeHandler() {\n const selectedOption = this.radioOptions.findIndex((radioOption) => radioOption.selected);\n if (selectedOption < 0) {\n this.setFirstRadioOptionTabIndex(0);\n this.selectedChild = selectedOption;\n }\n }\n checkOrientation() {\n var _a, _b;\n if (this.initialOrientation === this.RADIO_HORIZONTAL) {\n let totalWidth = 0;\n if (Array.isArray(this.radioOptions) && this.radioOptions.length > 0) {\n this.radioOptions.forEach(({ clientWidth }, i, arr) => {\n totalWidth += clientWidth;\n if (i < arr.length - 1)\n totalWidth += 40;\n });\n }\n else {\n totalWidth = 0;\n }\n if (this.initialOrientation == this.RADIO_HORIZONTAL) {\n if (this.radioOptions !== undefined &&\n (this.radioOptions.length > 2 ||\n (this.radioOptions.length === 2 &&\n (slotHasContent(this.radioOptions[0], this.ADDITIONAL_FIELD) ||\n slotHasContent(this.radioOptions[1], this.ADDITIONAL_FIELD))))) {\n this.currentOrientation = this.RADIO_VERTICAL;\n }\n else {\n if (totalWidth >= ((_a = this.radioContainer) === null || _a === void 0 ? void 0 : _a.clientWidth)) {\n this.currentOrientation = this.RADIO_VERTICAL;\n }\n else if (totalWidth < ((_b = this.radioContainer) === null || _b === void 0 ? void 0 : _b.clientWidth)) {\n this.currentOrientation = this.RADIO_HORIZONTAL;\n }\n }\n }\n }\n }\n render() {\n const { currentOrientation, disabled, handleKeyDown, helperText, hideLabel, label, required, size, validationStatus, validationText, theme, } = this;\n return (h(Host, { onKeyDown: handleKeyDown, class: {\n \"ic-radio-group-small\": size === \"small\",\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n } }, h(\"div\", { role: \"radiogroup\", \"aria-label\": `${label}${required ? \", required\" : \"\"}` }, !hideLabel && (h(\"ic-input-label\", { class: { [`${validationStatus}`]: true, [\"disabled\"]: disabled }, label: label, helperText: helperText, required: required, disabled: disabled })), h(\"div\", { class: {\n \"radio-buttons-container\": true,\n horizontal: currentOrientation === this.RADIO_HORIZONTAL,\n }, ref: (el) => (this.radioContainer = el) }, h(\"slot\", null))), hasValidationStatus(validationStatus, disabled) && (h(\"ic-input-validation\", { ariaLiveMode: \"polite\", status: validationStatus, message: validationText }))));\n }\n static get is() { return \"ic-radio-group\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-radio-group.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-radio-group.css\"]\n };\n }\n static get properties() {\n return {\n \"disabled\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the disabled state will be set.\"\n },\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"helperText\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The helper text that will be displayed for additional field guidance.\"\n },\n \"attribute\": \"helper-text\",\n \"reflect\": false\n },\n \"hideLabel\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the label will be hidden and the required label value will be applied as an aria-label.\"\n },\n \"attribute\": \"hide-label\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"label\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": true,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The label for the radio group to be displayed.\"\n },\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"name\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": true,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The name for the radio group to differentiate from other groups.\"\n },\n \"attribute\": \"name\",\n \"reflect\": false\n },\n \"orientation\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcOrientation\",\n \"resolved\": \"\\\"horizontal\\\" | \\\"vertical\\\"\",\n \"references\": {\n \"IcOrientation\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcOrientation\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The orientation of the radio buttons in the radio group. If there are more than two radio buttons in a radio group or either of the radio buttons use the `additional-field` slot, then the orientation will always be vertical.\"\n },\n \"attribute\": \"orientation\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"vertical\\\"\"\n },\n \"required\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the radio group will require a value.\"\n },\n \"attribute\": \"required\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSizesNoLarge\",\n \"resolved\": \"\\\"medium\\\" | \\\"small\\\"\",\n \"references\": {\n \"IcSizesNoLarge\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcSizesNoLarge\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the radio group component.\"\n },\n \"attribute\": \"size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"medium\\\"\"\n },\n \"validationStatus\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcInformationStatusOrEmpty\",\n \"resolved\": \"\\\"\\\" | \\\"error\\\" | \\\"success\\\" | \\\"warning\\\"\",\n \"references\": {\n \"IcInformationStatusOrEmpty\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcInformationStatusOrEmpty\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The validation status - e.g. 'error' | 'warning' | 'success'.\"\n },\n \"attribute\": \"validation-status\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"validationText\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The validation text - e.g. 'error' | 'warning' | 'success'.\"\n },\n \"attribute\": \"validation-text\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcThemeMode\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\"\",\n \"references\": {\n \"IcThemeMode\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeMode\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Sets the theme color to the dark or light theme color. \\\"inherit\\\" will set the color based on the system settings or ic-theme component.\"\n },\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n }\n };\n }\n static get states() {\n return {\n \"checkedValue\": {},\n \"currentOrientation\": {},\n \"initialOrientation\": {},\n \"selectedChild\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"icChange\",\n \"name\": \"icChange\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when a user selects a radio.\"\n },\n \"complexType\": {\n \"original\": \"IcChangeEventDetail\",\n \"resolved\": \"IcChangeEventDetail\",\n \"references\": {\n \"IcChangeEventDetail\": {\n \"location\": \"import\",\n \"path\": \"./ic-radio-group.types\",\n \"id\": \"src/components/ic-radio-group/ic-radio-group.types.ts::IcChangeEventDetail\"\n }\n }\n }\n }];\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"disabled\",\n \"methodName\": \"watchDisabledHandler\"\n }, {\n \"propName\": \"orientation\",\n \"methodName\": \"orientationChangeHandler\"\n }, {\n \"propName\": \"theme\",\n \"methodName\": \"watchThemeHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"icCheck\",\n \"method\": \"selectHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"icSelectedChange\",\n \"method\": \"changeHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-radio-group.js.map\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["icRadioGroupCss","RadioGroup","constructor","hostRef","this","resizeObserver","ADDITIONAL_FIELD","RADIO_HORIZONTAL","RADIO_VERTICAL","runResizeObserver","ResizeObserver","checkOrientation","observe","el","handleKeyDown","event","additionalFields","Array","from","querySelectorAll","activeEl","document","activeElement","length","radioOptions","map","slotHasContent","stopPropagation","key","getNextItemToSelect","selectedChild","click","preventDefault","currentItem","movingDown","numRadios","nextItem","disabled","addSlotChangeListener","radioContainer","addEventListener","setRadioOptions","setFirstRadioOptionTabIndex","value","setTabIndex","checkedValue","children","filter","tagName","forEach","radioOption","index","selected","name","groupLabel","label","initialOrientation","undefined","currentOrientation","helperText","hideLabel","orientation","required","size","validationStatus","validationText","theme","watchDisabledHandler","newValue","removeDisabledFalse","orientationChangeHandler","watchThemeHandler","disconnectedCallback","_a","_b","disconnect","removeEventListener","componentWillLoad","componentDidLoad","checkResizeObserver","onComponentRequiredPropUndefined","prop","propName","selectHandler","detail","target","selectedOption","parentElement","icChange","emit","radio","textFieldValue","querySelector","changeHandler","findIndex","totalWidth","isArray","clientWidth","i","arr","render","h","Host","onKeyDown","class","role","horizontal","ref","hasValidationStatus","ariaLiveMode","status","message"],"sources":["../web-components/dist/collection/components/ic-radio-group/ic-radio-group.css?tag=ic-radio-group&encapsulation=shadow","../web-components/dist/collection/components/ic-radio-group/ic-radio-group.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n:host {\n display: block;\n\n --ic-input-label-text-color: var(--ic-radio-button-input-field-label);\n --ic-input-label-helper-text-color: var(\n --ic-radio-button-input-field-subtitle\n );\n --ic-input-validation-status-text-color: var(--ic-radio-button-state-text);\n --ic-input-validation-error: var(--ic-radio-button-state-icon-error);\n}\n\nic-input-label.error {\n --ic-input-label-text-color: var(--ic-radio-button-input-field-label-error);\n}\n\nic-input-label.disabled {\n --ic-input-label-text-color: var(\n --ic-radio-button-input-field-label-disabled\n );\n --ic-input-label-helper-text-color: var(\n --ic-radio-button-input-field-subtitle-disabled\n );\n}\n\nic-input-validation {\n margin-top: var(--ic-space-sm);\n}\n\n:host(.ic-radio-group-small) ic-input-validation {\n margin-top: calc(var(--ic-space-sm) / 2);\n}\n\nic-input-label ic-typography {\n margin-bottom: var(--ic-space-sm);\n}\n\n:host(.ic-radio-group-small) ic-input-label ic-typography {\n margin-bottom: calc(var(--ic-space-sm) / 2);\n}\n\n:host .radio-buttons-container {\n display: flex;\n flex-direction: column;\n gap: var(--ic-space-xxs);\n}\n\n:host(.ic-radio-group-small) .radio-buttons-container {\n gap: var(--ic-space-xxxs);\n}\n\n:host .radio-buttons-container.horizontal {\n display: flex;\n flex-direction: row;\n gap: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n:host(.ic-radio-group-small) .radio-buttons-container.horizontal {\n gap: var(--ic-space-xl);\n}\n","import { Host, h, } from \"@stencil/core\";\nimport { hasValidationStatus, slotHasContent, onComponentRequiredPropUndefined, removeDisabledFalse, checkResizeObserver, } from \"../../utils/helpers\";\nexport class RadioGroup {\n constructor() {\n this.resizeObserver = null;\n this.ADDITIONAL_FIELD = \"additional-field\";\n this.RADIO_HORIZONTAL = \"horizontal\";\n this.RADIO_VERTICAL = \"vertical\";\n this.runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.checkOrientation();\n });\n this.resizeObserver.observe(this.el);\n };\n this.handleKeyDown = (event) => {\n const additionalFields = Array.from(this.el.querySelectorAll('ic-text-field[slot=\"additional-field\"]'));\n const activeEl = document.activeElement;\n if (additionalFields.length > 0 &&\n this.radioOptions.map((el) => slotHasContent(el, this.ADDITIONAL_FIELD)) &&\n additionalFields.map((el) => el == activeEl)) {\n return;\n }\n event.stopPropagation();\n switch (event.key) {\n case \"ArrowDown\":\n case \"ArrowRight\":\n this.radioOptions[this.getNextItemToSelect(this.selectedChild, true)].click();\n event.preventDefault();\n break;\n case \"ArrowUp\":\n case \"ArrowLeft\":\n this.radioOptions[this.getNextItemToSelect(this.selectedChild, false)].click();\n event.preventDefault();\n }\n };\n this.getNextItemToSelect = (currentItem, movingDown) => {\n const numRadios = this.radioOptions.length - 1;\n if (currentItem < 1) {\n currentItem = 0;\n }\n let nextItem = movingDown ? currentItem + 1 : currentItem - 1;\n //check if wrap around necessary\n if (nextItem < 0) {\n nextItem = numRadios;\n }\n else if (nextItem > numRadios) {\n nextItem = 0;\n }\n //if next item is disabled then find next\n if (this.radioOptions[nextItem].disabled) {\n nextItem = this.getNextItemToSelect(nextItem, movingDown);\n }\n return nextItem;\n };\n this.addSlotChangeListener = () => {\n this.radioContainer.addEventListener(\"slotchange\", this.setRadioOptions);\n };\n this.setFirstRadioOptionTabIndex = (value) => {\n this.radioOptions[0].setTabIndex(value);\n };\n this.setRadioOptions = () => {\n this.selectedChild = -1;\n this.checkedValue = \"\";\n this.radioOptions = Array.from(this.el.children).filter((el) => el.tagName === \"IC-RADIO-OPTION\");\n if (this.radioOptions.length > 0) {\n this.radioOptions.forEach((radioOption, index) => {\n if (!radioOption.selected) {\n radioOption.selected = this.checkedValue === radioOption.value;\n }\n radioOption.name = this.name;\n radioOption.groupLabel = this.label;\n if (radioOption.selected) {\n this.selectedChild = index;\n this.checkedValue = radioOption.value;\n }\n if (this.disabled) {\n radioOption.disabled = true;\n }\n });\n this.setFirstRadioOptionTabIndex(this.selectedChild > 0 ? -1 : 0);\n if (this.initialOrientation === this.RADIO_HORIZONTAL &&\n this.radioOptions !== undefined &&\n (this.radioOptions.length > 2 ||\n (this.radioOptions.length === 2 &&\n (slotHasContent(this.radioOptions[0], this.ADDITIONAL_FIELD) ||\n slotHasContent(this.radioOptions[1], this.ADDITIONAL_FIELD))))) {\n this.currentOrientation = this.RADIO_VERTICAL;\n }\n }\n };\n this.checkedValue = \"\";\n this.currentOrientation = undefined;\n this.initialOrientation = undefined;\n this.selectedChild = -1;\n this.disabled = false;\n this.helperText = undefined;\n this.hideLabel = false;\n this.label = undefined;\n this.name = undefined;\n this.orientation = \"vertical\";\n this.required = false;\n this.size = \"medium\";\n this.validationStatus = \"\";\n this.validationText = \"\";\n this.theme = \"inherit\";\n }\n watchDisabledHandler(newValue) {\n this.radioOptions.forEach((radioOption) => (radioOption.disabled = newValue));\n removeDisabledFalse(this.disabled, this.el);\n }\n orientationChangeHandler() {\n this.initialOrientation = this.orientation;\n this.checkOrientation();\n }\n watchThemeHandler(newValue) {\n this.radioOptions.forEach((radioOption) => (radioOption.theme = newValue));\n }\n disconnectedCallback() {\n var _a, _b;\n (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();\n (_b = this.radioContainer) === null || _b === void 0 ? void 0 : _b.removeEventListener(\"slotchange\", this.setRadioOptions);\n }\n componentWillLoad() {\n removeDisabledFalse(this.disabled, this.el);\n this.orientationChangeHandler();\n this.currentOrientation = this.initialOrientation;\n }\n componentDidLoad() {\n this.setRadioOptions();\n checkResizeObserver(this.runResizeObserver);\n this.addSlotChangeListener();\n onComponentRequiredPropUndefined([\n { prop: this.label, propName: \"label\" },\n { prop: this.name, propName: \"name\" },\n ], \"Radio Group\");\n this.watchThemeHandler(this.theme);\n }\n selectHandler({ detail, target }) {\n var _a;\n const selectedOption = target;\n if (selectedOption.parentElement === this.el) {\n this.checkedValue = detail.value;\n this.icChange.emit({\n value: this.checkedValue,\n selectedOption: {\n radio: selectedOption,\n textFieldValue: (_a = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.querySelector(\"ic-text-field\")) === null || _a === void 0 ? void 0 : _a.value,\n },\n });\n if (this.radioOptions !== undefined) {\n this.radioOptions.forEach((radioOption, index) => {\n radioOption.selected = selectedOption === radioOption;\n if (radioOption.selected) {\n this.selectedChild = index;\n }\n });\n this.setFirstRadioOptionTabIndex(this.selectedChild > 0 ? -1 : 0);\n }\n }\n }\n changeHandler() {\n var _a;\n const selectedOption = (_a = this.radioOptions) === null || _a === void 0 ? void 0 : _a.findIndex((radioOption) => radioOption.selected);\n if (selectedOption < 0) {\n this.setFirstRadioOptionTabIndex(0);\n this.selectedChild = selectedOption;\n }\n }\n checkOrientation() {\n var _a, _b;\n if (this.initialOrientation === this.RADIO_HORIZONTAL) {\n let totalWidth = 0;\n if (Array.isArray(this.radioOptions) && this.radioOptions.length > 0) {\n this.radioOptions.forEach(({ clientWidth }, i, arr) => {\n totalWidth += clientWidth;\n if (i < arr.length - 1)\n totalWidth += 40;\n });\n }\n else {\n totalWidth = 0;\n }\n if (this.initialOrientation == this.RADIO_HORIZONTAL) {\n if (this.radioOptions !== undefined &&\n (this.radioOptions.length > 2 ||\n (this.radioOptions.length === 2 &&\n (slotHasContent(this.radioOptions[0], this.ADDITIONAL_FIELD) ||\n slotHasContent(this.radioOptions[1], this.ADDITIONAL_FIELD))))) {\n this.currentOrientation = this.RADIO_VERTICAL;\n }\n else {\n if (totalWidth >= ((_a = this.radioContainer) === null || _a === void 0 ? void 0 : _a.clientWidth)) {\n this.currentOrientation = this.RADIO_VERTICAL;\n }\n else if (totalWidth < ((_b = this.radioContainer) === null || _b === void 0 ? void 0 : _b.clientWidth)) {\n this.currentOrientation = this.RADIO_HORIZONTAL;\n }\n }\n }\n }\n }\n render() {\n const { currentOrientation, disabled, handleKeyDown, helperText, hideLabel, label, required, size, validationStatus, validationText, theme, } = this;\n return (h(Host, { onKeyDown: handleKeyDown, class: {\n \"ic-radio-group-small\": size === \"small\",\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n } }, h(\"div\", { role: \"radiogroup\", \"aria-label\": `${label}${required ? \", required\" : \"\"}` }, !hideLabel && (h(\"ic-input-label\", { class: { [`${validationStatus}`]: true, [\"disabled\"]: disabled }, label: label, helperText: helperText, required: required, disabled: disabled })), h(\"div\", { class: {\n \"radio-buttons-container\": true,\n horizontal: currentOrientation === this.RADIO_HORIZONTAL,\n }, ref: (el) => (this.radioContainer = el) }, h(\"slot\", null))), hasValidationStatus(validationStatus, disabled) && (h(\"ic-input-validation\", { ariaLiveMode: \"polite\", status: validationStatus, message: validationText }))));\n }\n static get is() { return \"ic-radio-group\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-radio-group.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-radio-group.css\"]\n };\n }\n static get properties() {\n return {\n \"disabled\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the disabled state will be set.\"\n },\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"helperText\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The helper text that will be displayed for additional field guidance.\"\n },\n \"attribute\": \"helper-text\",\n \"reflect\": false\n },\n \"hideLabel\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the label will be hidden and the required label value will be applied as an aria-label.\"\n },\n \"attribute\": \"hide-label\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"label\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": true,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The label for the radio group to be displayed.\"\n },\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"name\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": true,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The name for the radio group to differentiate from other groups.\"\n },\n \"attribute\": \"name\",\n \"reflect\": false\n },\n \"orientation\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcOrientation\",\n \"resolved\": \"\\\"horizontal\\\" | \\\"vertical\\\"\",\n \"references\": {\n \"IcOrientation\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcOrientation\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The orientation of the radio buttons in the radio group. If there are more than two radio buttons in a radio group or either of the radio buttons use the `additional-field` slot, then the orientation will always be vertical.\"\n },\n \"attribute\": \"orientation\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"vertical\\\"\"\n },\n \"required\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the radio group will require a value.\"\n },\n \"attribute\": \"required\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSizesNoLarge\",\n \"resolved\": \"\\\"medium\\\" | \\\"small\\\"\",\n \"references\": {\n \"IcSizesNoLarge\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcSizesNoLarge\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the radio group component.\"\n },\n \"attribute\": \"size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"medium\\\"\"\n },\n \"validationStatus\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcInformationStatusOrEmpty\",\n \"resolved\": \"\\\"\\\" | \\\"error\\\" | \\\"success\\\" | \\\"warning\\\"\",\n \"references\": {\n \"IcInformationStatusOrEmpty\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcInformationStatusOrEmpty\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The validation status - e.g. 'error' | 'warning' | 'success'.\"\n },\n \"attribute\": \"validation-status\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"validationText\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The validation text - e.g. 'error' | 'warning' | 'success'.\"\n },\n \"attribute\": \"validation-text\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcThemeMode\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\"\",\n \"references\": {\n \"IcThemeMode\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeMode\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Sets the theme color to the dark or light theme color. \\\"inherit\\\" will set the color based on the system settings or ic-theme component.\"\n },\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n }\n };\n }\n static get states() {\n return {\n \"checkedValue\": {},\n \"currentOrientation\": {},\n \"initialOrientation\": {},\n \"selectedChild\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"icChange\",\n \"name\": \"icChange\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when a user selects a radio.\"\n },\n \"complexType\": {\n \"original\": \"IcChangeEventDetail\",\n \"resolved\": \"IcChangeEventDetail\",\n \"references\": {\n \"IcChangeEventDetail\": {\n \"location\": \"import\",\n \"path\": \"./ic-radio-group.types\",\n \"id\": \"src/components/ic-radio-group/ic-radio-group.types.ts::IcChangeEventDetail\"\n }\n }\n }\n }];\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"disabled\",\n \"methodName\": \"watchDisabledHandler\"\n }, {\n \"propName\": \"orientation\",\n \"methodName\": \"orientationChangeHandler\"\n }, {\n \"propName\": \"theme\",\n \"methodName\": \"watchThemeHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"icCheck\",\n \"method\": \"selectHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"icSelectedChange\",\n \"method\": \"changeHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-radio-group.js.map\n"],"mappings":"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"}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
import{r as t,c as e,h as i,H as s,g as r}from"./p-8455d1bb.js";import{r as o,i as c,o as l,a}from"./p-a04712b9.js";const n=`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M7 9.5L12 14.5L17 9.5H7Z" fill="currentColor"/>\n</svg>`;const h=':host{display:block;border:none;position:relative}:host .tree-item-content{display:flex;align-items:center;min-height:calc(var(--ic-space-xl) + var(--ic-space-xs));padding:0 var(--ic-space-xs);text-decoration:none;color:var(--ic-tree-view-text);--ic-typography-color:var(--ic-tree-view-text)}::slotted([slot="router-item"]){display:flex;align-items:center;min-height:calc(var(--ic-space-xl) + var(--ic-space-xs));text-decoration:none;font-family:var(--ic-font-body-family);color:var(--ic-tree-view-text);padding:0 var(--ic-space-xs) !important}:host(.ic-tree-item-truncate) .tree-item-content,:host(.ic-tree-item-truncate) ::slotted([slot="router-item"]){height:calc(var(--ic-space-xl) + var(--ic-space-xs))}::slotted([slot="router-item"].ic-tree-item-single){padding-left:calc(var(--ic-space-xl) + var(--ic-space-xs)) !important}:host .tree-item-content:focus,::slotted([slot="router-item"]:focus){box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);transition:var(--ic-transition-duration-fast);outline:none}:host(.ic-tree-item-focus-inset) .tree-item-content:focus,:host(.ic-tree-item-focus-inset) ::slotted([slot="router-item"]:focus){box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset)}:host(.ic-tree-item-focus-inset) .tree-item-content,:host(.ic-tree-item-focus-inset) ::slotted([slot="router-item"]){padding:0 var(--ic-space-sm)}:host .tree-item-content:hover,::slotted([slot="router-item"]:hover){background-color:var(--ic-tree-view-hover) !important;cursor:pointer}:host .tree-item-content:active,::slotted([slot="router-item"]:active){background-color:var(--ic-tree-view-pressed) !important}:host(.ic-tree-item-selected) .tree-item-content,:host(.ic-tree-item-selected) ::slotted([slot="router-item"]){background-color:var(--ic-tree-view-selected) !important}:host(.ic-tree-item-small) .tree-item-content,:host(.ic-tree-item-small) ::slotted([slot="router-item"]){min-height:var(--ic-space-xl)}:host(.ic-tree-item-large) .tree-item-content,:host(.ic-tree-item-large) ::slotted([slot="router-item"]){min-height:var(--ic-space-xxl)}:host(.ic-tree-item-truncate.ic-tree-item-small) .tree-item-content,:host(.ic-tree-item-truncate.ic-tree-item-small) ::slotted([slot="router-item"]){height:var(--ic-space-xl)}:host(.ic-tree-item-truncate.ic-tree-item-large) .tree-item-content,:host(.ic-tree-item-truncate.ic-tree-item-large) ::slotted([slot="router-item"]){height:var(--ic-space-xxl)}:host(.ic-tree-item-disabled){pointer-events:none}:host(.ic-tree-item-disabled) .tree-item-content,:host(.ic-tree-item-disabled) ::slotted([slot="icon"]),:host(.ic-tree-item-disabled) ::slotted([slot="router-item"]){color:var(--ic-tree-view-text-disabled) !important;--ic-typography-color:var(--ic-tree-view-text-disabled) !important;fill:var(--ic-tree-view-icon-disabled);pointer-events:none}:host .arrow-dropdown{color:var(--ic-tree-view-dropdown-arrow);margin-right:var(--ic-space-xs)}:host(.ic-tree-item-disabled) .arrow-dropdown{color:var(--ic-tree-view-dropdown-arrow-disabled)}:host(.ic-tree-item-small) .arrow-dropdown{margin-right:var(--ic-space-xxs)}:host .tree-item-expanded{transform:rotate(180deg);margin-top:calc(-1 * var(--ic-space-xxs))}:host .ic-tree-item-single{padding-left:calc(var(--ic-space-xl) + var(--ic-space-xs))}:host(.ic-tree-item-small) .ic-tree-item-single{padding-left:calc(var(--ic-space-xl) + var(--ic-space-xxs))}.icon-container{min-width:var(--ic-space-lg);width:var(--ic-space-lg);height:var(--ic-space-lg);margin:0 var(--ic-space-xs) 0 0}:host(.ic-tree-item-small) .icon-container{margin:0 var(--ic-space-xxs) 0 0}.ic-text-overflow{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ic-tooltip-overflow{overflow:hidden}::slotted([slot="icon"]){fill:var(--ic-tree-view-icon)}@media (forced-colors: active){::slotted([slot="icon"]){fill:currentcolor}:host .tree-item-content:hover,::slotted([slot="router-item"]:hover),:host .tree-item-content:active,::slotted([slot="router-item"]:active),:host(.ic-tree-item-selected) .tree-item-content,:host(.ic-tree-item-selected) ::slotted([slot="router-item"]){background-color:none !important}:host(.ic-tree-item-disabled) .tree-item-content,:host(.ic-tree-item-disabled) .arrow-dropdown,:host(.ic-tree-item-disabled) ::slotted([slot="icon"]),:host(.ic-tree-item-disabled) ::slotted([slot="router-item"]){color:GrayText !important;--ic-typography-color:GrayText !important;fill:GrayText !important}:host .tree-item-content:focus,::slotted([slot="router-item"]:focus){border:var(--ic-border-hc) !important}:host(.ic-tree-item-selected) .tree-item-content,:host(.ic-tree-item-selected) ::slotted([slot="router-item"]){color:Highlight !important;--ic-typography-color:Highlight !important}}';let d=0;const m=class{constructor(i){t(this,i);this.icTreeItemSelected=e(this,"icTreeItemSelected",7);this.treeItemId=`ic-tree-item-${d++}`;this.treeItemTag="IC-TREE-ITEM";this.hostMutationObserver=null;this.TOOLTIP="ic-tooltip";this.TREE_ITEM_LABEL_CLASS_SELECTOR=".tree-item-label";this.handleTreeItemClicked=()=>{if(this.isParent){this.expanded=!this.expanded;this.hasParentExpanded=true}this.updateAriaLabel();this.selected=true;this.watchSelectedHandler()};this.setTreeItemPadding=()=>{let t=1;let e=this.el.parentElement;const i=this.el.shadowRoot.querySelector(".tree-item-content");const s=Array.from(e.children).map((t=>{if(t!==this.el&&!t.querySelector('[slot="router-item"]')&&!t.querySelector('[slot="label"]')){return t.children.length>0}else{return false}})).includes(true);const r=e.tagName===this.treeItemTag;const o=this.hasRouterSlot();if(s&&!this.el.isParent||r&&!this.el.isParent){if(o){this.routerSlot.classList.add("ic-tree-item-single")}else{i.classList.add("ic-tree-item-single")}}while(e){if(e.tagName===this.treeItemTag){t++;if(!this.el.isParent&&s){i.style.paddingLeft=`calc(var(--ic-space-xl) + ${t*16}px)`}else if(!this.el.isParent){i.style.paddingLeft=`calc(var(--ic-space-xs) + ${t*24}px`}else{i.style.paddingLeft=`${t*16}px`}}e=e.parentElement}};this.truncateTreeItemLabel=t=>{let e=t.shadowRoot.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR);const i=t.querySelector("[slot='router-item']");let s=i===null||i===void 0?void 0:i.scrollHeight;if(!e){const t=document.createElement("ic-typography");t.innerHTML=i.textContent;t.classList.add("tree-item-label");i.replaceChild(t,i.firstChild);e=t}else{s=e.scrollHeight}const r=!!(e===null||e===void 0?void 0:e.closest(this.TOOLTIP));const o=t.shadowRoot.querySelector(".tree-item-content")||i;if(s>(o===null||o===void 0?void 0:o.clientHeight)&&!r){const t=document.createElement("ic-tooltip");t.setAttribute("target",this.el.id);t.setAttribute("label",e.textContent);t.setAttribute("placement","right");if(o===i){o.addEventListener("focus",(()=>this.handleDisplayTooltip(true)));o.addEventListener("blur",(()=>this.handleDisplayTooltip(false)));t.setAttribute("style","overflow:hidden;");e.setAttribute("style","overflow:hidden;text-overflow:ellipsis;white-space:nowrap;")}else{t.classList.add("ic-tooltip-overflow");e.classList.add("ic-text-overflow")}o.appendChild(t);t.appendChild(e)}};this.handleDisplayTooltip=t=>{const e=this.el.shadowRoot.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR)||this.el.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR);const i=e===null||e===void 0?void 0:e.closest(this.TOOLTIP);i===null||i===void 0?void 0:i.displayTooltip(t)};this.childTreeItems=undefined;this.disabled=false;this.expanded=false;this.focusInset=false;this.hasParentExpanded=false;this.href=undefined;this.hreflang="";this.isParent=false;this.label="";this.referrerpolicy=undefined;this.rel=undefined;this.selected=false;this.size="medium";this.target=undefined;this.theme="inherit";this.truncateTreeItem=undefined}watchDisabledHandler(){o(this.disabled,this.el)}watchSelectedHandler(){if(this.selected){this.icTreeItemSelected.emit({id:this.el.id})}this.updateAriaLabel()}disconnectedCallback(){var t;(t=this.hostMutationObserver)===null||t===void 0?void 0:t.disconnect()}componentWillLoad(){o(this.disabled,this.el);this.childTreeItems=Array.from(this.el.children).filter((t=>t.tagName===this.treeItemTag));if(this.childTreeItems.length>0){this.isParent=true}}componentDidLoad(){this.setTreeItemPadding();this.updateAriaLabel();!c(this.el,"label")&&l([{prop:this.label,propName:"label"}],"Tree item");this.hostMutationObserver=new MutationObserver((t=>a(t,"icon",this)));this.hostMutationObserver.observe(this.el,{childList:true})}componentDidRender(){this.truncateTreeItem&&this.truncateTreeItemLabel(this.el);if(this.expanded){this.childTreeItems.forEach((t=>{t.truncateTreeItem&&this.truncateTreeItemLabel(t)}))}}componentDidUpdate(){if(this.hasParentExpanded){this.childTreeItems.forEach((t=>{t.truncateTreeItem&&this.truncateTreeItemLabel(t)}));this.hasParentExpanded=false}}handleKeyDown(t){if(t.key==="Enter"||t.key===" "){t.stopImmediatePropagation();this.handleTreeItemClicked()}}async setFocus(){var t,e;if(this.hasRouterSlot()){(t=this.routerSlot)===null||t===void 0?void 0:t.focus()}else{(e=this.treeItemElement)===null||e===void 0?void 0:e.focus()}}async updateAriaLabel(){let t;if(this.hasRouterSlot()){t=this.routerSlot.textContent}else if(c(this.el,"label")){t=this.el.querySelector('[slot="label"]').textContent}else{t=this.label}if(this.isParent){t=`${t}, triggers submenu, ${this.expanded?"expanded":"collapsed"}`}if(this.el.parentElement){const e=Array.from(this.el.parentElement.children).filter((t=>t.tagName===this.treeItemTag));const i=e.indexOf(this.el)+1;const s=e.length;t=`${t}, ${i} of ${s}`}if(this.selected){t=`${t}, active`}if(this.disabled){t=`${t}, dimmed`}if(this.hasRouterSlot()){this.routerSlot.ariaLabel=t}else{this.treeItemElement.ariaLabel=t}}hasRouterSlot(){this.routerSlot=this.el.querySelector('[slot="router-item"]');return!!this.routerSlot}render(){const{disabled:t,label:e,selected:r,size:o,expanded:l,focusInset:a,theme:h}=this;const d=this.href&&!this.disabled?"a":"div";const m=d=="a"&&{href:this.href,hrefLang:this.hreflang,referrerPolicy:this.referrerpolicy,rel:this.rel,target:this.target};return i(s,{class:{"ic-tree-item-disabled":t,"ic-tree-item-selected":!t&&r,[`ic-tree-item-${o}`]:o!=="medium",[`ic-tree-item-focus-inset`]:a,[`ic-theme-${h}`]:h!=="inherit","ic-tree-item-truncate":this.truncateTreeItem},id:this.treeItemId},this.hasRouterSlot()?i("slot",{name:"router-item"}):i(d,Object.assign({class:{"tree-item-content":true},tabIndex:t?-1:0,onClick:this.handleTreeItemClicked,ref:t=>this.treeItemElement=t,"aria-disabled":t?"true":"false","aria-live":"polite"},m,{onFocus:()=>this.handleDisplayTooltip(true),onBlur:()=>this.handleDisplayTooltip(false)}),this.isParent&&i("span",{class:{["arrow-dropdown"]:true,["tree-item-expanded"]:l},"aria-hidden":"true",innerHTML:n}),c(this.el,"icon")&&i("div",{class:"icon-container"},i("slot",{name:"icon"})),i("ic-typography",{class:"tree-item-label"},c(this.el,"label")?i("slot",{name:"label"}):e)),l&&i("div",{"aria-hidden":`${!l}`},i("slot",null)))}get el(){return r(this)}static get watchers(){return{disabled:["watchDisabledHandler"],selected:["watchSelectedHandler"]}}};m.style=h;export{m as ic_tree_item};
|
2
|
+
//# sourceMappingURL=p-04bd65fb.entry.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["icTreeItemCss","treeItemIds","TreeItem","this","treeItemId","treeItemTag","hostMutationObserver","TOOLTIP","TREE_ITEM_LABEL_CLASS_SELECTOR","handleTreeItemClicked","isParent","expanded","hasParentExpanded","updateAriaLabel","selected","watchSelectedHandler","setTreeItemPadding","level","parentElement","el","treeItemContent","shadowRoot","querySelector","isSiblingOfParent","Array","from","children","map","sibling","length","includes","isChild","tagName","isRouterItem","hasRouterSlot","routerSlot","classList","add","style","paddingLeft","truncateTreeItemLabel","treeItem","typographyEl","slottedContent","contentHeight","scrollHeight","newTypographyEl","document","createElement","innerHTML","textContent","replaceChild","firstChild","tooltipAlreadyExists","closest","treeContent","clientHeight","tooltipEl","setAttribute","id","addEventListener","handleDisplayTooltip","appendChild","display","tooltip","displayTooltip","watchDisabledHandler","removeDisabledFalse","disabled","icTreeItemSelected","emit","disconnectedCallback","_a","disconnect","componentWillLoad","childTreeItems","filter","child","componentDidLoad","isSlotUsed","onComponentRequiredPropUndefined","prop","label","propName","MutationObserver","mutationList","renderDynamicChildSlots","observe","childList","componentDidRender","truncateTreeItem","forEach","componentDidUpdate","handleKeyDown","ev","key","stopImmediatePropagation","setFocus","focus","_b","treeItemElement","ariaLabel","treeItems","index","indexOf","parentChildren","render","size","focusInset","theme","Component","href","attrs","hrefLang","hreflang","referrerPolicy","referrerpolicy","rel","target","h","Host","class","name","Object","assign","tabIndex","onClick","ref","onFocus","onBlur","arrowDropdown"],"sources":["src/components/ic-tree-item/ic-tree-item.css?tag=ic-tree-item&encapsulation=shadow","src/components/ic-tree-item/ic-tree-item.tsx"],"sourcesContent":[":host {\n display: block;\n border: none;\n position: relative;\n}\n\n:host .tree-item-content {\n display: flex;\n align-items: center;\n min-height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n padding: 0 var(--ic-space-xs);\n text-decoration: none;\n color: var(--ic-tree-view-text);\n\n --ic-typography-color: var(--ic-tree-view-text);\n}\n\n::slotted([slot=\"router-item\"]) {\n display: flex;\n align-items: center;\n min-height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n text-decoration: none;\n font-family: var(--ic-font-body-family);\n color: var(--ic-tree-view-text);\n padding: 0 var(--ic-space-xs) !important;\n}\n\n:host(.ic-tree-item-truncate) .tree-item-content,\n:host(.ic-tree-item-truncate) ::slotted([slot=\"router-item\"]) {\n height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n::slotted([slot=\"router-item\"].ic-tree-item-single) {\n padding-left: calc(var(--ic-space-xl) + var(--ic-space-xs)) !important;\n}\n\n:host .tree-item-content:focus,\n::slotted([slot=\"router-item\"]:focus) {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n transition: var(--ic-transition-duration-fast);\n outline: none;\n}\n\n:host(.ic-tree-item-focus-inset) .tree-item-content:focus,\n:host(.ic-tree-item-focus-inset) ::slotted([slot=\"router-item\"]:focus) {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n}\n\n:host(.ic-tree-item-focus-inset) .tree-item-content,\n:host(.ic-tree-item-focus-inset) ::slotted([slot=\"router-item\"]) {\n padding: 0 var(--ic-space-sm);\n}\n\n:host .tree-item-content:hover,\n::slotted([slot=\"router-item\"]:hover) {\n background-color: var(--ic-tree-view-hover) !important;\n cursor: pointer;\n}\n\n:host .tree-item-content:active,\n::slotted([slot=\"router-item\"]:active) {\n background-color: var(--ic-tree-view-pressed) !important;\n}\n\n:host(.ic-tree-item-selected) .tree-item-content,\n:host(.ic-tree-item-selected) ::slotted([slot=\"router-item\"]) {\n background-color: var(--ic-tree-view-selected) !important;\n}\n\n:host(.ic-tree-item-small) .tree-item-content,\n:host(.ic-tree-item-small) ::slotted([slot=\"router-item\"]) {\n min-height: var(--ic-space-xl);\n}\n\n:host(.ic-tree-item-large) .tree-item-content,\n:host(.ic-tree-item-large) ::slotted([slot=\"router-item\"]) {\n min-height: var(--ic-space-xxl);\n}\n\n:host(.ic-tree-item-truncate.ic-tree-item-small) .tree-item-content,\n:host(.ic-tree-item-truncate.ic-tree-item-small)\n ::slotted([slot=\"router-item\"]) {\n height: var(--ic-space-xl);\n}\n\n:host(.ic-tree-item-truncate.ic-tree-item-large) .tree-item-content,\n:host(.ic-tree-item-truncate.ic-tree-item-large)\n ::slotted([slot=\"router-item\"]) {\n height: var(--ic-space-xxl);\n}\n\n:host(.ic-tree-item-disabled) {\n pointer-events: none;\n}\n\n:host(.ic-tree-item-disabled) .tree-item-content,\n:host(.ic-tree-item-disabled) ::slotted([slot=\"icon\"]),\n:host(.ic-tree-item-disabled) ::slotted([slot=\"router-item\"]) {\n color: var(--ic-tree-view-text-disabled) !important;\n\n --ic-typography-color: var(--ic-tree-view-text-disabled) !important;\n\n fill: var(--ic-tree-view-icon-disabled);\n pointer-events: none;\n}\n\n:host .arrow-dropdown {\n color: var(--ic-tree-view-dropdown-arrow);\n margin-right: var(--ic-space-xs);\n}\n\n:host(.ic-tree-item-disabled) .arrow-dropdown {\n color: var(--ic-tree-view-dropdown-arrow-disabled);\n}\n\n:host(.ic-tree-item-small) .arrow-dropdown {\n margin-right: var(--ic-space-xxs);\n}\n\n:host .tree-item-expanded {\n transform: rotate(180deg);\n margin-top: calc(-1 * var(--ic-space-xxs));\n}\n\n:host .ic-tree-item-single {\n padding-left: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n:host(.ic-tree-item-small) .ic-tree-item-single {\n padding-left: calc(var(--ic-space-xl) + var(--ic-space-xxs));\n}\n\n.icon-container {\n min-width: var(--ic-space-lg);\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n margin: 0 var(--ic-space-xs) 0 0;\n}\n\n:host(.ic-tree-item-small) .icon-container {\n margin: 0 var(--ic-space-xxs) 0 0;\n}\n\n.ic-text-overflow {\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.ic-tooltip-overflow {\n overflow: hidden;\n}\n\n::slotted([slot=\"icon\"]) {\n fill: var(--ic-tree-view-icon);\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n ::slotted([slot=\"icon\"]) {\n fill: currentcolor;\n }\n\n :host .tree-item-content:hover,\n ::slotted([slot=\"router-item\"]:hover),\n :host .tree-item-content:active,\n ::slotted([slot=\"router-item\"]:active),\n :host(.ic-tree-item-selected) .tree-item-content,\n :host(.ic-tree-item-selected) ::slotted([slot=\"router-item\"]) {\n background-color: none !important;\n }\n\n :host(.ic-tree-item-disabled) .tree-item-content,\n :host(.ic-tree-item-disabled) .arrow-dropdown,\n :host(.ic-tree-item-disabled) ::slotted([slot=\"icon\"]),\n :host(.ic-tree-item-disabled) ::slotted([slot=\"router-item\"]) {\n color: GrayText !important;\n\n --ic-typography-color: GrayText !important;\n\n fill: GrayText !important;\n }\n\n :host .tree-item-content:focus,\n ::slotted([slot=\"router-item\"]:focus) {\n border: var(--ic-border-hc) !important;\n }\n\n :host(.ic-tree-item-selected) .tree-item-content,\n :host(.ic-tree-item-selected) ::slotted([slot=\"router-item\"]) {\n color: Highlight !important;\n\n --ic-typography-color: Highlight !important;\n }\n}\n","import {\n Component,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n Host,\n Watch,\n State,\n Listen,\n Method,\n} from \"@stencil/core\";\nimport { IcSizes, IcThemeMode } from \"../../utils/types\";\nimport {\n isSlotUsed,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\nimport arrowDropdown from \"../../assets/arrow-dropdown.svg\";\n\nlet treeItemIds = 0;\n\n/**\n * @slot label - Content is set as the tree item label.\n * @slot icon - Content is placed to the left of the label.\n * @slot router-item - Handle routing by nesting your routes in this slot.\n */\n@Component({\n tag: \"ic-tree-item\",\n styleUrl: \"ic-tree-item.css\",\n shadow: true,\n})\nexport class TreeItem {\n private treeItemId = `ic-tree-item-${treeItemIds++}`;\n private treeItemElement: HTMLElement;\n private treeItemTag = \"IC-TREE-ITEM\";\n private routerSlot: HTMLElement;\n private hostMutationObserver: MutationObserver = null;\n private TOOLTIP = \"ic-tooltip\";\n private TREE_ITEM_LABEL_CLASS_SELECTOR = \".tree-item-label\";\n\n @Element() el: HTMLIcTreeItemElement;\n\n @State() childTreeItems: HTMLIcTreeItemElement[];\n\n /**\n * If `true`, the tree item appears in the disabled state.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the tree item appears in the expanded state.\n */\n @Prop({ mutable: true }) expanded: boolean = false;\n\n /**\n * @internal If `true`, the tree item will have an inset focus border.\n */\n @Prop() focusInset?: boolean = false;\n\n /**\n * @internal Determines if the parent tree item has been expanded.\n */\n @Prop({ mutable: true }) hasParentExpanded: boolean = false;\n\n /**\n * The URL that the tree item link points to. If set, the tree item will render as an \"a\" tag, otherwise it will render as a div.\n */\n @Prop() href?: string | undefined;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string = \"\";\n\n /**\n * @internal If `true`, the tree item is a parent of other tree items.\n */\n @Prop({ mutable: true }) isParent: boolean = false;\n\n /**\n * The label of the tree item.\n */\n @Prop() label: string = \"\";\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * If `true`, the tree item appears in the selected state.\n */\n @Prop({ mutable: true }) selected: boolean = false;\n @Watch(\"selected\")\n watchSelectedHandler(): void {\n if (this.selected) {\n this.icTreeItemSelected.emit({ id: this.el.id });\n }\n this.updateAriaLabel();\n }\n\n /**\n * @internal Determines the size of the tree item.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * If `true`, the tree item label will be truncated instead of text wrapping.\n */\n @Prop() truncateTreeItem?: boolean;\n\n /**\n * Emitted when tree item is selected.\n */\n @Event() icTreeItemSelected: EventEmitter<{ id: string }>;\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n\n this.childTreeItems = Array.from((this.el as HTMLElement).children).filter(\n (child) => child.tagName === this.treeItemTag\n ) as HTMLIcTreeItemElement[];\n\n if (this.childTreeItems.length > 0) {\n this.isParent = true;\n }\n }\n\n componentDidLoad(): void {\n this.setTreeItemPadding();\n\n this.updateAriaLabel();\n\n !isSlotUsed(this.el, \"label\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Tree item\"\n );\n\n this.hostMutationObserver = new MutationObserver((mutationList) =>\n renderDynamicChildSlots(mutationList, \"icon\", this)\n );\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n componentDidRender(): void {\n this.truncateTreeItem && this.truncateTreeItemLabel(this.el);\n if (this.expanded) {\n this.childTreeItems.forEach((child: HTMLIcTreeItemElement) => {\n child.truncateTreeItem && this.truncateTreeItemLabel(child);\n });\n }\n }\n\n componentDidUpdate(): void {\n if (this.hasParentExpanded) {\n this.childTreeItems.forEach((child: HTMLIcTreeItemElement) => {\n child.truncateTreeItem && this.truncateTreeItemLabel(child);\n });\n this.hasParentExpanded = false;\n }\n }\n\n @Listen(\"keydown\", {})\n handleKeyDown(ev: KeyboardEvent): void {\n if (ev.key === \"Enter\" || ev.key === \" \") {\n ev.stopImmediatePropagation();\n this.handleTreeItemClicked();\n }\n }\n\n /**\n * Sets focus on the native `input`.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.hasRouterSlot()) {\n this.routerSlot?.focus();\n } else {\n this.treeItemElement?.focus();\n }\n }\n\n private handleTreeItemClicked = (): void => {\n if (this.isParent) {\n this.expanded = !this.expanded;\n this.hasParentExpanded = true;\n }\n\n this.updateAriaLabel();\n this.selected = true;\n this.watchSelectedHandler();\n };\n\n /**\n * @internal Updates the aria-label of the tree item.\n */\n @Method()\n async updateAriaLabel(): Promise<void> {\n let ariaLabel;\n\n if (this.hasRouterSlot()) {\n ariaLabel = this.routerSlot.textContent;\n } else if (isSlotUsed(this.el, \"label\")) {\n ariaLabel = this.el.querySelector('[slot=\"label\"]').textContent;\n } else {\n ariaLabel = this.label;\n }\n\n if (this.isParent) {\n ariaLabel = `${ariaLabel}, triggers submenu, ${\n this.expanded ? \"expanded\" : \"collapsed\"\n }`;\n }\n\n if (this.el.parentElement) {\n const treeItems = Array.from(\n (this.el.parentElement as HTMLElement).children\n ).filter(\n (child) => child.tagName === this.treeItemTag\n ) as HTMLIcTreeItemElement[];\n\n const index = treeItems.indexOf(this.el) + 1;\n const parentChildren = treeItems.length;\n\n ariaLabel = `${ariaLabel}, ${index} of ${parentChildren}`;\n }\n\n if (this.selected) {\n ariaLabel = `${ariaLabel}, active`;\n }\n\n if (this.disabled) {\n ariaLabel = `${ariaLabel}, dimmed`;\n }\n\n if (this.hasRouterSlot()) {\n this.routerSlot.ariaLabel = ariaLabel;\n } else {\n this.treeItemElement.ariaLabel = ariaLabel;\n }\n }\n\n private setTreeItemPadding = () => {\n let level = 1;\n let parentElement = this.el.parentElement;\n const treeItemContent = this.el.shadowRoot.querySelector(\n \".tree-item-content\"\n ) as HTMLElement;\n\n const isSiblingOfParent = Array.from(parentElement.children)\n .map((sibling) => {\n if (\n sibling !== this.el &&\n !sibling.querySelector('[slot=\"router-item\"]') &&\n !sibling.querySelector('[slot=\"label\"]')\n ) {\n return sibling.children.length > 0;\n } else {\n return false;\n }\n })\n .includes(true);\n\n const isChild = parentElement.tagName === this.treeItemTag;\n\n const isRouterItem = this.hasRouterSlot();\n\n if (\n (isSiblingOfParent && !this.el.isParent) ||\n (isChild && !this.el.isParent)\n ) {\n if (isRouterItem) {\n this.routerSlot.classList.add(\"ic-tree-item-single\");\n } else {\n treeItemContent.classList.add(\"ic-tree-item-single\");\n }\n }\n\n while (parentElement) {\n if (parentElement.tagName === this.treeItemTag) {\n level++;\n if (!this.el.isParent && isSiblingOfParent) {\n treeItemContent.style.paddingLeft = `calc(var(--ic-space-xl) + ${\n level * 16\n }px)`;\n } else if (!this.el.isParent) {\n treeItemContent.style.paddingLeft = `calc(var(--ic-space-xs) + ${\n level * 24\n }px`;\n } else {\n treeItemContent.style.paddingLeft = `${level * 16}px`;\n }\n }\n parentElement = parentElement.parentElement;\n }\n };\n\n private truncateTreeItemLabel = (treeItem: HTMLIcTreeItemElement) => {\n let typographyEl: HTMLIcTypographyElement =\n treeItem.shadowRoot.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR);\n const slottedContent = treeItem.querySelector(\"[slot='router-item']\");\n let contentHeight = slottedContent?.scrollHeight;\n\n if (!typographyEl) {\n const newTypographyEl = document.createElement(\"ic-typography\");\n newTypographyEl.innerHTML = slottedContent.textContent;\n newTypographyEl.classList.add(\"tree-item-label\");\n slottedContent.replaceChild(newTypographyEl, slottedContent.firstChild);\n typographyEl = newTypographyEl;\n } else {\n contentHeight = typographyEl.scrollHeight;\n }\n\n const tooltipAlreadyExists = !!typographyEl?.closest(this.TOOLTIP);\n const treeContent =\n treeItem.shadowRoot.querySelector(\".tree-item-content\") || slottedContent;\n\n if (contentHeight > treeContent?.clientHeight && !tooltipAlreadyExists) {\n const tooltipEl = document.createElement(\"ic-tooltip\");\n tooltipEl.setAttribute(\"target\", this.el.id);\n tooltipEl.setAttribute(\"label\", typographyEl.textContent);\n tooltipEl.setAttribute(\"placement\", \"right\");\n\n if (treeContent === slottedContent) {\n treeContent.addEventListener(\"focus\", () =>\n this.handleDisplayTooltip(true)\n );\n treeContent.addEventListener(\"blur\", () =>\n this.handleDisplayTooltip(false)\n );\n tooltipEl.setAttribute(\"style\", \"overflow:hidden;\");\n typographyEl.setAttribute(\n \"style\",\n \"overflow:hidden;text-overflow:ellipsis;white-space:nowrap;\"\n );\n } else {\n tooltipEl.classList.add(\"ic-tooltip-overflow\");\n typographyEl.classList.add(\"ic-text-overflow\");\n }\n\n treeContent.appendChild(tooltipEl);\n tooltipEl.appendChild(typographyEl);\n }\n };\n\n private hasRouterSlot(): boolean {\n this.routerSlot = this.el.querySelector('[slot=\"router-item\"]');\n return !!this.routerSlot;\n }\n\n private handleDisplayTooltip = (display: boolean) => {\n const typographyEl: HTMLIcTypographyElement =\n this.el.shadowRoot.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR) ||\n this.el.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR);\n const tooltip: HTMLIcTooltipElement = typographyEl?.closest(this.TOOLTIP);\n\n tooltip?.displayTooltip(display);\n };\n\n render() {\n const { disabled, label, selected, size, expanded, focusInset, theme } =\n this;\n\n const Component = this.href && !this.disabled ? \"a\" : \"div\";\n\n const attrs = Component == \"a\" && {\n href: this.href,\n hrefLang: this.hreflang,\n referrerPolicy: this.referrerpolicy,\n rel: this.rel,\n target: this.target,\n };\n\n return (\n <Host\n class={{\n \"ic-tree-item-disabled\": disabled,\n \"ic-tree-item-selected\": !disabled && selected,\n [`ic-tree-item-${size}`]: size !== \"medium\",\n [`ic-tree-item-focus-inset`]: focusInset,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n \"ic-tree-item-truncate\": this.truncateTreeItem,\n }}\n id={this.treeItemId}\n >\n {this.hasRouterSlot() ? (\n <slot name=\"router-item\" />\n ) : (\n <Component\n class={{\n \"tree-item-content\": true,\n }}\n tabIndex={disabled ? -1 : 0}\n onClick={this.handleTreeItemClicked}\n ref={(el) => (this.treeItemElement = el)}\n aria-disabled={disabled ? \"true\" : \"false\"}\n aria-live=\"polite\"\n {...attrs}\n onFocus={() => this.handleDisplayTooltip(true)}\n onBlur={() => this.handleDisplayTooltip(false)}\n >\n {this.isParent && (\n <span\n class={{\n [\"arrow-dropdown\"]: true,\n [\"tree-item-expanded\"]: expanded,\n }}\n aria-hidden=\"true\"\n innerHTML={arrowDropdown}\n />\n )}\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon-container\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography class=\"tree-item-label\">\n {isSlotUsed(this.el, \"label\") ? <slot name=\"label\" /> : label}\n </ic-typography>\n </Component>\n )}\n {expanded && (\n <div aria-hidden={`${!expanded}`}>\n <slot />\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{r as e,c as t,h as i,H as o,g as n}from"./p-8455d1bb.js";import{d as s,r,b as a,i as c}from"./p-897fac99.js";import{C as u}from"./p-0aa9ce8b.js";import{C as l}from"./p-170ddfc2.js";const d='/*! 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}li{list-style:none;padding:0}:host ::part(button){color:var(--ic-popover-menu-item-check);padding:calc(var(--ic-space-xxxs) / 2);display:flex;align-items:flex-start;gap:var(--ic-space-xs);border-radius:0;min-height:2.5rem;height:auto}.focus-border{display:flex;align-items:flex-start;gap:var(--ic-space-xs);border-radius:var(--ic-border-radius);margin:calc(var(--ic-space-xxxs) / 2);padding:var(--ic-space-xxs);border:var(--ic-space-xxxs) dashed transparent;--icon-height:auto}:host(.ic-menu-item-disabled) ::part(button){color:var(--ic-popover-menu-item-check-disabled) !important;--ic-typography-color:var(--ic-popover-menu-item-check-disabled) !important;pointer-events:none}:host(.ic-menu-item-disabled) .menu-item-label,:host(.ic-menu-item-disabled) .shortcut,:host(.ic-menu-item-disabled) .menu-item-description{--ic-typography-color:var(--ic-popover-menu-item-label-disabled) !important}:host([variant="destructive"]) ::part(button){color:var(--ic-popover-menu-destructive-item-icon);--ic-typography-color:var(--ic-popover-menu-destructive-item-label)}:host ::part(button):hover{background-color:var(--ic-popover-background-hover)}:host ::part(button):focus-visible,:host ::part(button):focus{color:var(--ic-popover-menu-item-icon-focused);--ic-typography-color:purple;background-color:var(--ic-popover-background-focus);box-shadow:none}:host(.ic-menu-item-disabled) ::part(button):focus-visible,:host(.ic-menu-item-disabled) ::part(button):focus{color:var(--ic-popover-menu-item-icon-disabled) !important;--ic-typography-color:orange !important}:host([variant="destructive"]) ::part(button):focus-visible,:host([variant="destructive"]) ::part(button):focus{background-color:var(--ic-popover-destructive-background-focus)}ic-button:focus-within .menu-item-label,ic-button:focus-within .shortcut,ic-button:focus-within .menu-item-description{--ic-typography-color:var(--ic-popover-menu-item-label-focused)}:host(.ic-menu-item-disabled) ic-button:focus-within .focus-border{border-color:var(--ic-popover-menu-border)}:host(.ic-menu-item-disabled) ic-button:focus-within .menu-item-label,:host(.ic-menu-item-disabled) ic-button:focus-within .shortcut,:host(.ic-menu-item-disabled) ic-button:focus-within .menu-item-description{--ic-typography-color:var(--ic-popover-menu-item-label-disabled) !important}:host ::part(button):active{background-color:var(--ic-popover-background-pressed);color:var(--ic-popover-menu-item-label) !important;--ic-typography-color:var(--ic-popover-menu-item-label) !important}:host([variant="destructive"]) ::part(button):active{background-color:var(--ic-popover-background-pressed);color:var(--ic-popover-menu-destructive-item-label) !important;--ic-typography-color:var(\n --ic-popover-menu-destructive-item-label\n ) !important}.menu-item-info{display:flex;flex-direction:column;flex:1;align-items:baseline;white-space:pre-line;text-align:left}.menu-labels{display:flex;align-items:baseline;gap:var(--ic-space-xs)}.menu-item-description{--ic-typography-color:var(--ic-popover-menu-item-description)}.shortcut{--ic-typography-color:var(--ic-popover-menu-item-shortcut);display:flex;flex:min-content}:host([variant="destructive"]) .menu-item-label{text-transform:uppercase;font-weight:600;letter-spacing:0.025em}ic-button:active .menu-item-label{--ic-typography-color:var(--ic-popover-menu-item-label)}ic-button:active .menu-item-description{--ic-typography-color:var(--ic-popover-menu-item-description)}ic-button:active .shortcut{--ic-typography-color:var(--ic-popover-menu-item-shortcut)}:host([variant="destructive"]) ic-button:active .menu-item-label{--ic-typography-color:var(\n --ic-popover-menu-destructive-item-label\n ) !important}.icon,.check-icon,.submenu-icon,.icon ::slotted(svg),.check-icon svg,.submenu-icon svg{width:var(--ic-space-lg);height:var(--ic-space-lg)}.check-icon.hide{visibility:hidden}@media (forced-colors: active){:host ::part(button){border:canvas}:host ::part(button):focus-visible{outline:var(--ic-space-xxxs) solid transparent}.focus-border{border-color:canvas}:host(.ic-menu-item-disabled) ic-button:focus-within .focus-border{border-color:GrayText}:host(.ic-menu-item-disabled) .menu-item-info,:host(.ic-menu-item-disabled) .menu-item-label,:host(.ic-menu-item-disabled) .shortcut,:host(.ic-menu-item-disabled) .menu-item-description,:host(.ic-menu-item-disabled) ic-button:focus-within .menu-item-info,:host(.ic-menu-item-disabled) ic-button:focus-within .menu-item-label,:host(.ic-menu-item-disabled) ic-button:focus-within .shortcut,:host(.ic-menu-item-disabled) ic-button:focus-within .menu-item-description{--ic-typography-color:GrayText !important}:host(.ic-menu-item-disabled) ::part(button):focus-visible,:host(.ic-menu-item-disabled) ::part(button):focus{outline-color:GrayText !important}}';const p=class{constructor(i){e(this,i);this.childBlur=t(this,"childBlur",7);this.handleMenuItemClick=t(this,"handleMenuItemClick",7);this.icToggleChecked=t(this,"icToggleChecked",7);this.triggerPopoverMenuInstance=t(this,"triggerPopoverMenuInstance",7);this.handleClick=e=>{if(s(this.submenuTriggerFor)){this.triggerPopoverMenuInstance.emit()}else if(this.variant==="toggle"){e.preventDefault();this.checked=!this.checked;this.icToggleChecked.emit({checked:this.checked})}this.handleMenuItemClick.emit(this.el)};this.getMenuItemAriaLabel=()=>{let e=this.label;if(s(this.description)){e=`${e}, ${this.description}`}if(s(this.keyboardShortcutLabel)){e=`${e}, ${this.keyboardShortcutLabel}`}if(this.variant==="destructive"){e=`${e}, destructive`}if(s(this.submenuTriggerFor)){e=`${e}, triggers submenu`}if(this.el.classList.contains("ic-popover-submenu-back-button")){e="Go back to parent menu"}const t=this.el.parentElement;if(t.tagName==="IC-MENU-GROUP"&&t.label){return`${e}, ${t.label} menu group`}else{return e}};this.checked=false;this.description=undefined;this.disabled=false;this.href=undefined;this.hreflang=undefined;this.keyboardShortcutLabel=undefined;this.label=undefined;this.referrerpolicy=undefined;this.rel=undefined;this.submenuTriggerFor=undefined;this.target=undefined;this.variant="default"}watchDisabledHandler(){r(this.disabled,this.el)}componentWillLoad(){if(s(this.submenuTriggerFor)&&this.variant!=="default"){this.variant="default"}r(this.disabled,this.el)}componentDidLoad(){a([{prop:this.label,propName:"label"}],"Menu Item")}handleHostClick(e){if(this.disabled){e.stopImmediatePropagation()}}render(){const e=()=>i("div",{class:"menu-item-info"},i("div",{class:"menu-labels"},i("ic-typography",{class:"menu-item-label"},this.label),this.keyboardShortcutLabel&&i("ic-typography",{variant:"caption",class:"shortcut"},this.keyboardShortcutLabel)),this.description&&i("ic-typography",{class:"menu-item-description",variant:"caption"},this.description));return i(o,{class:{["ic-menu-item-disabled"]:this.disabled}},i("li",{role:this.variant==="toggle"?"menuitemcheckbox":"menuitem","aria-disabled":`${this.disabled}`,"aria-checked":this.variant==="toggle"?this.checked?"true":"false":undefined},i("ic-button",{fullWidth:true,variant:"tertiary",onClick:this.handleClick,href:s(this.href),hreflang:s(this.hreflang),target:s(this.target),rel:s(this.rel),referrerpolicy:this.referrerpolicy!==undefined?this.referrerpolicy:null,"aria-disabled":`${this.disabled}`,"aria-label":this.getMenuItemAriaLabel(),"aria-haspopup":s(this.submenuTriggerFor)||this.el.classList.contains("ic-popover-submenu-back-button")?"menu":false},i("div",{class:"focus-border"},c(this.el,"icon")&&i("span",{class:"icon"},i("slot",{name:"icon"})),i(e,null),this.variant==="toggle"&&i("span",{class:{["check-icon"]:true,["hide"]:!this.checked},"aria-hidden":"true",innerHTML:u}),s(this.submenuTriggerFor)&&i("span",{class:{["submenu-icon"]:true},"aria-hidden":"true",innerHTML:l})))))}static get delegatesFocus(){return true}get el(){return n(this)}static get watchers(){return{disabled:["watchDisabledHandler"]}}};p.style=d;export{p as ic_menu_item};
|
2
|
-
//# sourceMappingURL=p-
|
1
|
+
import{r as e,c as t,h as i,H as o,g as n}from"./p-8455d1bb.js";import{d as s,r,b as a,i as c}from"./p-70616efa.js";import{C as u}from"./p-0aa9ce8b.js";import{C as l}from"./p-170ddfc2.js";const d='/*! 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}li{list-style:none;padding:0}:host ::part(button){color:var(--ic-popover-menu-item-check);padding:calc(var(--ic-space-xxxs) / 2);display:flex;align-items:flex-start;gap:var(--ic-space-xs);border-radius:0;min-height:2.5rem;height:auto}.focus-border{display:flex;align-items:flex-start;gap:var(--ic-space-xs);border-radius:var(--ic-border-radius);margin:calc(var(--ic-space-xxxs) / 2);padding:var(--ic-space-xxs);border:var(--ic-space-xxxs) dashed transparent;--icon-height:auto}:host(.ic-menu-item-disabled) ::part(button){color:var(--ic-popover-menu-item-check-disabled) !important;--ic-typography-color:var(--ic-popover-menu-item-check-disabled) !important;pointer-events:none}:host(.ic-menu-item-disabled) .menu-item-label,:host(.ic-menu-item-disabled) .shortcut,:host(.ic-menu-item-disabled) .menu-item-description{--ic-typography-color:var(--ic-popover-menu-item-label-disabled) !important}:host([variant="destructive"]) ::part(button){color:var(--ic-popover-menu-destructive-item-icon);--ic-typography-color:var(--ic-popover-menu-destructive-item-label)}:host ::part(button):hover{background-color:var(--ic-popover-background-hover)}:host ::part(button):focus-visible,:host ::part(button):focus{color:var(--ic-popover-menu-item-icon-focused);--ic-typography-color:purple;background-color:var(--ic-popover-background-focus);box-shadow:none}:host(.ic-menu-item-disabled) ::part(button):focus-visible,:host(.ic-menu-item-disabled) ::part(button):focus{color:var(--ic-popover-menu-item-icon-disabled) !important;--ic-typography-color:orange !important}:host([variant="destructive"]) ::part(button):focus-visible,:host([variant="destructive"]) ::part(button):focus{background-color:var(--ic-popover-destructive-background-focus)}ic-button:focus-within .menu-item-label,ic-button:focus-within .shortcut,ic-button:focus-within .menu-item-description{--ic-typography-color:var(--ic-popover-menu-item-label-focused)}:host(.ic-menu-item-disabled) ic-button:focus-within .focus-border{border-color:var(--ic-popover-menu-border)}:host(.ic-menu-item-disabled) ic-button:focus-within .menu-item-label,:host(.ic-menu-item-disabled) ic-button:focus-within .shortcut,:host(.ic-menu-item-disabled) ic-button:focus-within .menu-item-description{--ic-typography-color:var(--ic-popover-menu-item-label-disabled) !important}:host ::part(button):active{background-color:var(--ic-popover-background-pressed);color:var(--ic-popover-menu-item-label) !important;--ic-typography-color:var(--ic-popover-menu-item-label) !important}:host([variant="destructive"]) ::part(button):active{background-color:var(--ic-popover-background-pressed);color:var(--ic-popover-menu-destructive-item-label) !important;--ic-typography-color:var(\n --ic-popover-menu-destructive-item-label\n ) !important}.menu-item-info{display:flex;flex-direction:column;flex:1;align-items:baseline;white-space:pre-line;text-align:left}.menu-labels{display:flex;align-items:baseline;gap:var(--ic-space-xs)}.menu-item-description{--ic-typography-color:var(--ic-popover-menu-item-description)}.shortcut{--ic-typography-color:var(--ic-popover-menu-item-shortcut);display:flex;flex:min-content}:host([variant="destructive"]) .menu-item-label{text-transform:uppercase;font-weight:600;letter-spacing:0.025em}ic-button:active .menu-item-label{--ic-typography-color:var(--ic-popover-menu-item-label)}ic-button:active .menu-item-description{--ic-typography-color:var(--ic-popover-menu-item-description)}ic-button:active .shortcut{--ic-typography-color:var(--ic-popover-menu-item-shortcut)}:host([variant="destructive"]) ic-button:active .menu-item-label{--ic-typography-color:var(\n --ic-popover-menu-destructive-item-label\n ) !important}.icon,.check-icon,.submenu-icon,.icon ::slotted(svg),.check-icon svg,.submenu-icon svg{width:var(--ic-space-lg);height:var(--ic-space-lg)}.check-icon.hide{visibility:hidden}@media (forced-colors: active){:host ::part(button){border:canvas}:host ::part(button):focus-visible{outline:var(--ic-space-xxxs) solid transparent}.focus-border{border-color:canvas}:host(.ic-menu-item-disabled) ic-button:focus-within .focus-border{border-color:GrayText}:host(.ic-menu-item-disabled) .menu-item-info,:host(.ic-menu-item-disabled) .menu-item-label,:host(.ic-menu-item-disabled) .shortcut,:host(.ic-menu-item-disabled) .menu-item-description,:host(.ic-menu-item-disabled) ic-button:focus-within .menu-item-info,:host(.ic-menu-item-disabled) ic-button:focus-within .menu-item-label,:host(.ic-menu-item-disabled) ic-button:focus-within .shortcut,:host(.ic-menu-item-disabled) ic-button:focus-within .menu-item-description{--ic-typography-color:GrayText !important}:host(.ic-menu-item-disabled) ::part(button):focus-visible,:host(.ic-menu-item-disabled) ::part(button):focus{outline-color:GrayText !important}}';const p=class{constructor(i){e(this,i);this.childBlur=t(this,"childBlur",7);this.handleMenuItemClick=t(this,"handleMenuItemClick",7);this.icToggleChecked=t(this,"icToggleChecked",7);this.triggerPopoverMenuInstance=t(this,"triggerPopoverMenuInstance",7);this.handleClick=e=>{if(s(this.submenuTriggerFor)){this.triggerPopoverMenuInstance.emit()}else if(this.variant==="toggle"){e.preventDefault();this.checked=!this.checked;this.icToggleChecked.emit({checked:this.checked})}this.handleMenuItemClick.emit(this.el)};this.getMenuItemAriaLabel=()=>{let e=this.label;if(s(this.description)){e=`${e}, ${this.description}`}if(s(this.keyboardShortcutLabel)){e=`${e}, ${this.keyboardShortcutLabel}`}if(this.variant==="destructive"){e=`${e}, destructive`}if(s(this.submenuTriggerFor)){e=`${e}, triggers submenu`}if(this.el.classList.contains("ic-popover-submenu-back-button")){e="Go back to parent menu"}const t=this.el.parentElement;if(t.tagName==="IC-MENU-GROUP"&&t.label){return`${e}, ${t.label} menu group`}else{return e}};this.checked=false;this.description=undefined;this.disabled=false;this.href=undefined;this.hreflang=undefined;this.keyboardShortcutLabel=undefined;this.label=undefined;this.referrerpolicy=undefined;this.rel=undefined;this.submenuTriggerFor=undefined;this.target=undefined;this.variant="default"}watchDisabledHandler(){r(this.disabled,this.el)}componentWillLoad(){if(s(this.submenuTriggerFor)&&this.variant!=="default"){this.variant="default"}r(this.disabled,this.el)}componentDidLoad(){a([{prop:this.label,propName:"label"}],"Menu Item")}handleHostClick(e){if(this.disabled){e.stopImmediatePropagation()}}render(){const e=()=>i("div",{class:"menu-item-info"},i("div",{class:"menu-labels"},i("ic-typography",{class:"menu-item-label"},this.label),this.keyboardShortcutLabel&&i("ic-typography",{variant:"caption",class:"shortcut"},this.keyboardShortcutLabel)),this.description&&i("ic-typography",{class:"menu-item-description",variant:"caption"},this.description));return i(o,{class:{["ic-menu-item-disabled"]:this.disabled}},i("li",{role:this.variant==="toggle"?"menuitemcheckbox":"menuitem","aria-disabled":`${this.disabled}`,"aria-checked":this.variant==="toggle"?this.checked?"true":"false":undefined},i("ic-button",{fullWidth:true,variant:"tertiary",onClick:this.handleClick,href:s(this.href),hreflang:s(this.hreflang),target:s(this.target),rel:s(this.rel),referrerpolicy:this.referrerpolicy!==undefined?this.referrerpolicy:null,"aria-disabled":`${this.disabled}`,"aria-label":this.getMenuItemAriaLabel(),"aria-haspopup":s(this.submenuTriggerFor)||this.el.classList.contains("ic-popover-submenu-back-button")?"menu":false},i("div",{class:"focus-border"},c(this.el,"icon")&&i("span",{class:"icon"},i("slot",{name:"icon"})),i(e,null),this.variant==="toggle"&&i("span",{class:{["check-icon"]:true,["hide"]:!this.checked},"aria-hidden":"true",innerHTML:u}),s(this.submenuTriggerFor)&&i("span",{class:{["submenu-icon"]:true},"aria-hidden":"true",innerHTML:l})))))}static get delegatesFocus(){return true}get el(){return n(this)}static get watchers(){return{disabled:["watchDisabledHandler"]}}};p.style=d;export{p as ic_menu_item};
|
2
|
+
//# sourceMappingURL=p-052a9f31.entry.js.map
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{r as e,h as t,H as i,g as a}from"./p-8455d1bb.js";import{i as n,e as s,D as o,f as r}from"./p-
|
2
|
-
//# sourceMappingURL=p-
|
1
|
+
import{r as e,h as t,H as i,g as a}from"./p-8455d1bb.js";import{i as n,e as s,D as o,f as r}from"./p-70616efa.js";const d='/*! 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;z-index:var(--ic-z-index-page-header)}:host(.ic-page-header-sticky){position:sticky;top:0;box-shadow:var(--ic-elevation-overlay);z-index:var(--ic-z-index-sticky-page-header)}header{background-color:var(--ic-page-header-background)}header.border-bottom{border-bottom:var(--ic-border-default);border-bottom:var(--ic-space-1px) solid var(--ic-page-header-border)}header.tabs{padding-top:var(--ic-space-md)}.breadcrumb-area{margin-bottom:var(--ic-space-md)}.main-content{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"title-area action-area"\n "input-area action-area";-moz-column-gap:var(--ic-space-md);column-gap:var(--ic-space-md);justify-content:space-between;width:100%}.title-area{display:flex;flex-direction:column;flex:1;min-width:19rem;grid-area:title-area}.header-content{display:flex;align-items:center;width:100%;flex-wrap:wrap;-moz-column-gap:var(--ic-space-md);column-gap:var(--ic-space-md)}.heading{display:inline-block;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.subheading-content{margin-top:var(--ic-space-xs)}.subheading-content.small{margin-top:var(--ic-space-md)}.action-area{display:flex;gap:var(--ic-space-md);flex-flow:row wrap;justify-self:end;justify-content:flex-end;height:-moz-fit-content;height:fit-content;grid-area:action-area}.input-area,.navigation-area{margin-top:var(--ic-space-md);width:100%}.tabs-slot{display:flex;overflow-x:auto;padding:0.5rem;margin:-0.5rem}.tabs-slot::-webkit-scrollbar{display:none}.input-area{grid-area:input-area}@media screen and (max-width: 576px){::slotted(ic-text-field){--input-width:100%;max-width:20rem}.main-content{grid-template-areas:"title-area"\n "action-area"\n "input-area";justify-content:flex-start}.title-area{min-width:0}.action-area{min-width:100%;margin-top:var(--ic-space-md);justify-content:start}}@media screen and (min-width: 992px){:host(.ic-page-header-sticky-desktop){position:sticky;top:0;box-shadow:var(--ic-elevation-overlay);z-index:var(--ic-z-index-sticky-page-header)}}';const l=class{constructor(t){e(this,t);this.resizeObserver=null;this.resizeObserverCallback=()=>{if(this.reverseOrder&&n(this.el,"actions")){this.applyReverseOrder()}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{this.resizeObserverCallback()}));this.resizeObserver.observe(this.el)};this.applyReverseOrder=()=>{const e=s();if(e!==this.deviceSize){this.deviceSize=e}const t=this.el.shadowRoot.querySelector("div.action-area");const i=[];for(let e=0;e<this.actionContent.length;e++){const t=this.actionContent[e];let a=t.offsetHeight;if(a===undefined){a=0}i.push(a)}const a=Math.max(...i);let n=t.offsetHeight;if(n===undefined){n=0}const r=()=>{this.actionContent=this.actionContent.reverse();this.actionContent.forEach((e=>{this.el.append(e)}));this.areButtonsReversed=!this.areButtonsReversed};if(this.deviceSize>o.S&&n<=a&&!this.areButtonsReversed||(this.deviceSize>o.S&&n>a||this.deviceSize<=o.S)&&this.areButtonsReversed){r()}};this.actionContent=undefined;this.areButtonsReversed=false;this.deviceSize=o.XL;this.aligned="left";this.border=true;this.heading=undefined;this.reverseOrder=false;this.size="medium";this.sticky=false;this.stickyDesktopOnly=false;this.subheading=undefined;this.theme="inherit"}disconnectedCallback(){if(this.resizeObserver!==null){this.resizeObserver.disconnect()}}componentWillLoad(){this.actionContent=Array.from(this.el.querySelectorAll(`[slot="actions"]`))}componentDidLoad(){r(this.runResizeObserver)}render(){const{size:e,border:a,heading:s,subheading:o,aligned:r,sticky:d,stickyDesktopOnly:l,theme:c}=this;const h=s?`${s} page sections`:"navigation-landmark-page-header";return t(i,{class:{["ic-page-header-sticky"]:d,["ic-page-header-sticky-desktop"]:!d&&l,[`ic-theme-${c}`]:c!=="inherit"},"aria-label":this.el.ariaLabel||"page header"},t("header",{class:{["border-bottom"]:a,["tabs"]:n(this.el,"tabs")},role:"presentation"},t("ic-section-container",{aligned:r,fullHeight:n(this.el,"tabs")},n(this.el,"breadcrumbs")&&t("div",{class:"breadcrumb-area"},t("slot",{name:"breadcrumbs"})),t("div",{class:"main-content"},t("div",{class:"title-area"},t("div",{class:"header-content"},t("slot",{name:"heading"},t("ic-typography",{variant:e==="small"?"h4":"h2",class:"heading"},t("h2",null,s))),t("slot",{name:"heading-adornment"})),t("div",{class:{["subheading-content"]:!!o||n(this.el,"subheading"),["small"]:e==="small"}},t("slot",{name:"subheading"},t("ic-typography",{variant:"body"},o)))),n(this.el,"actions")&&t("div",{class:"action-area"},t("slot",{name:"actions"})),n(this.el,"input")&&t("div",{class:"input-area"},t("slot",{name:"input"}))),(n(this.el,"stepper")||n(this.el,"tabs"))&&t("div",{class:"navigation-area"},n(this.el,"stepper")&&!n(this.el,"tabs")&&t("slot",{name:"stepper"}),n(this.el,"tabs")&&t("nav",{"aria-label":h},t("ic-horizontal-scroll",null,t("ul",{class:"tabs-slot"},t("slot",{name:"tabs"}))))))))}get el(){return a(this)}};l.style=d;export{l as ic_page_header};
|
2
|
+
//# sourceMappingURL=p-059c08a0.entry.js.map
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{r as n,h as e,H as t,g as i}from"./p-8455d1bb.js";import{r,i as o,b as a,a as s,h as d,I as c}from"./p-897fac99.js";import{C as l}from"./p-170ddfc2.js";const h='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type="button"],\n[type="reset"],\n[type="submit"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type="button"]::-moz-focus-inner,\n[type="reset"]::-moz-focus-inner,\n[type="submit"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type="button"]:-moz-focusring,\n[type="reset"]:-moz-focusring,\n[type="submit"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type="checkbox"],\n[type="radio"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type="number"]::-webkit-inner-spin-button,\n[type="number"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type="search"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type="search"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n:host {\n display: flex;\n}\n\na {\n text-decoration: none !important;\n color: var(--ic-card-text-primary) !important;\n}\n\na:visited {\n color: var(--ic-card-link-action-dark) !important;\n}\n\nbutton {\n border: none;\n background-color: transparent;\n outline: var(--ic-hc-focus-outline);\n}\n\n.card {\n display: flex;\n flex-direction: column;\n border: var(--ic-space-1px) solid var(--ic-card-border-primary);\n border-radius: var(--ic-border-radius);\n box-sizing: border-box;\n padding: var(--ic-space-md);\n text-align: left;\n color: var(--ic-card-text-primary);\n transition: var(--ic-easing-transition-fast);\n position: relative;\n width: inherit;\n min-width: -moz-fit-content;\n min-width: fit-content;\n height: -moz-fit-content;\n height: fit-content;\n min-height: 100%;\n\n ::slotted(svg) {\n fill: var(--ic-card-icon);\n }\n &.monochrome {\n border: var(--ic-border-width) solid var(--ic-card-border-monochrome);\n }\n &.fullwidth {\n width: 100%;\n }\n &.clickable {\n &:hover {\n background-color: var(--ic-card-background-hover);\n border: var(--ic-space-1px) solid var(--ic-card-hover-border-color);\n cursor: pointer;\n }\n &.focussed,\n &:focus {\n background-color: var(--ic-card-background-hover);\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n border: var(--ic-space-1px) solid var(--ic-card-pressed-border-color);\n }\n &:active {\n background-color: var(--ic-card-background-pressed);\n box-shadow: var(--ic-border-focus);\n\n .card-title {\n text-decoration: none;\n }\n }\n .card-title {\n --ic-typography-color: var(--ic-card-clickable-text);\n\n color: var(--ic-card-clickable-text);\n text-decoration: underline;\n text-decoration-thickness: var(--ic-space-1px);\n }\n }\n &.disabled {\n border: var(--ic-space-1px) dashed var(--ic-card-disabled-border-color);\n\n .card-message,\n .subheading,\n .card-title {\n --ic-typography-color: var(--ic-card-disabled-text);\n }\n .card-title {\n text-decoration: underline;\n text-decoration-thickness: var(--ic-space-1px);\n text-decoration-color: var(--ic-card-disabled-text);\n color: var(--ic-card-disabled-text);\n }\n ::slotted(svg) {\n fill: var(--ic-card-disabled-text);\n }\n }\n}\n\n.card-header {\n display: flex;\n align-items: center;\n}\n\n.icon {\n display: flex;\n align-items: center;\n padding-right: var(--ic-space-xs);\n}\n\n.card.clickable:hover .card-title,\n.card.clickable:focus .card-title,\n.card.clickable.focussed .card-title {\n display: inline-block;\n border-bottom: 0.25rem solid !important;\n margin-bottom: -0.25rem !important;\n text-decoration: none;\n}\n\n@supports (text-underline-offset: 25%) {\n .card.clickable:hover .card-title,\n .card.clickable:focus .card-title,\n .card.clickable.focussed .card-title {\n text-decoration-line: underline;\n text-decoration-thickness: 25%;\n text-underline-offset: 25%;\n border-bottom: 0 !important;\n margin-bottom: 0 !important;\n }\n}\n\n.subheading {\n margin-top: var(--ic-space-xxs);\n}\n\n.adornment {\n margin-top: var(--ic-space-xxs);\n}\n\n.card-message {\n margin-top: var(--ic-space-md);\n align-items: left;\n}\n\n.interaction-button {\n margin-left: auto;\n}\n\n.image-top {\n margin-bottom: var(--ic-space-md);\n display: flex;\n justify-content: center;\n}\n\n.image-mid {\n margin-top: var(--ic-space-md);\n display: flex;\n justify-content: center;\n}\n\n.interaction-area {\n display: flex;\n flex-grow: 1;\n gap: var(--ic-space-md);\n margin-top: var(--ic-space-md);\n align-items: flex-end;\n}\n\n.interaction-controls {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: var(--ic-space-sm);\n}\n\n.toggle-button {\n width: 2.5rem;\n height: 2.5rem;\n padding: var(--ic-space-xs);\n margin: var(--ic-space-1px) 0;\n min-width: 0;\n cursor: pointer;\n transition: var(--ic-easing-transition-fast);\n border-radius: var(--ic-border-radius);\n display: inline-flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n background: none;\n border: none;\n box-sizing: border-box;\n white-space: nowrap;\n vertical-align: middle;\n\n &:hover {\n background-color: var(--ic-card-background-hover);\n }\n &:focus {\n box-shadow: var(--ic-border-focus);\n }\n &:active:not(:focus) {\n background-color: var(--ic-card-background-pressed);\n }\n\n svg {\n pointer-events: none;\n width: 100% !important;\n height: 100% !important;\n fill: currentcolor !important;\n }\n}\n\n#ic-tooltip-expand-button {\n margin-left: auto;\n position: relative;\n}\n\n.toggle-button-closed svg {\n transform: rotate(90deg);\n}\n\n.toggle-button-expanded svg {\n transform: rotate(-90deg);\n}\n\n.expanded-content {\n margin-top: var(--ic-space-md);\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n .card {\n ::slotted(svg) {\n fill: currentcolor;\n }\n &.disabled {\n border-color: GrayText !important;\n\n ::slotted(svg) {\n fill: GrayText !important;\n }\n .card-message,\n .subheading,\n .card-title {\n color: GrayText;\n\n --ic-typography-color: GrayText;\n }\n }\n }\n}\n';const m=class{constructor(e){n(this,e);this.hostMutationObserver=null;this.parentFocussed=()=>{this.isFocussed=true};this.parentBlurred=()=>{this.isFocussed=false};this.toggleExpanded=()=>{this.areaExpanded=!this.areaExpanded};this.areaExpanded=false;this.isFocussed=false;this.monochrome=false;this.parentEl=null;this.parentIsAnchorTag=false;this.clickable=false;this.disabled=false;this.expandable=false;this.fullWidth=false;this.heading=undefined;this.href=undefined;this.hreflang="";this.message="";this.referrerpolicy=undefined;this.rel=undefined;this.subheading=undefined;this.target=undefined;this.theme="inherit"}watchDisabledHandler(){r(this.disabled,this.el)}disconnectedCallback(){var n;if(this.parentIsAnchorTag){this.parentEl.removeEventListener("focus",this.parentFocussed);this.parentEl.removeEventListener("blur",this.parentBlurred)}(n=this.hostMutationObserver)===null||n===void 0?void 0:n.disconnect()}componentWillLoad(){this.parentEl=this.el.parentElement;if(this.parentEl.tagName==="A"){this.clickable=true;this.parentIsAnchorTag=true;this.parentEl.classList.add("ic-card-wrapper-link");this.parentEl.addEventListener("focus",this.parentFocussed);this.parentEl.addEventListener("blur",this.parentBlurred)}r(this.disabled,this.el)}componentDidLoad(){!o(this.el,"heading")&&a([{prop:this.heading,propName:"heading"}],"Card");this.updateTheme();this.hostMutationObserver=new MutationObserver((n=>s(n,["message","adornment","expanded-content","image-top","image-mid","icon","interaction-button","badge","interaction-controls"],this)));this.hostMutationObserver.observe(this.el,{childList:true})}handleHostClick(n){if(this.disabled){n.stopImmediatePropagation()}}brandChangeHandler(n){this.updateTheme(n.detail.mode)}async setFocus(){if(this.el.shadowRoot.querySelector("a")){this.el.shadowRoot.querySelector("a").focus()}else if(this.el.shadowRoot.querySelector("button")){this.el.shadowRoot.querySelector("button").focus()}}updateTheme(n=null){const e=d(this.el,n);if(e!==c.Default){this.monochrome=true;this.theme=e===c.Light?c.Dark:c.Light}}render(){const{clickable:n,disabled:i,expandable:r,fullWidth:a,heading:s,isFocussed:d,message:c,monochrome:h,href:m,hreflang:b,parentIsAnchorTag:p,referrerpolicy:u,rel:g,subheading:f,target:v,theme:x}=this;const y=p||!n?"div":m===undefined?"button":"a";const w=y=="a"&&{href:m,hrefLang:b,referrerPolicy:u,rel:g,target:v};return e(t,{class:{[`ic-theme-${x}`]:x!=="inherit"}},e(y,Object.assign({class:{card:true,clickable:n&&!i,disabled:i,fullwidth:a,focussed:d,monochrome:h},tabindex:n&&!p?0:null,"aria-disabled":i?"true":null,disabled:i?true:null},w),o(this.el,"image-top")&&e("div",{class:"image-top"},e("slot",{name:"image-top"})),e("div",{class:"card-header"},o(this.el,"icon")&&e("div",{class:"icon"},e("slot",{name:"icon"})),e("div",{class:"card-title"},e("slot",{name:"heading"},e("ic-typography",{variant:"h4"},e("p",null,s)))),o(this.el,"interaction-button")&&e("div",{class:"interaction-button"},e("slot",{name:"interaction-button"}))),(f||o(this.el,"subheading"))&&e("div",{class:"subheading"},e("slot",{name:"subheading"},e("ic-typography",{variant:"subtitle-small"},f))),o(this.el,"adornment")&&e("div",{class:"adornment"},e("slot",{name:"adornment"})),o(this.el,"image-mid")&&e("div",{class:"image-mid"},e("slot",{name:"image-mid"})),(c||o(this.el,"message"))&&e("div",{class:"card-message"},c&&e("ic-typography",{variant:"body"},c),o(this.el,"message")&&e("slot",{name:"message"})),(o(this.el,"interaction-controls")||r)&&e("div",{class:"interaction-area"},e("div",{class:"interaction-controls"},e("slot",{name:"interaction-controls"})),r&&e("ic-tooltip",{id:"ic-tooltip-expand-button",label:"Toggle expandable area",silent:true},e("button",{class:{"toggle-button":true,[`toggle-button-${this.areaExpanded?"expanded":"closed"}`]:true},"aria-label":"Toggle expandable area","aria-expanded":`${this.areaExpanded}`,"aria-controls":this.areaExpanded?"expanded-content-area":null,onClick:this.toggleExpanded,innerHTML:l}))),o(this.el,"expanded-content")&&this.areaExpanded&&e("div",{class:"expanded-content",id:"expanded-content-area"},e("slot",{name:"expanded-content"})),o(this.el,"badge")&&e("slot",{name:"badge"})))}get el(){return i(this)}static get watchers(){return{disabled:["watchDisabledHandler"]}}};m.style=h;export{m as ic_card_vertical};
|
2
|
-
//# sourceMappingURL=p-
|
1
|
+
import{r as n,h as e,H as t,g as i}from"./p-8455d1bb.js";import{r,i as o,b as a,a as s,h as d,I as c}from"./p-70616efa.js";import{C as l}from"./p-170ddfc2.js";const h='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type="button"],\n[type="reset"],\n[type="submit"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type="button"]::-moz-focus-inner,\n[type="reset"]::-moz-focus-inner,\n[type="submit"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type="button"]:-moz-focusring,\n[type="reset"]:-moz-focusring,\n[type="submit"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type="checkbox"],\n[type="radio"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type="number"]::-webkit-inner-spin-button,\n[type="number"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type="search"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type="search"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n:host {\n display: flex;\n}\n\na {\n text-decoration: none !important;\n color: var(--ic-card-text-primary) !important;\n}\n\na:visited {\n color: var(--ic-card-link-action-dark) !important;\n}\n\nbutton {\n border: none;\n background-color: transparent;\n outline: var(--ic-hc-focus-outline);\n}\n\n.card {\n display: flex;\n flex-direction: column;\n border: var(--ic-space-1px) solid var(--ic-card-border-primary);\n border-radius: var(--ic-border-radius);\n box-sizing: border-box;\n padding: var(--ic-space-md);\n text-align: left;\n color: var(--ic-card-text-primary);\n transition: var(--ic-easing-transition-fast);\n position: relative;\n width: inherit;\n min-width: -moz-fit-content;\n min-width: fit-content;\n height: -moz-fit-content;\n height: fit-content;\n min-height: 100%;\n\n ::slotted(svg) {\n fill: var(--ic-card-icon);\n }\n &.monochrome {\n border: var(--ic-border-width) solid var(--ic-card-border-monochrome);\n }\n &.fullwidth {\n width: 100%;\n }\n &.clickable {\n &:hover {\n background-color: var(--ic-card-background-hover);\n border: var(--ic-space-1px) solid var(--ic-card-hover-border-color);\n cursor: pointer;\n }\n &.focussed,\n &:focus {\n background-color: var(--ic-card-background-hover);\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n border: var(--ic-space-1px) solid var(--ic-card-pressed-border-color);\n }\n &:active {\n background-color: var(--ic-card-background-pressed);\n box-shadow: var(--ic-border-focus);\n\n .card-title {\n text-decoration: none;\n }\n }\n .card-title {\n --ic-typography-color: var(--ic-card-clickable-text);\n\n color: var(--ic-card-clickable-text);\n text-decoration: underline;\n text-decoration-thickness: var(--ic-space-1px);\n }\n }\n &.disabled {\n border: var(--ic-space-1px) dashed var(--ic-card-disabled-border-color);\n\n .card-message,\n .subheading,\n .card-title {\n --ic-typography-color: var(--ic-card-disabled-text);\n }\n .card-title {\n text-decoration: underline;\n text-decoration-thickness: var(--ic-space-1px);\n text-decoration-color: var(--ic-card-disabled-text);\n color: var(--ic-card-disabled-text);\n }\n ::slotted(svg) {\n fill: var(--ic-card-disabled-text);\n }\n }\n}\n\n.card-header {\n display: flex;\n align-items: center;\n}\n\n.icon {\n display: flex;\n align-items: center;\n padding-right: var(--ic-space-xs);\n}\n\n.card.clickable:hover .card-title,\n.card.clickable:focus .card-title,\n.card.clickable.focussed .card-title {\n display: inline-block;\n border-bottom: 0.25rem solid !important;\n margin-bottom: -0.25rem !important;\n text-decoration: none;\n}\n\n@supports (text-underline-offset: 25%) {\n .card.clickable:hover .card-title,\n .card.clickable:focus .card-title,\n .card.clickable.focussed .card-title {\n text-decoration-line: underline;\n text-decoration-thickness: 25%;\n text-underline-offset: 25%;\n border-bottom: 0 !important;\n margin-bottom: 0 !important;\n }\n}\n\n.subheading {\n margin-top: var(--ic-space-xxs);\n}\n\n.adornment {\n margin-top: var(--ic-space-xxs);\n}\n\n.card-message {\n margin-top: var(--ic-space-md);\n align-items: left;\n}\n\n.interaction-button {\n margin-left: auto;\n}\n\n.image-top {\n margin-bottom: var(--ic-space-md);\n display: flex;\n justify-content: center;\n}\n\n.image-mid {\n margin-top: var(--ic-space-md);\n display: flex;\n justify-content: center;\n}\n\n.interaction-area {\n display: flex;\n flex-grow: 1;\n gap: var(--ic-space-md);\n margin-top: var(--ic-space-md);\n align-items: flex-end;\n}\n\n.interaction-controls {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: var(--ic-space-sm);\n}\n\n.toggle-button {\n width: 2.5rem;\n height: 2.5rem;\n padding: var(--ic-space-xs);\n margin: var(--ic-space-1px) 0;\n min-width: 0;\n cursor: pointer;\n transition: var(--ic-easing-transition-fast);\n border-radius: var(--ic-border-radius);\n display: inline-flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n background: none;\n border: none;\n box-sizing: border-box;\n white-space: nowrap;\n vertical-align: middle;\n\n &:hover {\n background-color: var(--ic-card-background-hover);\n }\n &:focus {\n box-shadow: var(--ic-border-focus);\n }\n &:active:not(:focus) {\n background-color: var(--ic-card-background-pressed);\n }\n\n svg {\n pointer-events: none;\n width: 100% !important;\n height: 100% !important;\n fill: currentcolor !important;\n }\n}\n\n#ic-tooltip-expand-button {\n margin-left: auto;\n position: relative;\n}\n\n.toggle-button-closed svg {\n transform: rotate(90deg);\n}\n\n.toggle-button-expanded svg {\n transform: rotate(-90deg);\n}\n\n.expanded-content {\n margin-top: var(--ic-space-md);\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n .card {\n ::slotted(svg) {\n fill: currentcolor;\n }\n &.disabled {\n border-color: GrayText !important;\n\n ::slotted(svg) {\n fill: GrayText !important;\n }\n .card-message,\n .subheading,\n .card-title {\n color: GrayText;\n\n --ic-typography-color: GrayText;\n }\n }\n }\n\n .toggle-button:focus,\n .toggle-button:hover {\n outline-color: Highlight;\n }\n}\n';const m=class{constructor(e){n(this,e);this.hostMutationObserver=null;this.parentFocussed=()=>{this.isFocussed=true};this.parentBlurred=()=>{this.isFocussed=false};this.toggleExpanded=()=>{this.areaExpanded=!this.areaExpanded};this.areaExpanded=false;this.isFocussed=false;this.monochrome=false;this.parentEl=null;this.parentIsAnchorTag=false;this.clickable=false;this.disabled=false;this.expandable=false;this.fullWidth=false;this.heading=undefined;this.href=undefined;this.hreflang="";this.message="";this.referrerpolicy=undefined;this.rel=undefined;this.subheading=undefined;this.target=undefined;this.theme="inherit"}watchDisabledHandler(){r(this.disabled,this.el)}disconnectedCallback(){var n;if(this.parentIsAnchorTag){this.parentEl.removeEventListener("focus",this.parentFocussed);this.parentEl.removeEventListener("blur",this.parentBlurred)}(n=this.hostMutationObserver)===null||n===void 0?void 0:n.disconnect()}componentWillLoad(){this.parentEl=this.el.parentElement;if(this.parentEl.tagName==="A"){this.clickable=true;this.parentIsAnchorTag=true;this.parentEl.classList.add("ic-card-wrapper-link");this.parentEl.addEventListener("focus",this.parentFocussed);this.parentEl.addEventListener("blur",this.parentBlurred)}r(this.disabled,this.el)}componentDidLoad(){!o(this.el,"heading")&&a([{prop:this.heading,propName:"heading"}],"Card");this.updateTheme();this.hostMutationObserver=new MutationObserver((n=>s(n,["message","adornment","expanded-content","image-top","image-mid","icon","interaction-button","badge","interaction-controls"],this)));this.hostMutationObserver.observe(this.el,{childList:true})}handleHostClick(n){if(this.disabled){n.stopImmediatePropagation()}}brandChangeHandler(n){this.updateTheme(n.detail.mode)}async setFocus(){if(this.el.shadowRoot.querySelector("a")){this.el.shadowRoot.querySelector("a").focus()}else if(this.el.shadowRoot.querySelector("button")){this.el.shadowRoot.querySelector("button").focus()}}updateTheme(n=null){const e=d(this.el,n);if(e!==c.Default){this.monochrome=true;this.theme=e===c.Light?c.Dark:c.Light}}render(){const{clickable:n,disabled:i,expandable:r,fullWidth:a,heading:s,isFocussed:d,message:c,monochrome:h,href:m,hreflang:b,parentIsAnchorTag:p,referrerpolicy:g,rel:u,subheading:f,target:v,theme:x}=this;const y=p||!n?"div":m===undefined?"button":"a";const w=y=="a"&&{href:m,hrefLang:b,referrerPolicy:g,rel:u,target:v};return e(t,{class:{[`ic-theme-${x}`]:x!=="inherit"}},e(y,Object.assign({class:{card:true,clickable:n&&!i,disabled:i,fullwidth:a,focussed:d,monochrome:h},tabindex:n&&!p?0:null,"aria-disabled":i?"true":null,disabled:i?true:null},w),o(this.el,"image-top")&&e("div",{class:"image-top"},e("slot",{name:"image-top"})),e("div",{class:"card-header"},o(this.el,"icon")&&e("div",{class:"icon"},e("slot",{name:"icon"})),e("div",{class:"card-title"},e("slot",{name:"heading"},e("ic-typography",{variant:"h4"},e("p",null,s)))),o(this.el,"interaction-button")&&e("div",{class:"interaction-button"},e("slot",{name:"interaction-button"}))),(f||o(this.el,"subheading"))&&e("div",{class:"subheading"},e("slot",{name:"subheading"},e("ic-typography",{variant:"subtitle-small"},f))),o(this.el,"adornment")&&e("div",{class:"adornment"},e("slot",{name:"adornment"})),o(this.el,"image-mid")&&e("div",{class:"image-mid"},e("slot",{name:"image-mid"})),(c||o(this.el,"message"))&&e("div",{class:"card-message"},c&&e("ic-typography",{variant:"body"},c),o(this.el,"message")&&e("slot",{name:"message"})),(o(this.el,"interaction-controls")||r)&&e("div",{class:"interaction-area"},e("div",{class:"interaction-controls"},e("slot",{name:"interaction-controls"})),r&&e("ic-tooltip",{id:"ic-tooltip-expand-button",label:"Toggle expandable area",silent:true},e("button",{class:{"toggle-button":true,[`toggle-button-${this.areaExpanded?"expanded":"closed"}`]:true},"aria-label":"Toggle expandable area","aria-expanded":`${this.areaExpanded}`,"aria-controls":this.areaExpanded?"expanded-content-area":null,onClick:this.toggleExpanded,innerHTML:l}))),o(this.el,"expanded-content")&&this.areaExpanded&&e("div",{class:"expanded-content",id:"expanded-content-area"},e("slot",{name:"expanded-content"})),o(this.el,"badge")&&e("slot",{name:"badge"})))}get el(){return i(this)}static get watchers(){return{disabled:["watchDisabledHandler"]}}};m.style=h;export{m as ic_card_vertical};
|
2
|
+
//# sourceMappingURL=p-07784e04.entry.js.map
|