@baloise/ds-core 16.3.0 → 16.4.0-nightly.20240917
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/README.md +1 -1
- package/components/all.d.ts +6 -0
- package/components/all.js +9 -0
- package/components/bal-accordion-summary.js +12 -2
- package/components/bal-accordion-trigger.js +15 -2
- package/components/bal-app.js +1 -85
- package/components/bal-app2.js +87 -0
- package/components/bal-carousel-item2.js +13 -3
- package/components/bal-carousel2.js +50 -20
- package/components/bal-checkbox-group.js +9 -3
- package/components/bal-checkbox2.js +23 -5
- package/components/bal-close2.js +1 -6
- package/components/bal-content.js +1 -69
- package/{dist/esm/bal-content.entry.js → components/bal-content2.js} +31 -12
- package/components/bal-date.js +1 -1
- package/components/bal-datepicker.js +1 -1
- package/components/bal-doc-app.d.ts +11 -0
- package/components/bal-doc-app.js +260 -0
- package/components/bal-dropdown.js +3 -3
- package/components/bal-file-upload.js +1 -1
- package/components/bal-icon2.js +1 -1
- package/components/bal-label2.js +3 -2
- package/components/bal-list-item-accordion-head2.js +7 -1
- package/components/bal-nav-menu-bar2.js +1 -1
- package/components/bal-nav-menu-flyout2.js +3 -6
- package/components/bal-nav.js +11 -8
- package/components/bal-option-list.js +27 -2
- package/components/bal-pagination2.js +3 -3
- package/components/bal-progress-bar.js +27 -12
- package/components/bal-radio2.js +2 -2
- package/components/bal-segment-item.d.ts +11 -0
- package/components/bal-segment-item.js +203 -0
- package/components/bal-segment.d.ts +11 -0
- package/components/bal-segment.js +337 -0
- package/components/bal-select2.js +1 -1
- package/components/bal-stack2.js +1 -1
- package/components/bal-steps.js +8 -6
- package/components/bal-tab-item.js +10 -2
- package/components/bal-tabs2.js +149 -31
- package/components/breakpoints.subject.js +3 -3
- package/components/index.esm.js +25 -1
- package/components/index.js +5 -289
- package/components/initialize.js +288 -0
- package/components/option.js +4 -1
- package/components/tokens.esm.js +1 -1
- package/components/window-resize.decorator.js +46 -0
- package/dist/baloise-design-system/baloise-design-system.esm.js +1 -1
- package/dist/baloise-design-system/baloise-design-system.js +1 -1
- package/dist/baloise-design-system/index.esm.js +1 -1
- package/dist/baloise-design-system/p-03c0e702.js +1 -0
- package/dist/baloise-design-system/{p-1de6b20b1c.system.entry.js → p-06e93c033b.system.entry.js} +1 -1
- package/dist/baloise-design-system/{p-ae28b86fe5.entry.js → p-0ab43941ba.entry.js} +1 -1
- package/dist/baloise-design-system/p-120f1513.js +1 -0
- package/dist/baloise-design-system/p-1509eaa7.system.js +1 -1
- package/dist/baloise-design-system/p-17660ffea0.entry.js +1 -0
- package/dist/baloise-design-system/{p-f02ea04390.entry.js → p-17f2b2e25a.entry.js} +1 -1
- package/dist/baloise-design-system/p-18af339b1e.system.entry.js +1 -0
- package/dist/baloise-design-system/p-19d582fb4a.entry.js +1 -0
- package/dist/baloise-design-system/p-1e31a7e4d2.system.entry.js +1 -0
- package/dist/baloise-design-system/{p-b7035c24.system.js → p-261968b2.system.js} +1 -1
- package/dist/baloise-design-system/p-265f9d51c9.system.entry.js +1 -0
- package/dist/baloise-design-system/{p-51c0348938.entry.js → p-2905abdfb8.entry.js} +1 -1
- package/dist/baloise-design-system/p-29ba4f9afe.system.entry.js +1 -0
- package/dist/baloise-design-system/p-2a700c21ae.system.entry.js +1 -0
- package/dist/baloise-design-system/{p-f6599f64b7.entry.js → p-2db4ff4c5b.entry.js} +1 -1
- package/dist/baloise-design-system/{p-39bc49bc3d.entry.js → p-33028eda8b.entry.js} +1 -1
- package/dist/baloise-design-system/{p-692536f9ff.system.entry.js → p-3558e7a64b.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-360068a4.system.js +1 -0
- package/dist/baloise-design-system/{p-330b875d9d.system.entry.js → p-3818fa189f.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-381fe5557d.entry.js +1 -0
- package/dist/baloise-design-system/{p-f9db454e37.entry.js → p-396898cf27.entry.js} +1 -1
- package/dist/baloise-design-system/{p-1be257c9cd.system.entry.js → p-3bc2f95cf3.system.entry.js} +1 -1
- package/dist/baloise-design-system/{p-47b18581c7.system.entry.js → p-40628589e1.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-40b5ad07c5.system.entry.js +1 -0
- package/dist/baloise-design-system/{p-4afba8511a.system.entry.js → p-47a8ad4d7a.system.entry.js} +1 -1
- package/dist/baloise-design-system/{p-976ed5bcf1.entry.js → p-488c4a8ce1.entry.js} +1 -1
- package/dist/baloise-design-system/p-4cdec4da61.system.entry.js +1 -0
- package/dist/baloise-design-system/p-4e8fff8409.entry.js +1 -0
- package/dist/baloise-design-system/p-4f1afa9be1.system.entry.js +1 -0
- package/dist/baloise-design-system/{p-d319b257.system.js → p-509b566d.system.js} +1 -1
- package/dist/baloise-design-system/{p-b779742f50.entry.js → p-53c92c2d21.entry.js} +1 -1
- package/dist/baloise-design-system/p-53e98a0f71.entry.js +1 -0
- package/dist/baloise-design-system/{p-cef24f8c62.entry.js → p-547aae9610.entry.js} +1 -1
- package/dist/baloise-design-system/p-54f81c32.js +1 -1
- package/dist/baloise-design-system/{p-6f4a362824.system.entry.js → p-5db0544e97.system.entry.js} +1 -1
- package/dist/baloise-design-system/{p-d0d06aa690.entry.js → p-6c038bb4ff.entry.js} +1 -1
- package/dist/baloise-design-system/{p-22b041a511.entry.js → p-6c2bf02eb3.entry.js} +1 -1
- package/dist/baloise-design-system/p-6d1b6215.js +1 -0
- package/dist/baloise-design-system/p-6e3a79cce0.system.entry.js +1 -0
- package/dist/baloise-design-system/p-6e88e337.system.js +1 -0
- package/dist/baloise-design-system/p-71588db3.system.js +1 -0
- package/dist/baloise-design-system/p-7291766c.system.js +1 -0
- package/dist/baloise-design-system/{p-ba14aa7026.system.entry.js → p-8080a1192c.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-80c011874c.entry.js +1 -0
- package/dist/baloise-design-system/{p-6ceac3e144.system.entry.js → p-8a2f9c316c.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-8b998a54aa.entry.js +1 -0
- package/dist/baloise-design-system/{p-60f45a7b48.entry.js → p-8c2be8bc00.entry.js} +1 -1
- package/dist/baloise-design-system/p-8de1a12660.entry.js +1 -0
- package/dist/baloise-design-system/{p-8870e1f3e0.system.entry.js → p-8e17b76e7c.system.entry.js} +1 -1
- package/dist/baloise-design-system/{p-12bcc7da.js → p-9b4da619.js} +1 -1
- package/dist/baloise-design-system/{p-b97d9336a7.system.entry.js → p-9bb8778cdc.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-9d051b6527.entry.js +1 -0
- package/dist/baloise-design-system/p-a507ff25cb.system.entry.js +1 -0
- package/dist/baloise-design-system/p-a53f45fab6.entry.js +1 -0
- package/dist/baloise-design-system/{p-ad00d94e7f.entry.js → p-a5ee486a2b.entry.js} +1 -1
- package/dist/baloise-design-system/p-a78d1ca569.system.entry.js +1 -0
- package/dist/baloise-design-system/p-ac800c3208.entry.js +1 -0
- package/dist/baloise-design-system/{p-cf0c50d42a.system.entry.js → p-b0bb64b2b8.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-b51665840d.entry.js +1 -0
- package/dist/baloise-design-system/{p-c572e259f4.system.entry.js → p-b570b77884.system.entry.js} +1 -1
- package/dist/baloise-design-system/{p-982fa892e8.system.entry.js → p-b8251b8f68.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-b87c29c80b.entry.js +1 -0
- package/dist/baloise-design-system/{p-80b45dd4d6.system.entry.js → p-bcb892a723.system.entry.js} +1 -1
- package/dist/baloise-design-system/{p-301e753d6f.system.entry.js → p-be0a0f5f7e.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-bee13e834e.entry.js +1 -0
- package/dist/baloise-design-system/p-c240ee50bb.entry.js +1 -0
- package/dist/baloise-design-system/p-c2de2596d1.system.entry.js +1 -0
- package/dist/baloise-design-system/{p-3f1c49d0.js → p-caec1f9e.js} +1 -1
- package/dist/baloise-design-system/{p-45e0c0783b.entry.js → p-cafe624e35.entry.js} +1 -1
- package/dist/baloise-design-system/p-cd66014bd1.entry.js +1 -0
- package/dist/baloise-design-system/p-cda868a6a5.entry.js +1 -0
- package/dist/baloise-design-system/{p-a52564d27f.system.entry.js → p-d059465399.system.entry.js} +1 -1
- package/dist/baloise-design-system/{p-e60c936359.system.entry.js → p-d1c43680a0.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-d539c1cf.js +1 -0
- package/dist/baloise-design-system/p-d908780376.system.entry.js +1 -0
- package/dist/baloise-design-system/p-dae1f687.system.js +1 -0
- package/dist/baloise-design-system/{p-3bad0907.system.js → p-de36076c.system.js} +1 -1
- package/dist/baloise-design-system/p-e137e273b7.system.entry.js +1 -0
- package/dist/baloise-design-system/{p-55faac1d.system.js → p-e187b9de.system.js} +1 -1
- package/dist/baloise-design-system/{p-7292c6e1a1.entry.js → p-e542aaeb27.entry.js} +1 -1
- package/dist/baloise-design-system/p-e8ffddeb.js +1 -0
- package/dist/baloise-design-system/{p-9e167705ca.entry.js → p-ecab0d67d5.entry.js} +1 -1
- package/dist/baloise-design-system/{p-94efe2aa.js → p-f5940253.js} +1 -1
- package/dist/baloise-design-system/p-f66ea0e663.system.entry.js +1 -0
- package/dist/baloise-design-system/{p-013b4c72.system.js → p-f959646a.system.js} +1 -1
- package/dist/cjs/app-globals-5fd73c0c.js +7 -0
- package/dist/cjs/bal-accordion_4.cjs.entry.js +29 -4
- package/dist/cjs/bal-carousel_2.cjs.entry.js +60 -24
- package/dist/cjs/bal-checkbox_2.cjs.entry.js +15 -4
- package/dist/cjs/bal-close.cjs.entry.js +1 -6
- package/dist/cjs/{bal-label.cjs.entry.js → bal-content_2.cjs.entry.js} +48 -2
- package/dist/cjs/bal-date-calendar_2.cjs.entry.js +2 -2
- package/dist/cjs/bal-date.cjs.entry.js +2 -2
- package/dist/cjs/bal-datepicker.cjs.entry.js +4 -4
- package/dist/cjs/bal-doc-app.cjs.entry.js +231 -0
- package/dist/cjs/bal-dropdown.cjs.entry.js +4 -4
- package/dist/cjs/bal-file-upload.cjs.entry.js +1 -1
- package/dist/cjs/bal-footer.cjs.entry.js +1 -1
- package/dist/cjs/bal-hint_3.cjs.entry.js +3 -3
- package/dist/cjs/bal-icon.cjs.entry.js +1 -1
- package/dist/cjs/bal-input-stepper.cjs.entry.js +1 -1
- package/dist/cjs/bal-list_8.cjs.entry.js +12 -4
- package/dist/cjs/bal-logo.cjs.entry.js +3 -3
- package/dist/cjs/bal-nav_8.cjs.entry.js +17 -18
- package/dist/cjs/bal-navbar_5.cjs.entry.js +3 -3
- package/dist/cjs/bal-number-input.cjs.entry.js +1 -1
- package/dist/cjs/bal-option_2.cjs.entry.js +26 -2
- package/dist/cjs/bal-pagination.cjs.entry.js +6 -6
- package/dist/cjs/bal-popover_2.cjs.entry.js +3 -3
- package/dist/cjs/bal-popup.cjs.entry.js +1 -1
- package/dist/cjs/bal-progress-bar.cjs.entry.js +30 -17
- package/dist/cjs/bal-radio_2.cjs.entry.js +2 -2
- package/dist/cjs/bal-segment-item.cjs.entry.js +156 -0
- package/dist/cjs/bal-segment.cjs.entry.js +319 -0
- package/dist/cjs/bal-select_2.cjs.entry.js +1 -1
- package/dist/cjs/bal-shape.cjs.entry.js +1 -1
- package/dist/cjs/bal-stack.cjs.entry.js +1 -1
- package/dist/cjs/bal-steps.cjs.entry.js +10 -9
- package/dist/cjs/bal-tab-item_2.cjs.entry.js +158 -34
- package/dist/cjs/baloise-design-system.cjs.js +3 -2
- package/dist/cjs/{breakpoints.decorator-47fd06b2.js → breakpoints.decorator-77a3b464.js} +1 -1
- package/dist/cjs/{breakpoints.subject-06716a68.js → breakpoints.subject-ae73ae55.js} +4 -4
- package/dist/cjs/{date-3e33b208.js → date-20be7524.js} +1 -1
- package/dist/cjs/{app-globals-ae3a8623.js → global-2562a984.js} +2 -4
- package/dist/cjs/index.cjs.js +5 -5
- package/dist/cjs/{index.esm-4587dbf0.js → index.esm-54a3d84e.js} +28 -0
- package/dist/cjs/initialize-2a19d091.js +1 -1
- package/dist/cjs/loader.cjs.js +3 -2
- package/dist/cjs/{option-c33cf2b8.js → option-4034ca7d.js} +4 -1
- package/dist/cjs/{tokens.esm-dc93a5d7.js → tokens.esm-15025c39.js} +1 -1
- package/dist/cjs/window-resize.decorator-5b9c08d1.js +48 -0
- package/dist/collection/collection-manifest.json +4 -1
- package/dist/collection/components/bal-accordion/bal-accordion-summary/bal-accordion-summary.css +1 -1
- package/dist/collection/components/bal-accordion/bal-accordion-summary/bal-accordion-summary.js +11 -1
- package/dist/collection/components/bal-accordion/bal-accordion-trigger/bal-accordion-trigger.css +1 -1
- package/dist/collection/components/bal-accordion/bal-accordion-trigger/bal-accordion-trigger.js +14 -1
- package/dist/collection/components/bal-carousel/bal-carousel-item/bal-carousel-item.js +45 -2
- package/dist/collection/components/bal-carousel/bal-carousel.js +76 -13
- package/dist/collection/components/bal-carousel/controls/dot-control.js +2 -2
- package/dist/collection/components/bal-carousel/controls/large-control.js +2 -2
- package/dist/collection/components/bal-carousel/controls/small-control.js +2 -2
- package/dist/collection/components/bal-carousel/controls/tab-control.js +2 -2
- package/dist/collection/components/bal-checkbox/bal-checkbox.js +15 -3
- package/dist/collection/components/bal-checkbox/radio-checkbox.css +1 -1
- package/dist/collection/components/bal-close/bal-close.js +1 -6
- package/dist/collection/components/bal-content/bal-content.css +1 -1
- package/dist/collection/components/bal-content/bal-content.js +1 -1
- package/dist/collection/components/bal-icon/bal-icon.css +1 -1
- package/dist/collection/components/bal-label/bal-label.js +20 -2
- package/dist/collection/components/bal-list/bal-list-item-accordion-head/bal-list-item-accordion-head.js +7 -1
- package/dist/collection/components/bal-nav/bal-nav-menu-bar/bal-nav-menu-bar.css +1 -1
- package/dist/collection/components/bal-nav/bal-nav-menu-flyout/bal-nav-menu-flyout.js +24 -6
- package/dist/collection/components/bal-nav/bal-nav.css +1 -1
- package/dist/collection/components/bal-nav/bal-nav.js +5 -2
- package/dist/collection/components/bal-nav/models/bal-nav-menu-link-item.js +2 -2
- package/dist/collection/components/bal-nav/models/bal-nav-meta-link-item.js +3 -3
- package/dist/collection/components/bal-option-list/bal-option-list.js +43 -2
- package/dist/collection/components/bal-pagination/bal-pagination.js +3 -3
- package/dist/collection/components/bal-progress-bar/bal-progress-bar.css +1 -1
- package/dist/collection/components/bal-progress-bar/bal-progress-bar.js +49 -12
- package/dist/collection/components/bal-segment/bal-segment-item/bal-segment-item.css +1 -0
- package/dist/collection/components/bal-segment/bal-segment-item/bal-segment-item.js +332 -0
- package/dist/collection/components/bal-segment/bal-segment.css +1 -0
- package/dist/collection/components/bal-segment/bal-segment.interfaces.js +4 -0
- package/dist/collection/components/bal-segment/bal-segment.js +537 -0
- package/dist/collection/components/bal-segment/bal-segment.types.js +1 -0
- package/dist/collection/components/bal-stack/bal-stack.css +1 -1
- package/dist/collection/components/bal-steps/bal-steps.css +1 -1
- package/dist/collection/components/bal-steps/bal-steps.js +26 -2
- package/dist/collection/components/bal-steps/components/step-button.js +2 -2
- package/dist/collection/components/bal-tabs/bal-tab-item/bal-tab-item.js +47 -2
- package/dist/collection/components/bal-tabs/bal-tabs.js +124 -21
- package/dist/collection/components/bal-tabs/components/tab-button.js +18 -6
- package/dist/collection/components/bal-tabs/components/tab-nav.js +3 -3
- package/dist/collection/components/docs/bal-doc-app/bal-doc-app.css +1 -0
- package/dist/collection/components/docs/bal-doc-app/bal-doc-app.js +229 -0
- package/dist/collection/utils/constants/version.constant.js +1 -1
- package/dist/collection/utils/date/date.spec.js +0 -1
- package/dist/collection/utils/dropdown/option.js +4 -1
- package/dist/collection/utils/dropdown/popup.js +2 -2
- package/dist/collection/utils/resize/index.js +4 -1
- package/dist/collection/utils/resize/window-resize.decorator.js +20 -0
- package/dist/collection/utils/resize/window-resize.interfaces.js +1 -0
- package/dist/collection/utils/resize/window-resize.listener.js +3 -3
- package/dist/collection/utils/resize/window-resize.subject.js +23 -0
- package/dist/collection/utils/string.js +10 -0
- package/dist/collection/utils/string.spec.js +24 -0
- package/dist/esm/app-globals-970bab17.js +5 -0
- package/dist/esm/bal-accordion_4.entry.js +29 -4
- package/dist/esm/bal-carousel_2.entry.js +61 -25
- package/dist/esm/bal-checkbox_2.entry.js +15 -4
- package/dist/esm/bal-close.entry.js +1 -6
- package/dist/esm/{bal-label.entry.js → bal-content_2.entry.js} +48 -3
- package/dist/esm/bal-date-calendar_2.entry.js +2 -2
- package/dist/esm/bal-date.entry.js +2 -2
- package/dist/esm/bal-datepicker.entry.js +4 -4
- package/dist/esm/bal-doc-app.entry.js +227 -0
- package/dist/esm/bal-dropdown.entry.js +4 -4
- package/dist/esm/bal-file-upload.entry.js +1 -1
- package/dist/esm/bal-footer.entry.js +1 -1
- package/dist/esm/bal-hint_3.entry.js +3 -3
- package/dist/esm/bal-icon.entry.js +1 -1
- package/dist/esm/bal-input-stepper.entry.js +1 -1
- package/dist/esm/bal-list_8.entry.js +12 -4
- package/dist/esm/bal-logo.entry.js +3 -3
- package/dist/esm/bal-nav_8.entry.js +17 -18
- package/dist/esm/bal-navbar_5.entry.js +3 -3
- package/dist/esm/bal-number-input.entry.js +1 -1
- package/dist/esm/bal-option_2.entry.js +26 -2
- package/dist/esm/bal-pagination.entry.js +6 -6
- package/dist/esm/bal-popover_2.entry.js +3 -3
- package/dist/esm/bal-popup.entry.js +1 -1
- package/dist/esm/bal-progress-bar.entry.js +30 -17
- package/dist/esm/bal-radio_2.entry.js +2 -2
- package/dist/esm/bal-segment-item.entry.js +152 -0
- package/dist/esm/bal-segment.entry.js +315 -0
- package/dist/esm/bal-select_2.entry.js +1 -1
- package/dist/esm/bal-shape.entry.js +1 -1
- package/dist/esm/bal-stack.entry.js +1 -1
- package/dist/esm/bal-steps.entry.js +10 -9
- package/dist/esm/bal-tab-item_2.entry.js +159 -35
- package/dist/esm/baloise-design-system.js +3 -2
- package/dist/esm/{breakpoints.decorator-f979fe5c.js → breakpoints.decorator-d55790da.js} +1 -1
- package/dist/esm/{breakpoints.subject-9ea7074e.js → breakpoints.subject-ee89b4ec.js} +4 -4
- package/dist/esm/{date-38a0b208.js → date-aba2d404.js} +1 -1
- package/dist/esm/{app-globals-b0dd0fc4.js → global-63f4bcec.js} +2 -4
- package/dist/esm/{index.esm-83b1f9c4.js → index.esm-76abd8e3.js} +25 -1
- package/dist/esm/index.js +6 -6
- package/dist/esm/initialize-e216cfe4.js +1 -1
- package/dist/esm/loader.js +3 -2
- package/dist/esm/{option-37cb0282.js → option-01553dab.js} +4 -1
- package/dist/esm/{tokens.esm-7d2734e1.js → tokens.esm-769d0c71.js} +1 -1
- package/dist/esm/window-resize.decorator-dec8dd72.js +46 -0
- package/dist/esm-es5/app-globals-970bab17.js +1 -0
- package/dist/esm-es5/bal-accordion_4.entry.js +1 -1
- package/dist/esm-es5/bal-carousel_2.entry.js +1 -1
- package/dist/esm-es5/bal-checkbox_2.entry.js +1 -1
- package/dist/esm-es5/bal-close.entry.js +1 -1
- package/dist/esm-es5/bal-content_2.entry.js +1 -0
- package/dist/esm-es5/bal-date-calendar_2.entry.js +1 -1
- package/dist/esm-es5/bal-date.entry.js +1 -1
- package/dist/esm-es5/bal-datepicker.entry.js +1 -1
- package/dist/esm-es5/bal-doc-app.entry.js +1 -0
- package/dist/esm-es5/bal-dropdown.entry.js +1 -1
- package/dist/esm-es5/bal-file-upload.entry.js +1 -1
- package/dist/esm-es5/bal-footer.entry.js +1 -1
- package/dist/esm-es5/bal-hint_3.entry.js +1 -1
- package/dist/esm-es5/bal-icon.entry.js +1 -1
- package/dist/esm-es5/bal-input-stepper.entry.js +1 -1
- package/dist/esm-es5/bal-list_8.entry.js +1 -1
- package/dist/esm-es5/bal-logo.entry.js +1 -1
- package/dist/esm-es5/bal-nav_8.entry.js +1 -1
- package/dist/esm-es5/bal-navbar_5.entry.js +1 -1
- package/dist/esm-es5/bal-number-input.entry.js +1 -1
- package/dist/esm-es5/bal-option_2.entry.js +1 -1
- package/dist/esm-es5/bal-pagination.entry.js +1 -1
- package/dist/esm-es5/bal-popover_2.entry.js +1 -1
- package/dist/esm-es5/bal-popup.entry.js +1 -1
- package/dist/esm-es5/bal-progress-bar.entry.js +1 -1
- package/dist/esm-es5/bal-radio_2.entry.js +1 -1
- package/dist/esm-es5/bal-segment-item.entry.js +1 -0
- package/dist/esm-es5/bal-segment.entry.js +1 -0
- package/dist/esm-es5/bal-select_2.entry.js +1 -1
- package/dist/esm-es5/bal-shape.entry.js +1 -1
- package/dist/esm-es5/bal-stack.entry.js +1 -1
- package/dist/esm-es5/bal-steps.entry.js +1 -1
- package/dist/esm-es5/bal-tab-item_2.entry.js +1 -1
- package/dist/esm-es5/baloise-design-system.js +1 -1
- package/dist/esm-es5/{breakpoints.decorator-f979fe5c.js → breakpoints.decorator-d55790da.js} +1 -1
- package/dist/esm-es5/breakpoints.subject-ee89b4ec.js +1 -0
- package/dist/esm-es5/{date-38a0b208.js → date-aba2d404.js} +1 -1
- package/dist/esm-es5/global-63f4bcec.js +1 -0
- package/dist/esm-es5/{index.esm-83b1f9c4.js → index.esm-76abd8e3.js} +1 -1
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/initialize-e216cfe4.js +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/option-01553dab.js +1 -0
- package/dist/esm-es5/window-resize.decorator-dec8dd72.js +1 -0
- package/dist/html.html-data.json +161 -3
- package/dist/types/components/bal-accordion/bal-accordion-summary/bal-accordion-summary.d.ts +1 -0
- package/dist/types/components/bal-accordion/bal-accordion-trigger/bal-accordion-trigger.d.ts +1 -0
- package/dist/types/components/bal-carousel/bal-carousel-item/bal-carousel-item.d.ts +6 -0
- package/dist/types/components/bal-carousel/bal-carousel.d.ts +11 -2
- package/dist/types/components/bal-carousel/controls/dot-control.d.ts +1 -0
- package/dist/types/components/bal-carousel/controls/large-control.d.ts +1 -0
- package/dist/types/components/bal-carousel/controls/small-control.d.ts +1 -0
- package/dist/types/components/bal-carousel/controls/tab-control.d.ts +1 -0
- package/dist/types/components/bal-checkbox/bal-checkbox.d.ts +5 -0
- package/dist/types/components/bal-close/bal-close.d.ts +0 -2
- package/dist/types/components/bal-content/bal-content.interfaces.d.ts +1 -1
- package/dist/types/components/bal-icon/bal-icon.interfaces.d.ts +1 -1
- package/dist/types/components/bal-label/bal-label.d.ts +4 -1
- package/dist/types/components/bal-list/bal-list-item-accordion-head/bal-list-item-accordion-head.d.ts +1 -0
- package/dist/types/components/bal-nav/bal-nav-menu-flyout/bal-nav-menu-flyout.d.ts +4 -1
- package/dist/types/components/bal-nav/models/bal-nav-link-item.d.ts +1 -0
- package/dist/types/components/bal-nav/models/bal-nav-menu-link-item.d.ts +1 -0
- package/dist/types/components/bal-nav/models/bal-nav-meta-link-item.d.ts +3 -1
- package/dist/types/components/bal-option-list/bal-option-list.d.ts +5 -0
- package/dist/types/components/bal-progress-bar/bal-progress-bar.d.ts +8 -2
- package/dist/types/components/bal-progress-bar/bal-progress-bar.interfaces.d.ts +1 -0
- package/dist/types/components/bal-segment/bal-segment-item/bal-segment-item.d.ts +62 -0
- package/dist/types/components/bal-segment/bal-segment.d.ts +111 -0
- package/dist/types/components/bal-segment/bal-segment.interfaces.d.ts +20 -0
- package/dist/types/components/bal-segment/bal-segment.types.d.ts +1 -0
- package/dist/types/components/bal-steps/bal-steps.d.ts +4 -0
- package/dist/types/components/bal-steps/bal-steps.interfaces.d.ts +3 -1
- package/dist/types/components/bal-steps/components/step-button.d.ts +1 -0
- package/dist/types/components/bal-tabs/bal-tab-item/bal-tab-item.d.ts +10 -0
- package/dist/types/components/bal-tabs/bal-tab.type.d.ts +5 -3
- package/dist/types/components/bal-tabs/bal-tabs.d.ts +15 -3
- package/dist/types/components/bal-tabs/bal-tabs.interfaces.d.ts +3 -0
- package/dist/types/components/bal-tabs/components/tab-button.d.ts +1 -0
- package/dist/types/components/bal-tabs/components/tab-nav.d.ts +1 -0
- package/dist/types/components/docs/bal-doc-app/bal-doc-app.d.ts +21 -0
- package/dist/types/components.d.ts +272 -10
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/icons/src/index.d.ts +81 -0
- package/dist/types/interfaces.d.ts +1 -0
- package/dist/types/utils/dropdown/option.d.ts +1 -1
- package/dist/types/utils/dropdown/popup.d.ts +1 -1
- package/dist/types/utils/resize/index.d.ts +4 -1
- package/dist/types/utils/resize/window-resize.decorator.d.ts +3 -0
- package/dist/types/utils/resize/window-resize.interfaces.d.ts +5 -0
- package/dist/types/utils/resize/window-resize.listener.d.ts +1 -1
- package/dist/types/utils/resize/window-resize.subject.d.ts +9 -0
- package/dist/types/utils/string.d.ts +1 -0
- package/package.json +9 -9
- package/dist/baloise-design-system/p-0ab7aa0e.js +0 -1
- package/dist/baloise-design-system/p-126c79c9e9.system.entry.js +0 -1
- package/dist/baloise-design-system/p-1502fa2526.entry.js +0 -1
- package/dist/baloise-design-system/p-1e100fd83b.entry.js +0 -1
- package/dist/baloise-design-system/p-254b130be5.system.entry.js +0 -1
- package/dist/baloise-design-system/p-2d82b78410.entry.js +0 -1
- package/dist/baloise-design-system/p-2d8bd11634.entry.js +0 -1
- package/dist/baloise-design-system/p-2e2ed7a07f.entry.js +0 -1
- package/dist/baloise-design-system/p-2ebc8f9d0c.system.entry.js +0 -1
- package/dist/baloise-design-system/p-30fc270ec1.entry.js +0 -1
- package/dist/baloise-design-system/p-35aa7ecb24.entry.js +0 -1
- package/dist/baloise-design-system/p-4f3776ea4e.system.entry.js +0 -1
- package/dist/baloise-design-system/p-55f280cf33.system.entry.js +0 -1
- package/dist/baloise-design-system/p-63dfa27862.system.entry.js +0 -1
- package/dist/baloise-design-system/p-6cf5e22bb4.entry.js +0 -1
- package/dist/baloise-design-system/p-7047afd8.system.js +0 -1
- package/dist/baloise-design-system/p-7d498fc5.js +0 -1
- package/dist/baloise-design-system/p-87d9c24d45.system.entry.js +0 -1
- package/dist/baloise-design-system/p-8a87b9a8.system.js +0 -1
- package/dist/baloise-design-system/p-96c55b4f58.entry.js +0 -1
- package/dist/baloise-design-system/p-b22fa7966b.entry.js +0 -1
- package/dist/baloise-design-system/p-bcca1ed3.system.js +0 -1
- package/dist/baloise-design-system/p-c304d5fa9c.entry.js +0 -1
- package/dist/baloise-design-system/p-cee7a0dd73.system.entry.js +0 -1
- package/dist/baloise-design-system/p-cf47f1f53c.entry.js +0 -1
- package/dist/baloise-design-system/p-d585a3ad56.system.entry.js +0 -1
- package/dist/baloise-design-system/p-dbc2d22240.system.entry.js +0 -1
- package/dist/baloise-design-system/p-e71a27141c.entry.js +0 -1
- package/dist/baloise-design-system/p-e78a6409.js +0 -1
- package/dist/baloise-design-system/p-e7a4d97c51.entry.js +0 -1
- package/dist/baloise-design-system/p-e93d9571f5.system.entry.js +0 -1
- package/dist/baloise-design-system/p-ecd39e3bec.entry.js +0 -1
- package/dist/baloise-design-system/p-f076d1ed4f.system.entry.js +0 -1
- package/dist/baloise-design-system/p-f0ee1b670b.system.entry.js +0 -1
- package/dist/cjs/bal-content.cjs.entry.js +0 -56
- package/dist/esm-es5/app-globals-b0dd0fc4.js +0 -1
- package/dist/esm-es5/bal-content.entry.js +0 -1
- package/dist/esm-es5/bal-label.entry.js +0 -1
- package/dist/esm-es5/breakpoints.subject-9ea7074e.js +0 -1
- package/dist/esm-es5/option-37cb0282.js +0 -1
- /package/dist/baloise-design-system/{p-fc80aa3e.system.js → p-1a742a5b.system.js} +0 -0
- /package/dist/baloise-design-system/{p-6b5343bd.js → p-3f4bb3a8.js} +0 -0
- /package/dist/esm-es5/{tokens.esm-7d2734e1.js → tokens.esm-769d0c71.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow) !important}}@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused.bal-steps__nav__item--inverted .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow-inverted) !important}}@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow) !important}}@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused.bal-steps__nav__item--inverted .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow-inverted) !important}}:root{--bal-steps-step-icon-background: var(--bal-color-white);--bal-steps-step-icon-background-active: var(--bal-color-primary);--bal-steps-step-icon-background-disabled: var(--bal-color-grey-2);--bal-steps-step-icon-background-done: var(--bal-color-primary);--bal-steps-step-icon-background-failed: var(--bal-color-danger);--bal-steps-step-button-progress-line-background: var(--bal-form-field-control-border-color);--bal-steps-step-button-passed-background: var(--bal-form-field-control-border-color-active);--bal-steps-step-button-carousel-item-background-after: var(--bal-form-field-control-border-color);--bal-steps-step-button-carousel-item-passed-background-after: var(--bal-form-field-control-border-color-active);--bal-steps-step-border-width: var(--bal-form-field-control-border-width);--bal-steps-step-border-style: var(--bal-form-field-control-border-style);--bal-steps-step-border-color: var(--bal-form-field-control-border-color);--bal-steps-step-border-color-active: var(--bal-form-field-control-border-color-active);--bal-steps-step-border-color-disabled: var(--bal-form-field-control-disabled-background);--bal-steps-step-border-color-done: var(--bal-form-field-control-border-color-active);--bal-steps-step-border-color-failed: var(--bal-color-danger);--bal-steps-step-icon-radius: var(--bal-radius-rounded);--bal-steps-step-button-progress-line-radius: var(--bal-radius-rounded);--bal-steps-step-button-carousel-item-radius: var(--bal-radius-rounded);--bal-steps-step-label-text-color: var(--bal-color-text-primary-light);--bal-steps-step-label-text-color-done: var(--bal-color-text-primary);--bal-steps-step-label-text-color-active: var(--bal-color-text-primary);--bal-steps-step-label-text-color-failed: var(--bal-color-text-danger);--bal-steps-step-label-text-color-disabled: var(--bal-color-text-grey);--bal-steps-step-icon-text-color: var(--bal-color-text-primary);--bal-steps-step-icon-text-color-active: var(--bal-color-text-white);--bal-steps-step-icon-text-color-disabled: var(--bal-color-text-grey);--bal-steps-step-icon-text-color-done: var(--bal-color-text-white);--bal-steps-step-icon-text-color-failed: var(--bal-color-text-white)}.bal-steps__nav__item{display:flex;box-sizing:border-box;gap:.5rem;flex-direction:column;flex-basis:1rem;flex-grow:1;flex-shrink:1;text-decoration:none;cursor:default;position:relative;min-width:3rem;padding-top:6px}.bal-steps__nav__item--hidden{display:none !important;visibility:hidden !important}.bal-steps__nav__item--clickable{cursor:pointer;pointer-events:all}.bal-steps__nav__item:not(:last-child)::after{content:" ";display:block;position:absolute;height:var(--bal-border-width-normal);left:50%;right:-50%;top:50%;background-color:var(--bal-steps-step-button-progress-line-background);border-radius:var(--bal-steps-step-button-progress-line-radius);margin-top:3px;margin-left:calc(1.5rem - var(--bal-border-width-normal));margin-right:1.25rem}@media screen and (min-width: 769px),print{.bal-steps__nav__item:not(:last-child)::after{top:1rem;margin-top:6px;margin-left:calc(1.5rem - var(--bal-border-width-normal));margin-right:1.5rem}}.bal-steps__nav__item--passed:not(:last-child)::after{background-color:var(--bal-steps-step-button-passed-background)}.bal-steps__nav__carousel__item{flex:1;min-width:3rem}.bal-steps__nav__carousel__item:not(:last-child)::after{content:" ";display:block;position:absolute;height:var(--bal-border-width-normal);left:50%;right:-50%;top:50%;background-color:var(--bal-steps-step-button-carousel-item-background-after);border-radius:var(--bal-steps-step-button-carousel-item-radius);margin-top:3px;margin-left:1.25rem;margin-right:1.25rem}@media screen and (min-width: 769px),print{.bal-steps__nav__carousel__item:not(:last-child)::after{top:1rem;margin-top:6px;margin-left:1.5rem;margin-right:1.5rem}}.bal-steps__nav__carousel__item--passed:not(:last-child)::after{background-color:var(--bal-steps-step-button-carousel-item-passed-background-after)}@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow) !important}}@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused.bal-steps__nav__item--inverted .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow-inverted) !important}}:root{--bal-steps-step-icon-background: var(--bal-color-white);--bal-steps-step-icon-background-active: var(--bal-color-primary);--bal-steps-step-icon-background-disabled: var(--bal-color-grey-2);--bal-steps-step-icon-background-done: var(--bal-color-primary);--bal-steps-step-icon-background-failed: var(--bal-color-danger);--bal-steps-step-button-progress-line-background: var(--bal-form-field-control-border-color);--bal-steps-step-button-passed-background: var(--bal-form-field-control-border-color-active);--bal-steps-step-button-carousel-item-background-after: var(--bal-form-field-control-border-color);--bal-steps-step-button-carousel-item-passed-background-after: var(--bal-form-field-control-border-color-active);--bal-steps-step-border-width: var(--bal-form-field-control-border-width);--bal-steps-step-border-style: var(--bal-form-field-control-border-style);--bal-steps-step-border-color: var(--bal-form-field-control-border-color);--bal-steps-step-border-color-active: var(--bal-form-field-control-border-color-active);--bal-steps-step-border-color-disabled: var(--bal-form-field-control-disabled-background);--bal-steps-step-border-color-done: var(--bal-form-field-control-border-color-active);--bal-steps-step-border-color-failed: var(--bal-color-danger);--bal-steps-step-icon-radius: var(--bal-radius-rounded);--bal-steps-step-button-progress-line-radius: var(--bal-radius-rounded);--bal-steps-step-button-carousel-item-radius: var(--bal-radius-rounded);--bal-steps-step-label-text-color: var(--bal-color-text-primary-light);--bal-steps-step-label-text-color-done: var(--bal-color-text-primary);--bal-steps-step-label-text-color-active: var(--bal-color-text-primary);--bal-steps-step-label-text-color-failed: var(--bal-color-text-danger);--bal-steps-step-label-text-color-disabled: var(--bal-color-text-grey);--bal-steps-step-icon-text-color: var(--bal-color-text-primary);--bal-steps-step-icon-text-color-active: var(--bal-color-text-white);--bal-steps-step-icon-text-color-disabled: var(--bal-color-text-grey);--bal-steps-step-icon-text-color-done: var(--bal-color-text-white);--bal-steps-step-icon-text-color-failed: var(--bal-color-text-white)}.bal-steps__nav__item__icon{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;font-weight:var(--bal-font-weight-bold);border-radius:var(--bal-steps-step-icon-radius);font-size:var(--bal-text-size-small);height:1.5rem;width:1.5rem;left:calc(50% - .75rem);border:var(--bal-steps-step-border-width) var(--bal-steps-step-border-style) var(--bal-steps-step-border-color);background:var(--bal-steps-step-icon-background);color:var(--bal-steps-step-icon-text-color)}@media screen and (min-width: 769px),print{.bal-steps__nav__item__icon{height:2rem;width:2rem;left:calc(50% - 1rem);font-size:var(--bal-text-size-normal)}}.bal-steps__nav__item__icon--active{border-color:var(--bal-steps-step-border-color-active);background:var(--bal-steps-step-icon-background-active);color:var(--bal-steps-step-icon-text-color-active)}.bal-steps__nav__item__icon--done{border-color:var(--bal-steps-step-border-color-done);background:var(--bal-steps-step-icon-background-done);color:var(--bal-steps-step-icon-text-color-done)}.bal-steps__nav__item__icon--failed{border-color:var(--bal-steps-step-border-color-failed);background:var(--bal-steps-step-icon-background-failed);color:var(--bal-steps-step-icon-text-color-failed);font-size:var(--bal-text-size-normal)}@media screen and (min-width: 769px),print{.bal-steps__nav__item__icon--failed{font-size:var(--bal-text-size-large-tablet)}}@media screen and (min-width: 1024px){.bal-steps__nav__item__icon--failed{font-size:var(--bal-text-size-large-desktop)}}.bal-steps__nav__item__icon--disabled{border-color:var(--bal-steps-step-border-color-disabled);background:var(--bal-steps-step-icon-background-disabled);color:var(--bal-steps-step-icon-text-color-disabled)}@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow) !important}}@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused.bal-steps__nav__item--inverted .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow-inverted) !important}}.bal-steps__nav__item__label{display:none}@media screen and (min-width: 769px),print{.bal-steps__nav__item__label{display:block;font-family:var(--bal-font-family-title);font-weight:var(--bal-font-weight-bold);font-size:var(--bal-text-size-normal);text-align:center;width:100%;hyphens:auto;user-select:none;color:var(--bal-steps-step-label-text-color)}.bal-steps__nav__item__label--done{color:var(--bal-steps-step-label-text-color-done)}.bal-steps__nav__item__label--active{color:var(--bal-steps-step-label-text-color-active)}.bal-steps__nav__item__label--failed{color:var(--bal-steps-step-label-text-color-failed)}.bal-steps__nav__item__label--disabled{color:var(--bal-steps-step-label-text-color-disabled)}}.bal-steps{display:block;position:static}.bal-steps__nav{-webkit-overflow-scrolling:touch;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bal-step-item{width:100%;display:none}.bal-step-item--active{display:block}
|
|
1
|
+
@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow) !important}}@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused.bal-steps__nav__item--inverted .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow-inverted) !important}}@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow) !important}}@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused.bal-steps__nav__item--inverted .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow-inverted) !important}}:root{--bal-steps-step-icon-background: var(--bal-color-white);--bal-steps-step-icon-background-active: var(--bal-color-primary);--bal-steps-step-icon-background-disabled: var(--bal-color-grey-2);--bal-steps-step-icon-background-done: var(--bal-color-primary);--bal-steps-step-icon-background-failed: var(--bal-color-danger);--bal-steps-step-button-progress-line-background: var(--bal-form-field-control-border-color);--bal-steps-step-button-passed-background: var(--bal-form-field-control-border-color-active);--bal-steps-step-button-carousel-item-background-after: var(--bal-form-field-control-border-color);--bal-steps-step-button-carousel-item-passed-background-after: var(--bal-form-field-control-border-color-active);--bal-steps-step-button-progress-line-background-light-blue: var(--bal-color-primary-2);--bal-steps-step-button-passed-background-light-blue: var(--bal-color-primary);--bal-steps-step-button-progress-line-background-purple: var(--bal-color-purple-2);--bal-steps-step-button-passed-background-purple: var(--bal-color-primary);--bal-steps-step-button-progress-line-background-green: var(--bal-color-green-2);--bal-steps-step-button-passed-background-green: var(--bal-color-primary);--bal-steps-step-button-progress-line-background-red: var(--bal-color-red-2);--bal-steps-step-button-passed-background-red: var(--bal-color-primary);--bal-steps-step-button-progress-line-background-yellow: var(--bal-color-yellow-2);--bal-steps-step-button-passed-background-yellow: var(--bal-color-primary);--bal-steps-step-border-width: var(--bal-form-field-control-border-width);--bal-steps-step-border-style: var(--bal-form-field-control-border-style);--bal-steps-step-border-color: var(--bal-form-field-control-border-color);--bal-steps-step-border-color-active: var(--bal-form-field-control-border-color-active);--bal-steps-step-border-color-disabled: var(--bal-form-field-control-disabled-background);--bal-steps-step-border-color-done: var(--bal-form-field-control-border-color-active);--bal-steps-step-border-color-failed: var(--bal-color-danger);--bal-steps-step-icon-radius: var(--bal-radius-rounded);--bal-steps-step-button-progress-line-radius: var(--bal-radius-rounded);--bal-steps-step-button-carousel-item-radius: var(--bal-radius-rounded);--bal-steps-step-label-text-color: var(--bal-color-text-primary-light);--bal-steps-step-label-text-color-done: var(--bal-color-text-primary);--bal-steps-step-label-text-color-active: var(--bal-color-text-primary);--bal-steps-step-label-text-color-failed: var(--bal-color-text-danger);--bal-steps-step-label-text-color-disabled: var(--bal-color-text-grey);--bal-steps-step-icon-text-color: var(--bal-color-text-primary);--bal-steps-step-icon-text-color-active: var(--bal-color-text-white);--bal-steps-step-icon-text-color-disabled: var(--bal-color-text-grey);--bal-steps-step-icon-text-color-done: var(--bal-color-text-white);--bal-steps-step-icon-text-color-failed: var(--bal-color-text-white)}.bal-steps__nav__item{display:flex;box-sizing:border-box;gap:.5rem;flex-direction:column;flex-basis:1rem;flex-grow:1;flex-shrink:1;text-decoration:none;cursor:default;position:relative;min-width:3rem;padding-top:6px}.bal-steps__nav__item--hidden{display:none !important;visibility:hidden !important}.bal-steps__nav__item--clickable{cursor:pointer;pointer-events:all}.bal-steps__nav__item:not(:last-child)::after{content:" ";display:block;position:absolute;height:var(--bal-border-width-normal);left:50%;right:-50%;top:50%;background-color:var(--bal-steps-step-button-progress-line-background);border-radius:var(--bal-steps-step-button-progress-line-radius);margin-top:3px;margin-left:calc(1.5rem - var(--bal-border-width-normal));margin-right:1.25rem}@media screen and (min-width: 769px),print{.bal-steps__nav__item:not(:last-child)::after{top:1rem;margin-top:6px;margin-left:calc(1.5rem - var(--bal-border-width-normal));margin-right:1.5rem}}.bal-steps__nav__item--passed:not(:last-child)::after{background-color:var(--bal-steps-step-button-passed-background)}.bal-steps__nav__carousel__item{flex:1;min-width:3rem}.bal-steps__nav__carousel__item:not(:last-child)::after{content:" ";display:block;position:absolute;height:var(--bal-border-width-normal);left:50%;right:-50%;top:50%;background-color:var(--bal-steps-step-button-carousel-item-background-after);border-radius:var(--bal-steps-step-button-carousel-item-radius);margin-top:3px;margin-left:1.25rem;margin-right:1.25rem}@media screen and (min-width: 769px),print{.bal-steps__nav__carousel__item:not(:last-child)::after{top:1rem;margin-top:6px;margin-left:1.5rem;margin-right:1.5rem}}.bal-steps__nav__carousel__item--passed:not(:last-child)::after{background-color:var(--bal-steps-step-button-carousel-item-passed-background-after)}.bal-steps__nav__carousel__item:not(:last-child).bal-steps__nav__carousel__item--color-light-blue::after{background-color:var(--bal-steps-step-button-progress-line-background-light-blue)}.bal-steps__nav__carousel__item:not(:last-child).bal-steps__nav__carousel__item--color-purple::after{background-color:var(--bal-steps-step-button-progress-line-background-purple)}.bal-steps__nav__carousel__item:not(:last-child).bal-steps__nav__carousel__item--color-red::after{background-color:var(--bal-steps-step-button-progress-line-background-red)}.bal-steps__nav__carousel__item:not(:last-child).bal-steps__nav__carousel__item--color-yellow::after{background-color:var(--bal-steps-step-button-progress-line-background-yellow)}.bal-steps__nav__carousel__item:not(:last-child).bal-steps__nav__carousel__item--color-green::after{background-color:var(--bal-steps-step-button-progress-line-background-green)}.bal-steps__nav__carousel__item--passed:not(:last-child).bal-steps__nav__carousel__item--color-light-blue::after{background-color:var(--bal-steps-step-button-passed-background-light-blue)}.bal-steps__nav__carousel__item--passed:not(:last-child).bal-steps__nav__carousel__item--color-purple::after{background-color:var(--bal-steps-step-button-passed-background-purple)}.bal-steps__nav__carousel__item--passed:not(:last-child).bal-steps__nav__carousel__item--color-red::after{background-color:var(--bal-steps-step-button-passed-background-red)}.bal-steps__nav__carousel__item--passed:not(:last-child).bal-steps__nav__carousel__item--color-yellow::after{background-color:var(--bal-steps-step-button-passed-background-yellow)}.bal-steps__nav__carousel__item--passed:not(:last-child).bal-steps__nav__carousel__item--color-green::after{background-color:var(--bal-steps-step-button-passed-background-green)}.bal-steps__nav__item--color-light-blue:not(.bal-steps__nav__item--active,.bal-steps__nav__item--done,.bal-steps__nav__item--failed,.bal-steps__nav__item--disabled) .bal-steps__nav__item__icon{border-color:var(--bal-steps-step-button-progress-line-background-light-blue)}.bal-steps__nav__item--color-light-blue.bal-steps__nav__item--disabled .bal-steps__nav__item__icon{opacity:.6;background:var(--bal-steps-step-button-progress-line-background-light-blue);border-color:var(--bal-steps-step-button-progress-line-background-light-blue);color:var(--bal-color-primary-4)}.bal-steps__nav__item--color-light-blue.bal-steps__nav__item--disabled .bal-steps__nav__item__label{opacity:.6}.bal-steps__nav__item--color-purple:not(.bal-steps__nav__item--active,.bal-steps__nav__item--done,.bal-steps__nav__item--failed,.bal-steps__nav__item--disabled) .bal-steps__nav__item__icon{border-color:var(--bal-steps-step-button-progress-line-background-purple)}.bal-steps__nav__item--color-purple.bal-steps__nav__item--disabled .bal-steps__nav__item__icon{opacity:.6;background:var(--bal-steps-step-button-progress-line-background-purple);border-color:var(--bal-steps-step-button-progress-line-background-purple)}.bal-steps__nav__item--color-purple.bal-steps__nav__item--disabled .bal-steps__nav__item__label{opacity:.6}.bal-steps__nav__item--color-green:not(.bal-steps__nav__item--active,.bal-steps__nav__item--done,.bal-steps__nav__item--failed,.bal-steps__nav__item--disabled) .bal-steps__nav__item__icon{border-color:var(--bal-steps-step-button-progress-line-background-green)}.bal-steps__nav__item--color-green.bal-steps__nav__item--disabled .bal-steps__nav__item__icon{opacity:.6;background:var(--bal-steps-step-button-progress-line-background-green);border-color:var(--bal-steps-step-button-progress-line-background-green)}.bal-steps__nav__item--color-green.bal-steps__nav__item--disabled .bal-steps__nav__item__label{opacity:.6}.bal-steps__nav__item--color-yellow:not(.bal-steps__nav__item--active,.bal-steps__nav__item--done,.bal-steps__nav__item--failed,.bal-steps__nav__item--disabled) .bal-steps__nav__item__icon{border-color:var(--bal-steps-step-button-progress-line-background-yellow)}.bal-steps__nav__item--color-yellow.bal-steps__nav__item--disabled .bal-steps__nav__item__icon{opacity:.6;background:var(--bal-steps-step-button-progress-line-background-yellow);border-color:var(--bal-steps-step-button-progress-line-background-yellow)}.bal-steps__nav__item--color-yellow.bal-steps__nav__item--disabled .bal-steps__nav__item__label{opacity:.6}.bal-steps__nav__item--color-red:not(.bal-steps__nav__item--active,.bal-steps__nav__item--done,.bal-steps__nav__item--failed,.bal-steps__nav__item--disabled) .bal-steps__nav__item__icon{border-color:var(--bal-steps-step-button-progress-line-background-red)}.bal-steps__nav__item--color-red.bal-steps__nav__item--disabled .bal-steps__nav__item__icon{opacity:.6;background:var(--bal-steps-step-button-progress-line-background-red);border-color:var(--bal-steps-step-button-progress-line-background-red)}.bal-steps__nav__item--color-red.bal-steps__nav__item--disabled .bal-steps__nav__item__label{opacity:.6}@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow) !important}}@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused.bal-steps__nav__item--inverted .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow-inverted) !important}}:root{--bal-steps-step-icon-background: var(--bal-color-white);--bal-steps-step-icon-background-active: var(--bal-color-primary);--bal-steps-step-icon-background-disabled: var(--bal-color-grey-2);--bal-steps-step-icon-background-done: var(--bal-color-primary);--bal-steps-step-icon-background-failed: var(--bal-color-danger);--bal-steps-step-button-progress-line-background: var(--bal-form-field-control-border-color);--bal-steps-step-button-passed-background: var(--bal-form-field-control-border-color-active);--bal-steps-step-button-carousel-item-background-after: var(--bal-form-field-control-border-color);--bal-steps-step-button-carousel-item-passed-background-after: var(--bal-form-field-control-border-color-active);--bal-steps-step-button-progress-line-background-light-blue: var(--bal-color-primary-2);--bal-steps-step-button-passed-background-light-blue: var(--bal-color-primary);--bal-steps-step-button-progress-line-background-purple: var(--bal-color-purple-2);--bal-steps-step-button-passed-background-purple: var(--bal-color-primary);--bal-steps-step-button-progress-line-background-green: var(--bal-color-green-2);--bal-steps-step-button-passed-background-green: var(--bal-color-primary);--bal-steps-step-button-progress-line-background-red: var(--bal-color-red-2);--bal-steps-step-button-passed-background-red: var(--bal-color-primary);--bal-steps-step-button-progress-line-background-yellow: var(--bal-color-yellow-2);--bal-steps-step-button-passed-background-yellow: var(--bal-color-primary);--bal-steps-step-border-width: var(--bal-form-field-control-border-width);--bal-steps-step-border-style: var(--bal-form-field-control-border-style);--bal-steps-step-border-color: var(--bal-form-field-control-border-color);--bal-steps-step-border-color-active: var(--bal-form-field-control-border-color-active);--bal-steps-step-border-color-disabled: var(--bal-form-field-control-disabled-background);--bal-steps-step-border-color-done: var(--bal-form-field-control-border-color-active);--bal-steps-step-border-color-failed: var(--bal-color-danger);--bal-steps-step-icon-radius: var(--bal-radius-rounded);--bal-steps-step-button-progress-line-radius: var(--bal-radius-rounded);--bal-steps-step-button-carousel-item-radius: var(--bal-radius-rounded);--bal-steps-step-label-text-color: var(--bal-color-text-primary-light);--bal-steps-step-label-text-color-done: var(--bal-color-text-primary);--bal-steps-step-label-text-color-active: var(--bal-color-text-primary);--bal-steps-step-label-text-color-failed: var(--bal-color-text-danger);--bal-steps-step-label-text-color-disabled: var(--bal-color-text-grey);--bal-steps-step-icon-text-color: var(--bal-color-text-primary);--bal-steps-step-icon-text-color-active: var(--bal-color-text-white);--bal-steps-step-icon-text-color-disabled: var(--bal-color-text-grey);--bal-steps-step-icon-text-color-done: var(--bal-color-text-white);--bal-steps-step-icon-text-color-failed: var(--bal-color-text-white)}.bal-steps__nav__item__icon{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;font-weight:var(--bal-font-weight-bold);border-radius:var(--bal-steps-step-icon-radius);font-size:var(--bal-text-size-small);height:1.5rem;width:1.5rem;left:calc(50% - .75rem);border:var(--bal-steps-step-border-width) var(--bal-steps-step-border-style) var(--bal-steps-step-border-color);background:var(--bal-steps-step-icon-background);color:var(--bal-steps-step-icon-text-color)}@media screen and (min-width: 769px),print{.bal-steps__nav__item__icon{height:2rem;width:2rem;left:calc(50% - 1rem);font-size:var(--bal-text-size-normal)}}.bal-steps__nav__item__icon--active{border-color:var(--bal-steps-step-border-color-active);background:var(--bal-steps-step-icon-background-active);color:var(--bal-steps-step-icon-text-color-active)}.bal-steps__nav__item__icon--done{border-color:var(--bal-steps-step-border-color-done);background:var(--bal-steps-step-icon-background-done);color:var(--bal-steps-step-icon-text-color-done)}.bal-steps__nav__item__icon--failed{border-color:var(--bal-steps-step-border-color-failed);background:var(--bal-steps-step-icon-background-failed);color:var(--bal-steps-step-icon-text-color-failed);font-size:var(--bal-text-size-normal)}@media screen and (min-width: 769px),print{.bal-steps__nav__item__icon--failed{font-size:var(--bal-text-size-large-tablet)}}@media screen and (min-width: 1024px){.bal-steps__nav__item__icon--failed{font-size:var(--bal-text-size-large-desktop)}}.bal-steps__nav__item__icon--disabled{border-color:var(--bal-steps-step-border-color-disabled);background:var(--bal-steps-step-icon-background-disabled);color:var(--bal-steps-step-icon-text-color-disabled);opacity:.6}@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow) !important}}@media(hover: hover)and (pointer: fine){.bal-steps__nav__item.bal-focused.bal-steps__nav__item--inverted .bal-steps__nav__item__icon{box-shadow:var(--bal-focus-shadow-inverted) !important}}.bal-steps__nav__item__label{display:none}@media screen and (min-width: 769px),print{.bal-steps__nav__item__label{display:block;font-family:var(--bal-font-family-title);font-weight:var(--bal-font-weight-bold);font-size:var(--bal-text-size-normal);text-align:center;width:100%;hyphens:auto;user-select:none;color:var(--bal-steps-step-label-text-color)}.bal-steps__nav__item__label--done{color:var(--bal-steps-step-label-text-color-done)}.bal-steps__nav__item__label--active{color:var(--bal-steps-step-label-text-color-active)}.bal-steps__nav__item__label--failed{color:var(--bal-steps-step-label-text-color-failed)}.bal-steps__nav__item__label--disabled{color:var(--bal-steps-step-label-text-color-disabled);opacity:.6}}.bal-steps{display:block;position:static}.bal-steps__nav{-webkit-overflow-scrolling:touch;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bal-step-item{width:100%;display:none}.bal-step-item--active{display:block}
|
|
@@ -83,6 +83,7 @@ export class Steps {
|
|
|
83
83
|
this.store = [];
|
|
84
84
|
this.options = [];
|
|
85
85
|
this.clickable = true;
|
|
86
|
+
this.color = 'primary';
|
|
86
87
|
this.debounce = 0;
|
|
87
88
|
this.value = undefined;
|
|
88
89
|
}
|
|
@@ -176,9 +177,9 @@ export class Steps {
|
|
|
176
177
|
.join(','), "data-label": this.store
|
|
177
178
|
.filter(t => this.isActive(t))
|
|
178
179
|
.map(t => t.label)
|
|
179
|
-
.join(',') }, h("nav", {
|
|
180
|
+
.join(',') }, h("nav", { class: Object.assign({}, bemStepsNav.class()), role: "tablist", "aria-live": "polite" }, h("bal-carousel", { class: Object.assign({}, bemStepsNav.element('carousel').class()), htmlRole: '', onBalChange: stopEventBubbling, controls: "small", "items-per-view": "auto", steps: 3 }, steps
|
|
180
181
|
.filter(step => !step.invisible)
|
|
181
|
-
.map(step => (h("bal-carousel-item", { key: step.value, class: Object.assign(Object.assign({}, bemStepsNav.element('carousel').element('item').class()), bemStepsNav.element('carousel').element('item').modifier('passed').class(step.passed)) }, h(StepButton, { item: step, isMobile: this.isMobile, clickable: this.clickable && !step.disabled, onSelectTab: this.onSelectTab })))))), h("div", { id: this.stepsId, class: Object.assign({}, block.element('steps__content').class()) }, h("slot", null))));
|
|
182
|
+
.map(step => (h("bal-carousel-item", { key: step.value, htmlRole: '', class: Object.assign(Object.assign(Object.assign({}, bemStepsNav.element('carousel').element('item').class()), bemStepsNav.element('carousel').element('item').modifier(`color-${this.color}`).class()), bemStepsNav.element('carousel').element('item').modifier('passed').class(step.passed)) }, h(StepButton, { item: step, color: this.color, isMobile: this.isMobile, clickable: this.clickable && !step.disabled, onSelectTab: this.onSelectTab })))))), h("div", { id: this.stepsId, class: Object.assign({}, block.element('steps__content').class()) }, h("slot", null))));
|
|
182
183
|
}
|
|
183
184
|
static get is() { return "bal-steps"; }
|
|
184
185
|
static get originalStyleUrls() {
|
|
@@ -233,6 +234,29 @@ export class Steps {
|
|
|
233
234
|
"reflect": false,
|
|
234
235
|
"defaultValue": "true"
|
|
235
236
|
},
|
|
237
|
+
"color": {
|
|
238
|
+
"type": "string",
|
|
239
|
+
"mutable": false,
|
|
240
|
+
"complexType": {
|
|
241
|
+
"original": "BalProps.BalStepsColor",
|
|
242
|
+
"resolved": "\"green\" | \"light-blue\" | \"primary\" | \"purple\" | \"red\" | \"yellow\"",
|
|
243
|
+
"references": {
|
|
244
|
+
"BalProps": {
|
|
245
|
+
"location": "global",
|
|
246
|
+
"id": "global::BalProps"
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
},
|
|
250
|
+
"required": false,
|
|
251
|
+
"optional": false,
|
|
252
|
+
"docs": {
|
|
253
|
+
"tags": [],
|
|
254
|
+
"text": "Defines the color of the steps so it can be placed on colored backgrounds"
|
|
255
|
+
},
|
|
256
|
+
"attribute": "color",
|
|
257
|
+
"reflect": false,
|
|
258
|
+
"defaultValue": "'primary'"
|
|
259
|
+
},
|
|
236
260
|
"debounce": {
|
|
237
261
|
"type": "number",
|
|
238
262
|
"mutable": false,
|
|
@@ -2,10 +2,10 @@ import { h } from "@stencil/core";
|
|
|
2
2
|
import { BEM } from "../../../utils/bem";
|
|
3
3
|
import { StepIcon } from "./step-icon";
|
|
4
4
|
import { StepLabel } from "./step-label";
|
|
5
|
-
export const StepButton = ({ item, isMobile, clickable, onSelectTab }) => {
|
|
5
|
+
export const StepButton = ({ item, color, isMobile, clickable, onSelectTab }) => {
|
|
6
6
|
const bemEl = BEM.block('steps').element('nav').element('item');
|
|
7
7
|
if (item.invisible) {
|
|
8
8
|
return;
|
|
9
9
|
}
|
|
10
|
-
return (h("a", { role: "tab", class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, bemEl.class()), bemEl.modifier('done').class(item.done)), bemEl.modifier('active').class(item.active)), bemEl.modifier('failed').class(item.failed)), bemEl.modifier('disabled').class(item.disabled)), bemEl.modifier('clickable').class(clickable)), bemEl.modifier('passed').class(item.passed)), { 'bal-focusable': !item.disabled && !item.invisible }), "data-label": item.label, "data-value": item.value, "data-index": item.index, "data-testid": "bal-steps-option", "aria-disabled": `${item.disabled}`, href: item.href === '' ? 'javascript:;' : item.href, target: item.target, onClick: (ev) => onSelectTab(ev, item) }, h(StepIcon, { item: item, isMobile: isMobile }), h(StepLabel, { item: item })));
|
|
10
|
+
return (h("a", { role: "tab", class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, bemEl.class()), bemEl.modifier(`color-${color}`).class()), bemEl.modifier('done').class(item.done)), bemEl.modifier('active').class(item.active)), bemEl.modifier('failed').class(item.failed)), bemEl.modifier('disabled').class(item.disabled)), bemEl.modifier('clickable').class(clickable)), bemEl.modifier('passed').class(item.passed)), { 'bal-focusable': !item.disabled && !item.invisible }), "data-label": item.label, "data-value": item.value, "data-index": item.index, "data-testid": "bal-steps-option", "aria-disabled": `${item.disabled}`, href: item.href === '' ? 'javascript:;' : item.href, target: item.target, onClick: (ev) => onSelectTab(ev, item) }, h(StepIcon, { item: item, isMobile: isMobile }), h(StepLabel, { item: item })));
|
|
11
11
|
};
|
|
@@ -15,6 +15,8 @@ export class TabItem {
|
|
|
15
15
|
this.invisible = false;
|
|
16
16
|
this.prevent = false;
|
|
17
17
|
this.icon = undefined;
|
|
18
|
+
this.noPanel = false;
|
|
19
|
+
this.aria = undefined;
|
|
18
20
|
}
|
|
19
21
|
componentWillLoad() {
|
|
20
22
|
this.inheritAttributes = inheritTrackingAttributes(this.el);
|
|
@@ -47,13 +49,17 @@ export class TabItem {
|
|
|
47
49
|
prevent: this.prevent,
|
|
48
50
|
navigate: this.balNavigate,
|
|
49
51
|
trackingData: this.inheritAttributes,
|
|
52
|
+
noPanel: this.noPanel,
|
|
53
|
+
aria: this.aria,
|
|
50
54
|
};
|
|
51
55
|
}
|
|
52
56
|
render() {
|
|
53
|
-
|
|
57
|
+
const hasPanel = !this.noPanel;
|
|
58
|
+
const noPanelOrInactive = !this.isActive || this.noPanel;
|
|
59
|
+
return (h(Host, { id: this.tabPanelID, class: {
|
|
54
60
|
'bal-tab-item': true,
|
|
55
61
|
'bal-tab-item--active': this.isActive,
|
|
56
|
-
} }, h("slot", null)));
|
|
62
|
+
}, role: hasPanel ? 'tabpanel' : undefined, "aria-label": hasPanel ? this.label : undefined, "aria-hidden": noPanelOrInactive ? 'true' : 'false', tabindex: noPanelOrInactive ? '-1' : undefined, hidden: noPanelOrInactive ? true : undefined }, h("slot", null)));
|
|
57
63
|
}
|
|
58
64
|
static get is() { return "bal-tab-item"; }
|
|
59
65
|
static get properties() {
|
|
@@ -242,6 +248,45 @@ export class TabItem {
|
|
|
242
248
|
"attribute": "icon",
|
|
243
249
|
"reflect": true,
|
|
244
250
|
"defaultValue": "undefined"
|
|
251
|
+
},
|
|
252
|
+
"noPanel": {
|
|
253
|
+
"type": "boolean",
|
|
254
|
+
"mutable": false,
|
|
255
|
+
"complexType": {
|
|
256
|
+
"original": "boolean",
|
|
257
|
+
"resolved": "boolean",
|
|
258
|
+
"references": {}
|
|
259
|
+
},
|
|
260
|
+
"required": false,
|
|
261
|
+
"optional": false,
|
|
262
|
+
"docs": {
|
|
263
|
+
"tags": [],
|
|
264
|
+
"text": "If `true` the tab does not have a panel"
|
|
265
|
+
},
|
|
266
|
+
"attribute": "no-panel",
|
|
267
|
+
"reflect": false,
|
|
268
|
+
"defaultValue": "false"
|
|
269
|
+
},
|
|
270
|
+
"aria": {
|
|
271
|
+
"type": "unknown",
|
|
272
|
+
"mutable": false,
|
|
273
|
+
"complexType": {
|
|
274
|
+
"original": "BalProps.BalTabItemAria",
|
|
275
|
+
"resolved": "{ controls?: string; }",
|
|
276
|
+
"references": {
|
|
277
|
+
"BalProps": {
|
|
278
|
+
"location": "global",
|
|
279
|
+
"id": "global::BalProps"
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
},
|
|
283
|
+
"required": false,
|
|
284
|
+
"optional": true,
|
|
285
|
+
"docs": {
|
|
286
|
+
"tags": [],
|
|
287
|
+
"text": "A11y attributes for the native tab element."
|
|
288
|
+
},
|
|
289
|
+
"defaultValue": "undefined"
|
|
245
290
|
}
|
|
246
291
|
};
|
|
247
292
|
}
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
import { __decorate, __metadata } from "tslib";
|
|
2
2
|
import { Host, h, } from "@stencil/core";
|
|
3
3
|
import { areArraysEqual } from "@baloise/web-app-utils";
|
|
4
|
-
import { debounceEvent, deepReady, hasParent, isChildOfEventTarget, isDescendant, raf, transitionEndAsync, } from "../../utils/helpers";
|
|
4
|
+
import { debounceEvent, deepReady, hasParent, isChildOfEventTarget, isDescendant, raf, transitionEndAsync, waitAfterFramePaint, } from "../../utils/helpers";
|
|
5
5
|
import { ListenToConfig } from "../../utils/config";
|
|
6
6
|
import { BEM } from "../../utils/bem";
|
|
7
7
|
import { Logger } from "../../utils/log";
|
|
8
8
|
import { newBalTabOption } from "./bal-tab.util";
|
|
9
9
|
import { stopEventBubbling } from "../../utils/form-input";
|
|
10
10
|
import { TabSelect } from "./components/tab-select";
|
|
11
|
-
import { TabNav } from "./components/tab-nav";
|
|
12
11
|
import { getComputedPadding } from "../../utils/style";
|
|
13
12
|
import { ListenToBreakpoints, balBreakpoints } from "../../utils/breakpoints";
|
|
14
13
|
import { ListenToMutation } from "../../utils/mutation";
|
|
15
14
|
import { ListenToResize } from "../../utils/resize";
|
|
15
|
+
import { TabNav } from "./components/tab-nav";
|
|
16
|
+
import { toKebabCase } from "../../utils/string";
|
|
16
17
|
export class Tabs {
|
|
17
18
|
constructor() {
|
|
18
19
|
this.tabsId = `bal-tabs-${TabsIds++}`;
|
|
@@ -34,8 +35,8 @@ export class Tabs {
|
|
|
34
35
|
this.store = newStore;
|
|
35
36
|
}
|
|
36
37
|
else if (!this.optionalTabSelection && !this.accordion && this.value === undefined && this.store.length > 0) {
|
|
37
|
-
const
|
|
38
|
-
this.value =
|
|
38
|
+
const firstTab = this.store[0];
|
|
39
|
+
this.value = firstTab.value;
|
|
39
40
|
}
|
|
40
41
|
};
|
|
41
42
|
this.setActiveItem = () => {
|
|
@@ -47,7 +48,7 @@ export class Tabs {
|
|
|
47
48
|
};
|
|
48
49
|
this.setActiveContent = () => {
|
|
49
50
|
if (this.options.length === 0) {
|
|
50
|
-
this.items.forEach(item => item.setActive(this.
|
|
51
|
+
this.items.forEach(item => item.setActive(this.isTabActive(item)));
|
|
51
52
|
}
|
|
52
53
|
};
|
|
53
54
|
this.getLineSize = (element, padding) => {
|
|
@@ -242,25 +243,26 @@ export class Tabs {
|
|
|
242
243
|
console.warn('[WARN] - Could not read tab options');
|
|
243
244
|
}
|
|
244
245
|
};
|
|
245
|
-
this.onSelectTab = async (ev,
|
|
246
|
-
if (
|
|
246
|
+
this.onSelectTab = async (ev, tab) => {
|
|
247
|
+
if (tab.prevent || tab.disabled || !this.clickable) {
|
|
247
248
|
stopEventBubbling(ev);
|
|
248
249
|
}
|
|
249
|
-
if (!
|
|
250
|
+
if (!tab.disabled && this.clickable) {
|
|
250
251
|
if (this.accordion) {
|
|
251
|
-
if (
|
|
252
|
+
if (tab.value === this.value) {
|
|
252
253
|
this.toggleAccordionState();
|
|
253
254
|
}
|
|
254
255
|
else {
|
|
255
256
|
this.expandAccordion();
|
|
256
257
|
}
|
|
257
258
|
}
|
|
258
|
-
if (
|
|
259
|
-
|
|
259
|
+
if (tab.navigate) {
|
|
260
|
+
tab.navigate.emit(ev);
|
|
260
261
|
}
|
|
261
|
-
if (
|
|
262
|
-
this.balChange.emit(
|
|
263
|
-
await this.select(
|
|
262
|
+
if (tab.value !== this.value) {
|
|
263
|
+
this.balChange.emit(tab.value);
|
|
264
|
+
await this.select(tab);
|
|
265
|
+
await this.focus(tab);
|
|
264
266
|
}
|
|
265
267
|
}
|
|
266
268
|
};
|
|
@@ -358,6 +360,26 @@ export class Tabs {
|
|
|
358
360
|
isChildOfEventTarget(ev, this.el, () => this.animateLine());
|
|
359
361
|
this.isUsedInNavbar(ev);
|
|
360
362
|
}
|
|
363
|
+
listenToKeyDown(ev) {
|
|
364
|
+
if (this.isTabList) {
|
|
365
|
+
if (this.vertical !== false) {
|
|
366
|
+
if (ev.code === 'ArrowDown') {
|
|
367
|
+
this.tabListSelectNext(ev);
|
|
368
|
+
}
|
|
369
|
+
else if (ev.code === 'ArrowUp') {
|
|
370
|
+
this.tabListSelectPrevious(ev);
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
else {
|
|
374
|
+
if (ev.code === 'ArrowRight') {
|
|
375
|
+
this.tabListSelectNext(ev);
|
|
376
|
+
}
|
|
377
|
+
else if (ev.code === 'ArrowLeft') {
|
|
378
|
+
this.tabListSelectPrevious(ev);
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
}
|
|
361
383
|
isUsedInNavbar(ev) {
|
|
362
384
|
const target = ev.target;
|
|
363
385
|
const parentNavbar = target.closest('bal-navbar');
|
|
@@ -409,11 +431,17 @@ export class Tabs {
|
|
|
409
431
|
* PRIVATE METHODS
|
|
410
432
|
* ------------------------------------------------------
|
|
411
433
|
*/
|
|
434
|
+
get isTabList() {
|
|
435
|
+
return this.store.filter(tab => !!tab.href).length === 0;
|
|
436
|
+
}
|
|
412
437
|
get items() {
|
|
413
438
|
return Array.from(this.el.querySelectorAll(`#${this.tabsId} > bal-tab-item`));
|
|
414
439
|
}
|
|
415
|
-
|
|
416
|
-
return
|
|
440
|
+
isTabActive(tab) {
|
|
441
|
+
return tab.value === this.value;
|
|
442
|
+
}
|
|
443
|
+
isTabVisible(tab) {
|
|
444
|
+
return !tab.hidden;
|
|
417
445
|
}
|
|
418
446
|
parseVertical() {
|
|
419
447
|
if (this.vertical === 'true' || this.vertical === '') {
|
|
@@ -451,6 +479,73 @@ export class Tabs {
|
|
|
451
479
|
getCarouselElement() {
|
|
452
480
|
return this.el.querySelector(`#${this.tabsId}-carousel`);
|
|
453
481
|
}
|
|
482
|
+
/**
|
|
483
|
+
* PRIVATE Tab Navigation with Arrow Keys
|
|
484
|
+
* ------------------------------------------------------
|
|
485
|
+
*/
|
|
486
|
+
findNextTab(previous = false) {
|
|
487
|
+
const indexOfActive = this.store.findIndex(t => this.isTabActive(t));
|
|
488
|
+
let tabs = this.store.map((tab, index) => ({
|
|
489
|
+
index,
|
|
490
|
+
visible: !tab.hidden && !tab.disabled,
|
|
491
|
+
}));
|
|
492
|
+
if (previous) {
|
|
493
|
+
tabs = tabs.reverse();
|
|
494
|
+
}
|
|
495
|
+
const visibleTabs = tabs.filter(t => t.visible).map(t => t.index);
|
|
496
|
+
const findNextTabReducer = (acc, index) => {
|
|
497
|
+
// found a new higher index need to break out
|
|
498
|
+
if (acc > indexOfActive) {
|
|
499
|
+
return acc;
|
|
500
|
+
}
|
|
501
|
+
if (index <= acc) {
|
|
502
|
+
return acc;
|
|
503
|
+
}
|
|
504
|
+
else {
|
|
505
|
+
return index;
|
|
506
|
+
}
|
|
507
|
+
};
|
|
508
|
+
const findPreviousTabReducer = (acc, index) => {
|
|
509
|
+
// found a new lower index need to break out
|
|
510
|
+
if (acc < indexOfActive) {
|
|
511
|
+
return acc;
|
|
512
|
+
}
|
|
513
|
+
if (index >= acc) {
|
|
514
|
+
return acc;
|
|
515
|
+
}
|
|
516
|
+
else {
|
|
517
|
+
return index;
|
|
518
|
+
}
|
|
519
|
+
};
|
|
520
|
+
const reducer = previous ? findPreviousTabReducer : findNextTabReducer;
|
|
521
|
+
const nextIndex = visibleTabs.reduce((acc, value) => reducer(acc, value), indexOfActive);
|
|
522
|
+
return this.store[nextIndex];
|
|
523
|
+
}
|
|
524
|
+
findPreviousTab() {
|
|
525
|
+
return this.findNextTab(true);
|
|
526
|
+
}
|
|
527
|
+
tabListSelectNext(ev) {
|
|
528
|
+
const nextTab = this.findNextTab();
|
|
529
|
+
if (nextTab) {
|
|
530
|
+
this.onSelectTab(ev, nextTab);
|
|
531
|
+
}
|
|
532
|
+
}
|
|
533
|
+
tabListSelectPrevious(ev) {
|
|
534
|
+
const previousTab = this.findPreviousTab();
|
|
535
|
+
if (previousTab) {
|
|
536
|
+
this.onSelectTab(ev, previousTab);
|
|
537
|
+
}
|
|
538
|
+
}
|
|
539
|
+
async focus(tab) {
|
|
540
|
+
await waitAfterFramePaint();
|
|
541
|
+
const hasKeyboardFocus = this.el.querySelector(`button.bal-focused`) !== null;
|
|
542
|
+
if (hasKeyboardFocus) {
|
|
543
|
+
const tabEl = this.el.querySelector(`#${this.tabsId}-button-${toKebabCase(tab.value)}`);
|
|
544
|
+
if (tabEl) {
|
|
545
|
+
tabEl.focus({ preventScroll: true });
|
|
546
|
+
}
|
|
547
|
+
}
|
|
548
|
+
}
|
|
454
549
|
/**
|
|
455
550
|
* RENDER
|
|
456
551
|
* ------------------------------------------------------
|
|
@@ -467,13 +562,15 @@ export class Tabs {
|
|
|
467
562
|
const tabs = this.store.map(tab => (Object.assign(Object.assign({}, tab), { active: tab.value === this.value })));
|
|
468
563
|
const expanded = this.accordionState === 4 /* AccordionState.Expanded */ || this.accordionState === 8 /* AccordionState.Expanding */;
|
|
469
564
|
const contentPart = expanded ? 'content expanded' : 'content';
|
|
565
|
+
const valueExists = this.value !== undefined && !!this.store.find(o => o.value === this.value);
|
|
566
|
+
const isLinkList = !this.isTabList;
|
|
470
567
|
return (h(Host, { class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, block.class()), block.modifier('navbar').class(this.inNavbar)), block.modifier('vertical').class(isVertical)), block.modifier('fullwidth').class(this.expanded || this.fullwidth)), block.modifier('accordion').class(this.accordion)), block.modifier('animated').class(this.animated)), block.modifier('expanding').class(this.accordionState === 8 /* AccordionState.Expanding */)), block.modifier('expanded').class(this.accordionState === 4 /* AccordionState.Expanded */)), block.modifier('collapsing').class(this.accordionState === 2 /* AccordionState.Collapsing */)), block.modifier('collapsed').class(this.accordionState === 1 /* AccordionState.Collapsed */)), "data-value": this.store
|
|
471
|
-
.filter(t => this.
|
|
568
|
+
.filter(t => this.isTabActive(t))
|
|
472
569
|
.map(t => t.value)
|
|
473
570
|
.join(','), "data-label": this.store
|
|
474
|
-
.filter(t => this.
|
|
571
|
+
.filter(t => this.isTabActive(t))
|
|
475
572
|
.map(t => t.label)
|
|
476
|
-
.join(',') }, isSelect ? (h(TabSelect, { value: this.value, items: tabs, onSelectTab: this.onSelectTab })) : (h(TabNav, { items: tabs,
|
|
573
|
+
.join(',') }, isSelect ? (h(TabSelect, { value: this.value, items: tabs, onSelectTab: this.onSelectTab })) : (h(TabNav, { items: tabs, isLinkList: isLinkList, tabsId: this.tabsId, clickable: this.clickable, accordion: this.accordion, isAccordionOpen: this.isAccordionOpen, lineActive: valueExists, inverted: isInverted, animated: this.animated, context: this.context, border: this.border, spaceless: this.spaceless, expanded: this.expanded, isMobile: isMobile, isTouch: isTouch, isVertical: isVertical, inNavbar: this.inNavbar, hasCarousel: hasCarousel, iconPosition: this.iconPosition, verticalColSize: this.verticalColSize, onSelectTab: this.onSelectTab })), h("div", { part: contentPart, ref: contentEl => (this.contentEl = contentEl), class: Object.assign({}, block.element('tabs').element('content').class()) }, h("div", { id: this.tabsId, class: Object.assign({}, block.element('tabs').element('content').element('wrapper').class()), ref: contentElWrapper => (this.contentElWrapper = contentElWrapper) }, h("slot", null)))));
|
|
477
574
|
}
|
|
478
575
|
static get is() { return "bal-tabs"; }
|
|
479
576
|
static get originalStyleUrls() {
|
|
@@ -586,7 +683,7 @@ export class Tabs {
|
|
|
586
683
|
"optional": false,
|
|
587
684
|
"docs": {
|
|
588
685
|
"tags": [],
|
|
589
|
-
"text": "
|
|
686
|
+
"text": "Tabs can be passed as a property or through HTML markup."
|
|
590
687
|
},
|
|
591
688
|
"defaultValue": "[]"
|
|
592
689
|
},
|
|
@@ -683,7 +780,7 @@ export class Tabs {
|
|
|
683
780
|
"optional": false,
|
|
684
781
|
"docs": {
|
|
685
782
|
"tags": [],
|
|
686
|
-
"text": "If `true` the tabs or
|
|
783
|
+
"text": "If `true` the tabs or tabs can be clicked."
|
|
687
784
|
},
|
|
688
785
|
"attribute": "clickable",
|
|
689
786
|
"reflect": false,
|
|
@@ -1072,6 +1169,12 @@ export class Tabs {
|
|
|
1072
1169
|
"target": "window",
|
|
1073
1170
|
"capture": false,
|
|
1074
1171
|
"passive": false
|
|
1172
|
+
}, {
|
|
1173
|
+
"name": "keydown",
|
|
1174
|
+
"method": "listenToKeyDown",
|
|
1175
|
+
"target": undefined,
|
|
1176
|
+
"capture": false,
|
|
1177
|
+
"passive": false
|
|
1075
1178
|
}];
|
|
1076
1179
|
}
|
|
1077
1180
|
}
|
|
@@ -2,7 +2,9 @@ import { h } from "@stencil/core";
|
|
|
2
2
|
import { BEM } from "../../../utils/bem";
|
|
3
3
|
import { TabIcon } from "./tab-icon";
|
|
4
4
|
import { TabLabel } from "./tab-label";
|
|
5
|
-
|
|
5
|
+
import { toKebabCase } from "../../../utils/string";
|
|
6
|
+
export const TabButton = ({ item, tabsId, isFirst, isLast, isMobile, isVertical, accordion, isAccordionOpen, isLinkList, inverted, expanded, spaceless, clickable, iconPosition, context, onSelectTab, }) => {
|
|
7
|
+
var _a;
|
|
6
8
|
const bemEl = BEM.block('tabs').element('nav').element('item');
|
|
7
9
|
if (item.invisible) {
|
|
8
10
|
return;
|
|
@@ -15,13 +17,23 @@ export const TabButton = ({ item, tabsId, isFirst, isLast, isMobile, isVertical,
|
|
|
15
17
|
const hasLabelBubble = (!hasIcon && hasBubble && !accordion) ||
|
|
16
18
|
(hasBubble && !isMobile && iconPosition === 'horizontal' && !accordion) ||
|
|
17
19
|
(hasBubble && isVertical && !accordion);
|
|
18
|
-
const
|
|
19
|
-
const
|
|
20
|
-
|
|
20
|
+
const isTabButton = item.href === undefined || item.href === '';
|
|
21
|
+
const TagType = isTabButton ? 'button' : 'a';
|
|
22
|
+
const attrs = isTabButton
|
|
23
|
+
? {
|
|
24
|
+
'type': 'button',
|
|
25
|
+
'role': 'tab',
|
|
26
|
+
'aria-controls': ((_a = item.aria) === null || _a === void 0 ? void 0 : _a.controls) || item.tabPanelID || undefined,
|
|
27
|
+
'aria-expanded': item.active ? 'true' : 'false',
|
|
28
|
+
'aria-disabled': `${item.disabled}`,
|
|
29
|
+
'aria-label': item.label,
|
|
30
|
+
}
|
|
21
31
|
: {
|
|
22
32
|
href: item.href,
|
|
23
33
|
target: item.target,
|
|
24
34
|
};
|
|
25
|
-
|
|
35
|
+
if (!isLinkList) {
|
|
36
|
+
attrs['tabindex'] = item.active ? '0' : '-1';
|
|
37
|
+
}
|
|
38
|
+
return (h(TagType, Object.assign({ id: `${tabsId}-button-${toKebabCase(item.value)}`, class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, bemEl.class()), bemEl.modifier('active').class(item.active)), bemEl.modifier('disabled').class(item.disabled)), bemEl.modifier('clickable').class(clickable)), bemEl.modifier('accordion').class(accordion)), bemEl.modifier('inverted').class(inverted)), bemEl.modifier('expanded').class(expanded)), bemEl.modifier('spaceless').class(spaceless)), bemEl.modifier('first').class(isFirst)), bemEl.modifier('last').class(isLast)), bemEl.modifier('passed').class(item.passed)), bemEl.modifier('vertical').class(isVertical)), bemEl.modifier(`context-${context}`).class(context !== undefined)), bemEl.modifier(`icon-position-${iconPosition}`).class(iconPosition !== 'horizontal')), { 'bal-focusable': !item.disabled && !item.invisible }), draggable: false, "data-tabs": tabsId, "data-label": item.label, "data-value": item.value, "data-index": item.index, "data-testid": "bal-tabs-item", "aria-selected": !isTabButton ? undefined : item.active ? 'true' : 'false' }, attrs, { onClick: (ev) => onSelectTab(ev, item) }), item.icon ? (h(TabIcon, { accordion: false, item: item, isMobile: isMobile, hasBubble: hasIconBubble, inverted: inverted })) : (''), h(TabLabel, { item: item, isMobile: isMobile, isVertical: isVertical, hasBubble: hasLabelBubble, inverted: inverted, context: context }), accordion && !item.href ? (h(TabIcon, { accordion: accordion, isAccordionOpen: isAccordionOpen, item: item, isMobile: isMobile, hasBubble: hasAccordionIconBubble, inverted: inverted })) : ('')));
|
|
26
39
|
};
|
|
27
|
-
let TabButtonIds = 0;
|
|
@@ -2,10 +2,10 @@ import { h } from "@stencil/core";
|
|
|
2
2
|
import { BEM } from "../../../utils/bem";
|
|
3
3
|
import { stopEventBubbling } from "../../../utils/form-input";
|
|
4
4
|
import { TabButton } from "./tab-button";
|
|
5
|
-
export const TabNav = ({ items, tabsId, hasCarousel, isVertical, inNavbar, isMobile, isTouch, lineActive, border, accordion, isAccordionOpen, inverted, clickable, animated, spaceless, expanded, verticalColSize, iconPosition, context, onSelectTab, }) => {
|
|
5
|
+
export const TabNav = ({ items, tabsId, hasCarousel, isVertical, inNavbar, isMobile, isTouch, lineActive, isLinkList, border, accordion, isAccordionOpen, inverted, clickable, animated, spaceless, expanded, verticalColSize, iconPosition, context, onSelectTab, }) => {
|
|
6
6
|
const bemEl = BEM.block('tabs').element('nav');
|
|
7
7
|
const tabs = items.filter(tab => !tab.invisible);
|
|
8
8
|
const isFullHeight = inNavbar && !isTouch;
|
|
9
|
-
const Button = ({ item, index }) => (h(TabButton, { item: item, tabsId: tabsId, isFirst: index === 0, isLast: index === tabs.length - 1, isMobile: isMobile, isVertical: isVertical, iconPosition: iconPosition, spaceless: spaceless, inverted: inverted, accordion: accordion, isAccordionOpen: isAccordionOpen, context: context, expanded: expanded, clickable: clickable && !item.disabled, onSelectTab: onSelectTab }));
|
|
10
|
-
return (h("div", {
|
|
9
|
+
const Button = ({ item, index }) => (h(TabButton, { item: item, isLinkList: isLinkList, tabsId: tabsId, isFirst: index === 0, isLast: index === tabs.length - 1, isMobile: isMobile, isVertical: isVertical, iconPosition: iconPosition, spaceless: spaceless, inverted: inverted, accordion: accordion, isAccordionOpen: isAccordionOpen, context: context, expanded: expanded, clickable: clickable && !item.disabled, onSelectTab: onSelectTab }));
|
|
10
|
+
return (h("div", { id: `${tabsId}-nav`, class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, bemEl.class()), bemEl.modifier(`full-height`).class(isFullHeight)), bemEl.modifier(`border`).class(border)), bemEl.modifier(`animated`).class(animated)), bemEl.modifier(`vertical`).class(isVertical)), bemEl.modifier(`expanded`).class(expanded && !isVertical)), bemEl.modifier(`vertical-col-${verticalColSize}`).class(isVertical)) }, hasCarousel ? (h("bal-carousel", { id: `${tabsId}-carousel`, class: Object.assign({}, bemEl.element('carousel').class()), htmlRole: 'tablist', fullHeight: isFullHeight, border: border, inverted: inverted, controls: "small", "items-per-view": "auto", steps: 3, onBalChange: stopEventBubbling }, tabs.map((tab, index) => (h("bal-carousel-item", { key: tab.value, htmlRole: '', class: Object.assign(Object.assign({}, bemEl.element('carousel').element('item').class()), bemEl.element('carousel').element('item').modifier('expanded').class(expanded)) }, h(Button, { item: tab, index: index })))), h("div", { id: `${tabsId}-line`, class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, bemEl.element('line').class()), bemEl.element('line').modifier(`active`).class(lineActive)), bemEl.element('line').modifier(`inverted`).class(inverted)), bemEl.element('line').modifier(`animated`).class(animated)), bemEl.element('line').modifier(`vertical`).class(isVertical)) }))) : (tabs.map((tab, index) => h(Button, { item: tab, index: index }))), !hasCarousel ? (h("div", { id: `${tabsId}-border`, class: Object.assign(Object.assign(Object.assign({}, bemEl.element('border').class()), bemEl.element('border').modifier(`inverted`).class(inverted)), bemEl.element('border').modifier(`vertical`).class(isVertical)) })) : (''), !hasCarousel ? (h("div", { id: `${tabsId}-line`, class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, bemEl.element('line').class()), bemEl.element('line').modifier(`active`).class(lineActive)), bemEl.element('line').modifier(`inverted`).class(inverted)), bemEl.element('line').modifier(`animated`).class(animated)), bemEl.element('line').modifier(`vertical`).class(isVertical)) })) : ('')));
|
|
11
11
|
};
|