@baloise/ds-core 20.0.0-next.4 → 20.0.0-next.6
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/LICENSE +9 -0
- package/components/all.d.ts +56 -0
- package/components/all.js +84 -0
- package/components/ds-accordion.js +1 -1
- package/components/ds-alert-container.js +1 -1
- package/components/ds-app.js +1 -1
- package/components/ds-badge.js +1 -1
- package/components/ds-button-group.js +1 -1
- package/components/ds-button.js +1 -1
- package/components/ds-card-actions.js +1 -1
- package/components/ds-card-content.js +1 -1
- package/components/ds-card-header.js +1 -1
- package/components/ds-card-subtitle.js +1 -1
- package/components/ds-card-title.js +1 -1
- package/components/ds-card.js +1 -1
- package/components/ds-carousel-item.d.ts +11 -0
- package/components/ds-carousel-item.js +4 -0
- package/components/ds-carousel.d.ts +11 -0
- package/components/ds-carousel.js +4 -0
- package/components/ds-checkbox-group.js +1 -1
- package/components/ds-checkbox.js +1 -1
- package/components/ds-close.js +1 -1
- package/components/ds-content.js +1 -1
- package/components/ds-data-item.d.ts +11 -0
- package/components/ds-data-item.js +4 -0
- package/components/ds-data-label.d.ts +11 -0
- package/components/ds-data-label.js +4 -0
- package/components/ds-data-value.d.ts +11 -0
- package/components/ds-data-value.js +4 -0
- package/components/ds-data.d.ts +11 -0
- package/components/ds-data.js +4 -0
- package/components/ds-date.d.ts +11 -0
- package/components/ds-date.js +4 -0
- package/components/ds-divider.js +1 -1
- package/components/ds-drawer.d.ts +11 -0
- package/components/ds-drawer.js +4 -0
- package/components/ds-file-upload.d.ts +11 -0
- package/components/ds-file-upload.js +4 -0
- package/components/ds-footer.d.ts +11 -0
- package/components/ds-footer.js +4 -0
- package/components/ds-heading.js +1 -1
- package/components/ds-hint-text.d.ts +11 -0
- package/components/ds-hint-text.js +4 -0
- package/components/ds-hint-title.d.ts +11 -0
- package/components/ds-hint-title.js +4 -0
- package/components/ds-hint.d.ts +11 -0
- package/components/ds-hint.js +4 -0
- package/components/ds-icon.js +1 -1
- package/components/ds-input.js +1 -1
- package/components/ds-item.js +1 -1
- package/components/ds-label.js +1 -1
- package/components/ds-list.js +1 -1
- package/components/ds-logo.js +1 -1
- package/components/ds-modal-body.d.ts +11 -0
- package/components/ds-modal-body.js +4 -0
- package/components/ds-modal-header.d.ts +11 -0
- package/components/ds-modal-header.js +4 -0
- package/components/ds-modal.d.ts +11 -0
- package/components/ds-modal.js +4 -0
- package/components/ds-navbar.d.ts +11 -0
- package/components/ds-navbar.js +4 -0
- package/components/ds-notification.js +1 -1
- package/components/ds-number-input.js +1 -1
- package/components/ds-pagination.js +1 -1
- package/components/ds-popup.d.ts +11 -0
- package/components/ds-popup.js +4 -0
- package/components/ds-progress-bar.js +1 -1
- package/components/ds-radio-group.js +1 -1
- package/components/ds-radio.js +1 -1
- package/components/ds-segment-item.js +1 -1
- package/components/ds-segment.js +1 -1
- package/components/ds-select-optgroup.d.ts +11 -0
- package/components/ds-select-optgroup.js +4 -0
- package/components/ds-select-option.d.ts +11 -0
- package/components/ds-select-option.js +4 -0
- package/components/ds-select.d.ts +11 -0
- package/components/ds-select.js +4 -0
- package/components/ds-shape.js +1 -1
- package/components/ds-snackbar.js +1 -1
- package/components/ds-spinner.js +1 -1
- package/components/ds-stack.js +1 -1
- package/components/ds-step-panel.d.ts +11 -0
- package/components/ds-step-panel.js +4 -0
- package/components/ds-step.d.ts +11 -0
- package/components/ds-step.js +4 -0
- package/components/ds-steps.d.ts +11 -0
- package/components/ds-steps.js +4 -0
- package/components/ds-tab-panel.d.ts +11 -0
- package/components/ds-tab-panel.js +4 -0
- package/components/ds-tab.d.ts +11 -0
- package/components/ds-tab.js +4 -0
- package/components/ds-tabs.d.ts +11 -0
- package/components/ds-tabs.js +4 -0
- package/components/ds-tag-group.js +1 -1
- package/components/ds-tag.js +1 -1
- package/components/ds-text.js +1 -1
- package/components/ds-textarea.js +1 -1
- package/components/ds-toast.js +1 -1
- package/components/ds-toggle.js +1 -1
- package/components/ds-tooltip.d.ts +11 -0
- package/components/ds-tooltip.js +4 -0
- package/components/index.js +1 -1
- package/components/p-3Mi9vpmB.js +4 -0
- package/components/p-B-en4B17.js +4 -0
- package/components/p-B1gnrQ9b.js +4 -0
- package/components/p-BU0dY8pq.js +4 -0
- package/components/p-BfXZJ1Fe.js +4 -0
- package/components/p-BgzU1loG.js +4 -0
- package/components/p-BhbWmCTu.js +4 -0
- package/components/p-BqY0KzJC.js +4 -0
- package/components/p-BrIcCcce.js +4 -0
- package/components/p-BrJFPhMA.js +4 -0
- package/components/p-Btdh3fq7.js +4 -0
- package/components/{p-Urcs7-vS.js → p-BwfAXfmz.js} +1 -1
- package/components/p-ByX1_7SF.js +4 -0
- package/components/p-C1jqbZdf.js +4 -0
- package/{dist/design-system/p-15bc012833.entry.js → components/p-CA7G72wZ.js} +1 -1
- package/components/p-CQHwI4iD.js +4 -0
- package/components/p-CYWn3X22.js +4 -0
- package/components/p-CjIxf5zy.js +4 -0
- package/components/p-Ctnm_MBD.js +4 -0
- package/components/p-CvaNxQtw.js +4 -0
- package/components/p-D9ILiUgm.js +4 -0
- package/components/{p-BATOumsf.js → p-D9YYP2SG.js} +1 -1
- package/components/p-DAYd9ty0.js +4 -0
- package/components/p-DIK6Zkg6.js +4 -0
- package/{dist/design-system/p-BkESlUMc.js → components/p-DQBzmbR6.js} +1 -1
- package/components/{p-z1jJgtep.js → p-DU7t9H9h.js} +1 -1
- package/components/p-DYTOWDAA.js +4 -0
- package/components/p-DYlqkAWn.js +4 -0
- package/components/p-DbM7ALm9.js +14 -0
- package/{dist/design-system/p-D2tr7015.js → components/p-DbY6Pfeh.js} +1 -1
- package/components/{p-DZqqelPH.js → p-DcSNuA8W.js} +1 -1
- package/components/p-DenZRIeA.js +4 -0
- package/components/p-DokkRjWC.js +4 -0
- package/{dist/design-system/p-BwrOVItb.js → components/p-Dr4MUfss.js} +1 -1
- package/components/p-DsvYY32v.js +4 -0
- package/components/p-Du7QOHtz.js +5 -0
- package/components/{p-E8U6M5ii.js → p-FBQaJyH0.js} +1 -1
- package/components/{p-Dr4dquer.js → p-J0mxIuTt.js} +1 -1
- package/{dist/design-system/p-DJxr2Dcd.js → components/p-UCeQ1JCs.js} +1 -1
- package/components/p-Uy_dVz21.js +4 -0
- package/components/p-WO0X5Vmy.js +4 -0
- package/components/p-bGV2P6rT.js +4 -0
- package/components/{p-Bt20CEww.js → p-n3_2KEz0.js} +1 -1
- package/dist/cjs/array-CioNm_V1.js +1985 -0
- package/dist/cjs/{breakpoints.decorator-qaoHOU6Q.js → breakpoints.decorator-C-Qm21UK.js} +1 -1
- package/dist/cjs/{breakpoints.subject-DhAN_ZAn.js → breakpoints.subject-XNcGwhzh.js} +3 -3
- package/dist/cjs/{button.interfaces-BueDWsuH.js → button.interfaces-CqlUGR-N.js} +1 -1
- package/dist/cjs/carousel.interfaces-BFQpUNrw.js +12 -0
- package/dist/cjs/{config.decorator-Qmrq4ZYj.js → config.decorator-ThGLtT-3.js} +1 -1
- package/dist/cjs/{config.utils-Cv4cx_Xa.js → config.utils-MhZvq4Qm.js} +1 -1
- package/dist/cjs/create-validator-decorator-BIgFqrMJ.js +212 -0
- package/dist/cjs/design-system.cjs.js +3 -3
- package/dist/cjs/{device-CptgCtVc.js → device-BnjBOLnP.js} +1 -1
- package/dist/cjs/ds-accordion.cjs.entry.js +30 -34
- package/dist/cjs/ds-alert-container.cjs.entry.js +12 -15
- package/dist/cjs/ds-app.cjs.entry.js +16 -6
- package/dist/cjs/ds-badge.cjs.entry.js +32 -25
- package/dist/cjs/ds-button-group.cjs.entry.js +14 -17
- package/dist/cjs/ds-button_2.cjs.entry.js +58 -73
- package/dist/cjs/ds-card-actions.cjs.entry.js +6 -8
- package/dist/cjs/ds-card-content.cjs.entry.js +2 -2
- package/dist/cjs/ds-card-header.cjs.entry.js +8 -5
- package/dist/cjs/ds-card-subtitle.cjs.entry.js +13 -13
- package/dist/cjs/ds-card-title.cjs.entry.js +11 -7
- package/dist/cjs/ds-card.cjs.entry.js +30 -42
- package/dist/cjs/ds-carousel-item.cjs.entry.js +128 -0
- package/dist/cjs/ds-carousel.cjs.entry.js +473 -0
- package/dist/cjs/ds-checkbox-group.cjs.entry.js +41 -2012
- package/dist/cjs/ds-checkbox.cjs.entry.js +23 -19
- package/dist/cjs/ds-content_2.cjs.entry.js +330 -0
- package/dist/cjs/ds-data-item.cjs.entry.js +146 -0
- package/dist/cjs/ds-data-label.cjs.entry.js +41 -0
- package/dist/cjs/ds-data-value.cjs.entry.js +31 -0
- package/dist/cjs/ds-data.cjs.entry.js +43 -0
- package/dist/cjs/ds-date.cjs.entry.js +5334 -0
- package/dist/cjs/{ds-logo.cjs.entry.js → ds-divider_2.cjs.entry.js} +130 -25
- package/dist/cjs/ds-drawer_2.cjs.entry.js +602 -0
- package/dist/cjs/ds-file-upload.cjs.entry.js +515 -0
- package/dist/cjs/ds-footer.cjs.entry.js +159 -0
- package/dist/cjs/ds-heading.cjs.entry.js +21 -19
- package/dist/cjs/ds-hint-text.cjs.entry.js +28 -0
- package/dist/cjs/ds-hint-title.cjs.entry.js +31 -0
- package/dist/cjs/ds-hint.cjs.entry.js +243 -0
- package/dist/cjs/ds-icon_2.cjs.entry.js +78 -70
- package/dist/cjs/ds-input.cjs.entry.js +45 -43
- package/dist/cjs/ds-item.cjs.entry.js +29 -34
- package/dist/cjs/ds-label.cjs.entry.js +22 -30
- package/dist/cjs/ds-list.cjs.entry.js +6 -12
- package/dist/cjs/ds-modal-body.cjs.entry.js +34 -0
- package/dist/cjs/ds-modal-header.cjs.entry.js +31 -0
- package/dist/cjs/ds-modal.cjs.entry.js +201 -0
- package/dist/cjs/ds-navbar.cjs.entry.js +359 -0
- package/dist/cjs/ds-notification.cjs.entry.js +19 -27
- package/dist/cjs/ds-number-input.cjs.entry.js +128 -45
- package/dist/cjs/ds-pagination.cjs.entry.js +41 -37
- package/dist/cjs/ds-progress-bar.cjs.entry.js +25 -29
- package/dist/cjs/ds-radio-group.cjs.entry.js +30 -29
- package/dist/cjs/ds-radio.cjs.entry.js +26 -33
- package/dist/cjs/ds-segment-item.cjs.entry.js +9 -9
- package/dist/cjs/ds-segment.cjs.entry.js +29 -117
- package/dist/cjs/ds-select-optgroup.cjs.entry.js +49 -0
- package/dist/cjs/ds-select-option.cjs.entry.js +57 -0
- package/dist/cjs/ds-select.cjs.entry.js +2772 -0
- package/dist/cjs/ds-shape.cjs.entry.js +10 -16
- package/dist/cjs/ds-snackbar.cjs.entry.js +40 -57
- package/dist/cjs/ds-step-panel.cjs.entry.js +55 -0
- package/dist/cjs/ds-step.cjs.entry.js +170 -0
- package/dist/cjs/ds-steps.cjs.entry.js +227 -0
- package/dist/cjs/ds-tab-panel.cjs.entry.js +55 -0
- package/dist/cjs/ds-tab.cjs.entry.js +120 -0
- package/dist/cjs/ds-tabs.cjs.entry.js +364 -0
- package/dist/cjs/ds-tag-group.cjs.entry.js +3 -3
- package/dist/cjs/ds-tag.cjs.entry.js +19 -26
- package/dist/cjs/ds-text.cjs.entry.js +28 -32
- package/dist/cjs/ds-textarea.cjs.entry.js +32 -31
- package/dist/cjs/ds-toast.cjs.entry.js +40 -54
- package/dist/cjs/ds-toggle.cjs.entry.js +22 -21
- package/dist/cjs/ds-tooltip.cjs.entry.js +182 -0
- package/dist/cjs/{field.util-RjuvTLNZ.js → field.util-L-DkeMVk.js} +1 -1
- package/dist/cjs/floating-ui.dom-Cu3dZdFD.js +1628 -0
- package/dist/cjs/focus-D3VVgpM7.js +1958 -0
- package/dist/cjs/footer.i18n-CpGxizgm.js +162 -0
- package/dist/cjs/{form-control-Bno2tBGf.js → form-control-CtMcJUuC.js} +2 -2
- package/dist/cjs/has-value-DK0oRqXI.js +12 -0
- package/dist/cjs/{index-CdD-TT_n.js → index-sC3JnTlJ.js} +497 -175
- package/dist/cjs/index.cjs.js +26 -8283
- package/dist/cjs/keyboard-C7y0jXYb.js +23 -0
- package/dist/cjs/{listener-DgVWqfa1.js → listener-BwB_xent.js} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/luxon-q23LOWrr.js +8137 -0
- package/dist/cjs/one-of-BZGRIMtQ.js +30 -0
- package/dist/cjs/popup.interfaces-B-mwd9rh.js +23 -0
- package/dist/cjs/required-COz3Unzu.js +38 -0
- package/dist/cjs/resize.decorator-DWM_fQgv.js +98 -0
- package/dist/cjs/scroll-CUuEh4xd.js +89 -0
- package/dist/cjs/svg-D9RbiR8R.js +2443 -0
- package/dist/cjs/{tslib.es6-BTi-SLnA.js → tslib.es6-CxyosZMg.js} +1 -1
- package/dist/cjs/type-hmc4CJcO.js +33 -0
- package/dist/collection/collection-manifest.json +30 -2
- package/dist/collection/components/accordion/accordion.host.css +1 -1
- package/dist/collection/components/accordion/accordion.js +22 -29
- package/dist/collection/components/alert/alert-container.js +8 -14
- package/dist/collection/components/alert/alert.controller.js +1 -1
- package/dist/collection/components/alert/snackbar/snackbar.js +30 -53
- package/dist/collection/components/alert/toast/toast.js +32 -53
- package/dist/collection/components/app/app.js +11 -3
- package/dist/collection/components/badge/badge.interfaces.js +1 -1
- package/dist/collection/components/badge/badge.js +28 -25
- package/dist/collection/components/button/button-group/button-group.js +8 -14
- package/dist/collection/components/button/button.host.css +1 -1
- package/dist/collection/components/button/button.interfaces.js +1 -1
- package/dist/collection/components/button/button.js +44 -54
- package/dist/collection/components/card/card-actions/card-actions.js +3 -6
- package/dist/collection/components/card/card-header/card-header.js +4 -3
- package/dist/collection/components/card/card-subtitle/card-subtitle.js +8 -11
- package/dist/collection/components/card/card-title/card-title.js +6 -5
- package/dist/collection/components/card/card.host.css +1 -1
- package/dist/collection/components/card/card.js +25 -38
- package/dist/collection/components/carousel/carousel/carousel.host.css +1 -0
- package/dist/collection/components/carousel/carousel/carousel.i18n.js +65 -0
- package/dist/collection/components/carousel/carousel/carousel.js +631 -0
- package/dist/collection/components/carousel/carousel-item/carousel-item.host.css +1 -0
- package/dist/collection/components/carousel/carousel-item/carousel-item.js +313 -0
- package/dist/collection/components/carousel/carousel.interfaces.js +6 -0
- package/dist/collection/components/carousel/test/carousel.a11y.play.js +34 -0
- package/dist/collection/components/carousel/test/carousel.component.play.js +57 -0
- package/dist/collection/components/carousel/test/carousel.visual.play.js +24 -0
- package/dist/collection/components/checkbox/checkbox-group/checkbox-group.host.css +1 -1
- package/dist/collection/components/checkbox/checkbox-group/checkbox-group.js +25 -26
- package/dist/collection/components/checkbox/checkbox.js +18 -18
- package/dist/collection/components/close/close.js +10 -21
- package/dist/collection/components/content/content.js +38 -52
- package/dist/collection/components/data/data-item.host.css +1 -0
- package/dist/collection/components/data/data-item.i18n.js +35 -0
- package/dist/collection/components/data/data-item.js +244 -0
- package/dist/collection/components/data/data-label.host.css +1 -0
- package/dist/collection/components/data/data-label.js +72 -0
- package/dist/collection/components/data/data-value.host.css +1 -0
- package/dist/collection/components/data/data-value.js +38 -0
- package/dist/collection/components/data/data.host.css +1 -0
- package/dist/collection/components/data/data.js +75 -0
- package/dist/collection/components/data/test/data.a11y.play.js +31 -0
- package/dist/collection/components/data/test/data.component.play.js +104 -0
- package/dist/collection/components/data/test/data.visual.play.js +25 -0
- package/dist/collection/components/date/date.host.css +1 -0
- package/dist/collection/components/date/date.i18n.js +105 -0
- package/dist/collection/components/date/date.interfaces.js +4 -0
- package/dist/collection/components/date/date.js +1241 -0
- package/dist/collection/components/date/date.mask.js +189 -0
- package/dist/collection/components/date/date.picker.js +536 -0
- package/dist/collection/components/date/test/date.a11y.play.js +27 -0
- package/dist/collection/components/date/test/date.component.play.js +69 -0
- package/dist/collection/components/date/test/date.visual.play.js +43 -0
- package/dist/collection/components/divider/divider.host.css +1 -1
- package/dist/collection/components/divider/divider.js +11 -24
- package/dist/collection/components/drawer/drawer.host.css +1 -0
- package/dist/collection/{utils/property-checkers/constants.js → components/drawer/drawer.interfaces.js} +1 -1
- package/dist/collection/components/drawer/drawer.js +492 -0
- package/dist/collection/components/drawer/test/drawer.a11y.play.js +39 -0
- package/dist/collection/components/drawer/test/drawer.component.play.js +131 -0
- package/dist/collection/components/drawer/test/drawer.visual.play.js +31 -0
- package/dist/collection/components/file-upload/file-upload.host.css +1 -0
- package/dist/collection/components/file-upload/file-upload.i18n.js +55 -0
- package/dist/collection/components/file-upload/file-upload.interfaces.js +10 -0
- package/dist/collection/components/file-upload/file-upload.js +1030 -0
- package/dist/collection/components/file-upload/test/file-upload.a11y.play.js +52 -0
- package/dist/collection/components/file-upload/test/file-upload.component.play.js +124 -0
- package/dist/collection/components/file-upload/test/file-upload.visual.play.js +18 -0
- package/dist/collection/components/file-upload/utils/file-list.util.js +13 -0
- package/dist/collection/components/file-upload/utils/file-size.util.js +10 -0
- package/dist/collection/components/file-upload/utils/file-validation.util.js +48 -0
- package/dist/collection/components/footer/footer.host.css +1 -0
- package/dist/collection/components/footer/footer.i18n.js +155 -0
- package/dist/collection/components/footer/footer.interfaces.js +4 -0
- package/dist/collection/components/footer/footer.js +350 -0
- package/dist/collection/components/footer/test/footer.a11y.play.js +17 -0
- package/dist/collection/components/footer/test/footer.component.play.js +74 -0
- package/dist/collection/components/footer/test/footer.visual.play.js +16 -0
- package/dist/collection/components/form/test/form.visual.play.js +13 -1
- package/dist/collection/components/heading/heading.js +16 -17
- package/dist/collection/components/hint/hint-text/hint-text.js +28 -0
- package/dist/collection/components/hint/hint-title/hint-title.js +31 -0
- package/dist/collection/components/hint/hint.host.css +1 -0
- package/dist/collection/components/hint/hint.i18n.js +35 -0
- package/dist/collection/components/hint/hint.interfaces.js +1 -0
- package/dist/collection/components/hint/hint.js +410 -0
- package/dist/collection/components/hint/test/hint.a11y.play.js +41 -0
- package/dist/collection/components/hint/test/hint.component.play.js +110 -0
- package/dist/collection/components/hint/test/hint.visual.play.js +39 -0
- package/dist/collection/components/icon/icon.host.css +1 -1
- package/dist/collection/components/icon/icon.interfaces.js +1 -0
- package/dist/collection/components/icon/icon.js +73 -42
- package/dist/collection/components/icon/test/icon.component.play.js +23 -1
- package/dist/collection/components/input/clear-button.i18n.js +35 -0
- package/dist/collection/components/input/clear-button.util.js +11 -0
- package/dist/collection/components/input/input.host.css +1 -1
- package/dist/collection/components/input/input.js +36 -37
- package/dist/collection/components/input/test/input.component.play.js +1 -1
- package/dist/collection/components/input/trigger-button.i18n.js +45 -0
- package/dist/collection/components/label/label.js +16 -28
- package/dist/collection/components/list/item/item.host.css +1 -1
- package/dist/collection/components/list/item/item.interfaces.js +1 -1
- package/dist/collection/components/list/item/item.js +27 -34
- package/dist/collection/components/list/list.js +3 -10
- package/dist/collection/components/list/test/list.visual.play.js +30 -0
- package/dist/collection/components/logo/logo.js +11 -18
- package/dist/collection/components/modal/modal-body/modal-body.host.css +1 -0
- package/dist/collection/components/modal/modal-body/modal-body.js +41 -0
- package/dist/collection/components/modal/modal-header/modal-header.js +32 -0
- package/dist/collection/components/modal/modal.controller.js +31 -0
- package/dist/collection/components/modal/modal.host.css +1 -0
- package/dist/collection/components/modal/modal.interfaces.js +1 -0
- package/dist/collection/components/modal/modal.js +461 -0
- package/dist/collection/components/modal/test/modal.a11y.play.js +59 -0
- package/dist/collection/components/modal/test/modal.component.play.js +196 -0
- package/dist/collection/components/modal/test/modal.visual.play.js +36 -0
- package/dist/collection/components/navbar/navbar.host.css +1 -0
- package/dist/collection/components/navbar/navbar.i18n.js +65 -0
- package/dist/collection/components/navbar/navbar.interfaces.js +6 -0
- package/dist/collection/components/navbar/navbar.js +544 -0
- package/dist/collection/components/navbar/test/navbar.a11y.play.js +26 -0
- package/dist/collection/components/navbar/test/navbar.component.play.js +76 -0
- package/dist/collection/components/navbar/test/navbar.visual.play.js +14 -0
- package/dist/collection/components/notification/notification.js +14 -26
- package/dist/collection/components/number-input/number-input.host.css +1 -1
- package/dist/collection/components/number-input/number-input.js +23 -24
- package/dist/collection/components/pagination/pagination.host.css +1 -1
- package/dist/collection/components/pagination/pagination.js +29 -28
- package/dist/collection/components/popup/popup.host.css +1 -0
- package/dist/collection/components/popup/popup.interfaces.js +18 -0
- package/dist/collection/components/popup/popup.js +869 -0
- package/dist/collection/components/popup/test/popup.a11y.play.js +50 -0
- package/dist/collection/components/popup/test/popup.component.play.js +168 -0
- package/dist/collection/components/popup/test/popup.visual.play.js +33 -0
- package/dist/collection/components/progress-bar/progress-bar.host.css +1 -1
- package/dist/collection/components/progress-bar/progress-bar.js +13 -20
- package/dist/collection/components/radio/radio-group/radio-group.host.css +1 -1
- package/dist/collection/components/radio/radio-group/radio-group.js +22 -23
- package/dist/collection/components/radio/radio.js +19 -20
- package/dist/collection/components/segment/segment/segment.host.css +1 -1
- package/dist/collection/components/segment/segment/segment.js +19 -20
- package/dist/collection/components/segment/segment-item.js +6 -7
- package/dist/collection/components/select/select-optgroup.host.css +1 -0
- package/dist/collection/components/select/select-optgroup.js +82 -0
- package/dist/collection/components/select/select-option.host.css +1 -0
- package/dist/collection/components/select/select-option.js +112 -0
- package/dist/collection/components/select/select.host.css +1 -0
- package/dist/collection/components/select/select.i18n.js +45 -0
- package/dist/collection/components/select/select.interfaces.js +4 -0
- package/dist/collection/components/select/select.js +1024 -0
- package/dist/collection/components/select/select.picker.js +276 -0
- package/dist/collection/components/select/test/select.a11y.play.js +81 -0
- package/dist/collection/components/select/test/select.component.play.js +184 -0
- package/dist/collection/components/select/test/select.visual.play.js +70 -0
- package/dist/collection/components/shape/shape.js +7 -14
- package/dist/collection/components/spinner/spinner.js +18 -26
- package/dist/collection/components/stack/stack.host.css +1 -1
- package/dist/collection/components/stack/stack.js +41 -153
- package/dist/collection/components/steps/step/step.host.css +1 -0
- package/dist/collection/components/steps/step/step.js +431 -0
- package/dist/collection/components/steps/step-panel/step-panel.host.css +1 -0
- package/dist/collection/components/steps/step-panel/step-panel.js +104 -0
- package/dist/collection/components/steps/steps/steps.host.css +1 -0
- package/dist/collection/components/steps/steps/steps.js +356 -0
- package/dist/collection/components/steps/steps.interfaces.js +4 -0
- package/dist/collection/components/steps/test/steps.a11y.play.js +73 -0
- package/dist/collection/components/steps/test/steps.component.play.js +182 -0
- package/dist/collection/components/steps/test/steps.visual.play.js +18 -0
- package/dist/collection/components/tabs/tab/tab.host.css +1 -0
- package/dist/collection/components/tabs/tab/tab.js +278 -0
- package/dist/collection/components/tabs/tab-panel/tab-panel.host.css +1 -0
- package/dist/collection/components/tabs/tab-panel/tab-panel.js +104 -0
- package/dist/collection/components/tabs/tabs/tabs.host.css +1 -0
- package/dist/collection/components/tabs/tabs/tabs.i18n.js +45 -0
- package/dist/collection/components/tabs/tabs/tabs.js +552 -0
- package/dist/collection/components/tabs/tabs.interfaces.js +12 -0
- package/dist/collection/components/tabs/test/tabs.a11y.play.js +60 -0
- package/dist/collection/components/tabs/test/tabs.component.play.js +129 -0
- package/dist/collection/components/tabs/test/tabs.visual.play.js +31 -0
- package/dist/collection/components/tag/tag-group/tag-group.js +1 -1
- package/dist/collection/components/tag/tag.js +15 -26
- package/dist/collection/components/text/text.js +23 -30
- package/dist/collection/components/textarea/textarea.host.css +1 -1
- package/dist/collection/components/textarea/textarea.js +24 -25
- package/dist/collection/components/time-input/test/time-input.visual.play.js +18 -0
- package/dist/collection/components/toggle/toggle.js +19 -20
- package/dist/collection/components/tooltip/test/tooltip.a11y.play.js +32 -0
- package/dist/collection/components/tooltip/test/tooltip.component.play.js +51 -0
- package/dist/collection/components/tooltip/test/tooltip.visual.play.js +16 -0
- package/dist/collection/components/tooltip/tooltip.host.css +1 -0
- package/dist/collection/components/tooltip/tooltip.interfaces.js +4 -0
- package/dist/collection/components/tooltip/tooltip.js +407 -0
- package/dist/collection/foundation/colors.visual.play.js +18 -0
- package/dist/collection/global/config/config.const.js +11 -0
- package/dist/collection/global/config/config.default.js +92 -42
- package/dist/collection/global/config/config.js +1 -1
- package/dist/collection/global/config/config.meta.js +27 -0
- package/dist/collection/global/config/index.js +1 -0
- package/dist/collection/global/config/initialize.js +2 -1
- package/dist/collection/global/constants/tags.constant.js +29 -1
- package/dist/collection/global/constants/version.constant.js +1 -1
- package/dist/collection/global/index.js +0 -1
- package/dist/collection/global/initialize.js +2 -0
- package/dist/collection/index.js +5 -20
- package/dist/collection/utils/attributes.js +0 -15
- package/dist/collection/utils/focus.js +72 -0
- package/dist/collection/utils/form-control.js +1 -1
- package/dist/collection/utils/has-value.js +7 -0
- package/dist/collection/utils/helpers.js +14 -74
- package/dist/collection/utils/index.js +7 -5
- package/dist/collection/utils/{property-checkers/is-value-empty.js → is-value-empty.js} +1 -1
- package/dist/collection/utils/number.js +6 -25
- package/dist/collection/utils/property-decorators/array-of.js +25 -0
- package/dist/collection/utils/property-decorators/bound.js +79 -0
- package/dist/collection/utils/property-decorators/create-validator-decorator.js +212 -0
- package/dist/collection/utils/property-decorators/date.js +24 -0
- package/dist/collection/utils/property-decorators/index.js +12 -0
- package/dist/collection/utils/property-decorators/iso-date.js +24 -0
- package/dist/collection/utils/property-decorators/one-of.js +25 -0
- package/dist/collection/utils/property-decorators/pattern.js +25 -0
- package/dist/collection/utils/property-decorators/required.js +44 -0
- package/dist/collection/utils/property-decorators/type.js +28 -0
- package/dist/collection/utils/property-decorators/url.js +32 -0
- package/dist/collection/utils/property-types.js +1 -0
- package/dist/collection/utils/svg.js +19 -0
- package/dist/design-system/design-system.esm.js +1 -1
- package/dist/design-system/index.esm.js +1 -1
- package/dist/design-system/p-01430d5c28.entry.js +4 -0
- package/dist/design-system/p-014d464627.entry.js +4 -0
- package/dist/design-system/p-0663d7c0f1.entry.js +4 -0
- package/dist/design-system/p-0bd2ce2da3.entry.js +4 -0
- package/dist/design-system/p-0ff0be5b83.entry.js +4 -0
- package/dist/design-system/p-10c136d00d.entry.js +4 -0
- package/dist/design-system/p-11f34d0c7d.entry.js +4 -0
- package/dist/design-system/p-13d1ce3158.entry.js +4 -0
- package/dist/design-system/p-163d606781.entry.js +4 -0
- package/dist/design-system/p-1VXOIrN2.js +4 -0
- package/dist/design-system/p-202ecb8f01.entry.js +4 -0
- package/dist/design-system/p-27d181c5ac.entry.js +4 -0
- package/dist/design-system/p-2a35e0b9b0.entry.js +4 -0
- package/dist/design-system/p-2f51e1d39b.entry.js +4 -0
- package/dist/design-system/p-3134821ac6.entry.js +4 -0
- package/dist/design-system/p-3292ae6a05.entry.js +4 -0
- package/dist/design-system/p-372bf379f9.entry.js +4 -0
- package/dist/design-system/p-3895178b39.entry.js +4 -0
- package/dist/design-system/p-3c6b7a2967.entry.js +4 -0
- package/dist/design-system/p-3ef4bd1c59.entry.js +4 -0
- package/dist/design-system/p-493b18cc46.entry.js +4 -0
- package/dist/design-system/p-4a99464dae.entry.js +4 -0
- package/dist/design-system/p-4e6638d14e.entry.js +4 -0
- package/dist/design-system/p-53dda5d400.entry.js +4 -0
- package/dist/design-system/p-5d17209d91.entry.js +4 -0
- package/dist/design-system/p-5e51fa8df4.entry.js +4 -0
- package/dist/design-system/p-60d29d8b8e.entry.js +4 -0
- package/dist/design-system/p-62cb503015.entry.js +4 -0
- package/dist/design-system/p-650289138a.entry.js +4 -0
- package/dist/design-system/p-65c221261c.entry.js +4 -0
- package/dist/design-system/p-68c9f4f630.entry.js +4 -0
- package/dist/design-system/p-68ebed7eee.entry.js +4 -0
- package/dist/design-system/p-6b6531379b.entry.js +4 -0
- package/dist/design-system/p-6d168ba9ad.entry.js +4 -0
- package/dist/design-system/p-6ef31a3c07.entry.js +4 -0
- package/dist/design-system/p-774b89ed0b.entry.js +4 -0
- package/dist/design-system/p-787bd92bcc.entry.js +4 -0
- package/{components/p-E1SnOz0L.js → dist/design-system/p-78NZc8PM.js} +1 -1
- package/dist/design-system/p-7c353652a9.entry.js +4 -0
- package/dist/design-system/p-7c8bf0f33e.entry.js +4 -0
- package/dist/design-system/p-7e702193fc.entry.js +4 -0
- package/dist/design-system/p-8353961d39.entry.js +4 -0
- package/dist/design-system/{p-1d312498a6.entry.js → p-8406f6faf1.entry.js} +1 -1
- package/dist/design-system/p-9f2dd0b55b.entry.js +4 -0
- package/dist/design-system/p-B-en4B17.js +4 -0
- package/dist/design-system/p-B1e0kNRJ.js +14 -0
- package/dist/design-system/p-B8KVoKrH.js +5 -0
- package/dist/design-system/p-BAY6Z8bT.js +4 -0
- package/dist/design-system/p-BLGVE-7Z.js +4 -0
- package/dist/design-system/{p-C7EnKCpl.js → p-BMM6Nxeh.js} +1 -1
- package/{components/p-Diz11uvt.js → dist/design-system/p-BPGfTrrM.js} +1 -1
- package/dist/design-system/p-BhdSNuGP.js +4 -0
- package/dist/design-system/p-BkTv_bQR.js +4 -0
- package/dist/design-system/p-BqY0KzJC.js +4 -0
- package/dist/design-system/p-BrJFPhMA.js +4 -0
- package/dist/design-system/p-BvEM6oCl.js +4 -0
- package/dist/design-system/p-C1jqbZdf.js +4 -0
- package/dist/design-system/p-C6MVahkC.js +5 -0
- package/dist/design-system/{p-DCf2fJmI.js → p-C7i6xLTJ.js} +1 -1
- package/dist/design-system/p-CvTcEsXg.js +4 -0
- package/dist/design-system/p-CwCAiaMq.js +4 -0
- package/{components/p-5Sp1eJOt.js → dist/design-system/p-DTxLRTYr.js} +1 -1
- package/dist/design-system/{p-Dnjznncd.js → p-DgVaaZT_.js} +1 -1
- package/dist/design-system/{p-CAcwu8uP.js → p-Dm2lqE3-.js} +1 -1
- package/dist/design-system/p-HwbqEzpk.js +4 -0
- package/dist/design-system/p-LCY5n5tq.js +4 -0
- package/dist/design-system/p-Uy_dVz21.js +4 -0
- package/dist/design-system/p-a465c1acce.entry.js +4 -0
- package/dist/design-system/p-a62b7985a0.entry.js +4 -0
- package/dist/design-system/p-a8de98dd7b.entry.js +4 -0
- package/dist/design-system/p-ad2b17b0a0.entry.js +4 -0
- package/dist/design-system/p-afd8bbe699.entry.js +4 -0
- package/dist/design-system/{p-7e6ed497e7.entry.js → p-b68bc14064.entry.js} +1 -1
- package/dist/design-system/p-b955a93959.entry.js +4 -0
- package/dist/design-system/p-c37f266740.entry.js +4 -0
- package/dist/design-system/p-caad93b943.entry.js +4 -0
- package/dist/design-system/p-cca79bfeb1.entry.js +4 -0
- package/dist/design-system/p-d5f8d8f5e1.entry.js +4 -0
- package/dist/design-system/p-dcb749efc7.entry.js +4 -0
- package/dist/design-system/p-dd38f8f206.entry.js +4 -0
- package/dist/design-system/p-ddf2a7dfee.entry.js +4 -0
- package/dist/design-system/p-df5899b930.entry.js +4 -0
- package/dist/design-system/p-e7472337ed.entry.js +4 -0
- package/dist/design-system/p-e85c92ca1a.entry.js +4 -0
- package/dist/design-system/p-f0119fe693.entry.js +4 -0
- package/dist/design-system/p-f4958b9e97.entry.js +4 -0
- package/dist/design-system/p-f62643c33d.entry.js +4 -0
- package/dist/design-system/p-fa9568abce.entry.js +4 -0
- package/dist/design-system/p-fcd98f22b7.entry.js +4 -0
- package/dist/design-system/p-feeef4a8cb.entry.js +4 -0
- package/dist/design-system/{p-BLPSziW-.js → p-hLAmwHiq.js} +1 -1
- package/dist/design-system/p-ij4OEkzJ.js +4 -0
- package/dist/design-system/p-tl_BegdE.js +4 -0
- package/dist/esm/array-dJH4dfMr.js +1983 -0
- package/dist/esm/{breakpoints.decorator-L2xeP46f.js → breakpoints.decorator-DZ0xN4Np.js} +1 -1
- package/dist/esm/{breakpoints.subject-BhbzG-rl.js → breakpoints.subject-BNnXcKMw.js} +3 -3
- package/dist/esm/{button.interfaces-BkESlUMc.js → button.interfaces-BPGfTrrM.js} +1 -1
- package/dist/esm/carousel.interfaces-B-en4B17.js +8 -0
- package/dist/esm/{config.decorator-BQNIja4k.js → config.decorator-ZQ0_Zx5y.js} +1 -1
- package/dist/esm/{config.utils-COlKFRlV.js → config.utils-D9o7rffC.js} +1 -1
- package/dist/esm/create-validator-decorator-DovxquEu.js +208 -0
- package/dist/esm/design-system.js +4 -4
- package/dist/esm/{device-Dhwt3m7W.js → device-CRuIJzXR.js} +1 -1
- package/dist/esm/ds-accordion.entry.js +30 -34
- package/dist/esm/ds-alert-container.entry.js +12 -15
- package/dist/esm/ds-app.entry.js +16 -6
- package/dist/esm/ds-badge.entry.js +32 -25
- package/dist/esm/ds-button-group.entry.js +14 -17
- package/dist/esm/ds-button_2.entry.js +58 -73
- package/dist/esm/ds-card-actions.entry.js +6 -8
- package/dist/esm/ds-card-content.entry.js +2 -2
- package/dist/esm/ds-card-header.entry.js +8 -5
- package/dist/esm/ds-card-subtitle.entry.js +13 -13
- package/dist/esm/ds-card-title.entry.js +11 -7
- package/dist/esm/ds-card.entry.js +30 -42
- package/dist/esm/ds-carousel-item.entry.js +126 -0
- package/dist/esm/ds-carousel.entry.js +471 -0
- package/dist/esm/ds-checkbox-group.entry.js +40 -2011
- package/dist/esm/ds-checkbox.entry.js +23 -19
- package/dist/esm/ds-content_2.entry.js +327 -0
- package/dist/esm/ds-data-item.entry.js +144 -0
- package/dist/esm/ds-data-label.entry.js +39 -0
- package/dist/esm/ds-data-value.entry.js +29 -0
- package/dist/esm/ds-data.entry.js +41 -0
- package/dist/esm/ds-date.entry.js +5332 -0
- package/dist/esm/{ds-logo.entry.js → ds-divider_2.entry.js} +130 -26
- package/dist/esm/ds-drawer_2.entry.js +599 -0
- package/dist/esm/ds-file-upload.entry.js +513 -0
- package/dist/esm/ds-footer.entry.js +157 -0
- package/dist/esm/ds-heading.entry.js +21 -19
- package/dist/esm/ds-hint-text.entry.js +26 -0
- package/dist/esm/ds-hint-title.entry.js +29 -0
- package/dist/esm/ds-hint.entry.js +241 -0
- package/dist/esm/ds-icon_2.entry.js +78 -70
- package/dist/esm/ds-input.entry.js +46 -44
- package/dist/esm/ds-item.entry.js +29 -34
- package/dist/esm/ds-label.entry.js +22 -30
- package/dist/esm/ds-list.entry.js +6 -12
- package/dist/esm/ds-modal-body.entry.js +32 -0
- package/dist/esm/ds-modal-header.entry.js +29 -0
- package/dist/esm/ds-modal.entry.js +199 -0
- package/dist/esm/ds-navbar.entry.js +357 -0
- package/dist/esm/ds-notification.entry.js +19 -27
- package/dist/esm/ds-number-input.entry.js +129 -46
- package/dist/esm/ds-pagination.entry.js +41 -37
- package/dist/esm/ds-progress-bar.entry.js +25 -29
- package/dist/esm/ds-radio-group.entry.js +31 -30
- package/dist/esm/ds-radio.entry.js +25 -32
- package/dist/esm/ds-segment-item.entry.js +9 -9
- package/dist/esm/ds-segment.entry.js +28 -116
- package/dist/esm/ds-select-optgroup.entry.js +47 -0
- package/dist/esm/ds-select-option.entry.js +55 -0
- package/dist/esm/ds-select.entry.js +2770 -0
- package/dist/esm/ds-shape.entry.js +10 -16
- package/dist/esm/ds-snackbar.entry.js +40 -57
- package/dist/esm/ds-step-panel.entry.js +53 -0
- package/dist/esm/ds-step.entry.js +168 -0
- package/dist/esm/ds-steps.entry.js +225 -0
- package/dist/esm/ds-tab-panel.entry.js +53 -0
- package/dist/esm/ds-tab.entry.js +118 -0
- package/dist/esm/ds-tabs.entry.js +362 -0
- package/dist/esm/ds-tag-group.entry.js +3 -3
- package/dist/esm/ds-tag.entry.js +19 -26
- package/dist/esm/ds-text.entry.js +28 -32
- package/dist/esm/ds-textarea.entry.js +33 -32
- package/dist/esm/ds-toast.entry.js +40 -54
- package/dist/esm/ds-toggle.entry.js +22 -21
- package/dist/esm/ds-tooltip.entry.js +180 -0
- package/dist/esm/{field.util-BXxRO7CD.js → field.util-BjZzAi09.js} +1 -1
- package/dist/esm/floating-ui.dom-BqY0KzJC.js +1621 -0
- package/dist/esm/focus-ZxHImoOj.js +1956 -0
- package/dist/esm/footer.i18n-BrJFPhMA.js +159 -0
- package/dist/esm/{form-control-D2O-sb65.js → form-control-DvJo0GKN.js} +2 -2
- package/dist/esm/has-value-DU9L2JaI.js +10 -0
- package/dist/esm/{index-CuwLeg-T.js → index-C6MVahkC.js} +496 -175
- package/dist/esm/index.js +13 -8273
- package/dist/esm/{input.interfaces-C7EnKCpl.js → input.interfaces-BMM6Nxeh.js} +1 -1
- package/dist/esm/keyboard-Uy_dVz21.js +20 -0
- package/dist/esm/{listener-C_kjUVTE.js → listener-DHP2OPMZ.js} +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/luxon-C1jqbZdf.js +8133 -0
- package/dist/esm/one-of-CKPv0Nqm.js +28 -0
- package/dist/esm/popup.interfaces-BAY6Z8bT.js +20 -0
- package/dist/esm/required-Dqsbx5fH.js +36 -0
- package/dist/esm/resize.decorator-B8h8D676.js +96 -0
- package/dist/esm/scroll-CsH7NHo5.js +87 -0
- package/dist/esm/svg-B8KVoKrH.js +2440 -0
- package/dist/esm/{tslib.es6-tdchDLyb.js → tslib.es6-C9GKXw-5.js} +1 -1
- package/dist/esm/type-DzkhLOG_.js +31 -0
- package/dist/types/components/accordion/accordion.d.ts +0 -5
- package/dist/types/components/alert/alert-container.d.ts +0 -5
- package/dist/types/components/alert/snackbar/snackbar.d.ts +0 -5
- package/dist/types/components/alert/toast/toast.d.ts +0 -5
- package/dist/types/components/badge/badge.d.ts +1 -3
- package/dist/types/components/badge/badge.interfaces.d.ts +1 -1
- package/dist/types/components/button/button-group/button-group.d.ts +0 -5
- package/dist/types/components/button/button.d.ts +1 -3
- package/dist/types/components/button/button.interfaces.d.ts +1 -1
- package/dist/types/components/card/card-actions/card-actions.d.ts +0 -1
- package/dist/types/components/card/card-subtitle/card-subtitle.d.ts +0 -1
- package/dist/types/components/card/card.d.ts +1 -3
- package/dist/types/components/carousel/carousel/carousel.d.ts +114 -0
- package/dist/types/components/carousel/carousel/carousel.i18n.d.ts +9 -0
- package/dist/types/components/carousel/carousel-item/carousel-item.d.ts +70 -0
- package/dist/types/components/carousel/carousel.interfaces.d.ts +14 -0
- package/dist/types/components/carousel/test/carousel.a11y.play.d.ts +1 -0
- package/dist/types/components/carousel/test/carousel.component.play.d.ts +1 -0
- package/dist/types/components/carousel/test/carousel.visual.play.d.ts +1 -0
- package/dist/types/components/close/close.d.ts +1 -3
- package/dist/types/components/content/content.d.ts +2 -5
- package/dist/types/components/data/data-item.d.ts +43 -0
- package/dist/types/components/data/data-item.i18n.d.ts +6 -0
- package/dist/types/components/data/data-item.interfaces.d.ts +4 -0
- package/dist/types/components/data/data-label.d.ts +19 -0
- package/dist/types/components/data/data-label.interfaces.d.ts +3 -0
- package/dist/types/components/data/data-value.d.ts +15 -0
- package/dist/types/components/data/data-value.interfaces.d.ts +5 -0
- package/dist/types/components/data/data.d.ts +19 -0
- package/dist/types/components/data/data.interfaces.d.ts +4 -0
- package/dist/types/components/data/test/data.a11y.play.d.ts +1 -0
- package/dist/types/components/data/test/data.component.play.d.ts +1 -0
- package/dist/types/components/data/test/data.visual.play.d.ts +1 -0
- package/dist/types/components/date/date.d.ts +214 -0
- package/dist/types/components/date/date.i18n.d.ts +13 -0
- package/dist/types/components/date/date.interfaces.d.ts +18 -0
- package/dist/types/components/date/date.mask.d.ts +29 -0
- package/dist/types/components/date/date.picker.d.ts +67 -0
- package/dist/types/components/date/test/date.a11y.play.d.ts +1 -0
- package/dist/types/components/date/test/date.component.play.d.ts +1 -0
- package/dist/types/components/date/test/date.visual.play.d.ts +1 -0
- package/dist/types/components/divider/divider.d.ts +1 -3
- package/dist/types/components/drawer/drawer.d.ts +102 -0
- package/dist/types/components/drawer/drawer.interfaces.d.ts +8 -0
- package/dist/types/components/drawer/test/drawer.a11y.play.d.ts +1 -0
- package/dist/types/components/drawer/test/drawer.component.play.d.ts +1 -0
- package/dist/types/components/drawer/test/drawer.visual.play.d.ts +1 -0
- package/dist/types/components/file-upload/file-upload.d.ts +192 -0
- package/dist/types/components/file-upload/file-upload.i18n.d.ts +8 -0
- package/dist/types/components/file-upload/file-upload.interfaces.d.ts +24 -0
- package/dist/types/components/file-upload/test/file-upload.a11y.play.d.ts +1 -0
- package/dist/types/components/file-upload/test/file-upload.component.play.d.ts +1 -0
- package/dist/types/components/file-upload/test/file-upload.visual.play.d.ts +1 -0
- package/dist/types/components/file-upload/utils/file-list.util.d.ts +2 -0
- package/dist/types/components/file-upload/utils/file-size.util.d.ts +1 -0
- package/dist/types/components/file-upload/utils/file-validation.util.d.ts +13 -0
- package/dist/types/components/footer/footer.d.ts +68 -0
- package/dist/types/components/footer/footer.i18n.d.ts +7 -0
- package/dist/types/components/footer/footer.interfaces.d.ts +19 -0
- package/dist/types/components/footer/test/footer.a11y.play.d.ts +1 -0
- package/dist/types/components/footer/test/footer.component.play.d.ts +1 -0
- package/dist/types/components/footer/test/footer.visual.play.d.ts +1 -0
- package/dist/types/components/hint/hint-text/hint-text.d.ts +15 -0
- package/dist/types/components/hint/hint-title/hint-title.d.ts +16 -0
- package/dist/types/components/hint/hint.d.ts +87 -0
- package/dist/types/components/hint/hint.i18n.d.ts +6 -0
- package/dist/types/components/hint/hint.interfaces.d.ts +4 -0
- package/dist/types/components/hint/test/hint.a11y.play.d.ts +1 -0
- package/dist/types/components/hint/test/hint.component.play.d.ts +1 -0
- package/dist/types/components/hint/test/hint.visual.play.d.ts +1 -0
- package/dist/types/components/icon/icon.d.ts +7 -3
- package/dist/types/components/icon/icon.interfaces.d.ts +1 -1
- package/dist/types/components/input/clear-button.i18n.d.ts +6 -0
- package/dist/types/components/input/clear-button.util.d.ts +10 -0
- package/dist/types/components/input/trigger-button.i18n.d.ts +7 -0
- package/dist/types/components/label/label.d.ts +3 -5
- package/dist/types/components/list/item/item.d.ts +0 -5
- package/dist/types/components/list/item/item.interfaces.d.ts +1 -1
- package/dist/types/components/list/list.d.ts +0 -5
- package/dist/types/components/list/test/list.visual.play.d.ts +1 -0
- package/dist/types/components/logo/logo.d.ts +1 -2
- package/dist/types/components/modal/modal-body/modal-body.d.ts +15 -0
- package/dist/types/components/modal/modal-header/modal-header.d.ts +17 -0
- package/dist/types/components/modal/modal.controller.d.ts +3 -0
- package/dist/types/components/modal/modal.d.ts +97 -0
- package/dist/types/components/modal/modal.interfaces.d.ts +15 -0
- package/dist/types/components/modal/test/modal.a11y.play.d.ts +1 -0
- package/dist/types/components/modal/test/modal.component.play.d.ts +1 -0
- package/dist/types/components/modal/test/modal.visual.play.d.ts +1 -0
- package/dist/types/components/navbar/navbar.d.ts +128 -0
- package/dist/types/components/navbar/navbar.i18n.d.ts +9 -0
- package/dist/types/components/navbar/navbar.interfaces.d.ts +10 -0
- package/dist/types/components/navbar/test/navbar.a11y.play.d.ts +1 -0
- package/dist/types/components/navbar/test/navbar.component.play.d.ts +1 -0
- package/dist/types/components/navbar/test/navbar.visual.play.d.ts +1 -0
- package/dist/types/components/notification/notification.d.ts +1 -3
- package/dist/types/components/pagination/pagination.d.ts +0 -5
- package/dist/types/components/popup/popup.d.ts +152 -0
- package/dist/types/components/popup/popup.interfaces.d.ts +14 -0
- package/dist/types/components/popup/test/popup.a11y.play.d.ts +1 -0
- package/dist/types/components/popup/test/popup.component.play.d.ts +1 -0
- package/dist/types/components/popup/test/popup.visual.play.d.ts +1 -0
- package/dist/types/components/progress-bar/progress-bar.d.ts +0 -5
- package/dist/types/components/select/select-optgroup.d.ts +28 -0
- package/dist/types/components/select/select-option.d.ts +34 -0
- package/dist/types/components/select/select.d.ts +193 -0
- package/dist/types/components/select/select.i18n.d.ts +7 -0
- package/dist/types/components/select/select.interfaces.d.ts +16 -0
- package/dist/types/components/select/select.picker.d.ts +57 -0
- package/dist/types/components/select/test/select.a11y.play.d.ts +1 -0
- package/dist/types/components/select/test/select.component.play.d.ts +1 -0
- package/dist/types/components/select/test/select.visual.play.d.ts +1 -0
- package/dist/types/components/shape/shape.d.ts +2 -7
- package/dist/types/components/spinner/spinner.d.ts +0 -2
- package/dist/types/components/stack/stack.d.ts +7 -19
- package/dist/types/components/steps/step/step.d.ts +89 -0
- package/dist/types/components/steps/step-panel/step-panel.d.ts +34 -0
- package/dist/types/components/steps/steps/steps.d.ts +77 -0
- package/dist/types/components/steps/steps.interfaces.d.ts +10 -0
- package/dist/types/components/steps/test/steps.a11y.play.d.ts +1 -0
- package/dist/types/components/steps/test/steps.component.play.d.ts +1 -0
- package/dist/types/components/steps/test/steps.visual.play.d.ts +1 -0
- package/dist/types/components/tabs/tab/tab.d.ts +67 -0
- package/dist/types/components/tabs/tab-panel/tab-panel.d.ts +34 -0
- package/dist/types/components/tabs/tabs/tabs.d.ts +97 -0
- package/dist/types/components/tabs/tabs/tabs.i18n.d.ts +7 -0
- package/dist/types/components/tabs/tabs.interfaces.d.ts +12 -0
- package/dist/types/components/tabs/test/tabs.a11y.play.d.ts +1 -0
- package/dist/types/components/tabs/test/tabs.component.play.d.ts +1 -0
- package/dist/types/components/tabs/test/tabs.visual.play.d.ts +1 -0
- package/dist/types/components/tag/tag.d.ts +1 -3
- package/dist/types/components/text/text.d.ts +2 -7
- package/dist/types/components/time-input/test/time-input.visual.play.d.ts +1 -0
- package/dist/types/components/tooltip/test/tooltip.a11y.play.d.ts +1 -0
- package/dist/types/components/tooltip/test/tooltip.component.play.d.ts +1 -0
- package/dist/types/components/tooltip/test/tooltip.visual.play.d.ts +1 -0
- package/dist/types/components/tooltip/tooltip.d.ts +85 -0
- package/dist/types/components/tooltip/tooltip.interfaces.d.ts +10 -0
- package/dist/types/components.d.ts +4913 -1926
- package/dist/types/foundation/colors.visual.play.d.ts +1 -0
- package/dist/types/global/config/config.const.d.ts +3 -0
- package/dist/types/global/config/config.default.d.ts +0 -40
- package/dist/types/global/config/config.meta.d.ts +2 -0
- package/dist/types/global/config/config.types.d.ts +27 -0
- package/dist/types/global/config/index.d.ts +1 -0
- package/dist/types/global/index.d.ts +0 -1
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/carousel.po.d.ts +12 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/data-item.po.d.ts +16 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/data.po.d.ts +12 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/date.po.d.ts +15 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/drawer.po.d.ts +11 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/file-upload.po.d.ts +16 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/footer.po.d.ts +16 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/hint.po.d.ts +10 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/index.d.ts +15 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/modal.po.d.ts +15 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/navbar.po.d.ts +13 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/popup.po.d.ts +11 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/select.po.d.ts +24 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/steps.po.d.ts +13 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/tabs.po.d.ts +13 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/tooltip.po.d.ts +6 -0
- package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/page/utils/goto.d.ts +1 -1
- package/dist/types/index.d.ts +4 -1
- package/dist/types/stencil-public-runtime.d.ts +1 -0
- package/dist/types/utils/attributes.d.ts +0 -8
- package/dist/types/utils/focus.d.ts +18 -0
- package/dist/types/utils/form-control.d.ts +2 -2
- package/dist/types/utils/has-value.d.ts +1 -0
- package/dist/types/utils/index.d.ts +7 -5
- package/dist/types/utils/number.d.ts +0 -3
- package/dist/types/utils/property-decorators/array-of.d.ts +9 -0
- package/dist/types/utils/property-decorators/bound.d.ts +36 -0
- package/dist/types/utils/property-decorators/create-validator-decorator.d.ts +48 -0
- package/dist/types/utils/property-decorators/date.d.ts +6 -0
- package/dist/types/utils/property-decorators/index.d.ts +9 -0
- package/dist/types/utils/property-decorators/iso-date.d.ts +6 -0
- package/dist/types/utils/property-decorators/one-of.d.ts +8 -0
- package/dist/types/utils/property-decorators/pattern.d.ts +8 -0
- package/dist/types/utils/property-decorators/required.d.ts +17 -0
- package/dist/types/utils/property-decorators/type.d.ts +9 -0
- package/dist/types/utils/property-decorators/url.d.ts +6 -0
- package/dist/types/utils/svg.d.ts +2 -0
- package/docs/cem.json +17659 -0
- package/docs/components.json +38767 -17409
- package/docs/html.html-data.json +1529 -147
- package/docs/tags.json +29 -1
- package/package.json +45 -38
- package/sbom.cdx.json +54391 -0
- package/README.md +0 -33
- package/components/p-82RSSk25.js +0 -4
- package/components/p-BEngECpF.js +0 -4
- package/components/p-BMBthpLd.js +0 -4
- package/components/p-BNY3JzuV.js +0 -4
- package/components/p-BOTkpyFe.js +0 -5
- package/components/p-BOgMmRCt.js +0 -4
- package/components/p-CDYlUuhB.js +0 -4
- package/components/p-Cb75Rr6o.js +0 -4
- package/components/p-CojUmpFm.js +0 -4
- package/components/p-DHeVI6dR.js +0 -4
- package/components/p-DTPbL3uY.js +0 -4
- package/components/p-DnnGnukM.js +0 -4
- package/components/p-DtuTnY5l.js +0 -4
- package/components/p-JZ1uDtZv.js +0 -4
- package/components/p-cSbDziZm.js +0 -4
- package/components/p-gA-94RPS.js +0 -4
- package/components/p-xDEngwqW.js +0 -4
- package/dist/cjs/contact-SPfz2A_q.js +0 -1647
- package/dist/cjs/ds-content.cjs.entry.js +0 -154
- package/dist/cjs/ds-divider.cjs.entry.js +0 -131
- package/dist/cjs/ds-stack.cjs.entry.js +0 -224
- package/dist/cjs/isEmpty-BmKp4bH4.js +0 -99
- package/dist/cjs/stack.interfaces-6vlKvBmb.js +0 -68
- package/dist/cjs/svg-D7Mwbcvp.js +0 -1482
- package/dist/cjs/validate.decorator-C9-9HA0Y.js +0 -115
- package/dist/collection/global/constants/icons.constant.js +0 -42
- package/dist/collection/utils/element-states/element-states.decorator.js +0 -23
- package/dist/collection/utils/element-states/element-states.listener.js +0 -55
- package/dist/collection/utils/element-states/element-states.subject.js +0 -24
- package/dist/collection/utils/element-states/index.js +0 -5
- package/dist/collection/utils/keyboard/index.js +0 -6
- package/dist/collection/utils/keyboard/keyboard.decorator.js +0 -23
- package/dist/collection/utils/keyboard/keyboard.listener.js +0 -34
- package/dist/collection/utils/keyboard/keyboard.subject.js +0 -24
- package/dist/collection/utils/property-checkers/check-array-of.js +0 -13
- package/dist/collection/utils/property-checkers/check-date.js +0 -18
- package/dist/collection/utils/property-checkers/check-iso-date.js +0 -14
- package/dist/collection/utils/property-checkers/check-one-of.js +0 -13
- package/dist/collection/utils/property-checkers/check-pattern.js +0 -13
- package/dist/collection/utils/property-checkers/check-type.js +0 -20
- package/dist/collection/utils/property-checkers/check-url.js +0 -20
- package/dist/collection/utils/property-checkers/empty-or.js +0 -15
- package/dist/collection/utils/property-checkers/index.js +0 -57
- package/dist/collection/utils/property-checkers/required-and.js +0 -20
- package/dist/collection/utils/swipe/index.js +0 -6
- package/dist/collection/utils/swipe/swipe.decorator.js +0 -23
- package/dist/collection/utils/swipe/swipe.listener.js +0 -33
- package/dist/collection/utils/swipe/swipe.subject.js +0 -28
- package/dist/collection/utils/validate.decorator.js +0 -203
- package/dist/design-system/p-03bbcdf9de.entry.js +0 -4
- package/dist/design-system/p-1154323457.entry.js +0 -4
- package/dist/design-system/p-1f0601a4f4.entry.js +0 -4
- package/dist/design-system/p-21b080a49a.entry.js +0 -4
- package/dist/design-system/p-27c34c4e5f.entry.js +0 -4
- package/dist/design-system/p-2b91de302f.entry.js +0 -4
- package/dist/design-system/p-31c1235ac5.entry.js +0 -4
- package/dist/design-system/p-3259acaa64.entry.js +0 -4
- package/dist/design-system/p-339d85cca0.entry.js +0 -4
- package/dist/design-system/p-35e63b52e7.entry.js +0 -4
- package/dist/design-system/p-363f3a7ab4.entry.js +0 -4
- package/dist/design-system/p-3d901720f7.entry.js +0 -4
- package/dist/design-system/p-40ba8b9812.entry.js +0 -4
- package/dist/design-system/p-432430e14f.entry.js +0 -4
- package/dist/design-system/p-487807f228.entry.js +0 -4
- package/dist/design-system/p-4a049d1b7f.entry.js +0 -4
- package/dist/design-system/p-4f4cce8ce4.entry.js +0 -4
- package/dist/design-system/p-5a901a9b8e.entry.js +0 -4
- package/dist/design-system/p-5d3330bf93.entry.js +0 -4
- package/dist/design-system/p-640223834c.entry.js +0 -4
- package/dist/design-system/p-6b9aab417f.entry.js +0 -4
- package/dist/design-system/p-799705af3a.entry.js +0 -4
- package/dist/design-system/p-82RSSk25.js +0 -4
- package/dist/design-system/p-8e0872fef0.entry.js +0 -4
- package/dist/design-system/p-9617d56181.entry.js +0 -4
- package/dist/design-system/p-BaIoYrFa.js +0 -5
- package/dist/design-system/p-Cb75Rr6o.js +0 -4
- package/dist/design-system/p-CqZ6YSy9.js +0 -4
- package/dist/design-system/p-CqzM3doy.js +0 -4
- package/dist/design-system/p-CuwLeg-T.js +0 -5
- package/dist/design-system/p-DTPbL3uY.js +0 -4
- package/dist/design-system/p-aff68865ee.entry.js +0 -4
- package/dist/design-system/p-b3c6327744.entry.js +0 -4
- package/dist/design-system/p-be9023a38b.entry.js +0 -4
- package/dist/design-system/p-c031d1dce5.entry.js +0 -4
- package/dist/design-system/p-c3ae96e220.entry.js +0 -4
- package/dist/design-system/p-d430812a57.entry.js +0 -4
- package/dist/design-system/p-de1354f022.entry.js +0 -4
- package/dist/design-system/p-e3d0c82e2a.entry.js +0 -4
- package/dist/design-system/p-ea1a5e1f75.entry.js +0 -4
- package/dist/design-system/p-ea7169501c.entry.js +0 -4
- package/dist/design-system/p-eab397e041.entry.js +0 -4
- package/dist/design-system/p-ecba4deb9a.entry.js +0 -4
- package/dist/design-system/p-fe0dbd4b03.entry.js +0 -4
- package/dist/design-system/p-ng5ZzTOj.js +0 -4
- package/dist/esm/contact-Cb75Rr6o.js +0 -1636
- package/dist/esm/ds-content.entry.js +0 -152
- package/dist/esm/ds-divider.entry.js +0 -129
- package/dist/esm/ds-stack.entry.js +0 -222
- package/dist/esm/isEmpty-DmZYZqE9.js +0 -97
- package/dist/esm/stack.interfaces-ng5ZzTOj.js +0 -62
- package/dist/esm/svg-BaIoYrFa.js +0 -1480
- package/dist/esm/validate.decorator-82RSSk25.js +0 -110
- package/dist/types/global/constants/icons.constant.d.ts +0 -38
- package/dist/types/utils/element-states/element-states.decorator.d.ts +0 -3
- package/dist/types/utils/element-states/element-states.interfaces.d.ts +0 -10
- package/dist/types/utils/element-states/element-states.listener.d.ts +0 -15
- package/dist/types/utils/element-states/element-states.subject.d.ts +0 -8
- package/dist/types/utils/element-states/index.d.ts +0 -2
- package/dist/types/utils/keyboard/index.d.ts +0 -3
- package/dist/types/utils/keyboard/keyboard.decorator.d.ts +0 -3
- package/dist/types/utils/keyboard/keyboard.interfaces.d.ts +0 -8
- package/dist/types/utils/keyboard/keyboard.listener.d.ts +0 -9
- package/dist/types/utils/keyboard/keyboard.subject.d.ts +0 -8
- package/dist/types/utils/property-checkers/check-array-of.d.ts +0 -2
- package/dist/types/utils/property-checkers/check-date.d.ts +0 -1
- package/dist/types/utils/property-checkers/check-iso-date.d.ts +0 -1
- package/dist/types/utils/property-checkers/check-one-of.d.ts +0 -1
- package/dist/types/utils/property-checkers/check-pattern.d.ts +0 -1
- package/dist/types/utils/property-checkers/check-type.d.ts +0 -2
- package/dist/types/utils/property-checkers/check-url.d.ts +0 -1
- package/dist/types/utils/property-checkers/constants.d.ts +0 -1
- package/dist/types/utils/property-checkers/empty-or.d.ts +0 -1
- package/dist/types/utils/property-checkers/index.d.ts +0 -19
- package/dist/types/utils/property-checkers/required-and.d.ts +0 -1
- package/dist/types/utils/swipe/index.d.ts +0 -3
- package/dist/types/utils/swipe/swipe.decorator.d.ts +0 -5
- package/dist/types/utils/swipe/swipe.interfaces.d.ts +0 -10
- package/dist/types/utils/swipe/swipe.listener.d.ts +0 -10
- package/dist/types/utils/swipe/swipe.subject.d.ts +0 -11
- package/dist/types/utils/validate.decorator.d.ts +0 -114
- /package/dist/collection/{utils/element-states/element-states.interfaces.js → components/data/data-item.interfaces.js} +0 -0
- /package/dist/collection/{utils/keyboard/keyboard.interfaces.js → components/data/data-label.interfaces.js} +0 -0
- /package/dist/collection/{utils/property-checkers/property-types.js → components/data/data-value.interfaces.js} +0 -0
- /package/dist/collection/{utils/swipe/swipe.interfaces.js → components/data/data.interfaces.js} +0 -0
- /package/dist/collection/utils/{property-checkers/is-iso-date.js → is-iso-date.js} +0 -0
- /package/dist/collection/utils/{keyboard/keyboard.helpers.js → keyboard.js} +0 -0
- /package/dist/types/utils/{property-checkers/is-iso-date.d.ts → is-iso-date.d.ts} +0 -0
- /package/dist/types/utils/{property-checkers/is-value-empty.d.ts → is-value-empty.d.ts} +0 -0
- /package/dist/types/utils/{keyboard/keyboard.helpers.d.ts → keyboard.d.ts} +0 -0
- /package/dist/types/utils/{property-checkers/property-types.d.ts → property-types.d.ts} +0 -0
|
@@ -0,0 +1,356 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* (C) Helvetia Design System https://design.baloise.dev/ - Apache License 2.0
|
|
3
|
+
*/
|
|
4
|
+
import { __decorate, __metadata } from "tslib";
|
|
5
|
+
import { h, Host } from "@stencil/core";
|
|
6
|
+
import { Logger, stopEventBubbling, OneOf, Type } from "../../../utils/index";
|
|
7
|
+
import { STEPS_COLORS } from "../steps.interfaces";
|
|
8
|
+
/**
|
|
9
|
+
* Steps coordinates ds-step and ds-step-panel children into an accessible stepped interface, supporting panels and navigation variants.
|
|
10
|
+
*
|
|
11
|
+
* @slot - ds-step-panel children (panels variant).
|
|
12
|
+
* @slot step - ds-step children; managed automatically by ds-steps.
|
|
13
|
+
* @part steplist - The steplist container.
|
|
14
|
+
*/
|
|
15
|
+
export class Steps {
|
|
16
|
+
constructor() {
|
|
17
|
+
/**
|
|
18
|
+
* PUBLIC PROPERTY API
|
|
19
|
+
* ------------------------------------------------------
|
|
20
|
+
*/
|
|
21
|
+
/**
|
|
22
|
+
* Accent color applied to inactive circles and connector lines.
|
|
23
|
+
*/
|
|
24
|
+
this.color = '';
|
|
25
|
+
/**
|
|
26
|
+
* Accessible label for the navigation landmark (navigation variant only).
|
|
27
|
+
*/
|
|
28
|
+
this.label = '';
|
|
29
|
+
/**
|
|
30
|
+
* If `true`, the steplist is displayed vertically.
|
|
31
|
+
*/
|
|
32
|
+
this.vertical = false;
|
|
33
|
+
/**
|
|
34
|
+
* EVENT HANDLERS
|
|
35
|
+
* ------------------------------------------------------
|
|
36
|
+
*/
|
|
37
|
+
this.handleKeyDown = (ev) => {
|
|
38
|
+
var _a, _b, _c, _d;
|
|
39
|
+
if (this.isNavigation())
|
|
40
|
+
return;
|
|
41
|
+
const focusable = this.getSteps().filter(s => !s.disabled && !s.hidden);
|
|
42
|
+
const currentIndex = focusable.findIndex(s => s.name === this.value);
|
|
43
|
+
const isForward = this.vertical ? ev.key === 'ArrowDown' : ev.key === 'ArrowRight';
|
|
44
|
+
const isBackward = this.vertical ? ev.key === 'ArrowUp' : ev.key === 'ArrowLeft';
|
|
45
|
+
if (ev.key === 'Home') {
|
|
46
|
+
ev.preventDefault();
|
|
47
|
+
this.activateStep((_a = focusable[0]) === null || _a === void 0 ? void 0 : _a.name);
|
|
48
|
+
}
|
|
49
|
+
else if (ev.key === 'End') {
|
|
50
|
+
ev.preventDefault();
|
|
51
|
+
this.activateStep((_b = focusable[focusable.length - 1]) === null || _b === void 0 ? void 0 : _b.name);
|
|
52
|
+
}
|
|
53
|
+
else if (isForward) {
|
|
54
|
+
ev.preventDefault();
|
|
55
|
+
this.activateStep((_c = focusable[(currentIndex + 1) % focusable.length]) === null || _c === void 0 ? void 0 : _c.name);
|
|
56
|
+
}
|
|
57
|
+
else if (isBackward) {
|
|
58
|
+
ev.preventDefault();
|
|
59
|
+
this.activateStep((_d = focusable[(currentIndex - 1 + focusable.length) % focusable.length]) === null || _d === void 0 ? void 0 : _d.name);
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
this.handleSlotChange = () => {
|
|
63
|
+
this.setup();
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
createLogger(log) {
|
|
67
|
+
this.log = log;
|
|
68
|
+
}
|
|
69
|
+
componentDidLoad() {
|
|
70
|
+
this.setup();
|
|
71
|
+
}
|
|
72
|
+
componentDidUpdate() {
|
|
73
|
+
this.updateChildren();
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* PROPERTY VALIDATION
|
|
77
|
+
* ------------------------------------------------------
|
|
78
|
+
*/
|
|
79
|
+
/**
|
|
80
|
+
* PUBLIC LISTENERS
|
|
81
|
+
* ------------------------------------------------------
|
|
82
|
+
*/
|
|
83
|
+
listenToDsStepSelect(ev) {
|
|
84
|
+
stopEventBubbling(ev);
|
|
85
|
+
this.activateStep(ev.detail.name);
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* PRIVATE METHODS
|
|
89
|
+
* ------------------------------------------------------
|
|
90
|
+
*/
|
|
91
|
+
getSteps() {
|
|
92
|
+
return Array.from(this.el.querySelectorAll(':scope > ds-step'));
|
|
93
|
+
}
|
|
94
|
+
getPanels() {
|
|
95
|
+
return Array.from(this.el.querySelectorAll(':scope > ds-step-panel'));
|
|
96
|
+
}
|
|
97
|
+
isNavigation() {
|
|
98
|
+
return this.getPanels().length === 0;
|
|
99
|
+
}
|
|
100
|
+
setup() {
|
|
101
|
+
const steps = this.getSteps();
|
|
102
|
+
const panels = this.getPanels();
|
|
103
|
+
const isNav = this.isNavigation();
|
|
104
|
+
let visibleIndex = 0;
|
|
105
|
+
steps.forEach(step => {
|
|
106
|
+
step.slot = 'step';
|
|
107
|
+
step.navigation = isNav;
|
|
108
|
+
step.vertical = this.vertical;
|
|
109
|
+
if (!step.hidden) {
|
|
110
|
+
visibleIndex++;
|
|
111
|
+
step.index = visibleIndex;
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
step.index = 0;
|
|
115
|
+
}
|
|
116
|
+
if (!isNav && step.name) {
|
|
117
|
+
if (!step.id)
|
|
118
|
+
step.id = `ds-step-${stepIds++}`;
|
|
119
|
+
const panel = panels.find(p => p.for === step.name);
|
|
120
|
+
if (panel) {
|
|
121
|
+
if (!panel.id)
|
|
122
|
+
panel.id = `ds-step-panel-${stepIds++}`;
|
|
123
|
+
step.setAttribute('aria-controls', panel.id);
|
|
124
|
+
panel.setAttribute('aria-labelledby', step.id);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
if (!isNav && !this.value) {
|
|
129
|
+
const first = steps.find((s) => !s.hidden && !s.disabled);
|
|
130
|
+
if (first)
|
|
131
|
+
this.value = first.name;
|
|
132
|
+
}
|
|
133
|
+
this.updateChildren();
|
|
134
|
+
}
|
|
135
|
+
updateChildren() {
|
|
136
|
+
const isNav = this.isNavigation();
|
|
137
|
+
const steps = this.getSteps();
|
|
138
|
+
const panels = this.getPanels();
|
|
139
|
+
let effectiveValue = this.value;
|
|
140
|
+
// If the selected value is disabled, don't select any step
|
|
141
|
+
if (!isNav && effectiveValue) {
|
|
142
|
+
const selectedStep = steps.find((s) => s.name === effectiveValue);
|
|
143
|
+
if (selectedStep && (selectedStep.disabled || selectedStep.hasAttribute('disabled'))) {
|
|
144
|
+
effectiveValue = undefined;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
const activeStep = steps.find(s => s.name === effectiveValue);
|
|
148
|
+
const activeIndex = activeStep ? activeStep.index : 0;
|
|
149
|
+
steps.forEach(step => {
|
|
150
|
+
step.navigation = isNav;
|
|
151
|
+
step.vertical = this.vertical;
|
|
152
|
+
step.selected = isNav ? !!step.querySelector('[aria-current]') : step.name === effectiveValue;
|
|
153
|
+
step.activeIndex = activeIndex;
|
|
154
|
+
});
|
|
155
|
+
panels.forEach(panel => {
|
|
156
|
+
panel.selected = panel.for === effectiveValue;
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
activateStep(name) {
|
|
160
|
+
if (name === this.value)
|
|
161
|
+
return;
|
|
162
|
+
const step = this.getSteps().find(s => s.name === name);
|
|
163
|
+
if (step === null || step === void 0 ? void 0 : step.disabled)
|
|
164
|
+
return;
|
|
165
|
+
this.value = name;
|
|
166
|
+
this.dsChange.emit({ value: name });
|
|
167
|
+
this.focusSelectedStep();
|
|
168
|
+
}
|
|
169
|
+
focusSelectedStep() {
|
|
170
|
+
const selected = this.getSteps().find(s => s.name === this.value);
|
|
171
|
+
selected === null || selected === void 0 ? void 0 : selected.focus();
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* RENDER
|
|
175
|
+
* ------------------------------------------------------
|
|
176
|
+
*/
|
|
177
|
+
render() {
|
|
178
|
+
const isNav = this.isNavigation();
|
|
179
|
+
const hostClass = {
|
|
180
|
+
'is-vertical': this.vertical,
|
|
181
|
+
'is-navigation': isNav,
|
|
182
|
+
'is-purple': this.color === 'purple',
|
|
183
|
+
'is-green': this.color === 'green',
|
|
184
|
+
'is-red': this.color === 'red',
|
|
185
|
+
'is-yellow': this.color === 'yellow',
|
|
186
|
+
};
|
|
187
|
+
const slotRef = (el) => {
|
|
188
|
+
if (el)
|
|
189
|
+
this.steplistEl = el;
|
|
190
|
+
};
|
|
191
|
+
if (isNav) {
|
|
192
|
+
return (h(Host, { class: hostClass }, h("nav", { "aria-label": this.label || undefined }, h("ol", { id: "steplist", part: "steplist", ref: slotRef }, h("slot", { name: "step", onSlotchange: this.handleSlotChange }))), h("slot", { onSlotchange: this.handleSlotChange })));
|
|
193
|
+
}
|
|
194
|
+
return (h(Host, { class: hostClass }, h("div", { id: "steplist", part: "steplist", role: "tablist", "aria-orientation": this.vertical ? 'vertical' : undefined, onKeyDown: this.handleKeyDown, ref: slotRef }, h("slot", { name: "step", onSlotchange: this.handleSlotChange })), h("slot", { onSlotchange: this.handleSlotChange })));
|
|
195
|
+
}
|
|
196
|
+
static get is() { return "ds-steps"; }
|
|
197
|
+
static get encapsulation() { return "shadow"; }
|
|
198
|
+
static get originalStyleUrls() {
|
|
199
|
+
return {
|
|
200
|
+
"$": ["steps.host.scss"]
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
static get styleUrls() {
|
|
204
|
+
return {
|
|
205
|
+
"$": ["steps.host.css"]
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
static get properties() {
|
|
209
|
+
return {
|
|
210
|
+
"color": {
|
|
211
|
+
"type": "string",
|
|
212
|
+
"mutable": false,
|
|
213
|
+
"complexType": {
|
|
214
|
+
"original": "StepsColor",
|
|
215
|
+
"resolved": "\"\" | \"green\" | \"purple\" | \"red\" | \"yellow\"",
|
|
216
|
+
"references": {
|
|
217
|
+
"StepsColor": {
|
|
218
|
+
"location": "import",
|
|
219
|
+
"path": "../steps.interfaces",
|
|
220
|
+
"id": "src/components/steps/steps.interfaces.ts::StepsColor",
|
|
221
|
+
"referenceLocation": "StepsColor"
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
},
|
|
225
|
+
"required": false,
|
|
226
|
+
"optional": false,
|
|
227
|
+
"docs": {
|
|
228
|
+
"tags": [],
|
|
229
|
+
"text": "Accent color applied to inactive circles and connector lines."
|
|
230
|
+
},
|
|
231
|
+
"getter": false,
|
|
232
|
+
"setter": false,
|
|
233
|
+
"reflect": false,
|
|
234
|
+
"attribute": "color",
|
|
235
|
+
"defaultValue": "''"
|
|
236
|
+
},
|
|
237
|
+
"label": {
|
|
238
|
+
"type": "string",
|
|
239
|
+
"mutable": false,
|
|
240
|
+
"complexType": {
|
|
241
|
+
"original": "string",
|
|
242
|
+
"resolved": "string",
|
|
243
|
+
"references": {}
|
|
244
|
+
},
|
|
245
|
+
"required": false,
|
|
246
|
+
"optional": false,
|
|
247
|
+
"docs": {
|
|
248
|
+
"tags": [],
|
|
249
|
+
"text": "Accessible label for the navigation landmark (navigation variant only)."
|
|
250
|
+
},
|
|
251
|
+
"getter": false,
|
|
252
|
+
"setter": false,
|
|
253
|
+
"reflect": false,
|
|
254
|
+
"attribute": "label",
|
|
255
|
+
"defaultValue": "''"
|
|
256
|
+
},
|
|
257
|
+
"value": {
|
|
258
|
+
"type": "string",
|
|
259
|
+
"mutable": true,
|
|
260
|
+
"complexType": {
|
|
261
|
+
"original": "string | null",
|
|
262
|
+
"resolved": "null | string | undefined",
|
|
263
|
+
"references": {}
|
|
264
|
+
},
|
|
265
|
+
"required": false,
|
|
266
|
+
"optional": true,
|
|
267
|
+
"docs": {
|
|
268
|
+
"tags": [],
|
|
269
|
+
"text": "The `name` of the currently selected ds-step (panels variant)."
|
|
270
|
+
},
|
|
271
|
+
"getter": false,
|
|
272
|
+
"setter": false,
|
|
273
|
+
"reflect": true,
|
|
274
|
+
"attribute": "value"
|
|
275
|
+
},
|
|
276
|
+
"vertical": {
|
|
277
|
+
"type": "boolean",
|
|
278
|
+
"mutable": false,
|
|
279
|
+
"complexType": {
|
|
280
|
+
"original": "boolean",
|
|
281
|
+
"resolved": "boolean",
|
|
282
|
+
"references": {}
|
|
283
|
+
},
|
|
284
|
+
"required": false,
|
|
285
|
+
"optional": false,
|
|
286
|
+
"docs": {
|
|
287
|
+
"tags": [],
|
|
288
|
+
"text": "If `true`, the steplist is displayed vertically."
|
|
289
|
+
},
|
|
290
|
+
"getter": false,
|
|
291
|
+
"setter": false,
|
|
292
|
+
"reflect": false,
|
|
293
|
+
"attribute": "vertical",
|
|
294
|
+
"defaultValue": "false"
|
|
295
|
+
}
|
|
296
|
+
};
|
|
297
|
+
}
|
|
298
|
+
static get events() {
|
|
299
|
+
return [{
|
|
300
|
+
"method": "dsChange",
|
|
301
|
+
"name": "dsChange",
|
|
302
|
+
"bubbles": true,
|
|
303
|
+
"cancelable": true,
|
|
304
|
+
"composed": true,
|
|
305
|
+
"docs": {
|
|
306
|
+
"tags": [],
|
|
307
|
+
"text": "Emitted when the selected step changes (panels variant only)."
|
|
308
|
+
},
|
|
309
|
+
"complexType": {
|
|
310
|
+
"original": "StepsChangeDetail",
|
|
311
|
+
"resolved": "{ value: string; }",
|
|
312
|
+
"references": {
|
|
313
|
+
"StepsChangeDetail": {
|
|
314
|
+
"location": "import",
|
|
315
|
+
"path": "../steps.interfaces",
|
|
316
|
+
"id": "src/components/steps/steps.interfaces.ts::StepsChangeDetail",
|
|
317
|
+
"referenceLocation": "StepsChangeDetail"
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
}];
|
|
322
|
+
}
|
|
323
|
+
static get elementRef() { return "el"; }
|
|
324
|
+
static get listeners() {
|
|
325
|
+
return [{
|
|
326
|
+
"name": "dsStepSelect",
|
|
327
|
+
"method": "listenToDsStepSelect",
|
|
328
|
+
"target": undefined,
|
|
329
|
+
"capture": false,
|
|
330
|
+
"passive": false
|
|
331
|
+
}];
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
__decorate([
|
|
335
|
+
Logger('steps'),
|
|
336
|
+
__metadata("design:type", Function),
|
|
337
|
+
__metadata("design:paramtypes", [Function]),
|
|
338
|
+
__metadata("design:returntype", void 0)
|
|
339
|
+
], Steps.prototype, "createLogger", null);
|
|
340
|
+
__decorate([
|
|
341
|
+
OneOf(STEPS_COLORS),
|
|
342
|
+
__metadata("design:type", String)
|
|
343
|
+
], Steps.prototype, "color", void 0);
|
|
344
|
+
__decorate([
|
|
345
|
+
Type('string'),
|
|
346
|
+
__metadata("design:type", String)
|
|
347
|
+
], Steps.prototype, "label", void 0);
|
|
348
|
+
__decorate([
|
|
349
|
+
Type('string'),
|
|
350
|
+
__metadata("design:type", Object)
|
|
351
|
+
], Steps.prototype, "value", void 0);
|
|
352
|
+
__decorate([
|
|
353
|
+
Type('boolean'),
|
|
354
|
+
__metadata("design:type", Boolean)
|
|
355
|
+
], Steps.prototype, "vertical", void 0);
|
|
356
|
+
let stepIds = 0;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* (C) Helvetia Design System https://design.baloise.dev/ - Apache License 2.0
|
|
3
|
+
*/
|
|
4
|
+
import { test } from "../../../../../../playwright/src/index";
|
|
5
|
+
const PANELS = `
|
|
6
|
+
<ds-step name="a" label="Cart"></ds-step>
|
|
7
|
+
<ds-step name="b" label="Shipping"></ds-step>
|
|
8
|
+
<ds-step name="c" label="Payment"></ds-step>
|
|
9
|
+
<ds-step-panel for="a">Content A</ds-step-panel>
|
|
10
|
+
<ds-step-panel for="b">Content B</ds-step-panel>
|
|
11
|
+
<ds-step-panel for="c">Content C</ds-step-panel>
|
|
12
|
+
`;
|
|
13
|
+
test.describe('a11y — panels variant', () => {
|
|
14
|
+
test('basic', async ({ page, a11y }) => {
|
|
15
|
+
await page.mount(`<ds-steps>${PANELS}</ds-steps>`);
|
|
16
|
+
await a11y('ds-steps');
|
|
17
|
+
});
|
|
18
|
+
test('preset value', async ({ page, a11y }) => {
|
|
19
|
+
await page.mount(`<ds-steps value="b">${PANELS}</ds-steps>`);
|
|
20
|
+
await a11y('ds-steps');
|
|
21
|
+
});
|
|
22
|
+
test('vertical', async ({ page, a11y }) => {
|
|
23
|
+
await page.mount(`<ds-steps vertical>${PANELS}</ds-steps>`);
|
|
24
|
+
await a11y('ds-steps');
|
|
25
|
+
});
|
|
26
|
+
test('with done and invalid steps', async ({ page, a11y }) => {
|
|
27
|
+
await page.mount(`
|
|
28
|
+
<ds-steps value="c">
|
|
29
|
+
<ds-step name="a" label="Cart" done></ds-step>
|
|
30
|
+
<ds-step name="b" label="Shipping" invalid></ds-step>
|
|
31
|
+
<ds-step name="c" label="Payment"></ds-step>
|
|
32
|
+
<ds-step-panel for="a">Content A</ds-step-panel>
|
|
33
|
+
<ds-step-panel for="b">Content B</ds-step-panel>
|
|
34
|
+
<ds-step-panel for="c">Content C</ds-step-panel>
|
|
35
|
+
</ds-steps>
|
|
36
|
+
`);
|
|
37
|
+
await a11y('ds-steps');
|
|
38
|
+
});
|
|
39
|
+
test('with disabled step', async ({ page, a11y }) => {
|
|
40
|
+
await page.mount(`
|
|
41
|
+
<ds-steps>
|
|
42
|
+
<ds-step name="a" label="Cart"></ds-step>
|
|
43
|
+
<ds-step name="b" label="Shipping" disabled></ds-step>
|
|
44
|
+
<ds-step name="c" label="Payment"></ds-step>
|
|
45
|
+
<ds-step-panel for="a">Content A</ds-step-panel>
|
|
46
|
+
<ds-step-panel for="b">Content B</ds-step-panel>
|
|
47
|
+
<ds-step-panel for="c">Content C</ds-step-panel>
|
|
48
|
+
</ds-steps>
|
|
49
|
+
`);
|
|
50
|
+
await a11y('ds-steps');
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
test.describe('a11y — navigation variant', () => {
|
|
54
|
+
test('basic', async ({ page, a11y }) => {
|
|
55
|
+
await page.mount(`
|
|
56
|
+
<ds-steps label="Checkout steps">
|
|
57
|
+
<ds-step name="first" label="Cart"><a href="/first" aria-current="step">Cart</a></ds-step>
|
|
58
|
+
<ds-step name="second" label="Shipping"><a href="/second">Shipping</a></ds-step>
|
|
59
|
+
<ds-step name="third" label="Payment"><a href="/third">Payment</a></ds-step>
|
|
60
|
+
</ds-steps>
|
|
61
|
+
`);
|
|
62
|
+
await a11y('ds-steps');
|
|
63
|
+
});
|
|
64
|
+
test('vertical', async ({ page, a11y }) => {
|
|
65
|
+
await page.mount(`
|
|
66
|
+
<ds-steps label="Checkout steps" vertical>
|
|
67
|
+
<ds-step name="first" label="Cart"><a href="/first" aria-current="step">Cart</a></ds-step>
|
|
68
|
+
<ds-step name="second" label="Shipping"><a href="/second">Shipping</a></ds-step>
|
|
69
|
+
</ds-steps>
|
|
70
|
+
`);
|
|
71
|
+
await a11y('ds-steps');
|
|
72
|
+
});
|
|
73
|
+
});
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* (C) Helvetia Design System https://design.baloise.dev/ - Apache License 2.0
|
|
3
|
+
*/
|
|
4
|
+
import { DsSteps, expect, test } from "../../../../../../playwright/src/index";
|
|
5
|
+
const PANELS = `
|
|
6
|
+
<ds-step name="a" label="Cart"></ds-step>
|
|
7
|
+
<ds-step name="b" label="Shipping"></ds-step>
|
|
8
|
+
<ds-step name="c" label="Payment"></ds-step>
|
|
9
|
+
<ds-step-panel for="a">Content A</ds-step-panel>
|
|
10
|
+
<ds-step-panel for="b">Content B</ds-step-panel>
|
|
11
|
+
<ds-step-panel for="c">Content C</ds-step-panel>
|
|
12
|
+
`;
|
|
13
|
+
test.describe('panels variant — initial state', () => {
|
|
14
|
+
test('selects the first step by default', async ({ page }) => {
|
|
15
|
+
await page.mount(`<ds-steps>${PANELS}</ds-steps>`);
|
|
16
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
17
|
+
await steps.assertStepSelected('a');
|
|
18
|
+
await steps.assertPanelVisible('a');
|
|
19
|
+
await steps.assertPanelHidden('b');
|
|
20
|
+
await steps.assertPanelHidden('c');
|
|
21
|
+
});
|
|
22
|
+
test('respects a preset value prop', async ({ page }) => {
|
|
23
|
+
await page.mount(`<ds-steps value="b">${PANELS}</ds-steps>`);
|
|
24
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
25
|
+
await steps.assertStepSelected('b');
|
|
26
|
+
await steps.assertPanelHidden('a');
|
|
27
|
+
await steps.assertPanelVisible('b');
|
|
28
|
+
});
|
|
29
|
+
test('skips disabled step when auto-selecting', async ({ page }) => {
|
|
30
|
+
await page.mount(`
|
|
31
|
+
<ds-steps>
|
|
32
|
+
<ds-step name="a" label="Cart" disabled></ds-step>
|
|
33
|
+
<ds-step name="b" label="Shipping"></ds-step>
|
|
34
|
+
<ds-step name="c" label="Payment"></ds-step>
|
|
35
|
+
<ds-step-panel for="a">Content A</ds-step-panel>
|
|
36
|
+
<ds-step-panel for="b">Content B</ds-step-panel>
|
|
37
|
+
<ds-step-panel for="c">Content C</ds-step-panel>
|
|
38
|
+
</ds-steps>
|
|
39
|
+
`);
|
|
40
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
41
|
+
await steps.assertStepSelected('b');
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
test.describe('panels variant — interaction', () => {
|
|
45
|
+
test('clicking a step shows its panel and hides the others', async ({ page }) => {
|
|
46
|
+
await page.mount(`<ds-steps>${PANELS}</ds-steps>`);
|
|
47
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
48
|
+
await steps.selectStep('b');
|
|
49
|
+
await steps.assertStepSelected('b');
|
|
50
|
+
await steps.assertStepNotSelected('a');
|
|
51
|
+
await steps.assertPanelVisible('b');
|
|
52
|
+
await steps.assertPanelHidden('a');
|
|
53
|
+
await steps.assertPanelHidden('c');
|
|
54
|
+
});
|
|
55
|
+
test('clicking the already selected step does not emit dsChange', async ({ page }) => {
|
|
56
|
+
await page.mount(`<ds-steps>${PANELS}</ds-steps>`);
|
|
57
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
58
|
+
const spy = await steps.el.spyOnEvent('dsChange');
|
|
59
|
+
await steps.selectStep('a');
|
|
60
|
+
expect(spy).toHaveReceivedEventTimes(0);
|
|
61
|
+
});
|
|
62
|
+
test('clicking a disabled step does nothing', async ({ page }) => {
|
|
63
|
+
await page.mount(`
|
|
64
|
+
<ds-steps>
|
|
65
|
+
<ds-step name="a" label="Cart"></ds-step>
|
|
66
|
+
<ds-step name="b" label="Shipping" disabled></ds-step>
|
|
67
|
+
<ds-step-panel for="a">Content A</ds-step-panel>
|
|
68
|
+
<ds-step-panel for="b">Content B</ds-step-panel>
|
|
69
|
+
</ds-steps>
|
|
70
|
+
`);
|
|
71
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
72
|
+
const spy = await steps.el.spyOnEvent('dsChange');
|
|
73
|
+
await steps.selectStep('b');
|
|
74
|
+
expect(spy).toHaveReceivedEventTimes(0);
|
|
75
|
+
await steps.assertStepSelected('a');
|
|
76
|
+
});
|
|
77
|
+
test('disabled selected step is skipped in tab order', async ({ page }) => {
|
|
78
|
+
await page.mount(`
|
|
79
|
+
<button id="before">Before</button>
|
|
80
|
+
<ds-steps value="b">
|
|
81
|
+
<ds-step name="a" label="Cart"></ds-step>
|
|
82
|
+
<ds-step name="b" label="Shipping" disabled></ds-step>
|
|
83
|
+
<ds-step-panel for="a">Content A</ds-step-panel>
|
|
84
|
+
<ds-step-panel for="b">Content B</ds-step-panel>
|
|
85
|
+
</ds-steps>
|
|
86
|
+
<button id="after">After</button>
|
|
87
|
+
`);
|
|
88
|
+
await page.keyboard.press('Tab');
|
|
89
|
+
await expect(page.locator('#before')).toBeFocused();
|
|
90
|
+
await page.keyboard.press('Tab');
|
|
91
|
+
await expect(page.locator('#after')).toBeFocused();
|
|
92
|
+
await expect(page.locator('ds-step[name="b"]')).not.toBeFocused();
|
|
93
|
+
});
|
|
94
|
+
});
|
|
95
|
+
test.describe('panels variant — dsChange event', () => {
|
|
96
|
+
test('emits dsChange with the selected step name', async ({ page }) => {
|
|
97
|
+
await page.mount(`<ds-steps>${PANELS}</ds-steps>`);
|
|
98
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
99
|
+
const spy = await steps.el.spyOnEvent('dsChange');
|
|
100
|
+
await steps.selectStep('b');
|
|
101
|
+
expect(spy).toHaveReceivedEventTimes(1);
|
|
102
|
+
expect(spy).toHaveReceivedEventDetail({ value: 'b' });
|
|
103
|
+
});
|
|
104
|
+
test('emits dsChange on each step switch', async ({ page }) => {
|
|
105
|
+
await page.mount(`<ds-steps>${PANELS}</ds-steps>`);
|
|
106
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
107
|
+
const spy = await steps.el.spyOnEvent('dsChange');
|
|
108
|
+
await steps.selectStep('b');
|
|
109
|
+
await steps.selectStep('c');
|
|
110
|
+
expect(spy).toHaveReceivedEventTimes(2);
|
|
111
|
+
expect(spy).toHaveReceivedEventDetail({ value: 'c' });
|
|
112
|
+
});
|
|
113
|
+
});
|
|
114
|
+
test.describe('panels variant — keyboard navigation', () => {
|
|
115
|
+
test('ArrowRight moves to the next step', async ({ page }) => {
|
|
116
|
+
await page.mount(`<ds-steps>${PANELS}</ds-steps>`);
|
|
117
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
118
|
+
await steps.selectStep('a');
|
|
119
|
+
await page.keyboard.press('ArrowRight');
|
|
120
|
+
await steps.assertStepSelected('b');
|
|
121
|
+
});
|
|
122
|
+
test('ArrowLeft moves to the previous step', async ({ page }) => {
|
|
123
|
+
await page.mount(`<ds-steps value="b">${PANELS}</ds-steps>`);
|
|
124
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
125
|
+
await steps.selectStep('b');
|
|
126
|
+
await page.keyboard.press('ArrowLeft');
|
|
127
|
+
await steps.assertStepSelected('a');
|
|
128
|
+
});
|
|
129
|
+
test('Home moves to the first step', async ({ page }) => {
|
|
130
|
+
await page.mount(`<ds-steps value="c">${PANELS}</ds-steps>`);
|
|
131
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
132
|
+
await steps.selectStep('c');
|
|
133
|
+
await page.keyboard.press('Home');
|
|
134
|
+
await steps.assertStepSelected('a');
|
|
135
|
+
});
|
|
136
|
+
test('End moves to the last step', async ({ page }) => {
|
|
137
|
+
await page.mount(`<ds-steps>${PANELS}</ds-steps>`);
|
|
138
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
139
|
+
await steps.selectStep('a');
|
|
140
|
+
await page.keyboard.press('End');
|
|
141
|
+
await steps.assertStepSelected('c');
|
|
142
|
+
});
|
|
143
|
+
test('ArrowRight wraps from last to first', async ({ page }) => {
|
|
144
|
+
await page.mount(`<ds-steps value="c">${PANELS}</ds-steps>`);
|
|
145
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
146
|
+
await steps.selectStep('c');
|
|
147
|
+
await page.keyboard.press('ArrowRight');
|
|
148
|
+
await steps.assertStepSelected('a');
|
|
149
|
+
});
|
|
150
|
+
test('ArrowDown moves to next step in vertical mode', async ({ page }) => {
|
|
151
|
+
await page.mount(`<ds-steps vertical>${PANELS}</ds-steps>`);
|
|
152
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
153
|
+
await steps.selectStep('a');
|
|
154
|
+
await page.keyboard.press('ArrowDown');
|
|
155
|
+
await steps.assertStepSelected('b');
|
|
156
|
+
});
|
|
157
|
+
});
|
|
158
|
+
test.describe('navigation variant', () => {
|
|
159
|
+
test('does not emit dsChange when links are clicked', async ({ page }) => {
|
|
160
|
+
await page.mount(`
|
|
161
|
+
<ds-steps label="Checkout">
|
|
162
|
+
<ds-step name="first" label="Cart"><a href="/first" aria-current="step">Cart</a></ds-step>
|
|
163
|
+
<ds-step name="second" label="Shipping"><a href="/second">Shipping</a></ds-step>
|
|
164
|
+
</ds-steps>
|
|
165
|
+
`);
|
|
166
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
167
|
+
const spy = await steps.el.spyOnEvent('dsChange');
|
|
168
|
+
await steps.step('second').click();
|
|
169
|
+
expect(spy).toHaveReceivedEventTimes(0);
|
|
170
|
+
});
|
|
171
|
+
test('marks the step with aria-current as selected', async ({ page }) => {
|
|
172
|
+
await page.mount(`
|
|
173
|
+
<ds-steps label="Checkout">
|
|
174
|
+
<ds-step name="first" label="Cart"><a href="/first" aria-current="step">Cart</a></ds-step>
|
|
175
|
+
<ds-step name="second" label="Shipping"><a href="/second">Shipping</a></ds-step>
|
|
176
|
+
</ds-steps>
|
|
177
|
+
`);
|
|
178
|
+
const steps = new DsSteps(page.locator('ds-steps'));
|
|
179
|
+
await steps.assertStepSelected('first');
|
|
180
|
+
await steps.assertStepNotSelected('second');
|
|
181
|
+
});
|
|
182
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* (C) Helvetia Design System https://design.baloise.dev/ - Apache License 2.0
|
|
3
|
+
*/
|
|
4
|
+
import { expectScreenshot, screenshot, test } from "../../../../../../playwright/src/index";
|
|
5
|
+
const TAG = 'steps';
|
|
6
|
+
const VARIANTS = ['basic', 'states', 'hidden', 'vertical', 'navigation', 'navigation-vertical', 'colors'];
|
|
7
|
+
const image = screenshot(TAG);
|
|
8
|
+
test.describe('host', () => {
|
|
9
|
+
test.beforeEach('Setup', async ({ page }) => {
|
|
10
|
+
await page.setupVisualTest(`/components/${TAG}/test/${TAG}.visual.html`);
|
|
11
|
+
});
|
|
12
|
+
VARIANTS.forEach(variant => {
|
|
13
|
+
test(variant, async ({ page }) => {
|
|
14
|
+
const el = page.getByTestId(variant);
|
|
15
|
+
await expectScreenshot(el, image(variant));
|
|
16
|
+
});
|
|
17
|
+
});
|
|
18
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:host{display:flex;flex-direction:column;outline:none}span,a{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none;user-drag:none;flex:1;position:relative;display:inline-flex;align-items:center;min-height:2.5rem;gap:.5rem;padding:var(--_tabs-tab-padding);background:none;border:none;cursor:pointer;text-decoration:none;color:var(--_tabs-tab-color);font-family:var(--_tabs-tab-font-family);font-size:var(--_tabs-tab-font-size);font-weight:var(--_tabs-tab-font-weight);outline:none;white-space:nowrap;transition:color 120ms ease}span::after,a::after{content:"";position:absolute;bottom:calc(-1*var(--_tabs-indicator-height));left:0;right:0;height:2px;border-radius:9999px;background-color:rgba(0,0,0,0);transition:background-color 120ms ease}@media(hover: hover)and (pointer: fine){span:hover,a:hover{color:var(--_tabs-tab-color-hover)}span:hover::after,a:hover::after{background-color:var(--_tabs-tab-indicator-color-idle)}}span:active,a:active{color:var(--_tabs-tab-color-active)}span:active::after,a:active::after{background-color:var(--_tabs-tab-indicator-color-idle)}:host(:focus-visible:not(:active)){border-radius:var(--_tabs-tab-radius)}@media(hover: hover)and (pointer: fine){:host(:focus-visible:not(:active)){box-shadow:var(--ds-alias-interaction-focus-color-border) 0 0 0 2px,var(--_tabs-tab-color-focus) 0 0 0 5px !important}}span.is-selected,a.is-selected{color:var(--_tabs-tab-color-selected);font-weight:var(--_tabs-tab-font-weight-selected)}span ::slotted(ds-badge.is-sm),a ::slotted(ds-badge.is-sm){position:absolute;top:calc(var(--_tabs-tab-badge-size));right:0;transform:translateY(-50%)}span ::slotted(ds-icon.is-filled:not(.is-auto)),a ::slotted(ds-icon.is-filled:not(.is-auto)){--mod-icon-color: currentColor}:host(.is-fullwidth) span{width:100%;justify-content:center}:host(.is-vertical) span,:host(.is-vertical) a{white-space:normal;justify-content:flex-start;text-align:left}:host(.is-vertical) span::after,:host(.is-vertical) a::after{top:0;bottom:0;left:calc(-1*var(--_tabs-indicator-height));right:auto;width:var(--_tabs-indicator-height);height:auto}:host(.is-inverted) span.is-selected,:host(.is-inverted) a.is-selected{font-family:var(--ds-alias-text-family-heading);font-weight:var(--_tabs-tab-font-weight-selected)}:host(.is-navigation){position:relative;display:inline-flex}:host(.is-navigation)::after{content:"";position:absolute;bottom:calc(-1*var(--_tabs-indicator-height));left:0;right:0;height:2px;border-radius:9999px;background-color:rgba(0,0,0,0);transition:background-color 120ms ease}:host(.is-navigation.is-selected)::after{background-color:var(--_tabs-tab-border-color-selected)}:host(.is-navigation) ::slotted(a){display:inline-flex;align-items:center;min-height:2.5rem;gap:.5rem;padding:var(--_tabs-tab-padding);color:var(--_tabs-tab-color);font-family:var(--_tabs-tab-font-family);font-size:var(--_tabs-tab-font-size);font-weight:var(--_tabs-tab-font-weight);text-decoration:none;white-space:nowrap;transition:color 120ms ease;--mod-icon-color: currentColor}:host(.is-navigation) ::slotted(a:focus-visible:not(:active)){border-radius:var(--_tabs-tab-radius)}@media(hover: hover)and (pointer: fine){:host(.is-navigation) ::slotted(a:focus-visible:not(:active)){box-shadow:var(--ds-alias-interaction-focus-color-border) 0 0 0 2px,var(--_tabs-tab-color-focus) 0 0 0 5px !important}}:host(.is-navigation.is-selected) ::slotted(a),:host(.is-navigation) ::slotted([aria-current]){color:var(--_tabs-tab-color-selected);font-weight:var(--_tabs-tab-font-weight-selected)}:host(.is-navigation.is-inverted.is-selected) ::slotted(a),:host(.is-navigation.is-inverted) ::slotted([aria-current]){font-family:var(--ds-alias-text-family-heading);font-weight:var(--_tabs-tab-font-weight-selected)}:host(.is-navigation.is-vertical)::after{top:0;bottom:0;left:calc(-1*var(--_tabs-indicator-height));right:auto;width:2px;height:auto}
|