@ukic/canary-web-components 2.0.0-canary.13 → 2.0.0-canary.15
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/cjs/core.cjs.js +1 -1
- package/dist/cjs/{helpers-6acbb97e.js → helpers-191dca49.js} +56 -89
- package/dist/cjs/helpers-191dca49.js.map +1 -0
- package/dist/cjs/{helpers-f75cf7cf.js → helpers-765a5118.js} +30 -1
- package/dist/cjs/helpers-765a5118.js.map +1 -0
- package/dist/cjs/ic-accordion-group.cjs.entry.js +3 -1
- package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
- package/dist/cjs/ic-alert.cjs.entry.js +1 -1
- package/dist/cjs/ic-back-to-top.cjs.entry.js +15 -9
- package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-badge.cjs.entry.js +55 -84
- package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +3 -1
- package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/ic-button_3.cjs.entry.js +35 -86
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-card.cjs.entry.js +1 -1
- package/dist/cjs/ic-checkbox-group.cjs.entry.js +23 -16
- package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-checkbox.cjs.entry.js +32 -30
- package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-chip.cjs.entry.js +34 -21
- package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
- package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +57 -0
- package/dist/cjs/ic-data-table-title-bar.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-data-table.cjs.entry.js +154 -31
- package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-date-input.cjs.entry.js +6 -6
- package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-date-picker.cjs.entry.js +1 -1
- package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
- package/dist/cjs/ic-divider.cjs.entry.js +1 -1
- package/dist/cjs/ic-empty-state_2.cjs.entry.js +322 -0
- package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -0
- package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
- package/dist/cjs/ic-footer.cjs.entry.js +1 -1
- package/dist/cjs/ic-hero.cjs.entry.js +1 -1
- package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +1 -1
- package/dist/cjs/ic-input-component-container_4.cjs.entry.js +1 -1
- package/dist/cjs/ic-link.cjs.entry.js +34 -16
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-menu-item.cjs.entry.js +2 -2
- package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-with-multi.cjs.entry.js +176 -35
- package/dist/cjs/ic-menu-with-multi.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu.cjs.entry.js +3 -3
- package/dist/cjs/ic-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-button.cjs.entry.js +26 -5
- package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-navigation-item.cjs.entry.js +1 -1
- package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
- package/dist/cjs/ic-page-header.cjs.entry.js +1 -1
- package/dist/cjs/ic-pagination_4.cjs.entry.js +58 -17
- package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-popover-menu.cjs.entry.js +3 -2
- package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +40 -26
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-option.cjs.entry.js +9 -4
- package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-search-bar.cjs.entry.js +1 -1
- package/dist/cjs/ic-select-with-multi.cjs.entry.js +1 -1
- package/dist/cjs/ic-side-navigation.cjs.entry.js +1 -1
- package/dist/cjs/ic-status-tag.cjs.entry.js +1 -1
- package/dist/cjs/ic-step.cjs.entry.js +5 -2
- package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-stepper.cjs.entry.js +2 -1
- package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-switch.cjs.entry.js +1 -1
- package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
- package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
- package/dist/cjs/ic-tab.cjs.entry.js +1 -1
- package/dist/cjs/ic-theme.cjs.entry.js +13 -22
- package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-toast.cjs.entry.js +1 -1
- package/dist/cjs/ic-toggle-button.cjs.entry.js +1 -1
- package/dist/cjs/ic-top-navigation.cjs.entry.js +1 -1
- package/dist/cjs/ic-typography.cjs.entry.js +2 -2
- package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
- package/dist/cjs/index-4cf27b16.js +8 -8
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/ic-data-table/ic-data-table.css +76 -1
- package/dist/collection/components/ic-data-table/ic-data-table.js +368 -43
- 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 +258 -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 +320 -1
- 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 +91 -0
- package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js +160 -0
- package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js.map +1 -0
- package/dist/collection/components/ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.js +11 -0
- package/dist/collection/components/ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.js.map +1 -0
- package/dist/collection/components/ic-data-table-title-bar/test/basic/ic-data-table-title-bar.spec.js +70 -0
- package/dist/collection/components/ic-data-table-title-bar/test/basic/ic-data-table-title-bar.spec.js.map +1 -0
- package/dist/collection/components/ic-date-input/ic-date-input.css +1 -1
- package/dist/collection/components/ic-date-input/ic-date-input.js +4 -4
- package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
- package/dist/collection/components/ic-menu-with-multi/ic-menu.js +176 -35
- package/dist/collection/components/ic-menu-with-multi/ic-menu.js.map +1 -1
- package/dist/collection/components/ic-menu-with-multi/test/basic/ic-menu.spec.js +180 -3
- package/dist/collection/components/ic-menu-with-multi/test/basic/ic-menu.spec.js.map +1 -1
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +145 -116
- package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
- package/dist/collection/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.js +47 -10
- package/dist/collection/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.js.map +1 -1
- package/dist/collection/utils/types.js.map +1 -1
- package/dist/components/helpers.js +55 -87
- package/dist/components/helpers.js.map +1 -1
- package/dist/components/helpers2.js +28 -1
- package/dist/components/helpers2.js.map +1 -1
- package/dist/components/ic-accordion-group.js +2 -1
- package/dist/components/ic-accordion-group.js.map +1 -1
- package/dist/components/ic-back-to-top.js +22 -9
- package/dist/components/ic-back-to-top.js.map +1 -1
- package/dist/components/ic-badge.js +59 -84
- package/dist/components/ic-badge.js.map +1 -1
- package/dist/components/ic-breadcrumb-group.js +2 -0
- package/dist/components/ic-breadcrumb-group.js.map +1 -1
- package/dist/components/ic-button2.js +33 -84
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-card.js +1 -1
- package/dist/components/ic-checkbox-group.js +27 -17
- package/dist/components/ic-checkbox-group.js.map +1 -1
- package/dist/components/ic-checkbox.js +32 -30
- package/dist/components/ic-checkbox.js.map +1 -1
- package/dist/components/ic-chip.js +39 -23
- package/dist/components/ic-chip.js.map +1 -1
- package/dist/components/ic-data-table-title-bar.d.ts +11 -0
- package/dist/components/ic-data-table-title-bar.js +136 -0
- package/dist/components/ic-data-table-title-bar.js.map +1 -0
- package/dist/components/ic-data-table.js +179 -37
- package/dist/components/ic-data-table.js.map +1 -1
- package/dist/components/ic-date-input2.js +6 -6
- package/dist/components/ic-date-input2.js.map +1 -1
- package/dist/components/ic-date-picker.js +1 -1
- package/dist/components/ic-divider2.js +1 -1
- package/dist/components/ic-empty-state.js +1 -57
- package/dist/components/ic-empty-state.js.map +1 -1
- package/dist/{esm/ic-empty-state.entry.js → components/ic-empty-state2.js} +38 -11
- package/dist/components/ic-empty-state2.js.map +1 -0
- package/dist/components/ic-footer-link-group.js +1 -1
- package/dist/components/ic-footer-link.js +1 -1
- package/dist/components/ic-footer.js +1 -1
- package/dist/components/ic-hero.js +1 -1
- package/dist/components/ic-horizontal-scroll2.js +1 -1
- package/dist/components/ic-link2.js +35 -17
- package/dist/components/ic-link2.js.map +1 -1
- package/dist/components/ic-loading-indicator2.js +1 -1
- package/dist/components/ic-loading-indicator2.js.map +1 -1
- package/dist/components/ic-menu-item2.js +2 -2
- package/dist/components/ic-menu-item2.js.map +1 -1
- package/dist/components/ic-menu2.js +2 -2
- package/dist/components/ic-menu2.js.map +1 -1
- package/dist/components/ic-menu3.js +177 -36
- package/dist/components/ic-menu3.js.map +1 -1
- package/dist/components/ic-navigation-button.js +27 -6
- package/dist/components/ic-navigation-button.js.map +1 -1
- package/dist/components/ic-navigation-group.js +1 -1
- package/dist/components/ic-navigation-item.js +1 -1
- package/dist/components/ic-navigation-menu2.js +1 -1
- package/dist/components/ic-pagination-bar2.js +126 -99
- package/dist/components/ic-pagination-bar2.js.map +1 -1
- package/dist/components/ic-pagination-item2.js +2 -2
- package/dist/components/ic-pagination-item2.js.map +1 -1
- package/dist/components/ic-pagination2.js +1 -1
- package/dist/components/ic-popover-menu.js +3 -2
- package/dist/components/ic-popover-menu.js.map +1 -1
- package/dist/components/ic-radio-group.js +40 -26
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-radio-option.js +11 -5
- package/dist/components/ic-radio-option.js.map +1 -1
- package/dist/components/ic-search-bar.js +1 -1
- package/dist/components/ic-select-with-multi.js +1 -1
- package/dist/components/ic-select2.js +33 -11
- package/dist/components/ic-select2.js.map +1 -1
- package/dist/components/ic-side-navigation.js +1 -1
- package/dist/components/ic-step.js +4 -1
- package/dist/components/ic-step.js.map +1 -1
- package/dist/components/ic-stepper.js +3 -1
- package/dist/components/ic-stepper.js.map +1 -1
- package/dist/components/ic-switch.js +1 -1
- package/dist/components/ic-tab.js +1 -1
- package/dist/components/ic-text-field2.js +27 -8
- package/dist/components/ic-text-field2.js.map +1 -1
- package/dist/components/ic-theme.js +13 -22
- package/dist/components/ic-theme.js.map +1 -1
- package/dist/components/ic-toast.js +1 -1
- package/dist/components/ic-toggle-button.js +1 -1
- package/dist/components/ic-tooltip2.js +1 -1
- package/dist/components/ic-tooltip2.js.map +1 -1
- package/dist/components/ic-top-navigation.js +1 -1
- package/dist/components/ic-typography2.js +1 -1
- package/dist/components/ic-typography2.js.map +1 -1
- package/dist/core/core.css +2 -2
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/{p-b3d21d06.entry.js → p-005e83b0.entry.js} +2 -2
- package/dist/core/{p-b8a3b16d.entry.js → p-05df3901.entry.js} +2 -2
- package/dist/core/{p-3d0185a4.entry.js → p-0646ef0c.entry.js} +2 -2
- package/dist/core/p-0ec09955.entry.js +2 -0
- package/dist/core/p-0ec09955.entry.js.map +1 -0
- package/dist/core/p-114bea92.entry.js +2 -0
- package/dist/core/p-114bea92.entry.js.map +1 -0
- package/dist/core/p-11bbb09c.js +2 -0
- package/dist/core/p-11bbb09c.js.map +1 -0
- package/dist/core/p-11e736a3.entry.js +2 -0
- package/dist/core/p-11e736a3.entry.js.map +1 -0
- package/dist/core/{p-e0e26834.entry.js → p-16c82b13.entry.js} +2 -2
- package/dist/core/{p-094a0455.entry.js → p-1b35b6af.entry.js} +2 -2
- package/dist/core/p-1cf8a04e.entry.js +2 -0
- package/dist/core/p-1cf8a04e.entry.js.map +1 -0
- package/dist/core/{p-849f43c3.entry.js → p-2170f59e.entry.js} +2 -2
- package/dist/core/p-2e167ebb.entry.js +2 -0
- package/dist/core/p-2e167ebb.entry.js.map +1 -0
- package/dist/core/p-3f20608d.entry.js +2 -0
- package/dist/core/p-3f20608d.entry.js.map +1 -0
- package/dist/core/p-41606de1.entry.js +2 -0
- package/dist/core/p-41606de1.entry.js.map +1 -0
- package/dist/core/{p-8b1d128c.entry.js → p-4415c93f.entry.js} +2 -2
- package/dist/core/{p-6b68ee01.entry.js → p-457dd939.entry.js} +2 -2
- package/dist/core/p-457dd939.entry.js.map +1 -0
- package/dist/core/{p-04f46dac.entry.js → p-4737844f.entry.js} +2 -2
- package/dist/core/p-4737844f.entry.js.map +1 -0
- package/dist/core/{p-8ef85b15.entry.js → p-53374a27.entry.js} +2 -2
- package/dist/core/{p-7c8f85fd.entry.js → p-53e45d51.entry.js} +2 -2
- package/dist/core/{p-0707f2fc.entry.js → p-593f0318.entry.js} +2 -2
- package/dist/core/{p-aabab75f.entry.js → p-5d5979fa.entry.js} +2 -2
- package/dist/core/{p-c7b52046.entry.js → p-66af5958.entry.js} +2 -2
- package/dist/core/p-67b0faac.entry.js +2 -0
- package/dist/core/p-67b0faac.entry.js.map +1 -0
- package/dist/core/p-6b277e09.entry.js +2 -0
- package/dist/core/p-6b277e09.entry.js.map +1 -0
- package/dist/core/{p-2ec33c00.entry.js → p-72cea8fd.entry.js} +2 -2
- package/dist/core/p-73dad5cf.entry.js +2 -0
- package/dist/core/p-73dad5cf.entry.js.map +1 -0
- package/dist/core/{p-05d0ac42.entry.js → p-85e2a9af.entry.js} +2 -2
- package/dist/core/p-85e2a9af.entry.js.map +1 -0
- package/dist/core/{p-bbcd6d06.entry.js → p-872c3555.entry.js} +2 -2
- package/dist/core/{p-dae1779d.entry.js → p-87743c4a.entry.js} +2 -2
- package/dist/core/{p-55d819a6.entry.js → p-8cfc74da.entry.js} +2 -2
- package/dist/core/{p-bf316546.entry.js → p-9729086f.entry.js} +2 -2
- package/dist/core/{p-f4965c26.entry.js → p-9cc19e91.entry.js} +2 -2
- package/dist/core/{p-da578abf.entry.js → p-9de20265.entry.js} +2 -2
- package/dist/core/p-a088373e.entry.js +2 -0
- package/dist/core/p-a088373e.entry.js.map +1 -0
- package/dist/core/{p-169dcfdd.entry.js → p-a0e42564.entry.js} +2 -2
- package/dist/core/p-a8110c27.entry.js +2 -0
- package/dist/core/p-a8110c27.entry.js.map +1 -0
- package/dist/core/{p-f9fcdd21.entry.js → p-a9d07792.entry.js} +2 -2
- package/dist/core/p-a9d07792.entry.js.map +1 -0
- package/dist/core/{p-66b8f0a7.entry.js → p-b08f4371.entry.js} +2 -2
- package/dist/core/{p-a9ed6a71.entry.js → p-b79c0631.entry.js} +2 -2
- package/dist/core/p-b79c0631.entry.js.map +1 -0
- package/dist/core/p-b8247636.entry.js +2 -0
- package/dist/core/p-b8247636.entry.js.map +1 -0
- package/dist/core/{p-fdd8f3a5.entry.js → p-badfdf2a.entry.js} +2 -2
- package/dist/core/p-be56fa17.entry.js +2 -0
- package/dist/core/{p-31800427.entry.js.map → p-be56fa17.entry.js.map} +1 -1
- package/dist/core/{p-ed7379e3.entry.js → p-bebf535f.entry.js} +2 -2
- package/dist/core/p-c07cef0e.js +2 -0
- package/dist/core/p-c07cef0e.js.map +1 -0
- package/dist/core/p-c0d88af8.entry.js +2 -0
- package/dist/core/p-c0d88af8.entry.js.map +1 -0
- package/dist/core/p-c3af5dab.entry.js +2 -0
- package/dist/core/p-c3af5dab.entry.js.map +1 -0
- package/dist/core/{p-981b6f12.entry.js → p-c3dabce4.entry.js} +2 -2
- package/dist/core/{p-bcfbd465.entry.js → p-c7e932b5.entry.js} +2 -2
- package/dist/core/{p-1a4bce88.entry.js → p-d09aaa5b.entry.js} +2 -2
- package/dist/core/{p-3f4c408a.entry.js → p-d59a72a9.entry.js} +2 -2
- package/dist/core/p-d59a72a9.entry.js.map +1 -0
- package/dist/core/{p-1170c02d.entry.js → p-d71e9cb5.entry.js} +2 -2
- package/dist/core/{p-b612d68b.entry.js → p-ecd6d123.entry.js} +2 -2
- package/dist/core/p-ecd6d123.entry.js.map +1 -0
- package/dist/core/p-ee52a11a.entry.js +2 -0
- package/dist/core/p-ee52a11a.entry.js.map +1 -0
- package/dist/core/p-f11597df.entry.js +2 -0
- package/dist/core/p-f11597df.entry.js.map +1 -0
- package/dist/core/p-f1f3acd2.entry.js +2 -0
- package/dist/core/p-f1f3acd2.entry.js.map +1 -0
- package/dist/core/{p-e676069e.entry.js → p-f659e5eb.entry.js} +2 -2
- package/dist/core/{p-ffa94639.entry.js → p-fc2551c0.entry.js} +2 -2
- package/dist/esm/core.js +1 -1
- package/dist/esm/{helpers-f328a7b6.js → helpers-8df79303.js} +29 -2
- package/dist/esm/helpers-8df79303.js.map +1 -0
- package/dist/esm/{helpers-451953f9.js → helpers-da05c476.js} +56 -88
- package/dist/esm/helpers-da05c476.js.map +1 -0
- package/dist/esm/ic-accordion-group.entry.js +3 -1
- package/dist/esm/ic-accordion-group.entry.js.map +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 +15 -9
- package/dist/esm/ic-back-to-top.entry.js.map +1 -1
- package/dist/esm/ic-badge.entry.js +55 -84
- package/dist/esm/ic-badge.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb-group.entry.js +3 -1
- package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
- package/dist/esm/ic-breadcrumb.entry.js +1 -1
- package/dist/esm/ic-button_3.entry.js +35 -86
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-card.entry.js +1 -1
- package/dist/esm/ic-checkbox-group.entry.js +23 -16
- package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
- package/dist/esm/ic-checkbox.entry.js +32 -30
- package/dist/esm/ic-checkbox.entry.js.map +1 -1
- package/dist/esm/ic-chip.entry.js +34 -21
- package/dist/esm/ic-chip.entry.js.map +1 -1
- package/dist/esm/ic-data-row.entry.js +1 -1
- package/dist/esm/ic-data-table-title-bar.entry.js +53 -0
- package/dist/esm/ic-data-table-title-bar.entry.js.map +1 -0
- package/dist/esm/ic-data-table.entry.js +155 -32
- package/dist/esm/ic-data-table.entry.js.map +1 -1
- package/dist/esm/ic-date-input.entry.js +6 -6
- package/dist/esm/ic-date-input.entry.js.map +1 -1
- package/dist/esm/ic-date-picker.entry.js +1 -1
- package/dist/esm/ic-dialog.entry.js +1 -1
- package/dist/esm/ic-divider.entry.js +1 -1
- package/dist/esm/ic-empty-state_2.entry.js +317 -0
- package/dist/esm/ic-empty-state_2.entry.js.map +1 -0
- package/dist/esm/ic-footer-link-group.entry.js +1 -1
- package/dist/esm/ic-footer-link.entry.js +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_4.entry.js +1 -1
- package/dist/esm/ic-link.entry.js +35 -17
- 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 +2 -2
- package/dist/esm/ic-menu-item.entry.js.map +1 -1
- package/dist/esm/ic-menu-with-multi.entry.js +176 -35
- package/dist/esm/ic-menu-with-multi.entry.js.map +1 -1
- package/dist/esm/ic-menu.entry.js +3 -3
- package/dist/esm/ic-menu.entry.js.map +1 -1
- package/dist/esm/ic-navigation-button.entry.js +27 -6
- package/dist/esm/ic-navigation-button.entry.js.map +1 -1
- package/dist/esm/ic-navigation-group.entry.js +1 -1
- package/dist/esm/ic-navigation-item.entry.js +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 +59 -18
- package/dist/esm/ic-pagination_4.entry.js.map +1 -1
- package/dist/esm/ic-popover-menu.entry.js +3 -2
- package/dist/esm/ic-popover-menu.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +40 -26
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-option.entry.js +9 -4
- 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-select-with-multi.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 +5 -2
- package/dist/esm/ic-step.entry.js.map +1 -1
- package/dist/esm/ic-stepper.entry.js +2 -1
- package/dist/esm/ic-stepper.entry.js.map +1 -1
- package/dist/esm/ic-switch.entry.js +1 -1
- package/dist/esm/ic-tab-group.entry.js +1 -1
- package/dist/esm/ic-tab-panel.entry.js +1 -1
- package/dist/esm/ic-tab.entry.js +1 -1
- package/dist/esm/ic-theme.entry.js +13 -22
- package/dist/esm/ic-theme.entry.js.map +1 -1
- package/dist/esm/ic-toast.entry.js +1 -1
- package/dist/esm/ic-toggle-button.entry.js +1 -1
- package/dist/esm/ic-top-navigation.entry.js +1 -1
- package/dist/esm/ic-typography.entry.js +2 -2
- package/dist/esm/ic-typography.entry.js.map +1 -1
- package/dist/esm/index-93509377.js +8 -8
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/ic-data-table/ic-data-table.d.ts +79 -3
- package/dist/types/components/ic-data-table/ic-data-table.types.d.ts +9 -0
- package/dist/types/components/ic-data-table/story-data.d.ts +59 -0
- package/dist/types/components/ic-data-table-title-bar/ic-data-table-title-bar.d.ts +36 -0
- package/dist/types/components/ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.d.ts +1 -0
- package/dist/types/components/ic-menu-with-multi/ic-menu.d.ts +10 -0
- package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +24 -14
- package/dist/types/components.d.ts +207 -28
- package/dist/types/utils/types.d.ts +5 -5
- package/hydrate/index.js +1445 -1050
- package/package.json +3 -3
- package/dist/cjs/helpers-6acbb97e.js.map +0 -1
- package/dist/cjs/helpers-f75cf7cf.js.map +0 -1
- package/dist/cjs/ic-empty-state.cjs.entry.js +0 -38
- package/dist/cjs/ic-empty-state.cjs.entry.js.map +0 -1
- package/dist/cjs/ic-pagination-bar.cjs.entry.js +0 -269
- package/dist/cjs/ic-pagination-bar.cjs.entry.js.map +0 -1
- package/dist/collection/components/ic-pagination/ic-pagination.types.js +0 -2
- package/dist/collection/components/ic-pagination/ic-pagination.types.js.map +0 -1
- package/dist/core/p-04f46dac.entry.js.map +0 -1
- package/dist/core/p-05d0ac42.entry.js.map +0 -1
- package/dist/core/p-1c3bd46d.entry.js +0 -2
- package/dist/core/p-1c3bd46d.entry.js.map +0 -1
- package/dist/core/p-28bddd8d.entry.js +0 -2
- package/dist/core/p-28bddd8d.entry.js.map +0 -1
- package/dist/core/p-31800427.entry.js +0 -2
- package/dist/core/p-3b0caac0.js +0 -2
- package/dist/core/p-3b0caac0.js.map +0 -1
- package/dist/core/p-3f4c408a.entry.js.map +0 -1
- package/dist/core/p-4020d7f7.entry.js +0 -2
- package/dist/core/p-4020d7f7.entry.js.map +0 -1
- package/dist/core/p-402fd288.entry.js +0 -2
- package/dist/core/p-402fd288.entry.js.map +0 -1
- package/dist/core/p-49449a2d.entry.js +0 -2
- package/dist/core/p-49449a2d.entry.js.map +0 -1
- package/dist/core/p-4a30b0fc.entry.js +0 -2
- package/dist/core/p-4a30b0fc.entry.js.map +0 -1
- package/dist/core/p-4b361789.entry.js +0 -2
- package/dist/core/p-4b361789.entry.js.map +0 -1
- package/dist/core/p-50cfc2bb.entry.js +0 -2
- package/dist/core/p-50cfc2bb.entry.js.map +0 -1
- package/dist/core/p-58c87b3d.entry.js +0 -2
- package/dist/core/p-58c87b3d.entry.js.map +0 -1
- package/dist/core/p-623f911f.entry.js +0 -2
- package/dist/core/p-623f911f.entry.js.map +0 -1
- package/dist/core/p-6b68ee01.entry.js.map +0 -1
- package/dist/core/p-7d1381ef.entry.js +0 -2
- package/dist/core/p-7d1381ef.entry.js.map +0 -1
- package/dist/core/p-925da2d2.entry.js +0 -2
- package/dist/core/p-925da2d2.entry.js.map +0 -1
- package/dist/core/p-9e3178e8.entry.js +0 -2
- package/dist/core/p-9e3178e8.entry.js.map +0 -1
- package/dist/core/p-a9ed6a71.entry.js.map +0 -1
- package/dist/core/p-b612d68b.entry.js.map +0 -1
- package/dist/core/p-c51496ee.entry.js +0 -2
- package/dist/core/p-c51496ee.entry.js.map +0 -1
- package/dist/core/p-c7590421.entry.js +0 -2
- package/dist/core/p-c7590421.entry.js.map +0 -1
- package/dist/core/p-cd799087.js +0 -2
- package/dist/core/p-cd799087.js.map +0 -1
- package/dist/core/p-e189f1d0.entry.js +0 -2
- package/dist/core/p-e189f1d0.entry.js.map +0 -1
- package/dist/core/p-e30f2623.entry.js +0 -2
- package/dist/core/p-e30f2623.entry.js.map +0 -1
- package/dist/core/p-f9ee48f7.entry.js +0 -2
- package/dist/core/p-f9ee48f7.entry.js.map +0 -1
- package/dist/core/p-f9fcdd21.entry.js.map +0 -1
- package/dist/esm/helpers-451953f9.js.map +0 -1
- package/dist/esm/helpers-f328a7b6.js.map +0 -1
- package/dist/esm/ic-empty-state.entry.js.map +0 -1
- package/dist/esm/ic-pagination-bar.entry.js +0 -265
- package/dist/esm/ic-pagination-bar.entry.js.map +0 -1
- package/dist/types/components/ic-pagination/ic-pagination.types.d.ts +0 -6
- /package/dist/core/{p-b3d21d06.entry.js.map → p-005e83b0.entry.js.map} +0 -0
- /package/dist/core/{p-b8a3b16d.entry.js.map → p-05df3901.entry.js.map} +0 -0
- /package/dist/core/{p-3d0185a4.entry.js.map → p-0646ef0c.entry.js.map} +0 -0
- /package/dist/core/{p-e0e26834.entry.js.map → p-16c82b13.entry.js.map} +0 -0
- /package/dist/core/{p-094a0455.entry.js.map → p-1b35b6af.entry.js.map} +0 -0
- /package/dist/core/{p-849f43c3.entry.js.map → p-2170f59e.entry.js.map} +0 -0
- /package/dist/core/{p-8b1d128c.entry.js.map → p-4415c93f.entry.js.map} +0 -0
- /package/dist/core/{p-8ef85b15.entry.js.map → p-53374a27.entry.js.map} +0 -0
- /package/dist/core/{p-7c8f85fd.entry.js.map → p-53e45d51.entry.js.map} +0 -0
- /package/dist/core/{p-0707f2fc.entry.js.map → p-593f0318.entry.js.map} +0 -0
- /package/dist/core/{p-aabab75f.entry.js.map → p-5d5979fa.entry.js.map} +0 -0
- /package/dist/core/{p-c7b52046.entry.js.map → p-66af5958.entry.js.map} +0 -0
- /package/dist/core/{p-2ec33c00.entry.js.map → p-72cea8fd.entry.js.map} +0 -0
- /package/dist/core/{p-bbcd6d06.entry.js.map → p-872c3555.entry.js.map} +0 -0
- /package/dist/core/{p-dae1779d.entry.js.map → p-87743c4a.entry.js.map} +0 -0
- /package/dist/core/{p-55d819a6.entry.js.map → p-8cfc74da.entry.js.map} +0 -0
- /package/dist/core/{p-bf316546.entry.js.map → p-9729086f.entry.js.map} +0 -0
- /package/dist/core/{p-f4965c26.entry.js.map → p-9cc19e91.entry.js.map} +0 -0
- /package/dist/core/{p-da578abf.entry.js.map → p-9de20265.entry.js.map} +0 -0
- /package/dist/core/{p-169dcfdd.entry.js.map → p-a0e42564.entry.js.map} +0 -0
- /package/dist/core/{p-66b8f0a7.entry.js.map → p-b08f4371.entry.js.map} +0 -0
- /package/dist/core/{p-fdd8f3a5.entry.js.map → p-badfdf2a.entry.js.map} +0 -0
- /package/dist/core/{p-ed7379e3.entry.js.map → p-bebf535f.entry.js.map} +0 -0
- /package/dist/core/{p-981b6f12.entry.js.map → p-c3dabce4.entry.js.map} +0 -0
- /package/dist/core/{p-bcfbd465.entry.js.map → p-c7e932b5.entry.js.map} +0 -0
- /package/dist/core/{p-1a4bce88.entry.js.map → p-d09aaa5b.entry.js.map} +0 -0
- /package/dist/core/{p-1170c02d.entry.js.map → p-d71e9cb5.entry.js.map} +0 -0
- /package/dist/core/{p-e676069e.entry.js.map → p-f659e5eb.entry.js.map} +0 -0
- /package/dist/core/{p-ffa94639.entry.js.map → p-fc2551c0.entry.js.map} +0 -0
@@ -33,14 +33,14 @@ describe("ic-pagination-bar", () => {
|
|
33
33
|
it("should render with data pagination type", async () => {
|
34
34
|
const page = await newSpecPage({
|
35
35
|
components: [PaginationBar],
|
36
|
-
html: `<ic-pagination-bar total-items="100"
|
36
|
+
html: `<ic-pagination-bar total-items="100" range-label-type="data"></ic-pagination-bar>`,
|
37
37
|
});
|
38
38
|
expect(page.root).toMatchSnapshot();
|
39
39
|
});
|
40
40
|
it("should render with complex pagination controls", async () => {
|
41
41
|
const page = await newSpecPage({
|
42
|
-
components: [PaginationBar],
|
43
|
-
html: `<ic-pagination-bar total-items="100"
|
42
|
+
components: [PaginationBar, IcPagination],
|
43
|
+
html: `<ic-pagination-bar total-items="100" type="complex"></ic-pagination-bar>`,
|
44
44
|
});
|
45
45
|
expect(page.root).toMatchSnapshot();
|
46
46
|
});
|
@@ -54,7 +54,14 @@ describe("ic-pagination-bar", () => {
|
|
54
54
|
it("should render with a custom item label", async () => {
|
55
55
|
const page = await newSpecPage({
|
56
56
|
components: [PaginationBar],
|
57
|
-
html: `<ic-pagination-bar total-items="100"
|
57
|
+
html: `<ic-pagination-bar total-items="100" range-label-type="data" range-item-label="Row"></ic-pagination-bar>`,
|
58
|
+
});
|
59
|
+
expect(page.root).toMatchSnapshot();
|
60
|
+
});
|
61
|
+
it("should render without range text", async () => {
|
62
|
+
const page = await newSpecPage({
|
63
|
+
components: [PaginationBar],
|
64
|
+
html: `<ic-pagination-bar total-items="100" hide-range-label="true"></ic-pagination-bar>`,
|
58
65
|
});
|
59
66
|
expect(page.root).toMatchSnapshot();
|
60
67
|
});
|
@@ -99,6 +106,12 @@ describe("ic-pagination-bar", () => {
|
|
99
106
|
{ label: "All", value: "100" },
|
100
107
|
];
|
101
108
|
await page.waitForChanges();
|
109
|
+
expect(page.rootInstance.displayedItemsPerPageOptions).toEqual([
|
110
|
+
{ label: "15", value: "15" },
|
111
|
+
{ label: "30", value: "30" },
|
112
|
+
{ label: "60", value: "60" },
|
113
|
+
{ label: "All", value: "100" },
|
114
|
+
]);
|
102
115
|
expect(page.root).toMatchSnapshot();
|
103
116
|
});
|
104
117
|
it("should only allow a maximum of 4 custom items per page options", async () => {
|
@@ -116,6 +129,12 @@ describe("ic-pagination-bar", () => {
|
|
116
129
|
];
|
117
130
|
page.rootInstance.trimItemsPerPageOptions();
|
118
131
|
await page.waitForChanges();
|
132
|
+
expect(page.rootInstance.displayedItemsPerPageOptions).toEqual([
|
133
|
+
{ label: "25", value: "25" },
|
134
|
+
{ label: "50", value: "50" },
|
135
|
+
{ label: "75", value: "75" },
|
136
|
+
{ label: "All", value: "150" },
|
137
|
+
]);
|
119
138
|
expect(page.root).toMatchSnapshot();
|
120
139
|
});
|
121
140
|
it("should remove items per page options larger than the maximum number of items", async () => {
|
@@ -131,7 +150,11 @@ describe("ic-pagination-bar", () => {
|
|
131
150
|
{ label: "All", value: "100" },
|
132
151
|
];
|
133
152
|
await page.waitForChanges();
|
134
|
-
expect(page.
|
153
|
+
expect(page.rootInstance.displayedItemsPerPageOptions).toEqual([
|
154
|
+
{ label: "25", value: "25" },
|
155
|
+
{ label: "50", value: "50" },
|
156
|
+
{ label: "All", value: "100" },
|
157
|
+
]);
|
135
158
|
});
|
136
159
|
it("should wrap pagination when the device size is small", async () => {
|
137
160
|
const page = await newSpecPage({
|
@@ -216,12 +239,12 @@ describe("ic-pagination-bar", () => {
|
|
216
239
|
});
|
217
240
|
it("should error immediately when an invalid page is entered before it is submitted", async () => {
|
218
241
|
const page = await newSpecPage({
|
219
|
-
components: [PaginationBar, IcPagination, IcTooltip],
|
242
|
+
components: [PaginationBar, IcPagination, IcTooltip, IcTextField],
|
220
243
|
html: `<ic-pagination-bar total-items="100" show-go-to-page-control="true"></ic-pagination-bar>`,
|
221
244
|
});
|
222
245
|
const paginationBar = document.querySelector("ic-pagination-bar");
|
223
246
|
const input = paginationBar.shadowRoot.querySelector("ic-text-field");
|
224
|
-
expect(input.validationStatus).
|
247
|
+
expect(input.validationStatus).toBe("");
|
225
248
|
input.value = "15";
|
226
249
|
input.focus();
|
227
250
|
await page.rootInstance.handleInputChange();
|
@@ -230,13 +253,13 @@ describe("ic-pagination-bar", () => {
|
|
230
253
|
});
|
231
254
|
it("should remain in error state if enter is pressed while in error state", async () => {
|
232
255
|
const page = await newSpecPage({
|
233
|
-
components: [PaginationBar, IcPagination, IcTooltip],
|
256
|
+
components: [PaginationBar, IcPagination, IcTooltip, IcTextField],
|
234
257
|
html: `<ic-pagination-bar total-items="100" show-go-to-page-control="true"></ic-pagination-bar>`,
|
235
258
|
});
|
236
259
|
const paginationBar = document.querySelector("ic-pagination-bar");
|
237
260
|
const input = paginationBar.shadowRoot.querySelector("ic-text-field");
|
238
261
|
const event = new KeyboardEvent("keydown", { key: "Enter" });
|
239
|
-
expect(input.validationStatus).
|
262
|
+
expect(input.validationStatus).toBe("");
|
240
263
|
input.value = "15";
|
241
264
|
input.focus();
|
242
265
|
await page.rootInstance.handleInputChange();
|
@@ -398,7 +421,8 @@ describe("ic-pagination-bar", () => {
|
|
398
421
|
await page.waitForChanges();
|
399
422
|
expect(event).toHaveBeenCalled();
|
400
423
|
});
|
401
|
-
|
424
|
+
// this test currently fails - will need to be fixed before component is moved from canary
|
425
|
+
it.skip("should focus the go to page text-field when clicking its label", async () => {
|
402
426
|
const page = await newSpecPage({
|
403
427
|
components: [PaginationBar, IcPagination, IcTextField, IcTypography],
|
404
428
|
html: `<ic-pagination-bar total-items="100" show-items-per-page="false" show-go-to-page-control="true"></ic-pagination-bar>`,
|
@@ -411,5 +435,18 @@ describe("ic-pagination-bar", () => {
|
|
411
435
|
await page.waitForChanges();
|
412
436
|
expect(event).toHaveBeenCalled();
|
413
437
|
});
|
438
|
+
it("should update pagination when number of item changes", async () => {
|
439
|
+
const page = await newSpecPage({
|
440
|
+
components: [PaginationBar],
|
441
|
+
html: `<ic-pagination-bar total-items="0"></ic-pagination-bar>`,
|
442
|
+
});
|
443
|
+
expect(page.root).toMatchSnapshot();
|
444
|
+
page.root.totalItems = "100";
|
445
|
+
await page.waitForChanges();
|
446
|
+
expect(page.root).toMatchSnapshot();
|
447
|
+
page.root.totalItems = "50";
|
448
|
+
await page.waitForChanges();
|
449
|
+
expect(page.root).toMatchSnapshot();
|
450
|
+
});
|
414
451
|
});
|
415
452
|
//# sourceMappingURL=ic-pagination-bar.spec.js.map
|
package/dist/collection/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ic-pagination-bar.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { PaginationBar } from \"../../ic-pagination-bar\";\nimport { IcPagination } from \"@ukic/web-components/dist/components/ic-pagination\";\nimport { IcButton } from \"@ukic/web-components/dist/components/ic-button\";\nimport { IcTooltip } from \"@ukic/web-components/dist/components/ic-tooltip\";\nimport { IcTextField } from \"@ukic/web-components/dist/components/ic-text-field\";\nimport { DEVICE_SIZES } from \"@ukic/web-components/dist/types/utils/helpers\";\nimport { waitForTimeout } from \"../../../../testspec.setup\";\nimport { newSpecPage } from \"@stencil/core/testing\";\nimport { IcSelect } from \"@ukic/web-components/dist/components/ic-select\";\nimport { IcTypography } from \"@ukic/web-components/dist/components/ic-typography\";\n\ndescribe(\"ic-pagination-bar\", () => {\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with items per page controls\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" show-items-per-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with go to page controls\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with data pagination type\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" pagination-type=\"data\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with complex pagination controls\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" pagination-controls=\"complex\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a custom page label\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" page-label=\"Sheets\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a custom item label\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" pagination-type=\"data\" item-label=\"Rows\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with left alignment\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" alignment=\"left\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with space between alignment\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" alignment=\"space-between\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with light appearance\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" appearance=\"light\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with dark appearance\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" apperance=\"dark\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with custom items per page options\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" show-items-per-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n paginationBar.itemsPerPageOptions = [\n { label: \"15\", value: \"15\" },\n { label: \"30\", value: \"30\" },\n { label: \"60\", value: \"60\" },\n { label: \"All\", value: \"100\" },\n ];\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should only allow a maximum of 4 custom items per page options\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"150\" show-items-per-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n paginationBar.itemsPerPageOptions = [\n { label: \"25\", value: \"25\" },\n { label: \"50\", value: \"50\" },\n { label: \"75\", value: \"75\" },\n { label: \"100\", value: \"100\" },\n { label: \"All\", value: \"150\" },\n ];\n\n page.rootInstance.trimItemsPerPageOptions();\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should remove items per page options larger than the maximum number of items\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" show-items-per-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n paginationBar.itemsPerPageOptions = [\n { label: \"25\", value: \"25\" },\n { label: \"50\", value: \"50\" },\n { label: \"150\", value: \"150\" },\n { label: \"All\", value: \"100\" },\n ];\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should wrap pagination when the device size is small\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n await page.rootInstance.runResizeObserver();\n\n await page.waitForChanges();\n\n await page.rootInstance.resizeObserverCallback(DEVICE_SIZES.S);\n\n await page.waitForChanges();\n\n await page.rootInstance.paginationShouldWrap();\n\n await page.waitForChanges();\n\n expect(page).toMatchSnapshot();\n\n await page.rootInstance.disconnectedCallback();\n });\n\n it(\"should adjust the total page count when items per page is changed\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination],\n html: `<ic-pagination-bar total-items=\"100\" show-items-per-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const select = paginationBar.shadowRoot.querySelector(\"ic-select\");\n\n const text = paginationBar.shadowRoot.querySelector(\n \".page-pagination-label\"\n );\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n\n select.value = \"25\";\n\n page.rootInstance.changeItemsPerPage();\n\n page.rootInstance.setNumberPages();\n\n await page.waitForChanges();\n\n expect(select.value).toEqual(\"25\");\n\n expect(text.textContent).toEqual(\"Page 1 of 4\");\n });\n\n it(\"should change page when the pagination controls are clicked\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcButton],\n html: `<ic-pagination-bar total-items=\"100\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const pagination = paginationBar.shadowRoot.querySelector(\"ic-pagination\");\n\n const nextButton = pagination.shadowRoot.querySelector(\n \"#next-page-button\"\n ) as HTMLElement;\n\n const text = paginationBar.shadowRoot.querySelector(\n \".page-pagination-label\"\n );\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n\n await nextButton.click();\n\n page.rootInstance.changePage(2);\n\n await page.waitForChanges();\n\n expect(text.textContent).toEqual(\"Page 2 of 10\");\n });\n\n it(\"should change page when the go to page button is clicked\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const button = paginationBar.shadowRoot.querySelector(\"ic-button\");\n\n const text = paginationBar.shadowRoot.querySelector(\n \".page-pagination-label\"\n );\n\n const currentPage = page.rootInstance.currentPage;\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n\n expect(currentPage).toEqual(1);\n\n input.value = \"3\";\n\n button.click();\n\n await page.waitForChanges();\n\n expect(text.textContent).toEqual(\"Page 3 of 10\");\n });\n\n it(\"should change page when enter is pressed on the go to page input\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const text = paginationBar.shadowRoot.querySelector(\n \".page-pagination-label\"\n );\n\n const currentPage = page.rootInstance.currentPage;\n\n const event = new KeyboardEvent(\"keydown\", { key: \"Enter\" });\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n\n expect(currentPage).toEqual(1);\n\n input.value = \"3\";\n\n input.focus();\n\n await page.rootInstance.handleKeydown(event);\n\n await waitForTimeout(100);\n\n await page.waitForChanges();\n\n expect(text.textContent).toEqual(\"Page 3 of 10\");\n });\n\n it(\"should error immediately when an invalid page is entered before it is submitted\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n expect(input.validationStatus).toBeUndefined();\n\n input.value = \"15\";\n\n input.focus();\n\n await page.rootInstance.handleInputChange();\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"error\");\n });\n\n it(\"should remain in error state if enter is pressed while in error state\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const event = new KeyboardEvent(\"keydown\", { key: \"Enter\" });\n\n expect(input.validationStatus).toBeUndefined();\n\n input.value = \"15\";\n\n input.focus();\n\n await page.rootInstance.handleInputChange();\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"error\");\n\n page.rootInstance.handleKeydown(event);\n\n await waitForTimeout(100);\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"error\");\n });\n\n it(\"should not change page when the go to page button is clicked with an invalid page\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTextField],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const button = paginationBar.shadowRoot.querySelector(\"ic-button\");\n\n const text = paginationBar.shadowRoot.querySelector(\n \".page-pagination-label\"\n );\n\n const currentPage = page.rootInstance.currentPage;\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n\n expect(currentPage).toEqual(1);\n\n input.value = \"15\";\n\n button.click();\n\n await page.waitForChanges();\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n });\n\n it(\"should not change page when enter is pressed on the go to page input with an invalid page\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip, IcTextField],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const text = paginationBar.shadowRoot.querySelector(\n \".page-pagination-label\"\n );\n\n const currentPage = page.rootInstance.currentPage;\n\n const event = new KeyboardEvent(\"keydown\", { key: \"Enter\" });\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n\n expect(currentPage).toEqual(1);\n\n input.value = \"15\";\n\n input.focus();\n\n await page.rootInstance.handleKeydown(event);\n\n await waitForTimeout(100);\n\n await page.waitForChanges();\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n });\n\n it(\"should hide the tooltip when the input loses focus\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const tooltip = paginationBar.shadowRoot.querySelector(\"ic-tooltip\");\n\n expect(tooltip.getAttribute(\"data-show\")).toBeNull();\n\n input.focus();\n\n input.value = \"15\";\n\n tooltip.displayTooltip(true, false);\n\n await page.waitForChanges();\n\n input.blur();\n\n await page.waitForChanges();\n\n expect(tooltip.getAttribute(\"data-show\")).toBeNull();\n });\n\n it(\"should remove the error status when the input loses focus if the value is not invalid\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n input.focus();\n\n input.value = \"\";\n\n input.validationStatus = \"error\";\n\n await page.waitForChanges();\n\n input.blur();\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toBe(\"\");\n });\n\n it(\"should show the tooltip when the input is focussed if it is in an error state\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n input.focus();\n\n input.value = \"15\";\n\n input.validationStatus = \"error\";\n\n await page.waitForChanges();\n\n input.blur();\n\n await page.waitForChanges();\n\n input.focus();\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toBe(\"error\");\n });\n\n it(\"should error when a non numeric value is entered\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const event = new KeyboardEvent(\"keydown\", { key: \"a\" });\n\n expect(input.validationStatus).toBeUndefined();\n\n input.focus();\n\n await page.rootInstance.handleKeyUp(event);\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"error\");\n });\n\n it(\"should remove the non-numeric error when a number is entered\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const errorEvent = new KeyboardEvent(\"keydown\", { key: \"a\" });\n\n const successEvent = new KeyboardEvent(\"keydown\", { key: \"5\" });\n\n expect(input.validationStatus).toBeUndefined();\n\n input.focus();\n\n await page.rootInstance.handleKeyUp(errorEvent);\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"error\");\n\n await page.rootInstance.handleKeydown(successEvent);\n\n await waitForTimeout(100);\n\n await page.rootInstance.handleInputChange();\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"\");\n });\n\n it(\"should remove the error state when backspace is pressed\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const event = new KeyboardEvent(\"keydown\", { key: \"Backspace\" });\n\n expect(input.validationStatus).toBeUndefined();\n\n input.focus();\n\n input.value = \"15\";\n\n input.validationStatus = \"error\";\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"error\");\n\n await page.rootInstance.handleKeydown(event);\n\n await waitForTimeout(100);\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"\");\n });\n\n it(\"should focus the number of items select when clicking its label\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcSelect, IcTypography],\n html: `<ic-pagination-bar total-items=\"100\" show-items-per-page-control=\"true\"></ic-pagination-bar>`,\n });\n const label = document\n .querySelector(\"ic-pagination-bar\")\n .shadowRoot.querySelector(\n \".items-per-page-control-label\"\n ) as HTMLIcTypographyElement;\n\n const event = jest.spyOn(IcSelect.prototype, \"setFocus\");\n label.click();\n\n await page.waitForChanges();\n\n expect(event).toHaveBeenCalled();\n });\n\n it(\"should focus the go to page text-field when clicking its label\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTextField, IcTypography],\n html: `<ic-pagination-bar total-items=\"100\" show-items-per-page=\"false\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n const label = document\n .querySelector(\"ic-pagination-bar\")\n .shadowRoot.querySelector(\"ic-typography\");\n\n const event = jest.spyOn(IcTextField.prototype, \"setFocus\");\n label.click();\n\n await page.waitForChanges();\n\n expect(event).toHaveBeenCalled();\n });\n});\n"]}
|
1
|
+
{"version":3,"file":"ic-pagination-bar.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { PaginationBar } from \"../../ic-pagination-bar\";\nimport { IcPagination } from \"@ukic/web-components/dist/components/ic-pagination\";\nimport { IcButton } from \"@ukic/web-components/dist/components/ic-button\";\nimport { IcTooltip } from \"@ukic/web-components/dist/components/ic-tooltip\";\nimport { IcTextField } from \"@ukic/web-components/dist/components/ic-text-field\";\nimport { DEVICE_SIZES } from \"@ukic/web-components/dist/types/utils/helpers\";\nimport { waitForTimeout } from \"../../../../testspec.setup\";\nimport { newSpecPage } from \"@stencil/core/testing\";\nimport { IcSelect } from \"@ukic/web-components/dist/components/ic-select\";\nimport { IcTypography } from \"@ukic/web-components/dist/components/ic-typography\";\n\ndescribe(\"ic-pagination-bar\", () => {\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with items per page controls\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" show-items-per-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with go to page controls\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with data pagination type\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" range-label-type=\"data\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with complex pagination controls\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination],\n html: `<ic-pagination-bar total-items=\"100\" type=\"complex\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a custom page label\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" page-label=\"Sheets\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a custom item label\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" range-label-type=\"data\" range-item-label=\"Row\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render without range text\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" hide-range-label=\"true\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with left alignment\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" alignment=\"left\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with space between alignment\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" alignment=\"space-between\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with light appearance\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" appearance=\"light\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with dark appearance\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" apperance=\"dark\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with custom items per page options\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" show-items-per-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n paginationBar.itemsPerPageOptions = [\n { label: \"15\", value: \"15\" },\n { label: \"30\", value: \"30\" },\n { label: \"60\", value: \"60\" },\n { label: \"All\", value: \"100\" },\n ];\n\n await page.waitForChanges();\n\n expect(page.rootInstance.displayedItemsPerPageOptions).toEqual([\n { label: \"15\", value: \"15\" },\n { label: \"30\", value: \"30\" },\n { label: \"60\", value: \"60\" },\n { label: \"All\", value: \"100\" },\n ]);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should only allow a maximum of 4 custom items per page options\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"150\" show-items-per-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n paginationBar.itemsPerPageOptions = [\n { label: \"25\", value: \"25\" },\n { label: \"50\", value: \"50\" },\n { label: \"75\", value: \"75\" },\n { label: \"100\", value: \"100\" },\n { label: \"All\", value: \"150\" },\n ];\n\n page.rootInstance.trimItemsPerPageOptions();\n\n await page.waitForChanges();\n\n expect(page.rootInstance.displayedItemsPerPageOptions).toEqual([\n { label: \"25\", value: \"25\" },\n { label: \"50\", value: \"50\" },\n { label: \"75\", value: \"75\" },\n { label: \"All\", value: \"150\" },\n ]);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should remove items per page options larger than the maximum number of items\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"100\" show-items-per-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n paginationBar.itemsPerPageOptions = [\n { label: \"25\", value: \"25\" },\n { label: \"50\", value: \"50\" },\n { label: \"150\", value: \"150\" },\n { label: \"All\", value: \"100\" },\n ];\n\n await page.waitForChanges();\n\n expect(page.rootInstance.displayedItemsPerPageOptions).toEqual([\n { label: \"25\", value: \"25\" },\n { label: \"50\", value: \"50\" },\n { label: \"All\", value: \"100\" },\n ]);\n });\n\n it(\"should wrap pagination when the device size is small\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n await page.rootInstance.runResizeObserver();\n\n await page.waitForChanges();\n\n await page.rootInstance.resizeObserverCallback(DEVICE_SIZES.S);\n\n await page.waitForChanges();\n\n await page.rootInstance.paginationShouldWrap();\n\n await page.waitForChanges();\n\n expect(page).toMatchSnapshot();\n\n await page.rootInstance.disconnectedCallback();\n });\n\n it(\"should adjust the total page count when items per page is changed\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination],\n html: `<ic-pagination-bar total-items=\"100\" show-items-per-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const select = paginationBar.shadowRoot.querySelector(\"ic-select\");\n\n const text = paginationBar.shadowRoot.querySelector(\n \".page-pagination-label\"\n );\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n\n select.value = \"25\";\n\n page.rootInstance.changeItemsPerPage();\n\n page.rootInstance.setNumberPages();\n\n await page.waitForChanges();\n\n expect(select.value).toEqual(\"25\");\n\n expect(text.textContent).toEqual(\"Page 1 of 4\");\n });\n\n it(\"should change page when the pagination controls are clicked\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcButton],\n html: `<ic-pagination-bar total-items=\"100\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const pagination = paginationBar.shadowRoot.querySelector(\"ic-pagination\");\n\n const nextButton = pagination.shadowRoot.querySelector(\n \"#next-page-button\"\n ) as HTMLElement;\n\n const text = paginationBar.shadowRoot.querySelector(\n \".page-pagination-label\"\n );\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n\n await nextButton.click();\n\n page.rootInstance.changePage(2);\n\n await page.waitForChanges();\n\n expect(text.textContent).toEqual(\"Page 2 of 10\");\n });\n\n it(\"should change page when the go to page button is clicked\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const button = paginationBar.shadowRoot.querySelector(\"ic-button\");\n\n const text = paginationBar.shadowRoot.querySelector(\n \".page-pagination-label\"\n );\n\n const currentPage = page.rootInstance.currentPage;\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n\n expect(currentPage).toEqual(1);\n\n input.value = \"3\";\n\n button.click();\n\n await page.waitForChanges();\n\n expect(text.textContent).toEqual(\"Page 3 of 10\");\n });\n\n it(\"should change page when enter is pressed on the go to page input\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const text = paginationBar.shadowRoot.querySelector(\n \".page-pagination-label\"\n );\n\n const currentPage = page.rootInstance.currentPage;\n\n const event = new KeyboardEvent(\"keydown\", { key: \"Enter\" });\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n\n expect(currentPage).toEqual(1);\n\n input.value = \"3\";\n\n input.focus();\n\n await page.rootInstance.handleKeydown(event);\n\n await waitForTimeout(100);\n\n await page.waitForChanges();\n\n expect(text.textContent).toEqual(\"Page 3 of 10\");\n });\n\n it(\"should error immediately when an invalid page is entered before it is submitted\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip, IcTextField],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n expect(input.validationStatus).toBe(\"\");\n\n input.value = \"15\";\n\n input.focus();\n\n await page.rootInstance.handleInputChange();\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"error\");\n });\n\n it(\"should remain in error state if enter is pressed while in error state\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip, IcTextField],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const event = new KeyboardEvent(\"keydown\", { key: \"Enter\" });\n\n expect(input.validationStatus).toBe(\"\");\n\n input.value = \"15\";\n\n input.focus();\n\n await page.rootInstance.handleInputChange();\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"error\");\n\n page.rootInstance.handleKeydown(event);\n\n await waitForTimeout(100);\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"error\");\n });\n\n it(\"should not change page when the go to page button is clicked with an invalid page\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTextField],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const button = paginationBar.shadowRoot.querySelector(\"ic-button\");\n\n const text = paginationBar.shadowRoot.querySelector(\n \".page-pagination-label\"\n );\n\n const currentPage = page.rootInstance.currentPage;\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n\n expect(currentPage).toEqual(1);\n\n input.value = \"15\";\n\n button.click();\n\n await page.waitForChanges();\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n });\n\n it(\"should not change page when enter is pressed on the go to page input with an invalid page\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip, IcTextField],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const text = paginationBar.shadowRoot.querySelector(\n \".page-pagination-label\"\n );\n\n const currentPage = page.rootInstance.currentPage;\n\n const event = new KeyboardEvent(\"keydown\", { key: \"Enter\" });\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n\n expect(currentPage).toEqual(1);\n\n input.value = \"15\";\n\n input.focus();\n\n await page.rootInstance.handleKeydown(event);\n\n await waitForTimeout(100);\n\n await page.waitForChanges();\n\n expect(text.textContent).toEqual(\"Page 1 of 10\");\n });\n\n it(\"should hide the tooltip when the input loses focus\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const tooltip = paginationBar.shadowRoot.querySelector(\"ic-tooltip\");\n\n expect(tooltip.getAttribute(\"data-show\")).toBeNull();\n\n input.focus();\n\n input.value = \"15\";\n\n tooltip.displayTooltip(true, false);\n\n await page.waitForChanges();\n\n input.blur();\n\n await page.waitForChanges();\n\n expect(tooltip.getAttribute(\"data-show\")).toBeNull();\n });\n\n it(\"should remove the error status when the input loses focus if the value is not invalid\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n input.focus();\n\n input.value = \"\";\n\n input.validationStatus = \"error\";\n\n await page.waitForChanges();\n\n input.blur();\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toBe(\"\");\n });\n\n it(\"should show the tooltip when the input is focussed if it is in an error state\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n input.focus();\n\n input.value = \"15\";\n\n input.validationStatus = \"error\";\n\n await page.waitForChanges();\n\n input.blur();\n\n await page.waitForChanges();\n\n input.focus();\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toBe(\"error\");\n });\n\n it(\"should error when a non numeric value is entered\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const event = new KeyboardEvent(\"keydown\", { key: \"a\" });\n\n expect(input.validationStatus).toBeUndefined();\n\n input.focus();\n\n await page.rootInstance.handleKeyUp(event);\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"error\");\n });\n\n it(\"should remove the non-numeric error when a number is entered\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const errorEvent = new KeyboardEvent(\"keydown\", { key: \"a\" });\n\n const successEvent = new KeyboardEvent(\"keydown\", { key: \"5\" });\n\n expect(input.validationStatus).toBeUndefined();\n\n input.focus();\n\n await page.rootInstance.handleKeyUp(errorEvent);\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"error\");\n\n await page.rootInstance.handleKeydown(successEvent);\n\n await waitForTimeout(100);\n\n await page.rootInstance.handleInputChange();\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"\");\n });\n\n it(\"should remove the error state when backspace is pressed\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTooltip],\n html: `<ic-pagination-bar total-items=\"100\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n\n const paginationBar = document.querySelector(\"ic-pagination-bar\");\n\n const input = paginationBar.shadowRoot.querySelector(\"ic-text-field\");\n\n const event = new KeyboardEvent(\"keydown\", { key: \"Backspace\" });\n\n expect(input.validationStatus).toBeUndefined();\n\n input.focus();\n\n input.value = \"15\";\n\n input.validationStatus = \"error\";\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"error\");\n\n await page.rootInstance.handleKeydown(event);\n\n await waitForTimeout(100);\n\n await page.waitForChanges();\n\n expect(input.validationStatus).toEqual(\"\");\n });\n\n it(\"should focus the number of items select when clicking its label\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcSelect, IcTypography],\n html: `<ic-pagination-bar total-items=\"100\" show-items-per-page-control=\"true\"></ic-pagination-bar>`,\n });\n const label = document\n .querySelector(\"ic-pagination-bar\")\n .shadowRoot.querySelector(\n \".items-per-page-control-label\"\n ) as HTMLIcTypographyElement;\n\n const event = jest.spyOn(IcSelect.prototype, \"setFocus\");\n label.click();\n\n await page.waitForChanges();\n\n expect(event).toHaveBeenCalled();\n });\n\n // this test currently fails - will need to be fixed before component is moved from canary\n it.skip(\"should focus the go to page text-field when clicking its label\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar, IcPagination, IcTextField, IcTypography],\n html: `<ic-pagination-bar total-items=\"100\" show-items-per-page=\"false\" show-go-to-page-control=\"true\"></ic-pagination-bar>`,\n });\n const label = document\n .querySelector(\"ic-pagination-bar\")\n .shadowRoot.querySelector(\"ic-typography\");\n\n const event = jest.spyOn(IcTextField.prototype, \"setFocus\");\n label.click();\n\n await page.waitForChanges();\n\n expect(event).toHaveBeenCalled();\n });\n\n it(\"should update pagination when number of item changes\", async () => {\n const page = await newSpecPage({\n components: [PaginationBar],\n html: `<ic-pagination-bar total-items=\"0\"></ic-pagination-bar>`,\n });\n\n expect(page.root).toMatchSnapshot();\n\n page.root.totalItems = \"100\";\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n\n page.root.totalItems = \"50\";\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n});\n"]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/utils/types.ts"],"names":[],"mappings":"AAwBA,MAAM,CAAN,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;IACnB,sCAAe,CAAA;IACf,0CAAmB,CAAA;AACrB,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,QAI9B;
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/utils/types.ts"],"names":[],"mappings":"AAwBA,MAAM,CAAN,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;IACnB,sCAAe,CAAA;IACf,0CAAmB,CAAA;AACrB,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,QAI9B;AAsED,MAAM,CAAN,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC/B,4CAAmB,CAAA;IACnB,sCAAa,CAAA;IACb,wCAAe,CAAA;AACjB,CAAC,EAJW,qBAAqB,KAArB,qBAAqB,QAIhC;AA4ED,MAAM,CAAN,IAAY,iBAaX;AAbD,WAAY,iBAAiB;IAC3B,+DAAS,CAAA;IACT,iEAAU,CAAA;IACV,2DAAO,CAAA;IACP,2DAAO,CAAA;IACP,uDAAK,CAAA;IACL,yDAAM,CAAA;IACN,yDAAM,CAAA;IACN,6DAAQ,CAAA;IACR,mEAAW,CAAA;IACX,+DAAS,CAAA;IACT,kEAAU,CAAA;IACV,kEAAU,CAAA;AACZ,CAAC,EAbW,iBAAiB,KAAjB,iBAAiB,QAa5B;AAED,MAAM,CAAN,IAAY,eAQX;AARD,WAAY,eAAe;IACzB,mDAAK,CAAA;IACL,mDAAK,CAAA;IACL,mDAAK,CAAA;IACL,mDAAK,CAAA;IACL,mDAAK,CAAA;IACL,mDAAK,CAAA;IACL,mDAAK,CAAA;AACP,CAAC,EARW,eAAe,KAAf,eAAe,QAQ1B;AAED,MAAM,CAAN,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,+CAAQ,CAAA;IACR,+CAAQ,CAAA;IACR,iDAAS,CAAA;IACT,qDAAW,CAAA;IACX,mDAAU,CAAA;IACV,+CAAQ,CAAA;IACR,mDAAU,CAAA;AACZ,CAAC,EARW,UAAU,KAAV,UAAU,QAQrB;AAED,MAAM,CAAN,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,+CAAU,CAAA;IACV,+CAAU,CAAA;IACV,iDAAW,CAAA;IACX,qDAAa,CAAA;IACb,mDAAY,CAAA;IACZ,+CAAU,CAAA;IACV,mDAAY,CAAA;AACd,CAAC,EARW,UAAU,KAAV,UAAU,QAQrB","sourcesContent":["export type IcFocusableComponents =\n | HTMLIcBreadcrumbElement\n | HTMLIcButtonElement\n | HTMLIcCardElement\n | HTMLIcCheckboxElement\n | HTMLIcChipElement\n | HTMLIcLinkElement\n | HTMLIcNavigationButtonElement\n | HTMLIcNavigationGroupElement\n | HTMLIcNavigationItemElement\n | HTMLIcRadioOptionElement\n | HTMLIcSearchBarElement\n | HTMLIcSelectElement\n | HTMLIcSwitchElement\n | HTMLIcTabElement\n | HTMLIcTextFieldElement;\n\nexport type IcStatusVariants =\n | \"neutral\"\n | \"info\"\n | \"warning\"\n | \"error\"\n | \"success\";\n\nexport enum IcInformationStatus {\n Warning = \"warning\",\n Error = \"error\",\n Success = \"success\",\n}\n\nexport type IcSizes = \"default\" | \"large\" | \"small\";\n\nexport type IcSizesNoLarge = \"default\" | \"small\";\n\nexport type IcInformationStatusOrEmpty = \"warning\" | \"error\" | \"success\" | \"\";\n\nexport type IcNavType = \"side\" | \"top\" | \"page-header\";\n\n// From: https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete\nexport type IcAutocompleteTypes =\n | \"on\"\n | \"off\"\n | \"name\"\n | \"honorific-prefix\"\n | \"given-name\"\n | \"additional-name\"\n | \"family-name\"\n | \"honorific-suffix\"\n | \"nickname\"\n | \"email\"\n | \"username\"\n | \"new-password\"\n | \"current-password\"\n | \"one-time-code\"\n | \"organization-title\"\n | \"organization\"\n | \"street-address\"\n | \"address-line1\"\n | \"address-line2\"\n | \"address-line3\"\n | \"address-level4\"\n | \"address-level3\"\n | \"address-level2\"\n | \"address-level1\"\n | \"country\"\n | \"country-name\"\n | \"postal-code\"\n | \"cc-name\"\n | \"cc-given-name\"\n | \"cc-additional-name\"\n | \"cc-family-name\"\n | \"cc-family-name\"\n | \"cc-number\"\n | \"cc-exp\"\n | \"cc-exp-month\"\n | \"cc-exp-year\"\n | \"cc-csc\"\n | \"cc-type\"\n | \"transaction-currency\"\n | \"transaction-amount\"\n | \"language\"\n | \"bday\"\n | \"bday-day\"\n | \"bday-month\"\n | \"bday-year\"\n | \"sex\"\n | \"tel\"\n | \"tel-country-code\"\n | \"tel-national\"\n | \"tel-area-code\"\n | \"tel-local\"\n | \"tel-extension\"\n | \"impp\"\n | \"url\"\n | \"photo\";\n\nexport type IcAlignment = \"left\" | \"center\" | \"full-width\";\n\nexport enum IcThemeForegroundEnum {\n Default = \"default\",\n Dark = \"dark\",\n Light = \"light\",\n}\n\nexport type IcThemeForeground = \"default\" | \"dark\" | \"light\";\n\nexport type IcThemeForegroundNoDefault = \"dark\" | \"light\";\n\nexport type IcTheme = {\n mode: IcThemeForeground;\n color: IcColorRGB;\n};\n\nexport type IcAdditionalFieldTypes = \"static\" | \"dynamic\";\n\nexport type IcColorRGB = {\n r: number;\n g: number;\n b: number;\n};\n\nexport type IcColorRGBA = IcColorRGB & {\n a: number;\n};\n\nexport type IcActivationTypes = \"automatic\" | \"manual\";\n\nexport type IcAutocorrectStates = \"on\" | \"off\";\n\nexport type IcNavParentDetails = {\n navType: IcNavType | \"\";\n parent: HTMLElement;\n};\n\nexport type IcTypographyVariants =\n | \"h1\"\n | \"h2\"\n | \"h3\"\n | \"h4\"\n | \"subtitle-large\"\n | \"subtitle-small\"\n | \"body\"\n | \"label\"\n | \"label-uppercase\"\n | \"caption\"\n | \"caption-uppercase\"\n | \"code-large\"\n | \"code-small\"\n | \"code-extra-small\"\n | \"badge\"\n | \"badge-small\";\n\n/**\n * @interface IcMenuOption\n * @field {string} A label field to options. Defaults to \"label\", but can have any custom name.\n * @field {string} A value field to options. Defaults to \"value\", but can have any custom name.\n */\nexport interface IcMenuOption {\n description?: string;\n disabled?: boolean;\n recommended?: boolean;\n children?: IcMenuOption[];\n loading?: boolean;\n timedOut?: boolean;\n [key: string]: any;\n element?: {\n component: any;\n ariaLabel: string;\n };\n icon?: any;\n}\n\nexport type IcSearchMatchPositions = \"start\" | \"anywhere\";\n\nexport type IcCallbackFunctionNoReturn = (...args: unknown[]) => void;\n\nexport type IcDateFormat = \"DD/MM/YYYY\" | \"MM/DD/YYYY\" | \"YYYY/MM/DD\";\n\nexport enum IcDateInputMonths {\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n}\n\nexport enum IcShortDayNames {\n \"Sun\",\n \"Mon\",\n \"Tue\",\n \"Wed\",\n \"Thu\",\n \"Fri\",\n \"Sat\",\n}\n\nexport enum IcDayNames {\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\",\n}\n\nexport enum IcWeekDays {\n Sunday = 0,\n Monday = 1,\n Tuesday = 2,\n Wednesday = 3,\n Thursday = 4,\n Friday = 5,\n Saturday = 6,\n}\n\nexport interface IcValueEventDetail {\n value: string | string[];\n keyPressed?: string;\n}\n"]}
|
@@ -382,8 +382,9 @@ const getThemeColorBrightness = () => {
|
|
382
382
|
/**
|
383
383
|
* Returns if dark or light foreground colors should be used for color contrast reasons
|
384
384
|
* @returns "dark" or "light"
|
385
|
+
* @param brightness - Optional custom brightness value. Defaults to `getThemeColorBrightness`
|
385
386
|
*/
|
386
|
-
const getThemeForegroundColor = (
|
387
|
+
const getThemeForegroundColor = (brightness = getThemeColorBrightness()) => brightness > DARK_MODE_THRESHOLD
|
387
388
|
? IcThemeForegroundEnum.Dark
|
388
389
|
: IcThemeForegroundEnum.Light;
|
389
390
|
const getSlot = (element, name) => {
|
@@ -413,17 +414,17 @@ const getSlotElements = (slot) => {
|
|
413
414
|
return slot === null ? null : [slot];
|
414
415
|
}
|
415
416
|
};
|
416
|
-
const getNavItemParentDetails = (
|
417
|
+
const getNavItemParentDetails = ({ parentElement, }) => {
|
417
418
|
let navType = { navType: "", parent: null };
|
418
|
-
switch (
|
419
|
+
switch (parentElement.tagName) {
|
419
420
|
case "IC-NAVIGATION-GROUP":
|
420
|
-
navType = getNavItemParentDetails(
|
421
|
+
navType = getNavItemParentDetails(parentElement);
|
421
422
|
break;
|
422
423
|
case "IC-TOP-NAVIGATION":
|
423
|
-
navType = { navType: "top", parent:
|
424
|
+
navType = { navType: "top", parent: parentElement };
|
424
425
|
break;
|
425
426
|
case "IC-SIDE-NAVIGATION":
|
426
|
-
navType = { navType: "side", parent:
|
427
|
+
navType = { navType: "side", parent: parentElement };
|
427
428
|
break;
|
428
429
|
case "IC-PAGE-HEADER":
|
429
430
|
navType = { navType: "page-header", parent: null };
|
@@ -439,10 +440,8 @@ const DEVICE_SIZES = {
|
|
439
440
|
XL: Number(getCssProperty("--ic-breakpoint-xl").replace("px", "")), // 1200
|
440
441
|
UNDEFINED: 1200,
|
441
442
|
};
|
442
|
-
const hasValidationStatus = (status, disabled) =>
|
443
|
-
|
444
|
-
};
|
445
|
-
const isSlotUsed = (element, slotName) => Array.from(element.children).some((child) => child.getAttribute("slot") === slotName);
|
443
|
+
const hasValidationStatus = (status, disabled) => !!status && !disabled;
|
444
|
+
const isSlotUsed = ({ children }, slotName) => Array.from(children).some((child) => child.getAttribute("slot") === slotName);
|
446
445
|
// added as a common method to allow detection of gatsby hydration issue, where (camelCase) props are initially undefined & then update
|
447
446
|
// with a value. Allows a callback function to be executed when this is the case
|
448
447
|
const onComponentPropUndefinedChange = (oldValue, newValue, callback) => {
|
@@ -451,100 +450,61 @@ const onComponentPropUndefinedChange = (oldValue, newValue, callback) => {
|
|
451
450
|
}
|
452
451
|
};
|
453
452
|
const onComponentRequiredPropUndefined = (props, component) => {
|
454
|
-
|
455
|
-
const { prop, propName } = props[i];
|
453
|
+
props.forEach(({ prop, propName }) => {
|
456
454
|
if (prop === null || prop === undefined) {
|
457
455
|
console.error(`No ${propName} specified for ${component} component - prop '${propName}' (web components) / '${kebabToCamelCase(propName)}' (react) required`);
|
458
456
|
}
|
459
|
-
}
|
460
|
-
};
|
461
|
-
const kebabToCamelCase = (kebabCase) => {
|
462
|
-
kebabCase = kebabCase.toLowerCase();
|
463
|
-
const individualWords = kebabCase.split("-");
|
464
|
-
let camelCase = individualWords[0];
|
465
|
-
for (let i = 1; i < individualWords.length; i++) {
|
466
|
-
camelCase +=
|
467
|
-
individualWords[i].substring(0, 1).toUpperCase() +
|
468
|
-
individualWords[i].substring(1);
|
469
|
-
}
|
470
|
-
return camelCase;
|
457
|
+
});
|
471
458
|
};
|
459
|
+
const kebabToCamelCase = (kebabCase) => kebabCase
|
460
|
+
.toLowerCase()
|
461
|
+
.split("-")
|
462
|
+
.map((word, index) => index === 0
|
463
|
+
? word
|
464
|
+
: `${word.substring(0, 1).toUpperCase()}${word.substring(1)}`)
|
465
|
+
.join("");
|
472
466
|
const checkResizeObserver = (callbackFn) => {
|
473
467
|
if (typeof window !== "undefined" &&
|
474
468
|
typeof window.ResizeObserver !== "undefined") {
|
475
469
|
callbackFn();
|
476
470
|
}
|
477
471
|
};
|
478
|
-
const hex2dec =
|
479
|
-
return parseInt(v, 16);
|
480
|
-
};
|
472
|
+
const hex2dec = (v) => parseInt(v, 16);
|
481
473
|
const hexToRgba = (hex) => {
|
482
|
-
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
}
|
492
|
-
else {
|
493
|
-
return {
|
494
|
-
r: hex2dec(hex.slice(1, 3)),
|
495
|
-
g: hex2dec(hex.slice(3, 5)),
|
496
|
-
b: hex2dec(hex.slice(5)),
|
497
|
-
a: 1,
|
498
|
-
};
|
499
|
-
}
|
474
|
+
const hexChars = hex
|
475
|
+
.replace("#", "")
|
476
|
+
.split("")
|
477
|
+
.map((char) => char.repeat(2));
|
478
|
+
return {
|
479
|
+
r: hex2dec(hex.length === 4 ? hexChars[0] : hex.slice(1, 3)),
|
480
|
+
g: hex2dec(hex.length === 4 ? hexChars[1] : hex.slice(3, 5)),
|
481
|
+
b: hex2dec(hex.length === 4 ? hexChars[2] : hex.slice(5)),
|
482
|
+
a: 1,
|
483
|
+
};
|
500
484
|
};
|
501
485
|
const rgbaStrToObj = (rgbaStr) => {
|
502
|
-
const
|
503
|
-
|
504
|
-
|
505
|
-
|
506
|
-
|
507
|
-
|
508
|
-
|
509
|
-
|
510
|
-
|
511
|
-
|
512
|
-
|
513
|
-
|
514
|
-
}
|
515
|
-
else {
|
516
|
-
colorRGBA = { r: null, g: null, b: null, a: 1 };
|
517
|
-
const rgb = rgbaStr
|
518
|
-
.substring(4, rgbaStr.length - 1)
|
519
|
-
.replace(/ /g, "")
|
520
|
-
.split(",");
|
521
|
-
colorRGBA.r = Number(rgb[0]);
|
522
|
-
colorRGBA.g = Number(rgb[1]);
|
523
|
-
colorRGBA.b = Number(rgb[2]);
|
524
|
-
}
|
525
|
-
return colorRGBA;
|
486
|
+
const isRGBA = rgbaStr.slice(3, 4).toLowerCase() === "a";
|
487
|
+
const rgbValues = rgbaStr
|
488
|
+
.substring(isRGBA ? 5 : 4, rgbaStr.length - 1)
|
489
|
+
.replace(/ /g, "")
|
490
|
+
.split(",")
|
491
|
+
.map(Number);
|
492
|
+
return {
|
493
|
+
r: rgbValues[0],
|
494
|
+
g: rgbValues[1],
|
495
|
+
b: rgbValues[2],
|
496
|
+
a: isRGBA ? rgbValues[3] : 1,
|
497
|
+
};
|
526
498
|
};
|
527
|
-
const elementOverflowsX = (
|
528
|
-
/**
|
529
|
-
*
|
530
|
-
* @param child - The child element
|
531
|
-
* @returns string
|
532
|
-
*/
|
533
|
-
const getParentElementType = (child) => child.parentElement.tagName;
|
534
|
-
const getParentElement = (child) => child.parentElement;
|
499
|
+
const elementOverflowsX = ({ scrollWidth, clientWidth, }) => scrollWidth > clientWidth;
|
535
500
|
const hasClassificationBanner = () => !!document.querySelector("ic-classification-banner:not([inline='true'])");
|
536
|
-
const getForm = (el) => el.closest("FORM");
|
537
501
|
const addFormResetListener = (el, callbackFn) => {
|
538
|
-
|
539
|
-
|
540
|
-
form.addEventListener("reset", callbackFn);
|
541
|
-
}
|
502
|
+
var _a;
|
503
|
+
(_a = el.closest("FORM")) === null || _a === void 0 ? void 0 : _a.addEventListener("reset", callbackFn);
|
542
504
|
};
|
543
505
|
const removeFormResetListener = (el, callbackFn) => {
|
544
|
-
|
545
|
-
|
546
|
-
form.removeEventListener("reset", callbackFn);
|
547
|
-
}
|
506
|
+
var _a;
|
507
|
+
(_a = el.closest("FORM")) === null || _a === void 0 ? void 0 : _a.removeEventListener("reset", callbackFn);
|
548
508
|
};
|
549
509
|
const pxToRem = (px, base = 16) => `${(1 / base) * parseInt(px)}rem`;
|
550
510
|
const removeDisabledFalse = (disabled, element) => {
|
@@ -552,7 +512,15 @@ const removeDisabledFalse = (disabled, element) => {
|
|
552
512
|
element.removeAttribute("disabled");
|
553
513
|
}
|
554
514
|
};
|
515
|
+
const convertToRGBA = (color) => {
|
516
|
+
const firstChar = color === null || color === void 0 ? void 0 : color.slice(0, 1).toLowerCase();
|
517
|
+
return firstChar === "#"
|
518
|
+
? hexToRgba(color)
|
519
|
+
: firstChar === "r"
|
520
|
+
? rgbaStrToObj(color)
|
521
|
+
: null;
|
522
|
+
};
|
555
523
|
|
556
|
-
export { slotHasContent as A, getLabelFromValue as B, getFilteredMenuOptions as C, DEVICE_SIZES as D, isMobileOrTablet as E, debounceEvent as F, isEmptyString as G,
|
524
|
+
export { slotHasContent as A, getLabelFromValue as B, getFilteredMenuOptions as C, DEVICE_SIZES as D, isMobileOrTablet as E, debounceEvent as F, isEmptyString as G, IC_DEVICE_SIZES as H, IC_INHERITED_ARIA as I, hasClassificationBanner as J, elementOverflowsX as K, getSlotElements as L, getNavItemParentDetails as M, getSlotContent as N, getSlot as O, handleHiddenFormButtonClick as P, pxToRem as Q, getThemeColorBrightness as R, BLACK_MIN_COLOR_BRIGHTNESS as S, VARIANT_ICONS as V, WHITE_MAX_COLOR_BRIGHTNESS as W, inheritAttributes as a, renderFileHiddenInput as b, checkResizeObserver as c, isPropDefined as d, onComponentPropUndefinedChange as e, convertToRGBA as f, getThemeFromContext as g, hexToRgba as h, isSlotUsed as i, getCssProperty as j, rgbaStrToObj as k, getThemeForegroundColor as l, getCurrentDeviceSize as m, addFormResetListener as n, onComponentRequiredPropUndefined as o, removeFormResetListener as p, renderHiddenInput as q, removeDisabledFalse as r, removeHiddenInput as s, getInputDescribedByText as t, hasValidationStatus as u, getInputHelperTextID as v, getInputValidationTextID as w, warningIcon as x, errorIcon as y, successIcon as z };
|
557
525
|
|
558
526
|
//# sourceMappingURL=helpers.js.map
|