@womp/kookie-ui 0.21.0 → 0.22.1
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 +7 -6
- package/codemods/_shared.py +314 -0
- package/codemods/components-0.21.py +98 -42
- package/codemods/names-0.22.py +65 -0
- package/codemods/space-0.17.py +47 -23
- package/codemods/test_codemods.py +220 -0
- package/codemods/type-0.20.py +60 -31
- package/components.css +3527 -3516
- 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.js +1 -1
- package/dist/cjs/components/_internal/base-button.props.js.map +2 -2
- package/dist/cjs/components/_internal/base-checkbox.props.js +1 -1
- package/dist/cjs/components/_internal/base-checkbox.props.js.map +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.js +1 -1
- package/dist/cjs/components/_internal/base-menu.utils.js.map +2 -2
- package/dist/cjs/components/_internal/base-radio.props.js +1 -1
- package/dist/cjs/components/_internal/base-radio.props.js.map +2 -2
- package/dist/cjs/components/_internal/base-tab-list.props.js +1 -1
- package/dist/cjs/components/_internal/base-tab-list.props.js.map +2 -2
- package/dist/cjs/components/_internal/dropdown-menu-drill-down.js +1 -1
- package/dist/cjs/components/_internal/dropdown-menu-drill-down.js.map +2 -2
- package/dist/cjs/components/_internal/menu-context.js.map +1 -1
- package/dist/cjs/components/_internal/pane-chrome.js +1 -1
- package/dist/cjs/components/_internal/pane-chrome.js.map +2 -2
- package/dist/cjs/components/_internal/shell-bottom.js +1 -1
- package/dist/cjs/components/_internal/shell-bottom.js.map +2 -2
- package/dist/cjs/components/_internal/shell-handles.js +1 -1
- package/dist/cjs/components/_internal/shell-handles.js.map +2 -2
- package/dist/cjs/components/_internal/shell-inspector.js +1 -1
- package/dist/cjs/components/_internal/shell-inspector.js.map +2 -2
- package/dist/cjs/components/_internal/shell-resizable.js +1 -1
- package/dist/cjs/components/_internal/shell-resizable.js.map +2 -2
- package/dist/cjs/components/_internal/shell-sidebar.js +1 -1
- package/dist/cjs/components/_internal/shell-sidebar.js.map +2 -2
- package/dist/cjs/components/accordion.js +1 -1
- package/dist/cjs/components/accordion.js.map +2 -2
- 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 +2 -2
- package/dist/cjs/components/alert-dialog.props.js +1 -1
- package/dist/cjs/components/alert-dialog.props.js.map +2 -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 +1 -1
- package/dist/cjs/components/avatar.props.d.ts.map +1 -1
- package/dist/cjs/components/avatar.props.js +1 -1
- package/dist/cjs/components/avatar.props.js.map +2 -2
- package/dist/cjs/components/blockquote.js +1 -1
- package/dist/cjs/components/blockquote.js.map +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/box.js +1 -1
- package/dist/cjs/components/box.js.map +2 -2
- package/dist/cjs/components/box.props.js +1 -1
- package/dist/cjs/components/box.props.js.map +2 -2
- package/dist/cjs/components/button.js +1 -1
- 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.js +1 -1
- package/dist/cjs/components/card.js.map +2 -2
- package/dist/cjs/components/card.props.js +1 -1
- package/dist/cjs/components/card.props.js.map +2 -2
- package/dist/cjs/components/chatbar.js +1 -1
- package/dist/cjs/components/chatbar.js.map +3 -3
- package/dist/cjs/components/checkbox-group.js +1 -1
- package/dist/cjs/components/checkbox-group.js.map +2 -2
- package/dist/cjs/components/checkbox-group.props.js +1 -1
- package/dist/cjs/components/checkbox-group.props.js.map +2 -2
- package/dist/cjs/components/checkbox.js +1 -1
- package/dist/cjs/components/checkbox.js.map +3 -3
- package/dist/cjs/components/checkbox.props.js +1 -1
- package/dist/cjs/components/checkbox.props.js.map +2 -2
- package/dist/cjs/components/chip.js +1 -1
- package/dist/cjs/components/chip.js.map +2 -2
- package/dist/cjs/components/chip.props.js +1 -1
- package/dist/cjs/components/chip.props.js.map +2 -2
- package/dist/cjs/components/code.js +1 -1
- package/dist/cjs/components/code.js.map +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.map +1 -1
- package/dist/cjs/components/combobox.js +1 -1
- package/dist/cjs/components/combobox.js.map +3 -3
- 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 +2 -2
- 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 +2 -2
- package/dist/cjs/components/dialog.props.js +1 -1
- package/dist/cjs/components/dialog.props.js.map +2 -2
- package/dist/cjs/components/dropdown-menu.js +1 -1
- package/dist/cjs/components/dropdown-menu.js.map +3 -3
- 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/flex.js +1 -1
- package/dist/cjs/components/flex.js.map +2 -2
- package/dist/cjs/components/flex.props.js +1 -1
- package/dist/cjs/components/flex.props.js.map +2 -2
- package/dist/cjs/components/grid.js +1 -1
- package/dist/cjs/components/grid.js.map +2 -2
- package/dist/cjs/components/grid.props.js +1 -1
- package/dist/cjs/components/grid.props.js.map +2 -2
- package/dist/cjs/components/heading.js +1 -1
- package/dist/cjs/components/heading.js.map +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.js +5 -5
- package/dist/cjs/components/index.js.map +3 -3
- package/dist/cjs/components/kbd.js +1 -1
- package/dist/cjs/components/kbd.js.map +2 -2
- package/dist/cjs/components/kbd.props.js +1 -1
- package/dist/cjs/components/kbd.props.js.map +2 -2
- package/dist/cjs/components/link.js +1 -1
- package/dist/cjs/components/link.js.map +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.js +1 -1
- package/dist/cjs/components/message-scroller.js.map +3 -3
- package/dist/cjs/components/navbar.js +1 -1
- package/dist/cjs/components/navbar.js.map +2 -2
- package/dist/cjs/components/notice.js +1 -1
- package/dist/cjs/components/notice.js.map +3 -3
- package/dist/cjs/components/popover.js +1 -1
- package/dist/cjs/components/popover.js.map +2 -2
- package/dist/cjs/components/popover.props.js +1 -1
- package/dist/cjs/components/popover.props.js.map +2 -2
- package/dist/cjs/components/progress.js +1 -1
- package/dist/cjs/components/progress.js.map +2 -2
- package/dist/cjs/components/progress.props.js +1 -1
- package/dist/cjs/components/progress.props.js.map +2 -2
- package/dist/cjs/components/radio-group.js +1 -1
- package/dist/cjs/components/radio-group.js.map +2 -2
- package/dist/cjs/components/radio-group.props.js +1 -1
- package/dist/cjs/components/radio-group.props.js.map +2 -2
- package/dist/cjs/components/radio.js +1 -1
- package/dist/cjs/components/radio.js.map +2 -2
- package/dist/cjs/components/radio.props.js +1 -1
- package/dist/cjs/components/radio.props.js.map +2 -2
- package/dist/cjs/components/reset.js +1 -1
- package/dist/cjs/components/reset.js.map +2 -2
- package/dist/cjs/components/schemas/button.schema.d.ts +146 -0
- 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 +3 -3
- package/dist/cjs/components/schemas/index.js +1 -1
- package/dist/cjs/components/schemas/index.js.map +3 -3
- package/dist/cjs/components/schemas/toggle.schema.js +1 -1
- package/dist/cjs/components/schemas/toggle.schema.js.map +3 -3
- package/dist/cjs/components/scroll-area.js +1 -1
- package/dist/cjs/components/scroll-area.js.map +2 -2
- package/dist/cjs/components/segmented-control.js +1 -1
- package/dist/cjs/components/segmented-control.js.map +2 -2
- package/dist/cjs/components/segmented-control.props.js +1 -1
- package/dist/cjs/components/segmented-control.props.js.map +2 -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 +3 -3
- package/dist/cjs/components/select.props.js +1 -1
- package/dist/cjs/components/select.props.js.map +2 -2
- package/dist/cjs/components/separator.js +1 -1
- package/dist/cjs/components/separator.js.map +2 -2
- package/dist/cjs/components/separator.props.js +1 -1
- package/dist/cjs/components/separator.props.js.map +2 -2
- package/dist/cjs/components/sheet.js +1 -1
- package/dist/cjs/components/sheet.js.map +2 -2
- package/dist/cjs/components/shell.js +1 -1
- package/dist/cjs/components/shell.js.map +2 -2
- package/dist/cjs/components/sidebar.js +1 -1
- package/dist/cjs/components/sidebar.js.map +2 -2
- package/dist/cjs/components/slider.js +1 -1
- package/dist/cjs/components/slider.js.map +2 -2
- package/dist/cjs/components/slider.props.js +1 -1
- package/dist/cjs/components/slider.props.js.map +2 -2
- package/dist/cjs/components/spinner.js +1 -1
- package/dist/cjs/components/spinner.js.map +2 -2
- package/dist/cjs/components/switch.js +1 -1
- package/dist/cjs/components/switch.js.map +2 -2
- package/dist/cjs/components/switch.props.js +1 -1
- package/dist/cjs/components/switch.props.js.map +2 -2
- package/dist/cjs/components/table.js +1 -1
- package/dist/cjs/components/table.js.map +3 -3
- package/dist/cjs/components/table.props.js +1 -1
- package/dist/cjs/components/table.props.js.map +2 -2
- package/dist/cjs/components/tabs.js +1 -1
- package/dist/cjs/components/tabs.js.map +2 -2
- package/dist/cjs/components/tabs.props.js +1 -1
- package/dist/cjs/components/tabs.props.js.map +2 -2
- package/dist/cjs/components/text-area.js +1 -1
- package/dist/cjs/components/text-area.js.map +2 -2
- package/dist/cjs/components/text-area.props.js +1 -1
- package/dist/cjs/components/text-area.props.js.map +2 -2
- package/dist/cjs/components/text-field.js +4 -4
- package/dist/cjs/components/text-field.js.map +2 -2
- package/dist/cjs/components/text-field.props.js +1 -1
- package/dist/cjs/components/text-field.props.js.map +2 -2
- package/dist/cjs/components/text.js +1 -1
- package/dist/cjs/components/text.js.map +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 +1 -1
- package/dist/cjs/components/theme.js.map +2 -2
- package/dist/cjs/components/toggle.js +2 -2
- package/dist/cjs/components/toggle.js.map +3 -3
- package/dist/cjs/components/toolbar.js +1 -1
- package/dist/cjs/components/toolbar.js.map +3 -3
- package/dist/cjs/components/toolbar.props.js +1 -1
- package/dist/cjs/components/toolbar.props.js.map +2 -2
- package/dist/cjs/components/tooltip.js +1 -1
- package/dist/cjs/components/tooltip.js.map +2 -2
- package/dist/cjs/components/tooltip.props.js +1 -1
- package/dist/cjs/components/tooltip.props.js.map +2 -2
- package/dist/cjs/components/virtual-menu.js +1 -1
- package/dist/cjs/components/virtual-menu.js.map +2 -2
- package/dist/cjs/helpers/font-config.d.ts.map +1 -1
- package/dist/cjs/helpers/font-config.js +3 -3
- package/dist/cjs/helpers/font-config.js.map +2 -2
- package/dist/cjs/helpers/get-margin-styles.js +1 -1
- package/dist/cjs/helpers/get-margin-styles.js.map +2 -2
- package/dist/cjs/helpers/index.js +3 -3
- package/dist/cjs/helpers/index.js.map +2 -2
- package/dist/cjs/hooks/index.js +2 -2
- package/dist/cjs/hooks/index.js.map +2 -2
- package/dist/cjs/hooks/use-live-announcer.js +2 -2
- package/dist/cjs/hooks/use-live-announcer.js.map +2 -2
- package/dist/cjs/hooks/use-thumb-sync.js +1 -1
- package/dist/cjs/hooks/use-thumb-sync.js.map +2 -2
- package/dist/cjs/hooks/use-toggle-state.js +2 -2
- package/dist/cjs/hooks/use-toggle-state.js.map +2 -2
- package/dist/cjs/index.js +6 -6
- package/dist/cjs/index.js.map +3 -3
- package/dist/cjs/props/emphasis.prop.js +1 -1
- package/dist/cjs/props/emphasis.prop.js.map +2 -2
- package/dist/cjs/props/font-family.prop.js +1 -1
- package/dist/cjs/props/font-family.prop.js.map +2 -2
- package/dist/cjs/props/gap.props.js +1 -1
- package/dist/cjs/props/gap.props.js.map +2 -2
- package/dist/cjs/props/height.props.js +1 -1
- package/dist/cjs/props/height.props.js.map +2 -2
- package/dist/cjs/props/index.js +1 -1
- package/dist/cjs/props/index.js.map +2 -2
- package/dist/cjs/props/layout.props.d.ts +5 -5
- package/dist/cjs/props/layout.props.js +1 -1
- package/dist/cjs/props/layout.props.js.map +2 -2
- package/dist/cjs/props/leading-trim.prop.js +1 -1
- package/dist/cjs/props/leading-trim.prop.js.map +2 -2
- package/dist/cjs/props/margin.props.js +1 -1
- package/dist/cjs/props/margin.props.js.map +2 -2
- package/dist/cjs/props/padding.props.js +1 -1
- package/dist/cjs/props/padding.props.js.map +2 -2
- package/dist/cjs/props/shadow.props.js +1 -1
- package/dist/cjs/props/shadow.props.js.map +2 -2
- package/dist/cjs/props/text-align.prop.js +1 -1
- package/dist/cjs/props/text-align.prop.js.map +2 -2
- package/dist/cjs/props/text-wrap.prop.js +1 -1
- package/dist/cjs/props/text-wrap.prop.js.map +2 -2
- package/dist/cjs/props/truncate.prop.js +1 -1
- package/dist/cjs/props/truncate.prop.js.map +2 -2
- package/dist/cjs/props/weight.prop.js +1 -1
- package/dist/cjs/props/weight.prop.js.map +2 -2
- package/dist/cjs/props/width.props.js +1 -1
- package/dist/cjs/props/width.props.js.map +2 -2
- package/dist/esm/chunk-23KT3D2Z.js +2 -0
- package/dist/esm/{chunk-DL6F2TIU.js.map → chunk-23KT3D2Z.js.map} +2 -2
- package/dist/esm/chunk-25FNCKUM.js +2 -0
- package/dist/esm/chunk-25FNCKUM.js.map +7 -0
- package/dist/esm/chunk-2E4P5XQL.js +2 -0
- package/dist/esm/chunk-2E4P5XQL.js.map +7 -0
- package/dist/esm/chunk-3BUQ7ADW.js +2 -0
- package/dist/esm/{chunk-OA2BZDKL.js.map → chunk-3BUQ7ADW.js.map} +2 -2
- package/dist/esm/chunk-3JA7SJDT.js +2 -0
- package/dist/esm/chunk-3JA7SJDT.js.map +7 -0
- package/dist/esm/{chunk-PEP6MQJ2.js → chunk-3KQE2PSJ.js} +2 -2
- package/dist/esm/chunk-3QZBWH2A.js +2 -0
- package/dist/esm/chunk-3QZBWH2A.js.map +7 -0
- package/dist/esm/chunk-3XHTJZNP.js +2 -0
- package/dist/esm/chunk-3XHTJZNP.js.map +7 -0
- package/dist/esm/chunk-3YWVE5GL.js +2 -0
- package/dist/esm/chunk-3YWVE5GL.js.map +7 -0
- package/dist/esm/chunk-4BU4R7UM.js +2 -0
- package/dist/esm/{chunk-XEW4BRIL.js.map → chunk-4BU4R7UM.js.map} +2 -2
- package/dist/esm/chunk-4P6TKZCA.js +2 -0
- package/dist/esm/{chunk-P3WB3K2M.js.map → chunk-4P6TKZCA.js.map} +2 -2
- package/dist/esm/{chunk-HZNOHY6O.js → chunk-63PQNLFJ.js} +2 -2
- package/dist/esm/{chunk-HZNOHY6O.js.map → chunk-63PQNLFJ.js.map} +2 -2
- package/dist/esm/chunk-677CX2QF.js +2 -0
- package/dist/esm/{chunk-MQWH2IFO.js.map → chunk-677CX2QF.js.map} +2 -2
- package/dist/esm/chunk-6CK7UTNH.js +2 -0
- package/dist/esm/{chunk-TCSPZ27B.js.map → chunk-6CK7UTNH.js.map} +2 -2
- package/dist/esm/chunk-6RK26HIY.js +2 -0
- package/dist/esm/chunk-6RK26HIY.js.map +7 -0
- package/dist/esm/chunk-7CUQMU3T.js +2 -0
- package/dist/esm/chunk-7CUQMU3T.js.map +7 -0
- package/dist/esm/chunk-7ESWH773.js +2 -0
- package/dist/esm/{chunk-7QPXLSVR.js.map → chunk-7ESWH773.js.map} +2 -2
- package/dist/esm/chunk-7FTUTUMD.js +2 -0
- package/dist/esm/chunk-7FTUTUMD.js.map +7 -0
- package/dist/esm/chunk-7SS4UUJH.js +2 -0
- package/dist/esm/{chunk-T4L4QDBG.js.map → chunk-7SS4UUJH.js.map} +2 -2
- package/dist/esm/chunk-A3YQIJDA.js +2 -0
- package/dist/esm/{chunk-MC3GY6ET.js.map → chunk-A3YQIJDA.js.map} +2 -2
- package/dist/esm/chunk-AB3QCCUM.js +2 -0
- package/dist/esm/chunk-AB3QCCUM.js.map +7 -0
- package/dist/esm/{chunk-GBFGUOFS.js → chunk-BE7LMBBC.js} +2 -2
- package/dist/esm/chunk-BEP4AH5V.js +2 -0
- package/dist/esm/chunk-BEP4AH5V.js.map +7 -0
- package/dist/esm/{chunk-FGORMEAO.js → chunk-BIITGC3Z.js} +2 -2
- package/dist/esm/{chunk-FGORMEAO.js.map → chunk-BIITGC3Z.js.map} +2 -2
- package/dist/esm/{chunk-4VBH3W2S.js → chunk-BJUCBOGU.js} +2 -2
- package/dist/esm/{chunk-4VBH3W2S.js.map → chunk-BJUCBOGU.js.map} +2 -2
- package/dist/esm/chunk-BWLCTTTN.js +2 -0
- package/dist/esm/{chunk-5P4JTWBK.js.map → chunk-BWLCTTTN.js.map} +2 -2
- package/dist/esm/chunk-CLZW2IDD.js +2 -0
- package/dist/esm/{chunk-R2FUNQTI.js.map → chunk-CLZW2IDD.js.map} +2 -2
- package/dist/esm/chunk-DBROSD2J.js +2 -0
- package/dist/esm/chunk-DBROSD2J.js.map +7 -0
- package/dist/esm/chunk-DFGY2NZB.js +2 -0
- package/dist/esm/chunk-DNOQ6E3W.js +2 -0
- package/dist/esm/{chunk-24CVW6P7.js.map → chunk-DNOQ6E3W.js.map} +2 -2
- package/dist/esm/chunk-DSPYHO3L.js +2 -0
- package/dist/esm/{chunk-ZCWDURKJ.js.map → chunk-DSPYHO3L.js.map} +2 -2
- package/dist/esm/chunk-E2D2VWUI.js +2 -0
- package/dist/esm/chunk-E2D2VWUI.js.map +7 -0
- package/dist/esm/chunk-EKTVL6SS.js +2 -0
- package/dist/esm/chunk-EKTVL6SS.js.map +7 -0
- package/dist/esm/chunk-EMNSA65L.js +2 -0
- package/dist/esm/chunk-EMNSA65L.js.map +7 -0
- package/dist/esm/chunk-ETQNRMHU.js +2 -0
- package/dist/esm/chunk-ETQNRMHU.js.map +7 -0
- package/dist/esm/chunk-FDHWAC6W.js +2 -0
- package/dist/esm/{chunk-HGG3ULNK.js.map → chunk-FDHWAC6W.js.map} +2 -2
- package/dist/esm/chunk-FFG32ERA.js +5 -0
- package/dist/esm/chunk-FFG32ERA.js.map +7 -0
- package/dist/esm/chunk-FHPHEIYJ.js +2 -0
- package/dist/esm/chunk-FHPHEIYJ.js.map +7 -0
- package/dist/esm/chunk-FJFBM7HW.js +2 -0
- package/dist/esm/{chunk-IQBSUN5B.js.map → chunk-FJFBM7HW.js.map} +2 -2
- package/dist/esm/chunk-FNAE6HUI.js +2 -0
- package/dist/esm/chunk-FNAE6HUI.js.map +7 -0
- package/dist/esm/{chunk-VA5A4MHU.js → chunk-FQ3QJOYE.js} +4 -4
- package/dist/esm/{chunk-VA5A4MHU.js.map → chunk-FQ3QJOYE.js.map} +2 -2
- package/dist/esm/chunk-FVY44PTM.js +2 -0
- package/dist/esm/{chunk-KRDRQU4G.js.map → chunk-FVY44PTM.js.map} +2 -2
- package/dist/esm/chunk-GBQZ4Z2H.js +2 -0
- package/dist/esm/chunk-GBQZ4Z2H.js.map +7 -0
- package/dist/esm/chunk-GNTNGLYR.js +2 -0
- package/dist/esm/{chunk-IZPDJN6O.js.map → chunk-GNTNGLYR.js.map} +2 -2
- package/dist/esm/{chunk-BPVVFHYD.js → chunk-H3IAGAEL.js} +2 -2
- package/dist/esm/chunk-HCBR74BW.js +2 -0
- package/dist/esm/chunk-HCBR74BW.js.map +7 -0
- package/dist/esm/chunk-HIKMKGPT.js +2 -0
- package/dist/esm/{chunk-EGSMLRSO.js.map → chunk-HIKMKGPT.js.map} +2 -2
- package/dist/esm/chunk-HKPXDQ2B.js +2 -0
- package/dist/esm/{chunk-5WLSAUNJ.js.map → chunk-HKPXDQ2B.js.map} +2 -2
- package/dist/esm/chunk-IAEAXIBI.js +2 -0
- package/dist/esm/chunk-IAEAXIBI.js.map +7 -0
- package/dist/esm/chunk-IDOZJVO6.js +2 -0
- package/dist/esm/{chunk-VCU6VCPH.js.map → chunk-IDOZJVO6.js.map} +2 -2
- package/dist/esm/chunk-IJRBX6EV.js +2 -0
- package/dist/esm/chunk-IJRBX6EV.js.map +7 -0
- package/dist/esm/chunk-IVQHRM33.js +2 -0
- package/dist/esm/chunk-IVQHRM33.js.map +7 -0
- package/dist/esm/chunk-IWCFJJBI.js +2 -0
- package/dist/esm/{chunk-DDFONGSM.js.map → chunk-IWCFJJBI.js.map} +2 -2
- package/dist/esm/chunk-JBHRV364.js +2 -0
- package/dist/esm/{chunk-A2NG5NRN.js.map → chunk-JBHRV364.js.map} +2 -2
- package/dist/esm/chunk-KEWNXANF.js +2 -0
- package/dist/esm/{chunk-KNQBAOMV.js.map → chunk-KEWNXANF.js.map} +2 -2
- package/dist/esm/chunk-KKMOGHIY.js +2 -0
- package/dist/esm/chunk-KKMOGHIY.js.map +7 -0
- package/dist/esm/chunk-KL73COYX.js +2 -0
- package/dist/esm/{chunk-K7VO7TND.js.map → chunk-KL73COYX.js.map} +2 -2
- package/dist/esm/chunk-KMDXIZAG.js +2 -0
- package/dist/esm/{chunk-YB7CENHH.js.map → chunk-KMDXIZAG.js.map} +2 -2
- package/dist/esm/chunk-KS4U4VPH.js +2 -0
- package/dist/esm/chunk-KS4U4VPH.js.map +7 -0
- package/dist/esm/chunk-KT2CMUS5.js +2 -0
- package/dist/esm/{chunk-LNFN35ZE.js.map → chunk-KT2CMUS5.js.map} +2 -2
- package/dist/esm/{chunk-EOWG5SIY.js → chunk-KZEZDBE7.js} +2 -2
- package/dist/esm/{chunk-EOWG5SIY.js.map → chunk-KZEZDBE7.js.map} +2 -2
- package/dist/esm/{chunk-4I4NJNYO.js → chunk-LC5AK2ZD.js} +2 -2
- package/dist/esm/{chunk-4I4NJNYO.js.map → chunk-LC5AK2ZD.js.map} +2 -2
- package/dist/esm/chunk-LHIS3UKQ.js +2 -0
- package/dist/esm/{chunk-36GV4H3C.js.map → chunk-LHIS3UKQ.js.map} +2 -2
- package/dist/esm/chunk-LUNWI377.js +2 -0
- package/dist/esm/chunk-LUNWI377.js.map +7 -0
- package/dist/esm/chunk-LVCUY2OS.js +2 -0
- package/dist/esm/{chunk-LVCP5WGX.js.map → chunk-LVCUY2OS.js.map} +2 -2
- package/dist/esm/chunk-LXTGEI62.js +2 -0
- package/dist/esm/chunk-LXTGEI62.js.map +7 -0
- package/dist/esm/chunk-MPTTUBFU.js +2 -0
- package/dist/esm/{chunk-7MPFZIZX.js.map → chunk-MPTTUBFU.js.map} +2 -2
- package/dist/esm/chunk-N6KH2EOU.js +2 -0
- package/dist/esm/{chunk-2WSD2H23.js.map → chunk-N6KH2EOU.js.map} +2 -2
- package/dist/esm/chunk-NA237RHQ.js +2 -0
- package/dist/esm/chunk-NA237RHQ.js.map +7 -0
- package/dist/esm/chunk-NLXJZJNN.js +2 -0
- package/dist/esm/{chunk-DSV3XBHM.js.map → chunk-NLXJZJNN.js.map} +2 -2
- package/dist/esm/chunk-NNZTSXKH.js +2 -0
- package/dist/esm/{chunk-UEHCCJYY.js.map → chunk-NNZTSXKH.js.map} +2 -2
- package/dist/esm/chunk-NUVUXNHF.js +2 -0
- package/dist/esm/chunk-NUVUXNHF.js.map +7 -0
- package/dist/esm/{chunk-672FI4OH.js → chunk-OJQNLROL.js} +2 -2
- package/dist/esm/{chunk-672FI4OH.js.map → chunk-OJQNLROL.js.map} +2 -2
- package/dist/esm/chunk-OSSNMF5U.js +2 -0
- package/dist/esm/{chunk-E4KCVRBQ.js.map → chunk-OSSNMF5U.js.map} +2 -2
- package/dist/esm/chunk-OY5NT7VT.js +2 -0
- package/dist/esm/chunk-OY5NT7VT.js.map +7 -0
- package/dist/esm/chunk-P7VSZYG3.js +2 -0
- package/dist/esm/chunk-P7VSZYG3.js.map +7 -0
- package/dist/esm/chunk-PJR6GRZC.js +2 -0
- package/dist/esm/chunk-PJR6GRZC.js.map +7 -0
- package/dist/esm/chunk-PNAB6KCN.js +2 -0
- package/dist/esm/chunk-PNAB6KCN.js.map +7 -0
- package/dist/esm/{chunk-RGZKWVJC.js → chunk-PPZY7PJA.js} +2 -2
- package/dist/esm/{chunk-RGZKWVJC.js.map → chunk-PPZY7PJA.js.map} +2 -2
- package/dist/esm/chunk-PSPENFPH.js +2 -0
- package/dist/esm/{chunk-VOEZ5HJL.js.map → chunk-PSPENFPH.js.map} +2 -2
- package/dist/esm/{chunk-AYZRLA7F.js → chunk-Q4IA622Q.js} +2 -2
- package/dist/esm/{chunk-AYZRLA7F.js.map → chunk-Q4IA622Q.js.map} +2 -2
- package/dist/esm/chunk-QOHJIF25.js +2 -0
- package/dist/esm/{chunk-MYO2E46Z.js.map → chunk-QOHJIF25.js.map} +2 -2
- package/dist/esm/{chunk-RBTTIDON.js → chunk-QWDCLL6R.js} +2 -2
- package/dist/esm/chunk-QWDCLL6R.js.map +7 -0
- package/dist/esm/chunk-R4XJNQX5.js +2 -0
- package/dist/esm/{chunk-7XWAXYZD.js.map → chunk-R4XJNQX5.js.map} +2 -2
- package/dist/esm/chunk-RAVZ7F5L.js +2 -0
- package/dist/esm/{chunk-RDS3AJWW.js.map → chunk-RAVZ7F5L.js.map} +2 -2
- package/dist/esm/chunk-RWTSGUVJ.js +2 -0
- package/dist/esm/{chunk-LHYX53XA.js.map → chunk-RWTSGUVJ.js.map} +2 -2
- package/dist/esm/chunk-S6GWR6EZ.js +2 -0
- package/dist/esm/{chunk-4ZAJVYU6.js.map → chunk-S6GWR6EZ.js.map} +2 -2
- package/dist/esm/chunk-SBRPXQWH.js +2 -0
- package/dist/esm/{chunk-WYADYDPN.js.map → chunk-SBRPXQWH.js.map} +2 -2
- package/dist/esm/chunk-SJXV4BWZ.js +2 -0
- package/dist/esm/{chunk-ZE2KAVXW.js.map → chunk-SJXV4BWZ.js.map} +2 -2
- package/dist/esm/chunk-SKOYHBIE.js +2 -0
- package/dist/esm/{chunk-TKSG7KBZ.js.map → chunk-SKOYHBIE.js.map} +2 -2
- package/dist/esm/chunk-SUPFDIJL.js +10 -0
- package/dist/esm/chunk-SUPFDIJL.js.map +7 -0
- package/dist/esm/{chunk-IN6ZEGDK.js → chunk-T62PRLPN.js} +2 -2
- package/dist/esm/{chunk-IN6ZEGDK.js.map → chunk-T62PRLPN.js.map} +2 -2
- package/dist/esm/chunk-THUBY6L2.js +2 -0
- package/dist/esm/{chunk-UMIDPKFZ.js.map → chunk-THUBY6L2.js.map} +2 -2
- package/dist/esm/chunk-TJL47GIO.js +2 -0
- package/dist/esm/chunk-TJL47GIO.js.map +7 -0
- package/dist/esm/chunk-VCV7RACK.js +2 -0
- package/dist/esm/{chunk-AXUDFYLY.js.map → chunk-VCV7RACK.js.map} +2 -2
- package/dist/esm/chunk-VPSMETY2.js +2 -0
- package/dist/esm/chunk-VS2ZWRGO.js +2 -0
- package/dist/esm/{chunk-WWF3IU3P.js.map → chunk-VS2ZWRGO.js.map} +2 -2
- package/dist/esm/chunk-VVWYAVHM.js +2 -0
- package/dist/esm/{chunk-IAC5IOPN.js.map → chunk-VVWYAVHM.js.map} +2 -2
- package/dist/esm/chunk-VW46DG7H.js +2 -0
- package/dist/esm/chunk-VW46DG7H.js.map +7 -0
- package/dist/esm/chunk-VXQQ6KXI.js +2 -0
- package/dist/esm/{chunk-BZZXXZ3O.js.map → chunk-VXQQ6KXI.js.map} +2 -2
- package/dist/esm/chunk-WKSXMFFF.js +2 -0
- package/dist/esm/{chunk-5B6JDZ3S.js.map → chunk-WKSXMFFF.js.map} +2 -2
- package/dist/esm/chunk-WTCZAUFY.js +2 -0
- package/dist/esm/{chunk-G2CKYO2I.js.map → chunk-WTCZAUFY.js.map} +2 -2
- package/dist/esm/chunk-X4A3XRBY.js +2 -0
- package/dist/esm/{chunk-K6QKUX3C.js.map → chunk-X4A3XRBY.js.map} +2 -2
- package/dist/esm/chunk-XKSU3NLG.js +2 -0
- package/dist/esm/{chunk-TDQTMR5T.js.map → chunk-XKSU3NLG.js.map} +2 -2
- package/dist/esm/{chunk-FHEHX7CE.js → chunk-XTDXXQTB.js} +2 -2
- package/dist/esm/{chunk-FHEHX7CE.js.map → chunk-XTDXXQTB.js.map} +2 -2
- package/dist/esm/chunk-XZQSSRTG.js +2 -0
- package/dist/esm/{chunk-M4M4OZTS.js.map → chunk-XZQSSRTG.js.map} +2 -2
- package/dist/esm/chunk-Y3JYEEFB.js +2 -0
- package/dist/esm/chunk-Y3JYEEFB.js.map +7 -0
- package/dist/esm/chunk-YEHM3FZN.js +2 -0
- package/dist/esm/{chunk-JMBCX5XR.js.map → chunk-YEHM3FZN.js.map} +2 -2
- package/dist/esm/chunk-YHYPIJCR.js +2 -0
- package/dist/esm/{chunk-K4BDLRCC.js.map → chunk-YHYPIJCR.js.map} +2 -2
- package/dist/esm/chunk-YK3ZUMRQ.js +2 -0
- package/dist/esm/chunk-YK3ZUMRQ.js.map +7 -0
- package/dist/esm/chunk-YLDV2HKZ.js +2 -0
- package/dist/esm/chunk-YLDV2HKZ.js.map +7 -0
- package/dist/esm/chunk-YXLDRDHW.js +2 -0
- package/dist/esm/chunk-YXLDRDHW.js.map +7 -0
- package/dist/esm/chunk-YZM54IJE.js +2 -0
- package/dist/esm/{chunk-LPVDR7V3.js.map → chunk-YZM54IJE.js.map} +2 -2
- package/dist/esm/chunk-ZJI2IK7C.js +2 -0
- package/dist/esm/chunk-ZJI2IK7C.js.map +7 -0
- package/dist/esm/chunk-ZNDCZM5A.js +2 -0
- package/dist/esm/{chunk-W7YHNMAO.js.map → chunk-ZNDCZM5A.js.map} +2 -2
- 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.js +1 -1
- package/dist/esm/components/_internal/base-checkbox.props.js +1 -1
- package/dist/esm/components/_internal/base-menu.props.js +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/dropdown-menu-drill-down.js +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-bottom.js +1 -1
- package/dist/esm/components/_internal/shell-handles.js +1 -1
- package/dist/esm/components/_internal/shell-inspector.js +1 -1
- package/dist/esm/components/_internal/shell-resizable.js +1 -1
- package/dist/esm/components/_internal/shell-sidebar.js +1 -1
- package/dist/esm/components/accordion.js +1 -1
- package/dist/esm/components/accordion.props.js +1 -1
- package/dist/esm/components/alert-dialog.js +1 -1
- package/dist/esm/components/alert-dialog.props.js +1 -1
- 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 +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.js +1 -1
- package/dist/esm/components/blockquote.props.js +1 -1
- package/dist/esm/components/box.js +1 -1
- package/dist/esm/components/box.props.js +1 -1
- package/dist/esm/components/button.js +1 -1
- package/dist/esm/components/button.props.js +1 -1
- package/dist/esm/components/card.js +1 -1
- package/dist/esm/components/card.props.js +1 -1
- package/dist/esm/components/chatbar.js +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.js +1 -1
- package/dist/esm/components/checkbox.props.js +1 -1
- package/dist/esm/components/chip.js +1 -1
- package/dist/esm/components/chip.props.js +1 -1
- package/dist/esm/components/code.js +1 -1
- package/dist/esm/components/code.props.js +1 -1
- package/dist/esm/components/combobox.d.ts.map +1 -1
- package/dist/esm/components/combobox.js +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/dialog.props.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/flex.props.js +1 -1
- package/dist/esm/components/grid.js +1 -1
- package/dist/esm/components/grid.props.js +1 -1
- package/dist/esm/components/heading.js +1 -1
- package/dist/esm/components/heading.props.js +1 -1
- package/dist/esm/components/index.js +1 -1
- package/dist/esm/components/kbd.js +1 -1
- package/dist/esm/components/kbd.props.js +1 -1
- package/dist/esm/components/link.js +1 -1
- package/dist/esm/components/link.props.js +1 -1
- package/dist/esm/components/message-scroller.js +1 -1
- package/dist/esm/components/navbar.js +1 -1
- package/dist/esm/components/notice.js +1 -1
- package/dist/esm/components/popover.js +1 -1
- package/dist/esm/components/popover.props.js +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.js +1 -1
- package/dist/esm/components/radio-group.props.js +1 -1
- package/dist/esm/components/radio.js +1 -1
- package/dist/esm/components/radio.props.js +1 -1
- package/dist/esm/components/reset.js +1 -1
- package/dist/esm/components/schemas/button.schema.d.ts +146 -0
- 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.js +1 -1
- package/dist/esm/components/schemas/toggle.schema.js +1 -1
- package/dist/esm/components/scroll-area.js +1 -1
- package/dist/esm/components/segmented-control.js +1 -1
- package/dist/esm/components/segmented-control.props.js +1 -1
- 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.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.js +1 -1
- package/dist/esm/components/slider.js +1 -1
- package/dist/esm/components/slider.props.js +1 -1
- package/dist/esm/components/spinner.js +1 -1
- package/dist/esm/components/switch.js +1 -1
- package/dist/esm/components/switch.props.js +1 -1
- package/dist/esm/components/table.js +1 -1
- package/dist/esm/components/table.props.js +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.js +1 -1
- package/dist/esm/components/text-area.props.js +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.js +1 -1
- package/dist/esm/components/text.props.js +1 -1
- package/dist/esm/components/theme.js +1 -1
- package/dist/esm/components/toggle.js +1 -1
- package/dist/esm/components/toolbar.js +1 -1
- package/dist/esm/components/toolbar.props.js +1 -1
- package/dist/esm/components/tooltip.js +1 -1
- package/dist/esm/components/tooltip.props.js +1 -1
- package/dist/esm/components/virtual-menu.js +1 -1
- package/dist/esm/helpers/font-config.d.ts.map +1 -1
- package/dist/esm/helpers/font-config.js +1 -1
- package/dist/esm/helpers/get-margin-styles.js +1 -1
- package/dist/esm/helpers/index.js +1 -1
- package/dist/esm/hooks/index.js +1 -1
- package/dist/esm/hooks/use-live-announcer.js +1 -1
- package/dist/esm/hooks/use-thumb-sync.js +1 -1
- package/dist/esm/hooks/use-toggle-state.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/props/emphasis.prop.js +1 -1
- package/dist/esm/props/font-family.prop.js +1 -1
- package/dist/esm/props/gap.props.js +1 -1
- package/dist/esm/props/height.props.js +1 -1
- package/dist/esm/props/index.js +1 -1
- package/dist/esm/props/layout.props.d.ts +5 -5
- package/dist/esm/props/layout.props.js +1 -1
- package/dist/esm/props/leading-trim.prop.js +1 -1
- package/dist/esm/props/margin.props.js +1 -1
- package/dist/esm/props/padding.props.js +1 -1
- package/dist/esm/props/shadow.props.js +1 -1
- package/dist/esm/props/text-align.prop.js +1 -1
- package/dist/esm/props/text-wrap.prop.js +1 -1
- package/dist/esm/props/truncate.prop.js +1 -1
- package/dist/esm/props/weight.prop.js +1 -1
- package/dist/esm/props/width.props.js +1 -1
- package/layout/components.css +3 -3
- package/layout/tokens.css +1 -1
- package/layout/utilities.css +4716 -4446
- package/layout.css +4720 -4450
- package/package.json +1 -1
- package/postcss-breakpoints.cjs +10 -10
- package/src/components/_internal/base-button.css +36 -36
- package/src/components/_internal/base-button.props.ts +4 -4
- package/src/components/_internal/base-button.tsx +54 -27
- package/src/components/_internal/base-card.css +44 -44
- package/src/components/_internal/base-checkbox.css +45 -45
- package/src/components/_internal/base-checkbox.props.ts +2 -2
- package/src/components/_internal/base-dialog.css +17 -15
- package/src/components/_internal/base-menu.css +54 -54
- package/src/components/_internal/base-menu.props.ts +1 -1
- package/src/components/_internal/base-menu.utils.tsx +1 -1
- package/src/components/_internal/base-radio.css +33 -33
- package/src/components/_internal/base-radio.props.ts +2 -2
- package/src/components/_internal/base-sidebar-menu.css +25 -25
- package/src/components/_internal/base-sidebar.css +9 -12
- package/src/components/_internal/base-tab-list.css +37 -37
- package/src/components/_internal/base-tab-list.props.ts +3 -3
- package/src/components/_internal/dropdown-menu-drill-down.tsx +4 -4
- package/src/components/_internal/pane-chrome.tsx +6 -6
- package/src/components/_internal/shell-bottom.tsx +2 -2
- package/src/components/_internal/shell-handles.tsx +2 -2
- package/src/components/_internal/shell-inspector.tsx +2 -2
- package/src/components/_internal/shell-resizable.tsx +1 -1
- package/src/components/_internal/shell-sidebar.tsx +2 -2
- package/src/components/accordion.css +55 -55
- package/src/components/accordion.props.tsx +2 -2
- package/src/components/accordion.tsx +6 -6
- package/src/components/alert-dialog.css +1 -1
- package/src/components/alert-dialog.tsx +5 -5
- package/src/components/avatar.css +84 -84
- package/src/components/avatar.props.tsx +3 -3
- package/src/components/avatar.tsx +12 -9
- package/src/components/blockquote.css +1 -1
- package/src/components/blockquote.props.tsx +1 -1
- package/src/components/blockquote.tsx +1 -1
- package/src/components/box.css +1 -1
- package/src/components/box.props.tsx +1 -1
- package/src/components/box.tsx +1 -1
- package/src/components/button.css +6 -6
- package/src/components/button.tsx +1 -1
- package/src/components/card.css +16 -2
- package/src/components/card.props.tsx +2 -2
- package/src/components/card.tsx +1 -1
- package/src/components/chatbar.css +94 -94
- package/src/components/chatbar.tsx +26 -26
- package/src/components/checkbox-group.css +5 -5
- package/src/components/checkbox-group.tsx +7 -7
- package/src/components/checkbox.css +2 -2
- package/src/components/checkbox.tsx +2 -2
- package/src/components/chip.css +23 -23
- package/src/components/chip.props.tsx +2 -2
- package/src/components/chip.tsx +1 -1
- package/src/components/code.css +29 -29
- package/src/components/code.props.tsx +2 -2
- package/src/components/code.tsx +1 -1
- package/src/components/combobox.css +22 -22
- package/src/components/combobox.props.tsx +4 -4
- package/src/components/combobox.tsx +27 -28
- package/src/components/context-menu.css +1 -1
- package/src/components/context-menu.tsx +39 -39
- package/src/components/dialog.css +1 -1
- package/src/components/dialog.props.tsx +2 -2
- package/src/components/dialog.tsx +5 -5
- package/src/components/dropdown-menu.css +18 -18
- package/src/components/dropdown-menu.tsx +56 -56
- package/src/components/flex.css +1 -1
- package/src/components/flex.props.tsx +5 -5
- package/src/components/flex.tsx +1 -1
- package/src/components/grid.css +1 -1
- package/src/components/grid.props.tsx +9 -9
- package/src/components/grid.tsx +1 -1
- package/src/components/heading.css +22 -22
- package/src/components/heading.props.tsx +1 -1
- package/src/components/heading.tsx +1 -1
- package/src/components/index.css +1 -1
- package/src/components/kbd.css +39 -39
- package/src/components/kbd.props.tsx +2 -2
- package/src/components/kbd.tsx +1 -1
- package/src/components/link.css +11 -11
- package/src/components/link.props.tsx +2 -2
- package/src/components/link.tsx +1 -1
- package/src/components/message-scroller.css +7 -7
- package/src/components/message-scroller.tsx +5 -5
- package/src/components/navbar.css +14 -14
- package/src/components/navbar.tsx +8 -8
- package/src/components/notice.css +16 -14
- package/src/components/notice.tsx +6 -6
- package/src/components/popover.css +16 -14
- package/src/components/popover.props.tsx +1 -1
- package/src/components/popover.tsx +7 -7
- package/src/components/progress.css +15 -15
- package/src/components/progress.props.tsx +1 -1
- package/src/components/progress.tsx +2 -2
- package/src/components/radio-group.css +3 -3
- package/src/components/radio-group.props.tsx +2 -2
- package/src/components/radio-group.tsx +4 -4
- package/src/components/radio.tsx +1 -1
- package/src/components/reset.css +1 -1
- package/src/components/reset.tsx +1 -1
- package/src/components/schemas/button.schema.ts +13 -1
- package/src/components/schemas/toggle.schema.ts +2 -2
- package/src/components/scroll-area.css +16 -16
- package/src/components/scroll-area.tsx +8 -8
- package/src/components/segmented-control.css +97 -97
- package/src/components/segmented-control.props.tsx +2 -2
- package/src/components/segmented-control.tsx +7 -7
- package/src/components/select.css +78 -78
- package/src/components/select.props.tsx +2 -2
- package/src/components/select.tsx +39 -29
- package/src/components/separator.css +5 -5
- package/src/components/separator.props.tsx +2 -2
- package/src/components/separator.tsx +1 -1
- package/src/components/sheet.css +6 -6
- package/src/components/sheet.tsx +3 -3
- package/src/components/shell.css +456 -456
- package/src/components/shell.tsx +12 -12
- package/src/components/sidebar.css +199 -199
- package/src/components/sidebar.tsx +37 -37
- package/src/components/slider.css +50 -50
- package/src/components/slider.props.tsx +4 -4
- package/src/components/slider.tsx +9 -9
- package/src/components/spinner.css +6 -6
- package/src/components/spinner.tsx +9 -9
- package/src/components/switch.css +28 -28
- package/src/components/switch.props.tsx +2 -2
- package/src/components/switch.tsx +2 -2
- package/src/components/table.css +28 -28
- package/src/components/table.props.tsx +5 -5
- package/src/components/table.tsx +8 -8
- package/src/components/tabs.css +2 -2
- package/src/components/tabs.tsx +6 -6
- package/src/components/text-area.css +84 -84
- package/src/components/text-area.props.tsx +3 -3
- package/src/components/text-area.tsx +4 -4
- package/src/components/text-field.css +112 -107
- package/src/components/text-field.props.tsx +2 -2
- package/src/components/text-field.tsx +8 -8
- package/src/components/text.css +23 -23
- package/src/components/text.props.tsx +1 -1
- package/src/components/text.tsx +1 -1
- package/src/components/theme.tsx +1 -1
- package/src/components/toggle.tsx +1 -1
- package/src/components/toolbar.css +15 -15
- package/src/components/toolbar.props.tsx +1 -1
- package/src/components/toolbar.tsx +4 -4
- package/src/components/tooltip.css +6 -6
- package/src/components/tooltip.tsx +3 -3
- package/src/components/virtual-menu.css +6 -6
- package/src/components/virtual-menu.tsx +4 -4
- package/src/helpers/font-config.ts +4 -4
- package/src/helpers/get-margin-styles.ts +7 -7
- package/src/hooks/use-live-announcer.ts +4 -4
- package/src/hooks/use-thumb-sync.ts +1 -1
- package/src/props/emphasis.prop.ts +1 -1
- package/src/props/font-family.prop.ts +1 -1
- package/src/props/gap.props.ts +3 -3
- package/src/props/height.props.ts +3 -3
- package/src/props/layout.props.ts +22 -22
- package/src/props/leading-trim.prop.ts +1 -1
- package/src/props/margin.props.ts +7 -7
- package/src/props/padding.props.ts +7 -7
- package/src/props/shadow.props.ts +1 -1
- package/src/props/text-align.prop.ts +1 -1
- package/src/props/text-wrap.prop.ts +1 -1
- package/src/props/truncate.prop.ts +1 -1
- package/src/props/weight.prop.ts +1 -1
- package/src/props/width.props.ts +3 -3
- package/src/styles/scrollbar.css +3 -3
- package/src/styles/tokens/color.css +241 -235
- package/src/styles/tokens/constants.css +1 -1
- package/src/styles/tokens/cursor.css +1 -1
- package/src/styles/tokens/font-family.css +4 -4
- package/src/styles/tokens/radius.css +20 -20
- package/src/styles/tokens/shadow.css +28 -28
- package/src/styles/tokens/space.css +1 -1
- package/src/styles/tokens/typography.css +2 -2
- package/src/styles/utilities/align-content.css +8 -8
- package/src/styles/utilities/align-items.css +5 -5
- package/src/styles/utilities/align-self.css +5 -5
- package/src/styles/utilities/display.css +9 -9
- package/src/styles/utilities/flex-basis.css +6 -6
- package/src/styles/utilities/flex-direction.css +4 -4
- package/src/styles/utilities/flex-grow.css +9 -9
- package/src/styles/utilities/flex-shrink.css +9 -9
- package/src/styles/utilities/flex-wrap.css +3 -3
- package/src/styles/utilities/font-weight.css +3 -3
- package/src/styles/utilities/gap.css +60 -60
- package/src/styles/utilities/grid-area.css +6 -6
- package/src/styles/utilities/grid-auto-flow.css +5 -5
- package/src/styles/utilities/grid-column-end.css +16 -16
- package/src/styles/utilities/grid-column-start.css +16 -16
- package/src/styles/utilities/grid-column.css +16 -16
- package/src/styles/utilities/grid-row-end.css +16 -16
- package/src/styles/utilities/grid-row-start.css +16 -16
- package/src/styles/utilities/grid-row.css +16 -16
- package/src/styles/utilities/grid-template-areas.css +6 -6
- package/src/styles/utilities/grid-template-columns.css +16 -16
- package/src/styles/utilities/grid-template-rows.css +16 -16
- package/src/styles/utilities/height.css +6 -6
- package/src/styles/utilities/inset.css +130 -85
- package/src/styles/utilities/justify-content.css +4 -4
- package/src/styles/utilities/justify-items.css +5 -5
- package/src/styles/utilities/justify-self.css +5 -5
- package/src/styles/utilities/leading-trim.css +12 -12
- package/src/styles/utilities/margin.css +420 -420
- package/src/styles/utilities/max-height.css +6 -6
- package/src/styles/utilities/max-width.css +6 -6
- package/src/styles/utilities/min-height.css +6 -6
- package/src/styles/utilities/min-width.css +6 -6
- package/src/styles/utilities/overflow.css +15 -15
- package/src/styles/utilities/padding.css +140 -140
- package/src/styles/utilities/position.css +5 -5
- package/src/styles/utilities/resize.css +4 -4
- package/src/styles/utilities/table-layout.css +2 -2
- package/src/styles/utilities/text-align.css +3 -3
- package/src/styles/utilities/text-wrap.css +4 -4
- package/src/styles/utilities/truncate.css +1 -1
- package/src/styles/utilities/vertical-align.css +4 -4
- package/src/styles/utilities/width.css +6 -6
- package/styles.css +8945 -8656
- package/tokens/base.css +498 -490
- package/tokens.css +493 -485
- package/utilities.css +4909 -4639
- package/dist/esm/chunk-24CVW6P7.js +0 -2
- package/dist/esm/chunk-2FPJ6Q2N.js +0 -2
- package/dist/esm/chunk-2FPJ6Q2N.js.map +0 -7
- package/dist/esm/chunk-2KZ44I6T.js +0 -2
- package/dist/esm/chunk-2KZ44I6T.js.map +0 -7
- package/dist/esm/chunk-2WSD2H23.js +0 -2
- package/dist/esm/chunk-36GV4H3C.js +0 -2
- package/dist/esm/chunk-4ITIXBIP.js +0 -2
- package/dist/esm/chunk-4ITIXBIP.js.map +0 -7
- package/dist/esm/chunk-4YQXYWDQ.js +0 -2
- package/dist/esm/chunk-4YQXYWDQ.js.map +0 -7
- package/dist/esm/chunk-4ZAJVYU6.js +0 -2
- package/dist/esm/chunk-5B6JDZ3S.js +0 -2
- package/dist/esm/chunk-5P4JTWBK.js +0 -2
- package/dist/esm/chunk-5WLSAUNJ.js +0 -2
- package/dist/esm/chunk-6WANXT2G.js +0 -2
- package/dist/esm/chunk-6WANXT2G.js.map +0 -7
- package/dist/esm/chunk-72FU5FEC.js +0 -2
- package/dist/esm/chunk-7AXEPJYF.js +0 -2
- package/dist/esm/chunk-7AXEPJYF.js.map +0 -7
- package/dist/esm/chunk-7FPLWHMT.js +0 -2
- package/dist/esm/chunk-7FPLWHMT.js.map +0 -7
- package/dist/esm/chunk-7MPFZIZX.js +0 -2
- package/dist/esm/chunk-7OQXCYCW.js +0 -2
- package/dist/esm/chunk-7OQXCYCW.js.map +0 -7
- package/dist/esm/chunk-7QPXLSVR.js +0 -2
- package/dist/esm/chunk-7XWAXYZD.js +0 -2
- package/dist/esm/chunk-A2NG5NRN.js +0 -2
- package/dist/esm/chunk-AXUDFYLY.js +0 -2
- package/dist/esm/chunk-BHGES72S.js +0 -2
- package/dist/esm/chunk-BHGES72S.js.map +0 -7
- package/dist/esm/chunk-BQD7XS4K.js +0 -2
- package/dist/esm/chunk-BQD7XS4K.js.map +0 -7
- package/dist/esm/chunk-BZZXXZ3O.js +0 -2
- package/dist/esm/chunk-CTZ467AB.js +0 -2
- package/dist/esm/chunk-CTZ467AB.js.map +0 -7
- package/dist/esm/chunk-CYO6CRMQ.js +0 -2
- package/dist/esm/chunk-CYO6CRMQ.js.map +0 -7
- package/dist/esm/chunk-DDFONGSM.js +0 -2
- package/dist/esm/chunk-DL6F2TIU.js +0 -2
- package/dist/esm/chunk-DSV3XBHM.js +0 -2
- package/dist/esm/chunk-E4KCVRBQ.js +0 -2
- package/dist/esm/chunk-EDEYYJ3Q.js +0 -2
- package/dist/esm/chunk-EDEYYJ3Q.js.map +0 -7
- package/dist/esm/chunk-EDP2TJVB.js +0 -2
- package/dist/esm/chunk-EDP2TJVB.js.map +0 -7
- package/dist/esm/chunk-EE54S7YV.js +0 -10
- package/dist/esm/chunk-EE54S7YV.js.map +0 -7
- package/dist/esm/chunk-EGSMLRSO.js +0 -2
- package/dist/esm/chunk-ENPQJYXZ.js +0 -2
- package/dist/esm/chunk-ENPQJYXZ.js.map +0 -7
- package/dist/esm/chunk-ERGJN7FJ.js +0 -2
- package/dist/esm/chunk-ERGJN7FJ.js.map +0 -7
- package/dist/esm/chunk-FSMUCDLI.js +0 -2
- package/dist/esm/chunk-FSMUCDLI.js.map +0 -7
- package/dist/esm/chunk-G2CKYO2I.js +0 -2
- package/dist/esm/chunk-G46OLCM2.js +0 -2
- package/dist/esm/chunk-G46OLCM2.js.map +0 -7
- package/dist/esm/chunk-GOV5I7I2.js +0 -2
- package/dist/esm/chunk-GOV5I7I2.js.map +0 -7
- package/dist/esm/chunk-GWGQ73PU.js +0 -2
- package/dist/esm/chunk-GWGQ73PU.js.map +0 -7
- package/dist/esm/chunk-HAGKI7NA.js +0 -2
- package/dist/esm/chunk-HAGKI7NA.js.map +0 -7
- package/dist/esm/chunk-HCNO7PX6.js +0 -2
- package/dist/esm/chunk-HCNO7PX6.js.map +0 -7
- package/dist/esm/chunk-HELY5CSU.js +0 -2
- package/dist/esm/chunk-HELY5CSU.js.map +0 -7
- package/dist/esm/chunk-HGG3ULNK.js +0 -2
- package/dist/esm/chunk-IAC5IOPN.js +0 -2
- package/dist/esm/chunk-IQBSUN5B.js +0 -2
- package/dist/esm/chunk-IZPDJN6O.js +0 -2
- package/dist/esm/chunk-JMBCX5XR.js +0 -2
- package/dist/esm/chunk-JSW6J6RS.js +0 -2
- package/dist/esm/chunk-JSW6J6RS.js.map +0 -7
- package/dist/esm/chunk-K4BDLRCC.js +0 -2
- package/dist/esm/chunk-K53W3ELO.js +0 -2
- package/dist/esm/chunk-K53W3ELO.js.map +0 -7
- package/dist/esm/chunk-K6QKUX3C.js +0 -2
- package/dist/esm/chunk-K6WT5ZEA.js +0 -2
- package/dist/esm/chunk-K6WT5ZEA.js.map +0 -7
- package/dist/esm/chunk-K7VO7TND.js +0 -2
- package/dist/esm/chunk-KIYCILXL.js +0 -2
- package/dist/esm/chunk-KIYCILXL.js.map +0 -7
- package/dist/esm/chunk-KNQBAOMV.js +0 -2
- package/dist/esm/chunk-KRDRQU4G.js +0 -2
- package/dist/esm/chunk-KRZL245C.js +0 -2
- package/dist/esm/chunk-KRZL245C.js.map +0 -7
- package/dist/esm/chunk-LHYX53XA.js +0 -2
- package/dist/esm/chunk-LNFN35ZE.js +0 -2
- package/dist/esm/chunk-LPVDR7V3.js +0 -2
- package/dist/esm/chunk-LVCP5WGX.js +0 -2
- package/dist/esm/chunk-M4M4OZTS.js +0 -2
- package/dist/esm/chunk-MC3GY6ET.js +0 -2
- package/dist/esm/chunk-MKY2IRPO.js +0 -2
- package/dist/esm/chunk-MKY2IRPO.js.map +0 -7
- package/dist/esm/chunk-MQWH2IFO.js +0 -2
- package/dist/esm/chunk-MYO2E46Z.js +0 -2
- package/dist/esm/chunk-OA2BZDKL.js +0 -2
- package/dist/esm/chunk-P3WB3K2M.js +0 -2
- package/dist/esm/chunk-QQVA2PJ3.js +0 -2
- package/dist/esm/chunk-QQVA2PJ3.js.map +0 -7
- package/dist/esm/chunk-QWLKMVZY.js +0 -2
- package/dist/esm/chunk-QZ6OCMH4.js +0 -2
- package/dist/esm/chunk-QZ6OCMH4.js.map +0 -7
- package/dist/esm/chunk-R2FUNQTI.js +0 -2
- package/dist/esm/chunk-RBTTIDON.js.map +0 -7
- package/dist/esm/chunk-RDS3AJWW.js +0 -2
- package/dist/esm/chunk-SMGDH54W.js +0 -2
- package/dist/esm/chunk-SMGDH54W.js.map +0 -7
- package/dist/esm/chunk-SNR5VFWG.js +0 -2
- package/dist/esm/chunk-SNR5VFWG.js.map +0 -7
- package/dist/esm/chunk-T4L4QDBG.js +0 -2
- package/dist/esm/chunk-TCSPZ27B.js +0 -2
- package/dist/esm/chunk-TDQTMR5T.js +0 -2
- package/dist/esm/chunk-TKSG7KBZ.js +0 -2
- package/dist/esm/chunk-TTFUM47A.js +0 -2
- package/dist/esm/chunk-TTFUM47A.js.map +0 -7
- package/dist/esm/chunk-UEHCCJYY.js +0 -2
- package/dist/esm/chunk-UMIDPKFZ.js +0 -2
- package/dist/esm/chunk-UW5IJ64A.js +0 -5
- package/dist/esm/chunk-UW5IJ64A.js.map +0 -7
- package/dist/esm/chunk-VCU6VCPH.js +0 -2
- package/dist/esm/chunk-VJOJGAGA.js +0 -2
- package/dist/esm/chunk-VJOJGAGA.js.map +0 -7
- package/dist/esm/chunk-VNONKPH7.js +0 -2
- package/dist/esm/chunk-VNONKPH7.js.map +0 -7
- package/dist/esm/chunk-VOEZ5HJL.js +0 -2
- package/dist/esm/chunk-VX44UTQ5.js +0 -2
- package/dist/esm/chunk-VX44UTQ5.js.map +0 -7
- package/dist/esm/chunk-W7YHNMAO.js +0 -2
- package/dist/esm/chunk-WQT6UULR.js +0 -2
- package/dist/esm/chunk-WQT6UULR.js.map +0 -7
- package/dist/esm/chunk-WW7WTPM6.js +0 -2
- package/dist/esm/chunk-WW7WTPM6.js.map +0 -7
- package/dist/esm/chunk-WWF3IU3P.js +0 -2
- package/dist/esm/chunk-WYADYDPN.js +0 -2
- package/dist/esm/chunk-XEW4BRIL.js +0 -2
- package/dist/esm/chunk-YB7CENHH.js +0 -2
- package/dist/esm/chunk-YEIZ43KW.js +0 -2
- package/dist/esm/chunk-YEIZ43KW.js.map +0 -7
- package/dist/esm/chunk-ZCWDURKJ.js +0 -2
- package/dist/esm/chunk-ZE2KAVXW.js +0 -2
- /package/dist/esm/{chunk-PEP6MQJ2.js.map → chunk-3KQE2PSJ.js.map} +0 -0
- /package/dist/esm/{chunk-GBFGUOFS.js.map → chunk-BE7LMBBC.js.map} +0 -0
- /package/dist/esm/{chunk-QWLKMVZY.js.map → chunk-DFGY2NZB.js.map} +0 -0
- /package/dist/esm/{chunk-BPVVFHYD.js.map → chunk-H3IAGAEL.js.map} +0 -0
- /package/dist/esm/{chunk-72FU5FEC.js.map → chunk-VPSMETY2.js.map} +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/components/shell.tsx"],
|
|
4
|
+
"sourcesContent": ["/**\n * Shell: the app frame.\n *\n * Since 0.8.0 the Shell is built on kookie-ui-v2's model, behind v1's API:\n *\n * - The Root is a CSS grid and renders its children as given, in JSX order.\n * Each pane claims its own grid area, so the Root never scans or reorders\n * children, any child renders, and a pane mounted after the Root works.\n * - State lives on each pane: `auto` (untouched), `open` or `closed`. An\n * untouched pane follows the window, resolved by the\n * stylesheet, so first paint needs no script and no open-state callback\n * fires on mount or on a resize.\n * - A pane is one element at every width. `overlay` is a posture of that\n * element, not a Sheet swapped in: crossing a breakpoint keeps its scroll\n * position, its focus and its children's state.\n * - The Root owns what an overlay needs: one scrim, `inert` on everything\n * else, focus moved in and returned, Escape, and a scroll lock.\n * - Nothing links panes to each other. A Rail closing no longer closes the\n * Panel; an app that wants that writes it in `onOpenChange`.\n */\n'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { useComposedRefs } from 'radix-ui/internal';\nimport { PaneResizeContext } from './_internal/shell-resize.js';\nimport { PaneHandle, PanelHandle } from './_internal/shell-handles.js';\nimport { Sidebar } from './_internal/shell-sidebar.js';\nimport { Bottom } from './_internal/shell-bottom.js';\nimport { Inspector } from './_internal/shell-inspector.js';\nimport { usePane, paneAttributes, usePresentationTable } from './_internal/shell-pane.js';\nimport { splitHandles, useResizablePane } from './_internal/shell-resizable.js';\nimport {\n FIXED_TABLE,\n ShellInsetContext,\n ShellStoreContext,\n createShellStore,\n setShellPeek,\n subscribeShellStore,\n useInsetRegistration,\n usePaneEntry,\n useShellStore,\n warnOnce,\n type InsetPaneId,\n} from './_internal/shell-store.js';\nimport { navigationRest, detailRest, toPaneValue, startAnchoredGrowth, withoutRemovedPaneProps } from './_internal/shell-rest.js';\nimport { useShell, useSidebarMode } from './shell.context.js';\nimport { useResponsivePresentation } from './shell.hooks.js';\nimport { readBreakpoint } from '../hooks/use-breakpoint.js';\nimport { useThemeSize } from '../helpers/theme-size.js';\nimport { PaneChromeScope, PaneFooter, PaneHeader, Scroll, ShellSizeContext } from './_internal/pane-chrome.js';\nimport type { PaneSize } from './_internal/pane-chrome.js';\nimport type { Breakpoint, CSSPropertiesWithVars, PaneBaseProps, PaneMode, PaneName, PaneTarget, ResponsivePresentation, SidebarMode } from './shell.types.js';\n\n/* \u2500\u2500 Root \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nexport interface ShellRootProps extends React.ComponentPropsWithoutRef<'div'> {\n children: React.ReactNode;\n height?: 'full' | 'auto' | string | number;\n /** The index the panes' chrome takes: `Shell.PaneHeader`, `Shell.Scroll`, `Shell.PaneFooter` and the Sidebar rows in them. Defaults to the nearest Theme's size (3 when the Theme is 4), else `2`. */\n size?: PaneSize;\n}\n\n/**\n * Every Shell with a live overlay holds the page still, counted across Shells,\n * through an attribute the stylesheet reads. Saving and restoring the\n * document's inline `overflow` would fight any other scroll lock on the page.\n */\nlet pageLockHolders = 0;\nfunction updatePageLock(delta: 1 | -1) {\n pageLockHolders = Math.max(0, pageLockHolders + delta);\n const doc = document.documentElement;\n if (pageLockHolders > 0) doc.setAttribute('data-kui-shell-lock', '');\n else doc.removeAttribute('data-kui-shell-lock');\n}\n\n/** Marks a child the Root made inert, so closing removes only what the Root added. */\nconst INERT_MARK = 'data-kui-shell-inert';\n\n/** How many frames a focus rescue watches after an overlay opens or closes. */\nconst RESCUE_FRAMES = 30;\n\n/** Focus that is nowhere useful: the document, or nothing at all. */\nfunction isNowhere(doc: Document, el: Element | EventTarget | null): boolean {\n return el === null || el === doc || el === doc.body || el === doc.documentElement;\n}\n\n/** A Trigger that drives the pane with this id and can take focus, optionally only inside `within`. */\nfunction triggerFor(doc: Document, id: string, within?: HTMLElement[]): HTMLElement | null {\n for (const el of doc.querySelectorAll<HTMLElement>('[data-shell-trigger][aria-controls]')) {\n if (el.getAttribute('aria-controls') !== id || el.closest('[inert]')) continue;\n if (within && !within.some((pane) => pane.contains(el))) continue;\n return el;\n }\n return null;\n}\n\ntype LivePane = { name: PaneName; id: string; el: HTMLElement };\n\n/** Shell.Root's own range; a Theme size above it maps to 3. */\nconst shellSizePropDef = { values: ['1', '2', '3'] as const };\n\nconst Root = React.forwardRef<HTMLDivElement, ShellRootProps>(({ className, children, height = 'full', size: sizeProp, style, onKeyDown, onFocus, ...props }, ref) => {\n // No size of its own: the nearest Theme's, mapped into 1-3.\n const size = useThemeSize(sizeProp, shellSizePropDef);\n const [store] = React.useState(createShellStore);\n const subscribe = React.useCallback((listener: () => void) => subscribeShellStore(store, listener), [store]);\n // Subscribed for the re-render, not for a value: a pane opening or closing\n // must bring the Root back so containment and the scrim follow it.\n React.useSyncExternalStore(\n subscribe,\n () => store.version,\n () => 0,\n );\n\n const rootRef = React.useRef<HTMLDivElement | null>(null);\n const composedRef = useComposedRefs(ref, rootRef);\n\n // Inset: the Root paints the backdrop while any pane is inset.\n const [insetPanes, setInsetPanes] = React.useState<ReadonlySet<InsetPaneId>>(() => new Set());\n const registerInset = React.useCallback((id: InsetPaneId) => {\n setInsetPanes((prev) => (prev.has(id) ? prev : new Set(prev).add(id)));\n }, []);\n const unregisterInset = React.useCallback((id: InsetPaneId) => {\n setInsetPanes((prev) => {\n if (!prev.has(id)) return prev;\n const next = new Set(prev);\n next.delete(id);\n return next;\n });\n }, []);\n const insetContext = React.useMemo(() => ({ registerInset, unregisterInset }), [registerInset, unregisterInset]);\n\n const closeOverlays = React.useCallback(() => {\n for (const entry of store.entries.values()) {\n if (entry.overlayLive) entry.setValue('closed', 'dismiss');\n }\n }, [store]);\n\n const livePanes = React.useCallback(\n (): LivePane[] => [...store.entries.values()].filter((entry) => entry.overlayLive && entry.el).map((entry) => ({ name: entry.name, id: entry.id, el: entry.el as HTMLElement })),\n [store],\n );\n const liveCount = [...store.entries.values()].filter((entry) => entry.overlayLive && entry.el).length;\n\n // A Shell given a height of its own sits inside a page, and its overlays\n // cover only its box: it holds no page lock. `full` is the page, and\n // `auto` grows with its content, so its overlays are placed on the window.\n const contained = height !== 'full' && height !== 'auto';\n\n /*\n * Containment is the Root's, not the pane's. Only the Root can see every live\n * overlay and every child at once. A per-pane effect, given two overlays,\n * inerts the other live overlay and restores values the other effect wrote,\n * which can leave the whole frame inert for good.\n *\n * Exempt are the scrim and each root child that CONTAINS a live overlay, so\n * a pane wrapped in a plain element is not inerted with its wrapper. A child\n * the Root inerts is marked, and closing clears only marked children, so\n * `inert` the app sets on a child is the app's before, during and after.\n */\n const contain = React.useCallback(() => {\n const rootEl = rootRef.current;\n if (!rootEl) return;\n const liveEls = livePanes().map((pane) => pane.el);\n for (const child of rootEl.children) {\n if (!(child instanceof HTMLElement) || child.classList.contains('kui-ShellScrim')) continue;\n const holdsLive = liveEls.some((el) => child === el || child.contains(el));\n if (liveEls.length === 0 || holdsLive) {\n if (child.hasAttribute(INERT_MARK)) {\n child.removeAttribute(INERT_MARK);\n child.inert = false;\n }\n } else if (!child.inert) {\n child.setAttribute(INERT_MARK, '');\n child.inert = true;\n }\n }\n }, [livePanes]);\n\n const returnFocusTo = React.useRef<HTMLElement | null>(null);\n const lastLive = React.useRef<LivePane[]>([]);\n const lastFocusInRoot = React.useRef<HTMLElement | null>(null);\n const holdsLock = React.useRef(false);\n\n /*\n * Focus can be taken away after the commit that moved it: a menu that\n * opened or closed a pane restores focus to its own trigger when it\n * finishes closing, which may be inert or hidden by then. For a few frames\n * after an overlay opens or closes, focus that ends up nowhere useful is\n * put back where it belongs.\n */\n const rescueFrame = React.useRef(0);\n const cancelRescue = React.useCallback(() => {\n if (rescueFrame.current) cancelAnimationFrame(rescueFrame.current);\n rescueFrame.current = 0;\n }, []);\n const rescueFocus = React.useCallback(\n (target: HTMLElement, lost: (active: Element | null) => boolean) => {\n cancelRescue();\n let frames = 0;\n const tick = () => {\n rescueFrame.current = 0;\n if (!target.isConnected) return;\n if (lost(target.ownerDocument.activeElement)) {\n target.focus({ preventScroll: true });\n return;\n }\n frames += 1;\n if (frames < RESCUE_FRAMES) rescueFrame.current = requestAnimationFrame(tick);\n };\n rescueFrame.current = requestAnimationFrame(tick);\n },\n [cancelRescue],\n );\n\n React.useEffect(\n () => () => {\n cancelRescue();\n if (holdsLock.current) {\n holdsLock.current = false;\n updatePageLock(-1);\n }\n },\n [cancelRescue],\n );\n\n // No dependency array, on purpose: a pane opening or closing is a render\n // of this component, and so is a child appearing through the Root.\n React.useEffect(() => {\n const rootEl = rootRef.current;\n if (!rootEl) return;\n const doc = rootEl.ownerDocument;\n const live = livePanes();\n const liveEls = live.map((pane) => pane.el);\n\n const wantsLock = !contained && live.length > 0;\n if (wantsLock !== holdsLock.current) {\n holdsLock.current = wantsLock;\n updatePageLock(wantsLock ? 1 : -1);\n }\n\n const previous = lastLive.current;\n lastLive.current = live;\n // A pane that left the live set because it closed, as opposed to one\n // that is still open but stopped being an overlay at a breakpoint.\n const closed = previous.filter((pane) => {\n if (liveEls.includes(pane.el)) return false;\n const entry = store.entries.get(pane.name);\n return !pane.el.isConnected || !entry || entry.el !== pane.el || entry.value === 'closed';\n });\n const inClosed = (active: Element | null) => active !== null && closed.some((pane) => pane.el.contains(active));\n\n // The return target is taken on the opening edge, before inerting: inerting\n // the subtree that holds the trigger blurs it. Focus already inside the\n // overlay (a pane that became one at a breakpoint) is no place to return\n // to, and an opener in a portal (a menu item) goes away with its menu, so\n // the last place focus held inside the frame stands in for it.\n if (previous.length === 0 && live.length > 0) {\n const active = doc.activeElement;\n let target = active instanceof HTMLElement && !isNowhere(doc, active) && !liveEls.some((el) => el.contains(active)) ? active : null;\n if (target && !rootEl.contains(target)) {\n const inRoot = lastFocusInRoot.current;\n if (inRoot && inRoot.isConnected && !liveEls.some((el) => el.contains(inRoot))) target = inRoot;\n }\n returnFocusTo.current = target;\n }\n\n contain();\n\n if (live.length === 0) {\n const before = returnFocusTo.current;\n returnFocusTo.current = null;\n // Every overlay that left only stopped being one: focus stays where it is.\n if (closed.length === 0) return;\n const usable = (el: HTMLElement | null) => el !== null && el.isConnected && !el.closest('[inert]') && !inClosed(el);\n let target = usable(before) ? before : null;\n for (const pane of closed) target ??= triggerFor(doc, pane.id);\n if (!target) return;\n const lost = (active: Element | null) => isNowhere(doc, active) || inClosed(active);\n if (lost(doc.activeElement)) target.focus({ preventScroll: true });\n else rescueFocus(target, lost);\n return;\n }\n\n // Some overlays closed while others stay: focus left in a closed one goes\n // to the Trigger that opened it, if a live pane holds it, or to the pane\n // on top.\n if (closed.length > 0) {\n const active = doc.activeElement;\n if (isNowhere(doc, active) || inClosed(active)) {\n let target: HTMLElement | null = null;\n for (const pane of closed) target ??= triggerFor(doc, pane.id, liveEls);\n (target ?? liveEls[liveEls.length - 1]).focus({ preventScroll: true });\n }\n }\n\n // Focus moves in on the opening edge and nowhere else, and only when it\n // is not already somewhere the user put it inside the live set.\n const opened = liveEls.filter((el) => !previous.some((pane) => pane.el === el));\n const active = doc.activeElement;\n if (opened.length > 0 && !liveEls.some((el) => el.contains(active))) {\n opened[0].focus({ preventScroll: true });\n rescueFocus(opened[0], (now) => isNowhere(doc, now) || (now instanceof Element && now.closest('[inert]') !== null));\n }\n });\n\n // A child that appears through its own state while an overlay is live does\n // not render the Root, so the Root watches its children while one is.\n React.useEffect(() => {\n const rootEl = rootRef.current;\n if (!rootEl || liveCount === 0 || typeof MutationObserver === 'undefined') return;\n const observer = new MutationObserver(contain);\n observer.observe(rootEl, { childList: true, subtree: true, attributes: true, attributeFilter: ['inert'] });\n return () => observer.disconnect();\n }, [liveCount, contain]);\n\n /*\n * Escape closes the overlays. It is handled as a React event on the Root, so\n * a component inside a pane that answers Escape in its own onKeyDown runs\n * first, and its preventDefault() or stopPropagation() keeps the pane open.\n * When the Root closes something it stops the event there, so a React\n * Escape handler above the Shell does not act on it too. A layer that\n * listens on the document in the capture phase (Radix dialogs, menus and\n * popovers) answers first and calls preventDefault() when it closes, so an\n * enclosing Kookie Dialog closes before a Shell inside it is asked.\n */\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n onKeyDown?.(event);\n if (event.key !== 'Escape' || event.defaultPrevented || liveCount === 0) return;\n closeOverlays();\n event.stopPropagation();\n };\n\n // With focus on the document itself (a pane closed under it, or a menu that\n // closed and took focus with it), the Root never sees the key. While an\n // overlay is live the document answers that one case.\n React.useEffect(() => {\n const rootEl = rootRef.current;\n if (!rootEl || liveCount === 0) return;\n const doc = rootEl.ownerDocument;\n const onDocumentKeyDown = (event: KeyboardEvent) => {\n if (event.key !== 'Escape' || event.defaultPrevented || !isNowhere(doc, event.target)) return;\n closeOverlays();\n };\n doc.addEventListener('keydown', onDocumentKeyDown);\n return () => doc.removeEventListener('keydown', onDocumentKeyDown);\n }, [liveCount, closeOverlays]);\n\n const handleFocus = (event: React.FocusEvent<HTMLDivElement>) => {\n onFocus?.(event);\n if (event.target instanceof HTMLElement && rootRef.current?.contains(event.target)) lastFocusInRoot.current = event.target;\n };\n\n // A floating Panel sits beside the Rail when the Rail is showing, and\n // beside its card when the Rail is inset.\n const rail = store.entries.get('rail');\n const railShown = rail !== undefined && rail.value !== undefined && rail.value !== 'closed';\n const railOffset = railShown ? (insetPanes.has('rail') ? `calc(${rail.size}px + 2 * var(--shell-inset-gap))` : `${rail.size}px`) : undefined;\n\n // `full` writes no inline height: the stylesheet states it as 100vh with a\n // 100dvh override where supported, and an inline value would beat both.\n const heightStyle: React.CSSProperties = height === 'full' ? {} : height === 'auto' ? { height: 'auto' } : typeof height === 'number' ? { height: `${height}px` } : { height };\n\n return (\n <ShellStoreContext.Provider value={store}>\n <ShellSizeContext.Provider value={size}>\n <ShellInsetContext.Provider value={insetContext}>\n {/* The Root is not a widget: it hears Escape bubbling up from the panes,\n after their own handlers, to close the overlays. */}\n {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions */}\n <div\n {...props}\n ref={composedRef}\n className={classNames('kui-ShellRoot', className)}\n data-height={height === 'auto' ? 'auto' : undefined}\n data-has-inset={insetPanes.size > 0 || undefined}\n data-overlay-live={liveCount > 0 || undefined}\n onKeyDown={handleKeyDown}\n onFocus={handleFocus}\n style={{ ...heightStyle, ...(railOffset ? ({ '--shell-rail-offset': railOffset } as CSSPropertiesWithVars) : {}), ...style }}\n >\n {children}\n {/* Root-owned and always mounted. The stylesheet shows it while an\n overlay is live; containment takes the rest of the frame out of\n the accessibility tree, so the scrim itself is hidden from it. */}\n <div className=\"kui-ShellScrim\" aria-hidden onClick={closeOverlays} />\n </div>\n </ShellInsetContext.Provider>\n </ShellSizeContext.Provider>\n </ShellStoreContext.Provider>\n );\n});\nRoot.displayName = 'Shell.Root';\n\n/* \u2500\u2500 Header \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\ninterface ShellHeaderProps extends React.ComponentPropsWithoutRef<'header'> {\n height?: number;\n}\n\nconst Header = React.forwardRef<HTMLElement, ShellHeaderProps>(({ className, height = 64, style, ...props }, ref) => (\n <header\n {...props}\n ref={ref}\n className={classNames('kui-ShellHeader', className)}\n style={\n {\n ...style,\n '--shell-header-height': `${height}px`,\n } as CSSPropertiesWithVars\n }\n />\n));\nHeader.displayName = 'Shell.Header';\n\n/* \u2500\u2500 Left (deprecated) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\ninterface LeftProps extends React.ComponentPropsWithoutRef<'div'> {\n presentation?: ResponsivePresentation;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean, meta: { reason: 'init' | 'toggle' | 'panel' | 'responsive' | 'dismiss' }) => void;\n collapsible?: boolean;\n onExpand?: () => void;\n onCollapse?: () => void;\n inset?: boolean;\n}\n\n/**\n * @deprecated The Root no longer wraps the Rail and Panel in a Left\n * container: each is its own pane. `Shell.Left` renders its children and\n * ignores its own props. Removed in 1.0.\n */\nconst Left = React.forwardRef<HTMLDivElement, LeftProps>(({ children }, _ref) => {\n React.useEffect(() => {\n warnOnce('Shell.Left is deprecated and is removed in 1.0. Render Shell.Rail and Shell.Panel directly in Shell.Root.');\n }, []);\n return <>{children}</>;\n});\nLeft.displayName = 'Shell.Left';\n\n/* \u2500\u2500 Rail \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\ntype RailOpenChangeMeta = { reason: 'init' | 'toggle' | 'responsive' | 'panel' | 'dismiss' };\n\ntype RailControlledProps = { open: boolean | Partial<Record<Breakpoint, boolean>>; onOpenChange?: (open: boolean, meta: RailOpenChangeMeta) => void; defaultOpen?: never };\ntype RailUncontrolledProps = { defaultOpen?: boolean | Partial<Record<Breakpoint, boolean>>; onOpenChange?: (open: boolean, meta: RailOpenChangeMeta) => void; open?: never };\n\ntype RailProps = React.ComponentPropsWithoutRef<'div'> & {\n presentation?: ResponsivePresentation;\n expandedSize?: number;\n collapsible?: boolean;\n /** @deprecated Use `onOpenChange`. */\n onExpand?: () => void;\n /** @deprecated Use `onOpenChange`. */\n onCollapse?: () => void;\n /** When true, adds margin and triggers the gray backdrop on the Shell. */\n inset?: boolean;\n} & (RailControlledProps | RailUncontrolledProps);\n\nconst RAIL_PROP_NAMES = { controlled: 'open', default: 'defaultOpen' };\n\nconst Rail = React.forwardRef<HTMLDivElement, RailProps>((props, ref) => {\n const { className, presentation, expandedSize = 64, collapsible: _collapsible, onExpand, onCollapse, children, style, open, defaultOpen, onOpenChange, inset, id, ...domProps } = props;\n const { table, attributes } = usePresentationTable(presentation, 'fixed');\n const pane = usePane({\n name: 'rail',\n label: 'Rail',\n propNames: RAIL_PROP_NAMES,\n id,\n controlled: toPaneValue(open),\n defaultValue: toPaneValue(defaultOpen),\n presentationTable: table,\n builtIn: navigationRest,\n onChange: (value, reason) => onOpenChange?.(value !== 'closed', { reason }),\n onExpand,\n onCollapse,\n size: expandedSize,\n });\n useInsetRegistration('rail', inset);\n const composedRef = useComposedRefs(ref, pane.setElement);\n\n return (\n <div\n {...domProps}\n id={pane.id}\n ref={composedRef}\n className={classNames('kui-ShellPane', 'kui-ShellRail', className)}\n {...paneAttributes(pane, attributes)}\n data-inset={inset || undefined}\n tabIndex={pane.overlaying ? -1 : domProps.tabIndex}\n style={{ ...style, '--rail-size': `${expandedSize}px` } as CSSPropertiesWithVars}\n >\n <RailContent>{children}</RailContent>\n </div>\n );\n});\nRail.displayName = 'Shell.Rail';\n\n/** The Rail's content carries the index, so the thin row styles can size themselves by it. */\nfunction RailContent({ children }: { children: React.ReactNode }) {\n const size = React.useContext(ShellSizeContext);\n return (\n <div className={classNames('kui-ShellRailContent', `kui-r-size-${size}`)}>\n <PaneChromeScope presentation=\"thin\">{children}</PaneChromeScope>\n </div>\n );\n}\n\n/* \u2500\u2500 Panel \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\ntype HandleComponent = React.ForwardRefExoticComponent<React.ComponentPropsWithoutRef<'div'> & React.RefAttributes<HTMLDivElement>>;\n\ntype PanelOpenChangeMeta = { reason: 'toggle' | 'left' | 'init' | 'responsive' | 'dismiss' };\ntype PanelControlledProps = { open: boolean | Partial<Record<Breakpoint, boolean>>; onOpenChange?: (open: boolean, meta: PanelOpenChangeMeta) => void; defaultOpen?: never };\ntype PanelUncontrolledProps = { defaultOpen?: boolean | Partial<Record<Breakpoint, boolean>>; onOpenChange?: (open: boolean, meta: PanelOpenChangeMeta) => void; open?: never };\n\ntype PanelSizeControlledProps = { size: number | string; defaultSize?: never };\ntype PanelSizeUncontrolledProps = { defaultSize?: number | string; size?: never };\n\ntype PanelSizeChangeMeta = { reason: 'init' | 'resize' | 'controlled' };\ntype PanelPublicProps = PaneBaseProps &\n (PanelControlledProps | PanelUncontrolledProps) &\n (PanelSizeControlledProps | PanelSizeUncontrolledProps) & {\n onSizeChange?: (size: number, meta: PanelSizeChangeMeta) => void;\n sizeUpdate?: 'throttle' | 'debounce';\n sizeUpdateMs?: number;\n /** When true, adds margin and triggers the gray backdrop on the Shell. */\n inset?: boolean;\n };\ntype PanelComponent = React.ForwardRefExoticComponent<PanelPublicProps & React.RefAttributes<HTMLDivElement>> & {\n Handle: HandleComponent;\n};\n\nconst PANEL_PROP_NAMES = { controlled: 'open', default: 'defaultOpen' };\n\n/**\n * A Panel with a `presentation` of its own uses it. One without follows the\n * Rail rendered before it, which is how 0.7 placed a Panel; the stylesheet\n * reads the Rail's attributes for the first paint and the registry carries\n * the Rail's table for the JS mirror.\n */\nconst Panel = React.forwardRef<HTMLDivElement, PanelPublicProps>((props, ref) => {\n const {\n className,\n presentation,\n defaultOpen,\n open,\n onOpenChange,\n size,\n defaultSize,\n expandedSize = 288,\n minSize = 100,\n maxSize = 800,\n resizable = false,\n collapsible = true,\n onExpand,\n onCollapse,\n onResize,\n onResizeStart,\n onResizeEnd,\n snapPoints,\n snapTolerance,\n collapseThreshold,\n paneId,\n persistence,\n children,\n style,\n onSizeChange,\n sizeUpdate,\n sizeUpdateMs = 50,\n inset,\n id,\n ...domProps\n } = props;\n const store = useShellStore('Shell.Panel');\n const rail = usePaneEntry(store, 'rail');\n const own = usePresentationTable(presentation, 'fixed');\n const followsRail = presentation === undefined;\n const presentationTable = followsRail ? (rail?.presentationTable ?? FIXED_TABLE) : own.table;\n const presentationAttributes = followsRail ? { 'data-presentation-follows': '' } : own.attributes;\n\n const pane = usePane({\n name: 'panel',\n label: 'Panel',\n propNames: PANEL_PROP_NAMES,\n id,\n controlled: toPaneValue(open),\n defaultValue: toPaneValue(defaultOpen),\n presentationTable,\n builtIn: detailRest,\n onChange: (value, reason) => onOpenChange?.(value !== 'closed', { reason }),\n onExpand,\n onCollapse,\n size: expandedSize,\n });\n useInsetRegistration('panel', inset);\n\n React.useEffect(() => {\n if (snapPoints !== undefined || collapseThreshold !== undefined || paneId !== undefined || persistence !== undefined) {\n warnOnce('Shell.Panel: `snapPoints`, `collapseThreshold`, `paneId` and `persistence` are deprecated and are removed in 1.0. Keep the size in your own state with `size`/`onSizeChange`.');\n }\n }, [snapPoints, collapseThreshold, paneId, persistence]);\n\n const elementRef = React.useRef<HTMLElement | null>(null);\n const composedRef = useComposedRefs(ref, pane.setElement, elementRef);\n\n const resize = useResizablePane({\n name: 'panel',\n elementId: pane.id,\n elementRef,\n cssVarName: '--panel-size',\n orientation: 'vertical',\n edge: 'end',\n growth: startAnchoredGrowth,\n expandedSize,\n minSize,\n maxSize,\n resizable,\n collapsible,\n size,\n defaultSize,\n onSizeChange,\n sizeUpdate,\n sizeUpdateMs,\n onResize,\n onResizeStart,\n onResizeEnd,\n snapPoints,\n snapTolerance,\n collapseThreshold,\n paneId,\n persistence,\n overlaying: pane.overlaying,\n // Asked when the effect runs: the Rail registers its table after this\n // Panel first renders, so the render's answer can be out of date.\n overlayingNow: () => {\n const table = followsRail ? (store.entries.get('rail')?.presentationTable ?? FIXED_TABLE) : own.table;\n return table[readBreakpoint()] === 'overlay';\n },\n requestCollapse: () => pane.setValue('closed', 'toggle'),\n requestToggle: () => pane.toggle('toggle'),\n });\n\n const { handles, content } = splitHandles(children, PanelHandle);\n const handle = resizable && pane.shown !== false && !pane.overlaying ? <PaneResizeContext.Provider value={resize}>{handles.length > 0 ? handles : <PaneHandle />}</PaneResizeContext.Provider> : null;\n\n return (\n <div\n {...withoutRemovedPaneProps(domProps)}\n id={pane.id}\n ref={composedRef}\n className={classNames('kui-ShellPane', 'kui-ShellPanel', className)}\n {...paneAttributes(pane, presentationAttributes)}\n data-inset={inset || undefined}\n tabIndex={pane.overlaying ? -1 : domProps.tabIndex}\n style={\n {\n ...style,\n '--panel-expanded-size': `${expandedSize}px`,\n } as CSSPropertiesWithVars\n }\n >\n <div className=\"kui-ShellPanelContent\">\n <PaneChromeScope>{content}</PaneChromeScope>\n </div>\n {handle}\n </div>\n );\n}) as PanelComponent;\nPanel.displayName = 'Shell.Panel';\nPanel.Handle = PanelHandle;\n\n/* \u2500\u2500 Content \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\ninterface ShellContentProps extends React.ComponentPropsWithoutRef<'main'> {\n /** When true, adds margin and triggers the gray backdrop on the Shell. */\n inset?: boolean;\n}\n\nconst Content = React.forwardRef<HTMLElement, ShellContentProps>(({ className, inset, ...props }, ref) => {\n useInsetRegistration('content', inset);\n return <main {...props} ref={ref} className={classNames('kui-ShellContent', className)} data-inset={inset || undefined} />;\n});\nContent.displayName = 'Shell.Content';\n\n/* \u2500\u2500 Trigger \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\ntype TriggerAction = 'toggle' | 'expand' | 'collapse';\n\ninterface TriggerProps extends React.ComponentPropsWithoutRef<'button'> {\n target: PaneTarget;\n action?: TriggerAction;\n /**\n * Whether to show a preview of the target pane on hover while it is closed\n * and not an overlay. Defaults to false.\n *\n * @deprecated Removed in 1.0. A preview reachable only by mouse hover has no\n * keyboard or touch equivalent; open the pane instead.\n */\n peekOnHover?: boolean;\n}\n\n/**\n * A button that drives a pane by name, through the registry. It sets\n * `aria-controls` and `aria-expanded` (left off while an untouched pane\n * cannot know its state yet), renders `type=\"button\"`, and runs the\n * consumer's `onClick` first: calling `preventDefault()` there cancels it.\n */\nconst Trigger = React.forwardRef<HTMLButtonElement, TriggerProps>(({ target, action = 'toggle', peekOnHover, onClick, onMouseEnter, onMouseLeave, children, ...props }, ref) => {\n const store = useShellStore('Shell.Trigger');\n React.useEffect(() => {\n if (target === 'left') warnOnce('Shell.Trigger target=\"left\" is deprecated and is removed in 1.0. Use target=\"rail\".');\n if (peekOnHover) warnOnce('Shell.Trigger: `peekOnHover` is deprecated and is removed in 1.0.');\n }, [target, peekOnHover]);\n const name: PaneName = target === 'left' ? 'rail' : target;\n // Subscribes to its own pane only.\n const entry = usePaneEntry(store, name);\n const shown = entry?.value === undefined ? undefined : entry.value !== 'closed';\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n onClick?.(event);\n if (event.defaultPrevented) return;\n const current = store.entries.get(name);\n if (!current) return;\n if (store.peek === name) setShellPeek(store, null);\n if (action === 'toggle') current.toggle('toggle');\n else if (action === 'expand') current.setValue('open', 'toggle');\n else current.setValue('closed', 'toggle');\n };\n\n const handleMouseEnter = (event: React.MouseEvent<HTMLButtonElement>) => {\n onMouseEnter?.(event);\n if (!peekOnHover) return;\n const current = store.entries.get(name);\n if (current && current.value === 'closed' && current.presentation !== 'overlay') setShellPeek(store, name);\n };\n\n const handleMouseLeave = (event: React.MouseEvent<HTMLButtonElement>) => {\n onMouseLeave?.(event);\n if (peekOnHover && store.peek === name) setShellPeek(store, null);\n };\n\n return (\n <button\n // A button's default type is `submit`. Stated before the spread, so a consumer's own wins.\n type=\"button\"\n aria-controls={entry?.id}\n aria-expanded={shown}\n {...props}\n ref={ref}\n onClick={handleClick}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n data-shell-trigger={target}\n data-shell-action={action}\n >\n {children}\n </button>\n );\n});\nTrigger.displayName = 'Shell.Trigger';\n\n// Exports\nexport {\n Root,\n Header,\n Left,\n Rail,\n Panel,\n Sidebar,\n Content,\n Inspector,\n Bottom,\n Trigger,\n PaneHeader,\n PaneFooter,\n Scroll,\n useShell,\n useSidebarMode,\n useResponsivePresentation,\n type PaneMode,\n type SidebarMode,\n type ResponsivePresentation,\n type PaneTarget,\n type TriggerAction,\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["shell_exports", "__export", "Bottom", "Content", "Header", "Inspector", "Left", "PaneFooter", "PaneHeader", "Panel", "Rail", "Root", "Scroll", "Sidebar", "Trigger", "useResponsivePresentation", "useShell", "useSidebarMode", "React", "classNames", "useComposedRefs", "pageLockHolders", "updatePageLock", "delta", "doc", "INERT_MARK", "RESCUE_FRAMES", "isNowhere", "el", "triggerFor", "id", "within", "pane", "shellSizePropDef", "Root", "className", "children", "height", "sizeProp", "style", "onKeyDown", "onFocus", "props", "ref", "size", "useThemeSize", "store", "createShellStore", "subscribe", "listener", "subscribeShellStore", "rootRef", "composedRef", "useComposedRefs", "insetPanes", "setInsetPanes", "registerInset", "prev", "unregisterInset", "next", "insetContext", "closeOverlays", "entry", "livePanes", "liveCount", "contained", "contain", "rootEl", "liveEls", "child", "holdsLive", "returnFocusTo", "lastLive", "lastFocusInRoot", "holdsLock", "rescueFrame", "cancelRescue", "rescueFocus", "target", "lost", "frames", "tick", "live", "wantsLock", "previous", "closed", "inClosed", "active", "inRoot", "before", "opened", "now", "observer", "handleKeyDown", "event", "onDocumentKeyDown", "handleFocus", "rail", "railOffset", "heightStyle", "ShellStoreContext", "ShellSizeContext", "ShellInsetContext", "classNames", "Header", "Left", "_ref", "RAIL_PROP_NAMES", "Rail", "presentation", "expandedSize", "_collapsible", "onExpand", "onCollapse", "open", "defaultOpen", "onOpenChange", "inset", "domProps", "table", "attributes", "usePresentationTable", "usePane", "toPaneValue", "navigationRest", "value", "reason", "useInsetRegistration", "paneAttributes", "RailContent", "PaneChromeScope", "PANEL_PROP_NAMES", "Panel", "defaultSize", "minSize", "maxSize", "resizable", "collapsible", "onResize", "onResizeStart", "onResizeEnd", "snapPoints", "snapTolerance", "collapseThreshold", "paneId", "persistence", "onSizeChange", "sizeUpdate", "sizeUpdateMs", "useShellStore", "usePaneEntry", "own", "followsRail", "presentationTable", "FIXED_TABLE", "presentationAttributes", "detailRest", "elementRef", "resize", "useResizablePane", "startAnchoredGrowth", "readBreakpoint", "handles", "content", "splitHandles", "PanelHandle", "handle", "PaneResizeContext", "PaneHandle", "withoutRemovedPaneProps", "Content", "Trigger", "action", "peekOnHover", "onClick", "onMouseEnter", "onMouseLeave", "name", "shown", "handleClick", "current", "setShellPeek", "handleMouseEnter", "handleMouseLeave"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e}from"./chunk-4P6TKZCA.js";import*as o from"react";import u from"classnames";import{Slot as f}from"radix-ui";var k=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("kui-Blockquote",c)},o.createElement(m,null,s))});k.displayName="Blockquote";export{k as a};
|
|
2
|
+
//# sourceMappingURL=chunk-FJFBM7HW.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/components/blockquote.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { Slot } from 'radix-ui';\n\nimport { Text } from './text.js';\n\nimport type { blockquotePropDefs } from './blockquote.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype BlockquoteElement = React.ElementRef<'blockquote'>;\ntype BlockQuoteOwnProps = GetPropDefTypes<typeof blockquotePropDefs>;\ninterface BlockquoteProps\n extends ComponentPropsWithout<'blockquote', RemovedProps>,\n BlockQuoteOwnProps {}\nconst Blockquote = React.forwardRef<BlockquoteElement, BlockquoteProps>((props, forwardedRef) => {\n const { asChild, children, className, ...blockquoteProps } = props;\n const Comp = asChild ? Slot.Root : 'blockquote';\n return (\n <Text\n asChild\n {...blockquoteProps}\n ref={forwardedRef}\n className={classNames('
|
|
5
|
-
"mappings": "wCAAA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,QAAAC,MAAY,WAarB,IAAMC,EAAmB,aAA+C,CAACC,EAAOC,IAAiB,CAC/F,GAAM,CAAE,QAAAC,EAAS,SAAAC,EAAU,UAAAC,EAAW,GAAGC,CAAgB,EAAIL,EACvDM,EAAOJ,EAAUK,EAAK,KAAO,aACnC,OACE,gBAACC,EAAA,CACC,QAAO,GACN,GAAGH,EACJ,IAAKJ,EACL,UAAWQ,EAAW,
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { Slot } from 'radix-ui';\n\nimport { Text } from './text.js';\n\nimport type { blockquotePropDefs } from './blockquote.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype BlockquoteElement = React.ElementRef<'blockquote'>;\ntype BlockQuoteOwnProps = GetPropDefTypes<typeof blockquotePropDefs>;\ninterface BlockquoteProps\n extends ComponentPropsWithout<'blockquote', RemovedProps>,\n BlockQuoteOwnProps {}\nconst Blockquote = React.forwardRef<BlockquoteElement, BlockquoteProps>((props, forwardedRef) => {\n const { asChild, children, className, ...blockquoteProps } = props;\n const Comp = asChild ? Slot.Root : 'blockquote';\n return (\n <Text\n asChild\n {...blockquoteProps}\n ref={forwardedRef}\n className={classNames('kui-Blockquote', className)}\n >\n <Comp>{children}</Comp>\n </Text>\n );\n});\nBlockquote.displayName = 'Blockquote';\n\nexport { Blockquote };\nexport type { BlockquoteProps };\n"],
|
|
5
|
+
"mappings": "wCAAA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,QAAAC,MAAY,WAarB,IAAMC,EAAmB,aAA+C,CAACC,EAAOC,IAAiB,CAC/F,GAAM,CAAE,QAAAC,EAAS,SAAAC,EAAU,UAAAC,EAAW,GAAGC,CAAgB,EAAIL,EACvDM,EAAOJ,EAAUK,EAAK,KAAO,aACnC,OACE,gBAACC,EAAA,CACC,QAAO,GACN,GAAGH,EACJ,IAAKJ,EACL,UAAWQ,EAAW,iBAAkBL,CAAS,GAEjD,gBAACE,EAAA,KAAMH,CAAS,CAClB,CAEJ,CAAC,EACDJ,EAAW,YAAc",
|
|
6
6
|
"names": ["React", "classNames", "Slot", "Blockquote", "props", "forwardedRef", "asChild", "children", "className", "blockquoteProps", "Comp", "Slot", "Text", "classNames"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as o}from"./chunk-NUVUXNHF.js";import{a as e}from"./chunk-EKTVL6SS.js";import{a as t}from"./chunk-NZJGC6ZW.js";var i=["1","2","3","4"],n={...t,align:{type:"enum",className:"kui-r-align",values:["start","center"],default:"center"},size:{type:"enum",className:"kui-r-size",values:i,default:"2",responsive:!0},width:e.width,minWidth:e.minWidth,maxWidth:e.maxWidth,...o};export{n as a};
|
|
2
|
+
//# sourceMappingURL=chunk-FNAE6HUI.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/components/dialog.props.tsx"],
|
|
4
|
+
"sourcesContent": ["import { asChildPropDef } from '../props/as-child.prop.js';\nimport { widthPropDefs } from '../props/width.props.js';\nimport { heightPropDefs } from '../props/height.props.js';\n\nimport type { PropDef, GetPropDefTypes } from '../props/prop-def.js';\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst alignValues = ['start', 'center'] as const;\nconst contentSizes = ['1', '2', '3', '4'] as const;\n\nconst dialogContentPropDefs = {\n ...asChildPropDef,\n align: {\n type: 'enum',\n className: 'kui-r-align',\n values: ['start', 'center'],\n default: 'center',\n },\n size: {\n type: 'enum',\n className: 'kui-r-size',\n values: contentSizes,\n default: '2',\n responsive: true,\n },\n width: widthPropDefs.width,\n minWidth: widthPropDefs.minWidth,\n // No default: the size's --overlay-w is the max width until a maxWidth is given.\n maxWidth: widthPropDefs.maxWidth,\n ...heightPropDefs,\n} satisfies {\n align: PropDef<(typeof alignValues)[number]>;\n size: PropDef<(typeof contentSizes)[number]>;\n width: PropDef<string>;\n minWidth: PropDef<string>;\n maxWidth: PropDef<string>;\n};\n\ntype DialogContentOwnProps = GetPropDefTypes<\n typeof dialogContentPropDefs & typeof asChildPropDef & typeof widthPropDefs\n>;\n\nexport { dialogContentPropDefs };\nexport type { DialogContentOwnProps };\n"],
|
|
5
|
+
"mappings": "wHAQA,IAAMA,EAAe,CAAC,IAAK,IAAK,IAAK,GAAG,EAElCC,EAAwB,CAC5B,GAAGC,EACH,MAAO,CACL,KAAM,OACN,UAAW,cACX,OAAQ,CAAC,QAAS,QAAQ,EAC1B,QAAS,QACX,EACA,KAAM,CACJ,KAAM,OACN,UAAW,aACX,OAAQF,EACR,QAAS,IACT,WAAY,EACd,EACA,MAAOG,EAAc,MACrB,SAAUA,EAAc,SAExB,SAAUA,EAAc,SACxB,GAAGC,CACL",
|
|
6
|
+
"names": ["contentSizes", "dialogContentPropDefs", "asChildPropDef", "widthPropDefs", "heightPropDefs"]
|
|
7
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
var i={sans:"--font-sans",mono:"--font-mono",serif:"--font-serif"},s={body:"--font-body",heading:"--font-heading",code:"--font-code",strong:"--font-strong",em:"--font-em",quote:"--font-quote"},l={system:"-apple-system, BlinkMacSystemFont, 'Segoe UI (Custom)', Roboto, 'Helvetica Neue', system-ui, sans-serif",inter:"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI (Custom)', Roboto, system-ui, sans-serif",poppins:"'Poppins', -apple-system, BlinkMacSystemFont, system-ui, sans-serif",openSans:"'Open Sans (Custom)', -apple-system, BlinkMacSystemFont, system-ui, sans-serif",systemMono:"'Menlo', 'Consolas (Custom)', 'Bitstream Vera Sans Mono', monospace",jetbrainsMono:"'JetBrains Mono', 'Menlo', 'Consolas (Custom)', monospace",firaCode:"'Fira Code', 'Menlo', 'Consolas (Custom)', monospace",sourceCodePro:"'Source Code Pro', 'Menlo', 'Consolas (Custom)', monospace",systemSerif:"'Times New Roman', 'Times', 'Georgia', 'Cambria', serif",playfair:"'Playfair Display', 'Times New Roman', 'Georgia', serif",georgia:"'Georgia', 'Times New Roman', 'Times', serif",lora:"'Lora', 'Georgia', 'Times New Roman', serif"};function m(o,t,e){for(let r of Object.keys(t)){let n=e[r];n&&o.style.setProperty(t[r],n)}}function c(o,t){for(let e of Object.values(t))o.style.removeProperty(e)}function f(o,{root:t=document.documentElement,themeElement:e=document.querySelector(".
|
|
2
|
-
`));let r=Object.entries(o.roles??{}).filter(([,n])=>n);return r.length&&t.push([".
|
|
1
|
+
var i={sans:"--font-sans",mono:"--font-mono",serif:"--font-serif"},s={body:"--font-body",heading:"--font-heading",code:"--font-code",strong:"--font-strong",em:"--font-em",quote:"--font-quote"},l={system:"-apple-system, BlinkMacSystemFont, 'Segoe UI (Custom)', Roboto, 'Helvetica Neue', system-ui, sans-serif",inter:"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI (Custom)', Roboto, system-ui, sans-serif",poppins:"'Poppins', -apple-system, BlinkMacSystemFont, system-ui, sans-serif",openSans:"'Open Sans (Custom)', -apple-system, BlinkMacSystemFont, system-ui, sans-serif",systemMono:"'Menlo', 'Consolas (Custom)', 'Bitstream Vera Sans Mono', monospace",jetbrainsMono:"'JetBrains Mono', 'Menlo', 'Consolas (Custom)', monospace",firaCode:"'Fira Code', 'Menlo', 'Consolas (Custom)', monospace",sourceCodePro:"'Source Code Pro', 'Menlo', 'Consolas (Custom)', monospace",systemSerif:"'Times New Roman', 'Times', 'Georgia', 'Cambria', serif",playfair:"'Playfair Display', 'Times New Roman', 'Georgia', serif",georgia:"'Georgia', 'Times New Roman', 'Times', serif",lora:"'Lora', 'Georgia', 'Times New Roman', serif"};function m(o,t,e){for(let r of Object.keys(t)){let n=e[r];n&&o.style.setProperty(t[r],n)}}function c(o,t){for(let e of Object.values(t))o.style.removeProperty(e)}function f(o,{root:t=document.documentElement,themeElement:e=document.querySelector(".kui-theme")}={}){o.stacks&&m(t,i,o.stacks),o.roles&&e&&m(e,s,o.roles)}function u(o){let t=[],e=Object.entries(o.stacks??{}).filter(([,n])=>n);e.length&&t.push([":root {",...e.map(([n,a])=>` ${i[n]}: ${a};`),"}"].join(`
|
|
2
|
+
`));let r=Object.entries(o.roles??{}).filter(([,n])=>n);return r.length&&t.push([".kui-theme {",...r.map(([n,a])=>` ${s[n]}: ${a};`),"}"].join(`
|
|
3
3
|
`)),t.join(`
|
|
4
4
|
|
|
5
|
-
`)}function
|
|
6
|
-
//# sourceMappingURL=chunk-
|
|
5
|
+
`)}function g({root:o=document.documentElement,themeElement:t=document.querySelector(".kui-theme")}={}){c(o,i),t&&c(t,s)}function d({themeElement:o=document.querySelector(".kui-theme")}={}){let t=getComputedStyle(o??document.documentElement),e=r=>t.getPropertyValue(r).trim()||void 0;return{stacks:{sans:e(i.sans),mono:e(i.mono),serif:e(i.serif)},roles:{body:e(s.body),heading:e(s.heading),code:e(s.code),strong:e(s.strong),em:e(s.em),quote:e(s.quote)}}}export{i as a,s as b,l as c,f as d,u as e,g as f,d as g};
|
|
6
|
+
//# sourceMappingURL=chunk-FQ3QJOYE.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/helpers/font-config.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * Runtime font configuration for Kookie UI.\n *\n * This is a thin, typed wrapper over the CSS tokens in `styles/tokens/font-family.css` \u2014\n * it writes the same variables you would write by hand, and nothing else. Prefer plain CSS\n * where you can; reach for this when the stacks are only known at runtime (a theme editor,\n * a user-selectable typeface).\n *\n * Two tiers, matching the CSS:\n *\n * - `stacks` \u2014 which typefaces exist: `sans`, `mono`, `serif`. Written to `:root`.\n * - `roles` \u2014 which stack each role uses: `body`, `heading`, `code`, `strong`, `em`,\n * `quote`. Written to the theme element, since roles are per-theme.\n */\n\n/** Tier 1 \u2014 the typefaces available to the theme. */\nexport interface FontStacks {\n /** Sans-serif stack. Backs `font=\"sans\"` and, by default, body text. */\n sans?: string;\n /** Monospace stack. Backs `font=\"mono\"` and `Code`. */\n mono?: string;\n /** Serif stack. Backs `font=\"serif\"`, `Em` and `Quote`. */\n serif?: string;\n}\n\n/** Tier 2 \u2014 which stack each role of text uses. */\nexport interface FontRoles {\n /** Body text: `Text`, inputs, buttons, and anything that does not opt out. */\n body?: string;\n /** `Heading`. Follows `body` when left unset. */\n heading?: string;\n /** `Code`. */\n code?: string;\n /** `Strong`. */\n strong?: string;\n /** `Em`. */\n em?: string;\n /** `Quote`. */\n quote?: string;\n}\n\nexport interface FontConfig {\n stacks?: FontStacks;\n roles?: FontRoles;\n}\n\n/** CSS custom properties backing each stack. Declared on `:root`. */\nexport const FONT_STACK_VARIABLES = {\n sans: '--font-sans',\n mono: '--font-mono',\n serif: '--font-serif',\n} as const satisfies Record<keyof FontStacks, `--font-${string}`>;\n\n/** CSS custom properties backing each role. Declared on the theme element. */\nexport const FONT_ROLE_VARIABLES = {\n body: '--font-body',\n heading: '--font-heading',\n code: '--font-code',\n strong: '--font-strong',\n em: '--font-em',\n quote: '--font-quote',\n} as const satisfies Record<keyof FontRoles, `--font-${string}`>;\n\n/**\n * Ready-made stacks, each ending in a system fallback.\n *\n * The webfont entries assume the face is already loaded \u2014 via\n * `import '@womp/kookie-ui/fonts.css'`, `next/font`, or your own `@font-face`.\n * Kookie's core stylesheet deliberately loads none.\n */\nexport const FONT_STACKS = {\n // Sans\n system: \"-apple-system, BlinkMacSystemFont, 'Segoe UI (Custom)', Roboto, 'Helvetica Neue', system-ui, sans-serif\",\n inter: \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI (Custom)', Roboto, system-ui, sans-serif\",\n poppins: \"'Poppins', -apple-system, BlinkMacSystemFont, system-ui, sans-serif\",\n openSans: \"'Open Sans (Custom)', -apple-system, BlinkMacSystemFont, system-ui, sans-serif\",\n\n // Mono\n systemMono: \"'Menlo', 'Consolas (Custom)', 'Bitstream Vera Sans Mono', monospace\",\n jetbrainsMono: \"'JetBrains Mono', 'Menlo', 'Consolas (Custom)', monospace\",\n firaCode: \"'Fira Code', 'Menlo', 'Consolas (Custom)', monospace\",\n sourceCodePro: \"'Source Code Pro', 'Menlo', 'Consolas (Custom)', monospace\",\n\n // Serif\n systemSerif: \"'Times New Roman', 'Times', 'Georgia', 'Cambria', serif\",\n playfair: \"'Playfair Display', 'Times New Roman', 'Georgia', serif\",\n georgia: \"'Georgia', 'Times New Roman', 'Times', serif\",\n lora: \"'Lora', 'Georgia', 'Times New Roman', serif\",\n} as const;\n\nfunction write<K extends string>(target: HTMLElement, variables: Record<K, string>, values: Partial<Record<K, string>>) {\n for (const key of Object.keys(variables) as K[]) {\n const value = values[key];\n if (value) target.style.setProperty(variables[key], value);\n }\n}\n\nfunction clear(target: HTMLElement, variables: Record<string, string>) {\n for (const variable of Object.values(variables)) {\n target.style.removeProperty(variable);\n }\n}\n\n/**\n * Apply a font configuration.\n *\n * Stacks land on `:root` and roles on `themeElement`, mirroring where the stylesheet\n * declares them \u2014 writing a role to `:root` would not survive, because the theme\n * element declares its own.\n *\n * @example\n * ```ts\n * // Serif headings over a sans body\n * applyFontConfig({\n * stacks: { sans: FONT_STACKS.inter, serif: FONT_STACKS.playfair },\n * roles: { heading: 'var(--font-serif)' },\n * });\n * ```\n */\nexport function applyFontConfig(\n config: FontConfig,\n { root = document.documentElement, themeElement = document.querySelector<HTMLElement>('.
|
|
5
|
-
"mappings": "AA+CO,IAAMA,EAAuB,CAClC,KAAM,cACN,KAAM,cACN,MAAO,cACT,EAGaC,EAAsB,CACjC,KAAM,cACN,QAAS,iBACT,KAAM,cACN,OAAQ,gBACR,GAAI,YACJ,MAAO,cACT,EASaC,EAAc,CAEzB,OAAQ,0GACR,MAAO,iGACP,QAAS,sEACT,SAAU,iFAGV,WAAY,sEACZ,cAAe,4DACf,SAAU,uDACV,cAAe,6DAGf,YAAa,0DACb,SAAU,0DACV,QAAS,+CACT,KAAM,6CACR,EAEA,SAASC,EAAwBC,EAAqBC,EAA8BC,EAAoC,CACtH,QAAWC,KAAO,OAAO,KAAKF,CAAS,EAAU,CAC/C,IAAMG,EAAQF,EAAOC,CAAG,EACpBC,GAAOJ,EAAO,MAAM,YAAYC,EAAUE,CAAG,EAAGC,CAAK,CAC3D,CACF,CAEA,SAASC,EAAML,EAAqBC,EAAmC,CACrE,QAAWK,KAAY,OAAO,OAAOL,CAAS,EAC5CD,EAAO,MAAM,eAAeM,CAAQ,CAExC,CAkBO,SAASC,EACdC,EACA,CAAE,KAAAC,EAAO,SAAS,gBAAiB,aAAAC,EAAe,SAAS,cAA2B,
|
|
4
|
+
"sourcesContent": ["/**\n * Runtime font configuration for Kookie UI.\n *\n * This is a thin, typed wrapper over the CSS tokens in `styles/tokens/font-family.css` \u2014\n * it writes the same variables you would write by hand, and nothing else. Prefer plain CSS\n * where you can; reach for this when the stacks are only known at runtime (a theme editor,\n * a user-selectable typeface).\n *\n * Two tiers, matching the CSS:\n *\n * - `stacks` \u2014 which typefaces exist: `sans`, `mono`, `serif`. Written to `:root`.\n * - `roles` \u2014 which stack each role uses: `body`, `heading`, `code`, `strong`, `em`,\n * `quote`. Written to the theme element, since roles are per-theme.\n */\n\n/** Tier 1 \u2014 the typefaces available to the theme. */\nexport interface FontStacks {\n /** Sans-serif stack. Backs `font=\"sans\"` and, by default, body text. */\n sans?: string;\n /** Monospace stack. Backs `font=\"mono\"` and `Code`. */\n mono?: string;\n /** Serif stack. Backs `font=\"serif\"`, `Em` and `Quote`. */\n serif?: string;\n}\n\n/** Tier 2 \u2014 which stack each role of text uses. */\nexport interface FontRoles {\n /** Body text: `Text`, inputs, buttons, and anything that does not opt out. */\n body?: string;\n /** `Heading`. Follows `body` when left unset. */\n heading?: string;\n /** `Code`. */\n code?: string;\n /** `Strong`. */\n strong?: string;\n /** `Em`. */\n em?: string;\n /** `Quote`. */\n quote?: string;\n}\n\nexport interface FontConfig {\n stacks?: FontStacks;\n roles?: FontRoles;\n}\n\n/** CSS custom properties backing each stack. Declared on `:root`. */\nexport const FONT_STACK_VARIABLES = {\n sans: '--font-sans',\n mono: '--font-mono',\n serif: '--font-serif',\n} as const satisfies Record<keyof FontStacks, `--font-${string}`>;\n\n/** CSS custom properties backing each role. Declared on the theme element. */\nexport const FONT_ROLE_VARIABLES = {\n body: '--font-body',\n heading: '--font-heading',\n code: '--font-code',\n strong: '--font-strong',\n em: '--font-em',\n quote: '--font-quote',\n} as const satisfies Record<keyof FontRoles, `--font-${string}`>;\n\n/**\n * Ready-made stacks, each ending in a system fallback.\n *\n * The webfont entries assume the face is already loaded \u2014 via\n * `import '@womp/kookie-ui/fonts.css'`, `next/font`, or your own `@font-face`.\n * Kookie's core stylesheet deliberately loads none.\n */\nexport const FONT_STACKS = {\n // Sans\n system: \"-apple-system, BlinkMacSystemFont, 'Segoe UI (Custom)', Roboto, 'Helvetica Neue', system-ui, sans-serif\",\n inter: \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI (Custom)', Roboto, system-ui, sans-serif\",\n poppins: \"'Poppins', -apple-system, BlinkMacSystemFont, system-ui, sans-serif\",\n openSans: \"'Open Sans (Custom)', -apple-system, BlinkMacSystemFont, system-ui, sans-serif\",\n\n // Mono\n systemMono: \"'Menlo', 'Consolas (Custom)', 'Bitstream Vera Sans Mono', monospace\",\n jetbrainsMono: \"'JetBrains Mono', 'Menlo', 'Consolas (Custom)', monospace\",\n firaCode: \"'Fira Code', 'Menlo', 'Consolas (Custom)', monospace\",\n sourceCodePro: \"'Source Code Pro', 'Menlo', 'Consolas (Custom)', monospace\",\n\n // Serif\n systemSerif: \"'Times New Roman', 'Times', 'Georgia', 'Cambria', serif\",\n playfair: \"'Playfair Display', 'Times New Roman', 'Georgia', serif\",\n georgia: \"'Georgia', 'Times New Roman', 'Times', serif\",\n lora: \"'Lora', 'Georgia', 'Times New Roman', serif\",\n} as const;\n\nfunction write<K extends string>(target: HTMLElement, variables: Record<K, string>, values: Partial<Record<K, string>>) {\n for (const key of Object.keys(variables) as K[]) {\n const value = values[key];\n if (value) target.style.setProperty(variables[key], value);\n }\n}\n\nfunction clear(target: HTMLElement, variables: Record<string, string>) {\n for (const variable of Object.values(variables)) {\n target.style.removeProperty(variable);\n }\n}\n\n/**\n * Apply a font configuration.\n *\n * Stacks land on `:root` and roles on `themeElement`, mirroring where the stylesheet\n * declares them \u2014 writing a role to `:root` would not survive, because the theme\n * element declares its own.\n *\n * @example\n * ```ts\n * // Serif headings over a sans body\n * applyFontConfig({\n * stacks: { sans: FONT_STACKS.inter, serif: FONT_STACKS.playfair },\n * roles: { heading: 'var(--font-serif)' },\n * });\n * ```\n */\nexport function applyFontConfig(\n config: FontConfig,\n { root = document.documentElement, themeElement = document.querySelector<HTMLElement>('.kui-theme') }: { root?: HTMLElement; themeElement?: HTMLElement | null } = {},\n): void {\n if (config.stacks) write(root, FONT_STACK_VARIABLES, config.stacks);\n if (config.roles && themeElement) write(themeElement, FONT_ROLE_VARIABLES, config.roles);\n}\n\n/**\n * Render a font configuration as a CSS string, for injecting into a stylesheet or\n * emitting server-side.\n */\nexport function generateFontCSS(config: FontConfig): string {\n const blocks: string[] = [];\n\n const stacks = Object.entries(config.stacks ?? {}).filter(([, value]) => value);\n if (stacks.length) {\n blocks.push([':root {', ...stacks.map(([key, value]) => ` ${FONT_STACK_VARIABLES[key as keyof FontStacks]}: ${value};`), '}'].join('\\n'));\n }\n\n const roles = Object.entries(config.roles ?? {}).filter(([, value]) => value);\n if (roles.length) {\n blocks.push(['.kui-theme {', ...roles.map(([key, value]) => ` ${FONT_ROLE_VARIABLES[key as keyof FontRoles]}: ${value};`), '}'].join('\\n'));\n }\n\n return blocks.join('\\n\\n');\n}\n\n/** Drop every inline font override, falling back to the stylesheet's defaults. */\nexport function resetFonts({ root = document.documentElement, themeElement = document.querySelector<HTMLElement>('.kui-theme') }: { root?: HTMLElement; themeElement?: HTMLElement | null } = {}): void {\n clear(root, FONT_STACK_VARIABLES);\n if (themeElement) clear(themeElement, FONT_ROLE_VARIABLES);\n}\n\n/** Read the stacks and roles currently in effect. */\nexport function getCurrentFontConfig({ themeElement = document.querySelector<HTMLElement>('.kui-theme') }: { themeElement?: HTMLElement | null } = {}): Required<FontConfig> {\n // Roles resolve against the theme element, so read both tiers from it \u2014 it inherits\n // the stacks from `:root` and is the only place the roles are declared.\n const computed = getComputedStyle(themeElement ?? document.documentElement);\n const read = (variable: string) => computed.getPropertyValue(variable).trim() || undefined;\n\n return {\n stacks: {\n sans: read(FONT_STACK_VARIABLES.sans),\n mono: read(FONT_STACK_VARIABLES.mono),\n serif: read(FONT_STACK_VARIABLES.serif),\n },\n roles: {\n body: read(FONT_ROLE_VARIABLES.body),\n heading: read(FONT_ROLE_VARIABLES.heading),\n code: read(FONT_ROLE_VARIABLES.code),\n strong: read(FONT_ROLE_VARIABLES.strong),\n em: read(FONT_ROLE_VARIABLES.em),\n quote: read(FONT_ROLE_VARIABLES.quote),\n },\n };\n}\n"],
|
|
5
|
+
"mappings": "AA+CO,IAAMA,EAAuB,CAClC,KAAM,cACN,KAAM,cACN,MAAO,cACT,EAGaC,EAAsB,CACjC,KAAM,cACN,QAAS,iBACT,KAAM,cACN,OAAQ,gBACR,GAAI,YACJ,MAAO,cACT,EASaC,EAAc,CAEzB,OAAQ,0GACR,MAAO,iGACP,QAAS,sEACT,SAAU,iFAGV,WAAY,sEACZ,cAAe,4DACf,SAAU,uDACV,cAAe,6DAGf,YAAa,0DACb,SAAU,0DACV,QAAS,+CACT,KAAM,6CACR,EAEA,SAASC,EAAwBC,EAAqBC,EAA8BC,EAAoC,CACtH,QAAWC,KAAO,OAAO,KAAKF,CAAS,EAAU,CAC/C,IAAMG,EAAQF,EAAOC,CAAG,EACpBC,GAAOJ,EAAO,MAAM,YAAYC,EAAUE,CAAG,EAAGC,CAAK,CAC3D,CACF,CAEA,SAASC,EAAML,EAAqBC,EAAmC,CACrE,QAAWK,KAAY,OAAO,OAAOL,CAAS,EAC5CD,EAAO,MAAM,eAAeM,CAAQ,CAExC,CAkBO,SAASC,EACdC,EACA,CAAE,KAAAC,EAAO,SAAS,gBAAiB,aAAAC,EAAe,SAAS,cAA2B,YAAY,CAAE,EAA+D,CAAC,EAC9J,CACFF,EAAO,QAAQT,EAAMU,EAAMb,EAAsBY,EAAO,MAAM,EAC9DA,EAAO,OAASE,GAAcX,EAAMW,EAAcb,EAAqBW,EAAO,KAAK,CACzF,CAMO,SAASG,EAAgBH,EAA4B,CAC1D,IAAMI,EAAmB,CAAC,EAEpBC,EAAS,OAAO,QAAQL,EAAO,QAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAEJ,CAAK,IAAMA,CAAK,EAC1ES,EAAO,QACTD,EAAO,KAAK,CAAC,UAAW,GAAGC,EAAO,IAAI,CAAC,CAACV,EAAKC,CAAK,IAAM,KAAKR,EAAqBO,CAAuB,CAAC,KAAKC,CAAK,GAAG,EAAG,GAAG,EAAE,KAAK;AAAA,CAAI,CAAC,EAG3I,IAAMU,EAAQ,OAAO,QAAQN,EAAO,OAAS,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAEJ,CAAK,IAAMA,CAAK,EAC5E,OAAIU,EAAM,QACRF,EAAO,KAAK,CAAC,eAAgB,GAAGE,EAAM,IAAI,CAAC,CAACX,EAAKC,CAAK,IAAM,KAAKP,EAAoBM,CAAsB,CAAC,KAAKC,CAAK,GAAG,EAAG,GAAG,EAAE,KAAK;AAAA,CAAI,CAAC,EAGtIQ,EAAO,KAAK;AAAA;AAAA,CAAM,CAC3B,CAGO,SAASG,EAAW,CAAE,KAAAN,EAAO,SAAS,gBAAiB,aAAAC,EAAe,SAAS,cAA2B,YAAY,CAAE,EAA+D,CAAC,EAAS,CACtML,EAAMI,EAAMb,CAAoB,EAC5Bc,GAAcL,EAAMK,EAAcb,CAAmB,CAC3D,CAGO,SAASmB,EAAqB,CAAE,aAAAN,EAAe,SAAS,cAA2B,YAAY,CAAE,EAA2C,CAAC,EAAyB,CAG3K,IAAMO,EAAW,iBAAiBP,GAAgB,SAAS,eAAe,EACpEQ,EAAQZ,GAAqBW,EAAS,iBAAiBX,CAAQ,EAAE,KAAK,GAAK,OAEjF,MAAO,CACL,OAAQ,CACN,KAAMY,EAAKtB,EAAqB,IAAI,EACpC,KAAMsB,EAAKtB,EAAqB,IAAI,EACpC,MAAOsB,EAAKtB,EAAqB,KAAK,CACxC,EACA,MAAO,CACL,KAAMsB,EAAKrB,EAAoB,IAAI,EACnC,QAASqB,EAAKrB,EAAoB,OAAO,EACzC,KAAMqB,EAAKrB,EAAoB,IAAI,EACnC,OAAQqB,EAAKrB,EAAoB,MAAM,EACvC,GAAIqB,EAAKrB,EAAoB,EAAE,EAC/B,MAAOqB,EAAKrB,EAAoB,KAAK,CACvC,CACF,CACF",
|
|
6
6
|
"names": ["FONT_STACK_VARIABLES", "FONT_ROLE_VARIABLES", "FONT_STACKS", "write", "target", "variables", "values", "key", "value", "clear", "variable", "applyFontConfig", "config", "root", "themeElement", "generateFontCSS", "blocks", "stacks", "roles", "resetFonts", "getCurrentFontConfig", "computed", "read"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e}from"./chunk-NZJGC6ZW.js";import{a as s}from"./chunk-GNTNGLYR.js";import{c as r}from"./chunk-CUNKWFKA.js";var o=["1","2","3","4"],a=s.variant.values,f={...e,size:{type:"enum",className:"kui-r-size",values:o,default:"2",responsive:!0},variant:{type:"enum",className:"kui-variant",values:a,default:"raised"},...r};export{f as a};
|
|
2
|
+
//# sourceMappingURL=chunk-FVY44PTM.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/components/radio-group.props.tsx"],
|
|
4
|
-
"sourcesContent": ["import { baseRadioPropDefs } from './_internal/base-radio.props.js';\nimport { asChildPropDef } from '../props/as-child.prop.js';\nimport { colorPropDef } from '../props/color.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4'] as const;\n// The same list as Radio: a group offers exactly what its items can draw.\nconst variants = baseRadioPropDefs.variant.values;\n\nconst radioGroupRootPropDefs = {\n ...asChildPropDef,\n size: { type: 'enum', className: '
|
|
5
|
-
"mappings": "wHAMA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,GAAG,EAE3BC,EAAWC,EAAkB,QAAQ,OAErCC,EAAyB,CAC7B,GAAGC,EACH,KAAM,CAAE,KAAM,OAAQ,UAAW,
|
|
4
|
+
"sourcesContent": ["import { baseRadioPropDefs } from './_internal/base-radio.props.js';\nimport { asChildPropDef } from '../props/as-child.prop.js';\nimport { colorPropDef } from '../props/color.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4'] as const;\n// The same list as Radio: a group offers exactly what its items can draw.\nconst variants = baseRadioPropDefs.variant.values;\n\nconst radioGroupRootPropDefs = {\n ...asChildPropDef,\n size: { type: 'enum', className: 'kui-r-size', values: sizes, default: '2', responsive: true },\n variant: { type: 'enum', className: 'kui-variant', values: variants, default: 'raised' },\n ...colorPropDef,\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n};\n\nexport { radioGroupRootPropDefs };\n"],
|
|
5
|
+
"mappings": "wHAMA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,GAAG,EAE3BC,EAAWC,EAAkB,QAAQ,OAErCC,EAAyB,CAC7B,GAAGC,EACH,KAAM,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQJ,EAAO,QAAS,IAAK,WAAY,EAAK,EAC7F,QAAS,CAAE,KAAM,OAAQ,UAAW,cAAe,OAAQC,EAAU,QAAS,QAAS,EACvF,GAAGI,CACL",
|
|
6
6
|
"names": ["sizes", "variants", "baseRadioPropDefs", "radioGroupRootPropDefs", "asChildPropDef", "colorPropDef"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as o}from"./chunk-7MC7N4BC.js";import{z as e}from"zod";var n=o.extend({tooltip:e.string().optional().describe("Content to display in the tooltip on hover/focus"),tooltipSide:e.enum(["top","right","bottom","left"]).optional().default("top").describe("Side of the button where the tooltip should appear"),emphasis:e.enum(["loud","medium","quiet"]).optional().describe("The button's rank: loud (solid), medium (raised) or quiet (ghost). Not with variant."),iconOnly:e.boolean().optional().default(!1).describe("Square button holding only an icon; needs aria-label"),fullWidth:e.boolean().optional().default(!1).describe("Expands the button to fill its container"),tooltipAlign:e.enum(["start","center","end"]).optional().default("center").describe("Alignment of the tooltip relative to the button"),tooltipDelayDuration:e.number().optional().describe("Delay before showing the tooltip (in milliseconds)"),tooltipDisableHoverableContent:e.boolean().optional().default(!1).describe("Whether to disable hoverable content behavior")}).strict(),a=n.refine(t=>!t.iconOnly||!!(t["aria-label"]||t["aria-labelledby"]),{message:"An iconOnly Button must have either 'aria-label' or 'aria-labelledby' for accessibility",path:["aria-label"]});function r(t){return t}export{n as a,a as b,r as c};
|
|
2
|
+
//# sourceMappingURL=chunk-GBQZ4Z2H.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/components/schemas/button.schema.ts"],
|
|
4
|
+
"sourcesContent": ["import { z } from 'zod';\nimport { BaseButtonSchema } from './base-button.schema.js';\n\n/**\n * Button Zod schema - Single source of truth for Button component props\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 validation\n * const props = ButtonSchema.parse({ variant: 'solid', size: '2' });\n *\n * // Button with tooltip\n * const tooltipProps = ButtonSchema.parse({\n * tooltip: 'Save your progress',\n * tooltipSide: 'top'\n * });\n *\n * // Polymorphic button as link\n * const linkProps = ButtonSchema.parse({\n * as: 'a',\n * href: '/dashboard',\n * children: 'Go to Dashboard'\n * });\n * ```\n */\n/**\n * Button's own fields, before the rules that span fields. Toggle extends this, since a\n * refined schema cannot be extended.\n */\nexport const ButtonObjectSchema = BaseButtonSchema.extend({\n /**\n * Content to display in the tooltip on hover/focus\n */\n tooltip: z.string().optional().describe('Content to display in the tooltip on hover/focus'),\n\n /**\n * Side of the button where the tooltip should appear\n * @default 'top'\n */\n tooltipSide: z\n .enum(['top', 'right', 'bottom', 'left'])\n .optional()\n .default('top')\n .describe('Side of the button where the tooltip should appear'),\n\n /**\n * The button's rank: loud is solid, medium is raised, quiet is ghost. Pass this or `variant`, not both.\n */\n emphasis: z.enum(['loud', 'medium', 'quiet']).optional().describe(\"The button's rank: loud (solid), medium (raised) or quiet (ghost). Not with variant.\"),\n\n /**\n * A square button holding only an icon. Needs an accessible name.\n */\n iconOnly: z.boolean().optional().default(false).describe('Square button holding only an icon; needs aria-label'),\n\n /**\n * Expands the button to fill its container. Ignored when iconOnly is set.\n */\n fullWidth: z.boolean().optional().default(false).describe('Expands the button to fill its container'),\n\n /**\n * Alignment of the tooltip relative to the button\n * @default 'center'\n */\n tooltipAlign: z\n .enum(['start', 'center', 'end'])\n .optional()\n .default('center')\n .describe('Alignment of the tooltip relative to the button'),\n\n /**\n * Delay before showing the tooltip (in milliseconds)\n */\n tooltipDelayDuration: z\n .number()\n .optional()\n .describe('Delay before showing the tooltip (in milliseconds)'),\n\n /**\n * Whether to disable hoverable content behavior\n * @default false\n */\n tooltipDisableHoverableContent: z\n .boolean()\n .optional()\n .default(false)\n .describe('Whether to disable hoverable content behavior'),\n}).strict();\n\nexport const ButtonSchema = ButtonObjectSchema.refine(\n (data) => !data.iconOnly || Boolean(data['aria-label'] || data['aria-labelledby']),\n {\n message: \"An iconOnly Button must have either 'aria-label' or 'aria-labelledby' for accessibility\",\n path: ['aria-label'],\n },\n);\n\n/**\n * Type derived from Button Zod schema\n * This ensures type safety and consistency with the schema\n */\nexport type ButtonProps = z.infer<typeof ButtonSchema>;\n\n/**\n * Development-only helper to validate and normalize Button props\n * This function should only be used in development mode\n *\n * @param props - Props to validate and normalize\n * @returns Validated and normalized props\n *\n * @example\n * ```tsx\n * // In development, this will validate props and show helpful errors\n * const validatedProps = parseButtonProps({\n * variant: 'invalid',\n * tooltipSide: 'invalid'\n * });\n * // Throws validation errors for invalid enum values\n * ```\n */\nexport function parseButtonProps(props: unknown): ButtonProps {\n if (process.env.NODE_ENV === 'development') {\n return ButtonSchema.parse(props);\n }\n return props as ButtonProps;\n}\n"],
|
|
5
|
+
"mappings": "wCAAA,OAAS,KAAAA,MAAS,MAkCX,IAAMC,EAAqBC,EAAiB,OAAO,CAIxD,QAASC,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,kDAAkD,EAM1F,YAAaA,EACV,KAAK,CAAC,MAAO,QAAS,SAAU,MAAM,CAAC,EACvC,SAAS,EACT,QAAQ,KAAK,EACb,SAAS,oDAAoD,EAKhE,SAAUA,EAAE,KAAK,CAAC,OAAQ,SAAU,OAAO,CAAC,EAAE,SAAS,EAAE,SAAS,sFAAsF,EAKxJ,SAAUA,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAK,EAAE,SAAS,sDAAsD,EAK/G,UAAWA,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAK,EAAE,SAAS,0CAA0C,EAMpG,aAAcA,EACX,KAAK,CAAC,QAAS,SAAU,KAAK,CAAC,EAC/B,SAAS,EACT,QAAQ,QAAQ,EAChB,SAAS,iDAAiD,EAK7D,qBAAsBA,EACnB,OAAO,EACP,SAAS,EACT,SAAS,oDAAoD,EAMhE,+BAAgCA,EAC7B,QAAQ,EACR,SAAS,EACT,QAAQ,EAAK,EACb,SAAS,+CAA+C,CAC7D,CAAC,EAAE,OAAO,EAEGC,EAAeH,EAAmB,OAC5CI,GAAS,CAACA,EAAK,UAAY,GAAQA,EAAK,YAAY,GAAKA,EAAK,iBAAiB,GAChF,CACE,QAAS,0FACT,KAAM,CAAC,YAAY,CACrB,CACF,EAyBO,SAASC,EAAiBC,EAA6B,CAI5D,OAAOA,CACT",
|
|
6
|
+
"names": ["z", "ButtonObjectSchema", "BaseButtonSchema", "z", "ButtonSchema", "data", "parseButtonProps", "props"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{c as e}from"./chunk-CUNKWFKA.js";var s=["1","2","3","4"],a=["raised","solid","soft","outline","surface"],r={size:{type:"enum",className:"kui-r-size",values:s,default:"2",responsive:!0},variant:{type:"enum",className:"kui-variant",values:a,default:"raised"},...e};export{r as a};
|
|
2
|
+
//# sourceMappingURL=chunk-GNTNGLYR.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/components/_internal/base-radio.props.ts"],
|
|
4
|
-
"sourcesContent": ["import { colorPropDef } from '../../props/color.prop.js';\n\nimport type { PropDef } from '../../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4'] as const;\nconst variants = ['raised', 'solid', 'soft', 'outline', 'surface'] as const;\n\nconst baseRadioPropDefs = {\n size: { type: 'enum', className: '
|
|
5
|
-
"mappings": "wCAIA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,GAAG,EAC3BC,EAAW,CAAC,SAAU,QAAS,OAAQ,UAAW,SAAS,EAE3DC,EAAoB,CACxB,KAAM,CAAE,KAAM,OAAQ,UAAW,
|
|
4
|
+
"sourcesContent": ["import { colorPropDef } from '../../props/color.prop.js';\n\nimport type { PropDef } from '../../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4'] as const;\nconst variants = ['raised', 'solid', 'soft', 'outline', 'surface'] as const;\n\nconst baseRadioPropDefs = {\n size: { type: 'enum', className: 'kui-r-size', values: sizes, default: '2', responsive: true },\n variant: { type: 'enum', className: 'kui-variant', values: variants, default: 'raised' },\n ...colorPropDef,\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n};\n\nexport { baseRadioPropDefs };\n"],
|
|
5
|
+
"mappings": "wCAIA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,GAAG,EAC3BC,EAAW,CAAC,SAAU,QAAS,OAAQ,UAAW,SAAS,EAE3DC,EAAoB,CACxB,KAAM,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQF,EAAO,QAAS,IAAK,WAAY,EAAK,EAC7F,QAAS,CAAE,KAAM,OAAQ,UAAW,cAAe,OAAQC,EAAU,QAAS,QAAS,EACvF,GAAGE,CACL",
|
|
6
6
|
"names": ["sizes", "variants", "baseRadioPropDefs", "colorPropDef"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as t}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as t}from"./chunk-EKTVL6SS.js";var o={content:{type:"ReactNode",required:!0},width:t.width,minWidth:t.minWidth,maxWidth:{...t.maxWidth,default:"360px"}};export{o as a};
|
|
2
|
+
//# sourceMappingURL=chunk-H3IAGAEL.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{b as o}from"./chunk-KRJTW535.js";import{c as e}from"./chunk-CUNKWFKA.js";var r=["1","2","3","4"],p={size:{type:"enum",className:"kui-r-size",values:r,default:"2",responsive:!0}},s=["raised","surface","soft","outline","ghost"],i={variant:{type:"enum",className:"kui-variant",values:s,default:"raised"},error:{type:"boolean"},loading:{type:"boolean"},disabled:{type:"boolean"},readOnly:{type:"boolean"},...e,...o,placeholder:{type:"ReactNode"}},n={...e};export{p as a,i as b,n as c};
|
|
2
|
+
//# sourceMappingURL=chunk-HCBR74BW.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/components/select.props.tsx"],
|
|
4
|
+
"sourcesContent": ["import type React from 'react';\n\nimport { colorPropDef } from '../props/color.prop.js';\nimport { radiusPropDef } from '../props/radius.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4'] as const;\n\nconst selectRootPropDefs = {\n size: { type: 'enum', className: 'kui-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\nconst selectTriggerPropDefs = {\n variant: { type: 'enum', className: 'kui-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 placeholder: { type: 'ReactNode' },\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 placeholder: PropDef<React.ReactNode>;\n};\n\n\nconst selectContentPropDefs = {\n ...colorPropDef,\n} satisfies {\n};\n\nexport { selectRootPropDefs, selectTriggerPropDefs, selectContentPropDefs };\n"],
|
|
5
|
+
"mappings": "gFAOA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,GAAG,EAE3BC,EAAqB,CACzB,KAAM,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQD,EAAO,QAAS,IAAK,WAAY,EAAK,CAC/F,EAIME,EAAkB,CAAC,SAAU,UAAW,OAAQ,UAAW,OAAO,EAElEC,EAAwB,CAC5B,QAAS,CAAE,KAAM,OAAQ,UAAW,cAAe,OAAQD,EAAiB,QAAS,QAAS,EAC9F,MAAO,CAAE,KAAM,SAAU,EACzB,QAAS,CAAE,KAAM,SAAU,EAC3B,SAAU,CAAE,KAAM,SAAU,EAC5B,SAAU,CAAE,KAAM,SAAU,EAC5B,GAAGE,EACH,GAAGC,EACH,YAAa,CAAE,KAAM,WAAY,CACnC,EAUMC,EAAwB,CAC5B,GAAGF,CACL",
|
|
6
|
+
"names": ["sizes", "selectRootPropDefs", "triggerVariants", "selectTriggerPropDefs", "colorPropDef", "radiusPropDef", "selectContentPropDefs"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as A,b as g,c as R,d as u,e as y}from"./chunk-OY5NT7VT.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("kui-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("kui-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("kui-AccordionHeader",e)})});v.displayName="Accordion.Header";var E=o.forwardRef(({children:r,...t},e)=>{let{className:c,...s}=i(t,u),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("kui-AccordionTrigger",c)},r)});E.displayName="Accordion.Trigger";var H=o.forwardRef((r,t)=>{let{className:e,children:c,...s}=i(r,y);return o.createElement(m.Content,{...s,ref:t,className:p("kui-AccordionContent",e),"aria-live":"polite"},o.createElement("div",{className:"kui-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-HIKMKGPT.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
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('
|
|
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,
|
|
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('kui-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('kui-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('kui-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('kui-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('kui-AccordionContent', className)}\n aria-live=\"polite\"\n >\n <div className=\"kui-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,oBAAqBV,CAAS,EACpD,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,oBAAqBV,CAAS,EACtD,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,sBAAuBV,CAAS,EACxD,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,uBAAwBV,CAAS,GAEtDkB,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,uBAAwBV,CAAS,EACvD,YAAU,UAEV,gBAAC,OAAI,UAAU,6BAA6BkB,CAAS,CACvD,CAEJ,CACF,EACAK,EAAiB,YAAc",
|
|
6
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
7
|
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as i,b as s}from"./chunk-IX5HIHVI.js";import{e as p}from"./chunk-3YLYGKFB.js";import{a as o}from"./chunk-DNOQ6E3W.js";import{a as c}from"./chunk-ELAW7ZUG.js";import*as e from"react";import b from"classnames";import{Checkbox as h}from"radix-ui";import{useControllableState as P}from"radix-ui/internal";var u=e.forwardRef((a,k)=>{let m=p(a,o.size),{className:n,color:C,checked:d,defaultChecked:t,onCheckedChange:f,...l}=c(m,o),[r,x]=P({prop:d,defaultProp:t??!1,onChange:f});return e.createElement(h.Root,{"data-accent-color":C,...l,defaultChecked:t,checked:r,onCheckedChange:x,asChild:!1,ref:k,className:b("kui-reset","kui-BaseCheckboxRoot","kui-CheckboxRoot",n)},e.createElement(h.Indicator,{asChild:!0,className:"kui-BaseCheckboxIndicator kui-CheckboxIndicator"},r==="indeterminate"?e.createElement(i,null):e.createElement(s,null)))});u.displayName="Checkbox";export{u as a};
|
|
2
|
+
//# sourceMappingURL=chunk-HKPXDQ2B.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/components/checkbox.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { Checkbox as CheckboxPrimitive } from 'radix-ui';\nimport { useControllableState } from 'radix-ui/internal';\n\nimport { checkboxPropDefs } from './checkbox.props.js';\nimport { ThickCheckIcon, ThickDividerHorizontalIcon } from './icons.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { useThemeSizeProps } from '../helpers/theme-size.js';\n\nimport type { ComponentPropsWithout } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype CheckboxElement = React.ElementRef<typeof CheckboxPrimitive.Root>;\ntype CheckboxOwnProps = GetPropDefTypes<typeof checkboxPropDefs>;\ninterface CheckboxProps\n extends ComponentPropsWithout<\n typeof CheckboxPrimitive.Root,\n 'asChild' | 'color' | 'defaultValue' | 'children'\n >,\n CheckboxOwnProps {}\nconst Checkbox = React.forwardRef<CheckboxElement, CheckboxProps>((ownProps, forwardedRef) => {\n const props = useThemeSizeProps(ownProps, checkboxPropDefs.size);\n const {\n className,\n color,\n checked: checkedProp,\n defaultChecked: defaultCheckedProp,\n onCheckedChange,\n ...checkboxProps\n } = extractProps(props, checkboxPropDefs);\n\n const [checked, setChecked] = useControllableState({\n prop: checkedProp,\n defaultProp: defaultCheckedProp ?? false,\n onChange: onCheckedChange,\n });\n\n return (\n <CheckboxPrimitive.Root\n data-accent-color={color}\n {...checkboxProps}\n defaultChecked={defaultCheckedProp}\n checked={checked}\n onCheckedChange={setChecked}\n asChild={false}\n ref={forwardedRef}\n className={classNames('
|
|
5
|
-
"mappings": "uKAEA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,YAAYC,MAAyB,WAC9C,OAAS,wBAAAC,MAA4B,oBAkBrC,IAAMC,EAAiB,aAA2C,CAACC,EAAUC,IAAiB,CAC5F,IAAMC,EAAQC,EAAkBH,EAAUI,EAAiB,IAAI,EACzD,CACJ,UAAAC,EACA,MAAAC,EACA,QAASC,EACT,eAAgBC,EAChB,gBAAAC,EACA,GAAGC,CACL,EAAIC,EAAaT,EAAOE,CAAgB,EAElC,CAACQ,EAASC,CAAU,EAAIC,EAAqB,CACjD,KAAMP,EACN,YAAaC,GAAsB,GACnC,SAAUC,CACZ,CAAC,EAED,OACE,gBAACM,EAAkB,KAAlB,CACC,oBAAmBT,EAClB,GAAGI,EACJ,eAAgBF,EAChB,QAASI,EACT,gBAAiBC,EACjB,QAAS,GACT,IAAKZ,EACL,UAAWe,EAAW,
|
|
4
|
+
"sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { Checkbox as CheckboxPrimitive } from 'radix-ui';\nimport { useControllableState } from 'radix-ui/internal';\n\nimport { checkboxPropDefs } from './checkbox.props.js';\nimport { ThickCheckIcon, ThickDividerHorizontalIcon } from './icons.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { useThemeSizeProps } from '../helpers/theme-size.js';\n\nimport type { ComponentPropsWithout } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype CheckboxElement = React.ElementRef<typeof CheckboxPrimitive.Root>;\ntype CheckboxOwnProps = GetPropDefTypes<typeof checkboxPropDefs>;\ninterface CheckboxProps\n extends ComponentPropsWithout<\n typeof CheckboxPrimitive.Root,\n 'asChild' | 'color' | 'defaultValue' | 'children'\n >,\n CheckboxOwnProps {}\nconst Checkbox = React.forwardRef<CheckboxElement, CheckboxProps>((ownProps, forwardedRef) => {\n const props = useThemeSizeProps(ownProps, checkboxPropDefs.size);\n const {\n className,\n color,\n checked: checkedProp,\n defaultChecked: defaultCheckedProp,\n onCheckedChange,\n ...checkboxProps\n } = extractProps(props, checkboxPropDefs);\n\n const [checked, setChecked] = useControllableState({\n prop: checkedProp,\n defaultProp: defaultCheckedProp ?? false,\n onChange: onCheckedChange,\n });\n\n return (\n <CheckboxPrimitive.Root\n data-accent-color={color}\n {...checkboxProps}\n defaultChecked={defaultCheckedProp}\n checked={checked}\n onCheckedChange={setChecked}\n asChild={false}\n ref={forwardedRef}\n className={classNames('kui-reset', 'kui-BaseCheckboxRoot', 'kui-CheckboxRoot', className)}\n >\n <CheckboxPrimitive.Indicator\n asChild\n className=\"kui-BaseCheckboxIndicator kui-CheckboxIndicator\"\n >\n {checked === 'indeterminate' ? <ThickDividerHorizontalIcon /> : <ThickCheckIcon />}\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n );\n});\nCheckbox.displayName = 'Checkbox';\n\nexport { Checkbox };\nexport type { CheckboxProps };\n"],
|
|
5
|
+
"mappings": "uKAEA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,YAAYC,MAAyB,WAC9C,OAAS,wBAAAC,MAA4B,oBAkBrC,IAAMC,EAAiB,aAA2C,CAACC,EAAUC,IAAiB,CAC5F,IAAMC,EAAQC,EAAkBH,EAAUI,EAAiB,IAAI,EACzD,CACJ,UAAAC,EACA,MAAAC,EACA,QAASC,EACT,eAAgBC,EAChB,gBAAAC,EACA,GAAGC,CACL,EAAIC,EAAaT,EAAOE,CAAgB,EAElC,CAACQ,EAASC,CAAU,EAAIC,EAAqB,CACjD,KAAMP,EACN,YAAaC,GAAsB,GACnC,SAAUC,CACZ,CAAC,EAED,OACE,gBAACM,EAAkB,KAAlB,CACC,oBAAmBT,EAClB,GAAGI,EACJ,eAAgBF,EAChB,QAASI,EACT,gBAAiBC,EACjB,QAAS,GACT,IAAKZ,EACL,UAAWe,EAAW,YAAa,uBAAwB,mBAAoBX,CAAS,GAExF,gBAACU,EAAkB,UAAlB,CACC,QAAO,GACP,UAAU,mDAETH,IAAY,gBAAkB,gBAACK,EAAA,IAA2B,EAAK,gBAACC,EAAA,IAAe,CAClF,CACF,CAEJ,CAAC,EACDnB,EAAS,YAAc",
|
|
6
6
|
"names": ["React", "classNames", "CheckboxPrimitive", "useControllableState", "Checkbox", "ownProps", "forwardedRef", "props", "useThemeSizeProps", "baseCheckboxPropDefs", "className", "color", "checkedProp", "defaultCheckedProp", "onCheckedChange", "checkboxProps", "extractProps", "checked", "setChecked", "useControllableState", "CheckboxPrimitive", "classNames", "ThickDividerHorizontalIcon", "ThickCheckIcon"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as t}from"./chunk-NA237RHQ.js";import{a as s}from"./chunk-NZJGC6ZW.js";var n=["div","span"],a=["none","inline-grid","grid"],o=["1","2","3","4","5","6","7","8","9"],u=["1","2","3","4","5","6","7","8","9"],p=["row","column","dense","row-dense","column-dense"],i=["start","center","end","baseline","stretch"],l=["start","center","end","between"],c=["start","center","end","baseline","between","around","evenly","stretch"],f=["start","center","end","baseline","stretch"],m={as:{type:"enum",values:n,default:"div"},...s,display:{type:"enum",className:"kui-r-display",values:a,responsive:!0},areas:{type:"string",className:"kui-r-gta",customProperties:["--grid-template-areas"],responsive:!0},columns:{type:"enum | string",className:"kui-r-gtc",customProperties:["--grid-template-columns"],values:o,parseValue:r,responsive:!0},rows:{type:"enum | string",className:"kui-r-gtr",customProperties:["--grid-template-rows"],values:u,parseValue:r,responsive:!0},flow:{type:"enum",className:"kui-r-gaf",values:p,responsive:!0},align:{type:"enum",className:"kui-r-ai",values:i,responsive:!0},justify:{type:"enum",className:"kui-r-jc",values:l,parseValue:y,responsive:!0},alignContent:{type:"enum",className:"kui-r-ac",values:c,parseValue:d,responsive:!0},justifyItems:{type:"enum",className:"kui-r-ji",values:f,responsive:!0},...t};function r(e){return m.columns.values.includes(e)?e:e?.match(/^\d+$/)?`repeat(${e}, minmax(0, 1fr))`:e}function y(e){return e==="between"?"space-between":e}function d(e){return e==="between"?"space-between":e==="around"?"space-around":e==="evenly"?"space-evenly":e}export{m as a};
|
|
2
|
+
//# sourceMappingURL=chunk-IAEAXIBI.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/components/grid.props.tsx"],
|
|
4
|
+
"sourcesContent": ["import { asChildPropDef } from '../props/as-child.prop.js';\nimport { gapPropDefs } from '../props/gap.props.js';\n\nimport type { PropDef, GetPropDefTypes } from '../props/prop-def.js';\n\nconst as = ['div', 'span'] as const;\nconst displayValues = ['none', 'inline-grid', 'grid'] as const;\nconst columnsValues = ['1', '2', '3', '4', '5', '6', '7', '8', '9'] as const;\nconst rowsValues = ['1', '2', '3', '4', '5', '6', '7', '8', '9'] as const;\nconst flowValues = ['row', 'column', 'dense', 'row-dense', 'column-dense'] as const;\nconst alignValues = ['start', 'center', 'end', 'baseline', 'stretch'] as const;\nconst justifyValues = ['start', 'center', 'end', 'between'] as const;\nconst alignContentValues = [\n 'start',\n 'center',\n 'end',\n 'baseline',\n 'between',\n 'around',\n 'evenly',\n 'stretch',\n] as const;\nconst justifyItemsValues = ['start', 'center', 'end', 'baseline', 'stretch'] as const;\n\nconst gridPropDefs = {\n /**\n * Controls whether to render **div** or **span**\n *\n * @example\n * as=\"div\"\n * as=\"span\"\n */\n as: { type: 'enum', values: as, default: 'div' },\n ...asChildPropDef,\n /**\n * Sets the CSS **display** property.\n * Supports a subset of the corresponding CSS values and responsive objects.\n *\n * @example\n * display=\"inline-grid\"\n * display={{ sm: 'none', lg: 'grid' }}\n *\n * @link\n * https://developer.mozilla.org/en-US/docs/Web/CSS/display\n */\n display: {\n type: 'enum',\n className: 'kui-r-display',\n values: displayValues,\n responsive: true,\n },\n /**\n * Sets the CSS **grid-template** property.\n * Supports a subset of the corresponding CSS values and responsive objects.\n *\n * @example\n * template='\"header header\" \"sidebar content\"'\n *\n * @link\n * https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-areas\n */\n areas: {\n type: 'string',\n className: 'kui-r-gta',\n customProperties: ['--grid-template-areas'],\n responsive: true,\n },\n /**\n * Sets the CSS **grid-template-columns** property.\n * Supports numeric string values, CSS strings and responsive objects.\n *\n * Use numeric string values to create grid columns of even size.\n *\n * @example\n * columns=\"3\"\n * columns=\"100px 1fr\"\n * columns={{ xs: '1', md: 'auto 1fr' }}\n *\n * @link\n * https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-columns\n */\n columns: {\n type: 'enum | string',\n className: 'kui-r-gtc',\n customProperties: ['--grid-template-columns'],\n values: columnsValues,\n parseValue: parseGridValue,\n responsive: true,\n },\n /**\n * Sets the CSS **grid-template-rows** property.\n * Supports numeric string values, CSS strings and responsive objects.\n *\n * Use numeric string values to create grid rows of even size.\n *\n * @example\n * rows=\"3\"\n * rows=\"100px 1fr\"\n * rows={{ xs: '1', md: 'auto 1fr' }}\n *\n * @link\n * https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-rows\n */\n rows: {\n type: 'enum | string',\n className: 'kui-r-gtr',\n customProperties: ['--grid-template-rows'],\n values: rowsValues,\n parseValue: parseGridValue,\n responsive: true,\n },\n /**\n * Sets the CSS **grid-auto-flow** property.\n * Supports the corresponding CSS values and responsive objects.\n *\n * @example\n * flow=\"column\"\n * flow={{ sm: 'column', lg: 'row' }}\n *\n * @link\n * https://developer.mozilla.org/en-US/docs/Web/CSS/grid-auto-flow\n */\n flow: {\n type: 'enum',\n className: 'kui-r-gaf',\n values: flowValues,\n responsive: true,\n },\n /**\n * Sets the CSS **align-items** property.\n * Supports the corresponding CSS values and responsive objects.\n *\n * @example\n * align=\"center\"\n * align={{ sm: 'baseline', lg: 'center' }}\n *\n * @link\n * https://developer.mozilla.org/en-US/docs/Web/CSS/align-items\n */\n align: {\n type: 'enum',\n className: 'kui-r-ai',\n values: alignValues,\n responsive: true,\n },\n /**\n * Sets the CSS **justify-content** property.\n * Supports a subset of the corresponding CSS values and responsive objects.\n *\n * @example\n * justify=\"between\"\n * justify={{ sm: 'start', lg: 'center' }}\n *\n * @link\n * https://developer.mozilla.org/en-US/docs/Web/CSS/justify-content\n */\n justify: {\n type: 'enum',\n className: 'kui-r-jc',\n values: justifyValues,\n parseValue: parseJustifyValue,\n responsive: true,\n },\n /**\n * Sets the CSS **align-content** property.\n * Supports a subset of the corresponding CSS values and responsive objects.\n *\n * @example\n * alignContent=\"between\"\n * alignContent={{ sm: 'start', lg: 'center' }}\n *\n * @link\n * https://developer.mozilla.org/en-US/docs/Web/CSS/align-content\n */\n alignContent: {\n type: 'enum',\n className: 'kui-r-ac',\n values: alignContentValues,\n parseValue: parseAlignContentValue,\n responsive: true,\n },\n /**\n * Sets the CSS **justify-items** property.\n * Supports a subset of the corresponding CSS values and responsive objects.\n *\n * @example\n * justifyItems=\"center\"\n * justifyItems={{ sm: 'start', lg: 'center' }}\n *\n * @link\n * https://developer.mozilla.org/en-US/docs/Web/CSS/justify-items\n */\n justifyItems: {\n type: 'enum',\n className: 'kui-r-ji',\n values: justifyItemsValues,\n responsive: true,\n },\n ...gapPropDefs,\n} satisfies {\n as: PropDef<(typeof as)[number]>;\n display: PropDef<(typeof displayValues)[number]>;\n areas: PropDef<string>;\n columns: PropDef<(typeof columnsValues)[number]>;\n rows: PropDef<(typeof rowsValues)[number]>;\n flow: PropDef<(typeof flowValues)[number]>;\n align: PropDef<(typeof alignValues)[number]>;\n justify: PropDef<(typeof justifyValues)[number]>;\n alignContent: PropDef<(typeof alignContentValues)[number]>;\n justifyItems: PropDef<(typeof justifyItemsValues)[number]>;\n};\n\nfunction parseGridValue(value: string): string {\n if ((gridPropDefs.columns.values as readonly string[]).includes(value)) {\n return value;\n }\n\n return value?.match(/^\\d+$/) ? `repeat(${value}, minmax(0, 1fr))` : value;\n}\n\nfunction parseJustifyValue(value: string) {\n return value === 'between' ? 'space-between' : value;\n}\n\nfunction parseAlignContentValue(value: string) {\n return value === 'between'\n ? 'space-between'\n : value === 'around'\n ? 'space-around'\n : value === 'evenly'\n ? 'space-evenly'\n : value;\n}\n\n// Use all of the imported prop defs to ensure that JSDoc works\ntype GridOwnProps = GetPropDefTypes<typeof gridPropDefs & typeof asChildPropDef>;\n\nexport { gridPropDefs };\nexport type { GridOwnProps };\n"],
|
|
5
|
+
"mappings": "gFAKA,IAAMA,EAAK,CAAC,MAAO,MAAM,EACnBC,EAAgB,CAAC,OAAQ,cAAe,MAAM,EAC9CC,EAAgB,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,GAAG,EAC5DC,EAAa,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,GAAG,EACzDC,EAAa,CAAC,MAAO,SAAU,QAAS,YAAa,cAAc,EACnEC,EAAc,CAAC,QAAS,SAAU,MAAO,WAAY,SAAS,EAC9DC,EAAgB,CAAC,QAAS,SAAU,MAAO,SAAS,EACpDC,EAAqB,CACzB,QACA,SACA,MACA,WACA,UACA,SACA,SACA,SACF,EACMC,EAAqB,CAAC,QAAS,SAAU,MAAO,WAAY,SAAS,EAErEC,EAAe,CAQnB,GAAI,CAAE,KAAM,OAAQ,OAAQT,EAAI,QAAS,KAAM,EAC/C,GAAGU,EAYH,QAAS,CACP,KAAM,OACN,UAAW,gBACX,OAAQT,EACR,WAAY,EACd,EAWA,MAAO,CACL,KAAM,SACN,UAAW,YACX,iBAAkB,CAAC,uBAAuB,EAC1C,WAAY,EACd,EAeA,QAAS,CACP,KAAM,gBACN,UAAW,YACX,iBAAkB,CAAC,yBAAyB,EAC5C,OAAQC,EACR,WAAYS,EACZ,WAAY,EACd,EAeA,KAAM,CACJ,KAAM,gBACN,UAAW,YACX,iBAAkB,CAAC,sBAAsB,EACzC,OAAQR,EACR,WAAYQ,EACZ,WAAY,EACd,EAYA,KAAM,CACJ,KAAM,OACN,UAAW,YACX,OAAQP,EACR,WAAY,EACd,EAYA,MAAO,CACL,KAAM,OACN,UAAW,WACX,OAAQC,EACR,WAAY,EACd,EAYA,QAAS,CACP,KAAM,OACN,UAAW,WACX,OAAQC,EACR,WAAYM,EACZ,WAAY,EACd,EAYA,aAAc,CACZ,KAAM,OACN,UAAW,WACX,OAAQL,EACR,WAAYM,EACZ,WAAY,EACd,EAYA,aAAc,CACZ,KAAM,OACN,UAAW,WACX,OAAQL,EACR,WAAY,EACd,EACA,GAAGM,CACL,EAaA,SAASH,EAAeI,EAAuB,CAC7C,OAAKN,EAAa,QAAQ,OAA6B,SAASM,CAAK,EAC5DA,EAGFA,GAAO,MAAM,OAAO,EAAI,UAAUA,CAAK,oBAAsBA,CACtE,CAEA,SAASH,EAAkBG,EAAe,CACxC,OAAOA,IAAU,UAAY,gBAAkBA,CACjD,CAEA,SAASF,EAAuBE,EAAe,CAC7C,OAAOA,IAAU,UACb,gBACAA,IAAU,SACR,eACAA,IAAU,SACR,eACAA,CACV",
|
|
6
|
+
"names": ["as", "displayValues", "columnsValues", "rowsValues", "flowValues", "alignValues", "justifyValues", "alignContentValues", "justifyItemsValues", "gridPropDefs", "asChildPropDef", "parseGridValue", "parseJustifyValue", "parseAlignContentValue", "gapPropDefs", "value"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{b as r}from"./chunk-KRJTW535.js";import{a as e}from"./chunk-NZJGC6ZW.js";import{e as s}from"./chunk-CUNKWFKA.js";var o=["1","2","3","4"],t=["raised","solid","soft","surface","outline","ghost"],f={...e,size:{type:"enum",className:"kui-r-size",values:o,default:"2",responsive:!0},variant:{type:"enum",className:"kui-variant",values:t,default:"raised"},...s,...r};export{f as a};
|
|
2
|
+
//# sourceMappingURL=chunk-IDOZJVO6.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/components/chip.props.tsx"],
|
|
4
|
-
"sourcesContent": ["import { asChildPropDef } from '../props/as-child.prop.js';\nimport { grayAccentColorPropDef } from '../props/color.prop.js';\nimport { radiusPropDef } from '../props/radius.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4'] as const;\nconst variants = ['raised', 'solid', 'soft', 'surface', 'outline', 'ghost'] as const;\n\nconst chipPropDefs = {\n ...asChildPropDef,\n size: { type: 'enum', className: '
|
|
5
|
-
"mappings": "wHAMA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,GAAG,EAC3BC,EAAW,CAAC,SAAU,QAAS,OAAQ,UAAW,UAAW,OAAO,EAEpEC,EAAe,CACnB,GAAGC,EACH,KAAM,CAAE,KAAM,OAAQ,UAAW,
|
|
4
|
+
"sourcesContent": ["import { asChildPropDef } from '../props/as-child.prop.js';\nimport { grayAccentColorPropDef } from '../props/color.prop.js';\nimport { radiusPropDef } from '../props/radius.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4'] as const;\nconst variants = ['raised', 'solid', 'soft', 'surface', 'outline', 'ghost'] as const;\n\nconst chipPropDefs = {\n ...asChildPropDef,\n size: { type: 'enum', className: 'kui-r-size', values: sizes, default: '2', responsive: true },\n variant: { type: 'enum', className: 'kui-variant', values: variants, default: 'raised' },\n ...grayAccentColorPropDef,\n ...radiusPropDef,\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n};\n\nexport { chipPropDefs };\n"],
|
|
5
|
+
"mappings": "wHAMA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,GAAG,EAC3BC,EAAW,CAAC,SAAU,QAAS,OAAQ,UAAW,UAAW,OAAO,EAEpEC,EAAe,CACnB,GAAGC,EACH,KAAM,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQH,EAAO,QAAS,IAAK,WAAY,EAAK,EAC7F,QAAS,CAAE,KAAM,OAAQ,UAAW,cAAe,OAAQC,EAAU,QAAS,QAAS,EACvF,GAAGG,EACH,GAAGC,CACL",
|
|
6
6
|
"names": ["sizes", "variants", "chipPropDefs", "asChildPropDef", "grayAccentColorPropDef", "radiusPropDef"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as P,b as L,c as G}from"./chunk-HCBR74BW.js";import{b as w,c as E}from"./chunk-IX5HIHVI.js";import{b as N,c as x}from"./chunk-PPZY7PJA.js";import{a as b}from"./chunk-IWCFJJBI.js";import{d as T}from"./chunk-3YLYGKFB.js";import{a as R}from"./chunk-ELAW7ZUG.js";import{a as j}from"./chunk-OS3FCYZY.js";var F={};j(F,{Content:()=>V,Group:()=>O,Item:()=>A,Label:()=>W,Root:()=>D,Separator:()=>B,Trigger:()=>z});import*as e from"react";import s from"classnames";import{Select as a,ScrollArea as u}from"radix-ui";var C=e.createContext({}),D=t=>{let{children:o,size:r,...i}=t,l=T(r,P.size);return e.createElement(a.Root,{...i},e.createElement(C.Provider,{value:e.useMemo(()=>({size:l}),[l])},o))};D.displayName="Select.Root";var z=e.forwardRef((t,o)=>{let r=e.useContext(C),{children:i,className:l,color:n,radius:d,placeholder:f,error:m,loading:c,disabled:p,readOnly:v,...y}=R({size:r?.size,...t},{size:P.size},L),{"aria-invalid":S,"aria-busy":g,"aria-disabled":h,"aria-readonly":I}=y,k=!!m||S===!0||S==="true",M=e.useMemo(()=>({"aria-invalid":k?!0:S,"aria-busy":c||g,"aria-disabled":p||h,"aria-readonly":v||I}),[k,S,c,g,p,h,v,I]);return e.createElement(a.Trigger,{asChild:!0,disabled:p},e.createElement("button",{"data-accent-color":n,"data-radius":d,"data-error":m,"data-loading":c,...y,...M,ref:o,className:s("kui-reset","kui-SelectTrigger",l)},e.createElement("span",{className:"kui-SelectTriggerInner"},e.createElement(a.Value,{placeholder:f},i)),e.createElement(a.Icon,{asChild:!0},c?e.createElement("div",{className:"kui-SelectIcon kui-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:"kui-SelectLoadingIconCircle"}))):e.createElement(E,{className:"kui-SelectIcon"}))))});z.displayName="Select.Trigger";var V=e.forwardRef((t,o)=>{let r=e.useContext(C),{className:i,children:l,color:n,container:d,...f}=R({size:r?.size,...t},{size:P.size},G),m=N(),c=n||m.accentColor,p=b();return e.createElement(a.Portal,{container:d},e.createElement(x,{asChild:!0},e.createElement(a.Content,{"data-accent-color":c,sideOffset:4,...f,asChild:!1,ref:o,className:s("kui-PopperContent","kui-BaseMenuContent","kui-variant-soft","kui-SelectContent",i)},e.createElement(u.Root,{type:"auto",className:"kui-ScrollAreaRoot"},e.createElement(a.Viewport,{asChild:!0,className:s("kui-BaseMenuViewport","kui-SelectViewport")},e.createElement(u.Viewport,{ref:p,className:"kui-ScrollAreaViewport",style:{overflowY:void 0}},l)),e.createElement(u.Scrollbar,{className:"kui-ScrollAreaScrollbar",orientation:"vertical"},e.createElement(u.Thumb,{className:"kui-ScrollAreaThumb"}))))))});V.displayName="Select.Content";var A=e.forwardRef((t,o)=>{let{className:r,children:i,...l}=t,n=typeof i!="string";return e.createElement(a.Item,{...l,asChild:!1,ref:o,className:s("kui-reset","kui-BaseMenuItem","kui-SelectItem",{"kui-SelectItemRich":n},r)},e.createElement(a.ItemIndicator,{className:"kui-SelectItemIndicator"},e.createElement(w,{className:"kui-SelectItemIndicatorIcon"})),e.createElement(a.ItemText,null,i))});A.displayName="Select.Item";var O=e.forwardRef(({className:t,...o},r)=>e.createElement(a.Group,{...o,asChild:!1,ref:r,className:s("kui-SelectGroup",t)}));O.displayName="Select.Group";var W=e.forwardRef(({className:t,...o},r)=>e.createElement(a.Label,{...o,asChild:!1,ref:r,className:s("kui-BaseMenuLabel","kui-SelectLabel",t)}));W.displayName="Select.Label";var B=e.forwardRef(({className:t,...o},r)=>e.createElement(a.Separator,{...o,asChild:!1,ref:r,className:s("kui-BaseMenuSeparator","kui-SelectSeparator",t)}));B.displayName="Select.Separator";export{D as a,z as b,V as c,A as d,O as e,W as f,B as g,F as h};
|
|
2
|
+
//# sourceMappingURL=chunk-IJRBX6EV.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/components/select.tsx"],
|
|
4
|
+
"sourcesContent": ["'use client';\n\nimport { warnDeprecated } from '../helpers/warn-deprecated.js';\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { Select as SelectPrimitive, ScrollArea as ScrollAreaPrimitive } from 'radix-ui';\n\nimport { extractProps } from '../helpers/extract-props.js';\nimport { useThemeSize } from '../helpers/theme-size.js';\nimport { ChevronDownIcon, ThickCheckIcon } from './icons.js';\nimport {\n selectRootPropDefs,\n selectTriggerPropDefs,\n selectContentPropDefs,\n} from './select.props.js';\nimport { useThemeContext, Theme } from './theme.js';\nimport { useThumbSync } from '../hooks/use-thumb-sync.js';\n\nimport type { GetPropDefTypes } from '../props/prop-def.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\n\ntype SelectRootOwnProps = GetPropDefTypes<typeof selectRootPropDefs>;\n\ntype SelectContextValue = SelectRootOwnProps;\nconst SelectContext = React.createContext<SelectContextValue>({});\n\ninterface SelectRootProps extends SelectPrimitive.SelectProps, SelectContextValue {}\nconst SelectRoot: React.FC<SelectRootProps> = (props) => {\n const { children, size: sizeProp, ...rootProps } = props;\n const size = useThemeSize(sizeProp, selectRootPropDefs.size);\n return (\n <SelectPrimitive.Root {...rootProps}>\n <SelectContext.Provider value={React.useMemo(() => ({ size }), [size])}>\n {children}\n </SelectContext.Provider>\n </SelectPrimitive.Root>\n );\n};\nSelectRoot.displayName = 'Select.Root';\n\ntype SelectTriggerElement = React.ElementRef<typeof SelectPrimitive.Trigger>;\ntype SelectTriggerOwnProps = GetPropDefTypes<typeof selectTriggerPropDefs>;\ninterface SelectTriggerProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Trigger, RemovedProps>,\n SelectTriggerOwnProps {}\nconst SelectTrigger = React.forwardRef<SelectTriggerElement, SelectTriggerProps>(\n (props, forwardedRef) => {\n const context = React.useContext(SelectContext);\n const {\n children,\n className,\n color,\n radius,\n placeholder,\n error,\n loading,\n disabled,\n readOnly,\n ...triggerProps\n } = extractProps(\n // Pass size value from the context to generate styles\n { size: context?.size, ...props },\n // Pass size prop def to allow it to be extracted\n { size: selectRootPropDefs.size },\n selectTriggerPropDefs,\n );\n\n\n // The props win when set; otherwise a caller's own aria-* (a form library's aria-invalid)\n // stays, so both paths reach the accessibility tree and the CSS, as on TextField.\n const {\n 'aria-invalid': ariaInvalid,\n 'aria-busy': ariaBusy,\n 'aria-disabled': ariaDisabled,\n 'aria-readonly': ariaReadOnly,\n } = triggerProps;\n const isInvalid = Boolean(error) || ariaInvalid === true || ariaInvalid === 'true';\n const ariaProps = React.useMemo(\n () => ({\n 'aria-invalid': isInvalid ? true : ariaInvalid,\n 'aria-busy': loading || ariaBusy,\n 'aria-disabled': disabled || ariaDisabled,\n 'aria-readonly': readOnly || ariaReadOnly,\n }),\n [isInvalid, ariaInvalid, loading, ariaBusy, disabled, ariaDisabled, readOnly, ariaReadOnly],\n );\n\n return (\n // `disabled` goes to Radix, which merges it with Root's and sets the native attribute.\n <SelectPrimitive.Trigger asChild disabled={disabled}>\n <button\n data-accent-color={color}\n data-radius={radius}\n data-error={error}\n data-loading={loading}\n {...triggerProps}\n {...ariaProps}\n ref={forwardedRef}\n className={classNames('kui-reset', 'kui-SelectTrigger', className)}\n >\n <span className=\"kui-SelectTriggerInner\">\n <SelectPrimitive.Value placeholder={placeholder}>{children}</SelectPrimitive.Value>\n </span>\n <SelectPrimitive.Icon asChild>\n {loading ? (\n <div className=\"kui-SelectIcon kui-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=\"kui-SelectLoadingIconCircle\"\n />\n </svg>\n </div>\n ) : (\n <ChevronDownIcon className=\"kui-SelectIcon\" />\n )}\n </SelectPrimitive.Icon>\n </button>\n </SelectPrimitive.Trigger>\n );\n },\n);\nSelectTrigger.displayName = 'Select.Trigger';\n\ntype SelectContentElement = React.ElementRef<typeof SelectPrimitive.Content>;\ntype SelectContentOwnProps = GetPropDefTypes<typeof selectContentPropDefs>;\ninterface SelectContentProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Content, RemovedProps>,\n SelectContentOwnProps {\n container?: React.ComponentPropsWithoutRef<typeof SelectPrimitive.Portal>['container'];\n}\nconst SelectContent = React.forwardRef<SelectContentElement, SelectContentProps>(\n (props, forwardedRef) => {\n const context = React.useContext(SelectContext);\n const { className, children, color, container, ...contentProps } = extractProps(\n // Pass size value from the context to generate styles\n { size: context?.size, ...props },\n // Pass size prop def to allow it to be extracted\n { size: selectRootPropDefs.size },\n selectContentPropDefs,\n );\n const themeContext = useThemeContext();\n const resolvedColor = color || themeContext.accentColor;\n const setThumbViewport = useThumbSync<HTMLDivElement>();\n return (\n <SelectPrimitive.Portal container={container}>\n <Theme asChild>\n <SelectPrimitive.Content\n data-accent-color={resolvedColor}\n sideOffset={4}\n {...contentProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames(\n 'kui-PopperContent',\n 'kui-BaseMenuContent',\n 'kui-variant-soft',\n 'kui-SelectContent',\n className,\n )}\n >\n <ScrollAreaPrimitive.Root type=\"auto\" className=\"kui-ScrollAreaRoot\">\n <SelectPrimitive.Viewport\n asChild\n className={classNames('kui-BaseMenuViewport', 'kui-SelectViewport')}\n >\n <ScrollAreaPrimitive.Viewport\n ref={setThumbViewport}\n className=\"kui-ScrollAreaViewport\"\n style={{ overflowY: undefined }}\n >\n {children}\n </ScrollAreaPrimitive.Viewport>\n </SelectPrimitive.Viewport>\n <ScrollAreaPrimitive.Scrollbar\n className=\"kui-ScrollAreaScrollbar\"\n orientation=\"vertical\"\n >\n <ScrollAreaPrimitive.Thumb className=\"kui-ScrollAreaThumb\" />\n </ScrollAreaPrimitive.Scrollbar>\n </ScrollAreaPrimitive.Root>\n </SelectPrimitive.Content>\n </Theme>\n </SelectPrimitive.Portal>\n );\n },\n);\nSelectContent.displayName = 'Select.Content';\n\ntype SelectItemElement = React.ElementRef<typeof SelectPrimitive.Item>;\ninterface SelectItemProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Item, RemovedProps> {}\nconst SelectItem = React.forwardRef<SelectItemElement, SelectItemProps>((props, forwardedRef) => {\n const { className, children, ...itemProps } = props;\n\n // Detect if this is rich content (not just a string)\n const isRichContent = typeof children !== 'string';\n\n return (\n <SelectPrimitive.Item\n {...itemProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames(\n 'kui-reset',\n 'kui-BaseMenuItem',\n 'kui-SelectItem',\n { 'kui-SelectItemRich': isRichContent },\n className,\n )}\n >\n <SelectPrimitive.ItemIndicator className=\"kui-SelectItemIndicator\">\n <ThickCheckIcon className=\"kui-SelectItemIndicatorIcon\" />\n </SelectPrimitive.ItemIndicator>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n );\n});\nSelectItem.displayName = 'Select.Item';\n\ntype SelectGroupElement = React.ElementRef<typeof SelectPrimitive.Group>;\ninterface SelectGroupProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Group, RemovedProps> {}\nconst SelectGroup = React.forwardRef<SelectGroupElement, SelectGroupProps>(\n ({ className, ...props }, forwardedRef) => (\n <SelectPrimitive.Group\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('kui-SelectGroup', className)}\n />\n ),\n);\nSelectGroup.displayName = 'Select.Group';\n\ntype SelectLabelElement = React.ElementRef<typeof SelectPrimitive.Label>;\ninterface SelectLabelProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Label, RemovedProps> {}\nconst SelectLabel = React.forwardRef<SelectLabelElement, SelectLabelProps>(\n ({ className, ...props }, forwardedRef) => (\n <SelectPrimitive.Label\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('kui-BaseMenuLabel', 'kui-SelectLabel', className)}\n />\n ),\n);\nSelectLabel.displayName = 'Select.Label';\n\ntype SelectSeparatorElement = React.ElementRef<typeof SelectPrimitive.Separator>;\ninterface SelectSeparatorProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Separator, RemovedProps> {}\nconst SelectSeparator = React.forwardRef<SelectSeparatorElement, SelectSeparatorProps>(\n ({ className, ...props }, forwardedRef) => (\n <SelectPrimitive.Separator\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('kui-BaseMenuSeparator', 'kui-SelectSeparator', className)}\n />\n ),\n);\nSelectSeparator.displayName = 'Select.Separator';\n\nexport {\n SelectRoot as Root,\n SelectTrigger as Trigger,\n SelectContent as Content,\n SelectItem as Item,\n SelectGroup as Group,\n SelectLabel as Label,\n SelectSeparator as Separator,\n};\n\nexport type {\n SelectRootProps as RootProps,\n SelectTriggerProps as TriggerProps,\n SelectContentProps as ContentProps,\n SelectItemProps as ItemProps,\n SelectGroupProps as GroupProps,\n SelectLabelProps as LabelProps,\n SelectSeparatorProps as SeparatorProps,\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["select_exports", "__export", "SelectContent", "SelectGroup", "SelectItem", "SelectLabel", "SelectRoot", "SelectSeparator", "SelectTrigger", "React", "classNames", "SelectPrimitive", "ScrollAreaPrimitive", "SelectContext", "SelectRoot", "props", "children", "sizeProp", "rootProps", "size", "useThemeSize", "selectRootPropDefs", "SelectPrimitive", "SelectTrigger", "forwardedRef", "context", "className", "color", "radius", "placeholder", "error", "loading", "disabled", "readOnly", "triggerProps", "extractProps", "selectTriggerPropDefs", "ariaInvalid", "ariaBusy", "ariaDisabled", "ariaReadOnly", "isInvalid", "ariaProps", "classNames", "ChevronDownIcon", "SelectContent", "container", "contentProps", "selectContentPropDefs", "themeContext", "useThemeContext", "resolvedColor", "setThumbViewport", "useThumbSync", "Theme", "ScrollAreaPrimitive", "SelectItem", "itemProps", "isRichContent", "ThickCheckIcon", "SelectGroup", "SelectLabel", "SelectSeparator"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as n}from"./chunk-YLDV2HKZ.js";import{a}from"./chunk-E23RKOQJ.js";import{a as i}from"./chunk-PBFSBHBS.js";var l=n.m.values,f=new Set(l),p=[{key:"m",className:"kui-r-m",customProperties:["--margin"]},{key:"mx",className:"kui-r-mx",customProperties:["--margin-left","--margin-right"]},{key:"my",className:"kui-r-my",customProperties:["--margin-top","--margin-bottom"]},{key:"mt",className:"kui-r-mt",customProperties:["--margin-top"]},{key:"mr",className:"kui-r-mr",customProperties:["--margin-right"]},{key:"mb",className:"kui-r-mb",customProperties:["--margin-bottom"]},{key:"ml",className:"kui-r-ml",customProperties:["--margin-left"]}];function S(u){let e,r;for(let s=0;s<p.length;s++){let{key:g,className:c,customProperties:y}=p[s],t=u[g];if(t===void 0)continue;let[o,m]=i({className:c,customProperties:y,propValues:l,propValueSet:f,value:t});o&&(e??(e=[])).push(o),m&&(r=a(r,m))}return[e!==void 0?e.join(" "):"",r]}export{S as a};
|
|
2
|
+
//# sourceMappingURL=chunk-IVQHRM33.js.map
|