@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 +1,2 @@
|
|
|
1
|
-
import{a as O}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as O}from"./chunk-GWGQ73PU.js";import{b as W,d as V,f as L}from"./chunk-IX5HIHVI.js";import{a as D}from"./chunk-MJJ7XDIP.js";import{b as z,c as h}from"./chunk-RGZKWVJC.js";import{c as v}from"./chunk-PEP6MQJ2.js";import{a as S}from"./chunk-7XWAXYZD.js";import{e as G}from"./chunk-3YLYGKFB.js";import{c as p,d as w,e as B,f as k}from"./chunk-VJOJGAGA.js";import{b as f,c as R,d as I,e as b}from"./chunk-EOWG5SIY.js";import{a as d}from"./chunk-ELAW7ZUG.js";import{a as ee}from"./chunk-OS3FCYZY.js";var te={};ee(te,{CheckboxItem:()=>Q,Content:()=>F,Group:()=>K,Item:()=>q,Label:()=>_,RadioGroup:()=>H,RadioItem:()=>J,Root:()=>A,Separator:()=>Z,Sub:()=>U,SubContent:()=>Y,SubTrigger:()=>X,Trigger:()=>j,Virtual:()=>O});import*as e from"react";import i from"classnames";import{ContextMenu as a,Slot as g}from"radix-ui";var A=t=>e.createElement(a.Root,{...t});A.displayName="ContextMenu.Root";var j=e.forwardRef(({children:t,...n},o)=>e.createElement(a.Trigger,{...n,ref:o,asChild:!0},D(t)));j.displayName="ContextMenu.Trigger";var y=e.createContext({}),F=e.forwardRef((t,n)=>{let o=G(t,p.size),s=z(),{size:r=p.size.default}=o,{className:u,children:C,color:x,container:l,forceMount:T,submenuBehavior:N,virtualized:M=!1,...P}=d(o,p),m=x||s.accentColor,c=f(r,p.size.default),$=e.useMemo(()=>({size:r,color:m}),[r,m]),E=e.createElement(v,{size:r},e.createElement(y.Provider,{value:$},C));return e.createElement(a.Portal,{container:l,forceMount:T},e.createElement(h,{asChild:!0},e.createElement(a.Content,{"data-accent-color":m,alignOffset:R(c),collisionPadding:10,...P,asChild:!1,ref:n,className:i("rt-PopperContent","rt-BaseMenuContent","rt-variant-soft","rt-ContextMenuContent",u)},M?e.createElement("div",{className:i("rt-BaseMenuViewport","rt-ContextMenuViewport","rt-virtualized")},E):e.createElement(S,{type:"auto",scrollbars:"vertical"},e.createElement("div",{className:i("rt-BaseMenuViewport","rt-ContextMenuViewport")},E)))))});F.displayName="ContextMenu.Content";var _=e.forwardRef(({className:t,...n},o)=>e.createElement(a.Label,{...n,asChild:!1,ref:o,className:i("rt-BaseMenuLabel","rt-ContextMenuLabel",t)}));_.displayName="ContextMenu.Label";var q=e.forwardRef((t,n)=>{let{className:o,children:s,color:r=w.color.default,shortcut:u,...C}=t;return e.createElement(a.Item,{"data-accent-color":r,"aria-keyshortcuts":u?I(u):void 0,...C,ref:n,className:i("rt-reset","rt-BaseMenuItem","rt-ContextMenuItem",o)},e.createElement(g.Slottable,null,s),u&&e.createElement(b,{shortcut:u,className:"rt-ContextMenuShortcut"}))});q.displayName="ContextMenu.Item";var K=e.forwardRef(({className:t,...n},o)=>e.createElement(a.Group,{...n,asChild:!1,ref:o,className:i("rt-BaseMenuGroup","rt-ContextMenuGroup",t)}));K.displayName="ContextMenu.Group";var H=e.forwardRef(({className:t,...n},o)=>e.createElement(a.RadioGroup,{...n,asChild:!1,ref:o,className:i("rt-BaseMenuRadioGroup","rt-ContextMenuRadioGroup",t)}));H.displayName="ContextMenu.RadioGroup";var J=e.forwardRef((t,n)=>{let{children:o,className:s,color:r=k.color.default,...u}=t;return e.createElement(a.RadioItem,{...u,asChild:!1,ref:n,"data-accent-color":r,className:i("rt-BaseMenuItem","rt-BaseMenuRadioItem","rt-ContextMenuItem","rt-ContextMenuRadioItem",s)},e.createElement(g.Slottable,null,o),e.createElement(a.ItemIndicator,{className:"rt-BaseMenuItemIndicator rt-ContextMenuItemIndicator"},e.createElement(L,{className:"rt-BaseMenuItemIndicatorIcon rt-ContextMenuItemIndicatorIcon"})))});J.displayName="ContextMenu.RadioItem";var Q=e.forwardRef((t,n)=>{let{children:o,className:s,shortcut:r,color:u=B.color.default,...C}=t;return e.createElement(a.CheckboxItem,{"aria-keyshortcuts":r?I(r):void 0,...C,asChild:!1,ref:n,"data-accent-color":u,className:i("rt-BaseMenuItem","rt-BaseMenuCheckboxItem","rt-ContextMenuItem","rt-ContextMenuCheckboxItem",s)},e.createElement(g.Slottable,null,o),e.createElement(a.ItemIndicator,{className:"rt-BaseMenuItemIndicator rt-ContextMenuItemIndicator"},e.createElement(W,{className:"rt-BaseMenuItemIndicatorIcon rt-ContextMenuItemIndicatorIcon"})),r&&e.createElement(b,{shortcut:r,className:"rt-ContextMenuShortcut"}))});Q.displayName="ContextMenu.CheckboxItem";var U=t=>e.createElement(a.Sub,{...t});U.displayName="ContextMenu.Sub";var X=e.forwardRef((t,n)=>{let{className:o,children:s,...r}=t;return e.createElement(a.SubTrigger,{...r,asChild:!1,ref:n,className:i("rt-BaseMenuItem","rt-BaseMenuSubTrigger","rt-ContextMenuItem","rt-ContextMenuSubTrigger",o)},s,e.createElement("div",{className:"rt-BaseMenuShortcut rt-ContextMenuShortcut"},e.createElement(V,{className:"rt-BaseMenuSubTriggerIcon rt-ContextMenuSubTriggerIcon"})))});X.displayName="ContextMenu.SubTrigger";var Y=e.forwardRef((t,n)=>{let o=e.useContext(y),s=t.size??o.size,r=t.color??o.color,{className:u,children:C,container:x,forceMount:l,color:T,virtualized:N=!1,...M}=d({...t,size:s},p),P=f(s,p.size.default),m=e.useMemo(()=>({size:s,color:r}),[s,r]),c=e.createElement(v,{size:s},e.createElement(y.Provider,{value:m},C));return e.createElement(a.Portal,{container:x,forceMount:l},e.createElement(h,{asChild:!0},e.createElement(a.SubContent,{"data-accent-color":r,alignOffset:R(P),sideOffset:1,collisionPadding:10,...M,asChild:!1,ref:n,className:i("rt-PopperContent","rt-BaseMenuContent","rt-variant-soft","rt-BaseMenuSubContent","rt-ContextMenuContent","rt-ContextMenuSubContent",u)},N?e.createElement("div",{className:i("rt-BaseMenuViewport","rt-ContextMenuViewport","rt-virtualized")},c):e.createElement(S,{type:"auto",scrollbars:"vertical"},e.createElement("div",{className:i("rt-BaseMenuViewport","rt-ContextMenuViewport")},c)))))});Y.displayName="ContextMenu.SubContent";var Z=e.forwardRef(({className:t,...n},o)=>e.createElement(a.Separator,{...n,asChild:!1,ref:o,className:i("rt-BaseMenuSeparator","rt-ContextMenuSeparator",t)}));Z.displayName="ContextMenu.Separator";export{A as a,j as b,F as c,_ as d,q as e,K as f,H as g,J as h,Q as i,U as j,X as k,Y as l,Z as m,te as n};
|
|
2
|
+
//# sourceMappingURL=chunk-EDEYYJ3Q.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as te,b as re}from"./chunk-HGG3ULNK.js";import{a as B,b as oe,c as M}from"./chunk-FSMUCDLI.js";import{b as Z,c as ee}from"./chunk-IX5HIHVI.js";import{a as Y}from"./chunk-MJJ7XDIP.js";import{b as U,c as X}from"./chunk-RGZKWVJC.js";import{a as J}from"./chunk-AGAQC4HH.js";import{c as _}from"./chunk-FWB47YCH.js";import{d as Q}from"./chunk-3YLYGKFB.js";import{a as O}from"./chunk-ELAW7ZUG.js";import{a as Ie}from"./chunk-OS3FCYZY.js";var ke={};Ie(ke,{Content:()=>fe,Empty:()=>Pe,Group:()=>Re,Input:()=>xe,Item:()=>ye,Label:()=>he,List:()=>ge,Root:()=>ue,Separator:()=>ve,Trigger:()=>de,Value:()=>Ce});import*as e from"react";import u from"classnames";import{Popover as ne}from"radix-ui";import{useCallbackRef as A,useComposedRefs as le,useControllableState as G,useLayoutEffect as W}from"radix-ui/internal";import{Command as N,useCommandState as ae}from"cmdk";var Ne={size:B.size},Le={size:M.size},se=new Set;function we(o){se.has(o)||(se.add(o),console.warn(o))}function De(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 ie=e.createContext(null),k=o=>{let r=e.useContext(ie);if(!r)throw new Error(`Combobox.${o} must be used within Combobox.Root`);return r},me=e.createContext(null),ce=e.createContext(null),be=e.createContext(null),pe=()=>e.useContext(be);function Oe(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 ue=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=Q(t,B.size),[y,b]=G({prop:l,defaultProp:d,onChange:i}),[I,Se]=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(()=>De(I));W(()=>{w.set(I)},[w,I]);let z=A(D=>{b(D),!D&&g&&L("")}),q=A(D=>{Se(D),b(!1),v&&L("")}),F=e.useRef(null),$=e.useCallback(()=>F.current?Oe(F.current):void 0,[]),Ve=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,$]),Ee=e.useMemo(()=>({value:j,setValue:L}),[j,L]),Te=e.useMemo(()=>({store:w,onSelect:q,disabled:x}),[w,q,x]);return e.createElement(ie.Provider,{value:Ve},e.createElement(me.Provider,{value:Ee},e.createElement(ce.Provider,{value:Te},e.createElement(te,{open:y,onOpenChange:z,...T},r))))};ue.displayName="Combobox.Root";var de=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},Ne,oe),c=l??t.disabled,x=C??t.color,v=!!(d||m),g=t.value==null&&t.displayValue==null,E=le(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(ee,{className:"rt-SelectIcon"}));return e.createElement(re,{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?Y(n):y))});de.displayName="Combobox.Trigger";var Ce=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)});Ce.displayName="Combobox.Value";function Me(){let o=ae(a=>a.filtered.count),r=ae(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(J,{role:"status","aria-live":"polite","aria-atomic":"true"},t)}var fe=e.forwardRef((o,r)=>{let t=k("Content"),n=U(),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},Le).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(ne.Portal,{container:C,forceMount:m?!0:void 0},e.createElement(X,{asChild:!0},e.createElement(ne.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(be.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(Me,null))))))});fe.displayName="Combobox.Content";var xe=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(me),f=pe(),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});xe.displayName="Combobox.Input";var ge=e.forwardRef(({className:o,children:r,label:t,...n},a)=>{let s=pe();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)))});ge.displayName="Combobox.List";var Pe=e.forwardRef(({className:o,...r},t)=>e.createElement(N.Empty,{...r,ref:t,className:u("rt-ComboboxEmpty",o)}));Pe.displayName="Combobox.Empty";var Re=e.forwardRef(({className:o,...r},t)=>e.createElement(N.Group,{...r,ref:t,className:u("rt-BaseMenuGroup","rt-ComboboxGroup",o)}));Re.displayName="Combobox.Group";var he=e.forwardRef(({className:o,id:r,...t},n)=>{let a=e.useId(),s=r??a,l=e.useRef(null),d=le(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)})});he.displayName="Combobox.Label";var ve=e.forwardRef(({className:o,...r},t)=>e.createElement(N.Separator,{...r,ref:t,className:u("rt-BaseMenuSeparator","rt-ComboboxSeparator",o)}));ve.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 ye=e.forwardRef(({className:o,children:r,label:t,value:n,disabled:a,onSelect:s,keywords:l,...d},i)=>{let m=e.useContext(ce);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(Z,{className:u("rt-BaseMenuItemIndicatorIcon","rt-ComboboxItemIndicatorIcon")})):null,e.createElement(_,null,r))});ye.displayName="Combobox.Item";export{ue as a,de as b,Ce as c,fe as d,xe as e,ge as f,Pe as g,Re as h,he as i,ve as j,ye as k,ke as l};
|
|
2
|
+
//# sourceMappingURL=chunk-EDP2TJVB.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
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 { 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 { 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, 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);\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", "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
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as A,b as g,c as R,d as y,e as u}from"./chunk-VNONKPH7.js";import{e as f}from"./chunk-3YLYGKFB.js";import{a as i}from"./chunk-ELAW7ZUG.js";import{a as w}from"./chunk-OS3FCYZY.js";var x={};w(x,{Content:()=>H,Header:()=>v,Item:()=>T,Root:()=>C,Trigger:()=>E});import*as o from"react";import p from"classnames";import{Accordion as m}from"radix-ui";var C=o.forwardRef((r,t)=>{let e=f(r,A.size),{className:c,radius:s,color:P,...a}=i(e,A),n=a;n.type==="single"&&n.collapsible===void 0&&(n.collapsible=!0);let I=o.useCallback(d=>{if(n.type==="multiple"){let l=d.currentTarget.querySelectorAll("[data-radix-accordion-item]");d.key==="Home"?(d.preventDefault(),l[0]?.querySelector("[data-radix-accordion-trigger]")?.focus()):d.key==="End"&&(d.preventDefault(),l[l.length-1]?.querySelector("[data-radix-accordion-trigger]")?.focus())}},[n.type]);return o.createElement(m.Root,{...n,ref:t,className:p("rt-AccordionRoot",c),"data-accent-color":P,"data-radius":s,onKeyDown:I})});C.displayName="Accordion.Root";var T=o.forwardRef((r,t)=>{let{className:e,...c}=i(r,g);return o.createElement(m.Item,{...c,ref:t,className:p("rt-AccordionItem",e)})});T.displayName="Accordion.Item";var v=o.forwardRef((r,t)=>{let{className:e,...c}=i(r,R);return o.createElement(m.Header,{...c,ref:t,className:p("rt-AccordionHeader",e)})});v.displayName="Accordion.Header";var E=o.forwardRef(({children:r,...t},e)=>{let{className:c,...s}=i(t,y),P=o.useRef(null);return o.createElement(m.Trigger,{...s,ref:a=>{P.current=a,typeof e=="function"?e(a):e&&(e.current=a)},className:p("rt-AccordionTrigger",c)},r)});E.displayName="Accordion.Trigger";var H=o.forwardRef((r,t)=>{let{className:e,children:c,...s}=i(r,u);return o.createElement(m.Content,{...s,ref:t,className:p("rt-AccordionContent",e),"aria-live":"polite"},o.createElement("div",{className:"rt-AccordionContentInner"},c))});H.displayName="Accordion.Content";export{C as a,T as b,v as c,E as d,H as e,x as f};
|
|
2
|
+
//# sourceMappingURL=chunk-EGSMLRSO.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/components/accordion.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { Accordion as AccordionPrimitive } from 'radix-ui';\n\nimport {\n accordionRootPropDefs,\n accordionItemPropDefs,\n accordionHeaderPropDefs,\n accordionTriggerPropDefs,\n accordionContentPropDefs,\n} from './accordion.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { useThemeSizeProps } from '../helpers/theme-size.js';\n\nimport type {\n AccordionRootOwnProps,\n AccordionItemOwnProps,\n AccordionHeaderOwnProps,\n AccordionTriggerOwnProps,\n AccordionContentOwnProps,\n} from './accordion.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\n\n// Root component\ntype AccordionRootElement = React.ElementRef<typeof AccordionPrimitive.Root>;\ninterface AccordionRootProps\n extends ComponentPropsWithout<typeof AccordionPrimitive.Root, RemovedProps>,\n AccordionRootOwnProps {}\n\nconst AccordionRoot = React.forwardRef<AccordionRootElement, AccordionRootProps>(\n (ownProps, forwardedRef) => {\n const props = useThemeSizeProps(ownProps, accordionRootPropDefs.size);\n const { className, radius, color, ...extractedRadixProps } =\n extractProps(props, accordionRootPropDefs);\n\n const radixProps = extractedRadixProps as React.ComponentPropsWithoutRef<\n typeof AccordionPrimitive.Root\n >;\n\n\n // Ensure single accordions can collapse by default unless explicitly set\n if (radixProps.type === 'single' && radixProps.collapsible === undefined) {\n radixProps.collapsible = true;\n }\n\n // Handle Home/End key navigation for multi-item accordions\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (radixProps.type === 'multiple') {\n const items = event.currentTarget.querySelectorAll('[data-radix-accordion-item]');\n\n if (event.key === 'Home') {\n event.preventDefault();\n const firstTrigger = items[0]?.querySelector(\n '[data-radix-accordion-trigger]',\n ) as HTMLElement;\n firstTrigger?.focus();\n } else if (event.key === 'End') {\n event.preventDefault();\n const lastTrigger = items[items.length - 1]?.querySelector(\n '[data-radix-accordion-trigger]',\n ) as HTMLElement;\n lastTrigger?.focus();\n }\n }\n },\n [radixProps.type],\n );\n\n return (\n <AccordionPrimitive.Root\n {...radixProps}\n ref={forwardedRef}\n className={classNames('rt-AccordionRoot', className)}\n data-accent-color={color}\n data-radius={radius}\n onKeyDown={handleKeyDown}\n />\n );\n },\n);\nAccordionRoot.displayName = 'Accordion.Root';\n\n// Item component\ntype AccordionItemElement = React.ElementRef<typeof AccordionPrimitive.Item>;\ninterface AccordionItemProps\n extends ComponentPropsWithout<typeof AccordionPrimitive.Item, RemovedProps>,\n AccordionItemOwnProps {}\n\nconst AccordionItem = React.forwardRef<AccordionItemElement, AccordionItemProps>(\n (props, forwardedRef) => {\n const { className, ...itemProps } = extractProps(props, accordionItemPropDefs);\n\n return (\n <AccordionPrimitive.Item\n {...itemProps}\n ref={forwardedRef}\n className={classNames('rt-AccordionItem', className)}\n />\n );\n },\n);\nAccordionItem.displayName = 'Accordion.Item';\n\n// Header component\ntype AccordionHeaderElement = React.ElementRef<typeof AccordionPrimitive.Header>;\ninterface AccordionHeaderProps\n extends ComponentPropsWithout<typeof AccordionPrimitive.Header, RemovedProps>,\n AccordionHeaderOwnProps {}\n\nconst AccordionHeader = React.forwardRef<AccordionHeaderElement, AccordionHeaderProps>(\n (props, forwardedRef) => {\n const { className, ...headerProps } = extractProps(props, accordionHeaderPropDefs);\n\n return (\n <AccordionPrimitive.Header\n {...headerProps}\n ref={forwardedRef}\n className={classNames('rt-AccordionHeader', className)}\n />\n );\n },\n);\nAccordionHeader.displayName = 'Accordion.Header';\n\n// Trigger component\ntype AccordionTriggerElement = React.ElementRef<typeof AccordionPrimitive.Trigger>;\ninterface AccordionTriggerProps\n extends ComponentPropsWithout<typeof AccordionPrimitive.Trigger, RemovedProps>,\n AccordionTriggerOwnProps {}\n\nconst AccordionTrigger = React.forwardRef<AccordionTriggerElement, AccordionTriggerProps>(\n ({ children, ...props }, forwardedRef) => {\n const { className, ...triggerProps } = extractProps(props, accordionTriggerPropDefs);\n\n // Radix UI handles focus management automatically\n const triggerRef = React.useRef<HTMLButtonElement>(null);\n\n return (\n <AccordionPrimitive.Trigger\n {...triggerProps}\n ref={(node) => {\n triggerRef.current = node;\n if (typeof forwardedRef === 'function') {\n forwardedRef(node);\n } else if (forwardedRef) {\n forwardedRef.current = node;\n }\n }}\n className={classNames('rt-AccordionTrigger', className)}\n >\n {children}\n </AccordionPrimitive.Trigger>\n );\n },\n);\nAccordionTrigger.displayName = 'Accordion.Trigger';\n\n// Content component\ntype AccordionContentElement = React.ElementRef<typeof AccordionPrimitive.Content>;\ninterface AccordionContentProps\n extends ComponentPropsWithout<typeof AccordionPrimitive.Content, RemovedProps>,\n AccordionContentOwnProps {}\n\nconst AccordionContent = React.forwardRef<AccordionContentElement, AccordionContentProps>(\n (props, forwardedRef) => {\n const { className, children, ...contentProps } = extractProps(props, accordionContentPropDefs);\n\n return (\n <AccordionPrimitive.Content\n {...contentProps}\n ref={forwardedRef}\n className={classNames('rt-AccordionContent', className)}\n aria-live=\"polite\"\n >\n <div className=\"rt-AccordionContentInner\">{children}</div>\n </AccordionPrimitive.Content>\n );\n },\n);\nAccordionContent.displayName = 'Accordion.Content';\n\nexport {\n AccordionRoot as Root,\n AccordionItem as Item,\n AccordionHeader as Header,\n AccordionTrigger as Trigger,\n AccordionContent as Content,\n};\n\nexport type {\n AccordionRootProps as RootProps,\n AccordionItemProps as ItemProps,\n AccordionHeaderProps as HeaderProps,\n AccordionTriggerProps as TriggerProps,\n AccordionContentProps as ContentProps,\n};\n"],
|
|
5
|
+
"mappings": "4LAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,EAAA,WAAAC,EAAA,SAAAC,EAAA,SAAAC,EAAA,YAAAC,IAAA,UAAYC,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,aAAaC,MAA0B,WA2BhD,IAAMC,EAAsB,aAC1B,CAACC,EAAUC,IAAiB,CAC1B,IAAMC,EAAQC,EAAkBH,EAAUI,EAAsB,IAAI,EAC9D,CAAE,UAAAC,EAAW,OAAAC,EAAQ,MAAAC,EAAO,GAAGC,CAAoB,EACvDC,EAAaP,EAAOE,CAAqB,EAErCM,EAAaF,EAMfE,EAAW,OAAS,UAAYA,EAAW,cAAgB,SAC7DA,EAAW,YAAc,IAI3B,IAAMC,EAAsB,cACzBC,GAA+B,CAC9B,GAAIF,EAAW,OAAS,WAAY,CAClC,IAAMG,EAAQD,EAAM,cAAc,iBAAiB,6BAA6B,EAE5EA,EAAM,MAAQ,QAChBA,EAAM,eAAe,EACAC,EAAM,CAAC,GAAG,cAC7B,gCACF,GACc,MAAM,GACXD,EAAM,MAAQ,QACvBA,EAAM,eAAe,EACDC,EAAMA,EAAM,OAAS,CAAC,GAAG,cAC3C,gCACF,GACa,MAAM,EAEvB,CACF,EACA,CAACH,EAAW,IAAI,CAClB,EAEA,OACE,gBAACI,EAAmB,KAAnB,CACE,GAAGJ,EACJ,IAAKT,EACL,UAAWc,EAAW,mBAAoBV,CAAS,EACnD,oBAAmBE,EACnB,cAAaD,EACb,UAAWK,EACb,CAEJ,CACF,EACAZ,EAAc,YAAc,iBAQ5B,IAAMiB,EAAsB,aAC1B,CAACd,EAAOD,IAAiB,CACvB,GAAM,CAAE,UAAAI,EAAW,GAAGY,CAAU,EAAIR,EAAaP,EAAOgB,CAAqB,EAE7E,OACE,gBAACJ,EAAmB,KAAnB,CACE,GAAGG,EACJ,IAAKhB,EACL,UAAWc,EAAW,mBAAoBV,CAAS,EACrD,CAEJ,CACF,EACAW,EAAc,YAAc,iBAQ5B,IAAMG,EAAwB,aAC5B,CAACjB,EAAOD,IAAiB,CACvB,GAAM,CAAE,UAAAI,EAAW,GAAGe,CAAY,EAAIX,EAAaP,EAAOmB,CAAuB,EAEjF,OACE,gBAACP,EAAmB,OAAnB,CACE,GAAGM,EACJ,IAAKnB,EACL,UAAWc,EAAW,qBAAsBV,CAAS,EACvD,CAEJ,CACF,EACAc,EAAgB,YAAc,mBAQ9B,IAAMG,EAAyB,aAC7B,CAAC,CAAE,SAAAC,EAAU,GAAGrB,CAAM,EAAGD,IAAiB,CACxC,GAAM,CAAE,UAAAI,EAAW,GAAGmB,CAAa,EAAIf,EAAaP,EAAOuB,CAAwB,EAG7EC,EAAmB,SAA0B,IAAI,EAEvD,OACE,gBAACZ,EAAmB,QAAnB,CACE,GAAGU,EACJ,IAAMG,GAAS,CACbD,EAAW,QAAUC,EACjB,OAAO1B,GAAiB,WAC1BA,EAAa0B,CAAI,EACR1B,IACTA,EAAa,QAAU0B,EAE3B,EACA,UAAWZ,EAAW,sBAAuBV,CAAS,GAErDkB,CACH,CAEJ,CACF,EACAD,EAAiB,YAAc,oBAQ/B,IAAMM,EAAyB,aAC7B,CAAC1B,EAAOD,IAAiB,CACvB,GAAM,CAAE,UAAAI,EAAW,SAAAkB,EAAU,GAAGM,CAAa,EAAIpB,EAAaP,EAAO4B,CAAwB,EAE7F,OACE,gBAAChB,EAAmB,QAAnB,CACE,GAAGe,EACJ,IAAK5B,EACL,UAAWc,EAAW,sBAAuBV,CAAS,EACtD,YAAU,UAEV,gBAAC,OAAI,UAAU,4BAA4BkB,CAAS,CACtD,CAEJ,CACF,EACAK,EAAiB,YAAc",
|
|
6
|
+
"names": ["accordion_exports", "__export", "AccordionContent", "AccordionHeader", "AccordionItem", "AccordionRoot", "AccordionTrigger", "React", "classNames", "AccordionPrimitive", "AccordionRoot", "ownProps", "forwardedRef", "props", "useThemeSizeProps", "accordionRootPropDefs", "className", "radius", "color", "extractedRadixProps", "extractProps", "radixProps", "handleKeyDown", "event", "items", "AccordionPrimitive", "classNames", "AccordionItem", "itemProps", "accordionItemPropDefs", "AccordionHeader", "headerProps", "accordionHeaderPropDefs", "AccordionTrigger", "children", "triggerProps", "accordionTriggerPropDefs", "triggerRef", "node", "AccordionContent", "contentProps", "accordionContentPropDefs"]
|
|
7
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as m}from"./chunk-E23RKOQJ.js";import{a as y,b as g}from"./chunk-PBFSBHBS.js";import{a as p}from"./chunk-RZCX6IBE.js";import{a as d}from"./chunk-AX5S56DS.js";import h from"classnames";function V(n,i){let a=n.initial,o=!1;return i.hasDefault&&a===void 0&&(a=i.default,o=!0),i.enumValueSet!==void 0&&!i.enumValueSet.has(a)&&(a=i.default,o=!0),o?{...n,initial:a}:n}function T(n,...i){let{styling:a,passthrough:o,stylingKeys:P}=d(i),r={};for(let t in n)P.has(t)||(r[t]=n[t]);for(let t=0;t<o.length;t++){let e=o[t],s=r[e.key];if(s===void 0){e.hasDefault&&(r[e.key]=e.default);continue}e.enumValueSet!==void 0&&!e.enumValueSet.has(s)&&!p(s)&&(r[e.key]=e.default)}let f,l=[];for(let t=0;t<a.length;t++){let e=a[t],s=n[e.key];if(s===void 0&&e.hasDefault&&(s=e.default),e.enumValueSet!==void 0&&!e.enumValueSet.has(s)&&!p(s)&&(s=e.default),!!s){if(p(s)){if(!e.responsive)continue;s=V(s,e)}if(e.type==="enum"){let u=g({allowArbitraryValues:!1,value:s,className:e.className,propValues:e.values,propValueSet:e.valueSet,parseValue:e.parseValue});u&&l.push(u);continue}if(e.type==="string"||e.type==="enum | string"){let[u,c]=y({className:e.className,customProperties:e.customProperties,propValues:e.type==="string"?[]:e.values,propValueSet:e.type==="string"?void 0:e.valueSet,parseValue:e.parseValue,value:s});c&&(f=m(f,c)),u&&l.push(u);continue}if(e.type==="boolean"){l.push(e.className);continue}}}return r.className=h(l.length>0?l.join(" "):void 0,n.className),r.style=m(f,n.style),r}export{T as a};
|
|
2
|
+
//# sourceMappingURL=chunk-ELAW7ZUG.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as c}from"./chunk-LHYX53XA.js";import{b as p}from"./chunk-TBZO22XK.js";import*as a from"react";import l from"classnames";var i=["xl","lg","md","sm","xs","initial"];function m(e,t,o){if(e==null)return o;if(typeof e!="object")return e;let s=e;for(let r=i.indexOf(t);r<i.length;r++){let n=s[i[r]];if(n!==void 0)return n}return o}function A(e,t){let o=typeof e=="object"&&e!==null,{breakpoint:s}=p(o);return m(e,s,t)}var d={1:8,2:12,3:16,4:24};function B(e){return-(d[e]??d[2])}var f={"\u2318":"Meta",cmd:"Meta",command:"Meta",meta:"Meta","\u2325":"Alt",option:"Alt",opt:"Alt",alt:"Alt","\u21E7":"Shift",shift:"Shift","\u2303":"Control",ctrl:"Control",control:"Control","\u232B":"Backspace","\u2326":"Delete","\u23CE":"Enter","\u21B5":"Enter","\u238B":"Escape",esc:"Escape","\u21E5":"Tab","\u2191":"ArrowUp","\u2193":"ArrowDown","\u2190":"ArrowLeft","\u2192":"ArrowRight"},u=new Map;function S(e){let t=u.get(e);if(t!==void 0)return t||void 0;let r=(e.match(/[⌘⌥⇧⌃]|[^\s+⌘⌥⇧⌃]+/gu)??[]).map(n=>f[n]??f[n.toLowerCase()]??(n.length===1?n.toUpperCase():n)).join("+");return u.set(e,r),r||void 0}function k({shortcut:e,className:t}){return a.createElement("div",{"aria-hidden":!0,className:l("rt-BaseMenuShortcut",t)},a.createElement(c,{size:"1"},e))}export{m as a,A as b,B as c,S as d,k as e};
|
|
2
|
+
//# sourceMappingURL=chunk-EOWG5SIY.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/components/_internal/base-menu.utils.tsx"],
|
|
4
|
+
"sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\n\nimport { Kbd } from '../kbd.js';\nimport { useBreakpoint } from '../../hooks/use-breakpoint.js';\n\nimport type { Breakpoint, Responsive } from '../../props/prop-def.js';\n\nconst BREAKPOINTS_DESCENDING: Breakpoint[] = ['xl', 'lg', 'md', 'sm', 'xs', 'initial'];\n\n/**\n * Resolves a responsive value for the given breakpoint, falling back through\n * the smaller breakpoints when the current one is not set.\n */\nfunction resolveResponsiveValue<T>(\n value: T | Partial<Record<Breakpoint, T>> | undefined,\n currentBreakpoint: Breakpoint,\n defaultValue: T,\n): T {\n if (value === undefined || value === null) return defaultValue;\n if (typeof value !== 'object') return value;\n\n const map = value as Partial<Record<Breakpoint, T>>;\n for (let i = BREAKPOINTS_DESCENDING.indexOf(currentBreakpoint); i < BREAKPOINTS_DESCENDING.length; i++) {\n const resolved = map[BREAKPOINTS_DESCENDING[i]];\n if (resolved !== undefined) return resolved;\n }\n return defaultValue;\n}\n\n/**\n * Resolves a possibly responsive value against the current viewport. Only a\n * responsive object subscribes to breakpoint changes; a plain value costs\n * nothing.\n */\nfunction useResolvedResponsiveValue<T>(value: Responsive<T> | undefined, defaultValue: T): T {\n const isResponsive = typeof value === 'object' && value !== null;\n const { breakpoint } = useBreakpoint(isResponsive);\n return resolveResponsiveValue(value as T | Partial<Record<Breakpoint, T>> | undefined, breakpoint, defaultValue);\n}\n\n/** Content padding per menu size, in px (see base-menu.css). */\n// The panel padding ladder (--panel-p-N).\nconst CONTENT_PADDING: Record<string, number> = { '1': 8, '2': 12, '3': 16, '4': 24 };\n\n/**\n * Offset that lines the first item of a menu up with its anchor: the pointer\n * for a context menu, or the sub trigger for a submenu. It cancels the content\n * padding.\n */\nfunction getMenuAlignOffset(size: string): number {\n return -(CONTENT_PADDING[size] ?? CONTENT_PADDING['2']);\n}\n\nconst KEY_SYMBOLS: Record<string, string> = {\n '\u2318': 'Meta',\n cmd: 'Meta',\n command: 'Meta',\n meta: 'Meta',\n '\u2325': 'Alt',\n option: 'Alt',\n opt: 'Alt',\n alt: 'Alt',\n '\u21E7': 'Shift',\n shift: 'Shift',\n '\u2303': 'Control',\n ctrl: 'Control',\n control: 'Control',\n '\u232B': 'Backspace',\n '\u2326': 'Delete',\n '\u23CE': 'Enter',\n '\u21B5': 'Enter',\n '\u238B': 'Escape',\n esc: 'Escape',\n '\u21E5': 'Tab',\n '\u2191': 'ArrowUp',\n '\u2193': 'ArrowDown',\n '\u2190': 'ArrowLeft',\n '\u2192': 'ArrowRight',\n};\n\nconst ariaKeyShortcutsCache = new Map<string, string>();\n\n/**\n * Converts a display shortcut such as \"\u2318 \u21E7 P\" or \"Ctrl+S\" into the\n * `aria-keyshortcuts` format (\"Meta+Shift+P\", \"Control+S\").\n */\nfunction toAriaKeyShortcuts(shortcut: string): string | undefined {\n const cached = ariaKeyShortcutsCache.get(shortcut);\n if (cached !== undefined) return cached || undefined;\n\n // Modifier symbols are tokens of their own (\"\u2318\u21E7P\"); otherwise split on \"+\" and spaces.\n const tokens = shortcut.match(/[\u2318\u2325\u21E7\u2303]|[^\\s+\u2318\u2325\u21E7\u2303]+/gu) ?? [];\n const keys = tokens.map((token) => {\n const mapped = KEY_SYMBOLS[token] ?? KEY_SYMBOLS[token.toLowerCase()];\n return mapped ?? (token.length === 1 ? token.toUpperCase() : token);\n });\n const result = keys.join('+');\n ariaKeyShortcutsCache.set(shortcut, result);\n return result || undefined;\n}\n\n/**\n * The keyboard shortcut hint at the end of a menu item. It is hidden from\n * assistive technology because the item exposes it through\n * `aria-keyshortcuts` instead of reading it as part of the item name.\n */\nfunction MenuShortcut({ shortcut, className }: { shortcut: string; className?: string }) {\n return (\n <div aria-hidden className={classNames('rt-BaseMenuShortcut', className)}>\n <Kbd size=\"1\">{shortcut}</Kbd>\n </div>\n );\n}\n\nexport {\n resolveResponsiveValue,\n useResolvedResponsiveValue,\n getMenuAlignOffset,\n toAriaKeyShortcuts,\n MenuShortcut,\n};\n"],
|
|
5
|
+
"mappings": "gFAEA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aAOvB,IAAMC,EAAuC,CAAC,KAAM,KAAM,KAAM,KAAM,KAAM,SAAS,EAMrF,SAASC,EACPC,EACAC,EACAC,EACG,CACH,GAA2BF,GAAU,KAAM,OAAOE,EAClD,GAAI,OAAOF,GAAU,SAAU,OAAOA,EAEtC,IAAMG,EAAMH,EACZ,QAASI,EAAIN,EAAuB,QAAQG,CAAiB,EAAGG,EAAIN,EAAuB,OAAQM,IAAK,CACtG,IAAMC,EAAWF,EAAIL,EAAuBM,CAAC,CAAC,EAC9C,GAAIC,IAAa,OAAW,OAAOA,CACrC,CACA,OAAOH,CACT,CAOA,SAASI,EAA8BN,EAAkCE,EAAoB,CAC3F,IAAMK,EAAe,OAAOP,GAAU,UAAYA,IAAU,KACtD,CAAE,WAAAQ,CAAW,EAAIC,EAAcF,CAAY,EACjD,OAAOR,EAAuBC,EAAyDQ,EAAYN,CAAY,CACjH,CAIA,IAAMQ,EAA0C,CAAE,EAAK,EAAG,EAAK,GAAI,EAAK,GAAI,EAAK,EAAG,EAOpF,SAASC,EAAmBC,EAAsB,CAChD,MAAO,EAAEF,EAAgBE,CAAI,GAAKF,EAAgB,CAAG,EACvD,CAEA,IAAMG,EAAsC,CAC1C,SAAK,OACL,IAAK,OACL,QAAS,OACT,KAAM,OACN,SAAK,MACL,OAAQ,MACR,IAAK,MACL,IAAK,MACL,SAAK,QACL,MAAO,QACP,SAAK,UACL,KAAM,UACN,QAAS,UACT,SAAK,YACL,SAAK,SACL,SAAK,QACL,SAAK,QACL,SAAK,SACL,IAAK,SACL,SAAK,MACL,SAAK,UACL,SAAK,YACL,SAAK,YACL,SAAK,YACP,EAEMC,EAAwB,IAAI,IAMlC,SAASC,EAAmBC,EAAsC,CAChE,IAAMC,EAASH,EAAsB,IAAIE,CAAQ,EACjD,GAAIC,IAAW,OAAW,OAAOA,GAAU,OAQ3C,IAAMC,GALSF,EAAS,MAAM,sBAAsB,GAAK,CAAC,GACtC,IAAKG,GACRN,EAAYM,CAAK,GAAKN,EAAYM,EAAM,YAAY,CAAC,IAClDA,EAAM,SAAW,EAAIA,EAAM,YAAY,EAAIA,EAC9D,EACmB,KAAK,GAAG,EAC5B,OAAAL,EAAsB,IAAIE,EAAUE,CAAM,EACnCA,GAAU,MACnB,CAOA,SAASE,EAAa,CAAE,SAAAJ,EAAU,UAAAK,CAAU,EAA6C,CACvF,OACE,gBAAC,OAAI,cAAW,GAAC,UAAWC,EAAW,sBAAuBD,CAAS,GACrE,gBAACE,EAAA,CAAI,KAAK,KAAKP,CAAS,CAC1B,CAEJ",
|
|
6
|
+
"names": ["React", "classNames", "BREAKPOINTS_DESCENDING", "resolveResponsiveValue", "value", "currentBreakpoint", "defaultValue", "map", "i", "resolved", "useResolvedResponsiveValue", "isResponsive", "breakpoint", "useBreakpoint", "CONTENT_PADDING", "getMenuAlignOffset", "size", "KEY_SYMBOLS", "ariaKeyShortcutsCache", "toAriaKeyShortcuts", "shortcut", "cached", "result", "token", "MenuShortcut", "className", "classNames", "Kbd"]
|
|
7
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as t}from"./chunk-VX44UTQ5.js";import{a as e}from"./chunk-ERGJN7FJ.js";import{b as r}from"./chunk-KRJTW535.js";import{c as o}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as t}from"./chunk-VX44UTQ5.js";import{a as e}from"./chunk-ERGJN7FJ.js";import{b as r}from"./chunk-KRJTW535.js";import{c as o}from"./chunk-CUNKWFKA.js";var s=["1","2","3","4"],l={size:{type:"enum",className:"rt-r-size",values:s,default:"2",responsive:!0}},i=["raised","surface","soft","outline","ghost"],m={variant:{type:"enum",className:"rt-variant",values:i,default:"raised"},error:{type:"boolean"},loading:{type:"boolean"},disabled:{type:"boolean"},readOnly:{type:"boolean"},...o,...r,width:e.width,placeholder:{type:"string"}},a=["1","2","3","4"],c={size:{type:"enum",className:"rt-r-size",values:a,default:"2",responsive:!0},...o,width:e.width,minWidth:e.minWidth,maxWidth:{...e.maxWidth,default:"480px"},...t};export{l as a,m as b,c};
|
|
2
|
+
//# sourceMappingURL=chunk-FSMUCDLI.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/components/combobox.props.tsx"],
|
|
4
|
-
"sourcesContent": ["import { colorPropDef } from '../props/color.prop.js';\nimport { radiusPropDef } from '../props/radius.prop.js';\nimport { widthPropDefs } from '../props/width.props.js';\nimport { heightPropDefs } from '../props/height.props.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4'] as const;\n\n/**\n * Shared responsive sizing inherited by Combobox.Root.\n */\nconst comboboxRootPropDefs = {\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n};\n\nconst triggerVariants = ['raised', 'surface', 'soft', 'outline', 'ghost'] as const;\n\n/**\n * Token-aware props specific to Combobox.Trigger.\n */\nconst comboboxTriggerPropDefs = {\n variant: { type: 'enum', className: 'rt-variant', values: triggerVariants, default: 'raised' },\n error: { type: 'boolean' },\n loading: { type: 'boolean' },\n disabled: { type: 'boolean' },\n readOnly: { type: 'boolean' },\n ...colorPropDef,\n ...radiusPropDef,\n width: widthPropDefs.width,\n placeholder: { type: 'string' },\n} satisfies {\n variant: PropDef<(typeof triggerVariants)[number]>;\n error: PropDef<boolean>;\n loading: PropDef<boolean>;\n disabled: PropDef<boolean>;\n readOnly: PropDef<boolean>;\n width: PropDef<string>;\n placeholder: PropDef<string>;\n};\n\n// The list is a menu, and menus stop at size 3.\nconst contentSizes = ['1', '2', '3'] as const;\n\n/**\n * Styling props for the dropdown surface rendered by Combobox.Content.\n */\nconst comboboxContentPropDefs = {\n size: { type: 'enum', className: 'rt-r-size', values: contentSizes, default: '2', responsive: true },\n ...colorPropDef,\n width: widthPropDefs.width,\n minWidth: widthPropDefs.minWidth,\n maxWidth: { ...widthPropDefs.maxWidth, default: '480px' },\n ...heightPropDefs,\n} satisfies {\n size: PropDef<(typeof contentSizes)[number]>;\n width: PropDef<string>;\n minWidth: PropDef<string>;\n maxWidth: PropDef<string>;\n};\n\nexport { comboboxRootPropDefs, comboboxTriggerPropDefs, comboboxContentPropDefs };\n"],
|
|
5
|
-
"mappings": "gKAOA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,GAAG,EAK3BC,EAAuB,CAC3B,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQD,EAAO,QAAS,IAAK,WAAY,EAAK,CAC9F,EAIME,EAAkB,CAAC,SAAU,UAAW,OAAQ,UAAW,OAAO,EAKlEC,EAA0B,CAC9B,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQD,EAAiB,QAAS,QAAS,EAC7F,MAAO,CAAE,KAAM,SAAU,EACzB,QAAS,CAAE,KAAM,SAAU,EAC3B,SAAU,CAAE,KAAM,SAAU,EAC5B,SAAU,CAAE,KAAM,SAAU,EAC5B,GAAGE,EACH,GAAGC,EACH,MAAOC,EAAc,MACrB,YAAa,CAAE,KAAM,QAAS,CAChC,EAWMC,EAAe,CAAC,IAAK,IAAK,GAAG,
|
|
4
|
+
"sourcesContent": ["import { colorPropDef } from '../props/color.prop.js';\nimport { radiusPropDef } from '../props/radius.prop.js';\nimport { widthPropDefs } from '../props/width.props.js';\nimport { heightPropDefs } from '../props/height.props.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4'] as const;\n\n/**\n * Shared responsive sizing inherited by Combobox.Root.\n */\nconst comboboxRootPropDefs = {\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n};\n\nconst triggerVariants = ['raised', 'surface', 'soft', 'outline', 'ghost'] as const;\n\n/**\n * Token-aware props specific to Combobox.Trigger.\n */\nconst comboboxTriggerPropDefs = {\n variant: { type: 'enum', className: 'rt-variant', values: triggerVariants, default: 'raised' },\n error: { type: 'boolean' },\n loading: { type: 'boolean' },\n disabled: { type: 'boolean' },\n readOnly: { type: 'boolean' },\n ...colorPropDef,\n ...radiusPropDef,\n width: widthPropDefs.width,\n placeholder: { type: 'string' },\n} satisfies {\n variant: PropDef<(typeof triggerVariants)[number]>;\n error: PropDef<boolean>;\n loading: PropDef<boolean>;\n disabled: PropDef<boolean>;\n readOnly: PropDef<boolean>;\n width: PropDef<string>;\n placeholder: PropDef<string>;\n};\n\n// The list is a menu, and menus stop at size 3.\nconst contentSizes = ['1', '2', '3', '4'] as const;\n\n/**\n * Styling props for the dropdown surface rendered by Combobox.Content.\n */\nconst comboboxContentPropDefs = {\n size: { type: 'enum', className: 'rt-r-size', values: contentSizes, default: '2', responsive: true },\n ...colorPropDef,\n width: widthPropDefs.width,\n minWidth: widthPropDefs.minWidth,\n maxWidth: { ...widthPropDefs.maxWidth, default: '480px' },\n ...heightPropDefs,\n} satisfies {\n size: PropDef<(typeof contentSizes)[number]>;\n width: PropDef<string>;\n minWidth: PropDef<string>;\n maxWidth: PropDef<string>;\n};\n\nexport { comboboxRootPropDefs, comboboxTriggerPropDefs, comboboxContentPropDefs };\n"],
|
|
5
|
+
"mappings": "gKAOA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,GAAG,EAK3BC,EAAuB,CAC3B,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQD,EAAO,QAAS,IAAK,WAAY,EAAK,CAC9F,EAIME,EAAkB,CAAC,SAAU,UAAW,OAAQ,UAAW,OAAO,EAKlEC,EAA0B,CAC9B,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQD,EAAiB,QAAS,QAAS,EAC7F,MAAO,CAAE,KAAM,SAAU,EACzB,QAAS,CAAE,KAAM,SAAU,EAC3B,SAAU,CAAE,KAAM,SAAU,EAC5B,SAAU,CAAE,KAAM,SAAU,EAC5B,GAAGE,EACH,GAAGC,EACH,MAAOC,EAAc,MACrB,YAAa,CAAE,KAAM,QAAS,CAChC,EAWMC,EAAe,CAAC,IAAK,IAAK,IAAK,GAAG,EAKlCC,EAA0B,CAC9B,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQD,EAAc,QAAS,IAAK,WAAY,EAAK,EACnG,GAAGH,EACH,MAAOE,EAAc,MACrB,SAAUA,EAAc,SACxB,SAAU,CAAE,GAAGA,EAAc,SAAU,QAAS,OAAQ,EACxD,GAAGG,CACL",
|
|
6
6
|
"names": ["sizes", "comboboxRootPropDefs", "triggerVariants", "comboboxTriggerPropDefs", "colorPropDef", "radiusPropDef", "widthPropDefs", "contentSizes", "comboboxContentPropDefs", "heightPropDefs"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as o}from"./chunk-SMGDH54W.js";import{a as e}from"./chunk-TTFUM47A.js";import{b as s}from"./chunk-KRJTW535.js";import{c as r}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as o}from"./chunk-SMGDH54W.js";import{a as e}from"./chunk-TTFUM47A.js";import{b as s}from"./chunk-KRJTW535.js";import{c as r}from"./chunk-CUNKWFKA.js";var t=["1","2","3","4"],p=["raised","surface","soft","ghost","outline"],d={size:{type:"enum",className:"rt-r-size",values:t,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:p,default:"raised"},error:{type:"boolean",default:!1},errorMessage:{type:"string",default:void 0},required:{type:"boolean",default:!1},"aria-describedby":{type:"string",default:void 0},"aria-labelledby":{type:"string",default:void 0},...r,...s},i=["left","right"],l={side:{type:"enum",values:i},...r,gap:o.gap,px:e.px,pl:e.pl,pr:e.pr};export{d as a,l as b};
|
|
2
|
+
//# sourceMappingURL=chunk-G46OLCM2.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import{a}from"./chunk-EE54S7YV.js";import*as e from"react";function p({pressed:r,onPressedChange:n,getAccessibleName:o,componentName:d}){let t=a(),i=e.useRef(!1),c=e.useCallback(s=>{let u=o();t(`${u} ${s?"pressed":"unpressed"}`),n?.(s)},[t,n,o]);return e.useEffect(()=>{},[r,n,d]),{handlePressedChange:c}}export{p as a};
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
2
|
+
//# sourceMappingURL=chunk-GBFGUOFS.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/hooks/use-toggle-state.ts"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nimport { useLiveAnnouncer } from './use-live-announcer.js';\n\n/**\n * Options for the useToggleState hook\n */\ninterface UseToggleStateOptions {\n /** Controlled pressed state */\n pressed?: boolean;\n /** Callback when pressed state changes */\n onPressedChange?: (pressed: boolean) => void;\n /** Function to get the accessible name for announcements */\n getAccessibleName: () => string;\n /** Component name for warning messages */\n componentName: string;\n}\n\n/**\n * Hook for shared toggle button state management.\n * Provides accessibility announcements and controlled/uncontrolled warnings.\n *\n * @param options - Configuration options for the toggle state\n * @returns Object containing the handlePressedChange callback\n *\n * @example\n * ```tsx\n * const getAccessibleName = React.useCallback(() => 'Toggle button', []);\n *\n * const { handlePressedChange } = useToggleState({\n * pressed,\n * onPressedChange,\n * getAccessibleName,\n * componentName: '
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nimport { useLiveAnnouncer } from './use-live-announcer.js';\n\n/**\n * Options for the useToggleState hook\n */\ninterface UseToggleStateOptions {\n /** Controlled pressed state */\n pressed?: boolean;\n /** Callback when pressed state changes */\n onPressedChange?: (pressed: boolean) => void;\n /** Function to get the accessible name for announcements */\n getAccessibleName: () => string;\n /** Component name for warning messages */\n componentName: string;\n}\n\n/**\n * Hook for shared toggle button state management.\n * Provides accessibility announcements and controlled/uncontrolled warnings.\n *\n * @param options - Configuration options for the toggle state\n * @returns Object containing the handlePressedChange callback\n *\n * @example\n * ```tsx\n * const getAccessibleName = React.useCallback(() => 'Toggle button', []);\n *\n * const { handlePressedChange } = useToggleState({\n * pressed,\n * onPressedChange,\n * getAccessibleName,\n * componentName: 'Toggle',\n * });\n * ```\n */\nexport function useToggleState({ pressed, onPressedChange, getAccessibleName, componentName }: UseToggleStateOptions) {\n const announce = useLiveAnnouncer();\n\n // Track if we've already warned about controlled without handler\n const warnedRef = React.useRef(false);\n\n /**\n * Memoized handler for state changes with accessibility announcements.\n * Announces the new state immediately for screen readers.\n */\n const handlePressedChange = React.useCallback(\n (newPressed: boolean) => {\n const accessibleName = getAccessibleName();\n // Announce the state change for screen readers\n announce(`${accessibleName} ${newPressed ? 'pressed' : 'unpressed'}`);\n // Call the user's change handler\n onPressedChange?.(newPressed);\n },\n [announce, onPressedChange, getAccessibleName],\n );\n\n // Development-only warning for controlled/uncontrolled pattern\n // Only warns once to avoid console spam\n React.useEffect(() => {\n if (process.env.NODE_ENV === 'development' && pressed !== undefined && onPressedChange === undefined && !warnedRef.current) {\n warnedRef.current = true;\n console.warn(\n `${componentName}: You provided a \\`pressed\\` prop without an \\`onPressedChange\\` handler. ` +\n 'This will result in a read-only toggle button. If you want the button to be interactive, ' +\n 'you should provide an `onPressedChange` handler.',\n );\n }\n }, [pressed, onPressedChange, componentName]);\n\n return { handlePressedChange };\n}\n"],
|
|
5
5
|
"mappings": "mCAAA,UAAYA,MAAW,QAoChB,SAASC,EAAe,CAAE,QAAAC,EAAS,gBAAAC,EAAiB,kBAAAC,EAAmB,cAAAC,CAAc,EAA0B,CACpH,IAAMC,EAAWC,EAAiB,EAG5BC,EAAkB,SAAO,EAAK,EAM9BC,EAA4B,cAC/BC,GAAwB,CACvB,IAAMC,EAAiBP,EAAkB,EAEzCE,EAAS,GAAGK,CAAc,IAAID,EAAa,UAAY,WAAW,EAAE,EAEpEP,IAAkBO,CAAU,CAC9B,EACA,CAACJ,EAAUH,EAAiBC,CAAiB,CAC/C,EAIA,OAAM,YAAU,IAAM,CAStB,EAAG,CAACF,EAASC,EAAiBE,CAAa,CAAC,EAErC,CAAE,oBAAAI,CAAoB,CAC/B",
|
|
6
6
|
"names": ["React", "useToggleState", "pressed", "onPressedChange", "getAccessibleName", "componentName", "announce", "useLiveAnnouncer", "warnedRef", "handlePressedChange", "newPressed", "accessibleName"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{c as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{c as e}from"./chunk-CUNKWFKA.js";var s=["1","2","3","4"],r=["nowrap","wrap","wrap-reverse"],t=["start","center","end"],o={size:{type:"enum",className:"rt-r-size",values:s,default:"2",responsive:!0},wrap:{type:"enum",className:"rt-r-fw",values:r,responsive:!0},justify:{type:"enum",className:"rt-r-jc",values:t,responsive:!0},...e};export{o as a};
|
|
2
|
+
//# sourceMappingURL=chunk-GOV5I7I2.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{b as E,d as D}from"./chunk-PEP6MQJ2.js";import*as e from"react";import T from"classnames";import{useVirtualizer as F}from"@tanstack/react-virtual";var G=e.memo(function({label:r,isHighlighted:o,id:u,style:y,tabIndex:x,"data-highlighted":m,"data-index":p,onMouseEnter:f,onMouseLeave:v,onClick:h,onKeyDown:g}){return e.createElement("div",{id:u,role:"menuitem",className:T("rt-reset","rt-BaseMenuItem","rt-VirtualMenuItem"),style:y,tabIndex:x,"data-highlighted":m,"data-index":p,onMouseEnter:f,onMouseLeave:v,onClick:h,onKeyDown:g},r)},(n,r)=>!(n.label!==r.label||n["data-highlighted"]!==r["data-highlighted"]||n.style.height!==r.style.height||n.style.transform!==r.style.transform||n.tabIndex!==r.tabIndex||n.id!==r.id));function N({items:n,itemLabel:r,renderItem:o,size:u,estimatedItemSize:y,overscan:x=5,onSelect:m,className:p,style:f,"aria-label":v}){let h=e.useId(),g=e.useRef(null),[S,l]=e.useState(-1),{isInsideMenu:L,size:w,itemHeight:K}=D(),M=y??(u?E(u):K??E(w??"2"));if(!r&&!o)throw new Error("VirtualMenu requires either itemLabel or renderItem prop");let P=e.useMemo(()=>r?typeof r=="function"?r:t=>t[r]:null,[r]),c=e.useMemo(()=>n.length===0||S<0?-1:Math.min(S,n.length-1),[S,n.length]),$=e.useMemo(()=>typeof M=="function"?M:()=>M,[M]),I=F({count:n.length,getScrollElement:()=>g.current,estimateSize:$,overscan:x}),j=I.getVirtualItems(),R=e.useRef(n),b=e.useRef(m);R.current=n,b.current=m;let d=e.useRef(I.scrollToIndex);d.current=I.scrollToIndex;let k=e.useRef(c);k.current=c;let A=e.useCallback(t=>{let s=t.currentTarget.dataset.index;s!=null&&l(Number(s))},[]),B=e.useCallback(t=>{let s=t.currentTarget.dataset.index;if(s!=null){let a=Number(s),i=R.current;a>=0&&a<i.length&&b.current?.(i[a],a)}},[]),_=e.useCallback(()=>{},[]),q=e.useCallback(t=>{if(t.key==="Enter"||t.key===" "){t.preventDefault();let s=t.currentTarget.dataset.index;if(s!=null){let a=Number(s),i=R.current;a>=0&&a<i.length&&b.current?.(i[a],a)}}},[]),O=e.useCallback(t=>{let s=R.current,a=k.current;switch(t.key){case"ArrowDown":{t.preventDefault();let i=a<s.length-1?a+1:0;l(i),d.current(i,{align:"auto"});break}case"ArrowUp":{t.preventDefault();let i=a>0?a-1:s.length-1;l(i),d.current(i,{align:"auto"});break}case"Home":{t.preventDefault(),l(0),d.current(0,{align:"start"});break}case"End":{t.preventDefault();let i=s.length-1;l(i),d.current(i,{align:"end"});break}case"Enter":case" ":{t.preventDefault(),a>=0&&a<s.length&&b.current?.(s[a],a);break}case"Tab":{t.preventDefault();break}case"Escape":{t.currentTarget.blur();break}}},[]),H=e.useCallback(t=>`${h}-item-${t}`,[h]),U=e.useMemo(()=>({overflow:"auto",position:"relative",...f}),[f]),V=I.getTotalSize(),W=e.useMemo(()=>({height:`${V}px`,width:"100%",position:"relative"}),[V]);return e.createElement("div",{ref:g,role:L?"group":"menu","aria-label":v,"aria-activedescendant":c>=0?H(c):void 0,tabIndex:0,onKeyDown:O,className:T("rt-VirtualMenuRoot",p),style:U},e.createElement("div",{className:"rt-VirtualMenuViewport",style:W},j.map(t=>{let s=n[t.index],a=t.index,i=c===a,Y={height:t.size,transform:`translateY(${t.start}px)`},C={id:H(a),isHighlighted:i,style:Y,tabIndex:i?0:-1,"data-highlighted":i?!0:void 0,"data-index":a,onMouseEnter:A,onMouseLeave:_,onClick:B,onKeyDown:q};return o?e.createElement(o,{key:t.key,item:s,index:a,...C}):e.createElement(G,{key:t.key,label:P(s),...C})})))}N.displayName="VirtualMenu";var z=e.forwardRef(({className:n,children:r,...o},u)=>e.createElement("div",{ref:u,role:"menuitem",className:T("rt-reset","rt-BaseMenuItem","rt-VirtualMenuItem",n),...o},r));z.displayName="VirtualMenu.Item";var J=e.memo(z,(n,r)=>{let o=n.style,u=r.style;return!(o?.height!==u?.height||o?.transform!==u?.transform||n["data-highlighted"]!==r["data-highlighted"]||n.tabIndex!==r.tabIndex||n.id!==r.id||n.className!==r.className||n.children!==r.children)}),ee=Object.assign(N,{Item:J});export{ee as a};
|
|
2
|
+
//# sourceMappingURL=chunk-GWGQ73PU.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/components/virtual-menu.tsx"],
|
|
4
|
+
"sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { useVirtualizer } from '@tanstack/react-virtual';\nimport { useMenuContext, getMenuItemHeight } from './_internal/menu-context.js';\n\nimport type { MenuSize } from './_internal/menu-context.js';\n\n/**\n * VirtualMenu - A virtualized menu component for rendering large lists efficiently.\n *\n * Uses TanStack Virtual to render only visible items.\n * Works inside any container (DropdownMenu.Content, Popover.Content, etc.)\n *\n * @example\n * // Simple usage with itemLabel\n * <VirtualMenu\n * items={items}\n * itemLabel={(item) => item.name}\n * onSelect={handleSelect}\n * />\n *\n * @example\n * // Custom rendering with renderItem\n * const UserItem = React.memo(({ item, ...props }) => (\n * <VirtualMenu.Item {...props}>\n * <Avatar src={item.avatar} />\n * {item.name}\n * </VirtualMenu.Item>\n * ));\n *\n * <VirtualMenu items={users} renderItem={UserItem} onSelect={handleSelect} />\n */\n\n// ============================================================================\n// Types\n// ============================================================================\n\n/** Props passed to custom renderItem components */\ninterface VirtualMenuRenderItemProps<T> {\n /** The item data */\n item: T;\n /** Index in the items array */\n index: number;\n /** Whether this item is currently highlighted */\n isHighlighted: boolean;\n /** Unique ID for accessibility */\n id: string;\n /** Positioning styles - must be applied */\n style: React.CSSProperties;\n /** Tab index for focus management */\n tabIndex: number;\n /** Data attribute for CSS styling */\n 'data-highlighted': true | undefined;\n /** Data attribute for event delegation */\n 'data-index': number;\n /** Mouse enter handler */\n onMouseEnter: (e: React.MouseEvent<HTMLElement>) => void;\n /** Mouse leave handler */\n onMouseLeave: () => void;\n /** Click handler */\n onClick: (e: React.MouseEvent<HTMLElement>) => void;\n /** Keyboard handler for Enter/Space activation */\n onKeyDown: (e: React.KeyboardEvent<HTMLElement>) => void;\n}\n\ninterface VirtualMenuProps<T> {\n /** Array of items to render */\n items: T[];\n /**\n * Simple label accessor for basic text items.\n * Can be a property key or a function.\n * @example\n * itemLabel=\"name\"\n * itemLabel={(item) => item.name}\n */\n itemLabel?: keyof T | ((item: T) => React.ReactNode);\n /**\n * Custom component for rendering items.\n * Must be memoized (React.memo) for optimal performance.\n * @example\n * const MyItem = React.memo(({ item, ...props }) => (\n * <VirtualMenu.Item {...props}>{item.name}</VirtualMenu.Item>\n * ));\n * <VirtualMenu items={items} renderItem={MyItem} />\n */\n renderItem?: React.ComponentType<VirtualMenuRenderItemProps<T>>;\n /**\n * Menu size - controls item height.\n * Automatically inherited from parent DropdownMenu.Content/ContextMenu.Content.\n * Only set manually when using VirtualMenu outside of a menu context.\n * @default '2' (or inherited from context)\n */\n size?: MenuSize;\n /**\n * Estimated height of each item in pixels.\n * Can be a number (same for all) or a function (per-item).\n * Usually not needed - height is automatically derived from size prop/context.\n * Use this only for custom item heights (e.g., variable height items).\n */\n estimatedItemSize?: number | ((index: number) => number);\n /** Number of items to render outside visible area */\n overscan?: number;\n /** Callback when an item is selected */\n onSelect?: (item: T, index: number) => void;\n /** Additional class name */\n className?: string;\n /** Additional styles */\n style?: React.CSSProperties;\n /** Accessible label for the menu */\n 'aria-label'?: string;\n}\n\n// ============================================================================\n// Internal Memoized Item Component\n// ============================================================================\n\ninterface SimpleItemProps {\n label: React.ReactNode;\n isHighlighted: boolean;\n id: string;\n style: React.CSSProperties;\n tabIndex: number;\n 'data-highlighted': true | undefined;\n 'data-index': number;\n onMouseEnter: (e: React.MouseEvent<HTMLElement>) => void;\n onMouseLeave: () => void;\n onClick: (e: React.MouseEvent<HTMLElement>) => void;\n onKeyDown: (e: React.KeyboardEvent<HTMLElement>) => void;\n}\n\nconst SimpleItem = React.memo(\n function SimpleItem({\n label,\n isHighlighted: _isHighlighted,\n id,\n style,\n tabIndex,\n 'data-highlighted': dataHighlighted,\n 'data-index': dataIndex,\n onMouseEnter,\n onMouseLeave,\n onClick,\n onKeyDown,\n }: SimpleItemProps) {\n return (\n <div\n id={id}\n role=\"menuitem\"\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-VirtualMenuItem')}\n style={style}\n tabIndex={tabIndex}\n data-highlighted={dataHighlighted}\n data-index={dataIndex}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onClick={onClick}\n onKeyDown={onKeyDown}\n >\n {label}\n </div>\n );\n },\n (prev, next) => {\n // Custom comparison - only re-render if these change\n if (prev.label !== next.label) return false;\n if (prev['data-highlighted'] !== next['data-highlighted']) return false;\n if (prev.style.height !== next.style.height) return false;\n if (prev.style.transform !== next.style.transform) return false;\n if (prev.tabIndex !== next.tabIndex) return false;\n if (prev.id !== next.id) return false;\n // Event handlers are stable, skip comparison\n return true;\n },\n);\n\n// ============================================================================\n// VirtualMenu Component\n// ============================================================================\n\nfunction VirtualMenuRoot<T>({\n items,\n itemLabel,\n renderItem: RenderItem,\n size: sizeProp,\n estimatedItemSize: estimatedItemSizeProp,\n overscan = 5,\n onSelect,\n className,\n style,\n 'aria-label': ariaLabel,\n}: VirtualMenuProps<T>) {\n const menuId = React.useId();\n const parentRef = React.useRef<HTMLDivElement>(null);\n const [highlightedIndex, setHighlightedIndex] = React.useState<number>(-1);\n const { isInsideMenu, size: contextSize, itemHeight: contextItemHeight } = useMenuContext();\n\n // Resolve item height: explicit prop > own size > parent menu > default size '2'.\n // Heights follow the theme scaling, like the --base-menu-item-height token.\n const estimatedItemSize =\n estimatedItemSizeProp ??\n (sizeProp\n ? getMenuItemHeight(sizeProp)\n : (contextItemHeight ?? getMenuItemHeight(contextSize ?? '2')));\n\n // Validate props\n if (!itemLabel && !RenderItem) {\n throw new Error('VirtualMenu requires either itemLabel or renderItem prop');\n }\n\n // Normalize itemLabel to a function\n const getLabel = React.useMemo(() => {\n if (!itemLabel) return null;\n if (typeof itemLabel === 'function') return itemLabel;\n return (item: T) => item[itemLabel] as React.ReactNode;\n }, [itemLabel]);\n\n // Derive safe highlighted index\n const safeHighlightedIndex = React.useMemo(() => {\n if (items.length === 0) return -1;\n if (highlightedIndex < 0) return -1;\n return Math.min(highlightedIndex, items.length - 1);\n }, [highlightedIndex, items.length]);\n\n // Normalize estimatedItemSize to a function\n const getItemSize = React.useMemo(\n () =>\n typeof estimatedItemSize === 'function'\n ? estimatedItemSize\n : () => estimatedItemSize,\n [estimatedItemSize],\n );\n\n const virtualizer = useVirtualizer({\n count: items.length,\n getScrollElement: () => parentRef.current,\n estimateSize: getItemSize,\n overscan,\n });\n\n const virtualItems = virtualizer.getVirtualItems();\n\n // Refs for stable handler references\n const itemsRef = React.useRef(items);\n const onSelectRef = React.useRef(onSelect);\n itemsRef.current = items;\n onSelectRef.current = onSelect;\n\n const scrollToIndexRef = React.useRef(virtualizer.scrollToIndex);\n scrollToIndexRef.current = virtualizer.scrollToIndex;\n\n const highlightedIndexRef = React.useRef(safeHighlightedIndex);\n highlightedIndexRef.current = safeHighlightedIndex;\n\n // Stable event handlers\n const handleItemMouseEnter = React.useCallback((e: React.MouseEvent<HTMLElement>) => {\n const index = e.currentTarget.dataset.index;\n if (index != null) {\n setHighlightedIndex(Number(index));\n }\n }, []);\n\n const handleItemClick = React.useCallback((e: React.MouseEvent<HTMLElement>) => {\n const index = e.currentTarget.dataset.index;\n if (index != null) {\n const idx = Number(index);\n const currentItems = itemsRef.current;\n if (idx >= 0 && idx < currentItems.length) {\n onSelectRef.current?.(currentItems[idx], idx);\n }\n }\n }, []);\n\n const noop = React.useCallback(() => {}, []);\n\n // Item-level keyboard handler for Enter/Space activation (satisfies a11y lint rule)\n const handleItemKeyDown = React.useCallback((e: React.KeyboardEvent<HTMLElement>) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n const index = e.currentTarget.dataset.index;\n if (index != null) {\n const idx = Number(index);\n const currentItems = itemsRef.current;\n if (idx >= 0 && idx < currentItems.length) {\n onSelectRef.current?.(currentItems[idx], idx);\n }\n }\n }\n }, []);\n\n // Keyboard navigation\n const handleKeyDown = React.useCallback((e: React.KeyboardEvent) => {\n const currentItems = itemsRef.current;\n const currentHighlightedIndex = highlightedIndexRef.current;\n\n switch (e.key) {\n case 'ArrowDown': {\n e.preventDefault();\n const nextIndex =\n currentHighlightedIndex < currentItems.length - 1 ? currentHighlightedIndex + 1 : 0;\n setHighlightedIndex(nextIndex);\n scrollToIndexRef.current(nextIndex, { align: 'auto' });\n break;\n }\n case 'ArrowUp': {\n e.preventDefault();\n const prevIndex =\n currentHighlightedIndex > 0 ? currentHighlightedIndex - 1 : currentItems.length - 1;\n setHighlightedIndex(prevIndex);\n scrollToIndexRef.current(prevIndex, { align: 'auto' });\n break;\n }\n case 'Home': {\n e.preventDefault();\n setHighlightedIndex(0);\n scrollToIndexRef.current(0, { align: 'start' });\n break;\n }\n case 'End': {\n e.preventDefault();\n const lastIndex = currentItems.length - 1;\n setHighlightedIndex(lastIndex);\n scrollToIndexRef.current(lastIndex, { align: 'end' });\n break;\n }\n case 'Enter':\n case ' ': {\n e.preventDefault();\n if (currentHighlightedIndex >= 0 && currentHighlightedIndex < currentItems.length) {\n onSelectRef.current?.(currentItems[currentHighlightedIndex], currentHighlightedIndex);\n }\n break;\n }\n case 'Tab': {\n e.preventDefault();\n break;\n }\n case 'Escape': {\n (e.currentTarget as HTMLElement).blur();\n break;\n }\n }\n }, []);\n\n // Item ID generator\n const getItemId = React.useCallback(\n (index: number) => `${menuId}-item-${index}`,\n [menuId],\n );\n\n // Memoize styles\n const rootStyle = React.useMemo(\n () => ({\n overflow: 'auto' as const,\n position: 'relative' as const,\n ...style,\n }),\n [style],\n );\n\n const totalSize = virtualizer.getTotalSize();\n const viewportStyle = React.useMemo(\n () => ({\n height: `${totalSize}px`,\n width: '100%' as const,\n position: 'relative' as const,\n }),\n [totalSize],\n );\n\n return (\n <div\n ref={parentRef}\n role={isInsideMenu ? 'group' : 'menu'}\n aria-label={ariaLabel}\n aria-activedescendant={safeHighlightedIndex >= 0 ? getItemId(safeHighlightedIndex) : undefined}\n tabIndex={0}\n onKeyDown={handleKeyDown}\n className={classNames('rt-VirtualMenuRoot', className)}\n style={rootStyle}\n >\n <div className=\"rt-VirtualMenuViewport\" style={viewportStyle}>\n {virtualItems.map((virtualRow) => {\n const item = items[virtualRow.index];\n const index = virtualRow.index;\n const isHighlighted = safeHighlightedIndex === index;\n\n const itemStyle: React.CSSProperties = {\n height: virtualRow.size,\n transform: `translateY(${virtualRow.start}px)`,\n };\n\n const commonProps = {\n id: getItemId(index),\n isHighlighted,\n style: itemStyle,\n tabIndex: isHighlighted ? 0 : -1,\n 'data-highlighted': isHighlighted ? true as const : undefined,\n 'data-index': index,\n onMouseEnter: handleItemMouseEnter,\n onMouseLeave: noop,\n onClick: handleItemClick,\n onKeyDown: handleItemKeyDown,\n };\n\n // Use renderItem if provided, otherwise use SimpleItem with itemLabel\n if (RenderItem) {\n return (\n <RenderItem\n key={virtualRow.key}\n item={item}\n index={index}\n {...commonProps}\n />\n );\n }\n\n return (\n <SimpleItem\n key={virtualRow.key}\n label={getLabel!(item)}\n {...commonProps}\n />\n );\n })}\n </div>\n </div>\n );\n}\n\nVirtualMenuRoot.displayName = 'VirtualMenu';\n\n// ============================================================================\n// VirtualMenu.Item Component (for custom renderItem usage)\n// ============================================================================\n\ninterface VirtualMenuItemProps extends React.ComponentPropsWithoutRef<'div'> {\n children: React.ReactNode;\n /** Data attribute for highlight styling */\n 'data-highlighted'?: true | undefined;\n /** Data attribute for event delegation */\n 'data-index'?: number;\n}\n\nconst VirtualMenuItemInner = React.forwardRef<HTMLDivElement, VirtualMenuItemProps>(\n ({ className, children, ...props }, forwardedRef) => {\n return (\n <div\n ref={forwardedRef}\n role=\"menuitem\"\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-VirtualMenuItem', className)}\n {...props}\n >\n {children}\n </div>\n );\n },\n);\n\nVirtualMenuItemInner.displayName = 'VirtualMenu.Item';\n\n// Memoized with custom comparison\nconst VirtualMenuItem = React.memo(VirtualMenuItemInner, (prevProps, nextProps) => {\n const prevStyle = prevProps.style as React.CSSProperties | undefined;\n const nextStyle = nextProps.style as React.CSSProperties | undefined;\n if (prevStyle?.height !== nextStyle?.height) return false;\n if (prevStyle?.transform !== nextStyle?.transform) return false;\n if (prevProps['data-highlighted'] !== nextProps['data-highlighted']) return false;\n if (prevProps.tabIndex !== nextProps.tabIndex) return false;\n if (prevProps.id !== nextProps.id) return false;\n if (prevProps.className !== nextProps.className) return false;\n if (prevProps.children !== nextProps.children) return false;\n return true;\n});\n\n// ============================================================================\n// Exports\n// ============================================================================\n\nconst VirtualMenu = Object.assign(VirtualMenuRoot, {\n Item: VirtualMenuItem,\n});\n\nexport { VirtualMenu };\nexport type { VirtualMenuProps, VirtualMenuItemProps, VirtualMenuRenderItemProps };\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "classNames", "useVirtualizer", "SimpleItem", "label", "_isHighlighted", "id", "style", "tabIndex", "dataHighlighted", "dataIndex", "onMouseEnter", "onMouseLeave", "onClick", "onKeyDown", "classNames", "prev", "next", "VirtualMenuRoot", "items", "itemLabel", "RenderItem", "sizeProp", "estimatedItemSizeProp", "overscan", "onSelect", "className", "ariaLabel", "menuId", "parentRef", "highlightedIndex", "setHighlightedIndex", "isInsideMenu", "contextSize", "contextItemHeight", "useMenuContext", "estimatedItemSize", "getMenuItemHeight", "getLabel", "item", "safeHighlightedIndex", "getItemSize", "virtualizer", "useVirtualizer", "virtualItems", "itemsRef", "onSelectRef", "scrollToIndexRef", "highlightedIndexRef", "handleItemMouseEnter", "e", "index", "handleItemClick", "idx", "currentItems", "noop", "handleItemKeyDown", "handleKeyDown", "currentHighlightedIndex", "nextIndex", "prevIndex", "lastIndex", "getItemId", "rootStyle", "totalSize", "viewportStyle", "virtualRow", "isHighlighted", "itemStyle", "commonProps", "VirtualMenuItemInner", "children", "props", "forwardedRef", "VirtualMenuItem", "prevProps", "nextProps", "prevStyle", "nextStyle", "VirtualMenu"]
|
|
7
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as o}from"./chunk-KRJTW535.js";import{a as e}from"./chunk-NZJGC6ZW.js";import{a as t,e as a}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{b as o}from"./chunk-KRJTW535.js";import{a as e}from"./chunk-NZJGC6ZW.js";import{a as t,e as a}from"./chunk-CUNKWFKA.js";var s=["1","2","3","4","5","6","7","8","9"],r=["raised","solid","soft","surface","outline"],f=["cover","contain","fill","scale-down","none"],c={...e,size:{type:"enum",className:"rt-r-size",values:s,default:"3",responsive:!0},variant:{type:"enum",className:"rt-variant",values:r,default:"raised"},...a,...o,fallback:{type:"ReactNode",required:!0},status:{type:"enum",values:t,default:void 0},badge:{type:"ReactNode",default:void 0},fit:{type:"enum",className:"rt-r-fit",values:f,default:"cover",responsive:!0}};export{c as a};
|
|
2
|
+
//# sourceMappingURL=chunk-HELY5CSU.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as T}from"./chunk-ENPQJYXZ.js";import{a as u}from"./chunk-MJJ7XDIP.js";import{c as h}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as T}from"./chunk-ENPQJYXZ.js";import{a as u}from"./chunk-MJJ7XDIP.js";import{c as h}from"./chunk-RGZKWVJC.js";import{e as d}from"./chunk-3YLYGKFB.js";import{a as b}from"./chunk-ELAW7ZUG.js";import{a as S}from"./chunk-OS3FCYZY.js";var I={};S(I,{Anchor:()=>M,Close:()=>N,Content:()=>x,Root:()=>E,Toolbar:()=>w,Trigger:()=>L});import*as o from"react";import c from"classnames";import{Popover as P}from"radix-ui";var y=o.createContext(null),g=t=>{let e=o.useContext(y);return e},E=t=>o.createElement(P.Root,{...t});E.displayName="Popover.Root";var L=o.forwardRef(({children:t,...e},r)=>o.createElement(P.Trigger,{...e,ref:r,asChild:!0},u(t)));L.displayName="Popover.Trigger";var x=o.forwardRef((t,e)=>{let r=d(t,T.size),{className:s,forceMount:n,container:a,...i}=b(r,T),p=o.useRef(null),m=o.useCallback(l=>{p.current=l,typeof e=="function"?e(l):e&&(e.current=l)},[e]),[f,R]=o.useState(void 0),C=o.useCallback(l=>{let v=p.current;v&&(l>0?(v.style.setProperty("--popover-toolbar-offset",`${l}px`),v.setAttribute("data-has-toolbar","true")):(v.style.removeProperty("--popover-toolbar-offset"),v.removeAttribute("data-has-toolbar")))},[]);return o.createElement(P.Portal,{container:a,forceMount:n},o.createElement(h,{asChild:!0},o.createElement(P.Content,{align:"start",sideOffset:8,collisionPadding:10,...i,ref:m,"aria-labelledby":f,className:c("rt-PopperContent","rt-PopoverContent",s)},o.createElement(y.Provider,{value:o.useMemo(()=>({contentRef:p,setToolbarOffset:C,setLabelId:R}),[C])},r.children))))});x.displayName="Popover.Content";var N=o.forwardRef(({children:t,...e},r)=>o.createElement(P.Close,{...e,ref:r,asChild:!0},u(t)));N.displayName="Popover.Close";var M=o.forwardRef(({children:t,...e},r)=>o.createElement(P.Anchor,{...e,ref:r}));M.displayName="Popover.Anchor";var A=o.forwardRef(({className:t,children:e,...r},s)=>{let n=g("Popover.Toolbar"),a=o.useRef(null),i=o.useCallback(p=>{a.current=p,typeof s=="function"?s(p):s&&(s.current=p)},[s]);return o.useEffect(()=>{if(!n||!a.current)return;let p=a.current,m=()=>{let R=p.getBoundingClientRect().height;n.setToolbarOffset(R)};m();let f=new ResizeObserver(m);return f.observe(p),()=>{f.disconnect(),n.setToolbarOffset(0)}},[n]),o.createElement("div",{...r,ref:i,className:c("rt-PopoverToolbar",t)},e)});A.displayName="Popover.Toolbar";var D=o.forwardRef(({className:t,...e},r)=>o.createElement("div",{...e,ref:r,className:c("rt-PopoverToolbarSection","rt-PopoverToolbarLeft",t)}));D.displayName="Popover.Toolbar.Left";var H=o.forwardRef(({className:t,...e},r)=>o.createElement("div",{...e,ref:r,className:c("rt-PopoverToolbarSection","rt-PopoverToolbarCenter",t)}));H.displayName="Popover.Toolbar.Center";var O=o.forwardRef(({className:t,...e},r)=>o.createElement("div",{...e,ref:r,className:c("rt-PopoverToolbarSection","rt-PopoverToolbarRight",t)}));O.displayName="Popover.Toolbar.Right";var W=o.forwardRef(({className:t,id:e,...r},s)=>{let n=g("Popover.Toolbar.Title"),a=o.useId(),i=e??`rt-popover-toolbar-title-${a}`;return o.useEffect(()=>(n?.setLabelId(i),()=>n?.setLabelId(void 0)),[n,i]),o.createElement("span",{...r,id:i,ref:s,className:c("rt-PopoverToolbarTitle",t)})});W.displayName="Popover.Toolbar.Title";var w=Object.assign(A,{Left:D,Center:H,Right:O,Title:W});export{E as a,L as b,x as c,N as d,M as e,w as f,I as g};
|
|
2
|
+
//# sourceMappingURL=chunk-HGG3ULNK.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e}from"./chunk-HAGKI7NA.js";import{a as p}from"./chunk-K53W3ELO.js";import{a as s}from"./chunk-2FPJ6Q2N.js";import{b as t}from"./chunk-FWB47YCH.js";import{a as o}from"./chunk-ELAW7ZUG.js";import*as r from"react";import f from"classnames";var G=r.forwardRef((i,m)=>{let{className:a,asChild:d,as:n="div",...P}=o(i,e,p,s);return r.createElement(d?t:n,{...P,ref:m,className:f("rt-Grid",a)})});G.displayName="Grid";export{G as a};
|
|
2
|
+
//# sourceMappingURL=chunk-HZNOHY6O.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as R}from"./chunk-KRDRQU4G.js";import{a as f}from"./chunk-P3WB3K2M.js";import{d as G}from"./chunk-3YLYGKFB.js";import{a as n}from"./chunk-ELAW7ZUG.js";import{a as S}from"./chunk-OS3FCYZY.js";var _={};S(_,{Item:()=>x,Root:()=>y});import*as o from"react";import c from"classnames";import{Context as v}from"radix-ui/internal";import{RadioGroup as d}from"radix-ui";var l="RadioGroup",[h]=v.createContextScope(l,[d.createRadioGroupScope]),P=d.createRadioGroupScope(),[E,I]=h(l),y=o.forwardRef(({color:a=R.color.default,size:e,variant:t=R.variant.default,...r},i)=>{let s=G(e,R.size),{__scopeRadioGroup:p,className:m,...C}=r,N=P(p);return o.createElement(E,{scope:p,color:a,size:s,variant:t},o.createElement(d.Root,{...N,...C,ref:i,className:c("rt-RadioGroupRoot",m)}))});y.displayName="RadioGroup.Root";var x=o.forwardRef((a,e)=>{let{__scopeRadioGroup:t,children:r,className:i,style:s,...p}=a,{size:m}=I("RadioGroupItem",t);return r?o.createElement(f,{as:"label",size:m,className:c("rt-RadioGroupItem",i),style:s},o.createElement(u,{__scopeRadioGroup:t,...p,ref:e}),r&&o.createElement("span",{className:"rt-RadioGroupItemInner"},r)):o.createElement(u,{__scopeRadioGroup:t,...p,ref:e,className:i,style:s})});x.displayName="RadioGroup.Item";var u=o.forwardRef(({__scopeRadioGroup:a,...e},t)=>{let r=I("RadioGroupItemRadio",a),i=P(a),{color:s,className:p}=n({...e,...r},R);return o.createElement(d.Item,{...i,"data-accent-color":s,...e,asChild:!1,ref:t,className:c("rt-reset","rt-BaseRadioRoot",p)})});u.displayName="RadioGroup.ItemRadio";export{y as a,x as b,_ as c};
|
|
2
|
+
//# sourceMappingURL=chunk-IAC5IOPN.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
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';\n\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-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 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 } = props;\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> {}\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 );\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": "wMAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,UAAAE,EAAA,SAAAC,IAEA,UAAYC,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,WAAAC,MAAe,oBACxB,OAAS,cAAcC,MAA2B,WAUlD,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,EAS5DO,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,EAAIN,EACjDO,EAAkBf,EAAmBY,CAAiB,EAC5D,OACE,gBAACX,EAAA,CACC,MAAOW,EACP,MAAOR,EACP,KAAMM,EACN,QAASH,GAET,gBAACR,EAAoB,KAApB,CACE,GAAGgB,EACH,GAAGD,EACJ,IAAKL,EACL,UAAWO,EAAW,oBAAqBH,CAAS,EACtD,CACF,CAEJ,CACF,EACAV,EAAe,YAAc,kBAK7B,IAAMc,EAAuB,aAC3B,CAACC,EAA0CT,IAAiB,CAC1D,GAAM,CAAE,kBAAAG,EAAmB,SAAAO,EAAU,UAAAN,EAAW,MAAAO,EAAO,GAAGZ,CAAM,EAAIU,EAC9D,CAAE,KAAAR,CAAK,EAAIR,EAAqB,iBAAkBU,CAAiB,EAIzE,OAAIO,EAEA,gBAACE,EAAA,CACC,GAAG,QACH,KAAMX,EACN,UAAWM,EAAW,oBAAqBH,CAAS,EACpD,MAAOO,GAEP,gBAACE,EAAA,CACC,kBAAmBV,EAClB,GAAGJ,EACJ,IAAKC,EACP,EACCU,GAAY,gBAAC,QAAK,UAAU,0BAA0BA,CAAS,CAClE,EAKF,gBAACG,EAAA,CACC,kBAAmBV,EAClB,GAAGJ,EACJ,IAAKC,EACL,UAAWI,EACX,MAAOO,EACT,CAEJ,CACF,EACAH,EAAe,YAAc,kBAK7B,IAAMK,EAA4B,aAGhC,CAAC,CAAE,kBAAAV,EAAmB,GAAGJ,CAAM,EAAGC,IAAiB,CACnD,IAAMc,EAAUrB,EAAqB,sBAAuBU,CAAiB,EACvEG,EAAkBf,EAAmBY,CAAiB,EACtD,CAAE,MAAAR,EAAO,UAAAS,CAAU,EAAIW,EAC3B,CAAE,GAAGhB,EAAO,GAAGe,CAAQ,EACvBlB,CACF,EACA,OACE,gBAACN,EAAoB,KAApB,CACE,GAAGgB,EACJ,oBAAmBX,EAClB,GAAGI,EACJ,QAAS,GACT,IAAKC,EACL,UAAWO,EAAW,WAAY,mBAAoBH,CAAS,EACjE,CAEJ,CAAC,EACDS,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", "radioGroupScope", "classNames", "RadioGroupItem", "_props", "children", "style", "Text", "RadioGroupItemRadio", "context", "extractProps"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as c}from"./chunk-2N2AQNJH.js";import{a as p}from"./chunk-LNFN35ZE.js";import{a as u}from"./chunk-6WANXT2G.js";import*as t from"react";import v from"classnames";var E={loud:"solid",medium:"raised",quiet:"ghost"};function g(e){if(e["aria-label"]||e["aria-labelledby"])return;console.error("Button: an `iconOnly` button must have an accessible name. Pass `aria-label`, or `aria-labelledby` referencing a label element.")}var w=t.forwardRef(({className:e,style:r,tooltip:a,tooltipSide:d="top",tooltipAlign:m="center",tooltipDelayDuration:B,tooltipDisableHoverableContent:f,iconOnly:s=!1,emphasis:o,variant:i,...n},y)=>{let{tooltipId:b,hasTooltip:P,accessibilityProps:R}=c(a);if(s&&(g(n),n.fullWidth=!1),o!==void 0&&i!==void 0)throw new Error("Button: pass `emphasis` or `variant`, not both. They set the same thing.");let h=o!==void 0?E[o]:i,l=t.createElement(u,{...n,variant:h,...R,ref:y,"data-icon-only":s||void 0,className:v("rt-Button",e),style:r});return P?t.createElement(p,{content:a,side:d,align:m,delayDuration:B,disableHoverableContent:f,id:b},l):l});w.displayName="Button";export{w as a};
|
|
2
|
+
//# sourceMappingURL=chunk-IN6ZEGDK.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/components/button.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\n\nimport { BaseButton } from './_internal/base-button.js';\nimport { Tooltip } from './tooltip.js';\nimport { useTooltipWrapper } from '../hooks/use-tooltip-wrapper.js';\nimport type { BaseButtonProps } from './_internal/base-button.js';\n\ntype ButtonElement = React.ElementRef<typeof BaseButton>;\n\n/**\n * Tooltip configuration props that can be passed to Button\n * These props are forwarded to the underlying Tooltip component\n */\nexport interface ButtonTooltipProps {\n /** Content to display in the tooltip on hover/focus */\n tooltip?: React.ReactNode;\n /** Side of the button where the tooltip should appear */\n tooltipSide?: 'top' | 'right' | 'bottom' | 'left';\n /** Alignment of the tooltip relative to the button */\n tooltipAlign?: 'start' | 'center' | 'end';\n /** Delay before showing the tooltip (in milliseconds) */\n tooltipDelayDuration?: number;\n /** Whether to disable hoverable content behavior */\n tooltipDisableHoverableContent?: boolean;\n}\n\n/**\n * Core Button props excluding the 'as' prop for polymorphic behavior\n * Combines BaseButton props with tooltip functionality\n */\ntype ButtonEmphasis = 'loud' | 'medium' | 'quiet';\n\n/** `emphasis` is a button's rank: loud is `solid`, medium is `raised`, quiet is `ghost`. */\nconst EMPHASIS_VARIANT = { loud: 'solid', medium: 'raised', quiet: 'ghost' } as const;\n\n/**\n * A button states its rank with `emphasis` or its look with `variant`, never both.\n */\ntype ButtonRankProps =\n | {\n /** The button's look. `outline` and `surface` have no emphasis of their own. */\n variant?: BaseButtonProps['variant'];\n emphasis?: never;\n }\n | {\n /** The button's rank: `loud` (solid, the default), `medium` (raised) or `quiet` (ghost). */\n emphasis?: ButtonEmphasis;\n variant?: never;\n };\n\n/**\n * An icon-only button is square and holds only its icon, so it has no visible text: the type\n * requires `aria-label` or `aria-labelledby`. It never takes the full width.\n */\ntype ButtonIconOnlyProps =\n | {\n /** Makes the button square and shows only the icon in `children`. Requires `aria-label` or `aria-labelledby`. */\n iconOnly: true;\n /** The button's name for screen readers. Required with `iconOnly` unless `aria-labelledby` is set. */\n 'aria-label': string;\n fullWidth?: never;\n }\n | {\n /** Makes the button square and shows only the icon in `children`. Requires `aria-label` or `aria-labelledby`. */\n iconOnly: true;\n /** The id of an element that names this button. Use it instead of `aria-label`. */\n 'aria-labelledby': string;\n fullWidth?: never;\n }\n | { iconOnly?: false };\n\ntype ButtonOwnProps = Omit<BaseButtonProps, 'as' | 'variant'> & ButtonRankProps & ButtonTooltipProps & ButtonIconOnlyProps;\n\n/**\n * Polymorphic Button props that support rendering as different HTML elements\n * @template C - The element type to render as (defaults to 'button')\n */\ntype ButtonProps<C extends React.ElementType = 'button'> = ButtonOwnProps & {\n /** Element type to render as (e.g., 'a', 'span', etc.) */\n as?: C;\n} & Omit<React.ComponentPropsWithoutRef<C>, keyof ButtonOwnProps>;\n\n/**\n * Button component type that supports polymorphic rendering\n * @template C - The element type to render as\n */\ntype ButtonComponent = <C extends React.ElementType = 'button'>(props: ButtonProps<C> & { ref?: React.ForwardedRef<ButtonElement> }) => React.ReactElement | null;\n\n/**\n * An icon-only button must have an accessible name. Throws in development, logs otherwise.\n */\nfunction validateIconButtonName(props: Record<string, unknown>) {\n if (props['aria-label'] || props['aria-labelledby']) return;\n const errorMessage =\n 'Button: an `iconOnly` button must have an accessible name. Pass `aria-label`, or ' +\n '`aria-labelledby` referencing a label element.';\n if (process.env.NODE_ENV === 'development') throw new Error(errorMessage);\n console.error(errorMessage);\n}\n\n/**\n * Button component for triggering actions throughout your interface\n *\n * The Button component is the primary interactive element in the Kookie User Interface.\n * It provides six visual variants, four sizes, comprehensive color options, and built-in\n * tooltip support. The component automatically handles icon sizing, supports responsive\n * layouts, and provides accessibility compliance out of the box.\n *\n * @example\n * ```tsx\n * // Basic button\n * <Button>Click me</Button>\n *\n * // Button with variant and size\n * <Button variant=\"solid\" size=\"3\">Primary Action</Button>\n *\n * // Button with tooltip\n * <Button tooltip=\"Save your progress\">Save</Button>\n *\n * // Polymorphic button as link\n * <Button as=\"a\" href=\"/dashboard\">Go to Dashboard</Button>\n *\n * // Square, icon-only button: needs an accessible name\n * <Button iconOnly aria-label=\"Settings\"><Settings /></Button>\n * ```\n */\nconst Button = React.forwardRef(\n (\n {\n className,\n style,\n tooltip,\n tooltipSide = 'top',\n tooltipAlign = 'center',\n tooltipDelayDuration,\n tooltipDisableHoverableContent,\n iconOnly = false,\n emphasis,\n variant,\n ...props\n }: ButtonProps,\n forwardedRef: React.ForwardedRef<ButtonElement>,\n ) => {\n // Use shared tooltip wrapper hook for accessibility props\n const { tooltipId, hasTooltip, accessibilityProps: tooltipAccessibilityProps } = useTooltipWrapper(tooltip);\n\n // An icon-only button is square, so it never takes the full width.\n if (iconOnly) {\n validateIconButtonName(props as Record<string, unknown>);\n (props as { fullWidth?: boolean }).fullWidth = false;\n }\n\n if (emphasis !== undefined && variant !== undefined) {\n throw new Error('Button: pass `emphasis` or `variant`, not both. They set the same thing.');\n }\n const resolvedVariant = emphasis !== undefined ? EMPHASIS_VARIANT[emphasis] : variant;\n\n const button = (\n <BaseButton\n {...props}\n variant={resolvedVariant}\n {...tooltipAccessibilityProps}\n ref={forwardedRef}\n data-icon-only={iconOnly || undefined}\n className={classNames('rt-Button', className)}\n style={style}\n />\n );\n\n // If no tooltip is provided, return the button as-is for better performance\n if (!hasTooltip) {\n return button;\n }\n\n // Wrap with Tooltip when tooltip content is provided\n // This creates a compound component that handles both button and tooltip functionality\n return (\n <Tooltip content={tooltip} side={tooltipSide} align={tooltipAlign} delayDuration={tooltipDelayDuration} disableHoverableContent={tooltipDisableHoverableContent} id={tooltipId}>\n {button}\n </Tooltip>\n );\n },\n) as ButtonComponent & { displayName?: string };\n\nButton.displayName = 'Button';\n\nexport { Button };\nexport type { ButtonProps, ButtonEmphasis, ButtonRankProps, ButtonIconOnlyProps };\n"],
|
|
5
|
+
"mappings": "wHAAA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aAiCvB,IAAMC,EAAmB,CAAE,KAAM,QAAS,OAAQ,SAAU,MAAO,OAAQ,EA0D3E,SAASC,EAAuBC,EAAgC,CAC9D,GAAIA,EAAM,YAAY,GAAKA,EAAM,iBAAiB,EAAG,OAKrD,QAAQ,MAHN,iIAGwB,CAC5B,CA4BA,IAAMC,EAAe,aACnB,CACE,CACE,UAAAC,EACA,MAAAC,EACA,QAAAC,EACA,YAAAC,EAAc,MACd,aAAAC,EAAe,SACf,qBAAAC,EACA,+BAAAC,EACA,SAAAC,EAAW,GACX,SAAAC,EACA,QAAAC,EACA,GAAGX,CACL,EACAY,IACG,CAEH,GAAM,CAAE,UAAAC,EAAW,WAAAC,EAAY,mBAAoBC,CAA0B,EAAIC,EAAkBZ,CAAO,EAQ1G,GALIK,IACFV,EAAuBC,CAAgC,EACtDA,EAAkC,UAAY,IAG7CU,IAAa,QAAaC,IAAY,OACxC,MAAM,IAAI,MAAM,0EAA0E,EAE5F,IAAMM,EAAkBP,IAAa,OAAYZ,EAAiBY,CAAQ,EAAIC,EAExEO,EACJ,gBAACC,EAAA,CACE,GAAGnB,EACJ,QAASiB,EACR,GAAGF,EACJ,IAAKH,EACL,iBAAgBH,GAAY,OAC5B,UAAWW,EAAW,YAAalB,CAAS,EAC5C,MAAOC,EACT,EAIF,OAAKW,EAOH,gBAACO,EAAA,CAAQ,QAASjB,EAAS,KAAMC,EAAa,MAAOC,EAAc,cAAeC,EAAsB,wBAAyBC,EAAgC,GAAIK,GAClKK,CACH,EAROA,CAUX,CACF,EAEAjB,EAAO,YAAc",
|
|
6
|
+
"names": ["React", "classNames", "EMPHASIS_VARIANT", "validateIconButtonName", "props", "Button", "className", "style", "tooltip", "tooltipSide", "tooltipAlign", "tooltipDelayDuration", "tooltipDisableHoverableContent", "iconOnly", "emphasis", "variant", "forwardedRef", "tooltipId", "hasTooltip", "tooltipAccessibilityProps", "useTooltipWrapper", "resolvedVariant", "button", "BaseButton", "classNames", "Tooltip"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e}from"./chunk-P3WB3K2M.js";import*as o from"react";import u from"classnames";import{Slot as f}from"radix-ui";var n=o.forwardRef((t,p)=>{let{asChild:r,children:s,className:c,...l}=t,m=r?f.Root:"blockquote";return o.createElement(e,{asChild:!0,...l,ref:p,className:u("rt-Blockquote",c)},o.createElement(m,null,s))});n.displayName="Blockquote";export{n as a};
|
|
2
|
+
//# sourceMappingURL=chunk-IQBSUN5B.js.map
|