bromcom-ui-next 0.1.5 → 0.1.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/dist/bromcom-ui/bromcom-ui.css +1 -1
- package/dist/bromcom-ui/bromcom-ui.esm.js +1 -1
- package/dist/bromcom-ui/bromcom-ui.esm.js.map +1 -1
- package/dist/bromcom-ui/p-0d0d6483.entry.js +2 -0
- package/dist/bromcom-ui/{p-e08b23ff.entry.js.map → p-0d0d6483.entry.js.map} +1 -1
- package/dist/bromcom-ui/p-13784cd7.entry.js +2 -0
- package/dist/bromcom-ui/p-13784cd7.entry.js.map +1 -0
- package/dist/bromcom-ui/p-13a245f6.js +2 -0
- package/dist/bromcom-ui/p-13a245f6.js.map +1 -0
- package/dist/bromcom-ui/p-25038cc8.entry.js +2 -0
- package/dist/bromcom-ui/p-25038cc8.entry.js.map +1 -0
- package/dist/bromcom-ui/p-308f865b.entry.js +2 -0
- package/dist/bromcom-ui/p-308f865b.entry.js.map +1 -0
- package/dist/bromcom-ui/{p-f0ece968.entry.js → p-385fa0f3.entry.js} +2 -2
- package/dist/bromcom-ui/p-389f1976.entry.js +2 -0
- package/dist/bromcom-ui/p-389f1976.entry.js.map +1 -0
- package/dist/bromcom-ui/p-3b230145.entry.js +2 -0
- package/dist/bromcom-ui/p-3b230145.entry.js.map +1 -0
- package/dist/bromcom-ui/p-49b0e982.entry.js +2 -0
- package/dist/bromcom-ui/p-49b0e982.entry.js.map +1 -0
- package/dist/bromcom-ui/p-55c4263c.entry.js +2 -0
- package/dist/bromcom-ui/p-55c4263c.entry.js.map +1 -0
- package/dist/bromcom-ui/{p-f9eeafa7.entry.js → p-58ee24a8.entry.js} +2 -2
- package/dist/bromcom-ui/p-729a870f.js.map +1 -1
- package/dist/bromcom-ui/p-9551c35e.entry.js +2 -0
- package/dist/bromcom-ui/p-9551c35e.entry.js.map +1 -0
- package/dist/bromcom-ui/p-9594cebb.js +2 -0
- package/dist/bromcom-ui/p-9594cebb.js.map +1 -0
- package/dist/bromcom-ui/p-98c76392.entry.js +2 -0
- package/dist/bromcom-ui/p-98c76392.entry.js.map +1 -0
- package/dist/bromcom-ui/p-a29e61a4.entry.js +2 -0
- package/dist/bromcom-ui/{p-7a1bf6a6.entry.js.map → p-a29e61a4.entry.js.map} +1 -1
- package/dist/bromcom-ui/p-ba2410ef.js +2 -0
- package/dist/bromcom-ui/p-ba2410ef.js.map +1 -0
- package/dist/bromcom-ui/p-bd0f7e78.entry.js +2 -0
- package/dist/bromcom-ui/p-bd0f7e78.entry.js.map +1 -0
- package/dist/bromcom-ui/p-bf69fc8a.entry.js +2 -0
- package/dist/bromcom-ui/p-bf69fc8a.entry.js.map +1 -0
- package/dist/bromcom-ui/{p-5bee2e76.entry.js → p-c1161950.entry.js} +2 -2
- package/dist/bromcom-ui/p-c2b3945e.entry.js +2 -0
- package/dist/bromcom-ui/p-c2b3945e.entry.js.map +1 -0
- package/dist/bromcom-ui/{p-53f21d16.entry.js → p-c427ffee.entry.js} +2 -2
- package/dist/bromcom-ui/p-c444235a.entry.js +2 -0
- package/dist/bromcom-ui/{p-63cb0933.entry.js.map → p-c444235a.entry.js.map} +1 -1
- package/dist/bromcom-ui/p-c995a48c.entry.js +2 -0
- package/dist/bromcom-ui/p-c995a48c.entry.js.map +1 -0
- package/dist/bromcom-ui/p-c9b736d9.js +3 -0
- package/dist/{cjs/index-4795c073.js.map → bromcom-ui/p-c9b736d9.js.map} +1 -1
- package/dist/bromcom-ui/p-cd271b49.entry.js +2 -0
- package/dist/bromcom-ui/p-cd271b49.entry.js.map +1 -0
- package/dist/bromcom-ui/p-cee68279.entry.js +2 -0
- package/dist/bromcom-ui/{p-2bbd3c52.entry.js.map → p-cee68279.entry.js.map} +1 -1
- package/dist/bromcom-ui/{p-6abaf96f.entry.js → p-d57587e5.entry.js} +2 -2
- package/dist/bromcom-ui/p-e89ab4a7.entry.js +2 -0
- package/dist/bromcom-ui/p-e89ab4a7.entry.js.map +1 -0
- package/dist/bromcom-ui/{p-4f402148.entry.js → p-f2d8aa70.entry.js} +2 -2
- package/dist/bromcom-ui/p-f4e8a47d.entry.js +2 -0
- package/dist/bromcom-ui/p-f4e8a47d.entry.js.map +1 -0
- package/dist/cjs/app-globals-29edfda4.js.map +1 -1
- package/dist/cjs/bcm-accordion-group.cjs.entry.js +1 -1
- package/dist/cjs/bcm-accordion.cjs.entry.js +1 -1
- package/dist/cjs/bcm-alert.cjs.entry.js +1 -1
- package/dist/cjs/bcm-avatar_4.cjs.entry.js +12 -6
- package/dist/cjs/bcm-avatar_4.cjs.entry.js.map +1 -1
- package/dist/cjs/bcm-button-group.cjs.entry.js +97 -0
- package/dist/cjs/bcm-button-group.cjs.entry.js.map +1 -0
- package/dist/cjs/bcm-checkbox.cjs.entry.js +226 -0
- package/dist/cjs/bcm-checkbox.cjs.entry.js.map +1 -0
- package/dist/cjs/bcm-chip.cjs.entry.js +2 -2
- package/dist/cjs/bcm-divider.cjs.entry.js +2 -2
- package/dist/cjs/bcm-dropdown-item.cjs.entry.js +3 -3
- package/dist/cjs/bcm-dropdown.cjs.entry.js +3 -3
- package/dist/cjs/bcm-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/bcm-input.cjs.entry.js +7 -6
- package/dist/cjs/bcm-input.cjs.entry.js.map +1 -1
- package/dist/cjs/bcm-linked.cjs.entry.js +9 -1899
- package/dist/cjs/bcm-linked.cjs.entry.js.map +1 -1
- package/dist/cjs/bcm-pop-confirm.cjs.entry.js +252 -0
- package/dist/cjs/bcm-pop-confirm.cjs.entry.js.map +1 -0
- package/dist/cjs/bcm-popover.cjs.entry.js +191 -0
- package/dist/cjs/bcm-popover.cjs.entry.js.map +1 -0
- package/dist/cjs/bcm-radio-group.cjs.entry.js +171 -0
- package/dist/cjs/bcm-radio-group.cjs.entry.js.map +1 -0
- package/dist/cjs/bcm-radio.cjs.entry.js +173 -0
- package/dist/cjs/bcm-radio.cjs.entry.js.map +1 -0
- package/dist/cjs/bcm-segmented-picker-option.cjs.entry.js +109 -0
- package/dist/cjs/bcm-segmented-picker-option.cjs.entry.js.map +1 -0
- package/dist/cjs/bcm-segmented-picker.cjs.entry.js +146 -0
- package/dist/cjs/bcm-segmented-picker.cjs.entry.js.map +1 -0
- package/dist/cjs/bcm-switch.cjs.entry.js +188 -0
- package/dist/cjs/bcm-switch.cjs.entry.js.map +1 -0
- package/dist/cjs/bcm-tabs-content.cjs.entry.js +22 -0
- package/dist/cjs/bcm-tabs-content.cjs.entry.js.map +1 -0
- package/dist/cjs/bcm-tabs-list.cjs.entry.js +43 -0
- package/dist/cjs/bcm-tabs-list.cjs.entry.js.map +1 -0
- package/dist/cjs/bcm-tabs-trigger.cjs.entry.js +92 -0
- package/dist/cjs/bcm-tabs-trigger.cjs.entry.js.map +1 -0
- package/dist/cjs/bcm-tabs.cjs.entry.js +211 -0
- package/dist/cjs/bcm-tabs.cjs.entry.js.map +1 -0
- package/dist/cjs/bcm-text.cjs.entry.js +2 -2
- package/dist/cjs/bcm-textarea.cjs.entry.js +8 -7
- package/dist/cjs/bcm-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/bcm-tooltip.cjs.entry.js +187 -0
- package/dist/cjs/bcm-tooltip.cjs.entry.js.map +1 -0
- package/dist/cjs/bromcom-ui.cjs.js +2 -2
- package/dist/cjs/floating-ui.dom.esm-3ec8404c.js +2085 -0
- package/dist/cjs/floating-ui.dom.esm-3ec8404c.js.map +1 -0
- package/dist/{components/p-31354aaa.js → cjs/generate-id-f6982042.js} +4 -47
- package/dist/cjs/generate-id-f6982042.js.map +1 -0
- package/dist/cjs/{index-4795c073.js → index-9a2c5938.js} +36 -7
- package/dist/{bromcom-ui/p-15fe392b.js.map → cjs/index-9a2c5938.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/validation-messages-18389279.js +52 -0
- package/dist/cjs/validation-messages-18389279.js.map +1 -0
- package/dist/collection/collection-manifest.json +15 -1
- package/dist/collection/components/avatar/avatar.css +1 -1
- package/dist/collection/components/badge/badge.css +1 -1
- package/dist/collection/components/button/button.component.js +33 -2
- package/dist/collection/components/button/button.component.js.map +1 -1
- package/dist/collection/components/button/button.css +1 -1
- package/dist/collection/components/button/types.js.map +1 -1
- package/dist/collection/components/button-group/button-group.component.js +252 -0
- package/dist/collection/components/button-group/button-group.component.js.map +1 -0
- package/dist/collection/components/button-group/button-group.css +1 -0
- package/dist/collection/components/button-group/types.js +2 -0
- package/dist/collection/components/button-group/types.js.map +1 -0
- package/dist/collection/components/checkbox/checkbox.component.js +440 -0
- package/dist/collection/components/checkbox/checkbox.component.js.map +1 -0
- package/dist/collection/components/checkbox/checkbox.css +1 -0
- package/dist/collection/components/chip/chip.component.js +1 -1
- package/dist/collection/components/divider/divider.component.js +1 -1
- package/dist/collection/components/dropdown/dropdown.component.js +1 -1
- package/dist/collection/components/dropdown/dropdown.css +1 -1
- package/dist/collection/components/dropdown-item/dropdown-item.component.js +2 -2
- package/dist/collection/components/input/input.component.js +2 -2
- package/dist/collection/components/input/input.css +1 -1
- package/dist/collection/components/linked/linked.component.js +2 -2
- package/dist/collection/components/linked/linked.css +1 -1
- package/dist/collection/components/pop-confirm/pop-confirm.component.js +629 -0
- package/dist/collection/components/pop-confirm/pop-confirm.component.js.map +1 -0
- package/dist/collection/components/pop-confirm/pop-confirm.css +1 -0
- package/dist/collection/components/popover/popover.component.js +477 -0
- package/dist/collection/components/popover/popover.component.js.map +1 -0
- package/dist/collection/components/popover/popover.css +1 -0
- package/dist/collection/components/radio/radio.component.js +502 -0
- package/dist/collection/components/radio/radio.component.js.map +1 -0
- package/dist/collection/components/radio/radio.css +1 -0
- package/dist/collection/components/radio-group/radio-group.component.js +523 -0
- package/dist/collection/components/radio-group/radio-group.component.js.map +1 -0
- package/dist/collection/components/radio-group/radio-group.css +1 -0
- package/dist/collection/components/segmented-picker/segmented-picker-option.component.js +253 -0
- package/dist/collection/components/segmented-picker/segmented-picker-option.component.js.map +1 -0
- package/dist/collection/components/segmented-picker/segmented-picker-option.css +1 -0
- package/dist/collection/components/segmented-picker/segmented-picker.component.js +269 -0
- package/dist/collection/components/segmented-picker/segmented-picker.component.js.map +1 -0
- package/dist/collection/components/segmented-picker/segmented-picker.css +1 -0
- package/dist/collection/components/segmented-picker/types.js +2 -0
- package/dist/collection/components/segmented-picker/types.js.map +1 -0
- package/dist/collection/components/switch/switch.component.js +452 -0
- package/dist/collection/components/switch/switch.component.js.map +1 -0
- package/dist/collection/components/switch/switch.css +1 -0
- package/dist/collection/components/tabs/bcm-tabs.css +1 -0
- package/dist/collection/components/tabs/tabs-content.component.js +46 -0
- package/dist/collection/components/tabs/tabs-content.component.js.map +1 -0
- package/dist/collection/components/tabs/tabs-content.css +1 -0
- package/dist/collection/components/tabs/tabs-list.component.js +46 -0
- package/dist/collection/components/tabs/tabs-list.component.js.map +1 -0
- package/dist/collection/components/tabs/tabs-list.css +1 -0
- package/dist/collection/components/tabs/tabs-trigger.component.js +195 -0
- package/dist/collection/components/tabs/tabs-trigger.component.js.map +1 -0
- package/dist/collection/components/tabs/tabs-trigger.css +1 -0
- package/dist/collection/components/tabs/tabs.component.js +422 -0
- package/dist/collection/components/tabs/tabs.component.js.map +1 -0
- package/dist/collection/components/text/text.component.js +1 -1
- package/dist/collection/components/textarea/textarea.component.js +3 -3
- package/dist/collection/components/textarea/textarea.css +1 -1
- package/dist/collection/components/tooltip/tooltip.component.js +385 -0
- package/dist/collection/components/tooltip/tooltip.component.js.map +1 -0
- package/dist/collection/components/tooltip/tooltip.css +1 -0
- package/dist/collection/styles/theme-variables.js +14 -0
- package/dist/collection/styles/theme-variables.js.map +1 -1
- package/dist/components/bcm-accordion-group.js +1 -1
- package/dist/components/bcm-accordion.js +1 -1
- package/dist/components/bcm-alert.js +1 -1
- package/dist/components/bcm-avatar.js +3 -3
- package/dist/components/bcm-avatar.js.map +1 -1
- package/dist/components/bcm-badge.js +1 -1
- package/dist/components/bcm-basic-badge.js +1 -1
- package/dist/components/bcm-button-group.d.ts +11 -0
- package/dist/components/bcm-button-group.js +120 -0
- package/dist/components/bcm-button-group.js.map +1 -0
- package/dist/components/bcm-button.js +1 -1
- package/dist/components/bcm-checkbox.d.ts +11 -0
- package/dist/components/bcm-checkbox.js +256 -0
- package/dist/components/bcm-checkbox.js.map +1 -0
- package/dist/components/bcm-chip.js +2 -2
- package/dist/components/bcm-divider.js +2 -2
- package/dist/components/bcm-dropdown-item.js +3 -3
- package/dist/components/bcm-dropdown.js +5 -5
- package/dist/components/bcm-dropdown.js.map +1 -1
- package/dist/components/bcm-input.js +6 -5
- package/dist/components/bcm-input.js.map +1 -1
- package/dist/components/bcm-linked.js +1 -1
- package/dist/components/bcm-pop-confirm.d.ts +11 -0
- package/dist/components/bcm-pop-confirm.js +288 -0
- package/dist/components/bcm-pop-confirm.js.map +1 -0
- package/dist/components/bcm-popover.d.ts +11 -0
- package/dist/components/bcm-popover.js +216 -0
- package/dist/components/bcm-popover.js.map +1 -0
- package/dist/components/bcm-radio-group.d.ts +11 -0
- package/dist/components/bcm-radio-group.js +200 -0
- package/dist/components/bcm-radio-group.js.map +1 -0
- package/dist/components/bcm-radio.d.ts +11 -0
- package/dist/components/bcm-radio.js +198 -0
- package/dist/components/bcm-radio.js.map +1 -0
- package/dist/components/bcm-segmented-picker-option.d.ts +11 -0
- package/dist/components/bcm-segmented-picker-option.js +131 -0
- package/dist/components/bcm-segmented-picker-option.js.map +1 -0
- package/dist/components/bcm-segmented-picker.d.ts +11 -0
- package/dist/components/bcm-segmented-picker.js +170 -0
- package/dist/components/bcm-segmented-picker.js.map +1 -0
- package/dist/components/bcm-switch.d.ts +11 -0
- package/dist/components/bcm-switch.js +215 -0
- package/dist/components/bcm-switch.js.map +1 -0
- package/dist/components/bcm-tabs-content.d.ts +11 -0
- package/dist/components/bcm-tabs-content.js +39 -0
- package/dist/components/bcm-tabs-content.js.map +1 -0
- package/dist/components/bcm-tabs-list.d.ts +11 -0
- package/dist/components/bcm-tabs-list.js +58 -0
- package/dist/components/bcm-tabs-list.js.map +1 -0
- package/dist/components/bcm-tabs-trigger.d.ts +11 -0
- package/dist/components/bcm-tabs-trigger.js +112 -0
- package/dist/components/bcm-tabs-trigger.js.map +1 -0
- package/dist/components/bcm-tabs.d.ts +11 -0
- package/dist/components/bcm-tabs.js +239 -0
- package/dist/components/bcm-tabs.js.map +1 -0
- package/dist/components/bcm-text.js +2 -2
- package/dist/components/bcm-textarea.js +7 -6
- package/dist/components/bcm-textarea.js.map +1 -1
- package/dist/components/bcm-tooltip.d.ts +11 -0
- package/dist/components/bcm-tooltip.js +211 -0
- package/dist/components/bcm-tooltip.js.map +1 -0
- package/dist/components/index.js +1 -1
- package/dist/components/p-13a245f6.js +48 -0
- package/dist/components/p-13a245f6.js.map +1 -0
- package/dist/components/{p-e918f815.js → p-49f20ff7.js} +3 -3
- package/dist/components/{p-e918f815.js.map → p-49f20ff7.js.map} +1 -1
- package/dist/components/{p-13582168.js → p-5377117d.js} +32 -6
- package/dist/components/p-5377117d.js.map +1 -0
- package/dist/components/p-5f7a0d0d.js +107 -0
- package/dist/components/p-5f7a0d0d.js.map +1 -0
- package/dist/components/{p-613ee92d.js → p-9594cebb.js} +201 -120
- package/dist/components/p-9594cebb.js.map +1 -0
- package/dist/{esm/validation-messages-a29d53be.js → components/p-ba2410ef.js} +2 -47
- package/dist/components/p-ba2410ef.js.map +1 -0
- package/dist/components/{p-0063a3d9.js → p-c3a60937.js} +12 -5
- package/dist/components/p-c3a60937.js.map +1 -0
- package/dist/esm/app-globals-bfa07b76.js.map +1 -1
- package/dist/esm/bcm-accordion-group.entry.js +1 -1
- package/dist/esm/bcm-accordion.entry.js +1 -1
- package/dist/esm/bcm-alert.entry.js +1 -1
- package/dist/esm/bcm-avatar_4.entry.js +12 -6
- package/dist/esm/bcm-avatar_4.entry.js.map +1 -1
- package/dist/esm/bcm-button-group.entry.js +93 -0
- package/dist/esm/bcm-button-group.entry.js.map +1 -0
- package/dist/esm/bcm-checkbox.entry.js +222 -0
- package/dist/esm/bcm-checkbox.entry.js.map +1 -0
- package/dist/esm/bcm-chip.entry.js +2 -2
- package/dist/esm/bcm-divider.entry.js +2 -2
- package/dist/esm/bcm-dropdown-item.entry.js +3 -3
- package/dist/esm/bcm-dropdown.entry.js +3 -3
- package/dist/esm/bcm-dropdown.entry.js.map +1 -1
- package/dist/esm/bcm-input.entry.js +6 -5
- package/dist/esm/bcm-input.entry.js.map +1 -1
- package/dist/esm/bcm-linked.entry.js +5 -1895
- package/dist/esm/bcm-linked.entry.js.map +1 -1
- package/dist/esm/bcm-pop-confirm.entry.js +248 -0
- package/dist/esm/bcm-pop-confirm.entry.js.map +1 -0
- package/dist/esm/bcm-popover.entry.js +187 -0
- package/dist/esm/bcm-popover.entry.js.map +1 -0
- package/dist/esm/bcm-radio-group.entry.js +167 -0
- package/dist/esm/bcm-radio-group.entry.js.map +1 -0
- package/dist/esm/bcm-radio.entry.js +169 -0
- package/dist/esm/bcm-radio.entry.js.map +1 -0
- package/dist/esm/bcm-segmented-picker-option.entry.js +105 -0
- package/dist/esm/bcm-segmented-picker-option.entry.js.map +1 -0
- package/dist/esm/bcm-segmented-picker.entry.js +142 -0
- package/dist/esm/bcm-segmented-picker.entry.js.map +1 -0
- package/dist/esm/bcm-switch.entry.js +184 -0
- package/dist/esm/bcm-switch.entry.js.map +1 -0
- package/dist/esm/bcm-tabs-content.entry.js +18 -0
- package/dist/esm/bcm-tabs-content.entry.js.map +1 -0
- package/dist/esm/bcm-tabs-list.entry.js +39 -0
- package/dist/esm/bcm-tabs-list.entry.js.map +1 -0
- package/dist/esm/bcm-tabs-trigger.entry.js +88 -0
- package/dist/esm/bcm-tabs-trigger.entry.js.map +1 -0
- package/dist/esm/bcm-tabs.entry.js +207 -0
- package/dist/esm/bcm-tabs.entry.js.map +1 -0
- package/dist/esm/bcm-text.entry.js +2 -2
- package/dist/esm/bcm-textarea.entry.js +7 -6
- package/dist/esm/bcm-textarea.entry.js.map +1 -1
- package/dist/esm/bcm-tooltip.entry.js +183 -0
- package/dist/esm/bcm-tooltip.entry.js.map +1 -0
- package/dist/esm/bromcom-ui.js +3 -3
- package/dist/esm/floating-ui.dom.esm-480e0f15.js +2078 -0
- package/dist/esm/floating-ui.dom.esm-480e0f15.js.map +1 -0
- package/dist/{cjs/validation-messages-c36e5c31.js → esm/generate-id-3b2fcb93.js} +2 -52
- package/dist/esm/generate-id-3b2fcb93.js.map +1 -0
- package/dist/esm/{index-27cc1bac.js → index-8571fbf7.js} +36 -8
- package/dist/esm/index-8571fbf7.js.map +1 -0
- package/dist/esm/loader.js +3 -3
- package/dist/esm/validation-messages-af4512f0.js +48 -0
- package/dist/esm/validation-messages-af4512f0.js.map +1 -0
- package/dist/types/components/button/button.component.d.ts +3 -1
- package/dist/types/components/button/types.d.ts +4 -4
- package/dist/types/components/button-group/button-group.component.d.ts +25 -0
- package/dist/types/components/button-group/types.d.ts +2 -0
- package/dist/types/components/checkbox/checkbox.component.d.ts +99 -0
- package/dist/types/components/pop-confirm/pop-confirm.component.d.ts +195 -0
- package/dist/types/components/popover/popover.component.d.ts +118 -0
- package/dist/types/components/radio/radio.component.d.ts +105 -0
- package/dist/types/components/radio-group/radio-group.component.d.ts +124 -0
- package/dist/types/components/segmented-picker/segmented-picker-option.component.d.ts +30 -0
- package/dist/types/components/segmented-picker/segmented-picker.component.d.ts +35 -0
- package/dist/types/components/segmented-picker/types.d.ts +1 -0
- package/dist/types/components/switch/switch.component.d.ts +62 -0
- package/dist/types/components/tabs/tabs-content.component.d.ts +13 -0
- package/dist/types/components/tabs/tabs-list.component.d.ts +12 -0
- package/dist/types/components/tabs/tabs-trigger.component.d.ts +41 -0
- package/dist/types/components/tabs/tabs.component.d.ts +88 -0
- package/dist/types/components/tooltip/tooltip.component.d.ts +86 -0
- package/dist/types/components.d.ts +2576 -819
- package/dist/types/styles/theme-variables.d.ts +14 -0
- package/package.json +1 -1
- package/dist/bromcom-ui/p-15fe392b.js +0 -3
- package/dist/bromcom-ui/p-2bbd3c52.entry.js +0 -2
- package/dist/bromcom-ui/p-2f1d87a7.entry.js +0 -2
- package/dist/bromcom-ui/p-2f1d87a7.entry.js.map +0 -1
- package/dist/bromcom-ui/p-31354aaa.js +0 -2
- package/dist/bromcom-ui/p-31354aaa.js.map +0 -1
- package/dist/bromcom-ui/p-5737e7de.entry.js +0 -2
- package/dist/bromcom-ui/p-5737e7de.entry.js.map +0 -1
- package/dist/bromcom-ui/p-63cb0933.entry.js +0 -2
- package/dist/bromcom-ui/p-7a1bf6a6.entry.js +0 -2
- package/dist/bromcom-ui/p-e08b23ff.entry.js +0 -2
- package/dist/bromcom-ui/styles/theme-variables.ts +0 -369
- package/dist/bromcom-ui/styles/themes/index.css +0 -1
- package/dist/bromcom-ui/styles/themes/library/default.css +0 -73
- package/dist/bromcom-ui/styles/variables/box-shadow.css +0 -15
- package/dist/bromcom-ui/styles/variables/colors-dark.css +0 -314
- package/dist/bromcom-ui/styles/variables/colors-light.css +0 -325
- package/dist/bromcom-ui/styles/variables/font-size-rem.css +0 -33
- package/dist/bromcom-ui/styles/variables/font-size.css +0 -33
- package/dist/bromcom-ui/styles/variables/index.css +0 -6
- package/dist/cjs/validation-messages-c36e5c31.js.map +0 -1
- package/dist/collection/styles/theme-variables.ts +0 -369
- package/dist/collection/styles/themes/index.css +0 -1
- package/dist/collection/styles/themes/library/default.css +0 -73
- package/dist/collection/styles/variables/box-shadow.css +0 -15
- package/dist/collection/styles/variables/colors-dark.css +0 -314
- package/dist/collection/styles/variables/colors-light.css +0 -325
- package/dist/collection/styles/variables/font-size-rem.css +0 -33
- package/dist/collection/styles/variables/font-size.css +0 -33
- package/dist/collection/styles/variables/index.css +0 -6
- package/dist/components/p-0063a3d9.js.map +0 -1
- package/dist/components/p-13582168.js.map +0 -1
- package/dist/components/p-31354aaa.js.map +0 -1
- package/dist/components/p-613ee92d.js.map +0 -1
- package/dist/esm/index-27cc1bac.js.map +0 -1
- package/dist/esm/validation-messages-a29d53be.js.map +0 -1
- package/dist/tailwind.config.js +0 -32
- /package/dist/bromcom-ui/{p-f0ece968.entry.js.map → p-385fa0f3.entry.js.map} +0 -0
- /package/dist/bromcom-ui/{p-f9eeafa7.entry.js.map → p-58ee24a8.entry.js.map} +0 -0
- /package/dist/bromcom-ui/{p-5bee2e76.entry.js.map → p-c1161950.entry.js.map} +0 -0
- /package/dist/bromcom-ui/{p-53f21d16.entry.js.map → p-c427ffee.entry.js.map} +0 -0
- /package/dist/bromcom-ui/{p-6abaf96f.entry.js.map → p-d57587e5.entry.js.map} +0 -0
- /package/dist/bromcom-ui/{p-4f402148.entry.js.map → p-f2d8aa70.entry.js.map} +0 -0
|
@@ -0,0 +1,523 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @component BcmRadioGroup
|
|
3
|
+
* @description A radio group component that manages a collection of `bcm-radio` components, ensuring only one radio button is selected at a time.
|
|
4
|
+
* Supports horizontal or vertical layouts, various sizes, and states such as disabled, required, and error.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* <bcm-radio-group name="group1" size="medium" direction="vertical" label="Select an option">
|
|
8
|
+
* <bcm-radio label="Option 1" value="1"></bcm-radio>
|
|
9
|
+
* <bcm-radio label="Option 2" value="2"></bcm-radio>
|
|
10
|
+
* </bcm-radio-group>
|
|
11
|
+
*
|
|
12
|
+
* @example Radio group with error state and caption
|
|
13
|
+
* <bcm-radio-group name="group1" error={true} caption-text="Please select an option">
|
|
14
|
+
* <bcm-radio label="Option 1" value="1"></bcm-radio>
|
|
15
|
+
* <bcm-radio label="Option 2" value="2"></bcm-radio>
|
|
16
|
+
* </bcm-radio-group>
|
|
17
|
+
*
|
|
18
|
+
* @prop {string} name - The name attribute for the radio group, used to group radio buttons.
|
|
19
|
+
* @defaultValue undefined
|
|
20
|
+
* @prop {string} value - The currently selected value of the radio group.
|
|
21
|
+
* @defaultValue undefined
|
|
22
|
+
* @prop {boolean} disabled - Whether the radio group and its radio buttons are disabled.
|
|
23
|
+
* @defaultValue false
|
|
24
|
+
* @prop {boolean} required - Whether the radio group is required in a form.
|
|
25
|
+
* @defaultValue false
|
|
26
|
+
* @prop {boolean} error - Whether the radio group is in an error state.
|
|
27
|
+
* @defaultValue false
|
|
28
|
+
* @prop {string} label - The label text to display above the radio group.
|
|
29
|
+
* @defaultValue undefined
|
|
30
|
+
* @prop {RadioSize} size - Defines the size of the radio group and its radio buttons: 'small' | 'medium' | 'large'.
|
|
31
|
+
* @defaultValue 'medium'
|
|
32
|
+
* @prop {Direction} direction - The layout direction of the radio buttons: 'horizontal' | 'vertical'.
|
|
33
|
+
* @defaultValue 'vertical'
|
|
34
|
+
* @prop {string} captionText - Optional caption text to display below the radio group, often used for error messages or hints.
|
|
35
|
+
* @defaultValue undefined
|
|
36
|
+
*
|
|
37
|
+
* @event {EventEmitter<HTMLBcmRadioElement>} bcmRadioGroupChange - Emitted when the selected radio button changes, passing the selected radio element.
|
|
38
|
+
*
|
|
39
|
+
* @method setClear - Clears the selected value and unchecks all radio buttons.
|
|
40
|
+
* @method resetCaption - Resets the error state and caption.
|
|
41
|
+
*
|
|
42
|
+
* @csspart host - The root element of the radio group.
|
|
43
|
+
* @csspart container - The container for the radio buttons.
|
|
44
|
+
* @csspart label - The label element above the radio group.
|
|
45
|
+
* @csspart caption - The caption text below the radio group.
|
|
46
|
+
*/
|
|
47
|
+
import { h } from "@stencil/core";
|
|
48
|
+
import { tv } from "tailwind-variants";
|
|
49
|
+
import { generateId } from "../../utils/id/generate-id";
|
|
50
|
+
import classNames from "classnames";
|
|
51
|
+
export class BcmRadioGroup {
|
|
52
|
+
constructor() {
|
|
53
|
+
/**
|
|
54
|
+
* Whether the radio group and its radio buttons are disabled.
|
|
55
|
+
* @prop
|
|
56
|
+
* @defaultValue false
|
|
57
|
+
*/
|
|
58
|
+
this.disabled = false;
|
|
59
|
+
/**
|
|
60
|
+
* Whether the radio group is required in a form.
|
|
61
|
+
* @prop
|
|
62
|
+
* @defaultValue false
|
|
63
|
+
*/
|
|
64
|
+
this.required = false;
|
|
65
|
+
/**
|
|
66
|
+
* Whether the radio group is in an error state.
|
|
67
|
+
* @prop
|
|
68
|
+
* @defaultValue false
|
|
69
|
+
*/
|
|
70
|
+
this.error = false;
|
|
71
|
+
/**
|
|
72
|
+
* Defines the size of the radio group and its radio buttons: 'small' | 'medium' | 'large'.
|
|
73
|
+
* @prop
|
|
74
|
+
* @defaultValue 'medium'
|
|
75
|
+
*/
|
|
76
|
+
this.size = 'medium';
|
|
77
|
+
/**
|
|
78
|
+
* The layout direction of the radio buttons: 'horizontal' | 'vertical'.
|
|
79
|
+
* @prop
|
|
80
|
+
* @defaultValue 'vertical'
|
|
81
|
+
*/
|
|
82
|
+
this.direction = 'vertical';
|
|
83
|
+
this.radioGroupName = generateId('radio-group-name');
|
|
84
|
+
this.handleSlotChange = () => {
|
|
85
|
+
this.radios.forEach(radio => {
|
|
86
|
+
var _a;
|
|
87
|
+
radio.size = this.size;
|
|
88
|
+
radio.name = (_a = this.name) !== null && _a !== void 0 ? _a : this.radioGroupName;
|
|
89
|
+
radio.disabled = this.disabled;
|
|
90
|
+
radio.error = this.error;
|
|
91
|
+
});
|
|
92
|
+
};
|
|
93
|
+
this.radioGroupClass = tv({
|
|
94
|
+
slots: {
|
|
95
|
+
host: ['bcm-ui-element bcm-radio-group flex flex-col'],
|
|
96
|
+
container: ['flex'],
|
|
97
|
+
},
|
|
98
|
+
variants: {
|
|
99
|
+
size: {
|
|
100
|
+
small: {
|
|
101
|
+
host: 'gap-1.5',
|
|
102
|
+
container: 'gap-1.5',
|
|
103
|
+
},
|
|
104
|
+
medium: {
|
|
105
|
+
host: 'gap-2',
|
|
106
|
+
container: 'gap-2',
|
|
107
|
+
},
|
|
108
|
+
large: {
|
|
109
|
+
host: 'gap-2.5',
|
|
110
|
+
container: 'gap-2.5',
|
|
111
|
+
},
|
|
112
|
+
},
|
|
113
|
+
direction: {
|
|
114
|
+
horizontal: {
|
|
115
|
+
container: ['flex-row flex-wrap'],
|
|
116
|
+
},
|
|
117
|
+
vertical: {
|
|
118
|
+
container: ['flex-col'],
|
|
119
|
+
},
|
|
120
|
+
},
|
|
121
|
+
},
|
|
122
|
+
defaultVariants: {
|
|
123
|
+
size: 'medium',
|
|
124
|
+
direction: 'vertical',
|
|
125
|
+
},
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
get radios() {
|
|
129
|
+
return this.host.querySelectorAll('bcm-radio');
|
|
130
|
+
}
|
|
131
|
+
componentWillLoad() {
|
|
132
|
+
if (this.value) {
|
|
133
|
+
this.updateRadios(this.value);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Clears the selected value (sets it to an empty string) and unchecks all radio buttons.
|
|
138
|
+
* @method
|
|
139
|
+
*/
|
|
140
|
+
async setClear() {
|
|
141
|
+
var _a;
|
|
142
|
+
this.value = "";
|
|
143
|
+
(_a = this.radios) === null || _a === void 0 ? void 0 : _a.forEach(radio => {
|
|
144
|
+
radio.checked = false;
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Resets the error state and caption.
|
|
149
|
+
* @method
|
|
150
|
+
*/
|
|
151
|
+
async resetCaption() {
|
|
152
|
+
this.error = false;
|
|
153
|
+
this.captionText = undefined;
|
|
154
|
+
}
|
|
155
|
+
handleValueChange(newValue) {
|
|
156
|
+
this.updateRadios(newValue);
|
|
157
|
+
}
|
|
158
|
+
handleRadioChange(event) {
|
|
159
|
+
const radio = event.target;
|
|
160
|
+
const radios = this.host.querySelectorAll('bcm-radio');
|
|
161
|
+
radios.forEach(r => {
|
|
162
|
+
if (r !== radio) {
|
|
163
|
+
r.checked = false;
|
|
164
|
+
}
|
|
165
|
+
});
|
|
166
|
+
this.bcmRadioGroupChange.emit({
|
|
167
|
+
value: radio.value,
|
|
168
|
+
element: radio,
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
updateRadios(value) {
|
|
172
|
+
this.radios.forEach(radio => {
|
|
173
|
+
radio.checked = radio.value === value;
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
render() {
|
|
177
|
+
const { host, container } = this.radioGroupClass({
|
|
178
|
+
size: this.size,
|
|
179
|
+
direction: this.direction,
|
|
180
|
+
});
|
|
181
|
+
return (h("div", { key: '067e086951f511d9a15f0cf7dbaef97744615356', class: host() }, this.label && (h("label", { key: '912ab77a4b270dfd25bbc362932b6914af1cac6c', class: classNames('input-label font-medium', {
|
|
182
|
+
'text-color-label': !this.disabled,
|
|
183
|
+
'text-color-disabled': this.disabled,
|
|
184
|
+
}, {
|
|
185
|
+
'text-size-3': this.size === 'small',
|
|
186
|
+
'text-size-4': this.size === 'medium',
|
|
187
|
+
'text-size-5': this.size === 'large',
|
|
188
|
+
}) }, h("slot", { key: '93b8053888f906617b84a94a84fad525cbb5ea34', name: "label" }, this.label), this.required && h("span", { key: '654320a556ff7e0aa49c929af349c57ec9a8a59a' }, "*"))), h("div", { key: '722366cd4a7f7cebddf8151fcc935025bf12b5d6', class: container() }, h("slot", { key: '420447424d1e450911355ab4cd6b2ee51c1b2839', onSlotchange: this.handleSlotChange })), this.captionText && (h("div", { key: '38dcc2233985bdcaaefe62b072ef9b55d1e1908d', class: classNames('input-caption-text font-regular mt-1', {
|
|
189
|
+
'text-[--bcm-ui-color-text-caption]': !this.disabled,
|
|
190
|
+
'text-[--bcm-ui-color-text-error]': !this.disabled && this.error,
|
|
191
|
+
'text-[--bcm-ui-color-text-disabled]': this.disabled,
|
|
192
|
+
}, {
|
|
193
|
+
'text-size-3': this.size === 'small',
|
|
194
|
+
'text-size-4': this.size === 'medium',
|
|
195
|
+
'text-size-5': this.size === 'large',
|
|
196
|
+
}) }, this.captionText))));
|
|
197
|
+
}
|
|
198
|
+
static get is() { return "bcm-radio-group"; }
|
|
199
|
+
static get encapsulation() { return "shadow"; }
|
|
200
|
+
static get originalStyleUrls() {
|
|
201
|
+
return {
|
|
202
|
+
"$": ["radio-group.css"]
|
|
203
|
+
};
|
|
204
|
+
}
|
|
205
|
+
static get styleUrls() {
|
|
206
|
+
return {
|
|
207
|
+
"$": ["radio-group.css"]
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
static get properties() {
|
|
211
|
+
return {
|
|
212
|
+
"name": {
|
|
213
|
+
"type": "string",
|
|
214
|
+
"mutable": false,
|
|
215
|
+
"complexType": {
|
|
216
|
+
"original": "string",
|
|
217
|
+
"resolved": "string",
|
|
218
|
+
"references": {}
|
|
219
|
+
},
|
|
220
|
+
"required": false,
|
|
221
|
+
"optional": false,
|
|
222
|
+
"docs": {
|
|
223
|
+
"tags": [{
|
|
224
|
+
"name": "prop",
|
|
225
|
+
"text": undefined
|
|
226
|
+
}, {
|
|
227
|
+
"name": "defaultValue",
|
|
228
|
+
"text": "undefined"
|
|
229
|
+
}],
|
|
230
|
+
"text": "The name attribute for the radio group, used to group radio buttons."
|
|
231
|
+
},
|
|
232
|
+
"getter": false,
|
|
233
|
+
"setter": false,
|
|
234
|
+
"attribute": "name",
|
|
235
|
+
"reflect": false
|
|
236
|
+
},
|
|
237
|
+
"value": {
|
|
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
|
+
"name": "prop",
|
|
250
|
+
"text": undefined
|
|
251
|
+
}, {
|
|
252
|
+
"name": "defaultValue",
|
|
253
|
+
"text": "undefined"
|
|
254
|
+
}],
|
|
255
|
+
"text": "The currently selected value of the radio group."
|
|
256
|
+
},
|
|
257
|
+
"getter": false,
|
|
258
|
+
"setter": false,
|
|
259
|
+
"attribute": "value",
|
|
260
|
+
"reflect": false
|
|
261
|
+
},
|
|
262
|
+
"disabled": {
|
|
263
|
+
"type": "boolean",
|
|
264
|
+
"mutable": false,
|
|
265
|
+
"complexType": {
|
|
266
|
+
"original": "boolean",
|
|
267
|
+
"resolved": "boolean",
|
|
268
|
+
"references": {}
|
|
269
|
+
},
|
|
270
|
+
"required": false,
|
|
271
|
+
"optional": false,
|
|
272
|
+
"docs": {
|
|
273
|
+
"tags": [{
|
|
274
|
+
"name": "prop",
|
|
275
|
+
"text": undefined
|
|
276
|
+
}, {
|
|
277
|
+
"name": "defaultValue",
|
|
278
|
+
"text": "false"
|
|
279
|
+
}],
|
|
280
|
+
"text": "Whether the radio group and its radio buttons are disabled."
|
|
281
|
+
},
|
|
282
|
+
"getter": false,
|
|
283
|
+
"setter": false,
|
|
284
|
+
"attribute": "disabled",
|
|
285
|
+
"reflect": false,
|
|
286
|
+
"defaultValue": "false"
|
|
287
|
+
},
|
|
288
|
+
"required": {
|
|
289
|
+
"type": "boolean",
|
|
290
|
+
"mutable": false,
|
|
291
|
+
"complexType": {
|
|
292
|
+
"original": "boolean",
|
|
293
|
+
"resolved": "boolean",
|
|
294
|
+
"references": {}
|
|
295
|
+
},
|
|
296
|
+
"required": false,
|
|
297
|
+
"optional": false,
|
|
298
|
+
"docs": {
|
|
299
|
+
"tags": [{
|
|
300
|
+
"name": "prop",
|
|
301
|
+
"text": undefined
|
|
302
|
+
}, {
|
|
303
|
+
"name": "defaultValue",
|
|
304
|
+
"text": "false"
|
|
305
|
+
}],
|
|
306
|
+
"text": "Whether the radio group is required in a form."
|
|
307
|
+
},
|
|
308
|
+
"getter": false,
|
|
309
|
+
"setter": false,
|
|
310
|
+
"attribute": "required",
|
|
311
|
+
"reflect": false,
|
|
312
|
+
"defaultValue": "false"
|
|
313
|
+
},
|
|
314
|
+
"error": {
|
|
315
|
+
"type": "boolean",
|
|
316
|
+
"mutable": false,
|
|
317
|
+
"complexType": {
|
|
318
|
+
"original": "boolean",
|
|
319
|
+
"resolved": "boolean",
|
|
320
|
+
"references": {}
|
|
321
|
+
},
|
|
322
|
+
"required": false,
|
|
323
|
+
"optional": false,
|
|
324
|
+
"docs": {
|
|
325
|
+
"tags": [{
|
|
326
|
+
"name": "prop",
|
|
327
|
+
"text": undefined
|
|
328
|
+
}, {
|
|
329
|
+
"name": "defaultValue",
|
|
330
|
+
"text": "false"
|
|
331
|
+
}],
|
|
332
|
+
"text": "Whether the radio group is in an error state."
|
|
333
|
+
},
|
|
334
|
+
"getter": false,
|
|
335
|
+
"setter": false,
|
|
336
|
+
"attribute": "error",
|
|
337
|
+
"reflect": false,
|
|
338
|
+
"defaultValue": "false"
|
|
339
|
+
},
|
|
340
|
+
"label": {
|
|
341
|
+
"type": "string",
|
|
342
|
+
"mutable": false,
|
|
343
|
+
"complexType": {
|
|
344
|
+
"original": "string",
|
|
345
|
+
"resolved": "string",
|
|
346
|
+
"references": {}
|
|
347
|
+
},
|
|
348
|
+
"required": false,
|
|
349
|
+
"optional": false,
|
|
350
|
+
"docs": {
|
|
351
|
+
"tags": [{
|
|
352
|
+
"name": "prop",
|
|
353
|
+
"text": undefined
|
|
354
|
+
}, {
|
|
355
|
+
"name": "defaultValue",
|
|
356
|
+
"text": "undefined"
|
|
357
|
+
}],
|
|
358
|
+
"text": "The label text to display above the radio group."
|
|
359
|
+
},
|
|
360
|
+
"getter": false,
|
|
361
|
+
"setter": false,
|
|
362
|
+
"attribute": "label",
|
|
363
|
+
"reflect": false
|
|
364
|
+
},
|
|
365
|
+
"size": {
|
|
366
|
+
"type": "string",
|
|
367
|
+
"mutable": false,
|
|
368
|
+
"complexType": {
|
|
369
|
+
"original": "'small' | 'medium' | 'large'",
|
|
370
|
+
"resolved": "\"large\" | \"medium\" | \"small\"",
|
|
371
|
+
"references": {}
|
|
372
|
+
},
|
|
373
|
+
"required": false,
|
|
374
|
+
"optional": false,
|
|
375
|
+
"docs": {
|
|
376
|
+
"tags": [{
|
|
377
|
+
"name": "prop",
|
|
378
|
+
"text": undefined
|
|
379
|
+
}, {
|
|
380
|
+
"name": "defaultValue",
|
|
381
|
+
"text": "'medium'"
|
|
382
|
+
}],
|
|
383
|
+
"text": "Defines the size of the radio group and its radio buttons: 'small' | 'medium' | 'large'."
|
|
384
|
+
},
|
|
385
|
+
"getter": false,
|
|
386
|
+
"setter": false,
|
|
387
|
+
"attribute": "size",
|
|
388
|
+
"reflect": false,
|
|
389
|
+
"defaultValue": "'medium'"
|
|
390
|
+
},
|
|
391
|
+
"direction": {
|
|
392
|
+
"type": "string",
|
|
393
|
+
"mutable": false,
|
|
394
|
+
"complexType": {
|
|
395
|
+
"original": "'horizontal' | 'vertical'",
|
|
396
|
+
"resolved": "\"horizontal\" | \"vertical\"",
|
|
397
|
+
"references": {}
|
|
398
|
+
},
|
|
399
|
+
"required": false,
|
|
400
|
+
"optional": false,
|
|
401
|
+
"docs": {
|
|
402
|
+
"tags": [{
|
|
403
|
+
"name": "prop",
|
|
404
|
+
"text": undefined
|
|
405
|
+
}, {
|
|
406
|
+
"name": "defaultValue",
|
|
407
|
+
"text": "'vertical'"
|
|
408
|
+
}],
|
|
409
|
+
"text": "The layout direction of the radio buttons: 'horizontal' | 'vertical'."
|
|
410
|
+
},
|
|
411
|
+
"getter": false,
|
|
412
|
+
"setter": false,
|
|
413
|
+
"attribute": "direction",
|
|
414
|
+
"reflect": false,
|
|
415
|
+
"defaultValue": "'vertical'"
|
|
416
|
+
},
|
|
417
|
+
"captionText": {
|
|
418
|
+
"type": "string",
|
|
419
|
+
"mutable": false,
|
|
420
|
+
"complexType": {
|
|
421
|
+
"original": "string",
|
|
422
|
+
"resolved": "string",
|
|
423
|
+
"references": {}
|
|
424
|
+
},
|
|
425
|
+
"required": false,
|
|
426
|
+
"optional": true,
|
|
427
|
+
"docs": {
|
|
428
|
+
"tags": [{
|
|
429
|
+
"name": "prop",
|
|
430
|
+
"text": undefined
|
|
431
|
+
}, {
|
|
432
|
+
"name": "defaultValue",
|
|
433
|
+
"text": "undefined"
|
|
434
|
+
}],
|
|
435
|
+
"text": "Optional caption text to display below the radio group, often used for error messages or hints."
|
|
436
|
+
},
|
|
437
|
+
"getter": false,
|
|
438
|
+
"setter": false,
|
|
439
|
+
"attribute": "caption-text",
|
|
440
|
+
"reflect": false
|
|
441
|
+
}
|
|
442
|
+
};
|
|
443
|
+
}
|
|
444
|
+
static get events() {
|
|
445
|
+
return [{
|
|
446
|
+
"method": "bcmRadioGroupChange",
|
|
447
|
+
"name": "bcmRadioGroupChange",
|
|
448
|
+
"bubbles": false,
|
|
449
|
+
"cancelable": true,
|
|
450
|
+
"composed": false,
|
|
451
|
+
"docs": {
|
|
452
|
+
"tags": [],
|
|
453
|
+
"text": ""
|
|
454
|
+
},
|
|
455
|
+
"complexType": {
|
|
456
|
+
"original": "any",
|
|
457
|
+
"resolved": "any",
|
|
458
|
+
"references": {}
|
|
459
|
+
}
|
|
460
|
+
}];
|
|
461
|
+
}
|
|
462
|
+
static get methods() {
|
|
463
|
+
return {
|
|
464
|
+
"setClear": {
|
|
465
|
+
"complexType": {
|
|
466
|
+
"signature": "() => Promise<void>",
|
|
467
|
+
"parameters": [],
|
|
468
|
+
"references": {
|
|
469
|
+
"Promise": {
|
|
470
|
+
"location": "global",
|
|
471
|
+
"id": "global::Promise"
|
|
472
|
+
}
|
|
473
|
+
},
|
|
474
|
+
"return": "Promise<void>"
|
|
475
|
+
},
|
|
476
|
+
"docs": {
|
|
477
|
+
"text": "Clears the selected value (sets it to an empty string) and unchecks all radio buttons.",
|
|
478
|
+
"tags": [{
|
|
479
|
+
"name": "method",
|
|
480
|
+
"text": undefined
|
|
481
|
+
}]
|
|
482
|
+
}
|
|
483
|
+
},
|
|
484
|
+
"resetCaption": {
|
|
485
|
+
"complexType": {
|
|
486
|
+
"signature": "() => Promise<void>",
|
|
487
|
+
"parameters": [],
|
|
488
|
+
"references": {
|
|
489
|
+
"Promise": {
|
|
490
|
+
"location": "global",
|
|
491
|
+
"id": "global::Promise"
|
|
492
|
+
}
|
|
493
|
+
},
|
|
494
|
+
"return": "Promise<void>"
|
|
495
|
+
},
|
|
496
|
+
"docs": {
|
|
497
|
+
"text": "Resets the error state and caption.",
|
|
498
|
+
"tags": [{
|
|
499
|
+
"name": "method",
|
|
500
|
+
"text": undefined
|
|
501
|
+
}]
|
|
502
|
+
}
|
|
503
|
+
}
|
|
504
|
+
};
|
|
505
|
+
}
|
|
506
|
+
static get elementRef() { return "host"; }
|
|
507
|
+
static get watchers() {
|
|
508
|
+
return [{
|
|
509
|
+
"propName": "value",
|
|
510
|
+
"methodName": "handleValueChange"
|
|
511
|
+
}];
|
|
512
|
+
}
|
|
513
|
+
static get listeners() {
|
|
514
|
+
return [{
|
|
515
|
+
"name": "bcmRadioChange",
|
|
516
|
+
"method": "handleRadioChange",
|
|
517
|
+
"target": undefined,
|
|
518
|
+
"capture": true,
|
|
519
|
+
"passive": false
|
|
520
|
+
}];
|
|
521
|
+
}
|
|
522
|
+
}
|
|
523
|
+
//# sourceMappingURL=radio-group.component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"radio-group.component.js","sourceRoot":"","sources":["../../../src/components/radio-group/radio-group.component.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * @component BcmRadioGroup\n * @description A radio group component that manages a collection of `bcm-radio` components, ensuring only one radio button is selected at a time.\n * Supports horizontal or vertical layouts, various sizes, and states such as disabled, required, and error.\n *\n * @example\n * <bcm-radio-group name=\"group1\" size=\"medium\" direction=\"vertical\" label=\"Select an option\">\n * <bcm-radio label=\"Option 1\" value=\"1\"></bcm-radio>\n * <bcm-radio label=\"Option 2\" value=\"2\"></bcm-radio>\n * </bcm-radio-group>\n *\n * @example Radio group with error state and caption\n * <bcm-radio-group name=\"group1\" error={true} caption-text=\"Please select an option\">\n * <bcm-radio label=\"Option 1\" value=\"1\"></bcm-radio>\n * <bcm-radio label=\"Option 2\" value=\"2\"></bcm-radio>\n * </bcm-radio-group>\n *\n * @prop {string} name - The name attribute for the radio group, used to group radio buttons.\n * @defaultValue undefined\n * @prop {string} value - The currently selected value of the radio group.\n * @defaultValue undefined\n * @prop {boolean} disabled - Whether the radio group and its radio buttons are disabled.\n * @defaultValue false\n * @prop {boolean} required - Whether the radio group is required in a form.\n * @defaultValue false\n * @prop {boolean} error - Whether the radio group is in an error state.\n * @defaultValue false\n * @prop {string} label - The label text to display above the radio group.\n * @defaultValue undefined\n * @prop {RadioSize} size - Defines the size of the radio group and its radio buttons: 'small' | 'medium' | 'large'.\n * @defaultValue 'medium'\n * @prop {Direction} direction - The layout direction of the radio buttons: 'horizontal' | 'vertical'.\n * @defaultValue 'vertical'\n * @prop {string} captionText - Optional caption text to display below the radio group, often used for error messages or hints.\n * @defaultValue undefined\n *\n * @event {EventEmitter<HTMLBcmRadioElement>} bcmRadioGroupChange - Emitted when the selected radio button changes, passing the selected radio element.\n *\n * @method setClear - Clears the selected value and unchecks all radio buttons.\n * @method resetCaption - Resets the error state and caption.\n *\n * @csspart host - The root element of the radio group.\n * @csspart container - The container for the radio buttons.\n * @csspart label - The label element above the radio group.\n * @csspart caption - The caption text below the radio group.\n */\n\nimport { Component, ComponentInterface, Prop, h, Element, Listen, Event, EventEmitter, Method, Watch } from '@stencil/core';\nimport { tv } from 'tailwind-variants';\nimport { generateId } from '../../utils/id/generate-id';\nimport classNames from 'classnames';\n\n@Component({\n tag: 'bcm-radio-group',\n styleUrl: 'radio-group.css',\n shadow: true,\n})\nexport class BcmRadioGroup implements ComponentInterface {\n @Element() host: HTMLBcmRadioGroupElement;\n\n /**\n * The name attribute for the radio group, used to group radio buttons.\n * @prop\n * @defaultValue undefined\n */\n @Prop()\n name: string;\n\n /**\n * The currently selected value of the radio group.\n * @prop\n * @defaultValue undefined\n */\n @Prop()\n value: string;\n\n /**\n * Whether the radio group and its radio buttons are disabled.\n * @prop\n * @defaultValue false\n */\n @Prop()\n disabled: boolean = false;\n\n /**\n * Whether the radio group is required in a form.\n * @prop\n * @defaultValue false\n */\n @Prop()\n required: boolean = false;\n\n /**\n * Whether the radio group is in an error state.\n * @prop\n * @defaultValue false\n */\n @Prop()\n error: boolean = false;\n\n /**\n * The label text to display above the radio group.\n * @prop\n * @defaultValue undefined\n */\n @Prop()\n label: string;\n\n /**\n * Defines the size of the radio group and its radio buttons: 'small' | 'medium' | 'large'.\n * @prop\n * @defaultValue 'medium'\n */\n @Prop()\n size: 'small' | 'medium' | 'large' = 'medium';\n\n /**\n * The layout direction of the radio buttons: 'horizontal' | 'vertical'.\n * @prop\n * @defaultValue 'vertical'\n */\n @Prop()\n direction: 'horizontal' | 'vertical' = 'vertical';\n\n /**\n * Optional caption text to display below the radio group, often used for error messages or hints.\n * @prop\n * @defaultValue undefined\n */\n @Prop()\n captionText?: string;\n\n @Event({\n composed: false,\n bubbles: false,\n cancelable: true,\n eventName: 'bcmRadioGroupChange',\n })\n bcmRadioGroupChange: EventEmitter<any>;\n\n private readonly radioGroupName = generateId('radio-group-name');\n\n get radios() {\n return this.host.querySelectorAll('bcm-radio');\n }\n\n componentWillLoad() {\n if (this.value) {\n this.updateRadios(this.value);\n }\n }\n\n /**\n * Clears the selected value (sets it to an empty string) and unchecks all radio buttons.\n * @method\n */\n @Method()\n async setClear() {\n this.value = \"\";\n this.radios?.forEach(radio => {\n radio.checked = false;\n });\n }\n\n /**\n * Resets the error state and caption.\n * @method\n */\n @Method()\n async resetCaption() {\n this.error = false;\n this.captionText = undefined;\n }\n\n private handleSlotChange = () => {\n this.radios.forEach(radio => {\n radio.size = this.size;\n radio.name = this.name ?? this.radioGroupName;\n radio.disabled = this.disabled;\n radio.error = this.error;\n });\n };\n\n @Watch('value')\n handleValueChange(newValue: string) {\n this.updateRadios(newValue);\n }\n\n @Listen('bcmRadioChange', { capture: true })\n handleRadioChange(event: CustomEvent) {\n const radio = event.target as HTMLBcmRadioElement;\n const radios = this.host.querySelectorAll('bcm-radio');\n radios.forEach(r => {\n if (r !== radio) {\n r.checked = false;\n }\n });\n this.bcmRadioGroupChange.emit({\n value: radio.value,\n element: radio,\n });\n }\n\n private updateRadios(value: string) {\n this.radios.forEach(radio => {\n radio.checked = radio.value === value;\n });\n }\n\n private radioGroupClass = tv({\n slots: {\n host: ['bcm-ui-element bcm-radio-group flex flex-col'],\n container: ['flex'],\n },\n variants: {\n size: {\n small: {\n host: 'gap-1.5',\n container: 'gap-1.5',\n },\n medium: {\n host: 'gap-2',\n container: 'gap-2',\n },\n large: {\n host: 'gap-2.5',\n container: 'gap-2.5',\n },\n },\n direction: {\n horizontal: {\n container: ['flex-row flex-wrap'],\n },\n vertical: {\n container: ['flex-col'],\n },\n },\n },\n defaultVariants: {\n size: 'medium',\n direction: 'vertical',\n },\n });\n\n render() {\n const { host, container } = this.radioGroupClass({\n size: this.size,\n direction: this.direction,\n });\n return (\n <div class={host()}>\n {this.label && (\n <label\n class={classNames(\n 'input-label font-medium',\n {\n 'text-color-label': !this.disabled,\n 'text-color-disabled': this.disabled,\n },\n {\n 'text-size-3': this.size === 'small',\n 'text-size-4': this.size === 'medium',\n 'text-size-5': this.size === 'large',\n },\n )}\n >\n <slot name=\"label\">{this.label}</slot>\n {this.required && <span>*</span>}\n </label>\n )}\n <div class={container()}>\n <slot onSlotchange={this.handleSlotChange}></slot>\n </div>\n\n {this.captionText && (\n <div\n class={classNames(\n 'input-caption-text font-regular mt-1',\n {\n 'text-[--bcm-ui-color-text-caption]': !this.disabled,\n 'text-[--bcm-ui-color-text-error]': !this.disabled && this.error,\n 'text-[--bcm-ui-color-text-disabled]': this.disabled,\n },\n {\n 'text-size-3': this.size === 'small',\n 'text-size-4': this.size === 'medium',\n 'text-size-5': this.size === 'large',\n },\n )}\n >\n {this.captionText}\n </div>\n )}\n </div>\n );\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.bcm-ui-element{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,sans-serif}.static{position:static}.mt-1{margin-top:.25rem}.flex{display:flex}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.text-size-3{font-size:var(--bcm-ui-font-size-3,12px);line-height:var(--bcm-ui-line-height-3,16px)}.text-size-4{font-size:var(--bcm-ui-font-size-4,14px);line-height:var(--bcm-ui-line-height-4,20px)}.text-size-5{font-size:var(--bcm-ui-font-size-5,16px);line-height:var(--bcm-ui-line-height-5,24px)}.font-medium{font-weight:500}.text-\[--bcm-ui-color-text-caption\]{color:var(--bcm-ui-color-text-caption)}.text-\[--bcm-ui-color-text-disabled\]{color:var(--bcm-ui-color-text-disabled)}.text-\[--bcm-ui-color-text-error\]{color:var(--bcm-ui-color-text-error)}.text-color-disabled{color:var(--bcm-ui-color-text-disabled)}.text-color-label{color:var(--bcm-ui-color-text-label)}.shadow{--tw-shadow:var(--bcm-ui-box-shadow-default);--tw-shadow-colored:var(--bcm-ui-box-shadow-default);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}
|