@womp/kookie-ui 0.19.0 → 0.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -18
- package/codemods/components-0.21.py +123 -0
- package/codemods/type-0.20.py +73 -0
- package/components.css +1575 -4699
- package/dist/cjs/components/_internal/base-button.d.ts +2 -4
- package/dist/cjs/components/_internal/base-button.d.ts.map +1 -1
- package/dist/cjs/components/_internal/base-button.js +1 -1
- package/dist/cjs/components/_internal/base-button.js.map +3 -3
- package/dist/cjs/components/_internal/base-button.props.d.ts +1 -9
- package/dist/cjs/components/_internal/base-button.props.d.ts.map +1 -1
- package/dist/cjs/components/_internal/base-button.props.js +1 -1
- package/dist/cjs/components/_internal/base-button.props.js.map +2 -2
- package/dist/cjs/components/_internal/base-checkbox.props.js.map +1 -1
- package/dist/cjs/components/_internal/base-menu.props.d.ts +2 -2
- package/dist/cjs/components/_internal/base-menu.props.js +1 -1
- package/dist/cjs/components/_internal/base-menu.props.js.map +2 -2
- package/dist/cjs/components/_internal/base-menu.utils.d.ts.map +1 -1
- package/dist/cjs/components/_internal/base-menu.utils.js +1 -1
- package/dist/cjs/components/_internal/base-menu.utils.js.map +4 -4
- package/dist/cjs/components/_internal/base-radio.props.js.map +1 -1
- package/dist/cjs/components/_internal/base-tab-list.props.js.map +1 -1
- package/dist/cjs/components/_internal/menu-context.d.ts +5 -2
- package/dist/cjs/components/_internal/menu-context.d.ts.map +1 -1
- package/dist/cjs/components/_internal/menu-context.js +1 -1
- package/dist/cjs/components/_internal/menu-context.js.map +2 -2
- package/dist/cjs/components/_internal/pane-chrome.js +1 -1
- package/dist/cjs/components/_internal/pane-chrome.js.map +4 -4
- package/dist/cjs/components/_internal/shell-sidebar.js +1 -1
- package/dist/cjs/components/_internal/shell-sidebar.js.map +4 -4
- package/dist/cjs/components/accordion.d.ts.map +1 -1
- package/dist/cjs/components/accordion.js +1 -1
- package/dist/cjs/components/accordion.js.map +3 -3
- package/dist/cjs/components/accordion.props.d.ts +0 -5
- package/dist/cjs/components/accordion.props.d.ts.map +1 -1
- package/dist/cjs/components/accordion.props.js +1 -1
- package/dist/cjs/components/accordion.props.js.map +2 -2
- package/dist/cjs/components/alert-dialog.js +1 -1
- package/dist/cjs/components/alert-dialog.js.map +4 -4
- package/dist/cjs/components/avatar.d.ts +1 -2
- package/dist/cjs/components/avatar.d.ts.map +1 -1
- package/dist/cjs/components/avatar.js +1 -1
- package/dist/cjs/components/avatar.js.map +4 -4
- package/dist/cjs/components/avatar.props.d.ts.map +1 -1
- package/dist/cjs/components/avatar.props.js.map +1 -1
- package/dist/cjs/components/blockquote.d.ts +1 -2
- package/dist/cjs/components/blockquote.d.ts.map +1 -1
- package/dist/cjs/components/blockquote.js +1 -1
- package/dist/cjs/components/blockquote.js.map +4 -4
- package/dist/cjs/components/blockquote.props.d.ts +2 -2
- package/dist/cjs/components/blockquote.props.js +1 -1
- package/dist/cjs/components/blockquote.props.js.map +2 -2
- package/dist/cjs/components/button.d.ts +23 -7
- package/dist/cjs/components/button.d.ts.map +1 -1
- package/dist/cjs/components/button.js +1 -4
- package/dist/cjs/components/button.js.map +3 -3
- package/dist/cjs/components/button.props.js +1 -1
- package/dist/cjs/components/button.props.js.map +2 -2
- package/dist/cjs/components/card.d.ts +1 -2
- package/dist/cjs/components/card.d.ts.map +1 -1
- package/dist/cjs/components/card.js +1 -1
- package/dist/cjs/components/card.js.map +4 -4
- package/dist/cjs/components/chatbar.d.ts +2 -3
- package/dist/cjs/components/chatbar.d.ts.map +1 -1
- package/dist/cjs/components/chatbar.js +1 -4
- package/dist/cjs/components/chatbar.js.map +4 -4
- package/dist/cjs/components/checkbox-group.d.ts +2 -3
- package/dist/cjs/components/checkbox-group.d.ts.map +1 -1
- package/dist/cjs/components/checkbox-group.js +1 -1
- package/dist/cjs/components/checkbox-group.js.map +4 -4
- package/dist/cjs/components/checkbox-group.props.js.map +1 -1
- package/dist/cjs/components/checkbox.d.ts +1 -2
- package/dist/cjs/components/checkbox.d.ts.map +1 -1
- package/dist/cjs/components/checkbox.js +1 -1
- package/dist/cjs/components/checkbox.js.map +4 -4
- package/dist/cjs/components/checkbox.props.js.map +1 -1
- package/dist/cjs/components/chip.d.ts +18 -0
- package/dist/cjs/components/chip.d.ts.map +1 -0
- package/dist/cjs/components/chip.js +2 -0
- package/dist/cjs/components/chip.js.map +7 -0
- package/dist/cjs/components/{badge.props.d.ts → chip.props.d.ts} +3 -3
- package/dist/cjs/components/chip.props.d.ts.map +1 -0
- package/dist/cjs/components/chip.props.js +2 -0
- package/dist/cjs/components/chip.props.js.map +7 -0
- package/dist/cjs/components/code.d.ts +1 -2
- package/dist/cjs/components/code.d.ts.map +1 -1
- package/dist/cjs/components/code.js +1 -1
- package/dist/cjs/components/code.js.map +4 -4
- package/dist/cjs/components/code.props.d.ts +2 -2
- package/dist/cjs/components/code.props.js +1 -1
- package/dist/cjs/components/code.props.js.map +2 -2
- package/dist/cjs/components/combobox.d.ts +1 -2
- package/dist/cjs/components/combobox.d.ts.map +1 -1
- package/dist/cjs/components/combobox.js +1 -1
- package/dist/cjs/components/combobox.js.map +4 -4
- package/dist/cjs/components/combobox.props.d.ts +1 -1
- package/dist/cjs/components/combobox.props.js +1 -1
- package/dist/cjs/components/combobox.props.js.map +2 -2
- package/dist/cjs/components/context-menu.js +1 -1
- package/dist/cjs/components/context-menu.js.map +4 -4
- package/dist/cjs/components/context-menu.props.js +1 -1
- package/dist/cjs/components/context-menu.props.js.map +2 -2
- package/dist/cjs/components/dialog.js +1 -1
- package/dist/cjs/components/dialog.js.map +4 -4
- package/dist/cjs/components/dropdown-menu.js +1 -1
- package/dist/cjs/components/dropdown-menu.js.map +4 -4
- package/dist/cjs/components/dropdown-menu.props.js +1 -1
- package/dist/cjs/components/dropdown-menu.props.js.map +2 -2
- package/dist/cjs/components/heading.d.ts +1 -2
- package/dist/cjs/components/heading.d.ts.map +1 -1
- package/dist/cjs/components/heading.js +1 -1
- package/dist/cjs/components/heading.js.map +4 -4
- package/dist/cjs/components/heading.props.d.ts +2 -2
- package/dist/cjs/components/heading.props.js +1 -1
- package/dist/cjs/components/heading.props.js.map +2 -2
- package/dist/cjs/components/index.d.ts +2 -18
- package/dist/cjs/components/index.d.ts.map +1 -1
- package/dist/cjs/components/index.js +3 -14
- package/dist/cjs/components/index.js.map +4 -4
- package/dist/cjs/components/kbd.d.ts +1 -2
- package/dist/cjs/components/kbd.d.ts.map +1 -1
- package/dist/cjs/components/kbd.js +1 -1
- package/dist/cjs/components/kbd.js.map +4 -4
- package/dist/cjs/components/kbd.props.d.ts +1 -1
- package/dist/cjs/components/kbd.props.js +1 -1
- package/dist/cjs/components/kbd.props.js.map +2 -2
- package/dist/cjs/components/link.d.ts +1 -2
- package/dist/cjs/components/link.d.ts.map +1 -1
- package/dist/cjs/components/link.js +1 -1
- package/dist/cjs/components/link.js.map +4 -4
- package/dist/cjs/components/link.props.d.ts +2 -2
- package/dist/cjs/components/link.props.js +1 -1
- package/dist/cjs/components/link.props.js.map +2 -2
- package/dist/cjs/components/message-scroller.d.ts +2 -3
- package/dist/cjs/components/message-scroller.d.ts.map +1 -1
- package/dist/cjs/components/message-scroller.js +1 -4
- package/dist/cjs/components/message-scroller.js.map +4 -4
- package/dist/cjs/components/navbar.d.ts +14 -6
- package/dist/cjs/components/navbar.d.ts.map +1 -1
- package/dist/cjs/components/navbar.js +1 -1
- package/dist/cjs/components/navbar.js.map +2 -2
- package/dist/cjs/components/notice.d.ts.map +1 -1
- package/dist/cjs/components/notice.js +1 -4
- package/dist/cjs/components/notice.js.map +4 -4
- package/dist/cjs/components/popover.js.map +1 -1
- package/dist/cjs/components/progress.d.ts +1 -2
- package/dist/cjs/components/progress.d.ts.map +1 -1
- package/dist/cjs/components/progress.js +1 -1
- package/dist/cjs/components/progress.js.map +4 -4
- package/dist/cjs/components/progress.props.js.map +1 -1
- package/dist/cjs/components/radio-group.d.ts +2 -3
- package/dist/cjs/components/radio-group.d.ts.map +1 -1
- package/dist/cjs/components/radio-group.js +1 -1
- package/dist/cjs/components/radio-group.js.map +4 -4
- package/dist/cjs/components/radio-group.props.js.map +1 -1
- package/dist/cjs/components/radio.d.ts +1 -2
- package/dist/cjs/components/radio.d.ts.map +1 -1
- package/dist/cjs/components/radio.js +1 -1
- package/dist/cjs/components/radio.js.map +4 -4
- package/dist/cjs/components/radio.props.js.map +1 -1
- package/dist/cjs/components/schemas/base-button.schema.d.ts +2 -3
- package/dist/cjs/components/schemas/base-button.schema.d.ts.map +1 -1
- package/dist/cjs/components/schemas/base-button.schema.js +1 -1
- package/dist/cjs/components/schemas/base-button.schema.js.map +2 -2
- package/dist/cjs/components/schemas/button.schema.d.ts +0 -1
- package/dist/cjs/components/schemas/button.schema.d.ts.map +1 -1
- package/dist/cjs/components/schemas/button.schema.js +1 -1
- package/dist/cjs/components/schemas/button.schema.js.map +2 -2
- package/dist/cjs/components/schemas/index.d.ts +2 -6
- package/dist/cjs/components/schemas/index.d.ts.map +1 -1
- package/dist/cjs/components/schemas/index.js +1 -1
- package/dist/cjs/components/schemas/index.js.map +4 -4
- package/dist/cjs/components/schemas/{toggle-button.schema.d.ts → toggle.schema.d.ts} +13 -38
- package/dist/cjs/components/schemas/toggle.schema.d.ts.map +1 -0
- package/dist/cjs/components/schemas/toggle.schema.js +2 -0
- package/dist/cjs/components/schemas/toggle.schema.js.map +7 -0
- package/dist/cjs/components/scroll-area.d.ts +1 -2
- package/dist/cjs/components/scroll-area.d.ts.map +1 -1
- package/dist/cjs/components/scroll-area.js +1 -1
- package/dist/cjs/components/scroll-area.js.map +4 -4
- package/dist/cjs/components/segmented-control.d.ts +1 -2
- package/dist/cjs/components/segmented-control.d.ts.map +1 -1
- package/dist/cjs/components/segmented-control.js +1 -1
- package/dist/cjs/components/segmented-control.js.map +4 -4
- package/dist/cjs/components/select.d.ts +1 -2
- package/dist/cjs/components/select.d.ts.map +1 -1
- package/dist/cjs/components/select.js +1 -1
- package/dist/cjs/components/select.js.map +4 -4
- package/dist/cjs/components/select.props.js.map +1 -1
- package/dist/cjs/components/separator.d.ts +1 -2
- package/dist/cjs/components/separator.d.ts.map +1 -1
- package/dist/cjs/components/separator.js +1 -1
- package/dist/cjs/components/separator.js.map +4 -4
- package/dist/cjs/components/separator.props.js.map +1 -1
- package/dist/cjs/components/sheet.js +1 -1
- package/dist/cjs/components/sheet.js.map +4 -4
- package/dist/cjs/components/shell.js +1 -1
- package/dist/cjs/components/shell.js.map +4 -4
- package/dist/cjs/components/sidebar.d.ts +5 -5
- package/dist/cjs/components/sidebar.d.ts.map +1 -1
- package/dist/cjs/components/sidebar.js +1 -1
- package/dist/cjs/components/sidebar.js.map +4 -4
- package/dist/cjs/components/slider.d.ts +1 -2
- package/dist/cjs/components/slider.d.ts.map +1 -1
- package/dist/cjs/components/slider.js +1 -1
- package/dist/cjs/components/slider.js.map +4 -4
- package/dist/cjs/components/slider.props.js.map +1 -1
- package/dist/cjs/components/spinner.d.ts +1 -2
- package/dist/cjs/components/spinner.d.ts.map +1 -1
- package/dist/cjs/components/spinner.js +1 -1
- package/dist/cjs/components/spinner.js.map +3 -3
- package/dist/cjs/components/switch.d.ts +1 -2
- package/dist/cjs/components/switch.d.ts.map +1 -1
- package/dist/cjs/components/switch.js +1 -1
- package/dist/cjs/components/switch.js.map +4 -4
- package/dist/cjs/components/switch.props.js.map +1 -1
- package/dist/cjs/components/table.d.ts +1 -2
- package/dist/cjs/components/table.d.ts.map +1 -1
- package/dist/cjs/components/table.js +1 -1
- package/dist/cjs/components/table.js.map +4 -4
- package/dist/cjs/components/tabs.d.ts +3 -4
- package/dist/cjs/components/tabs.d.ts.map +1 -1
- package/dist/cjs/components/tabs.js +1 -1
- package/dist/cjs/components/tabs.js.map +4 -4
- package/dist/cjs/components/tabs.props.js.map +1 -1
- package/dist/cjs/components/text-area.d.ts +1 -2
- package/dist/cjs/components/text-area.d.ts.map +1 -1
- package/dist/cjs/components/text-area.js +1 -1
- package/dist/cjs/components/text-area.js.map +4 -4
- package/dist/cjs/components/text-area.props.js.map +1 -1
- package/dist/cjs/components/text-field.d.ts +1 -2
- package/dist/cjs/components/text-field.d.ts.map +1 -1
- package/dist/cjs/components/text-field.js +2 -2
- package/dist/cjs/components/text-field.js.map +4 -4
- package/dist/cjs/components/text-field.props.js.map +1 -1
- package/dist/cjs/components/text.d.ts +1 -2
- package/dist/cjs/components/text.d.ts.map +1 -1
- package/dist/cjs/components/text.js +1 -1
- package/dist/cjs/components/text.js.map +4 -4
- package/dist/cjs/components/text.props.d.ts +2 -2
- package/dist/cjs/components/text.props.js +1 -1
- package/dist/cjs/components/text.props.js.map +2 -2
- package/dist/cjs/components/theme.js.map +1 -1
- package/dist/cjs/components/theme.props.js.map +1 -1
- package/dist/cjs/components/toggle.d.ts +35 -0
- package/dist/cjs/components/toggle.d.ts.map +1 -0
- package/dist/cjs/components/toggle.js +10 -0
- package/dist/cjs/components/toggle.js.map +7 -0
- package/dist/cjs/components/toolbar.d.ts +2 -3
- package/dist/cjs/components/toolbar.d.ts.map +1 -1
- package/dist/cjs/components/toolbar.js +1 -4
- package/dist/cjs/components/toolbar.js.map +4 -4
- package/dist/cjs/components/tooltip.js +1 -1
- package/dist/cjs/components/tooltip.js.map +4 -4
- package/dist/cjs/components/virtual-menu.d.ts +2 -1
- package/dist/cjs/components/virtual-menu.d.ts.map +1 -1
- package/dist/cjs/components/virtual-menu.js +1 -1
- package/dist/cjs/components/virtual-menu.js.map +2 -2
- package/dist/cjs/hooks/index.js.map +1 -1
- package/dist/cjs/hooks/use-prop-synced-state.d.ts +1 -1
- package/dist/cjs/hooks/use-prop-synced-state.js.map +1 -1
- package/dist/cjs/hooks/use-toggle-state.d.ts +1 -1
- package/dist/cjs/hooks/use-toggle-state.js.map +1 -1
- package/dist/cjs/index.js +5 -16
- package/dist/cjs/index.js.map +4 -4
- package/dist/cjs/props/color.prop.js.map +1 -1
- package/dist/cjs/props/emphasis.prop.js.map +1 -1
- package/dist/cjs/props/index.d.ts +1 -14
- package/dist/cjs/props/index.d.ts.map +1 -1
- package/dist/cjs/props/index.js +1 -1
- package/dist/cjs/props/index.js.map +4 -4
- package/dist/cjs/props/weight.prop.d.ts +1 -1
- package/dist/cjs/props/weight.prop.d.ts.map +1 -1
- package/dist/cjs/props/weight.prop.js +1 -1
- package/dist/cjs/props/weight.prop.js.map +2 -2
- package/dist/esm/{chunk-STMTXK7U.js → chunk-24CVW6P7.js} +2 -2
- package/dist/esm/chunk-2KZ44I6T.js +2 -0
- package/dist/esm/chunk-2KZ44I6T.js.map +7 -0
- package/dist/esm/chunk-2WSD2H23.js +2 -0
- package/dist/esm/chunk-2WSD2H23.js.map +7 -0
- package/dist/esm/chunk-36GV4H3C.js +2 -0
- package/dist/esm/chunk-36GV4H3C.js.map +7 -0
- package/dist/esm/chunk-4I4NJNYO.js +2 -0
- package/dist/esm/chunk-4I4NJNYO.js.map +7 -0
- package/dist/esm/chunk-4VBH3W2S.js +2 -0
- package/dist/esm/chunk-4ZAJVYU6.js +2 -0
- package/dist/esm/{chunk-5AHQJB6H.js.map → chunk-4ZAJVYU6.js.map} +2 -2
- package/dist/esm/{chunk-YVHRWMSZ.js → chunk-5B6JDZ3S.js} +2 -2
- package/dist/esm/chunk-5B6JDZ3S.js.map +7 -0
- package/dist/esm/{chunk-NCDOMH5I.js → chunk-5P4JTWBK.js} +2 -2
- package/dist/esm/chunk-5P4JTWBK.js.map +7 -0
- package/dist/esm/chunk-5WLSAUNJ.js +2 -0
- package/dist/esm/chunk-5WLSAUNJ.js.map +7 -0
- package/dist/esm/chunk-6WANXT2G.js +2 -0
- package/dist/esm/chunk-6WANXT2G.js.map +7 -0
- package/dist/esm/chunk-72FU5FEC.js +2 -0
- package/dist/esm/chunk-7AXEPJYF.js +2 -0
- package/dist/esm/chunk-7AXEPJYF.js.map +7 -0
- package/dist/esm/{chunk-MLXHD7YF.js → chunk-7FPLWHMT.js} +2 -2
- package/dist/esm/chunk-7MC7N4BC.js +2 -0
- package/dist/esm/chunk-7MC7N4BC.js.map +7 -0
- package/dist/esm/chunk-7MPFZIZX.js +2 -0
- package/dist/esm/chunk-7MPFZIZX.js.map +7 -0
- package/dist/esm/{chunk-YS5BZRRK.js → chunk-7OQXCYCW.js} +2 -2
- package/dist/esm/{chunk-BINUV3ME.js → chunk-7QPXLSVR.js} +2 -2
- package/dist/esm/{chunk-BINUV3ME.js.map → chunk-7QPXLSVR.js.map} +2 -2
- package/dist/esm/chunk-7XWAXYZD.js +2 -0
- package/dist/esm/chunk-7XWAXYZD.js.map +7 -0
- package/dist/esm/chunk-AYZRLA7F.js +2 -0
- package/dist/esm/{chunk-6RZVKCNG.js → chunk-BHGES72S.js} +2 -2
- package/dist/esm/chunk-BQD7XS4K.js +2 -0
- package/dist/esm/chunk-BQD7XS4K.js.map +7 -0
- package/dist/esm/{chunk-KU3LLWFU.js → chunk-CTZ467AB.js} +2 -2
- package/dist/esm/{chunk-34KVYDF6.js → chunk-CUNKWFKA.js} +1 -1
- package/dist/esm/{chunk-34KVYDF6.js.map → chunk-CUNKWFKA.js.map} +1 -1
- package/dist/esm/{chunk-Q7S5LQBQ.js → chunk-CYO6CRMQ.js} +2 -2
- package/dist/esm/chunk-D3U4MWDZ.js +1 -0
- package/dist/esm/{chunk-VLLJ7A6P.js → chunk-DCNHG6VN.js} +2 -2
- package/dist/esm/chunk-DL6F2TIU.js +2 -0
- package/dist/esm/chunk-DL6F2TIU.js.map +7 -0
- package/dist/esm/chunk-DSV3XBHM.js +2 -0
- package/dist/esm/chunk-DSV3XBHM.js.map +7 -0
- package/dist/esm/{chunk-UZQO4APP.js → chunk-EDEYYJ3Q.js} +2 -2
- package/dist/esm/chunk-EDP2TJVB.js +2 -0
- package/dist/esm/chunk-EDP2TJVB.js.map +7 -0
- package/dist/esm/chunk-EGSMLRSO.js +2 -0
- package/dist/esm/chunk-EGSMLRSO.js.map +7 -0
- package/dist/esm/{chunk-6FLLFCBU.js → chunk-ELAW7ZUG.js} +2 -2
- package/dist/esm/chunk-EOWG5SIY.js +2 -0
- package/dist/esm/chunk-EOWG5SIY.js.map +7 -0
- package/dist/esm/{chunk-MAI7FEU7.js → chunk-FSMUCDLI.js} +2 -2
- package/dist/esm/{chunk-MAI7FEU7.js.map → chunk-FSMUCDLI.js.map} +2 -2
- package/dist/esm/{chunk-B6RH4CTY.js → chunk-G46OLCM2.js} +2 -2
- package/dist/esm/{chunk-VK7RNXUO.js → chunk-GBFGUOFS.js} +1 -1
- package/dist/esm/{chunk-VK7RNXUO.js.map → chunk-GBFGUOFS.js.map} +1 -1
- package/dist/esm/{chunk-5LGWS5QS.js → chunk-GOV5I7I2.js} +2 -2
- package/dist/esm/{chunk-N77QJUTO.js → chunk-GWGQ73PU.js} +2 -2
- package/dist/esm/chunk-GWGQ73PU.js.map +7 -0
- package/dist/esm/{chunk-VSSJTPBV.js → chunk-HELY5CSU.js} +2 -2
- package/dist/esm/{chunk-UFJJTUOU.js → chunk-HGG3ULNK.js} +2 -2
- package/dist/esm/chunk-HZNOHY6O.js +2 -0
- package/dist/esm/chunk-IAC5IOPN.js +2 -0
- package/dist/esm/chunk-IAC5IOPN.js.map +7 -0
- package/dist/esm/chunk-IN6ZEGDK.js +2 -0
- package/dist/esm/chunk-IN6ZEGDK.js.map +7 -0
- package/dist/esm/chunk-IQBSUN5B.js +2 -0
- package/dist/esm/chunk-IQBSUN5B.js.map +7 -0
- package/dist/esm/{chunk-PUVZFRTQ.js → chunk-IZPDJN6O.js} +2 -2
- package/dist/esm/chunk-JMBCX5XR.js +2 -0
- package/dist/esm/chunk-JMBCX5XR.js.map +7 -0
- package/dist/esm/{chunk-KPACVWV4.js → chunk-K4BDLRCC.js} +2 -2
- package/dist/esm/chunk-K6QKUX3C.js +2 -0
- package/dist/esm/chunk-K6QKUX3C.js.map +7 -0
- package/dist/esm/{chunk-GYB7PAGB.js → chunk-K6WT5ZEA.js} +2 -2
- package/dist/esm/{chunk-CLEH57SW.js → chunk-KIYCILXL.js} +2 -2
- package/dist/esm/{chunk-ZCAI2PRH.js → chunk-KRDRQU4G.js} +2 -2
- package/dist/esm/{chunk-T5DSQKKF.js → chunk-KRZL245C.js} +2 -2
- package/dist/esm/chunk-LHYX53XA.js +2 -0
- package/dist/esm/chunk-LHYX53XA.js.map +7 -0
- package/dist/esm/{chunk-L2IIIELE.js → chunk-LNFN35ZE.js} +2 -2
- package/dist/esm/{chunk-PUQXBW2K.js → chunk-LPVDR7V3.js} +2 -2
- package/dist/esm/chunk-LVCP5WGX.js +2 -0
- package/dist/esm/{chunk-EVTNB4TB.js.map → chunk-LVCP5WGX.js.map} +2 -2
- package/dist/esm/chunk-M4M4OZTS.js +2 -0
- package/dist/esm/{chunk-PDBVZAUJ.js.map → chunk-M4M4OZTS.js.map} +2 -2
- package/dist/esm/chunk-MC3GY6ET.js +2 -0
- package/dist/esm/chunk-MC3GY6ET.js.map +7 -0
- package/dist/esm/chunk-MKY2IRPO.js +2 -0
- package/dist/esm/chunk-MKY2IRPO.js.map +7 -0
- package/dist/esm/{chunk-CR2BSCFM.js → chunk-MYO2E46Z.js} +2 -2
- package/dist/esm/{chunk-CR2BSCFM.js.map → chunk-MYO2E46Z.js.map} +2 -2
- package/dist/esm/chunk-OA2BZDKL.js +2 -0
- package/dist/esm/chunk-OA2BZDKL.js.map +7 -0
- package/dist/esm/chunk-P3WB3K2M.js +2 -0
- package/dist/esm/chunk-P3WB3K2M.js.map +7 -0
- package/dist/esm/{chunk-JUY7CBSL.js → chunk-PBFSBHBS.js} +2 -2
- package/dist/esm/chunk-PEP6MQJ2.js +2 -0
- package/dist/esm/chunk-PEP6MQJ2.js.map +7 -0
- package/dist/esm/{chunk-WAURCNAS.js → chunk-PN3RQFSU.js} +1 -1
- package/dist/esm/chunk-PN3RQFSU.js.map +7 -0
- package/dist/esm/chunk-QQVA2PJ3.js +2 -0
- package/dist/esm/chunk-QQVA2PJ3.js.map +7 -0
- package/dist/esm/{chunk-E3754NJZ.js → chunk-QZ6OCMH4.js} +2 -2
- package/dist/esm/chunk-RBTTIDON.js +2 -0
- package/dist/esm/chunk-RBTTIDON.js.map +7 -0
- package/dist/esm/chunk-RDS3AJWW.js +2 -0
- package/dist/esm/chunk-RDS3AJWW.js.map +7 -0
- package/dist/esm/{chunk-6AZV4VFW.js → chunk-RGZKWVJC.js} +2 -2
- package/dist/esm/{chunk-6AZV4VFW.js.map → chunk-RGZKWVJC.js.map} +1 -1
- package/dist/esm/chunk-T4L4QDBG.js +2 -0
- package/dist/esm/chunk-T4L4QDBG.js.map +7 -0
- package/dist/esm/chunk-TCSPZ27B.js +2 -0
- package/dist/esm/chunk-TCSPZ27B.js.map +7 -0
- package/dist/esm/chunk-TDQTMR5T.js +2 -0
- package/dist/esm/chunk-TDQTMR5T.js.map +7 -0
- package/dist/esm/{chunk-54KMG7NX.js → chunk-TKSG7KBZ.js} +2 -2
- package/dist/esm/{chunk-WDDO73O5.js → chunk-UEHCCJYY.js} +2 -2
- package/dist/esm/chunk-UMIDPKFZ.js +2 -0
- package/dist/esm/chunk-UMIDPKFZ.js.map +7 -0
- package/dist/esm/chunk-UW5IJ64A.js +5 -0
- package/dist/esm/chunk-UW5IJ64A.js.map +7 -0
- package/dist/esm/{chunk-KSZOVI57.js → chunk-VCU6VCPH.js} +2 -2
- package/dist/esm/chunk-VCU6VCPH.js.map +7 -0
- package/dist/esm/chunk-VJOJGAGA.js +2 -0
- package/dist/esm/chunk-VJOJGAGA.js.map +7 -0
- package/dist/esm/chunk-VNONKPH7.js +2 -0
- package/dist/esm/chunk-VNONKPH7.js.map +7 -0
- package/dist/esm/chunk-VOEZ5HJL.js +2 -0
- package/dist/esm/chunk-VOEZ5HJL.js.map +7 -0
- package/dist/esm/chunk-W7YHNMAO.js +2 -0
- package/dist/esm/chunk-W7YHNMAO.js.map +7 -0
- package/dist/esm/chunk-WQT6UULR.js +2 -0
- package/dist/esm/chunk-WQT6UULR.js.map +7 -0
- package/dist/esm/chunk-WW7WTPM6.js +2 -0
- package/dist/esm/chunk-WW7WTPM6.js.map +7 -0
- package/dist/esm/{chunk-ZWZGUBL4.js → chunk-WWF3IU3P.js} +1 -1
- package/dist/esm/chunk-WWF3IU3P.js.map +7 -0
- package/dist/esm/chunk-XEW4BRIL.js +2 -0
- package/dist/esm/chunk-XEW4BRIL.js.map +7 -0
- package/dist/esm/chunk-YB7CENHH.js +2 -0
- package/dist/esm/chunk-YB7CENHH.js.map +7 -0
- package/dist/esm/chunk-YEIZ43KW.js +2 -0
- package/dist/esm/chunk-YEIZ43KW.js.map +7 -0
- package/dist/esm/chunk-ZCWDURKJ.js +2 -0
- package/dist/esm/chunk-ZCWDURKJ.js.map +7 -0
- package/dist/esm/components/_internal/base-button.d.ts +2 -4
- package/dist/esm/components/_internal/base-button.d.ts.map +1 -1
- package/dist/esm/components/_internal/base-button.js +1 -1
- package/dist/esm/components/_internal/base-button.props.d.ts +1 -9
- package/dist/esm/components/_internal/base-button.props.d.ts.map +1 -1
- package/dist/esm/components/_internal/base-button.props.js +1 -1
- package/dist/esm/components/_internal/base-checkbox.props.js +1 -1
- package/dist/esm/components/_internal/base-menu.props.d.ts +2 -2
- package/dist/esm/components/_internal/base-menu.props.js +1 -1
- package/dist/esm/components/_internal/base-menu.utils.d.ts.map +1 -1
- package/dist/esm/components/_internal/base-menu.utils.js +1 -1
- package/dist/esm/components/_internal/base-radio.props.js +1 -1
- package/dist/esm/components/_internal/base-tab-list.props.js +1 -1
- package/dist/esm/components/_internal/menu-context.d.ts +5 -2
- package/dist/esm/components/_internal/menu-context.d.ts.map +1 -1
- package/dist/esm/components/_internal/menu-context.js +1 -1
- package/dist/esm/components/_internal/pane-chrome.js +1 -1
- package/dist/esm/components/_internal/shell-sidebar.js +1 -1
- package/dist/esm/components/accordion.d.ts.map +1 -1
- package/dist/esm/components/accordion.js +1 -1
- package/dist/esm/components/accordion.props.d.ts +0 -5
- package/dist/esm/components/accordion.props.d.ts.map +1 -1
- package/dist/esm/components/accordion.props.js +1 -1
- package/dist/esm/components/alert-dialog.js +1 -1
- package/dist/esm/components/avatar.d.ts +1 -2
- package/dist/esm/components/avatar.d.ts.map +1 -1
- package/dist/esm/components/avatar.js +1 -1
- package/dist/esm/components/avatar.props.d.ts.map +1 -1
- package/dist/esm/components/avatar.props.js +1 -1
- package/dist/esm/components/blockquote.d.ts +1 -2
- package/dist/esm/components/blockquote.d.ts.map +1 -1
- package/dist/esm/components/blockquote.js +1 -1
- package/dist/esm/components/blockquote.props.d.ts +2 -2
- package/dist/esm/components/blockquote.props.js +1 -1
- package/dist/esm/components/box.js +1 -1
- package/dist/esm/components/button.d.ts +23 -7
- package/dist/esm/components/button.d.ts.map +1 -1
- package/dist/esm/components/button.js +1 -1
- package/dist/esm/components/button.props.js +1 -1
- package/dist/esm/components/card.d.ts +1 -2
- package/dist/esm/components/card.d.ts.map +1 -1
- package/dist/esm/components/card.js +1 -1
- package/dist/esm/components/chatbar.d.ts +2 -3
- package/dist/esm/components/chatbar.d.ts.map +1 -1
- package/dist/esm/components/chatbar.js +1 -1
- package/dist/esm/components/checkbox-group.d.ts +2 -3
- package/dist/esm/components/checkbox-group.d.ts.map +1 -1
- package/dist/esm/components/checkbox-group.js +1 -1
- package/dist/esm/components/checkbox-group.props.js +1 -1
- package/dist/esm/components/checkbox.d.ts +1 -2
- package/dist/esm/components/checkbox.d.ts.map +1 -1
- package/dist/esm/components/checkbox.js +1 -1
- package/dist/esm/components/checkbox.props.js +1 -1
- package/dist/esm/components/chip.d.ts +18 -0
- package/dist/esm/components/chip.d.ts.map +1 -0
- package/dist/esm/components/chip.js +2 -0
- package/dist/esm/components/{badge.props.d.ts → chip.props.d.ts} +3 -3
- package/dist/esm/components/chip.props.d.ts.map +1 -0
- package/dist/esm/components/chip.props.js +2 -0
- package/dist/esm/components/code.d.ts +1 -2
- package/dist/esm/components/code.d.ts.map +1 -1
- package/dist/esm/components/code.js +1 -1
- package/dist/esm/components/code.props.d.ts +2 -2
- package/dist/esm/components/code.props.js +1 -1
- package/dist/esm/components/combobox.d.ts +1 -2
- package/dist/esm/components/combobox.d.ts.map +1 -1
- package/dist/esm/components/combobox.js +1 -1
- package/dist/esm/components/combobox.props.d.ts +1 -1
- package/dist/esm/components/combobox.props.js +1 -1
- package/dist/esm/components/context-menu.js +1 -1
- package/dist/esm/components/context-menu.props.js +1 -1
- package/dist/esm/components/dialog.js +1 -1
- package/dist/esm/components/dropdown-menu.js +1 -1
- package/dist/esm/components/dropdown-menu.props.js +1 -1
- package/dist/esm/components/flex.js +1 -1
- package/dist/esm/components/grid.js +1 -1
- package/dist/esm/components/heading.d.ts +1 -2
- package/dist/esm/components/heading.d.ts.map +1 -1
- package/dist/esm/components/heading.js +1 -1
- package/dist/esm/components/heading.props.d.ts +2 -2
- package/dist/esm/components/heading.props.js +1 -1
- package/dist/esm/components/index.d.ts +2 -18
- package/dist/esm/components/index.d.ts.map +1 -1
- package/dist/esm/components/index.js +1 -1
- package/dist/esm/components/kbd.d.ts +1 -2
- package/dist/esm/components/kbd.d.ts.map +1 -1
- package/dist/esm/components/kbd.js +1 -1
- package/dist/esm/components/kbd.props.d.ts +1 -1
- package/dist/esm/components/kbd.props.js +1 -1
- package/dist/esm/components/link.d.ts +1 -2
- package/dist/esm/components/link.d.ts.map +1 -1
- package/dist/esm/components/link.js +1 -1
- package/dist/esm/components/link.props.d.ts +2 -2
- package/dist/esm/components/link.props.js +1 -1
- package/dist/esm/components/message-scroller.d.ts +2 -3
- package/dist/esm/components/message-scroller.d.ts.map +1 -1
- package/dist/esm/components/message-scroller.js +1 -1
- package/dist/esm/components/navbar.d.ts +14 -6
- package/dist/esm/components/navbar.d.ts.map +1 -1
- package/dist/esm/components/navbar.js +1 -1
- package/dist/esm/components/notice.d.ts.map +1 -1
- package/dist/esm/components/notice.js +1 -1
- package/dist/esm/components/popover.js +1 -1
- package/dist/esm/components/progress.d.ts +1 -2
- package/dist/esm/components/progress.d.ts.map +1 -1
- package/dist/esm/components/progress.js +1 -1
- package/dist/esm/components/progress.props.js +1 -1
- package/dist/esm/components/radio-group.d.ts +2 -3
- package/dist/esm/components/radio-group.d.ts.map +1 -1
- package/dist/esm/components/radio-group.js +1 -1
- package/dist/esm/components/radio-group.props.js +1 -1
- package/dist/esm/components/radio.d.ts +1 -2
- package/dist/esm/components/radio.d.ts.map +1 -1
- package/dist/esm/components/radio.js +1 -1
- package/dist/esm/components/radio.props.js +1 -1
- package/dist/esm/components/schemas/base-button.schema.d.ts +2 -3
- package/dist/esm/components/schemas/base-button.schema.d.ts.map +1 -1
- package/dist/esm/components/schemas/base-button.schema.js +1 -1
- package/dist/esm/components/schemas/button.schema.d.ts +0 -1
- package/dist/esm/components/schemas/button.schema.d.ts.map +1 -1
- package/dist/esm/components/schemas/button.schema.js +1 -1
- package/dist/esm/components/schemas/index.d.ts +2 -6
- package/dist/esm/components/schemas/index.d.ts.map +1 -1
- package/dist/esm/components/schemas/index.js +1 -1
- package/dist/esm/components/schemas/index.js.map +2 -2
- package/dist/esm/components/schemas/{toggle-button.schema.d.ts → toggle.schema.d.ts} +13 -38
- package/dist/esm/components/schemas/toggle.schema.d.ts.map +1 -0
- package/dist/esm/components/schemas/toggle.schema.js +2 -0
- package/dist/esm/components/scroll-area.d.ts +1 -2
- package/dist/esm/components/scroll-area.d.ts.map +1 -1
- package/dist/esm/components/scroll-area.js +1 -1
- package/dist/esm/components/segmented-control.d.ts +1 -2
- package/dist/esm/components/segmented-control.d.ts.map +1 -1
- package/dist/esm/components/segmented-control.js +1 -1
- package/dist/esm/components/select.d.ts +1 -2
- package/dist/esm/components/select.d.ts.map +1 -1
- package/dist/esm/components/select.js +1 -1
- package/dist/esm/components/select.props.js +1 -1
- package/dist/esm/components/separator.d.ts +1 -2
- package/dist/esm/components/separator.d.ts.map +1 -1
- package/dist/esm/components/separator.js +1 -1
- package/dist/esm/components/separator.props.js +1 -1
- package/dist/esm/components/sheet.js +1 -1
- package/dist/esm/components/shell.js +1 -1
- package/dist/esm/components/sidebar.d.ts +5 -5
- package/dist/esm/components/sidebar.d.ts.map +1 -1
- package/dist/esm/components/sidebar.js +1 -1
- package/dist/esm/components/slider.d.ts +1 -2
- package/dist/esm/components/slider.d.ts.map +1 -1
- package/dist/esm/components/slider.js +1 -1
- package/dist/esm/components/slider.props.js +1 -1
- package/dist/esm/components/spinner.d.ts +1 -2
- package/dist/esm/components/spinner.d.ts.map +1 -1
- package/dist/esm/components/spinner.js +1 -1
- package/dist/esm/components/switch.d.ts +1 -2
- package/dist/esm/components/switch.d.ts.map +1 -1
- package/dist/esm/components/switch.js +1 -1
- package/dist/esm/components/switch.props.js +1 -1
- package/dist/esm/components/table.d.ts +1 -2
- package/dist/esm/components/table.d.ts.map +1 -1
- package/dist/esm/components/table.js +1 -1
- package/dist/esm/components/tabs.d.ts +3 -4
- package/dist/esm/components/tabs.d.ts.map +1 -1
- package/dist/esm/components/tabs.js +1 -1
- package/dist/esm/components/tabs.props.js +1 -1
- package/dist/esm/components/text-area.d.ts +1 -2
- package/dist/esm/components/text-area.d.ts.map +1 -1
- package/dist/esm/components/text-area.js +1 -1
- package/dist/esm/components/text-area.props.js +1 -1
- package/dist/esm/components/text-field.d.ts +1 -2
- package/dist/esm/components/text-field.d.ts.map +1 -1
- package/dist/esm/components/text-field.js +1 -1
- package/dist/esm/components/text-field.props.js +1 -1
- package/dist/esm/components/text.d.ts +1 -2
- package/dist/esm/components/text.d.ts.map +1 -1
- package/dist/esm/components/text.js +1 -1
- package/dist/esm/components/text.props.d.ts +2 -2
- package/dist/esm/components/text.props.js +1 -1
- package/dist/esm/components/theme.js +1 -1
- package/dist/esm/components/theme.props.js +1 -1
- package/dist/esm/components/toggle.d.ts +35 -0
- package/dist/esm/components/toggle.d.ts.map +1 -0
- package/dist/esm/components/toggle.js +2 -0
- package/dist/esm/components/toolbar.d.ts +2 -3
- package/dist/esm/components/toolbar.d.ts.map +1 -1
- package/dist/esm/components/toolbar.js +1 -1
- package/dist/esm/components/tooltip.js +1 -1
- package/dist/esm/components/virtual-menu.d.ts +2 -1
- package/dist/esm/components/virtual-menu.d.ts.map +1 -1
- package/dist/esm/components/virtual-menu.js +1 -1
- package/dist/esm/helpers/extract-props.js +1 -1
- package/dist/esm/helpers/get-margin-styles.js +1 -1
- package/dist/esm/helpers/get-responsive-styles.js +1 -1
- package/dist/esm/helpers/index.js +1 -1
- package/dist/esm/helpers/inert.js +1 -1
- package/dist/esm/helpers/inert.js.map +4 -4
- package/dist/esm/hooks/index.js +1 -1
- package/dist/esm/hooks/use-prop-synced-state.d.ts +1 -1
- package/dist/esm/hooks/use-prop-synced-state.js +1 -1
- package/dist/esm/hooks/use-toggle-state.d.ts +1 -1
- package/dist/esm/hooks/use-toggle-state.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/props/color.prop.js +1 -1
- package/dist/esm/props/emphasis.prop.js +1 -1
- package/dist/esm/props/index.d.ts +1 -14
- package/dist/esm/props/index.d.ts.map +1 -1
- package/dist/esm/props/index.js +1 -1
- package/dist/esm/props/weight.prop.d.ts +1 -1
- package/dist/esm/props/weight.prop.d.ts.map +1 -1
- package/dist/esm/props/weight.prop.js +1 -1
- package/layout/components.css +0 -223
- package/layout.css +0 -221
- package/package.json +1 -1
- package/schemas/base-button.json +0 -5
- package/schemas/button.json +0 -5
- package/schemas/index.json +14 -629
- package/schemas/schemas.d.ts +2 -6
- package/schemas/{toggle-button.json → toggle.json} +4 -9
- package/src/components/_internal/base-button.css +2 -36
- package/src/components/_internal/base-button.props.ts +1 -7
- package/src/components/_internal/base-button.tsx +3 -9
- package/src/components/_internal/base-checkbox.css +3 -8
- package/src/components/_internal/base-menu.css +128 -118
- package/src/components/_internal/base-menu.props.ts +1 -1
- package/src/components/_internal/base-menu.utils.tsx +2 -1
- package/src/components/_internal/base-radio.css +2 -7
- package/src/components/_internal/base-sidebar-menu.css +11 -40
- package/src/components/_internal/base-tab-list.css +3 -4
- package/src/components/_internal/menu-context.tsx +9 -4
- package/src/components/accordion.css +0 -33
- package/src/components/accordion.props.tsx +0 -3
- package/src/components/accordion.tsx +1 -2
- package/src/components/alert-dialog.tsx +1 -1
- package/src/components/avatar.css +3 -3
- package/src/components/avatar.tsx +2 -4
- package/src/components/blockquote.props.tsx +1 -1
- package/src/components/blockquote.tsx +0 -2
- package/src/components/button.css +4 -3
- package/src/components/button.tsx +34 -19
- package/src/components/card.tsx +2 -4
- package/src/components/chatbar.css +2 -2
- package/src/components/chatbar.tsx +8 -7
- package/src/components/checkbox-group.tsx +2 -7
- package/src/components/checkbox.tsx +1 -4
- package/src/components/{badge.css → chip.css} +12 -12
- package/src/components/{badge.props.tsx → chip.props.tsx} +2 -2
- package/src/components/{badge.tsx → chip.tsx} +20 -23
- package/src/components/code.css +10 -32
- package/src/components/code.props.tsx +1 -1
- package/src/components/code.tsx +0 -4
- package/src/components/combobox.css +2 -11
- package/src/components/combobox.props.tsx +1 -1
- package/src/components/combobox.tsx +2 -4
- package/src/components/dialog.tsx +1 -1
- package/src/components/dropdown-menu.css +4 -4
- package/src/components/heading.css +9 -29
- package/src/components/heading.props.tsx +1 -1
- package/src/components/heading.tsx +2 -5
- package/src/components/index.css +2 -15
- package/src/components/index.tsx +2 -23
- package/src/components/kbd.css +1 -29
- package/src/components/kbd.props.tsx +1 -1
- package/src/components/kbd.tsx +2 -4
- package/src/components/layout.css +0 -2
- package/src/components/link.props.tsx +1 -1
- package/src/components/link.tsx +1 -2
- package/src/components/message-scroller.tsx +6 -5
- package/src/components/navbar.tsx +7 -3
- package/src/components/notice.css +10 -13
- package/src/components/notice.tsx +2 -3
- package/src/components/progress.tsx +1 -5
- package/src/components/radio-group.tsx +3 -8
- package/src/components/radio.tsx +1 -4
- package/src/components/schemas/base-button.schema.ts +2 -13
- package/src/components/schemas/index.ts +3 -11
- package/src/components/schemas/{toggle-button.schema.ts → toggle.schema.ts} +18 -38
- package/src/components/scroll-area.tsx +3 -11
- package/src/components/segmented-control.css +8 -5
- package/src/components/segmented-control.tsx +2 -5
- package/src/components/select.css +19 -134
- package/src/components/select.tsx +0 -4
- package/src/components/separator.tsx +2 -4
- package/src/components/sidebar.css +92 -133
- package/src/components/sidebar.tsx +16 -18
- package/src/components/slider.css +3 -4
- package/src/components/slider.tsx +0 -4
- package/src/components/spinner.tsx +1 -5
- package/src/components/switch.tsx +0 -4
- package/src/components/table.css +24 -11
- package/src/components/table.tsx +1 -5
- package/src/components/tabs.tsx +2 -8
- package/src/components/text-area.css +2 -1
- package/src/components/text-area.tsx +1 -4
- package/src/components/text-field.css +4 -2
- package/src/components/text-field.tsx +2 -4
- package/src/components/text.css +0 -20
- package/src/components/text.props.tsx +1 -1
- package/src/components/text.tsx +2 -5
- package/src/components/theme.tsx +1 -1
- package/src/components/toggle.tsx +96 -0
- package/src/components/toolbar.tsx +6 -12
- package/src/components/virtual-menu.tsx +3 -1
- package/src/hooks/use-prop-synced-state.ts +1 -1
- package/src/hooks/use-toggle-state.ts +1 -1
- package/src/props/color.prop.ts +1 -1
- package/src/props/emphasis.prop.ts +2 -2
- package/src/props/index.ts +1 -14
- package/src/props/weight.prop.ts +2 -1
- package/src/styles/tokens/color.css +1 -1
- package/src/styles/tokens/radius.css +12 -0
- package/src/styles/tokens/typography.css +21 -49
- package/src/styles/utilities/font-weight.css +0 -20
- package/styles.css +1750 -4986
- package/tokens/base.css +23 -45
- package/tokens.css +23 -45
- package/utilities.css +0 -90
- package/dist/cjs/components/aspect-ratio.d.ts +0 -4
- package/dist/cjs/components/aspect-ratio.d.ts.map +0 -1
- package/dist/cjs/components/aspect-ratio.js +0 -2
- package/dist/cjs/components/aspect-ratio.js.map +0 -7
- package/dist/cjs/components/badge.d.ts +0 -19
- package/dist/cjs/components/badge.d.ts.map +0 -1
- package/dist/cjs/components/badge.js +0 -2
- package/dist/cjs/components/badge.js.map +0 -7
- package/dist/cjs/components/badge.props.d.ts.map +0 -1
- package/dist/cjs/components/badge.props.js +0 -2
- package/dist/cjs/components/badge.props.js.map +0 -7
- package/dist/cjs/components/checkbox-cards.d.ts +0 -19
- package/dist/cjs/components/checkbox-cards.d.ts.map +0 -1
- package/dist/cjs/components/checkbox-cards.js +0 -2
- package/dist/cjs/components/checkbox-cards.js.map +0 -7
- package/dist/cjs/components/checkbox-cards.props.d.ts +0 -43
- package/dist/cjs/components/checkbox-cards.props.d.ts.map +0 -1
- package/dist/cjs/components/checkbox-cards.props.js +0 -2
- package/dist/cjs/components/checkbox-cards.props.js.map +0 -7
- package/dist/cjs/components/container.d.ts +0 -11
- package/dist/cjs/components/container.d.ts.map +0 -1
- package/dist/cjs/components/container.js +0 -2
- package/dist/cjs/components/container.js.map +0 -7
- package/dist/cjs/components/container.props.d.ts +0 -68
- package/dist/cjs/components/container.props.d.ts.map +0 -1
- package/dist/cjs/components/container.props.js +0 -2
- package/dist/cjs/components/container.props.js.map +0 -7
- package/dist/cjs/components/data-list.d.ts +0 -23
- package/dist/cjs/components/data-list.d.ts.map +0 -1
- package/dist/cjs/components/data-list.js +0 -2
- package/dist/cjs/components/data-list.js.map +0 -7
- package/dist/cjs/components/data-list.props.d.ts +0 -63
- package/dist/cjs/components/data-list.props.d.ts.map +0 -1
- package/dist/cjs/components/data-list.props.js +0 -2
- package/dist/cjs/components/data-list.props.js.map +0 -7
- package/dist/cjs/components/em.d.ts +0 -11
- package/dist/cjs/components/em.d.ts.map +0 -1
- package/dist/cjs/components/em.js +0 -2
- package/dist/cjs/components/em.js.map +0 -7
- package/dist/cjs/components/em.props.d.ts +0 -17
- package/dist/cjs/components/em.props.d.ts.map +0 -1
- package/dist/cjs/components/em.props.js +0 -2
- package/dist/cjs/components/em.props.js.map +0 -7
- package/dist/cjs/components/hover-card.d.ts +0 -17
- package/dist/cjs/components/hover-card.d.ts.map +0 -1
- package/dist/cjs/components/hover-card.js +0 -2
- package/dist/cjs/components/hover-card.js.map +0 -7
- package/dist/cjs/components/hover-card.props.d.ts +0 -57
- package/dist/cjs/components/hover-card.props.d.ts.map +0 -1
- package/dist/cjs/components/hover-card.props.js +0 -2
- package/dist/cjs/components/hover-card.props.js.map +0 -7
- package/dist/cjs/components/icon-button.d.ts +0 -108
- package/dist/cjs/components/icon-button.d.ts.map +0 -1
- package/dist/cjs/components/icon-button.js +0 -5
- package/dist/cjs/components/icon-button.js.map +0 -7
- package/dist/cjs/components/icon-button.props.d.ts +0 -2
- package/dist/cjs/components/icon-button.props.d.ts.map +0 -1
- package/dist/cjs/components/icon-button.props.js +0 -2
- package/dist/cjs/components/icon-button.props.js.map +0 -7
- package/dist/cjs/components/image.d.ts +0 -96
- package/dist/cjs/components/image.d.ts.map +0 -1
- package/dist/cjs/components/image.js +0 -2
- package/dist/cjs/components/image.js.map +0 -7
- package/dist/cjs/components/image.props.d.ts +0 -147
- package/dist/cjs/components/image.props.d.ts.map +0 -1
- package/dist/cjs/components/image.props.js +0 -2
- package/dist/cjs/components/image.props.js.map +0 -7
- package/dist/cjs/components/quote.d.ts +0 -11
- package/dist/cjs/components/quote.d.ts.map +0 -1
- package/dist/cjs/components/quote.js +0 -2
- package/dist/cjs/components/quote.js.map +0 -7
- package/dist/cjs/components/quote.props.d.ts +0 -17
- package/dist/cjs/components/quote.props.d.ts.map +0 -1
- package/dist/cjs/components/quote.props.js +0 -2
- package/dist/cjs/components/quote.props.js.map +0 -7
- package/dist/cjs/components/radio-cards.d.ts +0 -16
- package/dist/cjs/components/radio-cards.d.ts.map +0 -1
- package/dist/cjs/components/radio-cards.js +0 -2
- package/dist/cjs/components/radio-cards.js.map +0 -7
- package/dist/cjs/components/radio-cards.props.d.ts +0 -43
- package/dist/cjs/components/radio-cards.props.d.ts.map +0 -1
- package/dist/cjs/components/radio-cards.props.js +0 -2
- package/dist/cjs/components/radio-cards.props.js.map +0 -7
- package/dist/cjs/components/schemas/icon-button.schema.d.ts +0 -201
- package/dist/cjs/components/schemas/icon-button.schema.d.ts.map +0 -1
- package/dist/cjs/components/schemas/icon-button.schema.js +0 -2
- package/dist/cjs/components/schemas/icon-button.schema.js.map +0 -7
- package/dist/cjs/components/schemas/toggle-button.schema.d.ts.map +0 -1
- package/dist/cjs/components/schemas/toggle-button.schema.js +0 -2
- package/dist/cjs/components/schemas/toggle-button.schema.js.map +0 -7
- package/dist/cjs/components/schemas/toggle-icon-button.schema.d.ts +0 -211
- package/dist/cjs/components/schemas/toggle-icon-button.schema.d.ts.map +0 -1
- package/dist/cjs/components/schemas/toggle-icon-button.schema.js +0 -2
- package/dist/cjs/components/schemas/toggle-icon-button.schema.js.map +0 -7
- package/dist/cjs/components/section.d.ts +0 -11
- package/dist/cjs/components/section.d.ts.map +0 -1
- package/dist/cjs/components/section.js +0 -2
- package/dist/cjs/components/section.js.map +0 -7
- package/dist/cjs/components/section.props.d.ts +0 -52
- package/dist/cjs/components/section.props.d.ts.map +0 -1
- package/dist/cjs/components/section.props.js +0 -2
- package/dist/cjs/components/section.props.js.map +0 -7
- package/dist/cjs/components/skeleton.d.ts +0 -12
- package/dist/cjs/components/skeleton.d.ts.map +0 -1
- package/dist/cjs/components/skeleton.js +0 -2
- package/dist/cjs/components/skeleton.js.map +0 -7
- package/dist/cjs/components/skeleton.props.d.ts +0 -44
- package/dist/cjs/components/skeleton.props.d.ts.map +0 -1
- package/dist/cjs/components/skeleton.props.js +0 -2
- package/dist/cjs/components/skeleton.props.js.map +0 -7
- package/dist/cjs/components/strong.d.ts +0 -11
- package/dist/cjs/components/strong.d.ts.map +0 -1
- package/dist/cjs/components/strong.js +0 -2
- package/dist/cjs/components/strong.js.map +0 -7
- package/dist/cjs/components/strong.props.d.ts +0 -17
- package/dist/cjs/components/strong.props.d.ts.map +0 -1
- package/dist/cjs/components/strong.props.js +0 -2
- package/dist/cjs/components/strong.props.js.map +0 -7
- package/dist/cjs/components/tab-nav.d.ts +0 -19
- package/dist/cjs/components/tab-nav.d.ts.map +0 -1
- package/dist/cjs/components/tab-nav.js +0 -2
- package/dist/cjs/components/tab-nav.js.map +0 -7
- package/dist/cjs/components/tab-nav.props.d.ts +0 -12
- package/dist/cjs/components/tab-nav.props.d.ts.map +0 -1
- package/dist/cjs/components/tab-nav.props.js +0 -2
- package/dist/cjs/components/tab-nav.props.js.map +0 -7
- package/dist/cjs/components/theme-panel.d.ts +0 -25
- package/dist/cjs/components/theme-panel.d.ts.map +0 -1
- package/dist/cjs/components/theme-panel.js +0 -13
- package/dist/cjs/components/theme-panel.js.map +0 -7
- package/dist/cjs/components/toggle-button.d.ts +0 -63
- package/dist/cjs/components/toggle-button.d.ts.map +0 -1
- package/dist/cjs/components/toggle-button.js +0 -13
- package/dist/cjs/components/toggle-button.js.map +0 -7
- package/dist/cjs/components/toggle-icon-button.d.ts +0 -109
- package/dist/cjs/components/toggle-icon-button.d.ts.map +0 -1
- package/dist/cjs/components/toggle-icon-button.js +0 -13
- package/dist/cjs/components/toggle-icon-button.js.map +0 -7
- package/dist/esm/chunk-2XQECQF2.js +0 -2
- package/dist/esm/chunk-2XQECQF2.js.map +0 -7
- package/dist/esm/chunk-32ATKZAP.js +0 -2
- package/dist/esm/chunk-32ATKZAP.js.map +0 -7
- package/dist/esm/chunk-42LDZ7L5.js +0 -2
- package/dist/esm/chunk-42LDZ7L5.js.map +0 -7
- package/dist/esm/chunk-43A5GUSI.js +0 -2
- package/dist/esm/chunk-43A5GUSI.js.map +0 -7
- package/dist/esm/chunk-4JQZUQY7.js +0 -2
- package/dist/esm/chunk-4JQZUQY7.js.map +0 -7
- package/dist/esm/chunk-534LGOWC.js +0 -2
- package/dist/esm/chunk-534LGOWC.js.map +0 -7
- package/dist/esm/chunk-5AHQJB6H.js +0 -2
- package/dist/esm/chunk-5UU2IMGX.js +0 -2
- package/dist/esm/chunk-5UU2IMGX.js.map +0 -7
- package/dist/esm/chunk-63ASTOS2.js +0 -2
- package/dist/esm/chunk-63ASTOS2.js.map +0 -7
- package/dist/esm/chunk-6XNQ5XD3.js +0 -10
- package/dist/esm/chunk-6XNQ5XD3.js.map +0 -7
- package/dist/esm/chunk-7FC7HF76.js +0 -2
- package/dist/esm/chunk-7FC7HF76.js.map +0 -7
- package/dist/esm/chunk-7KIKAEI7.js +0 -2
- package/dist/esm/chunk-7KIKAEI7.js.map +0 -7
- package/dist/esm/chunk-7SS6EIE5.js +0 -5
- package/dist/esm/chunk-7SS6EIE5.js.map +0 -7
- package/dist/esm/chunk-7UV4FYYL.js +0 -2
- package/dist/esm/chunk-7UV4FYYL.js.map +0 -7
- package/dist/esm/chunk-ABQHBDM4.js +0 -2
- package/dist/esm/chunk-ABQHBDM4.js.map +0 -7
- package/dist/esm/chunk-ABS275QZ.js +0 -2
- package/dist/esm/chunk-AI6UQ5VD.js +0 -2
- package/dist/esm/chunk-AI6UQ5VD.js.map +0 -7
- package/dist/esm/chunk-AUV6B4AH.js +0 -2
- package/dist/esm/chunk-AUV6B4AH.js.map +0 -7
- package/dist/esm/chunk-B72RMGWZ.js +0 -2
- package/dist/esm/chunk-B72RMGWZ.js.map +0 -7
- package/dist/esm/chunk-BQS6XXJR.js +0 -2
- package/dist/esm/chunk-BQS6XXJR.js.map +0 -7
- package/dist/esm/chunk-BUBV3C6C.js +0 -2
- package/dist/esm/chunk-BUBV3C6C.js.map +0 -7
- package/dist/esm/chunk-CC4GNSKL.js +0 -2
- package/dist/esm/chunk-CC4GNSKL.js.map +0 -7
- package/dist/esm/chunk-D2ZHYCTG.js +0 -2
- package/dist/esm/chunk-D2ZHYCTG.js.map +0 -7
- package/dist/esm/chunk-DIR22XIX.js +0 -2
- package/dist/esm/chunk-DIR22XIX.js.map +0 -7
- package/dist/esm/chunk-DMWLY6ZP.js +0 -2
- package/dist/esm/chunk-E453PYTG.js +0 -2
- package/dist/esm/chunk-E453PYTG.js.map +0 -7
- package/dist/esm/chunk-EUSKAXHP.js +0 -2
- package/dist/esm/chunk-EUSKAXHP.js.map +0 -7
- package/dist/esm/chunk-EVTNB4TB.js +0 -2
- package/dist/esm/chunk-F2UUKVBM.js +0 -1
- package/dist/esm/chunk-FD2TR343.js +0 -2
- package/dist/esm/chunk-FD2TR343.js.map +0 -7
- package/dist/esm/chunk-FNRKTMNN.js +0 -2
- package/dist/esm/chunk-FNRKTMNN.js.map +0 -7
- package/dist/esm/chunk-FSKZAL5H.js +0 -2
- package/dist/esm/chunk-FSKZAL5H.js.map +0 -7
- package/dist/esm/chunk-FTGD2SZ6.js +0 -2
- package/dist/esm/chunk-FTGD2SZ6.js.map +0 -7
- package/dist/esm/chunk-G3U6OHVA.js +0 -2
- package/dist/esm/chunk-G3U6OHVA.js.map +0 -7
- package/dist/esm/chunk-G6PO4QKW.js +0 -2
- package/dist/esm/chunk-G6PO4QKW.js.map +0 -7
- package/dist/esm/chunk-GFOSP3PZ.js +0 -2
- package/dist/esm/chunk-GFOSP3PZ.js.map +0 -7
- package/dist/esm/chunk-GIIMBBVM.js +0 -2
- package/dist/esm/chunk-GIIMBBVM.js.map +0 -7
- package/dist/esm/chunk-GLERJXVS.js +0 -2
- package/dist/esm/chunk-GLERJXVS.js.map +0 -7
- package/dist/esm/chunk-GPVPXAUC.js +0 -2
- package/dist/esm/chunk-GPVPXAUC.js.map +0 -7
- package/dist/esm/chunk-GYNRAVCL.js +0 -5
- package/dist/esm/chunk-GYNRAVCL.js.map +0 -7
- package/dist/esm/chunk-HT5EFJA3.js +0 -2
- package/dist/esm/chunk-HT5EFJA3.js.map +0 -7
- package/dist/esm/chunk-IBF5U4QW.js +0 -2
- package/dist/esm/chunk-IBF5U4QW.js.map +0 -7
- package/dist/esm/chunk-IXNJFV4O.js +0 -2
- package/dist/esm/chunk-IXNJFV4O.js.map +0 -7
- package/dist/esm/chunk-JBC6DT2X.js +0 -2
- package/dist/esm/chunk-JBC6DT2X.js.map +0 -7
- package/dist/esm/chunk-JQURG6CB.js +0 -2
- package/dist/esm/chunk-JQURG6CB.js.map +0 -7
- package/dist/esm/chunk-JRIBL4WJ.js +0 -2
- package/dist/esm/chunk-JRIBL4WJ.js.map +0 -7
- package/dist/esm/chunk-JZSXHYUU.js +0 -2
- package/dist/esm/chunk-JZSXHYUU.js.map +0 -7
- package/dist/esm/chunk-K6Y2SM5N.js +0 -2
- package/dist/esm/chunk-K6Y2SM5N.js.map +0 -7
- package/dist/esm/chunk-KDKL3HXD.js +0 -2
- package/dist/esm/chunk-KDKL3HXD.js.map +0 -7
- package/dist/esm/chunk-KRPEEM4C.js +0 -2
- package/dist/esm/chunk-KRPEEM4C.js.map +0 -7
- package/dist/esm/chunk-KSZOVI57.js.map +0 -7
- package/dist/esm/chunk-L6UXAITB.js +0 -2
- package/dist/esm/chunk-L6UXAITB.js.map +0 -7
- package/dist/esm/chunk-LFUPGIPA.js +0 -2
- package/dist/esm/chunk-LFUPGIPA.js.map +0 -7
- package/dist/esm/chunk-MCQCG6AS.js +0 -2
- package/dist/esm/chunk-MCQCG6AS.js.map +0 -7
- package/dist/esm/chunk-MZR6YBE7.js +0 -2
- package/dist/esm/chunk-MZR6YBE7.js.map +0 -7
- package/dist/esm/chunk-N5OSP3PU.js +0 -2
- package/dist/esm/chunk-N77QJUTO.js.map +0 -7
- package/dist/esm/chunk-NCDOMH5I.js.map +0 -7
- package/dist/esm/chunk-NETIWKIR.js +0 -2
- package/dist/esm/chunk-NETIWKIR.js.map +0 -7
- package/dist/esm/chunk-NIX6Z3JG.js +0 -2
- package/dist/esm/chunk-NIX6Z3JG.js.map +0 -7
- package/dist/esm/chunk-OMYAVTX6.js +0 -2
- package/dist/esm/chunk-OMYAVTX6.js.map +0 -7
- package/dist/esm/chunk-OXYHRNJA.js +0 -2
- package/dist/esm/chunk-PDBVZAUJ.js +0 -2
- package/dist/esm/chunk-PIMNQEDG.js +0 -2
- package/dist/esm/chunk-PIMNQEDG.js.map +0 -7
- package/dist/esm/chunk-PPNWGWN3.js +0 -2
- package/dist/esm/chunk-PPNWGWN3.js.map +0 -7
- package/dist/esm/chunk-Q5LPCJXN.js +0 -2
- package/dist/esm/chunk-Q5LPCJXN.js.map +0 -7
- package/dist/esm/chunk-QOPRXQGR.js +0 -2
- package/dist/esm/chunk-QOPRXQGR.js.map +0 -7
- package/dist/esm/chunk-RUWKVDFT.js +0 -2
- package/dist/esm/chunk-RUWKVDFT.js.map +0 -7
- package/dist/esm/chunk-RVM4LGAU.js +0 -2
- package/dist/esm/chunk-RVM4LGAU.js.map +0 -7
- package/dist/esm/chunk-TLWCU336.js +0 -2
- package/dist/esm/chunk-TLWCU336.js.map +0 -7
- package/dist/esm/chunk-TQIR5LLY.js +0 -2
- package/dist/esm/chunk-TQIR5LLY.js.map +0 -7
- package/dist/esm/chunk-UUHTK35B.js +0 -2
- package/dist/esm/chunk-UUHTK35B.js.map +0 -7
- package/dist/esm/chunk-UUV5UNYL.js +0 -2
- package/dist/esm/chunk-UUV5UNYL.js.map +0 -7
- package/dist/esm/chunk-UUWGAQDT.js +0 -2
- package/dist/esm/chunk-UUWGAQDT.js.map +0 -7
- package/dist/esm/chunk-VLQ2LX5M.js +0 -2
- package/dist/esm/chunk-VLQ2LX5M.js.map +0 -7
- package/dist/esm/chunk-VTTJFBV6.js +0 -2
- package/dist/esm/chunk-VTTJFBV6.js.map +0 -7
- package/dist/esm/chunk-WAURCNAS.js.map +0 -7
- package/dist/esm/chunk-X3D3JR64.js +0 -2
- package/dist/esm/chunk-X3D3JR64.js.map +0 -7
- package/dist/esm/chunk-X7HFFVFD.js +0 -2
- package/dist/esm/chunk-X7HFFVFD.js.map +0 -7
- package/dist/esm/chunk-XASK6LMX.js +0 -2
- package/dist/esm/chunk-XASK6LMX.js.map +0 -7
- package/dist/esm/chunk-XI5YXUCK.js +0 -2
- package/dist/esm/chunk-XI5YXUCK.js.map +0 -7
- package/dist/esm/chunk-XTE22CXV.js +0 -2
- package/dist/esm/chunk-XTE22CXV.js.map +0 -7
- package/dist/esm/chunk-Y7LT3F6R.js +0 -2
- package/dist/esm/chunk-Y7LT3F6R.js.map +0 -7
- package/dist/esm/chunk-YKPMLM7M.js +0 -1
- package/dist/esm/chunk-YVHRWMSZ.js.map +0 -7
- package/dist/esm/chunk-YYZBPQQ4.js +0 -2
- package/dist/esm/chunk-YYZBPQQ4.js.map +0 -7
- package/dist/esm/chunk-Z6NRR7KS.js +0 -2
- package/dist/esm/chunk-Z6NRR7KS.js.map +0 -7
- package/dist/esm/chunk-ZIKJ2WZN.js +0 -2
- package/dist/esm/chunk-ZIKJ2WZN.js.map +0 -7
- package/dist/esm/chunk-ZMFZYXLB.js +0 -2
- package/dist/esm/chunk-ZMFZYXLB.js.map +0 -7
- package/dist/esm/chunk-ZMOBKT4T.js +0 -2
- package/dist/esm/chunk-ZMOBKT4T.js.map +0 -7
- package/dist/esm/chunk-ZWZGUBL4.js.map +0 -7
- package/dist/esm/components/aspect-ratio.d.ts +0 -4
- package/dist/esm/components/aspect-ratio.d.ts.map +0 -1
- package/dist/esm/components/aspect-ratio.js +0 -2
- package/dist/esm/components/badge.d.ts +0 -19
- package/dist/esm/components/badge.d.ts.map +0 -1
- package/dist/esm/components/badge.js +0 -2
- package/dist/esm/components/badge.props.d.ts.map +0 -1
- package/dist/esm/components/badge.props.js +0 -2
- package/dist/esm/components/checkbox-cards.d.ts +0 -19
- package/dist/esm/components/checkbox-cards.d.ts.map +0 -1
- package/dist/esm/components/checkbox-cards.js +0 -2
- package/dist/esm/components/checkbox-cards.js.map +0 -7
- package/dist/esm/components/checkbox-cards.props.d.ts +0 -43
- package/dist/esm/components/checkbox-cards.props.d.ts.map +0 -1
- package/dist/esm/components/checkbox-cards.props.js +0 -2
- package/dist/esm/components/checkbox-cards.props.js.map +0 -7
- package/dist/esm/components/container.d.ts +0 -11
- package/dist/esm/components/container.d.ts.map +0 -1
- package/dist/esm/components/container.js +0 -2
- package/dist/esm/components/container.js.map +0 -7
- package/dist/esm/components/container.props.d.ts +0 -68
- package/dist/esm/components/container.props.d.ts.map +0 -1
- package/dist/esm/components/container.props.js +0 -2
- package/dist/esm/components/container.props.js.map +0 -7
- package/dist/esm/components/data-list.d.ts +0 -23
- package/dist/esm/components/data-list.d.ts.map +0 -1
- package/dist/esm/components/data-list.js +0 -2
- package/dist/esm/components/data-list.js.map +0 -7
- package/dist/esm/components/data-list.props.d.ts +0 -63
- package/dist/esm/components/data-list.props.d.ts.map +0 -1
- package/dist/esm/components/data-list.props.js +0 -2
- package/dist/esm/components/data-list.props.js.map +0 -7
- package/dist/esm/components/em.d.ts +0 -11
- package/dist/esm/components/em.d.ts.map +0 -1
- package/dist/esm/components/em.js +0 -2
- package/dist/esm/components/em.js.map +0 -7
- package/dist/esm/components/em.props.d.ts +0 -17
- package/dist/esm/components/em.props.d.ts.map +0 -1
- package/dist/esm/components/em.props.js +0 -2
- package/dist/esm/components/em.props.js.map +0 -7
- package/dist/esm/components/hover-card.d.ts +0 -17
- package/dist/esm/components/hover-card.d.ts.map +0 -1
- package/dist/esm/components/hover-card.js +0 -2
- package/dist/esm/components/hover-card.js.map +0 -7
- package/dist/esm/components/hover-card.props.d.ts +0 -57
- package/dist/esm/components/hover-card.props.d.ts.map +0 -1
- package/dist/esm/components/hover-card.props.js +0 -2
- package/dist/esm/components/hover-card.props.js.map +0 -7
- package/dist/esm/components/icon-button.d.ts +0 -108
- package/dist/esm/components/icon-button.d.ts.map +0 -1
- package/dist/esm/components/icon-button.js +0 -2
- package/dist/esm/components/icon-button.js.map +0 -7
- package/dist/esm/components/icon-button.props.d.ts +0 -2
- package/dist/esm/components/icon-button.props.d.ts.map +0 -1
- package/dist/esm/components/icon-button.props.js +0 -2
- package/dist/esm/components/icon-button.props.js.map +0 -7
- package/dist/esm/components/image.d.ts +0 -96
- package/dist/esm/components/image.d.ts.map +0 -1
- package/dist/esm/components/image.js +0 -2
- package/dist/esm/components/image.js.map +0 -7
- package/dist/esm/components/image.props.d.ts +0 -147
- package/dist/esm/components/image.props.d.ts.map +0 -1
- package/dist/esm/components/image.props.js +0 -2
- package/dist/esm/components/image.props.js.map +0 -7
- package/dist/esm/components/quote.d.ts +0 -11
- package/dist/esm/components/quote.d.ts.map +0 -1
- package/dist/esm/components/quote.js +0 -2
- package/dist/esm/components/quote.js.map +0 -7
- package/dist/esm/components/quote.props.d.ts +0 -17
- package/dist/esm/components/quote.props.d.ts.map +0 -1
- package/dist/esm/components/quote.props.js +0 -2
- package/dist/esm/components/quote.props.js.map +0 -7
- package/dist/esm/components/radio-cards.d.ts +0 -16
- package/dist/esm/components/radio-cards.d.ts.map +0 -1
- package/dist/esm/components/radio-cards.js +0 -2
- package/dist/esm/components/radio-cards.js.map +0 -7
- package/dist/esm/components/radio-cards.props.d.ts +0 -43
- package/dist/esm/components/radio-cards.props.d.ts.map +0 -1
- package/dist/esm/components/radio-cards.props.js +0 -2
- package/dist/esm/components/radio-cards.props.js.map +0 -7
- package/dist/esm/components/schemas/icon-button.schema.d.ts +0 -201
- package/dist/esm/components/schemas/icon-button.schema.d.ts.map +0 -1
- package/dist/esm/components/schemas/icon-button.schema.js +0 -2
- package/dist/esm/components/schemas/icon-button.schema.js.map +0 -7
- package/dist/esm/components/schemas/toggle-button.schema.d.ts.map +0 -1
- package/dist/esm/components/schemas/toggle-button.schema.js +0 -2
- package/dist/esm/components/schemas/toggle-button.schema.js.map +0 -7
- package/dist/esm/components/schemas/toggle-icon-button.schema.d.ts +0 -211
- package/dist/esm/components/schemas/toggle-icon-button.schema.d.ts.map +0 -1
- package/dist/esm/components/schemas/toggle-icon-button.schema.js +0 -2
- package/dist/esm/components/schemas/toggle-icon-button.schema.js.map +0 -7
- package/dist/esm/components/section.d.ts +0 -11
- package/dist/esm/components/section.d.ts.map +0 -1
- package/dist/esm/components/section.js +0 -2
- package/dist/esm/components/section.js.map +0 -7
- package/dist/esm/components/section.props.d.ts +0 -52
- package/dist/esm/components/section.props.d.ts.map +0 -1
- package/dist/esm/components/section.props.js +0 -2
- package/dist/esm/components/section.props.js.map +0 -7
- package/dist/esm/components/skeleton.d.ts +0 -12
- package/dist/esm/components/skeleton.d.ts.map +0 -1
- package/dist/esm/components/skeleton.js +0 -2
- package/dist/esm/components/skeleton.js.map +0 -7
- package/dist/esm/components/skeleton.props.d.ts +0 -44
- package/dist/esm/components/skeleton.props.d.ts.map +0 -1
- package/dist/esm/components/skeleton.props.js +0 -2
- package/dist/esm/components/skeleton.props.js.map +0 -7
- package/dist/esm/components/strong.d.ts +0 -11
- package/dist/esm/components/strong.d.ts.map +0 -1
- package/dist/esm/components/strong.js +0 -2
- package/dist/esm/components/strong.js.map +0 -7
- package/dist/esm/components/strong.props.d.ts +0 -17
- package/dist/esm/components/strong.props.d.ts.map +0 -1
- package/dist/esm/components/strong.props.js +0 -2
- package/dist/esm/components/strong.props.js.map +0 -7
- package/dist/esm/components/tab-nav.d.ts +0 -19
- package/dist/esm/components/tab-nav.d.ts.map +0 -1
- package/dist/esm/components/tab-nav.js +0 -2
- package/dist/esm/components/tab-nav.js.map +0 -7
- package/dist/esm/components/tab-nav.props.d.ts +0 -12
- package/dist/esm/components/tab-nav.props.d.ts.map +0 -1
- package/dist/esm/components/tab-nav.props.js +0 -2
- package/dist/esm/components/tab-nav.props.js.map +0 -7
- package/dist/esm/components/theme-panel.d.ts +0 -25
- package/dist/esm/components/theme-panel.d.ts.map +0 -1
- package/dist/esm/components/theme-panel.js +0 -2
- package/dist/esm/components/theme-panel.js.map +0 -7
- package/dist/esm/components/toggle-button.d.ts +0 -63
- package/dist/esm/components/toggle-button.d.ts.map +0 -1
- package/dist/esm/components/toggle-button.js +0 -2
- package/dist/esm/components/toggle-button.js.map +0 -7
- package/dist/esm/components/toggle-icon-button.d.ts +0 -109
- package/dist/esm/components/toggle-icon-button.d.ts.map +0 -1
- package/dist/esm/components/toggle-icon-button.js +0 -2
- package/dist/esm/components/toggle-icon-button.js.map +0 -7
- package/schemas/icon-button.json +0 -296
- package/schemas/toggle-button.d.ts +0 -2
- package/schemas/toggle-icon-button.d.ts +0 -2
- package/schemas/toggle-icon-button.json +0 -304
- package/src/components/aspect-ratio.tsx +0 -3
- package/src/components/checkbox-cards.css +0 -124
- package/src/components/checkbox-cards.props.tsx +0 -27
- package/src/components/checkbox-cards.tsx +0 -141
- package/src/components/container.css +0 -43
- package/src/components/container.props.tsx +0 -84
- package/src/components/container.tsx +0 -59
- package/src/components/data-list.css +0 -254
- package/src/components/data-list.props.tsx +0 -57
- package/src/components/data-list.tsx +0 -102
- package/src/components/em.css +0 -16
- package/src/components/em.props.tsx +0 -11
- package/src/components/em.tsx +0 -22
- package/src/components/hover-card.css +0 -39
- package/src/components/hover-card.props.tsx +0 -37
- package/src/components/hover-card.tsx +0 -74
- package/src/components/icon-button.css +0 -9
- package/src/components/icon-button.props.tsx +0 -1
- package/src/components/icon-button.tsx +0 -110
- package/src/components/image.css +0 -221
- package/src/components/image.props.ts +0 -163
- package/src/components/image.tsx +0 -308
- package/src/components/quote.css +0 -16
- package/src/components/quote.props.tsx +0 -11
- package/src/components/quote.tsx +0 -22
- package/src/components/radio-cards.css +0 -110
- package/src/components/radio-cards.props.tsx +0 -27
- package/src/components/radio-cards.tsx +0 -98
- package/src/components/schemas/icon-button.schema.ts +0 -142
- package/src/components/schemas/toggle-icon-button.schema.ts +0 -195
- package/src/components/section.css +0 -25
- package/src/components/section.props.tsx +0 -63
- package/src/components/section.tsx +0 -36
- package/src/components/skeleton.css +0 -55
- package/src/components/skeleton.props.tsx +0 -14
- package/src/components/skeleton.tsx +0 -48
- package/src/components/strong.css +0 -13
- package/src/components/strong.props.tsx +0 -11
- package/src/components/strong.tsx +0 -24
- package/src/components/tab-nav.css +0 -5
- package/src/components/tab-nav.props.tsx +0 -13
- package/src/components/tab-nav.tsx +0 -82
- package/src/components/theme-panel.css +0 -67
- package/src/components/theme-panel.tsx +0 -549
- package/src/components/toggle-button.tsx +0 -117
- package/src/components/toggle-icon-button.tsx +0 -115
- /package/dist/esm/{chunk-STMTXK7U.js.map → chunk-24CVW6P7.js.map} +0 -0
- /package/dist/esm/{chunk-OXYHRNJA.js.map → chunk-4VBH3W2S.js.map} +0 -0
- /package/dist/esm/{chunk-ABS275QZ.js.map → chunk-72FU5FEC.js.map} +0 -0
- /package/dist/esm/{chunk-MLXHD7YF.js.map → chunk-7FPLWHMT.js.map} +0 -0
- /package/dist/esm/{chunk-YS5BZRRK.js.map → chunk-7OQXCYCW.js.map} +0 -0
- /package/dist/esm/{chunk-N5OSP3PU.js.map → chunk-AYZRLA7F.js.map} +0 -0
- /package/dist/esm/{chunk-6RZVKCNG.js.map → chunk-BHGES72S.js.map} +0 -0
- /package/dist/esm/{chunk-KU3LLWFU.js.map → chunk-CTZ467AB.js.map} +0 -0
- /package/dist/esm/{chunk-Q7S5LQBQ.js.map → chunk-CYO6CRMQ.js.map} +0 -0
- /package/dist/esm/{chunk-F2UUKVBM.js.map → chunk-D3U4MWDZ.js.map} +0 -0
- /package/dist/esm/{chunk-VLLJ7A6P.js.map → chunk-DCNHG6VN.js.map} +0 -0
- /package/dist/esm/{chunk-UZQO4APP.js.map → chunk-EDEYYJ3Q.js.map} +0 -0
- /package/dist/esm/{chunk-6FLLFCBU.js.map → chunk-ELAW7ZUG.js.map} +0 -0
- /package/dist/esm/{chunk-B6RH4CTY.js.map → chunk-G46OLCM2.js.map} +0 -0
- /package/dist/esm/{chunk-5LGWS5QS.js.map → chunk-GOV5I7I2.js.map} +0 -0
- /package/dist/esm/{chunk-VSSJTPBV.js.map → chunk-HELY5CSU.js.map} +0 -0
- /package/dist/esm/{chunk-UFJJTUOU.js.map → chunk-HGG3ULNK.js.map} +0 -0
- /package/dist/esm/{chunk-DMWLY6ZP.js.map → chunk-HZNOHY6O.js.map} +0 -0
- /package/dist/esm/{chunk-PUVZFRTQ.js.map → chunk-IZPDJN6O.js.map} +0 -0
- /package/dist/esm/{chunk-KPACVWV4.js.map → chunk-K4BDLRCC.js.map} +0 -0
- /package/dist/esm/{chunk-GYB7PAGB.js.map → chunk-K6WT5ZEA.js.map} +0 -0
- /package/dist/esm/{chunk-CLEH57SW.js.map → chunk-KIYCILXL.js.map} +0 -0
- /package/dist/esm/{chunk-ZCAI2PRH.js.map → chunk-KRDRQU4G.js.map} +0 -0
- /package/dist/esm/{chunk-T5DSQKKF.js.map → chunk-KRZL245C.js.map} +0 -0
- /package/dist/esm/{chunk-L2IIIELE.js.map → chunk-LNFN35ZE.js.map} +0 -0
- /package/dist/esm/{chunk-PUQXBW2K.js.map → chunk-LPVDR7V3.js.map} +0 -0
- /package/dist/esm/{chunk-JUY7CBSL.js.map → chunk-PBFSBHBS.js.map} +0 -0
- /package/dist/esm/{chunk-E3754NJZ.js.map → chunk-QZ6OCMH4.js.map} +0 -0
- /package/dist/esm/{chunk-54KMG7NX.js.map → chunk-TKSG7KBZ.js.map} +0 -0
- /package/dist/esm/{chunk-WDDO73O5.js.map → chunk-UEHCCJYY.js.map} +0 -0
- /package/dist/esm/{chunk-YKPMLM7M.js.map → components/chip.js.map} +0 -0
- /package/dist/esm/components/{aspect-ratio.js.map → chip.props.js.map} +0 -0
- /package/dist/esm/components/{badge.js.map → schemas/toggle.schema.js.map} +0 -0
- /package/dist/esm/components/{badge.props.js.map → toggle.js.map} +0 -0
- /package/schemas/{icon-button.d.ts → toggle.d.ts} +0 -0
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{e as p}from"./chunk-3YLYGKFB.js";import{a as r}from"./chunk-6FLLFCBU.js";import{a as t}from"./chunk-2FPJ6Q2N.js";import{a as e}from"./chunk-PUVZFRTQ.js";import*as o from"react";import R from"classnames";import{composeEventHandlers as c}from"radix-ui/internal";var P=o.forwardRef((a,s)=>{let i=p(a,e.size),{className:n,color:m,onChange:d,onValueChange:u,...f}=r(i,e,t);return o.createElement("input",{type:"radio","data-accent-color":m,...f,onChange:c(d,l=>u?.(l.currentTarget.value)),ref:s,className:R("rt-reset","rt-BaseRadioRoot","rt-RadioRoot",n)})});P.displayName="Radio";export{P as a};
|
|
2
|
-
//# sourceMappingURL=chunk-RUWKVDFT.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/radio.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { composeEventHandlers } from 'radix-ui/internal';\n\nimport { radioPropDefs } from './radio.props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { useThemeSizeProps } from '../helpers/theme-size.js';\n\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout } from '../helpers/component-props.js';\nimport type { NotInputRadioAttributes } from '../helpers/input-attributes.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype RadioElement = React.ElementRef<'input'>;\ntype RadioOwnProps = GetPropDefTypes<typeof radioPropDefs> & {\n value: string;\n onValueChange?: (value: string) => void;\n};\ntype RadioInputProps = ComponentPropsWithout<\n 'input',\n NotInputRadioAttributes | 'color' | 'defaultValue' | 'value'\n>;\ninterface RadioProps extends RadioInputProps, MarginProps, RadioOwnProps {}\n\nconst Radio = React.forwardRef<RadioElement, RadioProps>((ownProps, forwardedRef) => {\n const props = useThemeSizeProps(ownProps, radioPropDefs.size);\n const { className, color, onChange, onValueChange, ...radioProps } = extractProps(\n props,\n radioPropDefs,\n marginPropDefs,\n );\n return (\n <input\n type=\"radio\"\n data-accent-color={color}\n {...radioProps}\n onChange={composeEventHandlers(onChange, (event) =>\n onValueChange?.(event.currentTarget.value),\n )}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-BaseRadioRoot', 'rt-RadioRoot', className)}\n />\n );\n});\nRadio.displayName = 'Radio';\n\nexport { Radio };\nexport type { RadioProps };\n"],
|
|
5
|
-
"mappings": "gKAEA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,wBAAAC,MAA4B,oBAuBrC,IAAMC,EAAc,aAAqC,CAACC,EAAUC,IAAiB,CACnF,IAAMC,EAAQC,EAAkBH,EAAUI,EAAc,IAAI,EACtD,CAAE,UAAAC,EAAW,MAAAC,EAAO,SAAAC,EAAU,cAAAC,EAAe,GAAGC,CAAW,EAAIC,EACnER,EACAE,EACAO,CACF,EACA,OACE,gBAAC,SACC,KAAK,QACL,oBAAmBL,EAClB,GAAGG,EACJ,SAAUG,EAAqBL,EAAWM,GACxCL,IAAgBK,EAAM,cAAc,KAAK,CAC3C,EACA,IAAKZ,EACL,UAAWa,EAAW,WAAY,mBAAoB,eAAgBT,CAAS,EACjF,CAEJ,CAAC,EACDN,EAAM,YAAc",
|
|
6
|
-
"names": ["React", "classNames", "composeEventHandlers", "Radio", "ownProps", "forwardedRef", "props", "useThemeSizeProps", "baseRadioPropDefs", "className", "color", "onChange", "onValueChange", "radioProps", "extractProps", "marginPropDefs", "composeEventHandlers", "event", "classNames"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as S,b,c as x}from"./chunk-KU3LLWFU.js";import{b as T,c as N}from"./chunk-IX5HIHVI.js";import{b as h,c as I}from"./chunk-6AZV4VFW.js";import{a as y}from"./chunk-DDFONGSM.js";import{d as v}from"./chunk-3YLYGKFB.js";import{a as u}from"./chunk-6FLLFCBU.js";import{a as g}from"./chunk-2FPJ6Q2N.js";import{a as W}from"./chunk-OS3FCYZY.js";var O={};W(O,{Content:()=>L,Group:()=>D,Item:()=>G,Label:()=>z,Root:()=>w,Separator:()=>V,Trigger:()=>E});import*as e from"react";import c from"classnames";import{Select as a,ScrollArea as P}from"radix-ui";var R=e.createContext({}),w=t=>{let{children:r,size:o,...l}=t,s=v(o,S.size);return e.createElement(a.Root,{...l},e.createElement(R.Provider,{value:e.useMemo(()=>({size:s}),[s])},r))};w.displayName="Select.Root";var E=e.forwardRef((t,r)=>{let o=e.useContext(R),{children:l,className:s,color:n,radius:f,placeholder:d,error:p,loading:i,disabled:m,readOnly:C,...M}=u({size:o?.size,...t},{size:S.size},b,g),A=e.useMemo(()=>({"aria-invalid":p||void 0,"aria-busy":i||void 0,"aria-disabled":m||void 0,"aria-readonly":C||void 0}),[p,i,m,C]);return e.createElement(a.Trigger,{asChild:!0},e.createElement("button",{"data-accent-color":n,"data-radius":f,"data-error":p,"data-loading":i,...M,...A,ref:r,className:c("rt-reset","rt-SelectTrigger",s)},e.createElement("span",{className:"rt-SelectTriggerInner"},e.createElement(a.Value,{placeholder:d},l)),e.createElement(a.Icon,{asChild:!0},i?e.createElement("div",{className:"rt-SelectIcon rt-SelectLoadingIcon","aria-hidden":"true"},e.createElement("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none"},e.createElement("circle",{cx:"8",cy:"8",r:"7",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeDasharray:"32",strokeDashoffset:"32",className:"rt-SelectLoadingIconCircle"}))):e.createElement(N,{className:"rt-SelectIcon"}))))});E.displayName="Select.Trigger";var L=e.forwardRef((t,r)=>{let o=e.useContext(R),{className:l,children:s,color:n,container:f,...d}=u({size:o?.size,...t},{size:S.size},x),p=h(),i=n||p.accentColor,m=y();return e.createElement(a.Portal,{container:f},e.createElement(I,{asChild:!0},e.createElement(a.Content,{"data-accent-color":i,sideOffset:4,...d,asChild:!1,ref:r,className:c("rt-PopperContent","rt-BaseMenuContent","rt-variant-soft","rt-SelectContent",l)},e.createElement(P.Root,{type:"auto",className:"rt-ScrollAreaRoot"},e.createElement(a.Viewport,{asChild:!0,className:c("rt-BaseMenuViewport","rt-SelectViewport")},e.createElement(P.Viewport,{ref:m,className:"rt-ScrollAreaViewport",style:{overflowY:void 0}},s)),e.createElement(P.Scrollbar,{className:"rt-ScrollAreaScrollbar",orientation:"vertical"},e.createElement(P.Thumb,{className:"rt-ScrollAreaThumb"}))))))});L.displayName="Select.Content";var G=e.forwardRef((t,r)=>{let{className:o,children:l,...s}=t,n=typeof l!="string";return e.createElement(a.Item,{...s,asChild:!1,ref:r,className:c("rt-reset","rt-BaseMenuItem","rt-SelectItem",{"rt-SelectItemRich":n},o)},e.createElement(a.ItemIndicator,{className:"rt-SelectItemIndicator"},e.createElement(T,{className:"rt-SelectItemIndicatorIcon"})),e.createElement(a.ItemText,null,l))});G.displayName="Select.Item";var D=e.forwardRef(({className:t,...r},o)=>e.createElement(a.Group,{...r,asChild:!1,ref:o,className:c("rt-SelectGroup",t)}));D.displayName="Select.Group";var z=e.forwardRef(({className:t,...r},o)=>e.createElement(a.Label,{...r,asChild:!1,ref:o,className:c("rt-BaseMenuLabel","rt-SelectLabel",t)}));z.displayName="Select.Label";var V=e.forwardRef(({className:t,...r},o)=>e.createElement(a.Separator,{...r,asChild:!1,ref:o,className:c("rt-BaseMenuSeparator","rt-SelectSeparator",t)}));V.displayName="Select.Separator";export{w as a,E as b,L as c,G as d,D as e,z as f,V as g,O as h};
|
|
2
|
-
//# sourceMappingURL=chunk-RVM4LGAU.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/select.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client';\n\nimport { warnDeprecated } from '../helpers/warn-deprecated.js';\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { Select as SelectPrimitive, ScrollArea as ScrollAreaPrimitive } from 'radix-ui';\n\nimport { extractProps } from '../helpers/extract-props.js';\nimport { useThemeSize } from '../helpers/theme-size.js';\nimport { marginPropDefs } from '../props/margin.props.js';\nimport { ChevronDownIcon, ThickCheckIcon } from './icons.js';\nimport {\n selectRootPropDefs,\n selectTriggerPropDefs,\n selectContentPropDefs,\n} from './select.props.js';\nimport { useThemeContext, Theme } from './theme.js';\nimport { useThumbSync } from '../hooks/use-thumb-sync.js';\n\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\n\ntype SelectRootOwnProps = GetPropDefTypes<typeof selectRootPropDefs>;\n\ntype SelectContextValue = SelectRootOwnProps;\nconst SelectContext = React.createContext<SelectContextValue>({});\n\ninterface SelectRootProps extends SelectPrimitive.SelectProps, SelectContextValue {}\nconst SelectRoot: React.FC<SelectRootProps> = (props) => {\n const { children, size: sizeProp, ...rootProps } = props;\n const size = useThemeSize(sizeProp, selectRootPropDefs.size);\n return (\n <SelectPrimitive.Root {...rootProps}>\n <SelectContext.Provider value={React.useMemo(() => ({ size }), [size])}>\n {children}\n </SelectContext.Provider>\n </SelectPrimitive.Root>\n );\n};\nSelectRoot.displayName = 'Select.Root';\n\ntype SelectTriggerElement = React.ElementRef<typeof SelectPrimitive.Trigger>;\ntype SelectTriggerOwnProps = GetPropDefTypes<typeof selectTriggerPropDefs>;\ninterface SelectTriggerProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Trigger, RemovedProps>,\n MarginProps,\n SelectTriggerOwnProps {}\nconst SelectTrigger = React.forwardRef<SelectTriggerElement, SelectTriggerProps>(\n (props, forwardedRef) => {\n const context = React.useContext(SelectContext);\n const {\n children,\n className,\n color,\n radius,\n placeholder,\n error,\n loading,\n disabled,\n readOnly,\n ...triggerProps\n } = extractProps(\n // Pass size value from the context to generate styles\n { size: context?.size, ...props },\n // Pass size prop def to allow it to be extracted\n { size: selectRootPropDefs.size },\n selectTriggerPropDefs,\n marginPropDefs,\n );\n\n\n const ariaProps = React.useMemo(\n () => ({\n 'aria-invalid': error || undefined,\n 'aria-busy': loading || undefined,\n 'aria-disabled': disabled || undefined,\n 'aria-readonly': readOnly || undefined,\n }),\n [error, loading, disabled, readOnly],\n );\n\n return (\n <SelectPrimitive.Trigger asChild>\n <button\n data-accent-color={color}\n data-radius={radius}\n data-error={error}\n data-loading={loading}\n {...triggerProps}\n {...ariaProps}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-SelectTrigger', className)}\n >\n <span className=\"rt-SelectTriggerInner\">\n <SelectPrimitive.Value placeholder={placeholder}>{children}</SelectPrimitive.Value>\n </span>\n <SelectPrimitive.Icon asChild>\n {loading ? (\n <div className=\"rt-SelectIcon rt-SelectLoadingIcon\" aria-hidden=\"true\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <circle\n cx=\"8\"\n cy=\"8\"\n r=\"7\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeDasharray=\"32\"\n strokeDashoffset=\"32\"\n className=\"rt-SelectLoadingIconCircle\"\n />\n </svg>\n </div>\n ) : (\n <ChevronDownIcon className=\"rt-SelectIcon\" />\n )}\n </SelectPrimitive.Icon>\n </button>\n </SelectPrimitive.Trigger>\n );\n },\n);\nSelectTrigger.displayName = 'Select.Trigger';\n\ntype SelectContentElement = React.ElementRef<typeof SelectPrimitive.Content>;\ntype SelectContentOwnProps = GetPropDefTypes<typeof selectContentPropDefs>;\ninterface SelectContentProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Content, RemovedProps>,\n SelectContentOwnProps {\n container?: React.ComponentPropsWithoutRef<typeof SelectPrimitive.Portal>['container'];\n}\nconst SelectContent = React.forwardRef<SelectContentElement, SelectContentProps>(\n (props, forwardedRef) => {\n const context = React.useContext(SelectContext);\n const { className, children, color, container, ...contentProps } = extractProps(\n // Pass size value from the context to generate styles\n { size: context?.size, ...props },\n // Pass size prop def to allow it to be extracted\n { size: selectRootPropDefs.size },\n selectContentPropDefs,\n );\n const themeContext = useThemeContext();\n const resolvedColor = color || themeContext.accentColor;\n const setThumbViewport = useThumbSync<HTMLDivElement>();\n return (\n <SelectPrimitive.Portal container={container}>\n <Theme asChild>\n <SelectPrimitive.Content\n data-accent-color={resolvedColor}\n sideOffset={4}\n {...contentProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames(\n 'rt-PopperContent',\n 'rt-BaseMenuContent',\n 'rt-variant-soft',\n 'rt-SelectContent',\n className,\n )}\n >\n <ScrollAreaPrimitive.Root type=\"auto\" className=\"rt-ScrollAreaRoot\">\n <SelectPrimitive.Viewport\n asChild\n className={classNames('rt-BaseMenuViewport', 'rt-SelectViewport')}\n >\n <ScrollAreaPrimitive.Viewport\n ref={setThumbViewport}\n className=\"rt-ScrollAreaViewport\"\n style={{ overflowY: undefined }}\n >\n {children}\n </ScrollAreaPrimitive.Viewport>\n </SelectPrimitive.Viewport>\n <ScrollAreaPrimitive.Scrollbar\n className=\"rt-ScrollAreaScrollbar\"\n orientation=\"vertical\"\n >\n <ScrollAreaPrimitive.Thumb className=\"rt-ScrollAreaThumb\" />\n </ScrollAreaPrimitive.Scrollbar>\n </ScrollAreaPrimitive.Root>\n </SelectPrimitive.Content>\n </Theme>\n </SelectPrimitive.Portal>\n );\n },\n);\nSelectContent.displayName = 'Select.Content';\n\ntype SelectItemElement = React.ElementRef<typeof SelectPrimitive.Item>;\ninterface SelectItemProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Item, RemovedProps> {}\nconst SelectItem = React.forwardRef<SelectItemElement, SelectItemProps>((props, forwardedRef) => {\n const { className, children, ...itemProps } = props;\n\n // Detect if this is rich content (not just a string)\n const isRichContent = typeof children !== 'string';\n\n return (\n <SelectPrimitive.Item\n {...itemProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames(\n 'rt-reset',\n 'rt-BaseMenuItem',\n 'rt-SelectItem',\n { 'rt-SelectItemRich': isRichContent },\n className,\n )}\n >\n <SelectPrimitive.ItemIndicator className=\"rt-SelectItemIndicator\">\n <ThickCheckIcon className=\"rt-SelectItemIndicatorIcon\" />\n </SelectPrimitive.ItemIndicator>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n );\n});\nSelectItem.displayName = 'Select.Item';\n\ntype SelectGroupElement = React.ElementRef<typeof SelectPrimitive.Group>;\ninterface SelectGroupProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Group, RemovedProps> {}\nconst SelectGroup = React.forwardRef<SelectGroupElement, SelectGroupProps>(\n ({ className, ...props }, forwardedRef) => (\n <SelectPrimitive.Group\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-SelectGroup', className)}\n />\n ),\n);\nSelectGroup.displayName = 'Select.Group';\n\ntype SelectLabelElement = React.ElementRef<typeof SelectPrimitive.Label>;\ninterface SelectLabelProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Label, RemovedProps> {}\nconst SelectLabel = React.forwardRef<SelectLabelElement, SelectLabelProps>(\n ({ className, ...props }, forwardedRef) => (\n <SelectPrimitive.Label\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuLabel', 'rt-SelectLabel', className)}\n />\n ),\n);\nSelectLabel.displayName = 'Select.Label';\n\ntype SelectSeparatorElement = React.ElementRef<typeof SelectPrimitive.Separator>;\ninterface SelectSeparatorProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Separator, RemovedProps> {}\nconst SelectSeparator = React.forwardRef<SelectSeparatorElement, SelectSeparatorProps>(\n ({ className, ...props }, forwardedRef) => (\n <SelectPrimitive.Separator\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuSeparator', 'rt-SelectSeparator', className)}\n />\n ),\n);\nSelectSeparator.displayName = 'Select.Separator';\n\nexport {\n SelectRoot as Root,\n SelectTrigger as Trigger,\n SelectContent as Content,\n SelectItem as Item,\n SelectGroup as Group,\n SelectLabel as Label,\n SelectSeparator as Separator,\n};\n\nexport type {\n SelectRootProps as RootProps,\n SelectTriggerProps as TriggerProps,\n SelectContentProps as ContentProps,\n SelectItemProps as ItemProps,\n SelectGroupProps as GroupProps,\n SelectLabelProps as LabelProps,\n SelectSeparatorProps as SeparatorProps,\n};\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["select_exports", "__export", "SelectContent", "SelectGroup", "SelectItem", "SelectLabel", "SelectRoot", "SelectSeparator", "SelectTrigger", "React", "classNames", "SelectPrimitive", "ScrollAreaPrimitive", "SelectContext", "SelectRoot", "props", "children", "sizeProp", "rootProps", "size", "useThemeSize", "selectRootPropDefs", "SelectPrimitive", "SelectTrigger", "forwardedRef", "context", "className", "color", "radius", "placeholder", "error", "loading", "disabled", "readOnly", "triggerProps", "extractProps", "selectTriggerPropDefs", "marginPropDefs", "ariaProps", "classNames", "ChevronDownIcon", "SelectContent", "container", "contentProps", "selectContentPropDefs", "themeContext", "useThemeContext", "resolvedColor", "setThumbViewport", "useThumbSync", "Theme", "ScrollAreaPrimitive", "SelectItem", "itemProps", "isRichContent", "ThickCheckIcon", "SelectGroup", "SelectLabel", "SelectSeparator"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as s}from"./chunk-R2FUNQTI.js";import{e as i}from"./chunk-3YLYGKFB.js";import{a as m}from"./chunk-6FLLFCBU.js";import{a as l}from"./chunk-2FPJ6Q2N.js";import{a as y}from"./chunk-OS3FCYZY.js";var b={};y(b,{Item:()=>u,Root:()=>f});import*as e from"react";import d from"classnames";import{ToggleGroup as g}from"radix-ui";import{useControllableState as h}from"radix-ui/internal";var f=e.forwardRef((t,r)=>{let o=i(t,s.size),{className:n,children:a,radius:P,value:C,defaultValue:c,onValueChange:S,...R}=m(o,s,l),[v,I]=h({prop:C,onChange:S,defaultProp:c??""});return e.createElement(g.Root,{"data-disabled":o.disabled||void 0,"data-radius":P,ref:r,className:d("rt-SegmentedControlRoot",n),onValueChange:p=>{p&&I(p)},...R,type:"single",value:v,asChild:!1,disabled:!!o.disabled},a,e.createElement("div",{className:"rt-SegmentedControlIndicator"}))});f.displayName="SegmentedControl.Root";var u=e.forwardRef(({children:t,className:r,iconOnly:o,...n},a)=>e.createElement(g.Item,{ref:a,className:d("rt-reset","rt-SegmentedControlItem",r),"data-icon-only":o||void 0,...n,disabled:!1,asChild:!1},e.createElement("span",{className:"rt-SegmentedControlItemSeparator"}),e.createElement("span",{className:"rt-SegmentedControlItemLabel"},e.createElement("span",{className:"rt-SegmentedControlItemLabelActive"},t),e.createElement("span",{className:"rt-SegmentedControlItemLabelInactive","aria-hidden":!0},t))));u.displayName="SegmentedControl.Item";export{f as a,u as b,b as c};
|
|
2
|
-
//# sourceMappingURL=chunk-TLWCU336.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/segmented-control.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client';\n\nimport { warnDeprecated } from '../helpers/warn-deprecated.js';\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { ToggleGroup as ToggleGroupPrimitive } from 'radix-ui';\nimport { useControllableState } from 'radix-ui/internal';\n\nimport { segmentedControlRootPropDefs } from './segmented-control.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { useThemeSizeProps } from '../helpers/theme-size.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype SegmentedControlRootOwnProps = GetPropDefTypes<typeof segmentedControlRootPropDefs>;\n\ninterface SegmentedControlRootProps\n extends ComponentPropsWithout<'div', RemovedProps | 'dir'>,\n SegmentedControlRootOwnProps,\n MarginProps {\n value?: string;\n defaultValue?: string;\n onValueChange?(value: string): void;\n}\n\nconst SegmentedControlRoot = React.forwardRef<HTMLDivElement, SegmentedControlRootProps>(\n (ownProps, forwardedRef) => {\n const props = useThemeSizeProps(ownProps, segmentedControlRootPropDefs.size);\n const {\n className,\n children,\n radius,\n value: valueProp,\n defaultValue: defaultValueProp,\n onValueChange: onValueChangeProp,\n ...rootProps\n } = extractProps(props, segmentedControlRootPropDefs, marginPropDefs);\n\n const [value, setValue] = useControllableState({\n prop: valueProp,\n onChange: onValueChangeProp,\n defaultProp: defaultValueProp ?? '',\n });\n\n return (\n <ToggleGroupPrimitive.Root\n data-disabled={props.disabled || undefined}\n data-radius={radius}\n ref={forwardedRef}\n className={classNames('rt-SegmentedControlRoot', className)}\n onValueChange={(value) => {\n if (value) {\n setValue(value);\n }\n }}\n {...rootProps}\n type=\"single\"\n value={value}\n asChild={false}\n disabled={!!props.disabled}\n >\n {children}\n <div className=\"rt-SegmentedControlIndicator\" />\n </ToggleGroupPrimitive.Root>\n );\n },\n);\n\nSegmentedControlRoot.displayName = 'SegmentedControl.Root';\n\ninterface SegmentedControlItemOwnProps {\n value: string;\n /** When true, applies fixed square width for icon-only segments */\n iconOnly?: boolean;\n}\n\ninterface SegmentedControlItemProps\n extends ComponentPropsWithout<\n typeof ToggleGroupPrimitive.Item,\n RemovedProps | 'disabled' | 'type' | 'value'\n >,\n SegmentedControlItemOwnProps {}\n\nconst SegmentedControlItem = React.forwardRef<HTMLButtonElement, SegmentedControlItemProps>(\n ({ children, className, iconOnly, ...props }, forwardedRef) => (\n <ToggleGroupPrimitive.Item\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-SegmentedControlItem', className)}\n data-icon-only={iconOnly || undefined}\n {...props}\n disabled={false}\n asChild={false}\n >\n <span className=\"rt-SegmentedControlItemSeparator\" />\n <span className=\"rt-SegmentedControlItemLabel\">\n <span className=\"rt-SegmentedControlItemLabelActive\">{children}</span>\n <span className=\"rt-SegmentedControlItemLabelInactive\" aria-hidden>\n {children}\n </span>\n </span>\n </ToggleGroupPrimitive.Item>\n ),\n);\n\nSegmentedControlItem.displayName = 'SegmentedControl.Item';\n\nexport { SegmentedControlRoot as Root, SegmentedControlItem as Item };\nexport type { SegmentedControlRootProps as RootProps, SegmentedControlItemProps as ItemProps };\n"],
|
|
5
|
-
"mappings": "wMAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,UAAAE,EAAA,SAAAC,IAGA,UAAYC,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,eAAeC,MAA4B,WACpD,OAAS,wBAAAC,MAA4B,oBAsBrC,IAAMC,EAA6B,aACjC,CAACC,EAAUC,IAAiB,CAC1B,IAAMC,EAAQC,EAAkBH,EAAUI,EAA6B,IAAI,EACrE,CACJ,UAAAC,EACA,SAAAC,EACA,OAAAC,EACA,MAAOC,EACP,aAAcC,EACd,cAAeC,EACf,GAAGC,CACL,EAAIC,EAAaV,EAAOE,EAA8BS,CAAc,EAE9D,CAACC,EAAOC,CAAQ,EAAIC,EAAqB,CAC7C,KAAMR,EACN,SAAUE,EACV,YAAaD,GAAoB,EACnC,CAAC,EAED,OACE,gBAACQ,EAAqB,KAArB,CACC,gBAAef,EAAM,UAAY,OACjC,cAAaK,EACb,IAAKN,EACL,UAAWiB,EAAW,0BAA2Bb,CAAS,EAC1D,cAAgBS,GAAU,CACpBA,GACFC,EAASD,CAAK,CAElB,EACC,GAAGH,EACJ,KAAK,SACL,MAAOG,EACP,QAAS,GACT,SAAU,CAAC,CAACZ,EAAM,UAEjBI,EACD,gBAAC,OAAI,UAAU,+BAA+B,CAChD,CAEJ,CACF,EAEAP,EAAqB,YAAc,wBAenC,IAAMoB,EAA6B,aACjC,CAAC,CAAE,SAAAb,EAAU,UAAAD,EAAW,SAAAe,EAAU,GAAGlB,CAAM,EAAGD,IAC5C,gBAACgB,EAAqB,KAArB,CACC,IAAKhB,EACL,UAAWiB,EAAW,WAAY,0BAA2Bb,CAAS,EACtE,iBAAgBe,GAAY,OAC3B,GAAGlB,EACJ,SAAU,GACV,QAAS,IAET,gBAAC,QAAK,UAAU,mCAAmC,EACnD,gBAAC,QAAK,UAAU,gCACd,gBAAC,QAAK,UAAU,sCAAsCI,CAAS,EAC/D,gBAAC,QAAK,UAAU,uCAAuC,cAAW,IAC/DA,CACH,CACF,CACF,CAEJ,EAEAa,EAAqB,YAAc",
|
|
6
|
-
"names": ["segmented_control_exports", "__export", "SegmentedControlItem", "SegmentedControlRoot", "React", "classNames", "ToggleGroupPrimitive", "useControllableState", "SegmentedControlRoot", "ownProps", "forwardedRef", "props", "useThemeSizeProps", "segmentedControlRootPropDefs", "className", "children", "radius", "valueProp", "defaultValueProp", "onValueChangeProp", "rootProps", "extractProps", "marginPropDefs", "value", "setValue", "useControllableState", "ToggleGroupPrimitive", "classNames", "SegmentedControlItem", "iconOnly"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as b}from"./chunk-PS6NEG5A.js";import{e as T}from"./chunk-3YLYGKFB.js";import{a as v}from"./chunk-6FLLFCBU.js";import{a as f}from"./chunk-2FPJ6Q2N.js";import{a as m}from"./chunk-5LGWS5QS.js";import{a as R}from"./chunk-OS3FCYZY.js";var d={};R(d,{Link:()=>l,Root:()=>P});import*as a from"react";import c from"classnames";import{NavigationMenu as t}from"radix-ui";var P=a.forwardRef((r,s)=>{let e=T(r,m.size),{children:n,className:p,color:o,...i}=v(e,m,f);return a.createElement(t.Root,{className:"rt-TabNavRoot","data-accent-color":o,...i,asChild:!1,ref:s},a.createElement(t.List,{className:c("rt-reset","rt-BaseTabList","rt-TabNavList",p)},n))});P.displayName="TabNav.Root";var l=a.forwardRef((r,s)=>{let{asChild:e,children:n,className:p,active:o,...i}=r;return a.createElement(t.Item,{className:"rt-TabNavItem"},a.createElement(t.Link,{...i,ref:s,className:c("rt-reset","rt-BaseTabListTrigger","rt-TabNavLink",p),onSelect:void 0,asChild:e,"aria-current":o?"page":void 0,"data-active":o||void 0},b({asChild:e,children:n},N=>a.createElement(a.Fragment,null,a.createElement("span",{className:"rt-BaseTabListTriggerInner rt-TabNavLinkInner"},N),a.createElement("span",{className:"rt-BaseTabListTriggerInnerHidden rt-TabNavLinkInnerHidden"},N)))))});l.displayName="TabNav.Link";export{P as a,l as b,d as c};
|
|
2
|
-
//# sourceMappingURL=chunk-TQIR5LLY.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/tab-nav.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { NavigationMenu } from 'radix-ui';\n\nimport { tabNavRootPropDefs } from './tab-nav.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { useThemeSizeProps } from '../helpers/theme-size.js';\nimport { getSubtree } from '../helpers/get-subtree.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { tabNavLinkPropDefs } from './tab-nav.props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype TabNavRootElement = React.ElementRef<typeof NavigationMenu.Root>;\ntype TabNavRootElementProps = ComponentPropsWithout<'nav', RemovedProps>;\ntype TabNavOwnProps = GetPropDefTypes<typeof tabNavRootPropDefs>;\ninterface TabNavRootProps\n extends Omit<TabNavRootElementProps, 'defaultValue' | 'dir' | 'color'>,\n MarginProps,\n TabNavOwnProps {}\nconst TabNavRoot = React.forwardRef<TabNavRootElement, TabNavRootProps>((ownProps, forwardedRef) => {\n const props = useThemeSizeProps(ownProps, tabNavRootPropDefs.size);\n const { children, className, color, ...rootProps } = extractProps(\n props,\n tabNavRootPropDefs,\n marginPropDefs,\n );\n return (\n <NavigationMenu.Root\n className=\"rt-TabNavRoot\"\n data-accent-color={color}\n {...rootProps}\n asChild={false}\n ref={forwardedRef}\n >\n <NavigationMenu.List\n className={classNames('rt-reset', 'rt-BaseTabList', 'rt-TabNavList', className)}\n >\n {children}\n </NavigationMenu.List>\n </NavigationMenu.Root>\n );\n});\nTabNavRoot.displayName = 'TabNav.Root';\n\ntype TabNavLinkElement = React.ElementRef<typeof NavigationMenu.Link>;\ntype TabNavLinkOwnProps = GetPropDefTypes<typeof tabNavLinkPropDefs>;\ninterface TabNavLinkProps\n extends ComponentPropsWithout<typeof NavigationMenu.Link, RemovedProps | 'onSelect'>,\n TabNavLinkOwnProps {}\nconst TabNavLink = React.forwardRef<TabNavLinkElement, TabNavLinkProps>((props, forwardedRef) => {\n const { asChild, children, className, active, ...linkProps } = props;\n\n return (\n <NavigationMenu.Item className=\"rt-TabNavItem\">\n <NavigationMenu.Link\n {...linkProps}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-BaseTabListTrigger', 'rt-TabNavLink', className)}\n onSelect={undefined}\n asChild={asChild}\n aria-current={active ? 'page' : undefined}\n data-active={active || undefined}\n >\n {getSubtree({ asChild, children }, (children) => (\n <>\n <span className=\"rt-BaseTabListTriggerInner rt-TabNavLinkInner\">{children}</span>\n <span className=\"rt-BaseTabListTriggerInnerHidden rt-TabNavLinkInnerHidden\">\n {children}\n </span>\n </>\n ))}\n </NavigationMenu.Link>\n </NavigationMenu.Item>\n );\n});\nTabNavLink.displayName = 'TabNav.Link';\n\nexport { TabNavRoot as Root, TabNavLink as Link };\nexport type { TabNavRootProps as RootProps, TabNavLinkProps as LinkProps };\n"],
|
|
5
|
-
"mappings": "gPAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,UAAAE,EAAA,SAAAC,IAAA,UAAYC,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,kBAAAC,MAAsB,WAoB/B,IAAMC,EAAmB,aAA+C,CAACC,EAAUC,IAAiB,CAClG,IAAMC,EAAQC,EAAkBH,EAAUI,EAAmB,IAAI,EAC3D,CAAE,SAAAC,EAAU,UAAAC,EAAW,MAAAC,EAAO,GAAGC,CAAU,EAAIC,EACnDP,EACAE,EACAM,CACF,EACA,OACE,gBAACC,EAAe,KAAf,CACC,UAAU,gBACV,oBAAmBJ,EAClB,GAAGC,EACJ,QAAS,GACT,IAAKP,GAEL,gBAACU,EAAe,KAAf,CACC,UAAWC,EAAW,WAAY,iBAAkB,gBAAiBN,CAAS,GAE7ED,CACH,CACF,CAEJ,CAAC,EACDN,EAAW,YAAc,cAOzB,IAAMc,EAAmB,aAA+C,CAACX,EAAOD,IAAiB,CAC/F,GAAM,CAAE,QAAAa,EAAS,SAAAT,EAAU,UAAAC,EAAW,OAAAS,EAAQ,GAAGC,CAAU,EAAId,EAE/D,OACE,gBAACS,EAAe,KAAf,CAAoB,UAAU,iBAC7B,gBAACA,EAAe,KAAf,CACE,GAAGK,EACJ,IAAKf,EACL,UAAWW,EAAW,WAAY,wBAAyB,gBAAiBN,CAAS,EACrF,SAAU,OACV,QAASQ,EACT,eAAcC,EAAS,OAAS,OAChC,cAAaA,GAAU,QAEtBE,EAAW,CAAE,QAAAH,EAAS,SAAAT,CAAS,EAAIA,GAClC,gCACE,gBAAC,QAAK,UAAU,iDAAiDA,CAAS,EAC1E,gBAAC,QAAK,UAAU,6DACbA,CACH,CACF,CACD,CACH,CACF,CAEJ,CAAC,EACDQ,EAAW,YAAc",
|
|
6
|
-
"names": ["tab_nav_exports", "__export", "TabNavLink", "TabNavRoot", "React", "classNames", "NavigationMenu", "TabNavRoot", "ownProps", "forwardedRef", "props", "useThemeSizeProps", "baseTabListPropDefs", "children", "className", "color", "rootProps", "extractProps", "marginPropDefs", "NavigationMenu", "classNames", "TabNavLink", "asChild", "active", "linkProps", "getSubtree"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as re,b as ne}from"./chunk-UFJJTUOU.js";import{a as B,b as te,c as M}from"./chunk-MAI7FEU7.js";import{b as ee,c as oe}from"./chunk-IX5HIHVI.js";import{a as Z}from"./chunk-MJJ7XDIP.js";import{b as X,c as Y}from"./chunk-6AZV4VFW.js";import{a as Q}from"./chunk-AGAQC4HH.js";import{c as J}from"./chunk-FWB47YCH.js";import{d as U}from"./chunk-3YLYGKFB.js";import{a as O}from"./chunk-6FLLFCBU.js";import{a as _}from"./chunk-2FPJ6Q2N.js";import{a as Ne}from"./chunk-OS3FCYZY.js";var ze={};Ne(ze,{Content:()=>xe,Empty:()=>Re,Group:()=>he,Input:()=>ge,Item:()=>Se,Label:()=>ve,List:()=>Pe,Root:()=>de,Separator:()=>ye,Trigger:()=>Ce,Value:()=>fe});import*as e from"react";import u from"classnames";import{Popover as ae}from"radix-ui";import{useCallbackRef as A,useComposedRefs as ie,useControllableState as G,useLayoutEffect as W}from"radix-ui/internal";import{Command as N,useCommandState as se}from"cmdk";var Le={size:B.size},we={size:M.size},le=new Set;function De(o){le.has(o)||(le.add(o),console.warn(o))}function Oe(o){let r=o,t=new Set;return{get:()=>r,set:n=>{Object.is(n,r)||(r=n,t.forEach(a=>a()))},subscribe:n=>(t.add(n),()=>{t.delete(n)})}}var me=e.createContext(null),k=o=>{let r=e.useContext(me);if(!r)throw new Error(`Combobox.${o} must be used within Combobox.Root`);return r},ce=e.createContext(null),be=e.createContext(null),pe=e.createContext(null),ue=()=>e.useContext(pe);function Me(o){let r=o.getAttribute("aria-label")?.trim();if(r)return r;let t=o.getAttribute("aria-labelledby");if(t){let a=t.split(/\s+/).map(s=>o.ownerDocument.getElementById(s)?.textContent?.trim()).filter(Boolean).join(" ");if(a)return a}let n=o.labels;if(n&&n.length>0){let a=Array.from(n).map(s=>s.textContent?.trim()).filter(Boolean).join(" ");if(a)return a}}var de=o=>{let{children:r,size:t,value:n,defaultValue:a=null,onValueChange:s,open:l,defaultOpen:d=!1,onOpenChange:i,placeholder:m="Select an option",searchPlaceholder:C="Search...",searchValue:f,defaultSearchValue:V="",onSearchValueChange:P,filter:R,shouldFilter:p=!0,loop:c=!0,disabled:x,resetSearchOnSelect:v=!0,resetSearchOnClose:g=!0,color:E,displayValue:h,...T}=o,S=U(t,B.size),[y,b]=G({prop:l,defaultProp:d,onChange:i}),[I,Ve]=G({prop:n,defaultProp:a,onChange:s}),[j,L]=G({prop:f,defaultProp:V,onChange:P}),K=typeof h=="function"?h(I):h,[w]=e.useState(()=>Oe(I));W(()=>{w.set(I)},[w,I]);let z=A(D=>{b(D),!D&&g&&L("")}),q=A(D=>{Ve(D),b(!1),v&&L("")}),F=e.useRef(null),$=e.useCallback(()=>F.current?Me(F.current):void 0,[]),Ee=e.useMemo(()=>({value:I,displayValue:K,setOpen:z,size:S,placeholder:m,searchPlaceholder:C,disabled:x,color:E,loop:c,shouldFilter:p,filter:R,triggerRef:F,getTriggerLabel:$}),[I,K,z,S,m,C,x,E,c,p,R,$]),Te=e.useMemo(()=>({value:j,setValue:L}),[j,L]),Ie=e.useMemo(()=>({store:w,onSelect:q,disabled:x}),[w,q,x]);return e.createElement(me.Provider,{value:Ee},e.createElement(ce.Provider,{value:Te},e.createElement(be.Provider,{value:Ie},e.createElement(re,{open:y,onOpenChange:z,...T},r))))};de.displayName="Combobox.Root";var Ce=e.forwardRef((o,r)=>{let t=k("Trigger"),{children:n,className:a,placeholder:s,disabled:l,readOnly:d,error:i,loading:m,color:C,radius:f,onClick:V,onKeyDown:P,type:R,...p}=O({size:t.size,...o},Le,te,_),c=l??t.disabled,x=C??t.color,v=!!(d||m),g=t.value==null&&t.displayValue==null,E=ie(r,t.triggerRef),{getTriggerLabel:h}=t;e.useEffect(()=>{},[h]);let T=b=>{V?.(b),v&&b.preventDefault()},S=b=>{P?.(b),!(b.defaultPrevented||v||c)&&b.key==="ArrowDown"&&(b.preventDefault(),t.setOpen(!0))},y=e.createElement(e.Fragment,null,e.createElement("span",{className:"rt-SelectTriggerInner"},e.createElement("span",{className:"rt-ComboboxValue"},t.displayValue??t.value??s??t.placeholder)),m?e.createElement("div",{className:"rt-SelectIcon rt-SelectLoadingIcon","aria-hidden":"true"},e.createElement("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none"},e.createElement("circle",{cx:"8",cy:"8",r:"7",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeDasharray:"32",strokeDashoffset:"32",className:"rt-SelectLoadingIconCircle"}))):e.createElement(oe,{className:"rt-SelectIcon"}));return e.createElement(ne,{disabled:c},e.createElement("button",{"data-accent-color":x,"data-radius":f,"data-error":i,"data-loading":m,"data-disabled":c||void 0,"data-read-only":d||void 0,"data-placeholder":g?"":void 0,...p,role:"combobox","aria-disabled":c||void 0,"aria-readonly":d||void 0,"aria-invalid":i||void 0,"aria-busy":m||void 0,type:R??"button",disabled:c,onClick:T,onKeyDown:S,ref:E,className:u("rt-reset","rt-SelectTrigger","rt-ComboboxTrigger",a)},n?Z(n):y))});Ce.displayName="Combobox.Trigger";var fe=e.forwardRef(({placeholder:o,children:r,className:t,...n},a)=>{let s=k("Value"),l=s.displayValue??s.value??void 0;return e.createElement("span",{...n,ref:a,className:u("rt-ComboboxValue",t)},l??r??o??s.placeholder)});fe.displayName="Combobox.Value";function ke(){let o=se(a=>a.filtered.count),r=se(a=>a.search),[t,n]=e.useState("");return e.useEffect(()=>{let a=r?o===0?"No results":`${o} result${o===1?"":"s"}`:"",s=window.setTimeout(()=>n(a),r?400:0);return()=>window.clearTimeout(s)},[o,r]),e.createElement(Q,{role:"status","aria-live":"polite","aria-atomic":"true"},t)}var xe=e.forwardRef((o,r)=>{let t=k("Content"),n=X(),a=t.size==="4"?"3":t.size,s=o.size??a??M.size.default,{className:l,children:d,color:i,forceMount:m,container:C,onOpenAutoFocus:f,"aria-label":V,"aria-labelledby":P,...R}=O({...o,size:s},M),p=i||t.color||n.accentColor,{getTriggerLabel:c}=t,[x,v]=e.useState(c);W(()=>{if(x!==void 0)return;let y=c();y!==void 0&&v(y)},[c,x]);let g=o["aria-label"]??x,E=e.useMemo(()=>({sizeClassName:O({size:s},we).className||void 0,color:p,label:g}),[s,p,g]),h=e.useRef(null),T=y=>{if(f?.(y),y.defaultPrevented)return;let b=h.current;if(!b||b.querySelector("[cmdk-input]"))return;y.preventDefault(),(b.querySelector("[cmdk-list]")??b).focus({preventScroll:!0})},S=t.value?.trim()||void 0;return e.createElement(ae.Portal,{container:C,forceMount:m?!0:void 0},e.createElement(Y,{asChild:!0},e.createElement(ae.Content,{"data-accent-color":p,align:"start",sideOffset:4,collisionPadding:10,"aria-label":P?void 0:g,"aria-labelledby":P,...R,forceMount:m?!0:void 0,onOpenAutoFocus:T,ref:r,className:u("rt-PopperContent","rt-BaseMenuContent","rt-variant-soft","rt-ComboboxContent",l)},e.createElement(pe.Provider,{value:E},e.createElement(N,{ref:h,loop:t.loop,shouldFilter:t.shouldFilter,filter:t.filter,label:g,defaultValue:S,className:"rt-ComboboxCommand"},d,e.createElement(ke,null))))))});xe.displayName="Combobox.Content";var ge=e.forwardRef(({className:o,startAdornment:r,endAdornment:t,placeholder:n,variant:a,value:s,onValueChange:l,...d},i)=>{let m=k("Input"),C=e.useContext(ce),f=ue(),V=a??"soft",P=s??C?.value??"",R=l??C?.setValue,p=e.createElement("div",{className:u("rt-TextFieldRoot","rt-ComboboxInputRoot",f?.sizeClassName,`rt-variant-${V}`),"data-accent-color":f?.color},r?e.createElement("div",{className:"rt-TextFieldSlot"},r):null,e.createElement(N.Input,{...d,ref:i,value:P,onValueChange:R,placeholder:n??m.searchPlaceholder,className:u("rt-reset","rt-TextFieldInput",o)}),t?e.createElement("div",{className:"rt-TextFieldSlot","data-side":"right"},t):null);return f?e.createElement("div",{className:"rt-ComboboxSearch"},p):p});ge.displayName="Combobox.Input";var Pe=e.forwardRef(({className:o,children:r,label:t,...n},a)=>{let s=ue();return e.createElement("div",{className:"rt-ComboboxScrollArea"},e.createElement("div",{className:u("rt-BaseMenuViewport","rt-ComboboxViewport")},e.createElement(N.List,{...n,label:t??s?.label,ref:a,className:u("rt-ComboboxList",o)},r)))});Pe.displayName="Combobox.List";var Re=e.forwardRef(({className:o,...r},t)=>e.createElement(N.Empty,{...r,ref:t,className:u("rt-ComboboxEmpty",o)}));Re.displayName="Combobox.Empty";var he=e.forwardRef(({className:o,...r},t)=>e.createElement(N.Group,{...r,ref:t,className:u("rt-BaseMenuGroup","rt-ComboboxGroup",o)}));he.displayName="Combobox.Group";var ve=e.forwardRef(({className:o,id:r,...t},n)=>{let a=e.useId(),s=r??a,l=e.useRef(null),d=ie(n,l);return W(()=>{let i=l.current?.closest("[cmdk-group-items]");if(!(!i||i.hasAttribute("aria-labelledby")))return i.setAttribute("aria-labelledby",s),()=>{i.getAttribute("aria-labelledby")===s&&i.removeAttribute("aria-labelledby")}},[s]),e.createElement("div",{...t,id:s,ref:d,className:u("rt-BaseMenuLabel","rt-ComboboxLabel",o)})});ve.displayName="Combobox.Label";var ye=e.forwardRef(({className:o,...r},t)=>e.createElement(N.Separator,{...r,ref:t,className:u("rt-BaseMenuSeparator","rt-ComboboxSeparator",o)}));ye.displayName="Combobox.Separator";function H(o){return o==null||typeof o=="boolean"?"":typeof o=="string"||typeof o=="number"?String(o):Array.isArray(o)?o.map(H).join(""):e.isValidElement(o)?H(o.props.children):""}var Se=e.forwardRef(({className:o,children:r,label:t,value:n,disabled:a,onSelect:s,keywords:l,...d},i)=>{let m=e.useContext(be);if(!m)throw new Error("Combobox.Item must be used within Combobox.Root");let{store:C,onSelect:f,disabled:V}=m,P=n??(typeof r=="string"?r.trim():void 0),R=()=>P!==void 0&&C.get()===P,p=e.useSyncExternalStore(C.subscribe,R,R),c=A(s),x=e.useCallback(T=>{let S=n??T;f(S),c(S)},[n,f,c]),v=(t??H(r)).replace(/\s+/g," ").trim(),g=v?l?[v,...l]:[v]:l,E=g?g.join("\0"):"",h=a??V??!1;return e.createElement(N.Item,{key:E,...d,value:n,keywords:g,"aria-checked":p,disabled:h||void 0,ref:i,onSelect:x,className:u("rt-reset","rt-BaseMenuItem","rt-ComboboxItem",o)},p?e.createElement("span",{className:u("rt-BaseMenuItemIndicator","rt-ComboboxItemIndicator")},e.createElement(ee,{className:u("rt-BaseMenuItemIndicatorIcon","rt-ComboboxItemIndicatorIcon")})):null,e.createElement(J,null,r))});Se.displayName="Combobox.Item";export{de as a,Ce as b,fe as c,xe as d,ge as e,Pe as f,Re as g,he as h,ve as i,ye as j,Se as k,ze as l};
|
|
2
|
-
//# sourceMappingURL=chunk-UUHTK35B.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/combobox.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client';\n\n/**\n * Combobox: Radix Popover for positioning, dismissal and focus; cmdk for search,\n * filtering and keyboard navigation.\n *\n * Render path. State is split so an interaction re-renders only what reads it:\n * - `ComboboxContext` (Trigger, Value, Content): config and the selected value.\n * Open state is not in it, so opening and closing re-render no consumer.\n * - `ComboboxSearchContext` (Input only): the search text.\n * - `ComboboxItemContext` (Items): stable values only. Items read \"am I selected\"\n * from a store through `useSyncExternalStore`, so a selection re-renders the old\n * and the new selected item, not all N.\n *\n * Highlight. cmdk's `data-selected` is the single highlight source, driven by both\n * the pointer and the keyboard. There is no separate CSS `:hover` highlight, so two\n * items are never lit at once and Enter always picks the lit item.\n */\n\nimport { warnDeprecated } from '../helpers/warn-deprecated.js';\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { Popover as PopoverPrimitive } from 'radix-ui';\nimport { useCallbackRef, useComposedRefs, useControllableState, useLayoutEffect } from 'radix-ui/internal';\nimport { Command as CommandPrimitive, useCommandState } from 'cmdk';\n\nimport { extractProps } from '../helpers/extract-props.js';\nimport { useThemeSize } from '../helpers/theme-size.js';\nimport { comboboxRootPropDefs, comboboxTriggerPropDefs, comboboxContentPropDefs } from './combobox.props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\nimport { ChevronDownIcon, ThickCheckIcon } from './icons.js';\nimport { Theme, useThemeContext } from './theme.js';\nimport { requireReactElement } from '../helpers/require-react-element.js';\nimport * as Popover from './popover.js';\nimport { Slottable } from './slot.js';\nimport { VisuallyHidden } from './visually-hidden.js';\n\nimport type { textFieldRootPropDefs } from './text-field.props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype TextFieldVariant = (typeof textFieldRootPropDefs.variant.values)[number];\ntype ComboboxValue = string | null;\ntype CommandFilter = (value: string, search: string, keywords?: string[]) => number;\n\n// Hoisted so extractProps' compiled prop-def cache (keyed by object identity) hits.\nconst triggerSizingPropDefs = { size: comboboxRootPropDefs.size };\nconst contentSizePropDefs = { size: comboboxContentPropDefs.size };\n\nconst warned = new Set<string>();\nfunction warnOnce(message: string) {\n if (warned.has(message)) return;\n warned.add(message);\n console.warn(message);\n}\n\n// ============================================================================\n// Selection store\n// ============================================================================\n\ninterface SelectionStore {\n get: () => ComboboxValue;\n set: (value: ComboboxValue) => void;\n subscribe: (listener: () => void) => () => void;\n}\n\nfunction createSelectionStore(initial: ComboboxValue): SelectionStore {\n let current = initial;\n const listeners = new Set<() => void>();\n return {\n get: () => current,\n set: (next) => {\n if (Object.is(next, current)) return;\n current = next;\n listeners.forEach((listener) => listener());\n },\n subscribe: (listener) => {\n listeners.add(listener);\n return () => {\n listeners.delete(listener);\n };\n },\n };\n}\n\n// ============================================================================\n// Contexts\n// ============================================================================\n\ninterface ComboboxContextValue {\n value: ComboboxValue;\n displayValue?: string;\n setOpen: (open: boolean) => void;\n size?: ComboboxRootOwnProps['size'];\n placeholder?: string;\n searchPlaceholder?: string;\n disabled?: boolean;\n color?: string;\n loop: boolean;\n shouldFilter: boolean;\n filter?: CommandFilter;\n triggerRef: React.RefObject<HTMLButtonElement | null>;\n /** Reads the trigger's accessible name from the DOM (aria-label, aria-labelledby or <label>). */\n getTriggerLabel: () => string | undefined;\n}\n\nconst ComboboxContext = React.createContext<ComboboxContextValue | null>(null);\n\nconst useComboboxContext = (componentName: string) => {\n const ctx = React.useContext(ComboboxContext);\n if (!ctx) {\n throw new Error(`Combobox.${componentName} must be used within Combobox.Root`);\n }\n return ctx;\n};\n\ninterface ComboboxSearchContextValue {\n value: string;\n setValue: (value: string) => void;\n}\n\nconst ComboboxSearchContext = React.createContext<ComboboxSearchContextValue | null>(null);\n\ninterface ComboboxItemContextValue {\n store: SelectionStore;\n onSelect: (value: string) => void;\n disabled?: boolean;\n}\n\nconst ComboboxItemContext = React.createContext<ComboboxItemContextValue | null>(null);\n\n/** Values resolved by Content and read by Input and List. */\ninterface ComboboxContentContextValue {\n sizeClassName?: string;\n color?: string;\n label?: string;\n}\n\nconst ComboboxContentContext = React.createContext<ComboboxContentContextValue | null>(null);\n\nconst useComboboxContentContext = () => React.useContext(ComboboxContentContext);\n\n// ============================================================================\n// Root\n// ============================================================================\n\ntype ComboboxRootOwnProps = GetPropDefTypes<typeof comboboxRootPropDefs> & {\n value?: ComboboxValue;\n defaultValue?: ComboboxValue;\n onValueChange?: (value: ComboboxValue) => void;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n placeholder?: string;\n searchPlaceholder?: string;\n searchValue?: string;\n defaultSearchValue?: string;\n onSearchValueChange?: (value: string) => void;\n filter?: CommandFilter;\n shouldFilter?: boolean;\n loop?: boolean;\n disabled?: boolean;\n /** Clear the search text when an option is selected. Defaults to true. */\n resetSearchOnSelect?: boolean;\n /** Clear the search text when the popup is dismissed without a selection. Defaults to true. */\n resetSearchOnClose?: boolean;\n color?: (typeof comboboxTriggerPropDefs.color.values)[number];\n /**\n * Text shown in the trigger for the selected value. Without it the raw value is shown.\n * Can be a string or a function that receives the current value. Pass a stable\n * function (module scope or `useCallback`): an inline function runs on every render.\n * @example displayValue={(v) => items.find(i => i.value === v)?.label}\n */\n displayValue?: string | ((value: ComboboxValue) => string | undefined);\n};\n\ntype PopoverRootProps = React.ComponentPropsWithoutRef<typeof Popover.Root>;\ninterface ComboboxRootProps extends PopoverRootProps, ComboboxRootOwnProps {}\n\nfunction readElementLabel(el: HTMLElement): string | undefined {\n const ariaLabel = el.getAttribute('aria-label')?.trim();\n if (ariaLabel) return ariaLabel;\n\n const labelledBy = el.getAttribute('aria-labelledby');\n if (labelledBy) {\n const text = labelledBy\n .split(/\\s+/)\n .map((id) => el.ownerDocument.getElementById(id)?.textContent?.trim())\n .filter(Boolean)\n .join(' ');\n if (text) return text;\n }\n\n const labels = (el as HTMLButtonElement).labels;\n if (labels && labels.length > 0) {\n const text = Array.from(labels)\n .map((label) => label.textContent?.trim())\n .filter(Boolean)\n .join(' ');\n if (text) return text;\n }\n\n return undefined;\n}\n\nconst ComboboxRoot: React.FC<ComboboxRootProps> = (props) => {\n const {\n children,\n size: sizeProp,\n value: valueProp,\n defaultValue = null,\n onValueChange,\n open: openProp,\n defaultOpen = false,\n onOpenChange,\n placeholder = 'Select an option',\n searchPlaceholder = 'Search...',\n searchValue: searchValueProp,\n defaultSearchValue = '',\n onSearchValueChange,\n filter,\n shouldFilter = true,\n loop = true,\n disabled,\n resetSearchOnSelect = true,\n resetSearchOnClose = true,\n color,\n displayValue: displayValueProp,\n ...rootProps\n } = props;\n const size = useThemeSize(sizeProp, comboboxRootPropDefs.size);\n\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange,\n });\n\n const [value, setValue] = useControllableState<ComboboxValue>({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n });\n\n const [searchValue, setSearchValue] = useControllableState<string>({\n prop: searchValueProp,\n defaultProp: defaultSearchValue,\n onChange: onSearchValueChange,\n });\n\n const resolvedDisplayValue = typeof displayValueProp === 'function' ? displayValueProp(value) : displayValueProp;\n\n // Items subscribe to this store instead of the context, so a selection\n // re-renders only the items whose selected state flips.\n const [store] = React.useState(() => createSelectionStore(value));\n useLayoutEffect(() => {\n store.set(value);\n }, [store, value]);\n\n // The radix setters change identity whenever their controlled prop changes.\n // Reading them through callback refs keeps these handlers stable, so the\n // contexts below do not change on every keystroke or selection.\n const handleOpenChange = useCallbackRef((nextOpen: boolean) => {\n setOpen(nextOpen);\n if (!nextOpen && resetSearchOnClose) setSearchValue('');\n });\n\n const onSelect = useCallbackRef((nextValue: string) => {\n setValue(nextValue);\n setOpen(false);\n if (resetSearchOnSelect) setSearchValue('');\n });\n\n const triggerRef = React.useRef<HTMLButtonElement | null>(null);\n const getTriggerLabel = React.useCallback(() => (triggerRef.current ? readElementLabel(triggerRef.current) : undefined), []);\n\n const contextValue = React.useMemo<ComboboxContextValue>(\n () => ({\n value,\n displayValue: resolvedDisplayValue,\n setOpen: handleOpenChange,\n size,\n placeholder,\n searchPlaceholder,\n disabled,\n color,\n loop,\n shouldFilter,\n filter,\n triggerRef,\n getTriggerLabel,\n }),\n [value, resolvedDisplayValue, handleOpenChange, size, placeholder, searchPlaceholder, disabled, color, loop, shouldFilter, filter, getTriggerLabel],\n );\n\n const searchContextValue = React.useMemo<ComboboxSearchContextValue>(() => ({ value: searchValue, setValue: setSearchValue }), [searchValue, setSearchValue]);\n\n const itemContextValue = React.useMemo<ComboboxItemContextValue>(() => ({ store, onSelect, disabled }), [store, onSelect, disabled]);\n\n return (\n <ComboboxContext.Provider value={contextValue}>\n <ComboboxSearchContext.Provider value={searchContextValue}>\n <ComboboxItemContext.Provider value={itemContextValue}>\n <Popover.Root open={open} onOpenChange={handleOpenChange} {...rootProps}>\n {children}\n </Popover.Root>\n </ComboboxItemContext.Provider>\n </ComboboxSearchContext.Provider>\n </ComboboxContext.Provider>\n );\n};\nComboboxRoot.displayName = 'Combobox.Root';\n\n// ============================================================================\n// Trigger\n// ============================================================================\n\ntype ComboboxTriggerElement = HTMLButtonElement;\ntype ComboboxTriggerOwnProps = GetPropDefTypes<typeof comboboxTriggerPropDefs>;\ntype NativeTriggerProps = Omit<React.ComponentPropsWithoutRef<'button'>, 'color'>;\ninterface ComboboxTriggerProps extends NativeTriggerProps, MarginProps, ComboboxTriggerOwnProps {}\n\nconst ComboboxTrigger = React.forwardRef<ComboboxTriggerElement, ComboboxTriggerProps>((props, forwardedRef) => {\n const ctx = useComboboxContext('Trigger');\n\n const {\n children,\n className,\n placeholder,\n disabled,\n readOnly,\n error,\n loading,\n color,\n radius,\n onClick,\n onKeyDown,\n type: buttonType,\n ...triggerProps\n } = extractProps({ size: ctx.size, ...props }, triggerSizingPropDefs, comboboxTriggerPropDefs, marginPropDefs);\n\n const isDisabled = disabled ?? ctx.disabled;\n const resolvedColor = color ?? ctx.color;\n // Read-only and loading triggers stay focusable but do not open.\n const isBlocked = Boolean(readOnly || loading);\n const isPlaceholder = ctx.value == null && ctx.displayValue == null;\n\n const composedRef = useComposedRefs(forwardedRef, ctx.triggerRef);\n\n const { getTriggerLabel } = ctx;\n React.useEffect(() => {\n if (process.env.NODE_ENV === 'production') return;\n if (!getTriggerLabel()) {\n warnOnce(\n 'Combobox.Trigger has no accessible name. The combobox role does not take its name from its content. Add `aria-label`, `aria-labelledby`, or a `<label htmlFor>` that points at the trigger.',\n );\n }\n }, [getTriggerLabel]);\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n onClick?.(event);\n // Radix skips its open toggle when the event is default-prevented.\n if (isBlocked) event.preventDefault();\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLButtonElement>) => {\n onKeyDown?.(event);\n if (event.defaultPrevented || isBlocked || isDisabled) return;\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n ctx.setOpen(true);\n }\n };\n\n const defaultContent = (\n <>\n <span className=\"rt-SelectTriggerInner\">\n <span className=\"rt-ComboboxValue\">{ctx.displayValue ?? ctx.value ?? placeholder ?? ctx.placeholder}</span>\n </span>\n {loading ? (\n <div className=\"rt-SelectIcon rt-SelectLoadingIcon\" aria-hidden=\"true\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <circle\n cx=\"8\"\n cy=\"8\"\n r=\"7\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeDasharray=\"32\"\n strokeDashoffset=\"32\"\n className=\"rt-SelectLoadingIconCircle\"\n />\n </svg>\n </div>\n ) : (\n <ChevronDownIcon className=\"rt-SelectIcon\" />\n )}\n </>\n );\n\n // Radix Popover.Trigger supplies aria-expanded, aria-controls (the popup id) and\n // aria-haspopup=\"dialog\", which matches the Popover dialog this opens.\n return (\n <Popover.Trigger disabled={isDisabled}>\n <button\n data-accent-color={resolvedColor}\n data-radius={radius}\n data-error={error}\n data-loading={loading}\n data-disabled={isDisabled || undefined}\n data-read-only={readOnly || undefined}\n data-placeholder={isPlaceholder ? '' : undefined}\n {...triggerProps}\n // eslint-disable-next-line jsx-a11y/role-has-required-aria-props -- Popover.Trigger (Slot) adds aria-expanded and aria-controls\n role=\"combobox\"\n aria-disabled={isDisabled || undefined}\n aria-readonly={readOnly || undefined}\n aria-invalid={error || undefined}\n aria-busy={loading || undefined}\n type={buttonType ?? 'button'}\n disabled={isDisabled}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n ref={composedRef}\n className={classNames('rt-reset', 'rt-SelectTrigger', 'rt-ComboboxTrigger', className)}\n >\n {children ? requireReactElement(children) : defaultContent}\n </button>\n </Popover.Trigger>\n );\n});\nComboboxTrigger.displayName = 'Combobox.Trigger';\n\n// ============================================================================\n// Value (standalone, for custom trigger layouts)\n// ============================================================================\n\ntype ComboboxValueElement = HTMLSpanElement;\ninterface ComboboxValueProps extends React.ComponentPropsWithoutRef<'span'> {\n placeholder?: string;\n}\n\nconst ComboboxValue = React.forwardRef<ComboboxValueElement, ComboboxValueProps>(({ placeholder, children, className, ...valueProps }, forwardedRef) => {\n const ctx = useComboboxContext('Value');\n const display = ctx.displayValue ?? ctx.value ?? undefined;\n return (\n <span {...valueProps} ref={forwardedRef} className={classNames('rt-ComboboxValue', className)}>\n {display ?? children ?? placeholder ?? ctx.placeholder}\n </span>\n );\n});\nComboboxValue.displayName = 'Combobox.Value';\n\n// ============================================================================\n// Content\n// ============================================================================\n\ntype ComboboxContentElement = React.ElementRef<typeof PopoverPrimitive.Content>;\ntype ComboboxContentOwnProps = GetPropDefTypes<typeof comboboxContentPropDefs> & {\n container?: React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Portal>['container'];\n};\ninterface ComboboxContentProps extends Omit<ComponentPropsWithout<typeof PopoverPrimitive.Content, RemovedProps>, 'size'>, ComboboxContentOwnProps {}\n\n/** Announces the filtered result count to screen readers after typing settles. */\nfunction ComboboxAnnouncer() {\n const count = useCommandState((state) => state.filtered.count);\n const search = useCommandState((state) => state.search);\n const [message, setMessage] = React.useState('');\n\n React.useEffect(() => {\n const next = !search ? '' : count === 0 ? 'No results' : `${count} result${count === 1 ? '' : 's'}`;\n const timeout = window.setTimeout(() => setMessage(next), search ? 400 : 0);\n return () => window.clearTimeout(timeout);\n }, [count, search]);\n\n return (\n <VisuallyHidden role=\"status\" aria-live=\"polite\" aria-atomic=\"true\">\n {message}\n </VisuallyHidden>\n );\n}\n\nconst ComboboxContent = React.forwardRef<ComboboxContentElement, ComboboxContentProps>((props, forwardedRef) => {\n const ctx = useComboboxContext('Content');\n const themeContext = useThemeContext();\n\n // Menus stop at size 3; a size 4 field opens a size 3 list.\n const rootSize = ctx.size === '4' ? '3' : ctx.size;\n const size = props.size ?? rootSize ?? comboboxContentPropDefs.size.default;\n\n const {\n className,\n children,\n color,\n forceMount,\n container,\n onOpenAutoFocus,\n 'aria-label': _ariaLabel,\n 'aria-labelledby': ariaLabelledByProp,\n ...contentProps\n } = extractProps({ ...props, size }, comboboxContentPropDefs);\n\n const resolvedColor = color || ctx.color || themeContext.accentColor;\n\n\n // The trigger's name labels the popup, the search field and the listbox.\n // Read once per mount (the content remounts on every open); fall back to a\n // layout effect when the trigger was not attached yet (defaultOpen, forceMount).\n const { getTriggerLabel } = ctx;\n const [triggerLabel, setTriggerLabel] = React.useState(getTriggerLabel);\n useLayoutEffect(() => {\n if (triggerLabel !== undefined) return;\n const label = getTriggerLabel();\n if (label !== undefined) setTriggerLabel(label);\n }, [getTriggerLabel, triggerLabel]);\n\n const label = props['aria-label'] ?? triggerLabel;\n\n const contentContextValue = React.useMemo<ComboboxContentContextValue>(\n () => ({\n // Responsive-aware size class for the search field (never String() a responsive object).\n sizeClassName: extractProps({ size }, contentSizePropDefs).className || undefined,\n color: resolvedColor,\n label,\n }),\n [size, resolvedColor, label],\n );\n\n const commandRef = React.useRef<HTMLDivElement>(null);\n\n // Without a search field, focus would land on the popup itself, outside cmdk's\n // keydown handler. Focus the listbox instead so arrow keys and Enter work.\n const handleOpenAutoFocus = (event: Event) => {\n onOpenAutoFocus?.(event);\n if (event.defaultPrevented) return;\n const command = commandRef.current;\n if (!command || command.querySelector('[cmdk-input]')) return;\n event.preventDefault();\n const list = command.querySelector<HTMLElement>('[cmdk-list]');\n (list ?? command).focus({ preventScroll: true });\n };\n\n // Start the highlight on the selected option (cmdk trims item values).\n const initialHighlight = ctx.value?.trim() || undefined;\n\n return (\n <PopoverPrimitive.Portal container={container} forceMount={forceMount ? true : undefined}>\n <Theme asChild>\n <PopoverPrimitive.Content\n data-accent-color={resolvedColor}\n align=\"start\"\n sideOffset={4}\n collisionPadding={10}\n aria-label={ariaLabelledByProp ? undefined : label}\n aria-labelledby={ariaLabelledByProp}\n {...contentProps}\n forceMount={forceMount ? true : undefined}\n onOpenAutoFocus={handleOpenAutoFocus}\n ref={forwardedRef}\n className={classNames('rt-PopperContent', 'rt-BaseMenuContent',\n 'rt-variant-soft', 'rt-ComboboxContent', className)}\n >\n <ComboboxContentContext.Provider value={contentContextValue}>\n <CommandPrimitive\n ref={commandRef}\n loop={ctx.loop}\n shouldFilter={ctx.shouldFilter}\n filter={ctx.filter}\n label={label}\n defaultValue={initialHighlight}\n className=\"rt-ComboboxCommand\"\n >\n {children}\n <ComboboxAnnouncer />\n </CommandPrimitive>\n </ComboboxContentContext.Provider>\n </PopoverPrimitive.Content>\n </Theme>\n </PopoverPrimitive.Portal>\n );\n});\nComboboxContent.displayName = 'Combobox.Content';\n\n// ============================================================================\n// Input\n// ============================================================================\n\ntype ComboboxInputElement = React.ElementRef<typeof CommandPrimitive.Input>;\ninterface ComboboxInputProps extends Omit<React.ComponentPropsWithoutRef<typeof CommandPrimitive.Input>, 'value' | 'onValueChange'> {\n startAdornment?: React.ReactNode;\n endAdornment?: React.ReactNode;\n variant?: TextFieldVariant;\n value?: string;\n onValueChange?: (value: string) => void;\n}\n\nconst ComboboxInput = React.forwardRef<ComboboxInputElement, ComboboxInputProps>(\n ({ className, startAdornment, endAdornment, placeholder, variant: inputVariant, value, onValueChange, ...inputProps }, forwardedRef) => {\n const ctx = useComboboxContext('Input');\n const search = React.useContext(ComboboxSearchContext);\n const contentContext = useComboboxContentContext();\n\n const textFieldVariant = inputVariant ?? 'soft';\n\n // The search text lives in Root; only this component subscribes to it.\n const searchValue = value ?? search?.value ?? '';\n const handleSearchChange = onValueChange ?? search?.setValue;\n\n const inputField = (\n <div\n className={classNames('rt-TextFieldRoot', 'rt-ComboboxInputRoot', contentContext?.sizeClassName, `rt-variant-${textFieldVariant}`)}\n data-accent-color={contentContext?.color}\n >\n {startAdornment ? <div className=\"rt-TextFieldSlot\">{startAdornment}</div> : null}\n <CommandPrimitive.Input\n {...inputProps}\n ref={forwardedRef}\n value={searchValue}\n onValueChange={handleSearchChange}\n placeholder={placeholder ?? ctx.searchPlaceholder}\n className={classNames('rt-reset', 'rt-TextFieldInput', className)}\n />\n {endAdornment ? (\n <div className=\"rt-TextFieldSlot\" data-side=\"right\">\n {endAdornment}\n </div>\n ) : null}\n </div>\n );\n\n return contentContext ? <div className=\"rt-ComboboxSearch\">{inputField}</div> : inputField;\n },\n);\nComboboxInput.displayName = 'Combobox.Input';\n\n// ============================================================================\n// List\n// ============================================================================\n\ntype ComboboxListElement = React.ElementRef<typeof CommandPrimitive.List>;\ninterface ComboboxListProps extends React.ComponentPropsWithoutRef<typeof CommandPrimitive.List> {}\n\n// cmdk's List owns its id (referenced by the input's aria-controls), role and\n// aria-label (set from `label`), so none of them are overridden here.\nconst ComboboxList = React.forwardRef<ComboboxListElement, ComboboxListProps>(({ className, children, label, ...listProps }, forwardedRef) => {\n const contentContext = useComboboxContentContext();\n return (\n <div className=\"rt-ComboboxScrollArea\">\n <div className={classNames('rt-BaseMenuViewport', 'rt-ComboboxViewport')}>\n <CommandPrimitive.List {...listProps} label={label ?? contentContext?.label} ref={forwardedRef} className={classNames('rt-ComboboxList', className)}>\n {children}\n </CommandPrimitive.List>\n </div>\n </div>\n );\n});\nComboboxList.displayName = 'Combobox.List';\n\n// ============================================================================\n// Empty\n// ============================================================================\n\ntype ComboboxEmptyElement = React.ElementRef<typeof CommandPrimitive.Empty>;\ninterface ComboboxEmptyProps extends React.ComponentPropsWithoutRef<typeof CommandPrimitive.Empty> {}\n\nconst ComboboxEmpty = React.forwardRef<ComboboxEmptyElement, ComboboxEmptyProps>(({ className, ...emptyProps }, forwardedRef) => (\n <CommandPrimitive.Empty {...emptyProps} ref={forwardedRef} className={classNames('rt-ComboboxEmpty', className)} />\n));\nComboboxEmpty.displayName = 'Combobox.Empty';\n\n// ============================================================================\n// Group\n// ============================================================================\n\ntype ComboboxGroupElement = React.ElementRef<typeof CommandPrimitive.Group>;\ninterface ComboboxGroupProps extends React.ComponentPropsWithoutRef<typeof CommandPrimitive.Group> {}\n\nconst ComboboxGroup = React.forwardRef<ComboboxGroupElement, ComboboxGroupProps>(({ className, ...groupProps }, forwardedRef) => (\n <CommandPrimitive.Group {...groupProps} ref={forwardedRef} className={classNames('rt-BaseMenuGroup', 'rt-ComboboxGroup', className)} />\n));\nComboboxGroup.displayName = 'Combobox.Group';\n\n// ============================================================================\n// Label\n// ============================================================================\n\ntype ComboboxLabelElement = React.ElementRef<'div'>;\ninterface ComboboxLabelProps extends React.ComponentPropsWithoutRef<'div'> {}\n\nconst ComboboxLabel = React.forwardRef<ComboboxLabelElement, ComboboxLabelProps>(({ className, id: idProp, ...labelProps }, forwardedRef) => {\n const generatedId = React.useId();\n const id = idProp ?? generatedId;\n const localRef = React.useRef<HTMLDivElement>(null);\n const composedRef = useComposedRefs(forwardedRef, localRef);\n\n // cmdk renders the group's role=\"group\" element itself and gives no way to\n // label it from a child, so name it after this label when inside a Group.\n useLayoutEffect(() => {\n const group = localRef.current?.closest('[cmdk-group-items]');\n if (!group || group.hasAttribute('aria-labelledby')) return;\n group.setAttribute('aria-labelledby', id);\n return () => {\n if (group.getAttribute('aria-labelledby') === id) group.removeAttribute('aria-labelledby');\n };\n }, [id]);\n\n return <div {...labelProps} id={id} ref={composedRef} className={classNames('rt-BaseMenuLabel', 'rt-ComboboxLabel', className)} />;\n});\nComboboxLabel.displayName = 'Combobox.Label';\n\n// ============================================================================\n// Separator\n// ============================================================================\n\ntype ComboboxSeparatorElement = React.ElementRef<typeof CommandPrimitive.Separator>;\ninterface ComboboxSeparatorProps extends React.ComponentPropsWithoutRef<typeof CommandPrimitive.Separator> {}\n\nconst ComboboxSeparator = React.forwardRef<ComboboxSeparatorElement, ComboboxSeparatorProps>(({ className, ...separatorProps }, forwardedRef) => (\n <CommandPrimitive.Separator {...separatorProps} ref={forwardedRef} className={classNames('rt-BaseMenuSeparator', 'rt-ComboboxSeparator', className)} />\n));\nComboboxSeparator.displayName = 'Combobox.Separator';\n\n// ============================================================================\n// Item\n// ============================================================================\n\n/** Plain text of a React node tree, used as the item's search text. */\nfunction getNodeText(node: React.ReactNode): string {\n if (node == null || typeof node === 'boolean') return '';\n if (typeof node === 'string' || typeof node === 'number') return String(node);\n if (Array.isArray(node)) return node.map(getNodeText).join('');\n if (React.isValidElement<{ children?: React.ReactNode }>(node)) return getNodeText(node.props.children);\n return '';\n}\n\ntype ComboboxItemElement = React.ElementRef<typeof CommandPrimitive.Item>;\ninterface ComboboxItemProps extends Omit<React.ComponentPropsWithoutRef<typeof CommandPrimitive.Item>, 'keywords' | 'onSelect'> {\n /**\n * Text matched by search. Defaults to the text of `children`. Set it when the\n * children are components whose text is not in the JSX (it cannot be read).\n */\n label?: string;\n /** Additional keywords for search filtering. */\n keywords?: string[];\n /** Called when the item is selected. */\n onSelect?: (value: string) => void;\n}\n\nconst ComboboxItem = React.forwardRef<ComboboxItemElement, ComboboxItemProps>(\n ({ className, children, label, value, disabled, onSelect, keywords, ...itemProps }, forwardedRef) => {\n const itemContext = React.useContext(ComboboxItemContext);\n if (!itemContext) {\n throw new Error('Combobox.Item must be used within Combobox.Root');\n }\n const { store, onSelect: onSelectFromRoot, disabled: rootDisabled } = itemContext;\n\n // Without `value`, cmdk uses the trimmed text of string children.\n const itemValue = value ?? (typeof children === 'string' ? children.trim() : undefined);\n const getIsSelected = () => itemValue !== undefined && store.get() === itemValue;\n const isSelected = React.useSyncExternalStore(store.subscribe, getIsSelected, getIsSelected);\n\n const onSelectProp = useCallbackRef(onSelect);\n // cmdk passes its resolved value (the `value` prop, or the text when `value` is omitted).\n const handleSelect = React.useCallback(\n (resolvedValue: string) => {\n const nextValue = value ?? resolvedValue;\n onSelectFromRoot(nextValue);\n onSelectProp(nextValue);\n },\n [value, onSelectFromRoot, onSelectProp],\n );\n\n // cmdk matches only `value` and `keywords`, so add the visible text as a keyword.\n const text = (label ?? getNodeText(children)).replace(/\\s+/g, ' ').trim();\n const searchKeywords = text ? (keywords ? [text, ...keywords] : [text]) : keywords;\n // cmdk stores keywords only when `value` changes. Remount the cmdk item when\n // they change so a new label or keyword list is picked up.\n const keywordsKey = searchKeywords ? searchKeywords.join('\u0000') : '';\n\n const isDisabled = disabled ?? rootDisabled ?? false;\n\n return (\n <CommandPrimitive.Item\n key={keywordsKey}\n {...itemProps}\n value={value}\n keywords={searchKeywords}\n // cmdk owns aria-selected (the highlighted option); the chosen option is aria-checked.\n aria-checked={isSelected}\n disabled={isDisabled || undefined}\n ref={forwardedRef}\n onSelect={handleSelect}\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-ComboboxItem', className)}\n >\n {isSelected ? (\n <span className={classNames('rt-BaseMenuItemIndicator', 'rt-ComboboxItemIndicator')}>\n <ThickCheckIcon className={classNames('rt-BaseMenuItemIndicatorIcon', 'rt-ComboboxItemIndicatorIcon')} />\n </span>\n ) : null}\n <Slottable>{children}</Slottable>\n </CommandPrimitive.Item>\n );\n },\n);\nComboboxItem.displayName = 'Combobox.Item';\n\n// ============================================================================\n// Exports\n// ============================================================================\n\nexport {\n ComboboxRoot as Root,\n ComboboxTrigger as Trigger,\n ComboboxValue as Value,\n ComboboxContent as Content,\n ComboboxInput as Input,\n ComboboxList as List,\n ComboboxEmpty as Empty,\n ComboboxGroup as Group,\n ComboboxLabel as Label,\n ComboboxSeparator as Separator,\n ComboboxItem as Item,\n};\n\nexport type {\n ComboboxRootProps as RootProps,\n ComboboxTriggerProps as TriggerProps,\n ComboboxValueProps as ValueProps,\n ComboboxContentProps as ContentProps,\n ComboboxInputProps as InputProps,\n ComboboxListProps as ListProps,\n ComboboxEmptyProps as EmptyProps,\n ComboboxGroupProps as GroupProps,\n ComboboxLabelProps as LabelProps,\n ComboboxSeparatorProps as SeparatorProps,\n ComboboxItemProps as ItemProps,\n};\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["combobox_exports", "__export", "ComboboxContent", "ComboboxEmpty", "ComboboxGroup", "ComboboxInput", "ComboboxItem", "ComboboxLabel", "ComboboxList", "ComboboxRoot", "ComboboxSeparator", "ComboboxTrigger", "ComboboxValue", "React", "classNames", "PopoverPrimitive", "useCallbackRef", "useComposedRefs", "useControllableState", "useLayoutEffect", "CommandPrimitive", "useCommandState", "triggerSizingPropDefs", "comboboxRootPropDefs", "contentSizePropDefs", "comboboxContentPropDefs", "warned", "warnOnce", "message", "createSelectionStore", "initial", "current", "listeners", "next", "listener", "ComboboxContext", "useComboboxContext", "componentName", "ctx", "ComboboxSearchContext", "ComboboxItemContext", "ComboboxContentContext", "useComboboxContentContext", "readElementLabel", "el", "ariaLabel", "labelledBy", "text", "id", "labels", "label", "ComboboxRoot", "props", "children", "sizeProp", "valueProp", "defaultValue", "onValueChange", "openProp", "defaultOpen", "onOpenChange", "placeholder", "searchPlaceholder", "searchValueProp", "defaultSearchValue", "onSearchValueChange", "filter", "shouldFilter", "loop", "disabled", "resetSearchOnSelect", "resetSearchOnClose", "color", "displayValueProp", "rootProps", "size", "useThemeSize", "open", "setOpen", "useControllableState", "value", "setValue", "searchValue", "setSearchValue", "resolvedDisplayValue", "store", "useLayoutEffect", "handleOpenChange", "useCallbackRef", "nextOpen", "onSelect", "nextValue", "triggerRef", "getTriggerLabel", "contextValue", "searchContextValue", "itemContextValue", "PopoverRoot", "ComboboxTrigger", "forwardedRef", "className", "readOnly", "error", "loading", "radius", "onClick", "onKeyDown", "buttonType", "triggerProps", "extractProps", "comboboxTriggerPropDefs", "marginPropDefs", "isDisabled", "resolvedColor", "isBlocked", "isPlaceholder", "composedRef", "useComposedRefs", "handleClick", "event", "handleKeyDown", "defaultContent", "ChevronDownIcon", "PopoverTrigger", "classNames", "requireReactElement", "ComboboxValue", "valueProps", "display", "ComboboxAnnouncer", "count", "useCommandState", "state", "search", "setMessage", "timeout", "VisuallyHidden", "ComboboxContent", "themeContext", "useThemeContext", "rootSize", "forceMount", "container", "onOpenAutoFocus", "_ariaLabel", "ariaLabelledByProp", "contentProps", "triggerLabel", "setTriggerLabel", "contentContextValue", "commandRef", "handleOpenAutoFocus", "command", "initialHighlight", "PopoverPrimitive", "Theme", "CommandPrimitive", "ComboboxInput", "startAdornment", "endAdornment", "inputVariant", "inputProps", "contentContext", "textFieldVariant", "handleSearchChange", "inputField", "ComboboxList", "listProps", "ComboboxEmpty", "emptyProps", "ComboboxGroup", "groupProps", "ComboboxLabel", "idProp", "labelProps", "generatedId", "localRef", "group", "ComboboxSeparator", "separatorProps", "getNodeText", "node", "ComboboxItem", "keywords", "itemProps", "itemContext", "onSelectFromRoot", "rootDisabled", "itemValue", "getIsSelected", "isSelected", "onSelectProp", "handleSelect", "resolvedValue", "searchKeywords", "keywordsKey", "ThickCheckIcon", "Slottable"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as U}from"./chunk-OMYAVTX6.js";import{a as K,b as F,c as j,e as E,f as O}from"./chunk-GYB7PAGB.js";import{a as z,b as H,c as W}from"./chunk-UFJJTUOU.js";import{d as G}from"./chunk-IX5HIHVI.js";import{a as w}from"./chunk-2XQECQF2.js";import{b as P}from"./chunk-6RZVKCNG.js";import{b as x}from"./chunk-FWB47YCH.js";import{a as D}from"./chunk-DIR22XIX.js";import{a as ae}from"./chunk-OS3FCYZY.js";var oe={};ae(oe,{Group:()=>_,GroupContent:()=>re,GroupLabel:()=>ee,Menu:()=>$,MenuButton:()=>J,MenuItem:()=>X,MenuSub:()=>Q,MenuSubContent:()=>Z,MenuSubTrigger:()=>Y,Search:()=>te,Separator:()=>V});import*as e from"react";import u from"classnames";import*as f from"@radix-ui/react-accordion";var V=e.forwardRef(({className:r,...t},n)=>e.createElement(U,{...t,ref:n,className:u("rt-SidebarSeparator",r)}));V.displayName="Sidebar.Separator";var $=e.forwardRef(({className:r,...t},n)=>e.createElement("ul",{...t,ref:n,className:u("rt-SidebarMenu",r)}));$.displayName="Sidebar.Menu";var X=e.forwardRef(({className:r,...t},n)=>e.createElement("li",{...t,ref:n,className:u("rt-SidebarMenuItem",r)}));X.displayName="Sidebar.MenuItem";function ne(r){let t=[],n=[];return e.Children.forEach(r,a=>{if(typeof a=="string"||typeof a=="number")n.push(e.createElement("span",{key:n.length,className:"rt-SidebarMenuLabel"},a));else if(e.isValidElement(a)){let i=a;i.type==="svg"||i.props&&i.props.icon||typeof i.type=="function"&&(i.type.displayName?.includes("Icon")||i.type.name?.includes("Icon"))?t.push(a):n.push(a)}else a&&n.push(a)}),{icons:t,labels:n}}function k(r){if(typeof r=="string"||typeof r=="number")return e.createElement("span",{className:"rt-SidebarMenuLabel"},r);if(Array.isArray(r))return r.map((t,n)=>e.createElement(e.Fragment,{key:n},k(t)));if(e.isValidElement(r)){let t=r,n=t.props&&t.props.className||"";if(typeof t.type=="string"&&n.split(" ").includes("rt-SidebarMenuLabel"))return t;let i=k(t.props?.children);return e.cloneElement(t,{...t.props},i)}return r}var J=e.forwardRef(({asChild:r=!1,isActive:t=!1,shortcut:n,badge:a,className:i,children:l,onKeyDown:m,...M},C)=>{let s=P(),c=s?.size??"2",p=s?.presentation==="thin",v=r?x:"button",I=e.useCallback(o=>{if(o.key==="ArrowDown"||o.key==="ArrowUp"){let b=o.currentTarget.closest(".rt-SidebarContent, .rt-SidebarSearchPopover"),y=b?Array.from(b.querySelectorAll(".rt-SidebarMenuButton")).filter(h=>h.offsetParent!==null):[],d=y.indexOf(o.currentTarget),N=y[d+(o.key==="ArrowDown"?1:-1)];d!==-1&&N&&(o.preventDefault(),N.focus())}m?.(o)},[m]),S=e.useMemo(()=>k(l),[l]),{icons:R,labels:B}=e.useMemo(()=>p?ne(l):{icons:[],labels:[]},[p,l]),L=e.useMemo(()=>{if(!r)return null;try{let o=e.Children.only(S),b=o.props?.children,y=e.createElement(e.Fragment,null,b,a&&e.createElement("div",{className:"rt-SidebarMenuBadge"},typeof a=="string"?e.createElement(w,{size:c,variant:"soft"},a):e.createElement(w,{size:a.size||c,variant:a.variant||"soft",color:a.color,radius:a.radius},a.content)),n&&e.createElement("div",{className:"rt-BaseMenuShortcut rt-SidebarMenuShortcut"},e.createElement(D,{size:c},n)));return e.cloneElement(o,{...o.props},y)}catch{return S}},[r,S,a,n,c]);return e.createElement(v,{...M,ref:C,"aria-current":t?"page":void 0,className:u("rt-reset","rt-BaseMenuItem","rt-SidebarMenuButton",i),"data-active":t||void 0,onKeyDown:I},r?L:p&&R.length>0?e.createElement(e.Fragment,null,e.createElement("span",{className:"rt-SidebarMenuIconWrapper"},R),B.map((o,b)=>e.createElement(e.Fragment,{key:b},typeof o=="string"||typeof o=="number"?e.createElement("span",{className:"rt-SidebarMenuLabel"},o):o))):e.createElement(e.Fragment,null,S,a&&e.createElement("div",{className:"rt-SidebarMenuBadge"},typeof a=="string"?e.createElement(w,{size:c,variant:"soft"},a):e.createElement(w,{size:a.size||c,variant:a.variant||"soft",color:a.color,radius:a.radius},a.content)),n&&e.createElement("div",{className:"rt-BaseMenuShortcut rt-SidebarMenuShortcut"},e.createElement(D,{size:c},n))))});J.displayName="Sidebar.MenuButton";var T=e.createContext("accordion"),Q=e.forwardRef(({defaultOpen:r=!1,children:t,...n},a)=>(P()?.presentation==="thin"?"dropdown":"accordion")==="dropdown"?e.createElement("div",{...n,ref:a},e.createElement(K,null,e.createElement(T.Provider,{value:"dropdown"},t))):e.createElement("div",{...n,ref:a},e.createElement(T.Provider,{value:"accordion"},e.createElement(f.Root,{type:"single",collapsible:!0,defaultValue:r?"item":void 0},e.createElement(f.Item,{value:"item"},t)))));Q.displayName="Sidebar.MenuSub";var Y=e.forwardRef(({asChild:r=!1,className:t,children:n,...a},i)=>e.useContext(T)==="dropdown"?e.createElement(F,null,e.createElement("button",{...a,ref:i,type:"button","aria-haspopup":"menu",className:u("rt-reset","rt-BaseMenuItem","rt-SidebarMenuButton","rt-SidebarMenuSubTrigger",t)},n)):e.createElement(f.Header,{asChild:!0},e.createElement("div",null,e.createElement(f.Trigger,{...a,ref:i,asChild:r,className:u("rt-reset","rt-BaseMenuItem","rt-SidebarMenuButton","rt-SidebarMenuSubTrigger",t)},r?n:e.createElement(e.Fragment,null,n,e.createElement(G,{className:u("rt-BaseMenuSubTriggerIcon","rt-SidebarMenuSubTriggerIcon")}))))));Y.displayName="Sidebar.MenuSubTrigger";var Z=e.forwardRef(({className:r,children:t,...n},a)=>{let i=P();if(e.useContext(T)==="dropdown"){let m=s=>{if(Array.isArray(s))return s.map((c,p)=>e.createElement(e.Fragment,{key:p},m(c)));if(e.isValidElement(s)){if(s.type?.displayName==="Sidebar.MenuButton")return s.props?.children;let p=s.props?.children;if(p!==void 0)return e.cloneElement(s,{...s.props,children:m(p)})}return s},M=e.Children.map(t,(s,c)=>{if(e.isValidElement(s)&&s.type?.displayName==="Sidebar.MenuItem"){let p=s.props?.children,v=m(p);return e.createElement(E,{key:c,asChild:!0},v)}return e.createElement(E,{key:c,asChild:!0},m(s))}),C=i?.size==="3"?"2":i?.size;return e.createElement(j,{size:C,className:u(r)},e.createElement(O,null,M))}return e.createElement(f.Content,{...n,ref:a,className:u("rt-SidebarMenuSubContent",r)},e.createElement("div",{className:"rt-SidebarMenuSubList"},t))});Z.displayName="Sidebar.MenuSubContent";var _=e.forwardRef(({className:r,...t},n)=>e.createElement("div",{...t,ref:n,className:u("rt-BaseMenuGroup","rt-SidebarGroup",r)}));_.displayName="Sidebar.Group";var ee=e.forwardRef(({asChild:r=!1,className:t,...n},a)=>e.createElement(r?x:"div",{...n,ref:a,className:u("rt-BaseMenuLabel","rt-SidebarGroupLabel",t)}));ee.displayName="Sidebar.GroupLabel";var re=e.forwardRef(({className:r,...t},n)=>e.createElement("div",{...t,ref:n,className:u("rt-SidebarGroupContent",r)}));re.displayName="Sidebar.GroupContent";var A=({className:r})=>e.createElement("svg",{className:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true"},e.createElement("circle",{cx:"11",cy:"11",r:"8"}),e.createElement("line",{x1:"21",y1:"21",x2:"16.65",y2:"16.65"})),q=({className:r})=>e.createElement("svg",{className:r,width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true"},e.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),e.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"})),te=e.forwardRef(({value:r,onValueChange:t,placeholder:n="Search...",children:a,className:i,...l},m)=>{let M=P(),C=M?.presentation==="thin",s=e.useRef(null),c=e.useRef(null),v=`${e.useId()}-results`,I=e.useRef(r);I.current=r;let S=e.useRef(t);S.current=t;let R=n.replace(/\.+$/,""),B=e.useCallback(o=>{o.key==="Escape"&&I.current&&(o.preventDefault(),o.stopPropagation(),S.current(""),s.current?.focus())},[]),L=e.useCallback(o=>{let b=c.current;if(!b)return;let y=b.querySelector('[role="group"]');if(!y)return;let d=Array.from(y.querySelectorAll("a, button"));if(d.length===0)return;let N=document.activeElement,h=N===s.current,g=d.indexOf(N);if(o.key.length===1&&!o.ctrlKey&&!o.metaKey&&!o.altKey&&!h&&g!==-1){s.current?.focus();return}switch(o.key){case"ArrowDown":{o.preventDefault(),h||g===-1?d[0]?.focus():g<d.length-1&&d[g+1]?.focus();break}case"ArrowUp":{o.preventDefault(),g<=0?s.current?.focus():d[g-1]?.focus();break}case"Home":{h||(o.preventDefault(),d[0]?.focus());break}case"End":{h||(o.preventDefault(),d[d.length-1]?.focus());break}}},[]);return C?e.createElement("div",{...l,ref:m,className:u("rt-SidebarSearch","rt-SidebarSearch--thin",i)},e.createElement(z,null,e.createElement(H,null,e.createElement("button",{type:"button",className:u("rt-reset","rt-BaseMenuItem","rt-SidebarMenuButton","rt-SidebarSearchTrigger"),"aria-label":R},e.createElement("span",{className:"rt-SidebarMenuIconWrapper"},e.createElement(A,null)),e.createElement("span",{className:"rt-SidebarMenuLabel"},"Search"))),e.createElement(W,{side:"right",align:"start",size:"2",width:"280px","aria-label":R},e.createElement("div",{ref:c,className:"rt-SidebarSearchPopover",role:"search",onKeyDown:L},e.createElement("div",{className:"rt-SidebarSearchInputWrapper"},e.createElement(A,{className:"rt-SidebarSearchIcon"}),e.createElement("input",{ref:s,type:"search",className:"rt-SidebarSearchInput",value:r,onChange:o=>t(o.target.value),onKeyDown:B,placeholder:n,"aria-label":R,"aria-controls":a?v:void 0,autoFocus:!0}),r&&e.createElement("button",{type:"button",className:"rt-reset rt-SidebarSearchClear",onClick:()=>{t(""),s.current?.focus()},"aria-label":"Clear search"},e.createElement(q,null))),a&&e.createElement("div",{id:v,role:"group","aria-label":"Search results"},a))))):e.createElement("div",{...l,ref:m,className:u("rt-SidebarSearch","rt-SidebarSearch--expanded","rt-ShellPaneChrome",`rt-r-size-${M?.size??"2"}`,i),role:"search"},e.createElement("div",{className:"rt-SidebarSearchInputWrapper"},e.createElement(A,{className:"rt-SidebarSearchIcon"}),e.createElement("input",{ref:s,type:"search",className:"rt-SidebarSearchInput",value:r,onChange:o=>t(o.target.value),onKeyDown:B,placeholder:n,"aria-label":R}),r&&e.createElement("button",{type:"button",className:"rt-reset rt-SidebarSearchClear",onClick:()=>{t(""),s.current?.focus()},"aria-label":"Clear search"},e.createElement(q,null))))});te.displayName="Sidebar.Search";export{V as a,$ as b,X as c,J as d,Q as e,Y as f,Z as g,_ as h,ee as i,re as j,te as k,oe as l};
|
|
2
|
-
//# sourceMappingURL=chunk-UUV5UNYL.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/sidebar.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { Slot } from './slot.js';\nimport * as Accordion from '@radix-ui/react-accordion';\nimport * as DropdownMenu from './dropdown-menu.js';\nimport * as Popover from './popover.js';\n\nimport { Separator } from './separator.js';\nimport { ThickChevronRightIcon } from './icons.js';\nimport { Kbd } from './kbd.js';\nimport { Badge } from './badge.js';\nimport { useSidebarVisual } from './_internal/pane-chrome.js';\n\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { BadgeProps } from './badge.js';\n\n// Badge configuration type for sidebar menu buttons\ntype BadgeConfig = {\n content: React.ReactNode;\n variant?: BadgeProps['variant'];\n size?: BadgeProps['size'];\n color?: BadgeProps['color'];\n radius?: BadgeProps['radius'];\n};\n\n// Sidebar separator\ninterface SidebarSeparatorProps extends ComponentPropsWithout<typeof Separator, RemovedProps> {}\n\nconst SidebarSeparator = React.forwardRef<React.ComponentRef<typeof Separator>, SidebarSeparatorProps>(({ className, ...props }, forwardedRef) => (\n <Separator {...props} ref={forwardedRef} className={classNames('rt-SidebarSeparator', className)} />\n));\nSidebarSeparator.displayName = 'Sidebar.Separator';\n\n// Menu components - styled like dropdown menus, but semantically a navigation list.\n// No menu/menuitem roles: those promise an application menu, which a list of links is not.\ninterface SidebarMenuProps extends React.ComponentPropsWithoutRef<'ul'> {}\n\nconst SidebarMenu = React.forwardRef<HTMLUListElement, SidebarMenuProps>(({ className, ...props }, forwardedRef) => (\n <ul {...props} ref={forwardedRef} className={classNames('rt-SidebarMenu', className)} />\n));\nSidebarMenu.displayName = 'Sidebar.Menu';\n\ninterface SidebarMenuItemProps extends React.ComponentPropsWithoutRef<'li'> {}\n\nconst SidebarMenuItem = React.forwardRef<HTMLLIElement, SidebarMenuItemProps>(({ className, ...props }, forwardedRef) => (\n <li {...props} ref={forwardedRef} className={classNames('rt-SidebarMenuItem', className)} />\n));\nSidebarMenuItem.displayName = 'Sidebar.MenuItem';\n\ninterface SidebarMenuButtonProps extends React.ComponentPropsWithoutRef<'button'> {\n asChild?: boolean;\n isActive?: boolean;\n shortcut?: React.ReactNode;\n badge?: string | BadgeConfig;\n}\n\n// Extracted to module scope to avoid re-creation on every render\nfunction separateIconsAndLabels(node: React.ReactNode): { icons: React.ReactNode[]; labels: React.ReactNode[] } {\n const icons: React.ReactNode[] = [];\n const labels: React.ReactNode[] = [];\n\n React.Children.forEach(node, (child) => {\n if (typeof child === 'string' || typeof child === 'number') {\n labels.push(<span key={labels.length} className=\"rt-SidebarMenuLabel\">{child}</span>);\n } else if (React.isValidElement(child)) {\n const el = child as React.ReactElement<any>;\n if (el.type === 'svg' || (el.props && el.props.icon) || (typeof el.type === 'function' && ((el.type as any).displayName?.includes('Icon') || (el.type as any).name?.includes('Icon')))) {\n icons.push(child);\n } else {\n labels.push(child);\n }\n } else if (child) {\n labels.push(child);\n }\n });\n\n return { icons, labels };\n}\n\nfunction wrapTextNodes(node: React.ReactNode): React.ReactNode {\n if (typeof node === 'string' || typeof node === 'number') {\n return <span className=\"rt-SidebarMenuLabel\">{node}</span>;\n }\n if (Array.isArray(node)) {\n return node.map((child, index) => <React.Fragment key={index}>{wrapTextNodes(child)}</React.Fragment>);\n }\n if (React.isValidElement(node)) {\n const el = node as React.ReactElement<any>;\n const className: string = (el.props && (el.props as any).className) || '';\n const isAlreadyLabel = typeof el.type === 'string' && className.split(' ').includes('rt-SidebarMenuLabel');\n if (isAlreadyLabel) return el;\n const newChildren = wrapTextNodes((el.props as any)?.children);\n return React.cloneElement(el, { ...(el.props as any) }, newChildren);\n }\n return node;\n}\n\nconst SidebarMenuButton = React.forwardRef<HTMLButtonElement, SidebarMenuButtonProps>(\n ({ asChild = false, isActive = false, shortcut, badge, className, children, onKeyDown, ...props }, forwardedRef) => {\n const visual = useSidebarVisual();\n const sidebarSize = visual?.size ?? '2';\n const isThinMode = visual?.presentation === 'thin';\n\n const Comp = asChild ? Slot : 'button';\n\n // Enter and Space are left to the native button or link. Arrow keys move between\n // the visible buttons of the same sidebar, as a convenience on top of Tab.\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLButtonElement>) => {\n if (event.key === 'ArrowDown' || event.key === 'ArrowUp') {\n const scope = event.currentTarget.closest('.rt-SidebarContent, .rt-SidebarSearchPopover');\n const buttons = scope\n ? Array.from(scope.querySelectorAll<HTMLElement>('.rt-SidebarMenuButton')).filter((el) => el.offsetParent !== null)\n : [];\n const index = buttons.indexOf(event.currentTarget);\n const next = buttons[index + (event.key === 'ArrowDown' ? 1 : -1)];\n if (index !== -1 && next) {\n event.preventDefault();\n next.focus();\n }\n }\n onKeyDown?.(event);\n },\n [onKeyDown],\n );\n\n // Memoize child processing to avoid re-traversal on every render\n const processedChildren = React.useMemo(() => wrapTextNodes(children), [children]);\n\n // For thin mode, separate icons into a wrapper for targeted background styling\n const { icons, labels } = React.useMemo(\n () => isThinMode ? separateIconsAndLabels(children) : { icons: [] as React.ReactNode[], labels: [] as React.ReactNode[] },\n [isThinMode, children],\n );\n\n // When rendering asChild, Slot expects a single child element. We still want to\n // append optional badge/shortcut inside that element so they render with Link.\n const slottedChildren = React.useMemo(() => {\n if (!asChild) return null;\n try {\n const onlyChild = React.Children.only(processedChildren as React.ReactElement<any>) as React.ReactElement<any>;\n const originalInnerChildren = (onlyChild.props as any)?.children;\n const enhancedInnerChildren = (\n <>\n {originalInnerChildren}\n {badge && (\n <div className=\"rt-SidebarMenuBadge\">\n {typeof badge === 'string' ? (\n <Badge size={sidebarSize} variant=\"soft\">\n {badge}\n </Badge>\n ) : (\n <Badge size={badge.size || sidebarSize} variant={badge.variant || 'soft'} color={badge.color} radius={badge.radius}>\n {badge.content}\n </Badge>\n )}\n </div>\n )}\n {shortcut && (\n <div className=\"rt-BaseMenuShortcut rt-SidebarMenuShortcut\">\n <Kbd size={sidebarSize}>{shortcut}</Kbd>\n </div>\n )}\n </>\n );\n return React.cloneElement(onlyChild, { ...(onlyChild.props as any) }, enhancedInnerChildren);\n } catch {\n // Fallback: if multiple children were passed incorrectly, just return processedChildren\n return processedChildren as React.ReactNode;\n }\n }, [asChild, processedChildren, badge, shortcut, sidebarSize]);\n\n return (\n <Comp\n {...props}\n ref={forwardedRef}\n aria-current={isActive ? 'page' : undefined}\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-SidebarMenuButton', className)}\n data-active={isActive || undefined}\n onKeyDown={handleKeyDown}\n >\n {asChild ? (\n slottedChildren\n ) : isThinMode && icons.length > 0 ? (\n <>\n <span className=\"rt-SidebarMenuIconWrapper\">{icons}</span>\n {labels.map((label, index) => (\n <React.Fragment key={index}>\n {typeof label === 'string' || typeof label === 'number' ? (\n <span className=\"rt-SidebarMenuLabel\">{label}</span>\n ) : (\n label\n )}\n </React.Fragment>\n ))}\n </>\n ) : (\n <>\n {processedChildren}\n {badge && (\n <div className=\"rt-SidebarMenuBadge\">\n {typeof badge === 'string' ? (\n <Badge size={sidebarSize} variant=\"soft\">\n {badge}\n </Badge>\n ) : (\n <Badge size={badge.size || sidebarSize} variant={badge.variant || 'soft'} color={badge.color} radius={badge.radius}>\n {badge.content}\n </Badge>\n )}\n </div>\n )}\n {shortcut && (\n <div className=\"rt-BaseMenuShortcut rt-SidebarMenuShortcut\">\n <Kbd size={sidebarSize}>{shortcut}</Kbd>\n </div>\n )}\n </>\n )}\n </Comp>\n );\n },\n);\nSidebarMenuButton.displayName = 'Sidebar.MenuButton';\n\n// Sub-menu components: Accordion in expanded, Dropdown in thin\nconst SidebarSubMenuModeContext = React.createContext<'accordion' | 'dropdown'>('accordion');\ninterface SidebarMenuSubProps extends React.ComponentPropsWithoutRef<'div'> {\n defaultOpen?: boolean;\n}\n\nconst SidebarMenuSub = React.forwardRef<HTMLDivElement, SidebarMenuSubProps>(({ defaultOpen = false, children, ...props }, forwardedRef) => {\n const visual = useSidebarVisual();\n const mode: 'accordion' | 'dropdown' = visual?.presentation === 'thin' ? 'dropdown' : 'accordion';\n\n if (mode === 'dropdown') {\n return (\n <div {...props} ref={forwardedRef}>\n <DropdownMenu.Root>\n <SidebarSubMenuModeContext.Provider value=\"dropdown\">{children}</SidebarSubMenuModeContext.Provider>\n </DropdownMenu.Root>\n </div>\n );\n }\n\n return (\n <div {...props} ref={forwardedRef}>\n <SidebarSubMenuModeContext.Provider value=\"accordion\">\n <Accordion.Root type=\"single\" collapsible defaultValue={defaultOpen ? 'item' : undefined}>\n <Accordion.Item value=\"item\">{children}</Accordion.Item>\n </Accordion.Root>\n </SidebarSubMenuModeContext.Provider>\n </div>\n );\n});\nSidebarMenuSub.displayName = 'Sidebar.MenuSub';\n\ninterface SidebarMenuSubTriggerProps extends React.ComponentPropsWithoutRef<typeof Accordion.Trigger> {\n asChild?: boolean;\n}\n\nconst SidebarMenuSubTrigger = React.forwardRef<React.ElementRef<typeof Accordion.Trigger>, SidebarMenuSubTriggerProps>(\n ({ asChild = false, className, children, ...props }, forwardedRef) => {\n const mode = React.useContext(SidebarSubMenuModeContext);\n\n if (mode === 'dropdown') {\n return (\n <DropdownMenu.Trigger>\n <button\n {...(props as any)}\n ref={forwardedRef as any}\n type=\"button\"\n aria-haspopup=\"menu\"\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-SidebarMenuButton', 'rt-SidebarMenuSubTrigger', className)}\n >\n {children}\n </button>\n </DropdownMenu.Trigger>\n );\n }\n\n return (\n <Accordion.Header asChild>\n <div>\n <Accordion.Trigger\n {...props}\n ref={forwardedRef}\n asChild={asChild}\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-SidebarMenuButton', 'rt-SidebarMenuSubTrigger', className)}\n >\n {asChild ? (\n children\n ) : (\n <>\n {children}\n <ThickChevronRightIcon className={classNames('rt-BaseMenuSubTriggerIcon', 'rt-SidebarMenuSubTriggerIcon')} />\n </>\n )}\n </Accordion.Trigger>\n </div>\n </Accordion.Header>\n );\n },\n);\nSidebarMenuSubTrigger.displayName = 'Sidebar.MenuSubTrigger';\n\ninterface SidebarMenuSubContentProps extends React.ComponentPropsWithoutRef<typeof Accordion.Content> {}\n\nconst SidebarMenuSubContent = React.forwardRef<React.ElementRef<typeof Accordion.Content>, SidebarMenuSubContentProps>(({ className, children, ...props }, forwardedRef) => {\n const visual = useSidebarVisual();\n const mode = React.useContext(SidebarSubMenuModeContext);\n\n if (mode === 'dropdown') {\n const unwrapMenuButton = (node: React.ReactNode): React.ReactNode => {\n if (Array.isArray(node)) {\n return node.map((n, i) => <React.Fragment key={i}>{unwrapMenuButton(n)}</React.Fragment>);\n }\n if (React.isValidElement(node)) {\n const typeDisplay = (node.type as any)?.displayName;\n if (typeDisplay === 'Sidebar.MenuButton') {\n return (node.props as any)?.children;\n }\n const child = (node.props as any)?.children;\n if (child !== undefined) {\n return React.cloneElement(node as any, { ...(node.props as any), children: unwrapMenuButton(child) });\n }\n }\n return node;\n };\n\n const normalized = React.Children.map(children as React.ReactNode, (child, index) => {\n if (React.isValidElement(child) && (child.type as any)?.displayName === 'Sidebar.MenuItem') {\n const itemChildren = (child.props as any)?.children;\n const content = unwrapMenuButton(itemChildren);\n return (\n <DropdownMenu.Item key={index} asChild>\n {content as any}\n </DropdownMenu.Item>\n );\n }\n // Fallback: wrap raw nodes too for consistent menu styling\n return (\n <DropdownMenu.Item key={index} asChild>\n {unwrapMenuButton(child) as any}\n </DropdownMenu.Item>\n );\n });\n\n // DropdownMenu only supports sizes 1 and 2, so map size 3 to 2\n const dropdownSize = visual?.size === '3' ? '2' : visual?.size;\n return (\n <DropdownMenu.Content size={dropdownSize} className={classNames(className)}>\n <DropdownMenu.Group>{normalized}</DropdownMenu.Group>\n </DropdownMenu.Content>\n );\n }\n\n return (\n <Accordion.Content {...props} ref={forwardedRef} className={classNames('rt-SidebarMenuSubContent', className)}>\n <div className=\"rt-SidebarMenuSubList\">{children}</div>\n </Accordion.Content>\n );\n});\nSidebarMenuSubContent.displayName = 'Sidebar.MenuSubContent';\n\n// Group components. The label is plain text: no role, so it isn't announced as an empty group.\ninterface SidebarGroupProps extends React.ComponentPropsWithoutRef<'div'> {}\n\nconst SidebarGroup = React.forwardRef<HTMLDivElement, SidebarGroupProps>(({ className, ...props }, forwardedRef) => (\n <div {...props} ref={forwardedRef} className={classNames('rt-BaseMenuGroup', 'rt-SidebarGroup', className)} />\n));\nSidebarGroup.displayName = 'Sidebar.Group';\n\ninterface SidebarGroupLabelProps extends React.ComponentPropsWithoutRef<'div'> {\n asChild?: boolean;\n}\n\nconst SidebarGroupLabel = React.forwardRef<HTMLDivElement, SidebarGroupLabelProps>(({ asChild = false, className, ...props }, forwardedRef) => {\n const Comp = asChild ? Slot : 'div';\n\n return <Comp {...props} ref={forwardedRef} className={classNames('rt-BaseMenuLabel', 'rt-SidebarGroupLabel', className)} />;\n});\nSidebarGroupLabel.displayName = 'Sidebar.GroupLabel';\n\ninterface SidebarGroupContentProps extends React.ComponentPropsWithoutRef<'div'> {}\n\nconst SidebarGroupContent = React.forwardRef<HTMLDivElement, SidebarGroupContentProps>(({ className, ...props }, forwardedRef) => (\n <div {...props} ref={forwardedRef} className={classNames('rt-SidebarGroupContent', className)} />\n));\nSidebarGroupContent.displayName = 'Sidebar.GroupContent';\n\n// Search component: inline input in expanded, popover trigger in thin\ninterface SidebarSearchProps extends React.ComponentPropsWithoutRef<'div'> {\n value: string;\n onValueChange: (value: string) => void;\n placeholder?: string;\n children?: React.ReactNode;\n}\n\nconst SearchIcon = ({ className }: { className?: string }) => (\n <svg className={className} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" aria-hidden=\"true\">\n <circle cx=\"11\" cy=\"11\" r=\"8\" />\n <line x1=\"21\" y1=\"21\" x2=\"16.65\" y2=\"16.65\" />\n </svg>\n);\n\nconst ClearIcon = ({ className }: { className?: string }) => (\n <svg className={className} width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" aria-hidden=\"true\">\n <line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\" />\n <line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\" />\n </svg>\n);\n\nconst SidebarSearch = React.forwardRef<HTMLDivElement, SidebarSearchProps>(\n ({ value, onValueChange, placeholder = 'Search...', children, className, ...props }, forwardedRef) => {\n const visual = useSidebarVisual();\n const isThin = visual?.presentation === 'thin';\n const inputRef = React.useRef<HTMLInputElement>(null);\n const popoverRef = React.useRef<HTMLDivElement>(null);\n const searchId = React.useId();\n const resultsId = `${searchId}-results`;\n\n // Stable refs for values used in callbacks \u2014 avoids recreating handlers on every keystroke\n const valueRef = React.useRef(value);\n valueRef.current = value;\n const onValueChangeRef = React.useRef(onValueChange);\n onValueChangeRef.current = onValueChange;\n\n // Derive a clean aria-label from placeholder (strip trailing dots/ellipsis)\n const searchLabel = placeholder.replace(/\\.+$/, '');\n\n const handleKeyDown = React.useCallback(\n (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Escape' && valueRef.current) {\n e.preventDefault();\n e.stopPropagation();\n onValueChangeRef.current('');\n inputRef.current?.focus();\n }\n },\n [],\n );\n\n // Arrow key navigation within the popover (input \u2194 results)\n const handlePopoverKeyDown = React.useCallback(\n (e: React.KeyboardEvent<HTMLDivElement>) => {\n const container = popoverRef.current;\n if (!container) return;\n\n const resultsGroup = container.querySelector('[role=\"group\"]');\n if (!resultsGroup) return;\n\n const items = Array.from(\n resultsGroup.querySelectorAll<HTMLElement>('a, button'),\n );\n if (items.length === 0) return;\n\n const active = document.activeElement as HTMLElement;\n const isOnInput = active === inputRef.current;\n const currentIndex = items.indexOf(active);\n\n // Typing while a result is focused \u2192 redirect focus to input\n if (\n e.key.length === 1 &&\n !e.ctrlKey &&\n !e.metaKey &&\n !e.altKey &&\n !isOnInput &&\n currentIndex !== -1\n ) {\n inputRef.current?.focus();\n return;\n }\n\n switch (e.key) {\n case 'ArrowDown': {\n e.preventDefault();\n if (isOnInput || currentIndex === -1) {\n items[0]?.focus();\n } else if (currentIndex < items.length - 1) {\n items[currentIndex + 1]?.focus();\n }\n break;\n }\n case 'ArrowUp': {\n e.preventDefault();\n if (currentIndex <= 0) {\n inputRef.current?.focus();\n } else {\n items[currentIndex - 1]?.focus();\n }\n break;\n }\n case 'Home': {\n // Only intercept when focused on a result, not the input (where Home moves cursor)\n if (!isOnInput) {\n e.preventDefault();\n items[0]?.focus();\n }\n break;\n }\n case 'End': {\n if (!isOnInput) {\n e.preventDefault();\n items[items.length - 1]?.focus();\n }\n break;\n }\n }\n },\n [],\n );\n\n if (isThin) {\n return (\n <div {...props} ref={forwardedRef} className={classNames('rt-SidebarSearch', 'rt-SidebarSearch--thin', className)}>\n <Popover.Root>\n <Popover.Trigger>\n <button\n type=\"button\"\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-SidebarMenuButton', 'rt-SidebarSearchTrigger')}\n aria-label={searchLabel}\n >\n <span className=\"rt-SidebarMenuIconWrapper\">\n <SearchIcon />\n </span>\n <span className=\"rt-SidebarMenuLabel\">Search</span>\n </button>\n </Popover.Trigger>\n <Popover.Content side=\"right\" align=\"start\" size=\"2\" width=\"280px\" aria-label={searchLabel}>\n {/* eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions -- keyDown manages arrow-key navigation between input and results, which is accessibility-enhancing */}\n <div\n ref={popoverRef}\n className=\"rt-SidebarSearchPopover\"\n role=\"search\"\n onKeyDown={handlePopoverKeyDown}\n >\n <div className=\"rt-SidebarSearchInputWrapper\">\n <SearchIcon className=\"rt-SidebarSearchIcon\" />\n <input\n ref={inputRef}\n type=\"search\"\n className=\"rt-SidebarSearchInput\"\n value={value}\n onChange={(e) => onValueChange(e.target.value)}\n onKeyDown={handleKeyDown}\n placeholder={placeholder}\n aria-label={searchLabel}\n aria-controls={children ? resultsId : undefined}\n // eslint-disable-next-line jsx-a11y/no-autofocus -- intentional: popover opens on user action, focusing the input is expected UX\n autoFocus\n />\n {value && (\n <button\n type=\"button\"\n className=\"rt-reset rt-SidebarSearchClear\"\n onClick={() => {\n onValueChange('');\n inputRef.current?.focus();\n }}\n aria-label=\"Clear search\"\n >\n <ClearIcon />\n </button>\n )}\n </div>\n {children && (\n <div id={resultsId} role=\"group\" aria-label=\"Search results\">\n {children}\n </div>\n )}\n </div>\n </Popover.Content>\n </Popover.Root>\n </div>\n );\n }\n\n // Expanded mode: inline input\n return (\n <div {...props} ref={forwardedRef} className={classNames('rt-SidebarSearch', 'rt-SidebarSearch--expanded', 'rt-ShellPaneChrome', `rt-r-size-${visual?.size ?? '2'}`, className)} role=\"search\">\n <div className=\"rt-SidebarSearchInputWrapper\">\n <SearchIcon className=\"rt-SidebarSearchIcon\" />\n <input\n ref={inputRef}\n type=\"search\"\n className=\"rt-SidebarSearchInput\"\n value={value}\n onChange={(e) => onValueChange(e.target.value)}\n onKeyDown={handleKeyDown}\n placeholder={placeholder}\n aria-label={searchLabel}\n />\n {value && (\n <button\n type=\"button\"\n className=\"rt-reset rt-SidebarSearchClear\"\n onClick={() => {\n onValueChange('');\n inputRef.current?.focus();\n }}\n aria-label=\"Clear search\"\n >\n <ClearIcon />\n </button>\n )}\n </div>\n </div>\n );\n },\n);\nSidebarSearch.displayName = 'Sidebar.Search';\n\n// Export all components following shadcn's pattern\nexport {\n SidebarSeparator as Separator,\n SidebarMenu as Menu,\n SidebarMenuItem as MenuItem,\n SidebarMenuButton as MenuButton,\n SidebarMenuSub as MenuSub,\n SidebarMenuSubTrigger as MenuSubTrigger,\n SidebarMenuSubContent as MenuSubContent,\n SidebarGroup as Group,\n SidebarGroupLabel as GroupLabel,\n SidebarGroupContent as GroupContent,\n SidebarSearch as Search,\n};\n\nexport type { BadgeConfig };\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["sidebar_exports", "__export", "SidebarGroup", "SidebarGroupContent", "SidebarGroupLabel", "SidebarMenu", "SidebarMenuButton", "SidebarMenuItem", "SidebarMenuSub", "SidebarMenuSubContent", "SidebarMenuSubTrigger", "SidebarSearch", "SidebarSeparator", "React", "classNames", "Accordion", "SidebarSeparator", "className", "props", "forwardedRef", "Separator", "classNames", "SidebarMenu", "SidebarMenuItem", "separateIconsAndLabels", "node", "icons", "labels", "child", "el", "wrapTextNodes", "index", "newChildren", "SidebarMenuButton", "asChild", "isActive", "shortcut", "badge", "children", "onKeyDown", "visual", "useSidebarVisual", "sidebarSize", "isThinMode", "Comp", "Slot", "handleKeyDown", "event", "scope", "buttons", "next", "processedChildren", "slottedChildren", "onlyChild", "originalInnerChildren", "enhancedInnerChildren", "Badge", "Kbd", "label", "SidebarSubMenuModeContext", "SidebarMenuSub", "defaultOpen", "DropdownMenuRoot", "SidebarMenuSubTrigger", "DropdownMenuTrigger", "ThickChevronRightIcon", "SidebarMenuSubContent", "unwrapMenuButton", "n", "i", "normalized", "itemChildren", "content", "DropdownMenuItem", "dropdownSize", "DropdownMenuContent", "DropdownMenuGroup", "SidebarGroup", "SidebarGroupLabel", "SidebarGroupContent", "SearchIcon", "ClearIcon", "SidebarSearch", "value", "onValueChange", "placeholder", "isThin", "inputRef", "popoverRef", "resultsId", "valueRef", "onValueChangeRef", "searchLabel", "e", "handlePopoverKeyDown", "container", "resultsGroup", "items", "active", "isOnInput", "currentIndex", "PopoverRoot", "PopoverTrigger", "PopoverContent"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as S}from"./chunk-T5DSQKKF.js";import{e as N}from"./chunk-3YLYGKFB.js";import{a as x}from"./chunk-6FLLFCBU.js";import{a as C}from"./chunk-2FPJ6Q2N.js";import*as t from"react";import L from"classnames";import{Slider as b}from"radix-ui";var W=t.forwardRef((A,V)=>{let v=N(A,S.size),{className:k,color:M,radius:w,tabIndex:y,...i}=x(v,S,C),{ticks:o,showTickLabels:D,snapToTicks:d,unit:l}=v,u=i.min??0,s=i.max??100,m=i.value??i.defaultValue??[u],R=Array.isArray(m)&&m.length>1,E=i.step,n=t.useMemo(()=>o?[...o].sort((e,r)=>e.value-r.value):[],[o]),T=t.useCallback(e=>{if(!d||!n.length)return e;let r=0,a=n.length-1;if(e<=n[r].value)return n[r].value;if(e>=n[a].value)return n[a].value;for(;r<=a;){let f=Math.floor((r+a)/2);if(n[f].value===e)return e;n[f].value<e?r=f+1:a=f-1}let j=Math.abs(e-n[a].value),G=Math.abs(e-n[r].value);return j<=G?n[a].value:n[r].value},[d,n]),h=t.useCallback(e=>{let r=a=>l?`${a} ${l}`:a.toString();return e.length===1?`${r(e[0])} out of ${r(s)}`:e.length===2?`${r(e[0])} to ${r(e[1])} out of ${r(s)}`:`${e.map(r).join(", ")} out of ${r(s)}`},[l,s]),$=t.useMemo(()=>o?o.map((e,r)=>({...e,percentage:(e.value-u)/(s-u)*100,index:r})):null,[o,u,s]),c=t.useRef(null),p=t.useRef(null),{onValueChange:g}=i,P=t.useCallback(e=>{let r=d&&o?e.map(a=>T(a)):e;if(c.current){let a=h(r);c.current.textContent=a,p.current&&clearTimeout(p.current),p.current=setTimeout(()=>{c.current&&(c.current.textContent="")},1e3)}g?.(r)},[d,o,T,h,g]);return t.useEffect(()=>()=>{p.current&&clearTimeout(p.current)},[]),t.createElement("div",{className:"rt-SliderContainer"},t.createElement("div",{ref:c,"aria-live":"polite","aria-atomic":"true",className:"sr-only",style:{position:"absolute",left:"-10000px",width:"1px",height:"1px",overflow:"hidden"}}),t.createElement(b.Root,{"data-accent-color":M,"data-radius":w,ref:V,...i,step:E,onValueChange:P,asChild:!1,className:L("rt-SliderRoot",k),"aria-valuemin":u,"aria-valuemax":s,"aria-valuenow":Array.isArray(m)?m[0]:m,"aria-valuetext":h(m),"aria-label":v["aria-label"]||`${R?"Range":"Value"} slider`},t.createElement(b.Track,{className:"rt-SliderTrack"},t.createElement(b.Range,{className:"rt-SliderRange","data-inverted":i.inverted?"":void 0})),(i.value??i.defaultValue??[]).map((e,r)=>t.createElement(b.Thumb,{key:r,className:"rt-SliderThumb",...y!==void 0?{tabIndex:y}:void 0,"aria-label":R?`${r===0?"Minimum":r===1?"Maximum":`Thumb ${r+1}`} value: ${l?`${e} ${l}`:e}`:`Slider value: ${l?`${e} ${l}`:e}`,"aria-valuetext":l?`${e} ${l}`:e.toString()}))),$&&t.createElement("div",{className:"rt-SliderTicks",role:"group","aria-label":"Slider tick marks"},$.map(e=>t.createElement("button",{key:e.index,className:"rt-SliderTick",style:{left:`${e.percentage}%`,transform:"translateX(-50%)"},onClick:()=>{let r=i.value??i.defaultValue??[u],a=Array.isArray(r)?r.map(()=>e.value):[e.value];P(a)},"aria-label":`Set to ${e.label||(l?`${e.value} ${l}`:e.value)}`,"aria-describedby":e.label?void 0:`tick-${e.index}-value`,type:"button"},t.createElement("div",{className:"rt-SliderTickMark"}),e.label&&D!==!1&&t.createElement("div",{className:"rt-SliderTickLabel"},e.label),!e.label&&t.createElement("span",{id:`tick-${e.index}-value`,className:"sr-only"},l?`${e.value} ${l}`:e.value)))))});W.displayName="Slider";export{W as a};
|
|
2
|
-
//# sourceMappingURL=chunk-UUWGAQDT.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/slider.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { Slider as SliderPrimitive } from 'radix-ui';\n\nimport { sliderPropDefs } from './slider.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { useThemeSizeProps } from '../helpers/theme-size.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype SliderElement = React.ElementRef<typeof SliderPrimitive.Root>;\ntype SliderOwnProps = GetPropDefTypes<typeof sliderPropDefs>;\ninterface SliderProps\n extends ComponentPropsWithout<\n typeof SliderPrimitive.Root,\n 'asChild' | 'color' | 'children' | 'defaultChecked'\n >,\n MarginProps,\n SliderOwnProps {\n ticks?: Array<{ value: number; label?: string }>;\n unit?: string;\n}\nconst Slider = React.forwardRef<SliderElement, SliderProps>((ownProps, forwardedRef) => {\n const props = useThemeSizeProps(ownProps, sliderPropDefs.size);\n const { className, color, radius, tabIndex, ...sliderProps } = extractProps(\n props,\n sliderPropDefs,\n marginPropDefs,\n );\n const { ticks, showTickLabels, snapToTicks, unit } = props;\n\n const min = sliderProps.min ?? 0;\n const max = sliderProps.max ?? 100;\n\n // Current value for accessibility\n const currentValue = sliderProps.value ?? sliderProps.defaultValue ?? [min];\n const isRange = Array.isArray(currentValue) && currentValue.length > 1;\n\n // For snapping to ticks, we need to handle this differently\n // Radix slider doesn't support arbitrary step values, so we'll handle snapping in the onValueChange\n const step = sliderProps.step;\n\n // Optimized snap-to-ticks with memoized sorted ticks\n const sortedTicks = React.useMemo(\n () => (ticks ? [...ticks].sort((a, b) => a.value - b.value) : []),\n [ticks],\n );\n\n // Function to snap value to nearest tick (optimized)\n const snapToNearestTick = React.useCallback(\n (value: number): number => {\n if (!snapToTicks || !sortedTicks.length) return value;\n\n // Binary search for closest tick\n let left = 0;\n let right = sortedTicks.length - 1;\n\n if (value <= sortedTicks[left].value) return sortedTicks[left].value;\n if (value >= sortedTicks[right].value) return sortedTicks[right].value;\n\n while (left <= right) {\n const mid = Math.floor((left + right) / 2);\n if (sortedTicks[mid].value === value) return value;\n\n if (sortedTicks[mid].value < value) {\n left = mid + 1;\n } else {\n right = mid - 1;\n }\n }\n\n // Find closest between left and right\n const leftDistance = Math.abs(value - sortedTicks[right].value);\n const rightDistance = Math.abs(value - sortedTicks[left].value);\n\n return leftDistance <= rightDistance ? sortedTicks[right].value : sortedTicks[left].value;\n },\n [snapToTicks, sortedTicks],\n );\n\n // Format value text for accessibility\n const formatValueText = React.useCallback(\n (values: number[]): string => {\n const formatValue = (val: number) => (unit ? `${val} ${unit}` : val.toString());\n\n if (values.length === 1) {\n return `${formatValue(values[0])} out of ${formatValue(max)}`;\n } else if (values.length === 2) {\n return `${formatValue(values[0])} to ${formatValue(values[1])} out of ${formatValue(max)}`;\n } else {\n return `${values.map(formatValue).join(', ')} out of ${formatValue(max)}`;\n }\n },\n [unit, max],\n );\n\n // Memoize tick elements for performance\n const tickElements = React.useMemo(() => {\n if (!ticks) return null;\n\n return ticks.map((tick, index) => ({\n ...tick,\n percentage: ((tick.value - min) / (max - min)) * 100,\n index,\n }));\n }, [ticks, min, max]);\n\n // Live region ref for accessibility announcements (no state = no re-renders)\n const announceRef = React.useRef<HTMLDivElement>(null);\n const announceTimeoutRef = React.useRef<ReturnType<typeof setTimeout> | null>(null);\n\n const { onValueChange } = sliderProps;\n // Handle value changes with snapping\n const handleValueChange = React.useCallback(\n (newValue: number[]) => {\n const finalValue =\n snapToTicks && ticks ? newValue.map((v) => snapToNearestTick(v)) : newValue;\n\n // Update live region for screen readers (direct DOM update, no React state)\n if (announceRef.current) {\n const valueText = formatValueText(finalValue);\n announceRef.current.textContent = valueText;\n\n // Clear after delay to prevent spam\n if (announceTimeoutRef.current) {\n clearTimeout(announceTimeoutRef.current);\n }\n announceTimeoutRef.current = setTimeout(() => {\n if (announceRef.current) {\n announceRef.current.textContent = '';\n }\n }, 1000);\n }\n\n onValueChange?.(finalValue);\n },\n [snapToTicks, ticks, snapToNearestTick, formatValueText, onValueChange],\n );\n\n // Cleanup timeout on unmount\n React.useEffect(() => {\n return () => {\n if (announceTimeoutRef.current) {\n clearTimeout(announceTimeoutRef.current);\n }\n };\n }, []);\n\n return (\n <div className=\"rt-SliderContainer\">\n {/* Live region for screen reader announcements */}\n <div\n ref={announceRef}\n aria-live=\"polite\"\n aria-atomic=\"true\"\n className=\"sr-only\"\n style={{\n position: 'absolute',\n left: '-10000px',\n width: '1px',\n height: '1px',\n overflow: 'hidden',\n }}\n />\n\n <SliderPrimitive.Root\n data-accent-color={color}\n data-radius={radius}\n ref={forwardedRef}\n {...sliderProps}\n step={step}\n onValueChange={handleValueChange}\n asChild={false}\n className={classNames('rt-SliderRoot', className)}\n // Essential ARIA attributes for WCAG 2.2 AA compliance\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={Array.isArray(currentValue) ? currentValue[0] : (currentValue as number)}\n aria-valuetext={formatValueText(currentValue as number[])}\n aria-label={props['aria-label'] || `${isRange ? 'Range' : 'Value'} slider`}\n >\n <SliderPrimitive.Track className=\"rt-SliderTrack\">\n <SliderPrimitive.Range\n className=\"rt-SliderRange\"\n data-inverted={sliderProps.inverted ? '' : undefined}\n />\n </SliderPrimitive.Track>\n {(sliderProps.value ?? sliderProps.defaultValue ?? []).map((value, index) => (\n <SliderPrimitive.Thumb\n key={index}\n className=\"rt-SliderThumb\"\n {...(tabIndex !== undefined ? { tabIndex } : undefined)}\n aria-label={\n isRange\n ? `${index === 0 ? 'Minimum' : index === 1 ? 'Maximum' : `Thumb ${index + 1}`} value: ${unit ? `${value} ${unit}` : value}`\n : `Slider value: ${unit ? `${value} ${unit}` : value}`\n }\n aria-valuetext={unit ? `${value} ${unit}` : value.toString()}\n />\n ))}\n </SliderPrimitive.Root>\n {tickElements && (\n <div className=\"rt-SliderTicks\" role=\"group\" aria-label=\"Slider tick marks\">\n {tickElements.map((tick) => {\n return (\n <button\n key={tick.index}\n className=\"rt-SliderTick\"\n style={{\n left: `${tick.percentage}%`,\n transform: 'translateX(-50%)',\n }}\n onClick={() => {\n const currentValues = sliderProps.value ?? sliderProps.defaultValue ?? [min];\n const newValue = Array.isArray(currentValues)\n ? currentValues.map(() => tick.value)\n : [tick.value];\n\n handleValueChange(newValue);\n }}\n aria-label={`Set to ${tick.label || (unit ? `${tick.value} ${unit}` : tick.value)}`}\n aria-describedby={tick.label ? undefined : `tick-${tick.index}-value`}\n type=\"button\"\n >\n <div className=\"rt-SliderTickMark\" />\n {tick.label && showTickLabels !== false && (\n <div className=\"rt-SliderTickLabel\">{tick.label}</div>\n )}\n {!tick.label && (\n <span id={`tick-${tick.index}-value`} className=\"sr-only\">\n {unit ? `${tick.value} ${unit}` : tick.value}\n </span>\n )}\n </button>\n );\n })}\n </div>\n )}\n </div>\n );\n});\nSlider.displayName = 'Slider';\n\nexport { Slider };\nexport type { SliderProps };\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["React", "classNames", "SliderPrimitive", "Slider", "ownProps", "forwardedRef", "props", "useThemeSizeProps", "sliderPropDefs", "className", "color", "radius", "tabIndex", "sliderProps", "extractProps", "marginPropDefs", "ticks", "showTickLabels", "snapToTicks", "unit", "min", "max", "currentValue", "isRange", "step", "sortedTicks", "a", "b", "snapToNearestTick", "value", "left", "right", "mid", "leftDistance", "rightDistance", "formatValueText", "values", "formatValue", "val", "tickElements", "tick", "index", "announceRef", "announceTimeoutRef", "onValueChange", "handleValueChange", "newValue", "finalValue", "v", "valueText", "SliderPrimitive", "classNames", "currentValues"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as p}from"./chunk-54KMG7NX.js";import{a as s}from"./chunk-6FLLFCBU.js";import{a as t}from"./chunk-2FPJ6Q2N.js";import{a as e}from"./chunk-E23RKOQJ.js";import*as o from"react";import l from"classnames";import{Progress as m}from"radix-ui";var c=o.forwardRef((i,a)=>{let{className:n,style:P,color:f,radius:g,duration:d,...r}=s(i,p,t);return o.createElement(m.Root,{"data-accent-color":f,"data-radius":g,ref:a,className:l("rt-ProgressRoot",n),style:e({"--progress-duration":"value"in r?void 0:d,"--progress-value":"value"in r?r.value:void 0,"--progress-max":"max"in r?r.max:void 0},P),...r,asChild:!1},o.createElement(m.Indicator,{className:"rt-ProgressIndicator"}))});c.displayName="Progress";export{c as a};
|
|
2
|
-
//# sourceMappingURL=chunk-VLQ2LX5M.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/progress.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { Progress as ProgressPrimitive } from 'radix-ui';\n\nimport { progressPropDefs } from './progress.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { mergeStyles } from '../helpers/merge-styles.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype ProgressElement = React.ElementRef<typeof ProgressPrimitive.Root>;\ntype ProgressOwnProps = GetPropDefTypes<typeof progressPropDefs>;\ninterface ProgressProps\n extends ComponentPropsWithout<typeof ProgressPrimitive.Root, RemovedProps | 'children'>,\n MarginProps,\n ProgressOwnProps {\n duration?: `${number}s` | `${number}ms`;\n}\nconst Progress = React.forwardRef<ProgressElement, ProgressProps>((props, forwardedRef) => {\n const { className, style, color, radius, duration, ...progressProps } = extractProps(\n props,\n progressPropDefs,\n marginPropDefs\n );\n\n return (\n <ProgressPrimitive.Root\n data-accent-color={color}\n data-radius={radius}\n ref={forwardedRef}\n className={classNames('rt-ProgressRoot', className)}\n style={mergeStyles(\n {\n '--progress-duration': 'value' in progressProps ? undefined : duration,\n '--progress-value': 'value' in progressProps ? progressProps.value : undefined,\n '--progress-max': 'max' in progressProps ? progressProps.max : undefined,\n },\n style\n )}\n {...progressProps}\n asChild={false}\n >\n <ProgressPrimitive.Indicator className=\"rt-ProgressIndicator\" />\n </ProgressPrimitive.Root>\n );\n});\nProgress.displayName = 'Progress';\n\nexport { Progress };\nexport type { ProgressProps };\n"],
|
|
5
|
-
"mappings": "gKAAA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,YAAYC,MAAyB,WAmB9C,IAAMC,EAAiB,aAA2C,CAACC,EAAOC,IAAiB,CACzF,GAAM,CAAE,UAAAC,EAAW,MAAAC,EAAO,MAAAC,EAAO,OAAAC,EAAQ,SAAAC,EAAU,GAAGC,CAAc,EAAIC,EACtER,EACAS,EACAC,CACF,EAEA,OACE,gBAACC,EAAkB,KAAlB,CACC,oBAAmBP,EACnB,cAAaC,EACb,IAAKJ,EACL,UAAWW,EAAW,kBAAmBV,CAAS,EAClD,MAAOW,EACL,CACE,sBAAuB,UAAWN,EAAgB,OAAYD,EAC9D,mBAAoB,UAAWC,EAAgBA,EAAc,MAAQ,OACrE,iBAAkB,QAASA,EAAgBA,EAAc,IAAM,MACjE,EACAJ,CACF,EACC,GAAGI,EACJ,QAAS,IAET,gBAACI,EAAkB,UAAlB,CAA4B,UAAU,uBAAuB,CAChE,CAEJ,CAAC,EACDZ,EAAS,YAAc",
|
|
6
|
-
"names": ["React", "classNames", "ProgressPrimitive", "Progress", "props", "forwardedRef", "className", "style", "color", "radius", "duration", "progressProps", "extractProps", "progressPropDefs", "marginPropDefs", "ProgressPrimitive", "classNames", "mergeStyles"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as i,b as a}from"./chunk-IX5HIHVI.js";import{e as s}from"./chunk-3YLYGKFB.js";import{a as o}from"./chunk-STMTXK7U.js";import{a as c}from"./chunk-6FLLFCBU.js";import{a as p}from"./chunk-2FPJ6Q2N.js";import*as e from"react";import b from"classnames";import{Checkbox as h}from"radix-ui";import{useControllableState as u}from"radix-ui/internal";var y=e.forwardRef((m,n)=>{let k=s(m,o.size),{className:C,color:f,checked:d,defaultChecked:r,onCheckedChange:l,...x}=c(k,o,p),[t,P]=u({prop:d,defaultProp:r??!1,onChange:l});return e.createElement(h.Root,{"data-accent-color":f,...x,defaultChecked:r,checked:t,onCheckedChange:P,asChild:!1,ref:n,className:b("rt-reset","rt-BaseCheckboxRoot","rt-CheckboxRoot",C)},e.createElement(h.Indicator,{asChild:!0,className:"rt-BaseCheckboxIndicator rt-CheckboxIndicator"},t==="indeterminate"?e.createElement(i,null):e.createElement(a,null)))});y.displayName="Checkbox";export{y as a};
|
|
2
|
-
//# sourceMappingURL=chunk-VTTJFBV6.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/checkbox.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { Checkbox as CheckboxPrimitive } from 'radix-ui';\nimport { useControllableState } from 'radix-ui/internal';\n\nimport { checkboxPropDefs } from './checkbox.props.js';\nimport { ThickCheckIcon, ThickDividerHorizontalIcon } from './icons.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { useThemeSizeProps } from '../helpers/theme-size.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype CheckboxElement = React.ElementRef<typeof CheckboxPrimitive.Root>;\ntype CheckboxOwnProps = GetPropDefTypes<typeof checkboxPropDefs>;\ninterface CheckboxProps\n extends ComponentPropsWithout<\n typeof CheckboxPrimitive.Root,\n 'asChild' | 'color' | 'defaultValue' | 'children'\n >,\n MarginProps,\n CheckboxOwnProps {}\nconst Checkbox = React.forwardRef<CheckboxElement, CheckboxProps>((ownProps, forwardedRef) => {\n const props = useThemeSizeProps(ownProps, checkboxPropDefs.size);\n const {\n className,\n color,\n checked: checkedProp,\n defaultChecked: defaultCheckedProp,\n onCheckedChange,\n ...checkboxProps\n } = extractProps(props, checkboxPropDefs, marginPropDefs);\n\n const [checked, setChecked] = useControllableState({\n prop: checkedProp,\n defaultProp: defaultCheckedProp ?? false,\n onChange: onCheckedChange,\n });\n\n return (\n <CheckboxPrimitive.Root\n data-accent-color={color}\n {...checkboxProps}\n defaultChecked={defaultCheckedProp}\n checked={checked}\n onCheckedChange={setChecked}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-BaseCheckboxRoot', 'rt-CheckboxRoot', className)}\n >\n <CheckboxPrimitive.Indicator\n asChild\n className=\"rt-BaseCheckboxIndicator rt-CheckboxIndicator\"\n >\n {checked === 'indeterminate' ? <ThickDividerHorizontalIcon /> : <ThickCheckIcon />}\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n );\n});\nCheckbox.displayName = 'Checkbox';\n\nexport { Checkbox };\nexport type { CheckboxProps };\n"],
|
|
5
|
-
"mappings": "+MAEA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,YAAYC,MAAyB,WAC9C,OAAS,wBAAAC,MAA4B,oBAqBrC,IAAMC,EAAiB,aAA2C,CAACC,EAAUC,IAAiB,CAC5F,IAAMC,EAAQC,EAAkBH,EAAUI,EAAiB,IAAI,EACzD,CACJ,UAAAC,EACA,MAAAC,EACA,QAASC,EACT,eAAgBC,EAChB,gBAAAC,EACA,GAAGC,CACL,EAAIC,EAAaT,EAAOE,EAAkBQ,CAAc,EAElD,CAACC,EAASC,CAAU,EAAIC,EAAqB,CACjD,KAAMR,EACN,YAAaC,GAAsB,GACnC,SAAUC,CACZ,CAAC,EAED,OACE,gBAACO,EAAkB,KAAlB,CACC,oBAAmBV,EAClB,GAAGI,EACJ,eAAgBF,EAChB,QAASK,EACT,gBAAiBC,EACjB,QAAS,GACT,IAAKb,EACL,UAAWgB,EAAW,WAAY,sBAAuB,kBAAmBZ,CAAS,GAErF,gBAACW,EAAkB,UAAlB,CACC,QAAO,GACP,UAAU,iDAETH,IAAY,gBAAkB,gBAACK,EAAA,IAA2B,EAAK,gBAACC,EAAA,IAAe,CAClF,CACF,CAEJ,CAAC,EACDpB,EAAS,YAAc",
|
|
6
|
-
"names": ["React", "classNames", "CheckboxPrimitive", "useControllableState", "Checkbox", "ownProps", "forwardedRef", "props", "useThemeSizeProps", "baseCheckboxPropDefs", "className", "color", "checkedProp", "defaultCheckedProp", "onCheckedChange", "checkboxProps", "extractProps", "marginPropDefs", "checked", "setChecked", "useControllableState", "CheckboxPrimitive", "classNames", "ThickDividerHorizontalIcon", "ThickCheckIcon"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/hooks/use-prop-synced-state.ts"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\n\n/**\n * State that tracks a prop but can also be set imperatively \u2014 the shape `Theme`\n * needs, where a prop sets the value and `ThemePanel` can change it at runtime.\n *\n * Adjusts state during render rather than syncing in a `useEffect`. An effect\n * would commit one render carrying the *old* value and schedule a second one,\n * which for a provider means every consumer renders twice and the browser can\n * paint the stale value in between.\n *\n * @see https://react.dev/reference/react/useState#storing-information-from-previous-renders\n */\nexport function usePropSyncedState<T>(propValue: T) {\n const [value, setValue] = React.useState(propValue);\n const [previousPropValue, setPreviousPropValue] = React.useState(propValue);\n\n if (!Object.is(propValue, previousPropValue)) {\n setPreviousPropValue(propValue);\n setValue(propValue);\n }\n\n return [value, setValue] as const;\n}\n"],
|
|
5
|
-
"mappings": "AAAA,UAAYA,MAAW,QAahB,SAASC,EAAsBC,EAAc,CAClD,GAAM,CAACC,EAAOC,CAAQ,EAAU,WAASF,CAAS,EAC5C,CAACG,EAAmBC,CAAoB,EAAU,WAASJ,CAAS,EAE1E,OAAK,OAAO,GAAGA,EAAWG,CAAiB,IACzCC,EAAqBJ,CAAS,EAC9BE,EAASF,CAAS,GAGb,CAACC,EAAOC,CAAQ,CACzB",
|
|
6
|
-
"names": ["React", "usePropSyncedState", "propValue", "value", "setValue", "previousPropValue", "setPreviousPropValue"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as R}from"./chunk-ZCAI2PRH.js";import{a as P}from"./chunk-BUBV3C6C.js";import{d as f}from"./chunk-3YLYGKFB.js";import{a as u}from"./chunk-6FLLFCBU.js";import{a as n}from"./chunk-2FPJ6Q2N.js";import{a as v}from"./chunk-OS3FCYZY.js";var z={};v(z,{Item:()=>C,Root:()=>x});import*as o from"react";import G from"classnames";import{Context as h}from"radix-ui/internal";import{RadioGroup as d}from"radix-ui";var l="RadioGroup",[E]=h.createContextScope(l,[d.createRadioGroupScope]),I=d.createRadioGroupScope(),[_,y]=E(l),x=o.forwardRef(({color:a=R.color.default,size:e,variant:r=R.variant.default,...t},i)=>{let s=f(e,R.size),{__scopeRadioGroup:p,className:m,...N}=u(t,n),S=I(p);return o.createElement(_,{scope:p,color:a,size:s,variant:r},o.createElement(d.Root,{...S,...N,ref:i,className:G("rt-RadioGroupRoot",m)}))});x.displayName="RadioGroup.Root";var C=o.forwardRef((a,e)=>{let{__scopeRadioGroup:r,children:t,className:i,style:s,...p}=a,{size:m}=y("RadioGroupItem",r);return t?o.createElement(P,{as:"label",size:m,className:G("rt-RadioGroupItem",i),style:s},o.createElement(c,{__scopeRadioGroup:r,...p,ref:e}),t&&o.createElement("span",{className:"rt-RadioGroupItemInner"},t)):o.createElement(c,{__scopeRadioGroup:r,...p,ref:e,className:i,style:s})});C.displayName="RadioGroup.Item";var c=o.forwardRef(({__scopeRadioGroup:a,...e},r)=>{let t=y("RadioGroupItemRadio",a),i=I(a),{color:s,className:p}=u({...e,...t},R,n);return o.createElement(d.Item,{...i,"data-accent-color":s,...e,asChild:!1,ref:r,className:G("rt-reset","rt-BaseRadioRoot",p)})});c.displayName="RadioGroup.ItemRadio";export{x as a,C as b,z as c};
|
|
2
|
-
//# sourceMappingURL=chunk-X3D3JR64.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/radio-group.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { Context } from 'radix-ui/internal';\nimport { RadioGroup as RadioGroupPrimitive } from 'radix-ui';\n\nimport { radioGroupRootPropDefs } from './radio-group.props.js';\nimport { Text } from './text.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { useThemeSize } from '../helpers/theme-size.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\nconst RADIO_GROUP_NAME = 'RadioGroup';\n\ntype ScopedProps<P> = P & { __scopeRadioGroup?: Context.Scope };\nconst [createRadioGroupContext] = Context.createContextScope(RADIO_GROUP_NAME, [\n RadioGroupPrimitive.createRadioGroupScope,\n]);\nconst useRadioGroupScope = RadioGroupPrimitive.createRadioGroupScope();\n\ntype RadioGroupRootOwnProps = GetPropDefTypes<typeof radioGroupRootPropDefs>;\ntype RadioGroupContextValue = RadioGroupRootOwnProps;\n\nconst [RadioGroupProvider, useRadioGroupContext] =\n createRadioGroupContext<RadioGroupContextValue>(RADIO_GROUP_NAME);\n\ntype RadioGroupRootElement = React.ElementRef<typeof RadioGroupPrimitive.Root>;\ninterface RadioGroupRootProps\n extends ComponentPropsWithout<\n typeof RadioGroupPrimitive.Root,\n 'asChild' | 'color' | 'defaultChecked'\n >,\n MarginProps,\n RadioGroupRootOwnProps {}\nconst RadioGroupRoot = React.forwardRef<RadioGroupRootElement, RadioGroupRootProps>(\n (\n {\n color = radioGroupRootPropDefs.color.default,\n size: sizeProp,\n variant = radioGroupRootPropDefs.variant.default,\n ...props\n }: ScopedProps<RadioGroupRootProps>,\n forwardedRef\n ) => {\n const size = useThemeSize(sizeProp, radioGroupRootPropDefs.size);\n const { __scopeRadioGroup, className, ...rootProps } = extractProps(props, marginPropDefs);\n const radioGroupScope = useRadioGroupScope(__scopeRadioGroup);\n return (\n <RadioGroupProvider\n scope={__scopeRadioGroup}\n color={color}\n size={size}\n variant={variant}\n >\n <RadioGroupPrimitive.Root\n {...radioGroupScope}\n {...rootProps}\n ref={forwardedRef}\n className={classNames('rt-RadioGroupRoot', className)}\n />\n </RadioGroupProvider>\n );\n }\n);\nRadioGroupRoot.displayName = 'RadioGroup.Root';\n\ntype RadioGroupItemElement = React.ElementRef<typeof RadioGroupItemRadio>;\ninterface RadioGroupItemProps\n extends ComponentPropsWithout<typeof RadioGroupItemRadio, RemovedProps>,\n MarginProps {}\nconst RadioGroupItem = React.forwardRef<RadioGroupItemElement, RadioGroupItemProps>(\n (_props: ScopedProps<RadioGroupItemProps>, forwardedRef) => {\n const { __scopeRadioGroup, children, className, style, ...props } = _props;\n const { size } = useRadioGroupContext('RadioGroupItem', __scopeRadioGroup);\n\n // Render `<Text as=\"label\">` if children\u00A0are provided, otherwise render\n // the solo radio button to allow building out your custom layouts with it.\n if (children) {\n return (\n <Text\n as=\"label\"\n size={size}\n className={classNames('rt-RadioGroupItem', className)}\n style={style}\n >\n <RadioGroupItemRadio\n __scopeRadioGroup={__scopeRadioGroup}\n {...props}\n ref={forwardedRef}\n />\n {children && <span className=\"rt-RadioGroupItemInner\">{children}</span>}\n </Text>\n );\n }\n\n return (\n <RadioGroupItemRadio\n __scopeRadioGroup={__scopeRadioGroup}\n {...props}\n ref={forwardedRef}\n className={className}\n style={style}\n />\n );\n }\n);\nRadioGroupItem.displayName = 'RadioGroup.Item';\n\ntype RadioGroupItemRadioElement = React.ElementRef<typeof RadioGroupPrimitive.Item>;\ninterface RadioGroupItemRadioProps\n extends React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item> {}\nconst RadioGroupItemRadio = React.forwardRef<\n RadioGroupItemRadioElement,\n ScopedProps<RadioGroupItemRadioProps>\n>(({ __scopeRadioGroup, ...props }, forwardedRef) => {\n const context = useRadioGroupContext('RadioGroupItemRadio', __scopeRadioGroup);\n const radioGroupScope = useRadioGroupScope(__scopeRadioGroup);\n const { color, className } = extractProps(\n { ...props, ...context },\n radioGroupRootPropDefs,\n marginPropDefs\n );\n return (\n <RadioGroupPrimitive.Item\n {...radioGroupScope}\n data-accent-color={color}\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-BaseRadioRoot', className)}\n />\n );\n});\nRadioGroupItemRadio.displayName = 'RadioGroup.ItemRadio';\n\nexport { RadioGroupRoot as Root, RadioGroupItem as Item };\nexport type { RadioGroupRootProps as RootProps, RadioGroupItemProps as ItemProps };\n"],
|
|
5
|
-
"mappings": "gPAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,UAAAE,EAAA,SAAAC,IAEA,UAAYC,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,WAAAC,MAAe,oBACxB,OAAS,cAAcC,MAA2B,WAYlD,IAAMC,EAAmB,aAGnB,CAACC,CAAuB,EAAIC,EAAQ,mBAAmBF,EAAkB,CAC7EG,EAAoB,qBACtB,CAAC,EACKC,EAAqBD,EAAoB,sBAAsB,EAK/D,CAACE,EAAoBC,CAAoB,EAC7CL,EAAgDD,CAAgB,EAU5DO,EAAuB,aAC3B,CACE,CACE,MAAAC,EAAQC,EAAuB,MAAM,QACrC,KAAMC,EACN,QAAAC,EAAUF,EAAuB,QAAQ,QACzC,GAAGG,CACL,EACAC,IACG,CACH,IAAMC,EAAOC,EAAaL,EAAUD,EAAuB,IAAI,EACzD,CAAE,kBAAAO,EAAmB,UAAAC,EAAW,GAAGC,CAAU,EAAIC,EAAaP,EAAOQ,CAAc,EACnFC,EAAkBjB,EAAmBY,CAAiB,EAC5D,OACE,gBAACX,EAAA,CACC,MAAOW,EACP,MAAOR,EACP,KAAMM,EACN,QAASH,GAET,gBAACR,EAAoB,KAApB,CACE,GAAGkB,EACH,GAAGH,EACJ,IAAKL,EACL,UAAWS,EAAW,oBAAqBL,CAAS,EACtD,CACF,CAEJ,CACF,EACAV,EAAe,YAAc,kBAM7B,IAAMgB,EAAuB,aAC3B,CAACC,EAA0CX,IAAiB,CAC1D,GAAM,CAAE,kBAAAG,EAAmB,SAAAS,EAAU,UAAAR,EAAW,MAAAS,EAAO,GAAGd,CAAM,EAAIY,EAC9D,CAAE,KAAAV,CAAK,EAAIR,EAAqB,iBAAkBU,CAAiB,EAIzE,OAAIS,EAEA,gBAACE,EAAA,CACC,GAAG,QACH,KAAMb,EACN,UAAWQ,EAAW,oBAAqBL,CAAS,EACpD,MAAOS,GAEP,gBAACE,EAAA,CACC,kBAAmBZ,EAClB,GAAGJ,EACJ,IAAKC,EACP,EACCY,GAAY,gBAAC,QAAK,UAAU,0BAA0BA,CAAS,CAClE,EAKF,gBAACG,EAAA,CACC,kBAAmBZ,EAClB,GAAGJ,EACJ,IAAKC,EACL,UAAWI,EACX,MAAOS,EACT,CAEJ,CACF,EACAH,EAAe,YAAc,kBAK7B,IAAMK,EAA4B,aAGhC,CAAC,CAAE,kBAAAZ,EAAmB,GAAGJ,CAAM,EAAGC,IAAiB,CACnD,IAAMgB,EAAUvB,EAAqB,sBAAuBU,CAAiB,EACvEK,EAAkBjB,EAAmBY,CAAiB,EACtD,CAAE,MAAAR,EAAO,UAAAS,CAAU,EAAIE,EAC3B,CAAE,GAAGP,EAAO,GAAGiB,CAAQ,EACvBpB,EACAW,CACF,EACA,OACE,gBAACjB,EAAoB,KAApB,CACE,GAAGkB,EACJ,oBAAmBb,EAClB,GAAGI,EACJ,QAAS,GACT,IAAKC,EACL,UAAWS,EAAW,WAAY,mBAAoBL,CAAS,EACjE,CAEJ,CAAC,EACDW,EAAoB,YAAc",
|
|
6
|
-
"names": ["radio_group_exports", "__export", "RadioGroupItem", "RadioGroupRoot", "React", "classNames", "Context", "RadioGroupPrimitive", "RADIO_GROUP_NAME", "createRadioGroupContext", "Context", "RadioGroupPrimitive", "useRadioGroupScope", "RadioGroupProvider", "useRadioGroupContext", "RadioGroupRoot", "color", "radioGroupRootPropDefs", "sizeProp", "variant", "props", "forwardedRef", "size", "useThemeSize", "__scopeRadioGroup", "className", "rootProps", "extractProps", "marginPropDefs", "radioGroupScope", "classNames", "RadioGroupItem", "_props", "children", "style", "Text", "RadioGroupItemRadio", "context"]
|
|
7
|
-
}
|