@telesign/boreal-web-components 0.1.0-alpha.4 → 0.1.0-alpha.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/components-build/bds-avatar.js +1 -1
- package/components-build/bds-badge.js +1 -1
- package/components-build/bds-banner.js +1 -1
- package/components-build/bds-breadcrumb-item.d.ts +11 -0
- package/components-build/bds-breadcrumb-item.js +1 -0
- package/components-build/bds-breadcrumb.d.ts +11 -0
- package/components-build/bds-breadcrumb.js +1 -0
- package/components-build/bds-button-group.d.ts +11 -0
- package/components-build/bds-button-group.js +1 -0
- package/components-build/bds-button.js +1 -1
- package/components-build/bds-checkbox-button.d.ts +11 -0
- package/components-build/bds-checkbox-button.js +1 -0
- package/components-build/bds-checkbox-card.d.ts +11 -0
- package/components-build/bds-checkbox-card.js +1 -0
- package/components-build/bds-checkbox-group.d.ts +11 -0
- package/components-build/bds-checkbox-group.js +1 -0
- package/components-build/bds-checkbox.js +1 -1
- package/components-build/bds-dialog.js +1 -1
- package/components-build/bds-divider.js +1 -1
- package/components-build/bds-flag.js +1 -1
- package/components-build/bds-grid-item.js +1 -1
- package/components-build/bds-grid.js +1 -1
- package/components-build/bds-list-menu-item.js +1 -1
- package/components-build/bds-list-menu.js +1 -1
- package/components-build/bds-popover.js +1 -1
- package/components-build/bds-radio-button.d.ts +11 -0
- package/components-build/bds-radio-button.js +1 -0
- package/components-build/bds-radio-card.d.ts +11 -0
- package/components-build/bds-radio-card.js +1 -0
- package/components-build/bds-radio-group.d.ts +11 -0
- package/components-build/bds-radio-group.js +1 -0
- package/components-build/bds-radio.d.ts +11 -0
- package/components-build/bds-radio.js +1 -0
- package/components-build/bds-select.d.ts +11 -0
- package/components-build/bds-select.js +1 -0
- package/components-build/bds-slider.d.ts +11 -0
- package/components-build/bds-slider.js +1 -0
- package/components-build/bds-spinner.js +1 -1
- package/components-build/bds-status.js +1 -1
- package/components-build/bds-tag.js +1 -1
- package/components-build/bds-text-field.js +1 -1
- package/components-build/bds-toggle.js +1 -1
- package/components-build/bds-tooltip.js +1 -1
- package/components-build/bds-typography.js +1 -1
- package/components-build/index.js +1 -1
- package/components-build/p-B6e9eIHB.js +1 -0
- package/components-build/p-CJBdGD_4.js +1 -0
- package/components-build/p-CPvuMm5C.js +1 -0
- package/components-build/p-DcR7mHFE.js +1 -0
- package/components-build/p-DdOPD9wW.js +1 -0
- package/components-build/p-DfaYciGa.js +1 -0
- package/components-build/p-Dh8DSJs_.js +1 -0
- package/components-build/p-DoNZM78n.js +1 -0
- package/components-build/p-DrkDx75U.js +1 -0
- package/components-build/p-DuBzr05c.js +1 -0
- package/components-build/p-PmjPRW8X.js +1 -0
- package/components-build/p-cgdh1LO-.js +1 -0
- package/{dist/boreal-web-components/p-CaHOghy5.js → components-build/p-fUK0GCeC.js} +1 -1
- package/components-build/p-nxYzL9uu.js +1 -0
- package/components-build/p-yLNcMg2E.js +1 -0
- package/custom-elements.json +5078 -1524
- package/dist/boreal-web-components/boreal-web-components.esm.js +1 -1
- package/dist/boreal-web-components/css/boreal.css +60 -0
- package/dist/boreal-web-components/css/theme-connect.css +15 -0
- package/dist/boreal-web-components/css/theme-engage.css +15 -0
- package/dist/boreal-web-components/css/theme-protect.css +15 -0
- package/dist/boreal-web-components/css/theme-proximus.css +15 -0
- package/dist/boreal-web-components/p-02e53626.entry.js +1 -0
- package/dist/boreal-web-components/p-0357450d.system.entry.js +1 -0
- package/dist/boreal-web-components/{p-e0bf8a6e.entry.js → p-1250ba53.entry.js} +1 -1
- package/dist/boreal-web-components/p-1911b978.entry.js +1 -0
- package/dist/boreal-web-components/{p-2158a7cd.entry.js → p-19f9352d.entry.js} +1 -1
- package/dist/boreal-web-components/p-1mOd23lT.system.js +1 -0
- package/dist/boreal-web-components/{p-52600375.system.entry.js → p-25823f7d.system.entry.js} +1 -1
- package/dist/boreal-web-components/p-2db71382.system.entry.js +1 -0
- package/dist/boreal-web-components/{p-251d35df.system.entry.js → p-365e8e5c.system.entry.js} +1 -1
- package/dist/boreal-web-components/p-367e40f9.entry.js +1 -0
- package/dist/boreal-web-components/p-3946d587.entry.js +1 -0
- package/dist/boreal-web-components/p-44b6fe6c.system.entry.js +1 -0
- package/dist/boreal-web-components/{p-7a4efddd.system.entry.js → p-48712a63.system.entry.js} +1 -1
- package/dist/boreal-web-components/{p-251b3002.entry.js → p-49ea207a.entry.js} +1 -1
- package/dist/boreal-web-components/p-4b028406.entry.js +1 -0
- package/dist/boreal-web-components/p-4b615de8.system.entry.js +1 -0
- package/dist/boreal-web-components/{p-edca16b6.system.entry.js → p-4f431941.system.entry.js} +1 -1
- package/dist/boreal-web-components/p-524421f7.system.entry.js +1 -0
- package/dist/boreal-web-components/p-530c8c7f.entry.js +1 -0
- package/dist/boreal-web-components/p-55aeff0c.system.entry.js +1 -0
- package/dist/boreal-web-components/p-5c8650b3.system.entry.js +1 -0
- package/dist/boreal-web-components/p-5e590291.system.entry.js +1 -0
- package/dist/boreal-web-components/p-5ee0841f.entry.js +1 -0
- package/dist/boreal-web-components/{p-871c9a9f.system.entry.js → p-65923619.system.entry.js} +1 -1
- package/dist/boreal-web-components/p-66ec16d9.entry.js +1 -0
- package/dist/boreal-web-components/{p-127a4134.entry.js → p-714bf70d.entry.js} +1 -1
- package/dist/boreal-web-components/{p-66360e63.entry.js → p-71ed1e1d.entry.js} +1 -1
- package/dist/boreal-web-components/{p-b12d4788.system.entry.js → p-732e98f1.system.entry.js} +1 -1
- package/dist/boreal-web-components/p-7626338e.system.entry.js +1 -0
- package/dist/boreal-web-components/{p-80822731.system.entry.js → p-77658a5b.system.entry.js} +1 -1
- package/dist/boreal-web-components/p-7G4h4DI7.js +1 -0
- package/dist/boreal-web-components/p-800fc096.system.entry.js +1 -0
- package/dist/boreal-web-components/p-824485ad.entry.js +1 -0
- package/dist/boreal-web-components/p-8dfe3a9f.entry.js +1 -0
- package/dist/boreal-web-components/p-90022071.entry.js +1 -0
- package/dist/boreal-web-components/{p-1d1bb9d2.entry.js → p-9d02057d.entry.js} +1 -1
- package/dist/boreal-web-components/p-C-g3hhl_.system.js +1 -0
- package/dist/boreal-web-components/p-C0P3gzq5.system.js +1 -0
- package/dist/boreal-web-components/p-C4HM8wQe.js +1 -0
- package/dist/boreal-web-components/p-CPvuMm5C.js +1 -0
- package/dist/boreal-web-components/p-CRMH6mfq.system.js +1 -0
- package/dist/boreal-web-components/p-CU_dRLdk.system.js +1 -0
- package/dist/boreal-web-components/p-CW4-dkCF.system.js +1 -0
- package/dist/boreal-web-components/p-CcENtewr.js +1 -0
- package/dist/boreal-web-components/{p-BuxZeJbu.system.js → p-DSU8tkVw.system.js} +1 -1
- package/dist/boreal-web-components/p-DfaYciGa.js +1 -0
- package/dist/boreal-web-components/p-Dk9dfU9-.system.js +1 -0
- package/dist/boreal-web-components/p-DlVzZK7o.js +1 -0
- package/dist/boreal-web-components/p-DnIhjwCH.system.js +1 -0
- package/dist/boreal-web-components/p-Dwo1hcd9.js +1 -0
- package/dist/boreal-web-components/p-K7DvMlRo.system.js +1 -0
- package/{components-build/p-CaHOghy5.js → dist/boreal-web-components/p-U9yfbs7i.js} +1 -1
- package/dist/boreal-web-components/p-UEj9YHof.system.js +1 -0
- package/dist/boreal-web-components/p-b54fe67f.system.entry.js +1 -0
- package/dist/boreal-web-components/p-bbcd3a30.system.entry.js +1 -0
- package/dist/boreal-web-components/p-bea25d3d.system.entry.js +1 -0
- package/dist/boreal-web-components/p-bed506d3.entry.js +1 -0
- package/dist/boreal-web-components/p-bfd62034.system.entry.js +1 -0
- package/dist/boreal-web-components/p-c07d6b82.system.entry.js +1 -0
- package/dist/boreal-web-components/p-cc5c359f.entry.js +1 -0
- package/dist/boreal-web-components/p-cgdh1LO-.js +1 -0
- package/dist/boreal-web-components/p-d2b6ae79.entry.js +1 -0
- package/dist/boreal-web-components/{p-695d0830.entry.js → p-dc7d429c.entry.js} +1 -1
- package/dist/boreal-web-components/p-e21b8416.entry.js +1 -0
- package/dist/boreal-web-components/p-e4364a44.system.entry.js +1 -0
- package/dist/boreal-web-components/p-e51407b2.system.entry.js +1 -0
- package/dist/boreal-web-components/p-e8cde179.system.entry.js +1 -0
- package/dist/boreal-web-components/p-eecc3028.system.entry.js +1 -0
- package/dist/boreal-web-components/p-f3bd824d.system.entry.js +1 -0
- package/dist/boreal-web-components/{p-44ceff4e.system.entry.js → p-f65e9d0c.system.entry.js} +1 -1
- package/dist/boreal-web-components/p-f6eabb16.entry.js +1 -0
- package/dist/boreal-web-components/p-f7acf6e5.system.entry.js +1 -0
- package/dist/boreal-web-components/{p-7db870b7.entry.js → p-f9560509.entry.js} +1 -1
- package/dist/boreal-web-components/p-fa128cad.system.entry.js +1 -0
- package/dist/boreal-web-components/p-fab1a01d.entry.js +1 -0
- package/dist/boreal-web-components/{p-fc24d963.entry.js → p-fb9a0e94.entry.js} +1 -1
- package/dist/boreal-web-components/p-fb9ba833.entry.js +1 -0
- package/dist/boreal-web-components/p-fbe0c9f2.entry.js +1 -0
- package/dist/boreal-web-components/p-fbe88555.entry.js +1 -0
- package/dist/boreal-web-components/p-fc1fa966.system.entry.js +1 -0
- package/dist/boreal-web-components/p-fc4ffa0e.entry.js +1 -0
- package/dist/boreal-web-components/p-fef13445.entry.js +1 -0
- package/dist/boreal-web-components/p-iq2UuV7c.js +1 -0
- package/dist/boreal-web-components/p-qGhMe8Hk.js +1 -0
- package/dist/boreal-web-components/p-vzZJGcYF.system.js +1 -1
- package/dist/boreal-web-components/scss/maps/_theme-connect.scss +16 -1
- package/dist/boreal-web-components/scss/maps/_theme-engage.scss +16 -1
- package/dist/boreal-web-components/scss/maps/_theme-protect.scss +16 -1
- package/dist/boreal-web-components/scss/maps/_theme-proximus.scss +16 -1
- package/dist/boreal-web-components/scss/variables/_theme-connect.scss +16 -1
- package/dist/boreal-web-components/scss/variables/_theme-engage.scss +16 -1
- package/dist/boreal-web-components/scss/variables/_theme-protect.scss +16 -1
- package/dist/boreal-web-components/scss/variables/_theme-proximus.scss +16 -1
- package/dist/cjs/KeyboardController-B_g3peyB.js +1067 -0
- package/dist/cjs/Keys-DXn16dlA.js +34 -0
- package/dist/cjs/Logger-DnziItRH.js +51 -0
- package/dist/cjs/{attributes-wIHueigW.js → attributes-CgRFplrN.js} +3 -0
- package/dist/cjs/bds-avatar.cjs.entry.js +2 -2
- package/dist/cjs/bds-badge.cjs.entry.js +1 -1
- package/dist/cjs/bds-banner.cjs.entry.js +2 -2
- package/dist/cjs/bds-breadcrumb-item.cjs.entry.js +106 -0
- package/dist/cjs/bds-breadcrumb.cjs.entry.js +127 -0
- package/dist/cjs/bds-button-group.cjs.entry.js +116 -0
- package/dist/cjs/bds-button.cjs.entry.js +38 -17
- package/dist/cjs/bds-checkbox-button.cjs.entry.js +119 -0
- package/dist/cjs/bds-checkbox-card.cjs.entry.js +135 -0
- package/dist/cjs/bds-checkbox-group.cjs.entry.js +292 -0
- package/dist/cjs/bds-checkbox.cjs.entry.js +67 -29
- package/dist/cjs/bds-dialog.cjs.entry.js +4 -4
- package/dist/cjs/bds-divider.cjs.entry.js +2 -2
- package/dist/cjs/bds-flag.cjs.entry.js +1 -1
- package/dist/cjs/bds-grid-item.cjs.entry.js +1 -1
- package/dist/cjs/bds-grid.cjs.entry.js +1 -1
- package/dist/cjs/bds-list-menu-item.cjs.entry.js +59 -23
- package/dist/cjs/bds-list-menu.cjs.entry.js +126 -22
- package/dist/cjs/bds-popover.cjs.entry.js +15 -6
- package/dist/cjs/bds-radio-button.cjs.entry.js +60 -0
- package/dist/cjs/bds-radio-card.cjs.entry.js +76 -0
- package/dist/cjs/bds-radio-group.cjs.entry.js +291 -0
- package/dist/cjs/bds-radio.cjs.entry.js +60 -0
- package/dist/cjs/bds-select.cjs.entry.js +394 -0
- package/dist/cjs/bds-slider.cjs.entry.js +655 -0
- package/dist/cjs/bds-spinner.cjs.entry.js +1 -1
- package/dist/cjs/bds-status.cjs.entry.js +1 -1
- package/dist/cjs/bds-tag.cjs.entry.js +2 -2
- package/dist/cjs/bds-text-field.cjs.entry.js +15 -9
- package/dist/cjs/bds-toggle.cjs.entry.js +7 -6
- package/dist/cjs/bds-tooltip_2.cjs.entry.js +12 -9
- package/dist/cjs/boreal-web-components.cjs.js +1 -1
- package/dist/cjs/checkbox-form-association-DTEpHXUD.js +43 -0
- package/dist/cjs/coreColors-CQGojc0l.js +10 -0
- package/dist/cjs/{enum-DLblRCkQ.js → enum-DeTWfR0D.js} +3 -3
- package/dist/cjs/form-associated.mixin-BCR6bj29.js +33 -0
- package/dist/cjs/{getOffset-m4hBgyVP.js → getOffset-CsDHFjPW.js} +6 -53
- package/dist/cjs/{form-associated.mixin-DXwvF_vW.js → internals-D8x7GMfR.js} +0 -31
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/orientation-DQAIleEJ.js +8 -0
- package/dist/collection/collection-manifest.json +18 -6
- package/dist/collection/components/actions/bds-button/bds-button.css +55 -55
- package/dist/collection/components/actions/bds-button/bds-button.js +35 -11
- package/dist/collection/components/actions/bds-button/types/enum.js +3 -3
- package/dist/collection/components/actions/bds-button-group/bds-button-group.css +77 -0
- package/dist/collection/components/actions/bds-button-group/bds-button-group.js +264 -0
- package/dist/collection/components/actions/bds-list-menu/bds-list-menu/bds-list-menu.css +27 -1
- package/dist/collection/components/actions/bds-list-menu/bds-list-menu/bds-list-menu.js +283 -51
- package/dist/collection/components/actions/bds-list-menu/bds-list-menu/types/enum.js +4 -0
- package/dist/collection/components/actions/bds-list-menu/bds-list-menu-item/bds-list-menu-item.css +30 -11
- package/dist/collection/components/actions/bds-list-menu/bds-list-menu-item/bds-list-menu-item.js +65 -7
- package/dist/collection/components/actions/bds-toggle/bds-toggle.css +3 -3
- package/dist/collection/components/actions/bds-toggle/bds-toggle.js +1 -1
- package/dist/collection/components/feedback/bds-badge/bds-badge.js +1 -1
- package/dist/collection/components/feedback/bds-banner/bds-banner.js +1 -1
- package/dist/collection/components/feedback/bds-spinner/bds-spinner.js +1 -1
- package/dist/collection/components/feedback/bds-status/bds-status.js +1 -1
- package/dist/collection/components/feedback/bds-tag/bds-tag.css +6 -6
- package/dist/collection/components/feedback/bds-tag/bds-tag.js +1 -1
- package/dist/collection/components/forms/bds-checkbox/bds-checkbox/bds-checkbox.css +132 -0
- package/dist/collection/components/forms/bds-checkbox/{bds-checkbox.js → bds-checkbox/bds-checkbox.js} +138 -35
- package/dist/collection/components/forms/bds-checkbox/bds-checkbox-button/bds-checkbox-button.css +113 -0
- package/dist/collection/components/forms/bds-checkbox/bds-checkbox-button/bds-checkbox-button.js +382 -0
- package/dist/collection/components/forms/bds-checkbox/bds-checkbox-card/bds-checkbox-card.css +139 -0
- package/dist/collection/components/forms/bds-checkbox/bds-checkbox-card/bds-checkbox-card.js +443 -0
- package/dist/collection/components/forms/bds-checkbox/bds-checkbox-group/bds-checkbox-group.css +55 -0
- package/dist/collection/components/forms/bds-checkbox/bds-checkbox-group/bds-checkbox-group.js +648 -0
- package/dist/collection/components/forms/bds-checkbox/bds-checkbox-group/types/enum.js +5 -0
- package/dist/collection/components/forms/bds-checkbox/bds-checkbox-group/types/index.js +3 -0
- package/dist/collection/components/forms/bds-checkbox/utils/checkbox-form-association.js +39 -0
- package/dist/collection/components/forms/bds-checkbox/utils/index.js +1 -0
- package/dist/collection/components/forms/bds-flag/bds-flag.js +1 -1
- package/dist/collection/components/forms/bds-radio/bds-radio/bds-radio.css +121 -0
- package/dist/collection/components/forms/bds-radio/bds-radio/bds-radio.js +238 -0
- package/dist/collection/components/forms/bds-radio/bds-radio/types/IRadio.js +1 -0
- package/dist/collection/components/forms/bds-radio/bds-radio-button/bds-radio-button.css +113 -0
- package/dist/collection/components/forms/bds-radio/bds-radio-button/bds-radio-button.js +238 -0
- package/dist/collection/components/forms/bds-radio/bds-radio-button/types/IRadioButton.js +1 -0
- package/dist/collection/components/forms/bds-radio/bds-radio-card/bds-radio-card.css +156 -0
- package/dist/collection/components/forms/bds-radio/bds-radio-card/bds-radio-card.js +307 -0
- package/dist/collection/components/forms/bds-radio/bds-radio-card/types/IRadioCard.js +1 -0
- package/dist/collection/components/forms/bds-radio/bds-radio-group/bds-radio-group.css +55 -0
- package/dist/collection/components/forms/bds-radio/bds-radio-group/bds-radio-group.js +648 -0
- package/dist/collection/components/forms/bds-radio/bds-radio-group/types/IRadioGroup.js +1 -0
- package/dist/collection/components/forms/bds-radio/bds-radio-group/types/enum.js +5 -0
- package/dist/collection/components/forms/bds-radio/bds-radio-group/types/types.js +1 -0
- package/dist/collection/components/forms/bds-select/bds-select.css +23 -0
- package/dist/collection/components/forms/bds-select/bds-select.js +431 -0
- package/dist/collection/components/forms/bds-select/types/ISelect.js +1 -0
- package/dist/collection/components/forms/bds-slider/bds-slider.css +213 -0
- package/dist/collection/components/forms/bds-slider/bds-slider.js +847 -0
- package/dist/collection/components/forms/bds-slider/helpers/SliderDOMController.js +61 -0
- package/dist/collection/components/forms/bds-slider/helpers/SliderService.js +93 -0
- package/dist/collection/components/forms/bds-slider/helpers/index.js +3 -0
- package/dist/collection/components/forms/bds-slider/helpers/parseValues.js +43 -0
- package/dist/collection/components/forms/bds-slider/types/ChangeDetail.js +1 -0
- package/dist/collection/components/forms/bds-slider/types/ISlider.js +1 -0
- package/dist/collection/components/forms/bds-slider/types/ISliderOptions.js +1 -0
- package/dist/collection/components/forms/bds-slider/types/enum.js +16 -0
- package/dist/collection/components/forms/bds-slider/types/index.js +5 -0
- package/dist/collection/components/forms/bds-slider/types/types.js +1 -0
- package/dist/collection/components/forms/bds-text-field/bds-text-field.css +10 -3
- package/dist/collection/components/forms/bds-text-field/bds-text-field.js +47 -2
- package/dist/collection/components/helpers/{bds-divider.css → bds-divider/bds-divider.css} +12 -4
- package/dist/collection/components/helpers/{bds-divider.js → bds-divider/bds-divider.js} +3 -3
- package/dist/collection/components/helpers/bds-divider/types/IDivider.js +1 -0
- package/dist/collection/components/helpers/bds-divider/types/types.js +1 -0
- package/dist/collection/components/images-icons/bds-avatar/bds-avatar.js +1 -1
- package/dist/collection/components/layouts/bds-grid/{grid → bds-grid}/bds-grid.js +3 -3
- package/dist/collection/components/layouts/bds-grid/bds-grid/types/IGrid.js +1 -0
- package/dist/collection/components/layouts/bds-grid/bds-grid/types/types.js +1 -0
- package/dist/collection/components/layouts/bds-grid/{grid-item → bds-grid-item}/bds-grid-item.js +9 -9
- package/dist/collection/components/layouts/bds-grid/bds-grid-item/types/IGridItem.js +1 -0
- package/dist/collection/components/layouts/bds-grid/bds-grid-item/types/types.js +1 -0
- package/dist/collection/components/navigation/bds-breadcrumb/bds-breadcrumb.css +21 -0
- package/dist/collection/components/navigation/bds-breadcrumb/bds-breadcrumb.js +292 -0
- package/dist/collection/components/navigation/bds-breadcrumb/types/IBreadcrumb.js +1 -0
- package/dist/collection/components/navigation/bds-breadcrumb-item/bds-breadcrumb-item.css +64 -0
- package/dist/collection/components/navigation/bds-breadcrumb-item/bds-breadcrumb-item.js +369 -0
- package/dist/collection/components/navigation/bds-breadcrumb-item/types/IBreadcrumbItem.js +1 -0
- package/dist/collection/components/overlays/bds-dialog/bds-dialog.css +1 -1
- package/dist/collection/components/overlays/bds-dialog/bds-dialog.js +2 -2
- package/dist/collection/components/overlays/bds-popover/bds-popover.js +49 -3
- package/dist/collection/components/overlays/bds-tooltip/bds-tooltip.js +3 -3
- package/dist/collection/components/titles-text/bds-typography/bds-typography.css +5 -0
- package/dist/collection/components/titles-text/bds-typography/bds-typography.js +30 -47
- package/dist/collection/components/titles-text/bds-typography/utils/bds-typography-utils.js +1 -1
- package/dist/collection/css/boreal.css +60 -0
- package/dist/collection/css/theme-connect.css +15 -0
- package/dist/collection/css/theme-engage.css +15 -0
- package/dist/collection/css/theme-protect.css +15 -0
- package/dist/collection/css/theme-proximus.css +15 -0
- package/dist/collection/mixins/anchored.mixin.js +2 -2
- package/dist/collection/mixins/links.mixin.js +1 -2
- package/dist/collection/mixins/menu-behavior.mixin.js +12 -6
- package/dist/collection/scss/maps/_theme-connect.scss +16 -1
- package/dist/collection/scss/maps/_theme-engage.scss +16 -1
- package/dist/collection/scss/maps/_theme-protect.scss +16 -1
- package/dist/collection/scss/maps/_theme-proximus.scss +16 -1
- package/dist/collection/scss/variables/_theme-connect.scss +16 -1
- package/dist/collection/scss/variables/_theme-engage.scss +16 -1
- package/dist/collection/scss/variables/_theme-protect.scss +16 -1
- package/dist/collection/scss/variables/_theme-proximus.scss +16 -1
- package/dist/collection/types/index.js +2 -1
- package/dist/collection/types/orientation.js +4 -0
- package/dist/collection/utils/a11y/index.js +4 -0
- package/dist/collection/utils/a11y/keyboard/KeyboardController.js +566 -0
- package/dist/collection/utils/a11y/keyboard/_constants.js +30 -0
- package/dist/collection/utils/a11y/keyboard/focus/aria-activedescendant.js +41 -0
- package/dist/collection/utils/a11y/keyboard/focus/resolve.js +48 -0
- package/dist/collection/utils/a11y/keyboard/focus/roving-tabindex.js +55 -0
- package/dist/collection/utils/a11y/keyboard/navigation/grid-navigation.js +194 -0
- package/dist/collection/utils/a11y/keyboard/navigation/linear-navigation.js +137 -0
- package/dist/collection/utils/a11y/keyboard/types/IKeyboardController.js +1 -0
- package/dist/collection/utils/a11y/keyboard/types/index.js +2 -0
- package/dist/collection/utils/a11y/keyboard/types/types.js +1 -0
- package/dist/collection/utils/constants/common/Keys.js +29 -24
- package/dist/collection/utils/dom/elements.js +63 -0
- package/dist/collection/utils/menu/menu-item.utils.js +9 -8
- package/dist/collection/utils/testing/helpers.js +10 -0
- package/dist/css/boreal.css +60 -0
- package/dist/css/theme-connect.css +15 -0
- package/dist/css/theme-engage.css +15 -0
- package/dist/css/theme-protect.css +15 -0
- package/dist/css/theme-proximus.css +15 -0
- package/dist/esm/KeyboardController-DcnXb5F5.js +1064 -0
- package/dist/esm/Keys-7G4h4DI7.js +31 -0
- package/dist/esm/Logger-iq2UuV7c.js +49 -0
- package/dist/esm/{attributes-CaHOghy5.js → attributes-U9yfbs7i.js} +3 -0
- package/dist/esm/bds-avatar.entry.js +2 -2
- package/dist/esm/bds-badge.entry.js +1 -1
- package/dist/esm/bds-banner.entry.js +2 -2
- package/dist/esm/bds-breadcrumb-item.entry.js +104 -0
- package/dist/esm/bds-breadcrumb.entry.js +125 -0
- package/dist/esm/bds-button-group.entry.js +114 -0
- package/dist/esm/bds-button.entry.js +36 -15
- package/dist/esm/bds-checkbox-button.entry.js +117 -0
- package/dist/esm/bds-checkbox-card.entry.js +133 -0
- package/dist/esm/bds-checkbox-group.entry.js +290 -0
- package/dist/esm/bds-checkbox.entry.js +67 -29
- package/dist/esm/bds-dialog.entry.js +4 -4
- package/dist/esm/bds-divider.entry.js +2 -2
- package/dist/esm/bds-flag.entry.js +1 -1
- package/dist/esm/bds-grid-item.entry.js +1 -1
- package/dist/esm/bds-grid.entry.js +1 -1
- package/dist/esm/bds-list-menu-item.entry.js +59 -23
- package/dist/esm/bds-list-menu.entry.js +126 -22
- package/dist/esm/bds-popover.entry.js +15 -6
- package/dist/esm/bds-radio-button.entry.js +58 -0
- package/dist/esm/bds-radio-card.entry.js +74 -0
- package/dist/esm/bds-radio-group.entry.js +289 -0
- package/dist/esm/bds-radio.entry.js +58 -0
- package/dist/esm/bds-select.entry.js +392 -0
- package/dist/esm/bds-slider.entry.js +653 -0
- package/dist/esm/bds-spinner.entry.js +1 -1
- package/dist/esm/bds-status.entry.js +1 -1
- package/dist/esm/bds-tag.entry.js +2 -2
- package/dist/esm/bds-text-field.entry.js +10 -4
- package/dist/esm/bds-toggle.entry.js +5 -4
- package/dist/esm/bds-tooltip_2.entry.js +12 -9
- package/dist/esm/boreal-web-components.js +1 -1
- package/dist/esm/checkbox-form-association-cgdh1LO-.js +41 -0
- package/dist/esm/coreColors-Dwo1hcd9.js +8 -0
- package/dist/esm/{enum-C8mRvnTA.js → enum-DlVzZK7o.js} +4 -4
- package/dist/esm/form-associated.mixin-C4HM8wQe.js +31 -0
- package/dist/esm/{getOffset-DKPjeBHi.js → getOffset-DCLpJBcp.js} +4 -51
- package/dist/esm/{form-associated.mixin-CvK2d92c.js → internals-DfaYciGa.js} +1 -31
- package/dist/esm/loader.js +1 -1
- package/dist/esm/orientation-CPvuMm5C.js +6 -0
- package/dist/esm-es5/KeyboardController-DcnXb5F5.js +1 -0
- package/dist/esm-es5/Keys-7G4h4DI7.js +1 -0
- package/dist/esm-es5/Logger-iq2UuV7c.js +1 -0
- package/dist/esm-es5/{attributes-CaHOghy5.js → attributes-U9yfbs7i.js} +1 -1
- package/dist/esm-es5/bds-avatar.entry.js +1 -1
- package/dist/esm-es5/bds-badge.entry.js +1 -1
- package/dist/esm-es5/bds-banner.entry.js +1 -1
- package/dist/esm-es5/bds-breadcrumb-item.entry.js +1 -0
- package/dist/esm-es5/bds-breadcrumb.entry.js +1 -0
- package/dist/esm-es5/bds-button-group.entry.js +1 -0
- package/dist/esm-es5/bds-button.entry.js +1 -1
- package/dist/esm-es5/bds-checkbox-button.entry.js +1 -0
- package/dist/esm-es5/bds-checkbox-card.entry.js +1 -0
- package/dist/esm-es5/bds-checkbox-group.entry.js +1 -0
- package/dist/esm-es5/bds-checkbox.entry.js +1 -1
- package/dist/esm-es5/bds-dialog.entry.js +1 -1
- package/dist/esm-es5/bds-divider.entry.js +1 -1
- package/dist/esm-es5/bds-flag.entry.js +1 -1
- package/dist/esm-es5/bds-grid-item.entry.js +1 -1
- package/dist/esm-es5/bds-grid.entry.js +1 -1
- package/dist/esm-es5/bds-list-menu-item.entry.js +1 -1
- package/dist/esm-es5/bds-list-menu.entry.js +1 -1
- package/dist/esm-es5/bds-popover.entry.js +1 -1
- package/dist/esm-es5/bds-radio-button.entry.js +1 -0
- package/dist/esm-es5/bds-radio-card.entry.js +1 -0
- package/dist/esm-es5/bds-radio-group.entry.js +1 -0
- package/dist/esm-es5/bds-radio.entry.js +1 -0
- package/dist/esm-es5/bds-select.entry.js +1 -0
- package/dist/esm-es5/bds-slider.entry.js +1 -0
- package/dist/esm-es5/bds-spinner.entry.js +1 -1
- package/dist/esm-es5/bds-status.entry.js +1 -1
- package/dist/esm-es5/bds-tag.entry.js +1 -1
- package/dist/esm-es5/bds-text-field.entry.js +1 -1
- package/dist/esm-es5/bds-toggle.entry.js +1 -1
- package/dist/esm-es5/bds-tooltip_2.entry.js +1 -1
- package/dist/esm-es5/boreal-web-components.js +1 -1
- package/dist/esm-es5/checkbox-form-association-cgdh1LO-.js +1 -0
- package/dist/esm-es5/coreColors-Dwo1hcd9.js +1 -0
- package/dist/esm-es5/enum-DlVzZK7o.js +1 -0
- package/dist/esm-es5/form-associated.mixin-C4HM8wQe.js +1 -0
- package/dist/esm-es5/getOffset-DCLpJBcp.js +1 -0
- package/dist/esm-es5/internals-DfaYciGa.js +1 -0
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/orientation-CPvuMm5C.js +1 -0
- package/dist/scss/maps/_theme-connect.scss +16 -1
- package/dist/scss/maps/_theme-engage.scss +16 -1
- package/dist/scss/maps/_theme-protect.scss +16 -1
- package/dist/scss/maps/_theme-proximus.scss +16 -1
- package/dist/scss/variables/_theme-connect.scss +16 -1
- package/dist/scss/variables/_theme-engage.scss +16 -1
- package/dist/scss/variables/_theme-protect.scss +16 -1
- package/dist/scss/variables/_theme-proximus.scss +16 -1
- package/dist/types/components/actions/bds-button/bds-button.d.ts +8 -4
- package/dist/types/components/actions/bds-button/types/enum.d.ts +3 -3
- package/dist/types/components/actions/bds-button-group/bds-button-group.d.ts +40 -0
- package/dist/types/components/actions/bds-button-group/types/IButtonGroup.d.ts +11 -0
- package/dist/types/components/actions/bds-list-menu/bds-list-menu/bds-list-menu.d.ts +32 -15
- package/dist/types/components/actions/bds-list-menu/bds-list-menu/types/IListMenu.d.ts +17 -0
- package/dist/types/components/actions/bds-list-menu/bds-list-menu/types/enum.d.ts +5 -0
- package/dist/types/components/actions/bds-list-menu/bds-list-menu/types/types.d.ts +3 -0
- package/dist/types/components/actions/bds-list-menu/bds-list-menu-item/bds-list-menu-item.d.ts +10 -1
- package/dist/types/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.d.ts +2 -0
- package/dist/types/components/actions/bds-toggle/types/IToggle.d.ts +1 -1
- package/dist/types/components/forms/bds-checkbox/{bds-checkbox.d.ts → bds-checkbox/bds-checkbox.d.ts} +24 -9
- package/dist/types/components/forms/bds-checkbox/bds-checkbox-button/bds-checkbox-button.d.ts +68 -0
- package/dist/types/components/forms/bds-checkbox/bds-checkbox-button/types/ICheckboxButton.d.ts +15 -0
- package/dist/types/components/forms/bds-checkbox/bds-checkbox-card/bds-checkbox-card.d.ts +63 -0
- package/dist/types/components/forms/bds-checkbox/bds-checkbox-card/types/ICheckboxCard.d.ts +9 -0
- package/dist/types/components/forms/bds-checkbox/bds-checkbox-group/bds-checkbox-group.d.ts +86 -0
- package/dist/types/components/forms/bds-checkbox/bds-checkbox-group/types/ICheckboxGroup.d.ts +27 -0
- package/dist/types/components/forms/bds-checkbox/bds-checkbox-group/types/enum.d.ts +6 -0
- package/dist/types/components/forms/bds-checkbox/bds-checkbox-group/types/index.d.ts +4 -0
- package/dist/types/components/forms/bds-checkbox/bds-checkbox-group/types/types.d.ts +4 -0
- package/dist/types/components/forms/bds-checkbox/types/ICheckbox.d.ts +7 -22
- package/dist/types/components/forms/bds-checkbox/utils/checkbox-form-association.d.ts +10 -0
- package/dist/types/components/forms/bds-checkbox/utils/index.d.ts +2 -0
- package/dist/types/components/forms/bds-radio/bds-radio/bds-radio.d.ts +36 -0
- package/dist/types/components/forms/bds-radio/bds-radio/types/IRadio.d.ts +13 -0
- package/dist/types/components/forms/bds-radio/bds-radio-button/bds-radio-button.d.ts +36 -0
- package/dist/types/components/forms/bds-radio/bds-radio-button/types/IRadioButton.d.ts +14 -0
- package/dist/types/components/forms/bds-radio/bds-radio-card/bds-radio-card.d.ts +57 -0
- package/dist/types/components/forms/bds-radio/bds-radio-card/types/IRadioCard.d.ts +14 -0
- package/dist/types/components/forms/bds-radio/bds-radio-group/bds-radio-group.d.ts +85 -0
- package/dist/types/components/forms/bds-radio/bds-radio-group/types/IRadioGroup.d.ts +20 -0
- package/dist/types/components/forms/bds-radio/bds-radio-group/types/enum.d.ts +6 -0
- package/dist/types/components/forms/bds-radio/bds-radio-group/types/types.d.ts +3 -0
- package/dist/types/components/forms/bds-select/bds-select.d.ts +98 -0
- package/dist/types/components/forms/bds-select/types/ISelect.d.ts +6 -0
- package/dist/types/components/forms/bds-slider/bds-slider.d.ts +176 -0
- package/dist/types/components/forms/bds-slider/helpers/SliderDOMController.d.ts +38 -0
- package/dist/types/components/forms/bds-slider/helpers/SliderService.d.ts +44 -0
- package/dist/types/components/forms/bds-slider/helpers/index.d.ts +4 -0
- package/dist/types/components/forms/bds-slider/helpers/parseValues.d.ts +18 -0
- package/dist/types/components/forms/bds-slider/types/ChangeDetail.d.ts +9 -0
- package/dist/types/components/forms/bds-slider/types/ISlider.d.ts +17 -0
- package/dist/types/components/forms/bds-slider/types/ISliderOptions.d.ts +31 -0
- package/dist/types/components/forms/bds-slider/types/enum.d.ts +17 -0
- package/dist/types/components/forms/bds-slider/types/index.d.ts +6 -0
- package/dist/types/components/forms/bds-slider/types/types.d.ts +5 -0
- package/dist/types/components/forms/bds-text-field/bds-text-field.d.ts +4 -0
- package/dist/types/components/navigation/bds-breadcrumb/bds-breadcrumb.d.ts +57 -0
- package/dist/types/components/navigation/bds-breadcrumb/types/IBreadcrumb.d.ts +17 -0
- package/dist/types/components/navigation/bds-breadcrumb-item/bds-breadcrumb-item.d.ts +83 -0
- package/dist/types/components/navigation/bds-breadcrumb-item/types/IBreadcrumbItem.d.ts +20 -0
- package/dist/types/components/overlays/bds-popover/bds-popover.d.ts +4 -0
- package/dist/types/components/titles-text/bds-typography/bds-typography.d.ts +2 -46
- package/dist/types/components/titles-text/bds-typography/types/ITypography.d.ts +1 -0
- package/dist/types/components.d.ts +2187 -450
- package/dist/types/mixins/menu-behavior.mixin.d.ts +5 -1
- package/dist/types/types/form.d.ts +24 -0
- package/dist/types/types/index.d.ts +2 -1
- package/dist/types/types/orientation.d.ts +6 -0
- package/dist/types/utils/a11y/index.d.ts +4 -0
- package/dist/types/utils/a11y/keyboard/KeyboardController.d.ts +321 -0
- package/dist/types/utils/a11y/keyboard/_constants.d.ts +28 -0
- package/dist/types/utils/a11y/keyboard/focus/aria-activedescendant.d.ts +17 -0
- package/dist/types/utils/a11y/keyboard/focus/resolve.d.ts +23 -0
- package/dist/types/utils/a11y/keyboard/focus/roving-tabindex.d.ts +20 -0
- package/dist/types/utils/a11y/keyboard/navigation/grid-navigation.d.ts +9 -0
- package/dist/types/utils/a11y/keyboard/navigation/linear-navigation.d.ts +13 -0
- package/dist/types/utils/a11y/keyboard/types/IKeyboardController.d.ts +125 -0
- package/dist/types/utils/a11y/keyboard/types/index.d.ts +3 -0
- package/dist/types/utils/a11y/keyboard/types/types.d.ts +6 -0
- package/dist/types/utils/constants/common/Keys.d.ts +28 -14
- package/dist/types/utils/dom/elements.d.ts +41 -0
- package/dist/types/utils/menu/menu-item.utils.d.ts +2 -2
- package/dist/types/utils/testing/helpers.d.ts +8 -0
- package/package.json +1 -1
- package/components-build/p-B8n1ru5i.js +0 -1
- package/components-build/p-CGdxFth9.js +0 -1
- package/components-build/p-CrAt6pGl.js +0 -1
- package/components-build/p-DCwT43Kz.js +0 -1
- package/components-build/p-DIY3CDNL.js +0 -1
- package/dist/boreal-web-components/p-0028481c.entry.js +0 -1
- package/dist/boreal-web-components/p-1466de58.system.entry.js +0 -1
- package/dist/boreal-web-components/p-2b8bd1dd.entry.js +0 -1
- package/dist/boreal-web-components/p-32c23246.system.entry.js +0 -1
- package/dist/boreal-web-components/p-3fbcc233.entry.js +0 -1
- package/dist/boreal-web-components/p-401f1aee.system.entry.js +0 -1
- package/dist/boreal-web-components/p-41b48701.system.entry.js +0 -1
- package/dist/boreal-web-components/p-41cac1b8.system.entry.js +0 -1
- package/dist/boreal-web-components/p-627b19a5.system.entry.js +0 -1
- package/dist/boreal-web-components/p-649737e5.entry.js +0 -1
- package/dist/boreal-web-components/p-64cb5825.entry.js +0 -1
- package/dist/boreal-web-components/p-6a99f4c6.system.entry.js +0 -1
- package/dist/boreal-web-components/p-731b88cc.entry.js +0 -1
- package/dist/boreal-web-components/p-74c13bed.system.entry.js +0 -1
- package/dist/boreal-web-components/p-7f7ac40f.entry.js +0 -1
- package/dist/boreal-web-components/p-82d49661.entry.js +0 -1
- package/dist/boreal-web-components/p-83ca193e.entry.js +0 -1
- package/dist/boreal-web-components/p-BQ_zoZa2.js +0 -1
- package/dist/boreal-web-components/p-C8mRvnTA.js +0 -1
- package/dist/boreal-web-components/p-CdKFZYxk.system.js +0 -1
- package/dist/boreal-web-components/p-CtknSula.system.js +0 -1
- package/dist/boreal-web-components/p-CvK2d92c.js +0 -1
- package/dist/boreal-web-components/p-CzYQb3pP.js +0 -1
- package/dist/boreal-web-components/p-DZcx75cy.system.js +0 -1
- package/dist/boreal-web-components/p-Dme-NuTD.system.js +0 -1
- package/dist/boreal-web-components/p-ab5ffa15.system.entry.js +0 -1
- package/dist/boreal-web-components/p-ba2b625a.system.entry.js +0 -1
- package/dist/boreal-web-components/p-bf2ef10b.entry.js +0 -1
- package/dist/boreal-web-components/p-c7aee9f4.system.entry.js +0 -1
- package/dist/cjs/Keys-DbIXSJF2.js +0 -22
- package/dist/collection/components/forms/bds-checkbox/bds-checkbox.css +0 -90
- package/dist/esm/Keys-CzYQb3pP.js +0 -20
- package/dist/esm-es5/Keys-CzYQb3pP.js +0 -1
- package/dist/esm-es5/enum-C8mRvnTA.js +0 -1
- package/dist/esm-es5/form-associated.mixin-CvK2d92c.js +0 -1
- package/dist/esm-es5/getOffset-DKPjeBHi.js +0 -1
- package/dist/types/types/IFormProps.d.ts +0 -25
- /package/dist/collection/components/{helpers/types/IDivider.js → actions/bds-button-group/types/IButtonGroup.js} +0 -0
- /package/dist/collection/components/{helpers/types/types.js → actions/bds-list-menu/bds-list-menu/types/IListMenu.js} +0 -0
- /package/dist/collection/components/{layouts/bds-grid/grid-item → actions/bds-list-menu/bds-list-menu}/types/types.js +0 -0
- /package/dist/collection/components/{layouts/bds-grid/grid-item/types/IGridItem.js → forms/bds-checkbox/bds-checkbox-button/types/ICheckboxButton.js} +0 -0
- /package/dist/collection/components/{layouts/bds-grid/grid/types/IGrid.js → forms/bds-checkbox/bds-checkbox-card/types/ICheckboxCard.js} +0 -0
- /package/dist/collection/components/{layouts/bds-grid/grid/types/types.js → forms/bds-checkbox/bds-checkbox-group/types/ICheckboxGroup.js} +0 -0
- /package/dist/collection/{types/IFormProps.js → components/forms/bds-checkbox/bds-checkbox-group/types/types.js} +0 -0
- /package/dist/collection/components/helpers/{types → bds-divider/types}/enum.js +0 -0
- /package/dist/collection/components/layouts/bds-grid/{grid → bds-grid}/bds-grid.css +0 -0
- /package/dist/collection/components/layouts/bds-grid/{grid → bds-grid}/types/enum.js +0 -0
- /package/dist/collection/components/layouts/bds-grid/{grid → bds-grid}/types/index.js +0 -0
- /package/dist/collection/components/layouts/bds-grid/{grid-item → bds-grid-item}/bds-grid-item.css +0 -0
- /package/dist/collection/components/layouts/bds-grid/{grid-item → bds-grid-item}/types/enum.js +0 -0
- /package/dist/collection/components/layouts/bds-grid/{grid-item → bds-grid-item}/types/index.js +0 -0
- /package/dist/types/components/helpers/{bds-divider.d.ts → bds-divider/bds-divider.d.ts} +0 -0
- /package/dist/types/components/helpers/{types → bds-divider/types}/IDivider.d.ts +0 -0
- /package/dist/types/components/helpers/{types → bds-divider/types}/enum.d.ts +0 -0
- /package/dist/types/components/helpers/{types → bds-divider/types}/types.d.ts +0 -0
- /package/dist/types/components/layouts/bds-grid/{grid → bds-grid}/bds-grid.d.ts +0 -0
- /package/dist/types/components/layouts/bds-grid/{grid → bds-grid}/types/IGrid.d.ts +0 -0
- /package/dist/types/components/layouts/bds-grid/{grid → bds-grid}/types/enum.d.ts +0 -0
- /package/dist/types/components/layouts/bds-grid/{grid → bds-grid}/types/index.d.ts +0 -0
- /package/dist/types/components/layouts/bds-grid/{grid → bds-grid}/types/types.d.ts +0 -0
- /package/dist/types/components/layouts/bds-grid/{grid-item → bds-grid-item}/bds-grid-item.d.ts +0 -0
- /package/dist/types/components/layouts/bds-grid/{grid-item → bds-grid-item}/types/IGridItem.d.ts +0 -0
- /package/dist/types/components/layouts/bds-grid/{grid-item → bds-grid-item}/types/enum.d.ts +0 -0
- /package/dist/types/components/layouts/bds-grid/{grid-item → bds-grid-item}/types/index.d.ts +0 -0
- /package/dist/types/components/layouts/bds-grid/{grid-item → bds-grid-item}/types/types.d.ts +0 -0
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var index = require('./index-CwYIVC9N.js');
|
|
4
|
+
|
|
5
|
+
const bdsRadioCardCss = () => `@charset "UTF-8";.bds-radio-card--transition{-webkit-transition:background-color 0.3s ease, border-color 0.3s ease, -webkit-box-shadow 0.3s ease;transition:background-color 0.3s ease, border-color 0.3s ease, -webkit-box-shadow 0.3s ease;transition:background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;transition:background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, -webkit-box-shadow 0.3s ease}.bds-radio-card{position:relative;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;cursor:pointer;font-family:var(--boreal-typography-font-family-primary);background-color:var(--boreal-ui-inverse);padding:var(--boreal-spacing-xs) var(--boreal-spacing-s) var(--boreal-spacing-s);border-radius:var(--boreal-radius-xs);border:var(--boreal-spacing-4xs) solid var(--boreal-stroke-default-light)}.bds-radio-card:hover{background-color:var(--boreal-ui-default-lighter);-webkit-box-shadow:var(--boreal-depth-box-shadow-xs);box-shadow:var(--boreal-depth-box-shadow-xs)}.bds-radio-card:focus-within,.bds-radio-card:focus{background-color:var(--boreal-ui-default-lighter);-webkit-box-shadow:var(--boreal-depth-box-shadow-focus);box-shadow:var(--boreal-depth-box-shadow-focus)}.bds-radio-card:focus-visible{outline:none}.bds-radio-card input[type=radio]{position:absolute;opacity:0;width:0;height:0;margin:0;pointer-events:none}.bds-radio-card__container{display:-ms-inline-flexbox;display:inline-flex;gap:var(--boreal-spacing-xs);-ms-flex-align:start;align-items:flex-start}.bds-radio-card__button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0;width:var(--bds-radio-button-size, 18px);height:var(--bds-radio-button-size, 18px);margin-top:var(--boreal-spacing-2xs);border-radius:var(--boreal-radius-full);border:var(--boreal-spacing-4xs) solid var(--boreal-stroke-default-light);background-color:var(--boreal-ui-inverse);-webkit-transition:background-color 0.3s ease, border-color 0.3s ease, -webkit-box-shadow 0.3s ease;transition:background-color 0.3s ease, border-color 0.3s ease, -webkit-box-shadow 0.3s ease;transition:background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;transition:background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, -webkit-box-shadow 0.3s ease}.bds-radio-card__dot{width:var(--bds-radio-dot-size, 10px);height:var(--bds-radio-dot-size, 10px);border-radius:var(--boreal-radius-full);background-color:transparent;-webkit-transition:background-color 0.3s ease, border-color 0.3s ease, -webkit-box-shadow 0.3s ease;transition:background-color 0.3s ease, border-color 0.3s ease, -webkit-box-shadow 0.3s ease;transition:background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;transition:background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, -webkit-box-shadow 0.3s ease}.bds-radio-card__header{display:-ms-inline-flexbox;display:inline-flex;gap:var(--boreal-spacing-3xs);color:var(--boreal-text-default)}.bds-radio-card__title{font-weight:var(--boreal-typography-font-weight-semibold);font-size:var(--boreal-typography-font-size-md);line-height:var(--boreal-typography-line-height-md)}.bds-radio-card__info-icon{font-size:var(--boreal-typography-font-size-xs);color:var(--boreal-icon-default-light)}.bds-radio-card__icon:empty{display:none}.bds-radio-card:has(.bds-radio-card__description:empty) .bds-radio-card__container{-ms-flex-align:center;align-items:center}.bds-radio-card:has(.bds-radio-card__description:empty) .bds-radio-card__content{height:var(--boreal-spacing-l)}.bds-radio-card:has(.bds-radio-card__description:empty) .bds-radio-card__button{margin-top:0}.bds-radio-card--checked{border-color:var(--boreal-stroke-primary-base)}.bds-radio-card--checked:hover,.bds-radio-card--checked:focus,.bds-radio-card--checked:focus-within,.bds-radio-card--checked:active{background-color:var(--boreal-ui-primary-lighter)}.bds-radio-card--checked .bds-radio-card__button{border-color:var(--boreal-stroke-primary-base)}.bds-radio-card--checked .bds-radio-card__dot{background-color:var(--boreal-ui-primary-base)}.bds-radio-card--checked .bds-radio-card__header,.bds-radio-card--checked .bds-radio-card__description{color:var(--boreal-text-primary-base)}.bds-radio-card--disabled{pointer-events:none}.bds-radio-card--disabled .bds-radio-card__header,.bds-radio-card--disabled .bds-radio-card__description{color:var(--boreal-text-disabled)}.bds-radio-card--disabled:not(.bds-radio-card--checked) .bds-radio-card__button{background-color:var(--boreal-ui-disabled)}.bds-radio-card--disabled.bds-radio-card--checked,.bds-radio-card--disabled.bds-radio-card--checked .bds-radio-card__button{border-color:var(--boreal-ui-primary-light)}.bds-radio-card--disabled.bds-radio-card--checked .bds-radio-card__dot{background-color:var(--boreal-ui-primary-light)}.bds-radio-card--disabled.bds-radio-card--checked .bds-radio-card__header,.bds-radio-card--disabled.bds-radio-card--checked .bds-radio-card__description{color:var(--boreal-ui-primary-light)}.bds-radio-card--error{border-color:var(--boreal-stroke-danger-base)}.bds-radio-card--error:hover,.bds-radio-card--error:focus,.bds-radio-card--error:focus-within,.bds-radio-card--error:active{background-color:var(--boreal-ui-danger-lighter)}.bds-radio-card--error .bds-radio-card__header,.bds-radio-card--error .bds-radio-card__description{color:var(--boreal-text-danger-base)}.bds-radio-card--error .bds-radio-card__button{border-color:var(--boreal-stroke-danger-base)}.bds-radio-card--error.bds-radio-card--checked .bds-radio-card__dot{background-color:var(--boreal-ui-danger-base)}`;
|
|
6
|
+
|
|
7
|
+
const BdsRadioCard = class {
|
|
8
|
+
constructor(hostRef) {
|
|
9
|
+
index.registerInstance(this, hostRef);
|
|
10
|
+
this.bdsChange = index.createEvent(this, "bdsChange");
|
|
11
|
+
/**
|
|
12
|
+
* Value submitted with the form when this radio is selected.
|
|
13
|
+
*/
|
|
14
|
+
this.value = 'on';
|
|
15
|
+
/**
|
|
16
|
+
* Tooltip content attached to the radio card content. If empty, the info icon will not be rendered.
|
|
17
|
+
*/
|
|
18
|
+
this.info = '';
|
|
19
|
+
/**
|
|
20
|
+
* Name attribute stamped by the parent bds-radio-group. Set directly when used standalone.
|
|
21
|
+
*/
|
|
22
|
+
this.name = '';
|
|
23
|
+
/**
|
|
24
|
+
* Label text displayed next to the radio indicator. Falls back to the default slot when empty.
|
|
25
|
+
*/
|
|
26
|
+
this.label = '';
|
|
27
|
+
/**
|
|
28
|
+
* Whether this radio card is selected. Managed by bds-radio-group; can be set directly when used standalone.
|
|
29
|
+
*/
|
|
30
|
+
this.checked = false;
|
|
31
|
+
/**
|
|
32
|
+
* Disables the radio card, preventing it from being selected and interacted with.
|
|
33
|
+
*/
|
|
34
|
+
this.disabled = false;
|
|
35
|
+
/**
|
|
36
|
+
* Whether the radio card is in an error state.
|
|
37
|
+
*/
|
|
38
|
+
this.error = false;
|
|
39
|
+
this.handleClick = () => this.select();
|
|
40
|
+
this.handleKeyDown = (event) => {
|
|
41
|
+
if (event.key === ' ') {
|
|
42
|
+
event.preventDefault();
|
|
43
|
+
this.select();
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
select() {
|
|
48
|
+
if (this.disabled || this.checked)
|
|
49
|
+
return;
|
|
50
|
+
this.checked = true;
|
|
51
|
+
this.bdsChange.emit({ checked: true, value: this.value });
|
|
52
|
+
}
|
|
53
|
+
componentDidLoad() {
|
|
54
|
+
requestAnimationFrame(() => {
|
|
55
|
+
this.el.classList.add('bds-radio-card--transition');
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
get isError() {
|
|
59
|
+
return this.error && !this.disabled;
|
|
60
|
+
}
|
|
61
|
+
get hostClasses() {
|
|
62
|
+
return {
|
|
63
|
+
'bds-radio-card': true,
|
|
64
|
+
'bds-radio-card--disabled': this.disabled,
|
|
65
|
+
'bds-radio-card--checked': this.checked,
|
|
66
|
+
'bds-radio-card--error': this.isError,
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
render() {
|
|
70
|
+
return (index.h(index.Host, { key: '731577746499239383ad4ee961cc947398e11dcb', class: this.hostClasses, role: "radio", "aria-checked": `${this.checked}`, "aria-disabled": this.disabled ? 'true' : 'false', "aria-invalid": this.isError ? 'true' : 'false', tabIndex: this.disabled ? -1 : 0, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, index.h("div", { key: 'd35243914c0364136c0a316a444fd09a511072e6', class: "bds-radio-card__container" }, index.h("input", { key: 'd3a05c87dd20bd81799b2f9239deae2489664f39', class: "bds-radio-card__input", type: "radio", name: this.name, value: this.value, checked: this.checked, disabled: this.disabled, tabIndex: -1, onFocus: () => this.el.focus() }), index.h("span", { key: '5fe503bdaf293f0385314b9bdda22118bba66b5d', class: "bds-radio-card__button" }, index.h("span", { key: 'cfbfee8d72258a6e5e462499737d20f21ac25cdb', class: "bds-radio-card__dot" })), index.h("div", { key: '988d2d636e09b2683a7cb475eaaf95295dc49966', class: "bds-radio-card__content" }, index.h("div", { key: '618afb1a448ee6b2ce1d2affc525dc00ea2974e4', class: "bds-radio-card__header" }, index.h("div", { key: 'bf34a2ed964c1a30d1c306ad6d3bc059de8cd4d3', class: "bds-radio-card__icon" }, index.h("slot", { key: 'd4429397ec53ee30ff38144297987aa606a883c8', name: "icon" })), index.h("div", { key: 'c34ec3aa8d7ba68b46394ea041d90a2805d0d00f', class: "bds-radio-card__title" }, this.label || index.h("slot", { key: 'd55874f8542acafdc6164b8012057e039ebfc0eb' }))), index.h("bds-typography", { key: '569dfe9079fc9b7f5cba562cd0d7d68ba738f713', variant: "helper" }, index.h("slot", { key: 'bc0e69fba40b230195be2f93f35fee162cc629ce', name: "description" })))), this.info && (index.h("span", { key: 'c90eab4eead6352f51bb6036cdff56d4241d1dda', class: "bds-radio-card__info-icon", "aria-label": this.info }, index.h("em", { key: '850a2ae5521eb2d8e3c01a5bd1ad19d3bb87e73c', class: "bds-icon-info-circle" }, index.h("bds-tooltip", { key: '188e3c5950d7a68b3e068bf6361e07850fdc907d' }, this.info))))));
|
|
71
|
+
}
|
|
72
|
+
get el() { return index.getElement(this); }
|
|
73
|
+
};
|
|
74
|
+
BdsRadioCard.style = bdsRadioCardCss();
|
|
75
|
+
|
|
76
|
+
exports.bds_radio_card = BdsRadioCard;
|
|
@@ -0,0 +1,291 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var index = require('./index-CwYIVC9N.js');
|
|
4
|
+
var formAssociated_mixin = require('./form-associated.mixin-BCR6bj29.js');
|
|
5
|
+
var orientation = require('./orientation-DQAIleEJ.js');
|
|
6
|
+
var Keys = require('./Keys-DXn16dlA.js');
|
|
7
|
+
var BaseAttributes = require('./BaseAttributes-DBBhKt7O.js');
|
|
8
|
+
var validateProps = require('./validateProps-CJe9X5x8.js');
|
|
9
|
+
|
|
10
|
+
const bdsRadioGroupCss = () => `@charset "UTF-8";.bds-radio-group{--bds-divider-gap:var(--boreal-spacing-3xs);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:var(--boreal-spacing-2xs)}.bds-radio-group__options{display:grid;grid-template-columns:1fr;gap:var(--boreal-spacing-xs)}.bds-radio-group[orientation=horizontal] .bds-radio-group__options{grid-template-columns:repeat(var(--layout-count, 1), auto);-ms-flex-pack:start;justify-content:start}.bds-radio-group[type=radiobutton] .bds-radio-group__options{display:-ms-inline-flexbox;display:inline-flex;gap:0;padding:var(--boreal-spacing-3xs);border:1px solid var(--boreal-stroke-default-light);background-color:var(--boreal-ui-inverse);border-radius:var(--boreal-radius-xs);overflow:hidden}.bds-radio-group[type=radiobutton][orientation=vertical] .bds-radio-group__options{-ms-flex-direction:column;flex-direction:column}.bds-radio-group[type=radiobutton].bds-radio-group--error .bds-radio-group__options{border-color:var(--boreal-stroke-danger-base)}.bds-radio-group[type=radiobutton].bds-radio-group--error bds-radio-button.bds-radio-button--error{color:var(--boreal-stroke-danger-base)}.bds-radio-group[type=radiobutton].bds-radio-group--error bds-divider[data-injected]{--bds-divider-color:var(--boreal-stroke-danger-base)}`;
|
|
11
|
+
|
|
12
|
+
const LEAF_TAGS = ['BDS-RADIO', 'BDS-RADIO-BUTTON', 'BDS-RADIO-CARD'];
|
|
13
|
+
const BdsRadioGroup = class extends index.Mixin(formAssociated_mixin.formAssociatedMixin) {
|
|
14
|
+
constructor(hostRef) {
|
|
15
|
+
super();
|
|
16
|
+
index.registerInstance(this, hostRef);
|
|
17
|
+
this.bdsChange = index.createEvent(this, "bdsChange");
|
|
18
|
+
this.valueChange = index.createEvent(this, "valueChange");
|
|
19
|
+
if (hostRef.$hostElement$["s-ei"]) {
|
|
20
|
+
this.internals = hostRef.$hostElement$["s-ei"];
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
this.internals = hostRef.$hostElement$.attachInternals();
|
|
24
|
+
hostRef.$hostElement$["s-ei"] = this.internals;
|
|
25
|
+
}
|
|
26
|
+
this._id = BaseAttributes.createId('bds-radio-group');
|
|
27
|
+
/** Internal mirror of the `disabled` prop, kept in sync via `@Watch` and `formDisabledCallback`. */
|
|
28
|
+
this.isDisabled = false;
|
|
29
|
+
/** Set to true when native form validation fires the `invalid` event; cleared on reset or when value becomes valid. */
|
|
30
|
+
this.isInvalid = false;
|
|
31
|
+
/** Disables all child radios and prevents selection. Also mirrored to isDisabled @State for form-level disable support. */
|
|
32
|
+
this.disabled = false;
|
|
33
|
+
/** Shows error styling on the group helper text. Propagated to all child radios. */
|
|
34
|
+
this.error = false;
|
|
35
|
+
/** Error message rendered below the radio options when error is true. Replaces helperText. */
|
|
36
|
+
this.errorMessage = '';
|
|
37
|
+
/** Helper text rendered below the radio options. Shown in default state; replaced by errorMessage in error state. */
|
|
38
|
+
this.helperText = '';
|
|
39
|
+
/** Tooltip text shown on the group label info icon. */
|
|
40
|
+
this.info = '';
|
|
41
|
+
/** Group label rendered above the radio options. */
|
|
42
|
+
this.label = '';
|
|
43
|
+
/** Layout direction of the radio options. */
|
|
44
|
+
this.orientation = 'vertical';
|
|
45
|
+
/** Marks the group as required for form submission. Triggers validity error when no radio is selected. */
|
|
46
|
+
this.required = false;
|
|
47
|
+
/** Identifies this group variant. 'radio' renders circular bds-radio children; 'radiobutton' renders bds-radio-button segmented control; 'radiocard' renders bds-radio-card element. */
|
|
48
|
+
this.type = 'radio';
|
|
49
|
+
/** Currently selected radio value. Synced to children on change. */
|
|
50
|
+
this.value = '';
|
|
51
|
+
/** Hides the divider between radio buttons when type is 'radiobutton'. */
|
|
52
|
+
this.joined = false;
|
|
53
|
+
this.handleKeyDown = (event) => {
|
|
54
|
+
const target = event.target;
|
|
55
|
+
if (!LEAF_TAGS.includes(target.tagName))
|
|
56
|
+
return;
|
|
57
|
+
switch (event.key) {
|
|
58
|
+
case Keys.KEYBOARD.ArrowDown:
|
|
59
|
+
case Keys.KEYBOARD.ArrowRight:
|
|
60
|
+
this.navigateTo(target, true);
|
|
61
|
+
event.preventDefault();
|
|
62
|
+
break;
|
|
63
|
+
case Keys.KEYBOARD.ArrowUp:
|
|
64
|
+
case Keys.KEYBOARD.ArrowLeft:
|
|
65
|
+
this.navigateTo(target, false);
|
|
66
|
+
event.preventDefault();
|
|
67
|
+
break;
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
this.handleSlotChange = () => {
|
|
71
|
+
this.updateLayoutCount();
|
|
72
|
+
};
|
|
73
|
+
this._buttonCount = 0;
|
|
74
|
+
}
|
|
75
|
+
onJoinedChange() {
|
|
76
|
+
this.insertDividers();
|
|
77
|
+
}
|
|
78
|
+
checkPropValues() {
|
|
79
|
+
validateProps.validatePropValue(Object.values(orientation.ORIENTATIONS), orientation.ORIENTATIONS.VERTICAL, this.el, 'orientation');
|
|
80
|
+
this.insertDividers();
|
|
81
|
+
}
|
|
82
|
+
onDisabledChange(next) {
|
|
83
|
+
this.isDisabled = next;
|
|
84
|
+
this.radioElements.forEach(el => (el.disabled = next));
|
|
85
|
+
}
|
|
86
|
+
onErrorChange(val) {
|
|
87
|
+
this.radioElements.forEach(el => (el.error = val));
|
|
88
|
+
}
|
|
89
|
+
onValueChange(val) {
|
|
90
|
+
this.radioElements.forEach(el => {
|
|
91
|
+
el.checked = el.value === val;
|
|
92
|
+
el.setAttribute('aria-checked', String(el.value === val));
|
|
93
|
+
});
|
|
94
|
+
const checked = this.radioElements.find(el => el.checked);
|
|
95
|
+
this.updateTabIndexes(checked ?? null);
|
|
96
|
+
}
|
|
97
|
+
componentWillLoad() {
|
|
98
|
+
this.checkPropValues();
|
|
99
|
+
this.isDisabled = this.disabled;
|
|
100
|
+
if (this.value === '') {
|
|
101
|
+
const lastChecked = Array.from(this.el.querySelectorAll('bds-radio[checked], bds-radio-button[checked], bds-radio-card[checked]')).at(-1);
|
|
102
|
+
if (lastChecked !== undefined) {
|
|
103
|
+
this.value = lastChecked.getAttribute('value') ?? '';
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
componentDidLoad() {
|
|
108
|
+
const checkedChildren = this.radioElements.filter(el => el.checked);
|
|
109
|
+
if (checkedChildren.length > 1) {
|
|
110
|
+
checkedChildren.slice(0, -1).forEach(el => (el.checked = false));
|
|
111
|
+
}
|
|
112
|
+
this.onValueChange(this.value);
|
|
113
|
+
if (this.error)
|
|
114
|
+
this.radioElements.forEach(el => (el.error = true));
|
|
115
|
+
this.updateLayoutCount();
|
|
116
|
+
this.updateTabIndexes(this.radioElements.find(el => el.checked) ?? this.radioElements.find(el => !el.disabled) ?? null);
|
|
117
|
+
this.updateFormValidity();
|
|
118
|
+
}
|
|
119
|
+
formAssociatedCallback() {
|
|
120
|
+
this.syncFormValue();
|
|
121
|
+
}
|
|
122
|
+
formResetCallback() {
|
|
123
|
+
this.value = '';
|
|
124
|
+
this.isInvalid = false;
|
|
125
|
+
this.radioElements.forEach(radio => {
|
|
126
|
+
radio.checked = false;
|
|
127
|
+
radio.setAttribute('aria-checked', 'false');
|
|
128
|
+
if (!this.error)
|
|
129
|
+
radio.error = false;
|
|
130
|
+
});
|
|
131
|
+
this.internals.setFormValue(null);
|
|
132
|
+
this.updateFormValidity();
|
|
133
|
+
const first = this.radioElements.find(el => !el.disabled);
|
|
134
|
+
this.updateTabIndexes(first ?? null);
|
|
135
|
+
}
|
|
136
|
+
formStateRestoreCallback(state, _mode) {
|
|
137
|
+
const val = typeof state === 'string' ? state : '';
|
|
138
|
+
this.value = val;
|
|
139
|
+
this.internals.setFormValue(val !== '' ? val : null);
|
|
140
|
+
}
|
|
141
|
+
formDisabledCallback(disabled) {
|
|
142
|
+
this.isDisabled = disabled;
|
|
143
|
+
this.radioElements.forEach(el => (el.disabled = disabled));
|
|
144
|
+
}
|
|
145
|
+
handleRadioChange(event) {
|
|
146
|
+
const target = event.target;
|
|
147
|
+
if (!LEAF_TAGS.includes(target.tagName))
|
|
148
|
+
return;
|
|
149
|
+
this.radioElements
|
|
150
|
+
.filter(el => el !== target)
|
|
151
|
+
.forEach(el => {
|
|
152
|
+
el.checked = false;
|
|
153
|
+
el.setAttribute('aria-checked', 'false');
|
|
154
|
+
});
|
|
155
|
+
this.value = event.detail.value;
|
|
156
|
+
this.internals.setFormValue(this.value);
|
|
157
|
+
this.updateTabIndexes(target);
|
|
158
|
+
this.updateFormValidity();
|
|
159
|
+
this.bdsChange.emit({ value: this.value });
|
|
160
|
+
this.valueChange.emit(this.value);
|
|
161
|
+
}
|
|
162
|
+
handleInvalid(event) {
|
|
163
|
+
if (this.errorMessage !== '') {
|
|
164
|
+
event.preventDefault();
|
|
165
|
+
this.isInvalid = true;
|
|
166
|
+
this.radioElements.forEach(el => (el.error = true));
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
/** Returns whether the group's current value satisfies the browser's built-in constraint validation. */
|
|
170
|
+
async checkValidity() {
|
|
171
|
+
return this.internals.checkValidity();
|
|
172
|
+
}
|
|
173
|
+
/** Reports the group's validity state to the user, showing native validation UI if invalid. */
|
|
174
|
+
async reportValidity() {
|
|
175
|
+
return this.internals.reportValidity();
|
|
176
|
+
}
|
|
177
|
+
navigateTo(current, forward) {
|
|
178
|
+
const elements = this.radioElements.filter(el => !el.disabled);
|
|
179
|
+
if (elements.length === 0)
|
|
180
|
+
return;
|
|
181
|
+
const idx = elements.indexOf(current);
|
|
182
|
+
const newIndex = (elements.length + idx + (forward ? 1 : -1)) % elements.length;
|
|
183
|
+
const next = elements[newIndex];
|
|
184
|
+
next.checked = true;
|
|
185
|
+
next.setAttribute('aria-checked', 'true');
|
|
186
|
+
this.radioElements
|
|
187
|
+
.filter(el => el !== next)
|
|
188
|
+
.forEach(el => {
|
|
189
|
+
el.checked = false;
|
|
190
|
+
el.setAttribute('aria-checked', 'false');
|
|
191
|
+
});
|
|
192
|
+
this.value = next.value;
|
|
193
|
+
this.internals.setFormValue(this.value);
|
|
194
|
+
this.updateTabIndexes(next);
|
|
195
|
+
this.updateFormValidity();
|
|
196
|
+
this.bdsChange.emit({ value: this.value });
|
|
197
|
+
this.valueChange.emit(this.value);
|
|
198
|
+
next.focus();
|
|
199
|
+
}
|
|
200
|
+
insertDividers() {
|
|
201
|
+
this.el.querySelectorAll('bds-divider[data-injected]').forEach(d => d.remove());
|
|
202
|
+
if (this.type !== 'radiobutton' || this.joined)
|
|
203
|
+
return;
|
|
204
|
+
const dividerOrientation = this.orientation === orientation.ORIENTATIONS.HORIZONTAL ? orientation.ORIENTATIONS.VERTICAL : orientation.ORIENTATIONS.HORIZONTAL;
|
|
205
|
+
const buttons = this.radioElements.filter((el) => el.tagName === 'BDS-RADIO-BUTTON');
|
|
206
|
+
buttons.forEach((btn, i) => {
|
|
207
|
+
if (i === 0)
|
|
208
|
+
return;
|
|
209
|
+
const divider = document.createElement('bds-divider');
|
|
210
|
+
divider.setAttribute('orientation', dividerOrientation);
|
|
211
|
+
divider.setAttribute('data-injected', '');
|
|
212
|
+
btn.parentNode?.insertBefore(divider, btn);
|
|
213
|
+
});
|
|
214
|
+
}
|
|
215
|
+
get radioElements() {
|
|
216
|
+
return Array.from(this.el.querySelectorAll('bds-radio, bds-radio-button, bds-radio-card'));
|
|
217
|
+
}
|
|
218
|
+
syncFormValue() {
|
|
219
|
+
this.internals.setFormValue(this.value !== '' ? this.value : null);
|
|
220
|
+
this.updateFormValidity();
|
|
221
|
+
}
|
|
222
|
+
updateFormValidity() {
|
|
223
|
+
if (this.required && this.value === '') {
|
|
224
|
+
const anchor = this.radioElements.find(el => !el.disabled);
|
|
225
|
+
this.internals.setValidity({ valueMissing: true }, this.errorMessage !== '' ? this.errorMessage : 'Please select an option.', anchor);
|
|
226
|
+
}
|
|
227
|
+
else {
|
|
228
|
+
this.internals.setValidity({});
|
|
229
|
+
if (this.isInvalid) {
|
|
230
|
+
this.isInvalid = false;
|
|
231
|
+
if (!this.error)
|
|
232
|
+
this.radioElements.forEach(el => (el.error = false));
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
updateLayoutCount() {
|
|
237
|
+
const count = this.radioElements.length;
|
|
238
|
+
this.el.style.setProperty('--layout-count', `${count}`);
|
|
239
|
+
if (count !== this._buttonCount) {
|
|
240
|
+
this._buttonCount = count;
|
|
241
|
+
this.insertDividers();
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
updateTabIndexes(active) {
|
|
245
|
+
this.radioElements.forEach(el => el.setAttribute('tabindex', '-1'));
|
|
246
|
+
if (active !== null)
|
|
247
|
+
active.setAttribute('tabindex', '0');
|
|
248
|
+
}
|
|
249
|
+
get isError() {
|
|
250
|
+
const error = this.error && !this.disabled;
|
|
251
|
+
return error || this.isInvalid;
|
|
252
|
+
}
|
|
253
|
+
get classMap() {
|
|
254
|
+
return {
|
|
255
|
+
'bds-radio-group': true,
|
|
256
|
+
'bds-radio-group--disabled': this.isDisabled,
|
|
257
|
+
'bds-radio-group--error': this.isError,
|
|
258
|
+
'bds-radio-group--required': this.required,
|
|
259
|
+
};
|
|
260
|
+
}
|
|
261
|
+
render() {
|
|
262
|
+
const labelId = `${this._id}-label`;
|
|
263
|
+
const helperId = `${this._id}-helper`;
|
|
264
|
+
const showError = this.isError;
|
|
265
|
+
const typographyState = this.isDisabled ? 'disabled' : showError ? 'error' : 'default';
|
|
266
|
+
const helperContent = showError && this.errorMessage !== '' ? this.errorMessage : this.helperText;
|
|
267
|
+
return (index.h(index.Host, { key: '983eacc6649cdca62de5a73780c3ca0eb8e26879', class: this.classMap, role: "radiogroup", "aria-labelledby": this.label !== '' ? labelId : undefined, "aria-describedby": helperContent !== '' ? helperId : undefined, "aria-invalid": showError ? 'true' : undefined, "aria-required": this.required ? 'true' : undefined, onKeyDown: this.handleKeyDown }, this.label && (index.h("bds-typography", { key: '80461fca6630261b13198a69185cf92dda18704f', id: labelId, variant: "label", state: typographyState, required: this.required, tooltipText: this.info !== '' ? this.info : undefined }, this.label)), index.h("div", { key: '6fda8a3d053c9b3998177d29b8dc593c1d21f5cf', class: "bds-radio-group__options" }, index.h("slot", { key: '5d8a8a9d040b862173ea8d43e34c260377114f58', onSlotchange: this.handleSlotChange })), helperContent && (index.h("bds-typography", { key: '31bd0d32d0e72e12be4ff04677ab99b3a7139fd0', id: helperId, variant: "helper", state: typographyState }, helperContent))));
|
|
268
|
+
}
|
|
269
|
+
static get formAssociated() { return true; }
|
|
270
|
+
get el() { return index.getElement(this); }
|
|
271
|
+
static get watchers() { return {
|
|
272
|
+
"joined": [{
|
|
273
|
+
"onJoinedChange": 0
|
|
274
|
+
}],
|
|
275
|
+
"orientation": [{
|
|
276
|
+
"checkPropValues": 0
|
|
277
|
+
}],
|
|
278
|
+
"disabled": [{
|
|
279
|
+
"onDisabledChange": 0
|
|
280
|
+
}],
|
|
281
|
+
"error": [{
|
|
282
|
+
"onErrorChange": 0
|
|
283
|
+
}],
|
|
284
|
+
"value": [{
|
|
285
|
+
"onValueChange": 0
|
|
286
|
+
}]
|
|
287
|
+
}; }
|
|
288
|
+
};
|
|
289
|
+
BdsRadioGroup.style = bdsRadioGroupCss();
|
|
290
|
+
|
|
291
|
+
exports.bds_radio_group = BdsRadioGroup;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var index = require('./index-CwYIVC9N.js');
|
|
4
|
+
|
|
5
|
+
const bdsRadioCss = () => `@charset "UTF-8";.bds-radio__content,.bds-radio__icon{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.bds-radio__info{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center}.bds-radio{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;gap:var(--boreal-spacing-2xs);cursor:pointer;outline:none}.bds-radio input[type=radio]{position:absolute;opacity:0;width:0;height:0;margin:0;pointer-events:none}.bds-radio__content{gap:var(--boreal-spacing-3xs)}.bds-radio__icon{-ms-flex-negative:0;flex-shrink:0;line-height:1}.bds-radio__label{font-family:var(--boreal-typography-font-family-primary);font-size:var(--boreal-typography-font-size-sm);font-weight:var(--boreal-typography-font-weight-regular);line-height:var(--boreal-typography-line-height-sm);color:var(--boreal-text-default)}.bds-radio__button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0;width:18px;height:18px;border-radius:var(--boreal-radius-full);border:1px solid var(--boreal-stroke-default-light);background-color:var(--boreal-ui-inverse);-webkit-transition:background-color 0.3s ease, border-color 0.3s ease, -webkit-box-shadow 0.3s ease;transition:background-color 0.3s ease, border-color 0.3s ease, -webkit-box-shadow 0.3s ease;transition:background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;transition:background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, -webkit-box-shadow 0.3s ease}.bds-radio__dot{width:10px;height:10px;border-radius:var(--boreal-radius-full);background-color:transparent;-webkit-transition:background-color 0.3s ease, border-color 0.3s ease, -webkit-box-shadow 0.3s ease;transition:background-color 0.3s ease, border-color 0.3s ease, -webkit-box-shadow 0.3s ease;transition:background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;transition:background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, -webkit-box-shadow 0.3s ease}.bds-radio__info-icon{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;font-size:var(--boreal-typography-font-size-sm);line-height:1;color:var(--boreal-icon-default-ink)}.bds-radio:hover:not(.bds-radio--disabled):not(.bds-radio--checked) .bds-radio__button{border-color:var(--boreal-stroke-default-light);-webkit-box-shadow:var(--boreal-depth-box-shadow-xs);box-shadow:var(--boreal-depth-box-shadow-xs)}.bds-radio:hover:not(.bds-radio--disabled):not(.bds-radio--checked) .bds-radio__dot{background-color:var(--boreal-ui-base-light)}.bds-radio:is(:focus-visible,:focus) .bds-radio__button{-webkit-box-shadow:var(--boreal-depth-box-shadow-focus);box-shadow:var(--boreal-depth-box-shadow-focus)}.bds-radio:active:not(.bds-radio--disabled):not(.bds-radio--checked) .bds-radio__button{-webkit-box-shadow:var(--boreal-depth-box-shadow-active);box-shadow:var(--boreal-depth-box-shadow-active)}.bds-radio--checked .bds-radio__button{border-color:var(--boreal-stroke-primary-base)}.bds-radio--checked .bds-radio__dot{background-color:var(--boreal-ui-primary-base)}.bds-radio--error .bds-radio__button{border-color:var(--boreal-stroke-danger-base)}.bds-radio--disabled{cursor:not-allowed;pointer-events:none}.bds-radio--disabled .bds-radio__button{border-color:var(--boreal-stroke-default-light);background-color:var(--boreal-ui-disabled)}.bds-radio--disabled .bds-radio__label{color:var(--boreal-text-disabled)}.bds-radio--disabled.bds-radio--checked .bds-radio__button{border-color:var(--boreal-ui-primary-light)}.bds-radio--disabled.bds-radio--checked .bds-radio__dot{background-color:var(--boreal-ui-primary-light)}`;
|
|
6
|
+
|
|
7
|
+
const BdsRadio = class {
|
|
8
|
+
constructor(hostRef) {
|
|
9
|
+
index.registerInstance(this, hostRef);
|
|
10
|
+
this.bdsChange = index.createEvent(this, "bdsChange");
|
|
11
|
+
/** Whether this radio is selected. Managed by bds-radio-group; can be set directly when used standalone. */
|
|
12
|
+
this.checked = false;
|
|
13
|
+
/** Disables the radio, preventing interaction and selection. */
|
|
14
|
+
this.disabled = false;
|
|
15
|
+
/** Value submitted with the form when this radio is selected. */
|
|
16
|
+
this.value = 'on';
|
|
17
|
+
/** Name attribute stamped by the parent bds-radio-group via setAttribute. Set directly when used standalone. */
|
|
18
|
+
this.name = '';
|
|
19
|
+
/** Label text displayed next to the radio indicator. Falls back to the default slot when empty. */
|
|
20
|
+
this.label = '';
|
|
21
|
+
/** Shows error styling on the radio indicator. Propagated by bds-radio-group. */
|
|
22
|
+
this.error = false;
|
|
23
|
+
/** Tooltip text shown on an info icon next to the label. */
|
|
24
|
+
this.info = '';
|
|
25
|
+
this.handleClick = () => this.select();
|
|
26
|
+
this.handleKeyDown = (event) => {
|
|
27
|
+
if (event.key === ' ') {
|
|
28
|
+
event.preventDefault();
|
|
29
|
+
this.select();
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
componentDidLoad() {
|
|
34
|
+
this.el.setAttribute('role', 'radio');
|
|
35
|
+
this.el.setAttribute('aria-checked', String(this.checked));
|
|
36
|
+
this.el.setAttribute('tabindex', '-1');
|
|
37
|
+
}
|
|
38
|
+
select() {
|
|
39
|
+
if (this.disabled || this.checked)
|
|
40
|
+
return;
|
|
41
|
+
this.checked = true;
|
|
42
|
+
this.el.setAttribute('aria-checked', 'true');
|
|
43
|
+
this.bdsChange.emit({ checked: true, value: this.value });
|
|
44
|
+
}
|
|
45
|
+
get classMap() {
|
|
46
|
+
return {
|
|
47
|
+
'bds-radio': true,
|
|
48
|
+
'bds-radio--checked': this.checked,
|
|
49
|
+
'bds-radio--error': this.error,
|
|
50
|
+
'bds-radio--disabled': this.disabled,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
render() {
|
|
54
|
+
return (index.h(index.Host, { key: '460a06887759af9d8ff04be3b76e93c48a6e59f6', class: this.classMap, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, index.h("input", { key: '10e93de9010a5002d4a6605ef35f3a5273f20dc2', type: "radio", name: this.name, value: this.value, checked: this.checked, disabled: this.disabled, "aria-hidden": "true", tabIndex: -1, onFocus: () => this.el.focus() }), index.h("span", { key: 'e660d053bec4d6fb7a134230aad1317c1cc839cd', class: "bds-radio__button" }, index.h("span", { key: '2a983b9b97396c9d0f0485e7b00309292c398cd6', class: "bds-radio__dot" })), index.h("span", { key: 'e616d473595a3efd5f01f2896d8481d91c9195ac', class: "bds-radio__content" }, index.h("span", { key: '50e7006d945aad95fb2c01d7beae98672e5fc532', class: "bds-radio__icon" }, index.h("slot", { key: 'd2f2018dbc9cb25e996b33be2fbfab3b96c84f14', name: "icon" })), index.h("span", { key: 'b39791291a81d307dae7f45b4d764695d34d8f8f', class: "bds-radio__label" }, this.label || index.h("slot", { key: '1aef7b131da161b51afb52383913d5187332352f' })), this.info && (index.h("span", { key: '943d3e05512fab78db5700d5c1527c3db9eeb272', class: "bds-radio__info" }, index.h("span", { key: 'd2a2a78eac436334545013539f8410c73ed06b2e', class: "bds-radio__info-icon bds-icon-info-circle", "aria-hidden": "true" }), index.h("bds-tooltip", { key: 'f6add279f359fde8c9727219a6126b776c755eff' }, this.info))))));
|
|
55
|
+
}
|
|
56
|
+
get el() { return index.getElement(this); }
|
|
57
|
+
};
|
|
58
|
+
BdsRadio.style = bdsRadioCss();
|
|
59
|
+
|
|
60
|
+
exports.bds_radio = BdsRadio;
|