@baloise/ds-core 16.0.3 → 16.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/all.d.ts +234 -0
- package/components/all.js +350 -0
- package/components/aria.js +3 -0
- package/components/bal-accordion-details.js +4 -4
- package/components/bal-card.js +2 -2
- package/components/bal-card2.js +3 -3
- package/components/bal-carousel2.js +1 -1
- package/components/bal-checkbox-button.js +6 -6
- package/components/bal-checkbox-group.js +1 -1
- package/components/bal-checkbox2.js +3 -2
- package/components/bal-close2.js +1 -1
- package/components/bal-content.js +4 -4
- package/components/bal-date-calendar-cell.js +2 -2
- package/components/bal-date-calendar-cell2.js +3 -3
- package/components/bal-date-calendar2.js +3 -3
- package/components/bal-datepicker.js +3 -3
- package/components/bal-divider.js +4 -4
- package/components/bal-dropdown.d.ts +11 -0
- package/components/bal-dropdown.js +710 -0
- package/components/bal-field.js +12 -2
- package/components/bal-file-upload.js +1 -1
- package/components/bal-footer.js +4 -4
- package/components/bal-input-slider.js +1 -1
- package/components/bal-label.js +2 -2
- package/components/bal-label2.js +5 -5
- package/components/bal-nav-link-grid-col.js +2 -2
- package/components/bal-nav-link-grid-col2.js +4 -4
- package/components/bal-nav-link-grid.js +2 -2
- package/components/bal-nav-link-grid2.js +4 -4
- package/components/bal-nav-link-group.js +4 -4
- package/components/bal-nav-link.js +2 -2
- package/components/bal-nav-link2.js +4 -4
- package/components/bal-nav.js +8 -8
- package/components/bal-notices.js +3 -3
- package/components/bal-number-input.js +31 -13
- package/components/bal-option-list.d.ts +11 -0
- package/components/bal-option-list.js +459 -0
- package/components/bal-option.d.ts +11 -0
- package/components/bal-option.js +171 -0
- package/components/bal-popup.js +1 -1
- package/components/bal-radio-button.js +5 -5
- package/components/bal-radio-group.js +1 -1
- package/components/bal-radio2.js +1 -1
- package/components/bal-select2.js +4 -4
- package/components/bal-spinner2.js +54 -6
- package/components/bal-stack.js +2 -2
- package/components/bal-stack2.js +4 -4
- package/components/bal-steps.js +1 -1
- package/components/bal-tabs2.js +2 -2
- package/components/bal-tag2.js +1 -1
- package/components/config.default.js +1 -0
- package/components/date.js +5 -1
- package/components/index.esm.js +1 -1
- package/components/index.js +9 -1
- package/components/option.js +46 -0
- package/components/tokens.esm.js +1 -1
- 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-013b4c72.system.js +1 -0
- package/dist/baloise-design-system/p-0639833837.system.entry.js +1 -0
- package/dist/baloise-design-system/{p-88852ce68d.system.entry.js → p-06e9a468fc.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-0793c0159f.system.entry.js +1 -0
- package/dist/baloise-design-system/{p-720c90ea90.system.entry.js → p-0fed7a5f26.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-10b8686d91.entry.js +1 -0
- package/dist/baloise-design-system/{p-e113196061.system.entry.js → p-126c79c9e9.system.entry.js} +1 -1
- package/dist/baloise-design-system/{p-bb2ec275bb.system.entry.js → p-12bb6ea3e7.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-12bcc7da.js +1 -0
- package/dist/baloise-design-system/{p-762f45ff6f.entry.js → p-135c5759c5.entry.js} +1 -1
- package/dist/baloise-design-system/{p-62770d5d.system.js → p-14ae0709.system.js} +1 -1
- package/dist/baloise-design-system/{p-3bbf43bb.system.js → p-1509eaa7.system.js} +1 -1
- package/dist/baloise-design-system/{p-946e9e784d.system.entry.js → p-1659bb968c.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-187f98a1.system.js +1 -0
- package/dist/baloise-design-system/p-18e2e391e0.system.entry.js +1 -0
- package/dist/baloise-design-system/p-1de6b20b1c.system.entry.js +1 -0
- package/dist/baloise-design-system/{p-1c2dee82c4.system.entry.js → p-222bc9b30e.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-22b041a511.entry.js +1 -0
- package/dist/baloise-design-system/{p-f62222a85d.entry.js → p-25da216e4f.entry.js} +1 -1
- package/dist/baloise-design-system/p-25e0d82e89.system.entry.js +1 -0
- package/dist/baloise-design-system/p-2d82b78410.entry.js +1 -0
- package/dist/baloise-design-system/{p-a0db085f89.entry.js → p-2d8bd11634.entry.js} +1 -1
- package/dist/baloise-design-system/p-2db9030ad9.system.entry.js +1 -0
- package/dist/baloise-design-system/{p-8444cfcbed.system.entry.js → p-3128128969.system.entry.js} +1 -1
- package/dist/baloise-design-system/{p-9a5cb17cb9.entry.js → p-39bc49bc3d.entry.js} +1 -1
- package/dist/baloise-design-system/p-3bad0907.system.js +1 -0
- package/dist/baloise-design-system/{p-12786937.js → p-3f1c49d0.js} +1 -1
- package/dist/baloise-design-system/{p-33fca72859.entry.js → p-4aba4c66ee.entry.js} +1 -1
- package/dist/baloise-design-system/{p-9e4fcb76.js → p-54f81c32.js} +1 -1
- package/dist/baloise-design-system/{p-922fd809.system.js → p-55faac1d.system.js} +1 -1
- package/dist/baloise-design-system/p-5b571a9fb1.entry.js +1 -0
- package/dist/baloise-design-system/{p-671a986aff.entry.js → p-60e94f8144.entry.js} +1 -1
- package/dist/baloise-design-system/{p-06e959a11a.entry.js → p-6164f99bb8.entry.js} +1 -1
- package/dist/baloise-design-system/p-62ab1f0ae2.system.entry.js +1 -0
- package/dist/baloise-design-system/{p-6b80dee13f.system.entry.js → p-62b792a34b.system.entry.js} +1 -1
- package/dist/baloise-design-system/{p-8998eeb2a7.system.entry.js → p-74f4b9818b.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-77f5e777e6.entry.js +1 -0
- package/dist/baloise-design-system/p-7c42a363f3.entry.js +1 -0
- package/dist/baloise-design-system/p-7cd815d3e8.entry.js +1 -0
- package/dist/baloise-design-system/p-80b45dd4d6.system.entry.js +1 -0
- package/dist/baloise-design-system/{p-af5b58ab1c.system.entry.js → p-8870e1f3e0.system.entry.js} +1 -1
- package/dist/baloise-design-system/{p-3cb83cf9.system.js → p-8a87b9a8.system.js} +1 -1
- package/dist/baloise-design-system/{p-a5568e05fb.system.entry.js → p-8c209ac52b.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-8f77c423ad.entry.js +1 -0
- package/dist/baloise-design-system/{p-32bc2b926a.entry.js → p-8fe94b9e21.entry.js} +1 -1
- package/dist/baloise-design-system/{p-1b76afbf.js → p-94efe2aa.js} +1 -1
- package/dist/baloise-design-system/{p-0ce86357bd.entry.js → p-9658f4a66f.entry.js} +1 -1
- package/dist/baloise-design-system/p-9a0640d065.entry.js +1 -0
- package/dist/baloise-design-system/{p-c3bd665a8b.entry.js → p-9e167705ca.entry.js} +1 -1
- package/dist/baloise-design-system/p-9ecce014c2.system.entry.js +1 -0
- package/dist/baloise-design-system/p-a19d1e1d.js +1 -0
- package/dist/baloise-design-system/p-a7e5ee75e2.entry.js +1 -0
- package/dist/baloise-design-system/{p-9cc5ae9e5c.entry.js → p-a8022ee701.entry.js} +1 -1
- package/dist/baloise-design-system/p-a97cbb7dda.entry.js +1 -0
- package/dist/baloise-design-system/p-acb5cea0.system.js +1 -0
- package/dist/baloise-design-system/p-ae28b86fe5.entry.js +1 -0
- package/dist/baloise-design-system/p-b779742f50.entry.js +1 -0
- package/dist/baloise-design-system/{p-cee3cd08.js → p-b8d99064.js} +1 -1
- package/dist/baloise-design-system/p-b8f085f7b5.system.entry.js +1 -0
- package/dist/baloise-design-system/p-b97d9336a7.system.entry.js +1 -0
- package/dist/baloise-design-system/{p-b3a2290c0d.entry.js → p-b9f197815f.entry.js} +1 -1
- package/dist/baloise-design-system/{p-9e7610a20f.system.entry.js → p-bb3914c87a.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-bb6304d0.system.js +1 -0
- package/dist/baloise-design-system/p-bcbb5b59f3.system.entry.js +1 -0
- package/dist/baloise-design-system/p-bcca1ed3.system.js +1 -0
- package/dist/baloise-design-system/{p-1cdfb98b54.entry.js → p-bcebf41b74.entry.js} +1 -1
- package/dist/baloise-design-system/p-bd5de78b2c.entry.js +1 -0
- package/dist/baloise-design-system/p-c304d5fa9c.entry.js +1 -0
- package/dist/baloise-design-system/{p-8177dec3.system.js → p-cc61fac8.system.js} +1 -1
- package/dist/baloise-design-system/{p-ac825842e4.system.entry.js → p-cd8e72d87f.system.entry.js} +1 -1
- package/dist/baloise-design-system/{p-a9300668b4.system.entry.js → p-d16557d133.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-d7a758b3.js +1 -0
- package/dist/baloise-design-system/{p-33cd610840.system.entry.js → p-d919753ed0.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-d9b38501.js +1 -0
- package/dist/baloise-design-system/p-d9d229a026.entry.js +1 -0
- package/dist/baloise-design-system/{p-13227d037a.system.entry.js → p-dbc2d22240.system.entry.js} +1 -1
- package/dist/baloise-design-system/{p-aacb0cee66.system.entry.js → p-dce3764ee5.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-ddf9b2a289.entry.js +1 -0
- package/dist/baloise-design-system/{p-49a8bfb790.system.entry.js → p-e4de708de1.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-e60c936359.system.entry.js +1 -0
- package/dist/baloise-design-system/p-e78a6409.js +1 -0
- package/dist/baloise-design-system/{p-f55c50abfa.system.entry.js → p-f076d1ed4f.system.entry.js} +1 -1
- package/dist/baloise-design-system/{p-b34e0daa6e.system.entry.js → p-f0b43f1452.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-f12abda2db.entry.js +1 -0
- package/dist/baloise-design-system/{p-31d9c875c0.system.entry.js → p-f1b95d78af.system.entry.js} +1 -1
- package/dist/baloise-design-system/p-f56fb1a197.entry.js +1 -0
- package/dist/baloise-design-system/{p-681d41fc97.entry.js → p-f8974d743d.entry.js} +1 -1
- package/dist/baloise-design-system/p-f8a98657a1.entry.js +1 -0
- package/dist/cjs/{app-globals-d6bc7866.js → app-globals-ae3a8623.js} +1 -1
- package/dist/cjs/aria-c8955a5c.js +5 -0
- package/dist/cjs/bal-accordion_4.cjs.entry.js +4 -4
- package/dist/cjs/bal-card_6.cjs.entry.js +3 -3
- package/dist/cjs/bal-carousel_2.cjs.entry.js +5 -5
- package/dist/cjs/bal-checkbox-button.cjs.entry.js +6 -6
- package/dist/cjs/bal-checkbox_2.cjs.entry.js +4 -3
- package/dist/cjs/bal-close.cjs.entry.js +2 -2
- package/dist/cjs/bal-content.cjs.entry.js +4 -4
- package/dist/cjs/bal-date-calendar-cell.cjs.entry.js +2 -2
- package/dist/cjs/bal-date-calendar_2.cjs.entry.js +5 -5
- package/dist/cjs/bal-date.cjs.entry.js +2 -2
- package/dist/cjs/bal-datepicker.cjs.entry.js +7 -7
- package/dist/cjs/bal-divider.cjs.entry.js +4 -4
- package/dist/cjs/bal-dropdown.cjs.entry.js +660 -0
- package/dist/cjs/bal-field_5.cjs.entry.js +12 -2
- package/dist/cjs/bal-file-upload.cjs.entry.js +1 -1
- package/dist/cjs/bal-footer.cjs.entry.js +4 -4
- 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-slider.cjs.entry.js +1 -1
- package/dist/cjs/bal-input-stepper.cjs.entry.js +1 -1
- package/dist/cjs/bal-label.cjs.entry.js +6 -6
- package/dist/cjs/bal-list_8.cjs.entry.js +3 -3
- package/dist/cjs/bal-logo.cjs.entry.js +3 -3
- package/dist/cjs/bal-nav_8.cjs.entry.js +28 -28
- package/dist/cjs/bal-navbar_5.cjs.entry.js +3 -3
- package/dist/cjs/bal-notices.cjs.entry.js +3 -3
- package/dist/cjs/bal-number-input.cjs.entry.js +32 -14
- package/dist/cjs/bal-option_2.cjs.entry.js +541 -0
- package/dist/cjs/bal-pagination.cjs.entry.js +4 -4
- package/dist/cjs/bal-popover_2.cjs.entry.js +3 -3
- package/dist/cjs/bal-progress-bar.cjs.entry.js +3 -3
- package/dist/cjs/bal-radio-button.cjs.entry.js +5 -5
- package/dist/cjs/bal-radio_2.cjs.entry.js +2 -2
- package/dist/cjs/bal-select_2.cjs.entry.js +3 -3
- package/dist/cjs/bal-shape.cjs.entry.js +1 -1
- package/dist/cjs/bal-spinner.cjs.entry.js +49 -4
- package/dist/cjs/bal-stack.cjs.entry.js +4 -4
- package/dist/cjs/bal-steps.cjs.entry.js +4 -4
- package/dist/cjs/bal-tab-item_2.cjs.entry.js +5 -5
- package/dist/cjs/bal-tag_2.cjs.entry.js +1 -1
- package/dist/cjs/bal-time-input.cjs.entry.js +1 -1
- package/dist/cjs/baloise-design-system.cjs.js +4 -4
- package/dist/cjs/{breakpoints.decorator-7f888011.js → breakpoints.decorator-47fd6060.js} +1 -1
- package/dist/cjs/{breakpoints.subject-28c980cd.js → breakpoints.subject-66093c8f.js} +1 -1
- package/dist/cjs/{config.default-32725178.js → config.default-5bdd6e3d.js} +1 -0
- package/dist/cjs/{date-df1d61a8.js → date-3e33b208.js} +5 -1
- package/dist/cjs/index.cjs.js +7 -5
- package/dist/cjs/{initialize-e38e7028.js → initialize-2a19d091.js} +9 -2
- package/dist/cjs/loader.cjs.js +4 -4
- package/dist/cjs/option-c33cf2b8.js +49 -0
- package/dist/cjs/{tokens.esm-89d0f18d.js → tokens.esm-bb0ef2db.js} +1 -1
- package/dist/collection/collection-manifest.json +14 -0
- package/dist/collection/components/bal-accordion/bal-accordion-details/bal-accordion-details.js +2 -2
- package/dist/collection/components/bal-card/bal-card.js +1 -1
- package/dist/collection/components/bal-carousel/controls/tab-control.js +1 -1
- package/dist/collection/components/bal-checkbox/bal-checkbox-button/bal-checkbox-button.css +1 -1
- package/dist/collection/components/bal-checkbox/bal-checkbox-button/bal-checkbox-button.js +3 -3
- package/dist/collection/components/bal-checkbox/bal-checkbox-group/bal-checkbox-group.js +1 -1
- package/dist/collection/components/bal-checkbox/bal-checkbox.js +2 -1
- package/dist/collection/components/bal-checkbox/radio-checkbox.css +1 -1
- package/dist/collection/components/bal-close/bal-close.js +1 -1
- package/dist/collection/components/bal-content/bal-content.js +2 -2
- package/dist/collection/components/bal-date/bal-date-calendar/components/bal-date-calendar__gird.js +1 -1
- package/dist/collection/components/bal-date/bal-date-calendar/components/bal-date-calendar__list.js +1 -1
- package/dist/collection/components/bal-date/bal-date-calendar-cell/bal-date-calendar-cell.js +1 -1
- package/dist/collection/components/bal-datepicker/bal-datepicker.js +3 -3
- package/dist/collection/components/bal-divider/bal-divider.js +2 -2
- package/dist/collection/components/bal-dropdown/bal-dropdown.css +1 -0
- package/dist/collection/components/bal-dropdown/bal-dropdown.interfaces.js +4 -0
- package/dist/collection/components/bal-dropdown/bal-dropdown.js +882 -0
- package/dist/collection/components/bal-field/bal-field.js +12 -2
- package/dist/collection/components/bal-file-upload/components/file-list.js +1 -1
- package/dist/collection/components/bal-footer/bal-footer.js +3 -3
- package/dist/collection/components/bal-input-slider/bal-input-slider.js +1 -1
- package/dist/collection/components/bal-label/bal-label.js +3 -3
- package/dist/collection/components/bal-nav/bal-nav-link/bal-nav-link.js +2 -2
- package/dist/collection/components/bal-nav/bal-nav-link-grid/bal-nav-link-grid.js +2 -2
- package/dist/collection/components/bal-nav/bal-nav-link-grid-col/bal-nav-link-grid-col.js +2 -2
- package/dist/collection/components/bal-nav/bal-nav-link-group/bal-nav-link-group.js +2 -2
- package/dist/collection/components/bal-nav/bal-nav.js +6 -6
- package/dist/collection/components/bal-nav/components/section-list.js +2 -2
- package/dist/collection/components/bal-nav/components/service-list.js +2 -2
- package/dist/collection/components/bal-notices/bal-notices.js +1 -1
- package/dist/collection/components/bal-number-input/bal-number-input.js +5 -0
- package/dist/collection/components/bal-number-input/bal-number-input.utils.js +27 -14
- package/dist/collection/components/bal-number-input/bal-number-input.utils.spec.js +82 -0
- package/dist/collection/components/bal-option/bal-option.css +1 -0
- package/dist/collection/components/bal-option/bal-option.interfaces.js +4 -0
- package/dist/collection/components/bal-option/bal-option.js +360 -0
- package/dist/collection/components/bal-option-list/bal-option-list.css +1 -0
- package/dist/collection/components/bal-option-list/bal-option-list.interfaces.js +4 -0
- package/dist/collection/components/bal-option-list/bal-option-list.js +939 -0
- package/dist/collection/components/bal-radio/bal-radio-button/bal-radio-button.js +3 -3
- package/dist/collection/components/bal-radio/bal-radio-group/bal-radio-group.js +1 -1
- package/dist/collection/components/bal-select/bal-select.js +4 -4
- package/dist/collection/components/bal-spinner/bal-spinner.css +1 -1
- package/dist/collection/components/bal-spinner/bal-spinner.interfaces.js +4 -0
- package/dist/collection/components/bal-spinner/bal-spinner.js +83 -4
- package/dist/collection/components/bal-stack/bal-stack.js +2 -2
- package/dist/collection/components/bal-steps/bal-steps.js +1 -1
- package/dist/collection/components/bal-tabs/components/tab-nav.js +1 -1
- package/dist/collection/components/bal-tabs/components/tab-select.js +1 -1
- package/dist/collection/components/bal-tag/bal-tag.css +1 -1
- package/dist/collection/index.js +1 -0
- package/dist/collection/utils/aria.js +1 -0
- package/dist/collection/utils/config/config.default.js +1 -0
- package/dist/collection/utils/config/config.js +7 -0
- package/dist/collection/utils/constants/version.constant.js +1 -1
- package/dist/collection/utils/date/date.js +5 -1
- package/dist/collection/utils/date/date.spec.js +11 -5
- package/dist/collection/utils/dropdown/auto-fill.js +38 -0
- package/dist/collection/utils/dropdown/component.js +1 -0
- package/dist/collection/utils/dropdown/dropdown.i18n.js +52 -0
- package/dist/collection/utils/dropdown/events.js +43 -0
- package/dist/collection/utils/dropdown/filters.js +10 -0
- package/dist/collection/utils/dropdown/focus.js +19 -0
- package/dist/collection/utils/dropdown/form-submit.js +35 -0
- package/dist/collection/utils/dropdown/icon.js +15 -0
- package/dist/collection/utils/dropdown/index.js +13 -0
- package/dist/collection/utils/dropdown/input.js +12 -0
- package/dist/collection/utils/dropdown/option-list.js +8 -0
- package/dist/collection/utils/dropdown/option.js +44 -0
- package/dist/collection/utils/dropdown/popup.js +45 -0
- package/dist/collection/utils/dropdown/value.js +103 -0
- package/dist/esm/{app-globals-89691d80.js → app-globals-b0dd0fc4.js} +1 -1
- package/dist/esm/aria-d5877698.js +3 -0
- package/dist/esm/bal-accordion_4.entry.js +4 -4
- package/dist/esm/bal-card_6.entry.js +3 -3
- package/dist/esm/bal-carousel_2.entry.js +5 -5
- package/dist/esm/bal-checkbox-button.entry.js +6 -6
- package/dist/esm/bal-checkbox_2.entry.js +5 -4
- package/dist/esm/bal-close.entry.js +2 -2
- package/dist/esm/bal-content.entry.js +4 -4
- package/dist/esm/bal-date-calendar-cell.entry.js +2 -2
- package/dist/esm/bal-date-calendar_2.entry.js +6 -6
- package/dist/esm/bal-date.entry.js +3 -3
- package/dist/esm/bal-datepicker.entry.js +8 -8
- package/dist/esm/bal-divider.entry.js +4 -4
- package/dist/esm/bal-dropdown.entry.js +656 -0
- package/dist/esm/bal-field_5.entry.js +12 -2
- package/dist/esm/bal-file-upload.entry.js +2 -2
- package/dist/esm/bal-footer.entry.js +5 -5
- package/dist/esm/bal-hint_3.entry.js +3 -3
- package/dist/esm/bal-icon.entry.js +1 -1
- package/dist/esm/bal-input-slider.entry.js +1 -1
- package/dist/esm/bal-input-stepper.entry.js +2 -2
- package/dist/esm/bal-label.entry.js +6 -6
- package/dist/esm/bal-list_8.entry.js +3 -3
- package/dist/esm/bal-logo.entry.js +3 -3
- package/dist/esm/bal-nav_8.entry.js +24 -24
- package/dist/esm/bal-navbar_5.entry.js +3 -3
- package/dist/esm/bal-notices.entry.js +3 -3
- package/dist/esm/bal-number-input.entry.js +33 -15
- package/dist/esm/bal-option_2.entry.js +536 -0
- package/dist/esm/bal-pagination.entry.js +4 -4
- 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 +3 -3
- package/dist/esm/bal-radio-button.entry.js +5 -5
- package/dist/esm/bal-radio_2.entry.js +3 -3
- package/dist/esm/bal-select_2.entry.js +4 -4
- package/dist/esm/bal-shape.entry.js +1 -1
- package/dist/esm/bal-spinner.entry.js +50 -5
- package/dist/esm/bal-stack.entry.js +4 -4
- package/dist/esm/bal-steps.entry.js +5 -5
- package/dist/esm/bal-tab-item_2.entry.js +6 -6
- package/dist/esm/bal-tag_2.entry.js +1 -1
- package/dist/esm/bal-time-input.entry.js +1 -1
- package/dist/esm/baloise-design-system.js +4 -4
- package/dist/esm/{breakpoints.decorator-52979d29.js → breakpoints.decorator-021fbaf0.js} +1 -1
- package/dist/esm/{breakpoints.subject-64327a3b.js → breakpoints.subject-ef464f89.js} +1 -1
- package/dist/esm/{config.default-79f94bf7.js → config.default-7efdc82d.js} +1 -0
- package/dist/esm/{date-db6afc26.js → date-38a0b208.js} +6 -2
- package/dist/esm/{index.esm-ec4cba26.js → index.esm-83b1f9c4.js} +1 -1
- package/dist/esm/index.js +8 -7
- package/dist/esm/{initialize-66615dde.js → initialize-e216cfe4.js} +9 -2
- package/dist/esm/loader.js +4 -4
- package/dist/esm/option-37cb0282.js +46 -0
- package/dist/esm/{tokens.esm-12daa3af.js → tokens.esm-aab9bd61.js} +1 -1
- package/dist/esm-es5/app-globals-b0dd0fc4.js +1 -0
- package/dist/esm-es5/aria-d5877698.js +1 -0
- package/dist/esm-es5/bal-accordion_4.entry.js +1 -1
- package/dist/esm-es5/bal-card_6.entry.js +1 -1
- package/dist/esm-es5/bal-carousel_2.entry.js +1 -1
- package/dist/esm-es5/bal-checkbox-button.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.entry.js +1 -1
- package/dist/esm-es5/bal-date-calendar-cell.entry.js +1 -1
- 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-divider.entry.js +1 -1
- package/dist/esm-es5/bal-dropdown.entry.js +1 -0
- package/dist/esm-es5/bal-field_5.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-slider.entry.js +1 -1
- package/dist/esm-es5/bal-input-stepper.entry.js +1 -1
- package/dist/esm-es5/bal-label.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-notices.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 -0
- 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-button.entry.js +1 -1
- package/dist/esm-es5/bal-radio_2.entry.js +1 -1
- 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-spinner.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/bal-tag_2.entry.js +1 -1
- package/dist/esm-es5/bal-time-input.entry.js +1 -1
- package/dist/esm-es5/baloise-design-system.js +1 -1
- package/dist/esm-es5/breakpoints.decorator-021fbaf0.js +1 -0
- package/dist/esm-es5/{breakpoints.subject-64327a3b.js → breakpoints.subject-ef464f89.js} +1 -1
- package/dist/esm-es5/{config.default-79f94bf7.js → config.default-7efdc82d.js} +1 -1
- package/dist/esm-es5/{date-db6afc26.js → date-38a0b208.js} +1 -1
- package/dist/esm-es5/{index.esm-ec4cba26.js → index.esm-83b1f9c4.js} +1 -1
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/{initialize-66615dde.js → initialize-e216cfe4.js} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/option-37cb0282.js +1 -0
- package/dist/html.html-data.json +357 -0
- package/dist/types/components/bal-accordion/bal-accordion-details/bal-accordion-details.d.ts +1 -1
- package/dist/types/components/bal-card/bal-card.d.ts +1 -1
- package/dist/types/components/bal-checkbox/bal-checkbox-button/bal-checkbox-button.d.ts +1 -1
- package/dist/types/components/bal-content/bal-content.d.ts +1 -1
- package/dist/types/components/bal-date/bal-date-calendar-cell/bal-date-calendar-cell.d.ts +1 -1
- package/dist/types/components/bal-divider/bal-divider.d.ts +1 -1
- package/dist/types/components/bal-dropdown/bal-dropdown.d.ts +187 -0
- package/dist/types/components/bal-dropdown/bal-dropdown.interfaces.d.ts +14 -0
- package/dist/types/components/bal-field/bal-field.d.ts +1 -0
- package/dist/types/components/bal-label/bal-label.d.ts +1 -1
- package/dist/types/components/bal-nav/bal-nav-link/bal-nav-link.d.ts +1 -1
- package/dist/types/components/bal-nav/bal-nav-link-grid/bal-nav-link-grid.d.ts +1 -1
- package/dist/types/components/bal-nav/bal-nav-link-grid-col/bal-nav-link-grid-col.d.ts +1 -1
- package/dist/types/components/bal-nav/bal-nav-link-group/bal-nav-link-group.d.ts +1 -1
- package/dist/types/components/bal-nav/bal-nav.d.ts +1 -1
- package/dist/types/components/bal-notices/bal-notices.d.ts +1 -1
- package/dist/types/components/bal-number-input/bal-number-input.d.ts +1 -0
- package/dist/types/components/bal-number-input/bal-number-input.utils.d.ts +3 -1
- package/dist/types/components/bal-option/bal-option.d.ts +91 -0
- package/dist/types/components/bal-option/bal-option.interfaces.d.ts +19 -0
- package/dist/types/components/bal-option-list/bal-option-list.d.ts +168 -0
- package/dist/types/components/bal-option-list/bal-option-list.interfaces.d.ts +5 -0
- package/dist/types/components/bal-radio/bal-radio-button/bal-radio-button.d.ts +1 -1
- package/dist/types/components/bal-select/bal-select.d.ts +1 -1
- package/dist/types/components/bal-spinner/bal-spinner.d.ts +14 -2
- package/dist/types/components/bal-spinner/bal-spinner.interfaces.d.ts +6 -0
- package/dist/types/components/bal-stack/bal-stack.d.ts +1 -1
- package/dist/types/components.d.ts +451 -3
- package/dist/types/index.d.ts +1 -0
- package/dist/types/interfaces.d.ts +4 -0
- package/dist/types/utils/aria.d.ts +1 -0
- package/dist/types/utils/config/config.d.ts +2 -0
- package/dist/types/utils/config/config.types.d.ts +2 -0
- package/dist/types/utils/date/date.d.ts +1 -0
- package/dist/types/utils/dropdown/auto-fill.d.ts +8 -0
- package/dist/types/utils/dropdown/component.d.ts +34 -0
- package/dist/types/utils/dropdown/dropdown.i18n.d.ts +8 -0
- package/dist/types/utils/dropdown/events.d.ts +13 -0
- package/dist/types/utils/dropdown/filters.d.ts +2 -0
- package/dist/types/utils/dropdown/focus.d.ts +13 -0
- package/dist/types/utils/dropdown/form-submit.d.ts +22 -0
- package/dist/types/utils/dropdown/icon.d.ts +13 -0
- package/dist/types/utils/dropdown/index.d.ts +13 -0
- package/dist/types/utils/dropdown/input.d.ts +27 -0
- package/dist/types/utils/dropdown/option-list.d.ts +17 -0
- package/dist/types/utils/dropdown/option.d.ts +25 -0
- package/dist/types/utils/dropdown/popup.d.ts +9 -0
- package/dist/types/utils/dropdown/value.d.ts +28 -0
- package/package.json +8 -7
- package/dist/baloise-design-system/p-05b55c958d.system.entry.js +0 -1
- package/dist/baloise-design-system/p-0d30cbfab8.entry.js +0 -1
- package/dist/baloise-design-system/p-15ca43f2.system.js +0 -1
- package/dist/baloise-design-system/p-1e0e5892a3.system.entry.js +0 -1
- package/dist/baloise-design-system/p-2c3370fdbe.system.entry.js +0 -1
- package/dist/baloise-design-system/p-2d10e25c6b.entry.js +0 -1
- package/dist/baloise-design-system/p-2dda46c5f8.entry.js +0 -1
- package/dist/baloise-design-system/p-34a9557f.system.js +0 -1
- package/dist/baloise-design-system/p-34d1472a.system.js +0 -1
- package/dist/baloise-design-system/p-3990d97696.entry.js +0 -1
- package/dist/baloise-design-system/p-48a2de5d.js +0 -1
- package/dist/baloise-design-system/p-4e218ac923.system.entry.js +0 -1
- package/dist/baloise-design-system/p-4f4df156.js +0 -1
- package/dist/baloise-design-system/p-5eea406ac6.system.entry.js +0 -1
- package/dist/baloise-design-system/p-6496dcd5.js +0 -1
- package/dist/baloise-design-system/p-67f25817a6.entry.js +0 -1
- package/dist/baloise-design-system/p-6dd26958d2.system.entry.js +0 -1
- package/dist/baloise-design-system/p-7e180ac10f.system.entry.js +0 -1
- package/dist/baloise-design-system/p-8ea27b553e.system.entry.js +0 -1
- package/dist/baloise-design-system/p-90c4c1a5c0.system.entry.js +0 -1
- package/dist/baloise-design-system/p-99dcda2fcd.entry.js +0 -1
- package/dist/baloise-design-system/p-a9d8b71709.entry.js +0 -1
- package/dist/baloise-design-system/p-af8604cef2.entry.js +0 -1
- package/dist/baloise-design-system/p-b1c7ddc442.system.entry.js +0 -1
- package/dist/baloise-design-system/p-b1e3fc0bc8.entry.js +0 -1
- package/dist/baloise-design-system/p-bb291d6067.system.entry.js +0 -1
- package/dist/baloise-design-system/p-c0a3d422.system.js +0 -1
- package/dist/baloise-design-system/p-c34504aa32.entry.js +0 -1
- package/dist/baloise-design-system/p-c6900b09e7.entry.js +0 -1
- package/dist/baloise-design-system/p-cf6ccb4dd1.entry.js +0 -1
- package/dist/baloise-design-system/p-d4fd428711.entry.js +0 -1
- package/dist/baloise-design-system/p-d6fc0dd434.entry.js +0 -1
- package/dist/baloise-design-system/p-db3e6b861f.entry.js +0 -1
- package/dist/baloise-design-system/p-eba35b2adf.entry.js +0 -1
- package/dist/baloise-design-system/p-ec180f9bbf.entry.js +0 -1
- package/dist/baloise-design-system/p-f15b12d84f.entry.js +0 -1
- package/dist/esm-es5/app-globals-89691d80.js +0 -1
- package/dist/esm-es5/breakpoints.decorator-52979d29.js +0 -1
- /package/dist/baloise-design-system/{p-61eda028.system.js → p-03c136e2.system.js} +0 -0
- /package/dist/baloise-design-system/{p-979368af.js → p-7b9c33ba.js} +0 -0
- /package/dist/esm-es5/{tokens.esm-12daa3af.js → tokens.esm-aab9bd61.js} +0 -0
|
@@ -7,7 +7,7 @@ import { FOCUS_KEYS } from "../../../utils/focus-visible";
|
|
|
7
7
|
import { isDescendant } from "../../../utils/helpers";
|
|
8
8
|
import { ListenToElementStates } from "../../../utils/element-states";
|
|
9
9
|
import { BalElementStateListener } from "../../../utils/element-states/element-states.listener";
|
|
10
|
-
export class
|
|
10
|
+
export class RadioButton {
|
|
11
11
|
constructor() {
|
|
12
12
|
this.keyboardMode = true;
|
|
13
13
|
/**
|
|
@@ -458,10 +458,10 @@ __decorate([
|
|
|
458
458
|
__metadata("design:type", Function),
|
|
459
459
|
__metadata("design:paramtypes", [Function]),
|
|
460
460
|
__metadata("design:returntype", void 0)
|
|
461
|
-
],
|
|
461
|
+
], RadioButton.prototype, "createLogger", null);
|
|
462
462
|
__decorate([
|
|
463
463
|
ListenToElementStates(),
|
|
464
464
|
__metadata("design:type", Function),
|
|
465
465
|
__metadata("design:paramtypes", [Object]),
|
|
466
466
|
__metadata("design:returntype", void 0)
|
|
467
|
-
],
|
|
467
|
+
], RadioButton.prototype, "elementStateListener", null);
|
|
@@ -289,7 +289,7 @@ export class RadioGroup {
|
|
|
289
289
|
}
|
|
290
290
|
return option;
|
|
291
291
|
});
|
|
292
|
-
return (h(Host, Object.assign({ class: Object.assign({}, block.class()), role: "radiogroup", "aria-labelledby": this.ariaForm.labelId, "aria-describedby": this.ariaForm.messageId, "aria-disabled": this.disabled ? 'true' : null, onClick: this.onClick }, this.inheritedAttributes), h("div", { class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, innerEl.class()), innerEl.modifier('vertical-mobile').class(this.verticalOnMobile)), innerEl.modifier('vertical').class(this.vertical)), innerEl.modifier('expanded').class(this.expanded)), innerEl.modifier('select-button').class(this.interface === 'select-button')) }, h("slot", null), options.map(option => (h("bal-radio", { name: option.name || this.name, value: option.value, labelHidden: option.labelHidden, flat: option.flat, interface: option.interface, disabled: option.disabled, readonly: option.readonly, required: option.required, nonSubmit: !!option.nonSubmit, invalid: option.invalid, innerHTML: option.html }))))));
|
|
292
|
+
return (h(Host, Object.assign({ class: Object.assign({}, block.class()), role: "radiogroup", "aria-labelledby": this.ariaForm.labelId, "aria-describedby": this.ariaForm.messageId, "aria-disabled": this.disabled ? 'true' : null, onClick: this.onClick }, this.inheritedAttributes), h("div", { class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, innerEl.class()), innerEl.modifier('vertical-mobile').class(this.verticalOnMobile)), innerEl.modifier('vertical').class(this.vertical)), innerEl.modifier('expanded').class(this.expanded)), innerEl.modifier('select-button').class(this.interface === 'select-button')) }, h("slot", null), options.map(option => (h("bal-radio", { key: option.value, name: option.name || this.name, value: option.value, labelHidden: option.labelHidden, flat: option.flat, interface: option.interface, disabled: option.disabled, readonly: option.readonly, required: option.required, nonSubmit: !!option.nonSubmit, invalid: option.invalid, innerHTML: option.html }))))));
|
|
293
293
|
}
|
|
294
294
|
static get is() { return "bal-radio-group"; }
|
|
295
295
|
static get properties() {
|
|
@@ -306,7 +306,7 @@ export class Select {
|
|
|
306
306
|
}
|
|
307
307
|
}
|
|
308
308
|
/**
|
|
309
|
-
*
|
|
309
|
+
* Returns the value of the component
|
|
310
310
|
*/
|
|
311
311
|
async getValue() {
|
|
312
312
|
return this.rawValue;
|
|
@@ -693,7 +693,7 @@ export class Select {
|
|
|
693
693
|
const optionContentEl = optionEl.element('content');
|
|
694
694
|
const optionContentCheckboxEl = optionContentEl.element('checkbox');
|
|
695
695
|
const optionContentLabelEl = optionContentEl.element('label');
|
|
696
|
-
return (h(Host, { role: "listbox", onClick: this.handleClick, "aria-disabled": this.disabled ? 'true' : null, "data-value": (_a = this.rawValue) === null || _a === void 0 ? void 0 : _a.map(v => findLabelByValue(this.options, v)).join(','), class: Object.assign(Object.assign(Object.assign(Object.assign({}, block.class()), block.modifier('disabled').class(this.disabled || this.readonly)), block.modifier('inverted').class(this.inverted)), block.modifier('inverted-footer').class(this.inverted)) }, h("select", { class: Object.assign({}, nativeEl.class()), name: this.name, multiple: this.multiple, required: this.required, tabindex: -1, ref: el => (this.nativeSelectEl = el) }, valuesArray.map((value) => (h("option", { value: value, selected: true }, value)))), h("bal-popover", { onBalChange: this.handlePopoverChange, ref: el => (this.popoverElement = el) }, h("div", { "bal-popover-trigger": true, class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, controlEl.class()), controlEl.modifier('invalid').class(this.invalid)), controlEl.modifier('disabled').class(this.disabled || this.readonly)), controlEl.modifier('focused').class(this.isPopoverOpen)), controlEl.modifier('inverted-footer').class(this.inverted)) }, h("div", { class: Object.assign(Object.assign({}, controlSelectionsEl.class()), controlSelectionsEl
|
|
696
|
+
return (h(Host, { role: "listbox", onClick: this.handleClick, "aria-disabled": this.disabled ? 'true' : null, "data-value": (_a = this.rawValue) === null || _a === void 0 ? void 0 : _a.map(v => findLabelByValue(this.options, v)).join(','), class: Object.assign(Object.assign(Object.assign(Object.assign({}, block.class()), block.modifier('disabled').class(this.disabled || this.readonly)), block.modifier('inverted').class(this.inverted)), block.modifier('inverted-footer').class(this.inverted)) }, h("select", { class: Object.assign({}, nativeEl.class()), name: this.name, multiple: this.multiple, required: this.required, tabindex: -1, ref: el => (this.nativeSelectEl = el) }, valuesArray.map((value) => (h("option", { key: value, value: value, selected: true }, value)))), h("bal-popover", { onBalChange: this.handlePopoverChange, ref: el => (this.popoverElement = el) }, h("div", { "bal-popover-trigger": true, class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, controlEl.class()), controlEl.modifier('invalid').class(this.invalid)), controlEl.modifier('disabled').class(this.disabled || this.readonly)), controlEl.modifier('focused').class(this.isPopoverOpen)), controlEl.modifier('inverted-footer').class(this.inverted)) }, h("div", { class: Object.assign(Object.assign({}, controlSelectionsEl.class()), controlSelectionsEl
|
|
697
697
|
.modifier('clickable')
|
|
698
698
|
.class(!this.isPopoverOpen && !this.disabled && !this.readonly)), onClick: this.handleInputClick, ref: el => (this.selectionEl = el) }, valuesArray
|
|
699
699
|
.filter(_ => this.multiple)
|
|
@@ -703,7 +703,7 @@ export class Select {
|
|
|
703
703
|
? 'white'
|
|
704
704
|
: this.invalid
|
|
705
705
|
? 'danger'
|
|
706
|
-
: 'primary', turn: this.isPopoverOpen, onClick: ev => this.handleInputClick(ev, true), size: !this.inverted ? '' : 'x-small' })) : ('')), h("bal-popover-content", { class: Object.assign({}, popoverContentEl.class()), scrollable: this.scrollable, spaceless: true, expanded: true }, this.optionArray.map((option, index) => (h("button", { type: "button", role: "option", id: option.id, "data-value": option.value, "data-label": option.label, class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, optionEl.class()), optionEl
|
|
706
|
+
: 'primary', turn: this.isPopoverOpen, onClick: ev => this.handleInputClick(ev, true), size: !this.inverted ? '' : 'x-small' })) : ('')), h("bal-popover-content", { class: Object.assign({}, popoverContentEl.class()), scrollable: this.scrollable, spaceless: true, expanded: true }, this.optionArray.map((option, index) => (h("button", { key: option.value, type: "button", role: "option", id: option.id, "data-value": option.value, "data-label": option.label, class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, optionEl.class()), optionEl
|
|
707
707
|
.modifier('selected')
|
|
708
708
|
.class(valuesArray.includes(option.value) && !(this.typeahead && !this.multiple))), optionEl.modifier('focused').class(this.focusIndex === index)), optionEl.modifier('checkbox').class(this.multiple)), optionEl.modifier('disabled').class(option.disabled === true)), "data-testid": "bal-select-option", disabled: option.disabled, tabIndex: -1, onMouseEnter: () => this.handleOptionMouseEnter(index), onClick: () => this.optionSelected(option) }, h("div", { class: Object.assign({}, optionContentEl.class()) }, h("span", { class: Object.assign({}, optionContentCheckboxEl.class()), style: { display: this.multiple ? 'flex' : 'none' } }, h("bal-checkbox", { checked: valuesArray.includes(option.value), tabindex: -1, nonSubmit: true, flat: true, onBalChange: preventDefault })), h("span", { class: Object.assign({}, optionContentLabelEl.class()), innerHTML: option.innerHTML }))))), h("div", { class: Object.assign(Object.assign({}, popoverContentEmptyEl.class()), popoverContentEmptyEl
|
|
709
709
|
.modifier('hidden')
|
|
@@ -1300,7 +1300,7 @@ export class Select {
|
|
|
1300
1300
|
"return": "Promise<string[]>"
|
|
1301
1301
|
},
|
|
1302
1302
|
"docs": {
|
|
1303
|
-
"text": "
|
|
1303
|
+
"text": "Returns the value of the component",
|
|
1304
1304
|
"tags": []
|
|
1305
1305
|
}
|
|
1306
1306
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
bal-spinner,.bal-spinner{text-align:center;display:flex;justify-content:center;align-content:center}bal-spinner svg,.bal-spinner svg{transform:unset !important}
|
|
1
|
+
bal-spinner,.bal-spinner{text-align:center;display:flex;justify-content:center;align-content:center;width:4rem}bal-spinner svg,.bal-spinner svg{transform:unset !important}.bal-spinner--small{width:2rem}.bal-spinner--circle{margin:auto;border-width:.25rem;border-style:solid;border-color:var(--bal-color-grey);border-radius:50%;border-top-color:var(--bal-color-primary);width:1.5rem;height:1.5rem}.bal-spinner--circle.bal-spinner--small{width:1.125rem;height:1.125rem;border-width:.2rem}.bal-spinner--circle.bal-spinner--animated{animation:spinner 1.6s linear infinite}@keyframes spinner{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}
|
|
@@ -3,6 +3,8 @@ import { h, Host } from "@stencil/core";
|
|
|
3
3
|
import { rIC } from "../../utils/helpers";
|
|
4
4
|
import { Logger } from "../../utils/log";
|
|
5
5
|
import { raf } from "../../utils/helpers";
|
|
6
|
+
import { BEM } from "../../utils/bem";
|
|
7
|
+
import { ListenToConfig, defaultConfig } from "../../utils/config";
|
|
6
8
|
export class Spinner {
|
|
7
9
|
constructor() {
|
|
8
10
|
/**
|
|
@@ -10,6 +12,10 @@ export class Spinner {
|
|
|
10
12
|
* ------------------------------------------------------
|
|
11
13
|
*/
|
|
12
14
|
this.animate = async () => {
|
|
15
|
+
if (!this.animated) {
|
|
16
|
+
this.destroy();
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
13
19
|
await this.load();
|
|
14
20
|
if (this.currentRaf !== undefined) {
|
|
15
21
|
cancelAnimationFrame(this.currentRaf);
|
|
@@ -30,6 +36,9 @@ export class Spinner {
|
|
|
30
36
|
this.el.innerHTML = '';
|
|
31
37
|
};
|
|
32
38
|
this.shouldAnimate = () => {
|
|
39
|
+
if (this.variation !== 'logo') {
|
|
40
|
+
return false;
|
|
41
|
+
}
|
|
33
42
|
if (typeof window === 'undefined') {
|
|
34
43
|
return false;
|
|
35
44
|
}
|
|
@@ -55,10 +64,12 @@ export class Spinner {
|
|
|
55
64
|
}
|
|
56
65
|
});
|
|
57
66
|
};
|
|
67
|
+
this.animated = defaultConfig.animated;
|
|
58
68
|
this.inverted = false;
|
|
59
69
|
this.deactivated = false;
|
|
60
70
|
this.color = 'blue';
|
|
61
71
|
this.small = false;
|
|
72
|
+
this.variation = 'logo';
|
|
62
73
|
}
|
|
63
74
|
createLogger(log) {
|
|
64
75
|
this.log = log;
|
|
@@ -73,18 +84,43 @@ export class Spinner {
|
|
|
73
84
|
}
|
|
74
85
|
}
|
|
75
86
|
}
|
|
87
|
+
variationWatcher(newValue, oldValue) {
|
|
88
|
+
if (newValue !== oldValue) {
|
|
89
|
+
if (this.variation === 'circle') {
|
|
90
|
+
this.destroy();
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
this.animate();
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
76
97
|
/**
|
|
77
98
|
* LIFECYCLE
|
|
78
99
|
* ------------------------------------------------------
|
|
79
100
|
*/
|
|
80
101
|
componentDidLoad() {
|
|
81
|
-
this.
|
|
102
|
+
if (this.variation === 'logo') {
|
|
103
|
+
this.animate();
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
this.destroy();
|
|
107
|
+
}
|
|
82
108
|
}
|
|
83
109
|
disconnectedCallback() {
|
|
84
110
|
if (this.el && !this.el.isConnected) {
|
|
85
111
|
this.destroy();
|
|
86
112
|
}
|
|
87
113
|
}
|
|
114
|
+
/**
|
|
115
|
+
* LISTENERS
|
|
116
|
+
* ------------------------------------------------------
|
|
117
|
+
*/
|
|
118
|
+
configChanged(state) {
|
|
119
|
+
this.animated = state.animated;
|
|
120
|
+
if (state.animated === false) {
|
|
121
|
+
this.destroy();
|
|
122
|
+
}
|
|
123
|
+
}
|
|
88
124
|
/**
|
|
89
125
|
* GETTERS
|
|
90
126
|
* ------------------------------------------------------
|
|
@@ -97,7 +133,8 @@ export class Spinner {
|
|
|
97
133
|
* ------------------------------------------------------
|
|
98
134
|
*/
|
|
99
135
|
render() {
|
|
100
|
-
|
|
136
|
+
const block = BEM.block('spinner');
|
|
137
|
+
return (h(Host, { class: Object.assign(Object.assign(Object.assign(Object.assign({}, block.class()), block.modifier('circle').class(this.variation === 'circle')), block.modifier('small').class(this.small)), block.modifier('animated').class(this.animated)), role: "progressbar", "aria-hidden": "true" }));
|
|
101
138
|
}
|
|
102
139
|
static get is() { return "bal-spinner"; }
|
|
103
140
|
static get originalStyleUrls() {
|
|
@@ -152,9 +189,14 @@ export class Spinner {
|
|
|
152
189
|
"type": "string",
|
|
153
190
|
"mutable": false,
|
|
154
191
|
"complexType": {
|
|
155
|
-
"original": "
|
|
192
|
+
"original": "BalProps.BalSpinnerColor",
|
|
156
193
|
"resolved": "\"blue\" | \"white\"",
|
|
157
|
-
"references": {
|
|
194
|
+
"references": {
|
|
195
|
+
"BalProps": {
|
|
196
|
+
"location": "global",
|
|
197
|
+
"id": "global::BalProps"
|
|
198
|
+
}
|
|
199
|
+
}
|
|
158
200
|
},
|
|
159
201
|
"required": false,
|
|
160
202
|
"optional": false,
|
|
@@ -183,14 +225,45 @@ export class Spinner {
|
|
|
183
225
|
"attribute": "small",
|
|
184
226
|
"reflect": false,
|
|
185
227
|
"defaultValue": "false"
|
|
228
|
+
},
|
|
229
|
+
"variation": {
|
|
230
|
+
"type": "string",
|
|
231
|
+
"mutable": false,
|
|
232
|
+
"complexType": {
|
|
233
|
+
"original": "BalProps.BalSpinnerVariation",
|
|
234
|
+
"resolved": "\"circle\" | \"logo\"",
|
|
235
|
+
"references": {
|
|
236
|
+
"BalProps": {
|
|
237
|
+
"location": "global",
|
|
238
|
+
"id": "global::BalProps"
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
},
|
|
242
|
+
"required": false,
|
|
243
|
+
"optional": false,
|
|
244
|
+
"docs": {
|
|
245
|
+
"tags": [],
|
|
246
|
+
"text": "Defines the look of the spinner"
|
|
247
|
+
},
|
|
248
|
+
"attribute": "variation",
|
|
249
|
+
"reflect": false,
|
|
250
|
+
"defaultValue": "'logo'"
|
|
186
251
|
}
|
|
187
252
|
};
|
|
188
253
|
}
|
|
254
|
+
static get states() {
|
|
255
|
+
return {
|
|
256
|
+
"animated": {}
|
|
257
|
+
};
|
|
258
|
+
}
|
|
189
259
|
static get elementRef() { return "el"; }
|
|
190
260
|
static get watchers() {
|
|
191
261
|
return [{
|
|
192
262
|
"propName": "deactivated",
|
|
193
263
|
"methodName": "deactivatedWatcher"
|
|
264
|
+
}, {
|
|
265
|
+
"propName": "variation",
|
|
266
|
+
"methodName": "variationWatcher"
|
|
194
267
|
}];
|
|
195
268
|
}
|
|
196
269
|
}
|
|
@@ -200,3 +273,9 @@ __decorate([
|
|
|
200
273
|
__metadata("design:paramtypes", [Function]),
|
|
201
274
|
__metadata("design:returntype", void 0)
|
|
202
275
|
], Spinner.prototype, "createLogger", null);
|
|
276
|
+
__decorate([
|
|
277
|
+
ListenToConfig(),
|
|
278
|
+
__metadata("design:type", Function),
|
|
279
|
+
__metadata("design:paramtypes", [Object]),
|
|
280
|
+
__metadata("design:returntype", void 0)
|
|
281
|
+
], Spinner.prototype, "configChanged", null);
|
|
@@ -2,7 +2,7 @@ import { __decorate, __metadata } from "tslib";
|
|
|
2
2
|
import { h, Host } from "@stencil/core";
|
|
3
3
|
import { BEM } from "../../utils/bem";
|
|
4
4
|
import { Logger } from "../../utils/log";
|
|
5
|
-
export class
|
|
5
|
+
export class Stack {
|
|
6
6
|
constructor() {
|
|
7
7
|
this.layout = 'horizontal';
|
|
8
8
|
this.align = '';
|
|
@@ -314,4 +314,4 @@ __decorate([
|
|
|
314
314
|
__metadata("design:type", Function),
|
|
315
315
|
__metadata("design:paramtypes", [Function]),
|
|
316
316
|
__metadata("design:returntype", void 0)
|
|
317
|
-
],
|
|
317
|
+
], Stack.prototype, "createLogger", null);
|
|
@@ -178,7 +178,7 @@ export class Steps {
|
|
|
178
178
|
.map(t => t.label)
|
|
179
179
|
.join(',') }, h("nav", { role: "tablist", class: Object.assign({}, bemStepsNav.class()) }, h("bal-carousel", { class: Object.assign({}, bemStepsNav.element('carousel').class()), onBalChange: stopEventBubbling, controls: "small", "items-per-view": "auto", steps: 3 }, steps
|
|
180
180
|
.filter(step => !step.invisible)
|
|
181
|
-
.map(step => (h("bal-carousel-item", { 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))));
|
|
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
182
|
}
|
|
183
183
|
static get is() { return "bal-steps"; }
|
|
184
184
|
static get originalStyleUrls() {
|
|
@@ -7,5 +7,5 @@ export const TabNav = ({ items, tabsId, hasCarousel, isVertical, inNavbar, isMob
|
|
|
7
7
|
const tabs = items.filter(tab => !tab.invisible);
|
|
8
8
|
const isFullHeight = inNavbar && !isTouch;
|
|
9
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", { role: "tablist", 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()), fullHeight: isFullHeight, border: border, inverted: inverted, controls: "small", "items-per-view": "auto", steps: 3, onBalChange: stopEventBubbling }, tabs.map((tab, index) => (h("bal-carousel-item", { 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)) })) : ('')));
|
|
10
|
+
return (h("div", { role: "tablist", 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()), 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, 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
|
};
|
|
@@ -17,5 +17,5 @@ export const TabSelect = ({ items, value, onSelectTab }) => {
|
|
|
17
17
|
};
|
|
18
18
|
return (h("bal-select", { class: Object.assign({}, bemEl.class()), value: value, onBalChange: event => onChange(event) }, items
|
|
19
19
|
.filter(tab => !tab.disabled && !tab.invisible)
|
|
20
|
-
.map(tab => (h("bal-select-option", { label: tab.label, value: tab.value }, tab.label)))));
|
|
20
|
+
.map(tab => (h("bal-select-option", { key: tab.value, label: tab.label, value: tab.value }, tab.label)))));
|
|
21
21
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--bal-tag-background: var(--bal-color-grey);--bal-tag-background-primary: var(--bal-color-primary);--bal-tag-background-grey: var(--bal-color-grey);--bal-tag-background-success: var(--bal-color-success-4);--bal-tag-background-info: var(--bal-color-info-4);--bal-tag-background-warning: var(--bal-color-warning-4);--bal-tag-background-danger: var(--bal-color-danger-4);--bal-tag-background-purple: var(--bal-color-purple-5);--bal-tag-background-red: var(--bal-color-red-5);--bal-tag-background-yellow: var(--bal-color-yellow-4);--bal-tag-background-green: var(--bal-color-green-4);--bal-tag-background-purple-light: var(--bal-color-purple-2);--bal-tag-background-red-light: var(--bal-color-red-2);--bal-tag-background-yellow-light: var(--bal-color-yellow-2);--bal-tag-background-green-light: var(--bal-color-green-2);--bal-tag-background-invalid: var(--bal-color-border-danger);--bal-tag-background-disabled: var(--bal-color-border-grey-dark);--bal-tag-radius: var(--bal-radius-rounded);--bal-tag-border-disabled-color: var(--bal-color-border-grey-dark);--bal-tag-text: var(--bal-color-primary);--bal-tag-text-primary: var(--bal-color-white);--bal-tag-text-grey: var(--bal-color-primary);--bal-tag-text-success: var(--bal-color-white);--bal-tag-text-info: var(--bal-color-white);--bal-tag-text-warning: var(--bal-color-primary);--bal-tag-text-danger: var(--bal-color-white);--bal-tag-text-purple: var(--bal-color-white);--bal-tag-text-red: var(--bal-color-white);--bal-tag-text-yellow: var(--bal-color-primary);--bal-tag-text-green: var(--bal-color-primary);--bal-tag-text-purple-light: var(--bal-color-primary);--bal-tag-text-red-light: var(--bal-color-primary);--bal-tag-text-yellow-light: var(--bal-color-primary);--bal-tag-text-green-light: var(--bal-color-primary);--bal-tag-text-invalid: var(--bal-color-text-white);--bal-tag-text-disabled: var(--bal-color-text-white)}.bal-tag{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:static;display:inline-flex;align-items:center;justify-content:center;min-height:2rem;line-height:1.5rem;padding:.25rem .75rem .25rem .75rem;background-color:var(--bal-tag-background);border-radius:var(--bal-tag-radius)}.bal-tag--is-small{padding:0 .75rem 0 .75rem;min-height:1.5rem}.bal-tag--is-medium{min-height:2.5rem;padding:.5rem 1rem .5rem 1rem}.bal-tag--is-large{min-height:3rem;padding:.75rem 1.5rem .75rem 1.5rem}.bal-tag--is-primary{background:var(--bal-tag-background-primary)}.bal-tag--is-grey{background:var(--bal-tag-background-grey)}.bal-tag--is-success{background:var(--bal-tag-background-success)}.bal-tag--is-info{background:var(--bal-tag-background-info)}.bal-tag--is-warning{background:var(--bal-tag-background-warning)}.bal-tag--is-danger{background:var(--bal-tag-background-danger)}.bal-tag--is-purple{background:var(--bal-tag-background-purple)}.bal-tag--is-red{background:var(--bal-tag-background-red)}.bal-tag--is-yellow{background:var(--bal-tag-background-yellow)}.bal-tag--is-green{background:var(--bal-tag-background-green)}.bal-tag--is-purple-light{background:var(--bal-tag-background-purple-light)}.bal-tag--is-red-light{background:var(--bal-tag-background-red-light)}.bal-tag--is-yellow-light{background:var(--bal-tag-background-yellow-light)}.bal-tag--is-green-light{background:var(--bal-tag-background-green-light)}.bal-tag--is-invalid{background:var(--bal-tag-background-invalid);color:var(--bal-color-text-white)}.bal-tag__label{font-family:var(--bal-font-family-text);color:var(--bal-tag-text);font-weight:var(--bal-font-weight-bold);font-size:var(--bal-text-size-normal) !important;hyphens:auto;display:inline-flex;align-items:center;gap:.25rem}.bal-tag__label--is-small{font-size:var(--bal-
|
|
1
|
+
:root{--bal-tag-background: var(--bal-color-grey);--bal-tag-background-primary: var(--bal-color-primary);--bal-tag-background-grey: var(--bal-color-grey);--bal-tag-background-success: var(--bal-color-success-4);--bal-tag-background-info: var(--bal-color-info-4);--bal-tag-background-warning: var(--bal-color-warning-4);--bal-tag-background-danger: var(--bal-color-danger-4);--bal-tag-background-purple: var(--bal-color-purple-5);--bal-tag-background-red: var(--bal-color-red-5);--bal-tag-background-yellow: var(--bal-color-yellow-4);--bal-tag-background-green: var(--bal-color-green-4);--bal-tag-background-purple-light: var(--bal-color-purple-2);--bal-tag-background-red-light: var(--bal-color-red-2);--bal-tag-background-yellow-light: var(--bal-color-yellow-2);--bal-tag-background-green-light: var(--bal-color-green-2);--bal-tag-background-invalid: var(--bal-color-border-danger);--bal-tag-background-disabled: var(--bal-color-border-grey-dark);--bal-tag-radius: var(--bal-radius-rounded);--bal-tag-border-disabled-color: var(--bal-color-border-grey-dark);--bal-tag-text: var(--bal-color-primary);--bal-tag-text-primary: var(--bal-color-white);--bal-tag-text-grey: var(--bal-color-primary);--bal-tag-text-success: var(--bal-color-white);--bal-tag-text-info: var(--bal-color-white);--bal-tag-text-warning: var(--bal-color-primary);--bal-tag-text-danger: var(--bal-color-white);--bal-tag-text-purple: var(--bal-color-white);--bal-tag-text-red: var(--bal-color-white);--bal-tag-text-yellow: var(--bal-color-primary);--bal-tag-text-green: var(--bal-color-primary);--bal-tag-text-purple-light: var(--bal-color-primary);--bal-tag-text-red-light: var(--bal-color-primary);--bal-tag-text-yellow-light: var(--bal-color-primary);--bal-tag-text-green-light: var(--bal-color-primary);--bal-tag-text-invalid: var(--bal-color-text-white);--bal-tag-text-disabled: var(--bal-color-text-white);--bal-tag-size-small-font-size: var(--bal-text-size-small);--bal-tag-size-small-font-weight: var(--bal-font-weight-regular)}.bal-tag{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:static;display:inline-flex;align-items:center;justify-content:center;min-height:2rem;line-height:1.5rem;padding:.25rem .75rem .25rem .75rem;background-color:var(--bal-tag-background);border-radius:var(--bal-tag-radius)}.bal-tag--is-small{padding:0 .75rem 0 .75rem;min-height:1.5rem}.bal-tag--is-medium{min-height:2.5rem;padding:.5rem 1rem .5rem 1rem}.bal-tag--is-large{min-height:3rem;padding:.75rem 1.5rem .75rem 1.5rem}.bal-tag--is-primary{background:var(--bal-tag-background-primary)}.bal-tag--is-grey{background:var(--bal-tag-background-grey)}.bal-tag--is-success{background:var(--bal-tag-background-success)}.bal-tag--is-info{background:var(--bal-tag-background-info)}.bal-tag--is-warning{background:var(--bal-tag-background-warning)}.bal-tag--is-danger{background:var(--bal-tag-background-danger)}.bal-tag--is-purple{background:var(--bal-tag-background-purple)}.bal-tag--is-red{background:var(--bal-tag-background-red)}.bal-tag--is-yellow{background:var(--bal-tag-background-yellow)}.bal-tag--is-green{background:var(--bal-tag-background-green)}.bal-tag--is-purple-light{background:var(--bal-tag-background-purple-light)}.bal-tag--is-red-light{background:var(--bal-tag-background-red-light)}.bal-tag--is-yellow-light{background:var(--bal-tag-background-yellow-light)}.bal-tag--is-green-light{background:var(--bal-tag-background-green-light)}.bal-tag--is-invalid{background:var(--bal-tag-background-invalid);color:var(--bal-color-text-white)}.bal-tag__label{font-family:var(--bal-font-family-text);color:var(--bal-tag-text);font-weight:var(--bal-font-weight-bold);font-size:var(--bal-text-size-normal) !important;hyphens:auto;display:inline-flex;align-items:center;gap:.25rem}.bal-tag__label--is-small{font-size:var(--bal-tag-size-small-font-size) !important;font-weight:var(--bal-tag-size-small-font-weight) !important}.bal-tag__label--is-medium{font-size:var(--bal-text-size-medium) !important}.bal-tag__label--is-large{font-size:var(--bal-text-size-medium) !important}.bal-tag__label--is-primary{color:var(--bal-tag-text-primary)}.bal-tag__label--is-grey{color:var(--bal-tag-text-grey)}.bal-tag__label--is-success{color:var(--bal-tag-text-success)}.bal-tag__label--is-info{color:var(--bal-tag-text-info)}.bal-tag__label--is-warning{color:var(--bal-tag-text-warning)}.bal-tag__label--is-danger{color:var(--bal-tag-text-danger)}.bal-tag__label--is-purple{color:var(--bal-tag-text-purple)}.bal-tag__label--is-red{color:var(--bal-tag-text-red)}.bal-tag__label--is-yellow{color:var(--bal-tag-text-yellow)}.bal-tag__label--is-green{color:var(--bal-tag-text-green)}.bal-tag__label--is-purple-light{color:var(--bal-tag-text-purple-light)}.bal-tag__label--is-red-light{color:var(--bal-tag-text-red-light)}.bal-tag__label--is-yellow-light{color:var(--bal-tag-text-yellow-light)}.bal-tag__label--is-green-light{color:var(--bal-tag-text-green-light)}.bal-tag__label--is-invalid{background:var(--bal-color-border-danger);color:var(--bal-tag-text-invalid)}.bal-tag__label--is-disabled{background-color:var(--bal-tag-background-disabled);border-color:var(--bal-tag-border-disabled-color)}.bal-tag--is-disabled{cursor:default;pointer-events:none;user-select:none;background-color:var(--bal-tag-background-disabled);border-color:var(--bal-tag-border-disabled-color);box-shadow:none;color:var(--bal-tag-text-disabled)}.bal-tag--is-disabled>span{color:var(--bal-tag-text-disabled)}.bal-tag__close{margin-left:.25rem;margin-right:-0.5rem}.bal-tag-group{display:flex;gap:.25rem}
|
package/dist/collection/index.js
CHANGED
|
@@ -26,6 +26,7 @@ export * from './components/bal-label/bal-label.i18n';
|
|
|
26
26
|
* Utils
|
|
27
27
|
*/
|
|
28
28
|
export { initializeBaloiseDesignSystem as initialize, initializeBaloiseDesignSystem } from './initialize';
|
|
29
|
+
export { newBalOption } from './utils/dropdown/option';
|
|
29
30
|
export { newBalStepOption } from './components/bal-steps/bal-step.util';
|
|
30
31
|
export { newBalTabOption } from './components/bal-tabs/bal-tab.util';
|
|
31
32
|
export { newBalCheckboxOption } from './components/bal-checkbox/utils/bal-checkbox.util';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const ariaBooleanToString = (bool) => (!!bool ? 'true' : 'false');
|
|
@@ -63,6 +63,13 @@ export class Config {
|
|
|
63
63
|
this._config.animated = animated;
|
|
64
64
|
this._notify();
|
|
65
65
|
}
|
|
66
|
+
get httpFormSubmit() {
|
|
67
|
+
return this._config.httpFormSubmit;
|
|
68
|
+
}
|
|
69
|
+
set httpFormSubmit(httpFormSubmit) {
|
|
70
|
+
this._config.httpFormSubmit = httpFormSubmit;
|
|
71
|
+
this._notify();
|
|
72
|
+
}
|
|
66
73
|
attach(observer) {
|
|
67
74
|
const isExist = this._observers.includes(observer);
|
|
68
75
|
if (isExist) {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// generated by .build/version.js
|
|
2
|
-
export const VERSION = '16.0
|
|
2
|
+
export const VERSION = '16.1.0';
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
import { DateTime, Info } from "luxon";
|
|
1
|
+
import { DateTime, Info, Settings } from "luxon";
|
|
2
2
|
import { useBalConfig } from "../config";
|
|
3
3
|
import { dateSeparator } from "@baloise/web-app-utils";
|
|
4
4
|
export class BalDate {
|
|
5
|
+
static setTwoDigitCutoffYear(cutoff = 10) {
|
|
6
|
+
Settings.twoDigitCutoffYear = (new Date().getFullYear() % 100) + cutoff;
|
|
7
|
+
}
|
|
5
8
|
static fromAnyFormat(value) {
|
|
6
9
|
const separator = value.replace(/[0-9]/g, '').charAt(0);
|
|
7
10
|
const config = useBalConfig();
|
|
@@ -109,3 +112,4 @@ export class BalDate {
|
|
|
109
112
|
return undefined;
|
|
110
113
|
}
|
|
111
114
|
}
|
|
115
|
+
BalDate.setTwoDigitCutoffYear();
|
|
@@ -60,15 +60,21 @@ describe('balDate', () => {
|
|
|
60
60
|
expect(BalDate.fromAnyFormat('1.02.1988').toISODate()).toStrictEqual('1988-02-01');
|
|
61
61
|
expect(BalDate.fromAnyFormat('01.2.1988').toISODate()).toStrictEqual('1988-02-01');
|
|
62
62
|
expect(BalDate.fromAnyFormat('1.2.1988').toISODate()).toStrictEqual('1988-02-01');
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
expect(BalDate.fromAnyFormat('1.2.00').toISODate()).toStrictEqual('2000-02-01');
|
|
66
|
-
expect(BalDate.fromAnyFormat('1.2.0').toISODate()).toStrictEqual('2000-02-01');
|
|
67
|
-
expect(BalDate.fromAnyFormat('12.12.1').toISODate()).toStrictEqual('2001-12-12');
|
|
63
|
+
});
|
|
64
|
+
test('should parse to todays year', () => {
|
|
68
65
|
const year = new Date().getFullYear();
|
|
69
66
|
expect(BalDate.fromAnyFormat('1.2.').toISODate()).toStrictEqual(`${year}-02-01`);
|
|
70
67
|
expect(BalDate.fromAnyFormat('1.2').toISODate()).toStrictEqual(`${year}-02-01`);
|
|
71
68
|
});
|
|
69
|
+
test('should fill up with the year correctly by the cutoff year', () => {
|
|
70
|
+
const year = new Date().getFullYear();
|
|
71
|
+
const cutoff = year + 10;
|
|
72
|
+
const cutoffTwoDigits = cutoff % 100;
|
|
73
|
+
console.log('cutoff', cutoff);
|
|
74
|
+
expect(BalDate.fromAnyFormat(`1.1.${cutoffTwoDigits}`).toISODate()).toStrictEqual(`20${cutoffTwoDigits}-01-01`);
|
|
75
|
+
expect(BalDate.fromAnyFormat(`1.1.${cutoffTwoDigits - 1}`).toISODate()).toStrictEqual(`20${cutoffTwoDigits - 1}-01-01`);
|
|
76
|
+
expect(BalDate.fromAnyFormat(`1.1.${cutoffTwoDigits + 1}`).toISODate()).toStrictEqual(`19${cutoffTwoDigits + 1}-01-01`);
|
|
77
|
+
});
|
|
72
78
|
test('should parse all supported number formats', () => {
|
|
73
79
|
expect(BalDate.fromAnyFormat('20021988').toISODate()).toStrictEqual('1988-02-20');
|
|
74
80
|
});
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { areArraysEqual } from "@baloise/web-app-utils";
|
|
2
|
+
import { stopEventBubbling } from "../form-input";
|
|
3
|
+
export class DropdownAutoFillUtil {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.handleAutoFill = async (ev) => {
|
|
6
|
+
stopEventBubbling(ev);
|
|
7
|
+
if (this.isAutoFillAllowed()) {
|
|
8
|
+
this.component.isAutoFilled = true;
|
|
9
|
+
const autoFillValue = this.component.nativeEl.value;
|
|
10
|
+
const newValue = await this.parseAutoFillValueWithOptions(autoFillValue);
|
|
11
|
+
if (newValue === undefined) {
|
|
12
|
+
this.component.isAutoFilled = false;
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
if (!areArraysEqual(newValue, this.component.rawValue)) {
|
|
16
|
+
this.component.valueUtil.updateRawValueBySelection(newValue, true);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
connectedCallback(component) {
|
|
22
|
+
this.component = component;
|
|
23
|
+
}
|
|
24
|
+
isAutoFillAllowed() {
|
|
25
|
+
return !this.component.multiple;
|
|
26
|
+
}
|
|
27
|
+
async parseAutoFillValueWithOptions(autoFillValue) {
|
|
28
|
+
const options = await this.component.listEl.getOptions();
|
|
29
|
+
const value = undefined;
|
|
30
|
+
for (let index = 0; index < options.length; index++) {
|
|
31
|
+
const option = options[index];
|
|
32
|
+
if (option.value === autoFillValue || option.label === autoFillValue) {
|
|
33
|
+
return [option.value];
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
return value;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
export const i18nBalDropdown = {
|
|
2
|
+
de: {
|
|
3
|
+
clearable: 'Löschen',
|
|
4
|
+
open: 'Öffnen',
|
|
5
|
+
close: 'Schließen',
|
|
6
|
+
},
|
|
7
|
+
en: {
|
|
8
|
+
clearable: 'clear',
|
|
9
|
+
open: 'Open',
|
|
10
|
+
close: 'Close',
|
|
11
|
+
},
|
|
12
|
+
fr: {
|
|
13
|
+
clearable: 'Effacer',
|
|
14
|
+
open: 'Ouvrir',
|
|
15
|
+
close: 'Fermer',
|
|
16
|
+
},
|
|
17
|
+
it: {
|
|
18
|
+
clearable: 'Cancellare',
|
|
19
|
+
open: 'Apri',
|
|
20
|
+
close: 'Chiudi',
|
|
21
|
+
},
|
|
22
|
+
nl: {
|
|
23
|
+
clearable: 'Wissen',
|
|
24
|
+
open: 'Open',
|
|
25
|
+
close: 'Sluiten',
|
|
26
|
+
},
|
|
27
|
+
es: {
|
|
28
|
+
clearable: 'Limpiar',
|
|
29
|
+
open: 'Abrir',
|
|
30
|
+
close: 'Cerrar',
|
|
31
|
+
},
|
|
32
|
+
pl: {
|
|
33
|
+
clearable: 'Wyczyść',
|
|
34
|
+
open: 'Otwórz',
|
|
35
|
+
close: 'Zamknij',
|
|
36
|
+
},
|
|
37
|
+
pt: {
|
|
38
|
+
clearable: 'Limpar',
|
|
39
|
+
open: 'Abrir',
|
|
40
|
+
close: 'Fechar',
|
|
41
|
+
},
|
|
42
|
+
sv: {
|
|
43
|
+
clearable: 'Rensa',
|
|
44
|
+
open: 'Öppna',
|
|
45
|
+
close: 'Stäng',
|
|
46
|
+
},
|
|
47
|
+
fi: {
|
|
48
|
+
clearable: 'Tyhjennä',
|
|
49
|
+
open: 'Avaa',
|
|
50
|
+
close: 'Sulje',
|
|
51
|
+
},
|
|
52
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
export class DropdownEventsUtil {
|
|
2
|
+
connectedCallback(component) {
|
|
3
|
+
this.component = component;
|
|
4
|
+
}
|
|
5
|
+
handleFocus(ev) {
|
|
6
|
+
this.component.hasFocus = true;
|
|
7
|
+
this.component.balFocus.emit(ev);
|
|
8
|
+
}
|
|
9
|
+
handleBlur(ev) {
|
|
10
|
+
this.component.hasFocus = false;
|
|
11
|
+
this.component.balBlur.emit(ev);
|
|
12
|
+
}
|
|
13
|
+
handleClick(ev) {
|
|
14
|
+
if (!this.component.valueUtil.isDisabled()) {
|
|
15
|
+
if (this.component.chips) {
|
|
16
|
+
const targetEl = ev.target;
|
|
17
|
+
const closeEl = targetEl.closest('bal-close');
|
|
18
|
+
if (closeEl) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
if (this.component.clearable) {
|
|
23
|
+
const targetEl = ev.target;
|
|
24
|
+
const clearEl = targetEl.closest('.bal-dropdown__clear');
|
|
25
|
+
if (clearEl) {
|
|
26
|
+
this.component.valueUtil.updateRawValueBySelection([]);
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
this.component.popupUtil.toggleList();
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
// @Listen('click', { target: 'document' })
|
|
34
|
+
handleOutsideClick(ev) {
|
|
35
|
+
var _a;
|
|
36
|
+
if (this.component.isExpanded) {
|
|
37
|
+
if (!this.component.el.contains(ev.target)) {
|
|
38
|
+
this.component.isExpanded = false;
|
|
39
|
+
(_a = this.component.listEl) === null || _a === void 0 ? void 0 : _a.resetFocus();
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export function startsWith(text, input) {
|
|
2
|
+
const content = text.trim().toLowerCase();
|
|
3
|
+
const value = input.trim().toLowerCase();
|
|
4
|
+
return content.startsWith(value);
|
|
5
|
+
}
|
|
6
|
+
export function includes(text, input) {
|
|
7
|
+
const content = text.trim().toLowerCase();
|
|
8
|
+
const value = input.trim().toLowerCase();
|
|
9
|
+
return content.includes(value);
|
|
10
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export class DropdownFocusUtil {
|
|
2
|
+
connectedCallback(component) {
|
|
3
|
+
this.component = component;
|
|
4
|
+
}
|
|
5
|
+
focusOptionByLabel(key, options = {}) {
|
|
6
|
+
this.component.labelToFocus = (this.component.labelToFocus + key).trim();
|
|
7
|
+
if (this.component.labelToFocus.length > 0) {
|
|
8
|
+
clearTimeout(this.keyHitTimeout);
|
|
9
|
+
this.keyHitTimeout = setTimeout(() => {
|
|
10
|
+
var _a;
|
|
11
|
+
(_a = this.component.listEl) === null || _a === void 0 ? void 0 : _a.focusByLabel(this.component.labelToFocus, options);
|
|
12
|
+
}, 100);
|
|
13
|
+
clearTimeout(this.timeout);
|
|
14
|
+
this.timeout = setTimeout(async () => {
|
|
15
|
+
this.component.labelToFocus = '';
|
|
16
|
+
}, 1000);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
import { BEM } from "../bem";
|
|
3
|
+
export class DropdownFormSubmitUtil {
|
|
4
|
+
connectedCallback(component) {
|
|
5
|
+
this.component = component;
|
|
6
|
+
this.component.initialValue = this.component.value;
|
|
7
|
+
}
|
|
8
|
+
componentDidRender() {
|
|
9
|
+
if (this.component.selectEl) {
|
|
10
|
+
const options = this.component.selectEl.querySelectorAll('option');
|
|
11
|
+
options.forEach(option => {
|
|
12
|
+
if (this.component.rawValue.includes(option.value)) {
|
|
13
|
+
option.selected = true;
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
// @Listen('reset', { capture: true, target: 'document' })
|
|
19
|
+
handle(ev) {
|
|
20
|
+
const formElement = ev.target;
|
|
21
|
+
if (formElement === null || formElement === void 0 ? void 0 : formElement.contains(this.component.el)) {
|
|
22
|
+
if (this.resetHandlerTimer) {
|
|
23
|
+
clearTimeout(this.resetHandlerTimer);
|
|
24
|
+
}
|
|
25
|
+
this.resetHandlerTimer = setTimeout(() => {
|
|
26
|
+
const newRawValue = this.component.valueUtil.parseValueString(this.component.initialValue);
|
|
27
|
+
this.component.valueUtil.updateRawValueBySelection(newRawValue);
|
|
28
|
+
}, 0);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export const DropdownNativeSelect = ({ name, httpFormSubmit, multiple, required, disabled, rawValue, refSelectEl, }) => {
|
|
33
|
+
const block = BEM.block('dropdown');
|
|
34
|
+
return httpFormSubmit ? (h("select", { class: Object.assign({}, block.element('root').element('select').class()), "aria-hidden": "true", name: name, multiple: multiple, required: required, disabled: disabled, tabindex: -1, ref: refSelectEl }, rawValue.map((value) => (h("option", { key: value, value: value, selected: true }, value))))) : ('');
|
|
35
|
+
};
|