@womp/kookie-ui 0.21.0 → 0.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +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 +12 -12
- 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 +8937 -8648
- package/tokens/base.css +490 -482
- package/tokens.css +485 -477
- 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
package/README.md
CHANGED
|
@@ -59,11 +59,13 @@ already load.
|
|
|
59
59
|
|
|
60
60
|
Kookie UI is a fork of [Radix Themes](https://radix-ui.com/themes) that extends it into a full design system. While Radix provided excellent building blocks, Kookie UI codifies the patterns and rules that make interfaces feel consistent and systematic.
|
|
61
61
|
|
|
62
|
+
`MessageScroller` is Kookie's surface over shadcn/ui's [Message Scroller](https://ui.shadcn.com) primitive (`@shadcn/react`, MIT); the scrolling behaviour is shadcn's.
|
|
63
|
+
|
|
62
64
|
### Key Features
|
|
63
65
|
|
|
64
66
|
- **Systematic Design Tokens** - 12-point progressions for spacing, radius, and shadows with predictable steps
|
|
65
|
-
- **
|
|
66
|
-
- **
|
|
67
|
+
- **Solid surfaces** - Every surface is solid; there is no translucency or backdrop blur
|
|
68
|
+
- **Shared Size Steps** - Controls share one set of size steps
|
|
67
69
|
- **No motion** - State changes are instant; only busy indicators move
|
|
68
70
|
- **Enhanced Accessibility** - Native tooltip support, stricter aria-label enforcement, and improved keyboard navigation
|
|
69
71
|
- **Layout Patterns** - Shells, sidebars, panels, and toolbars that work together predictably
|
|
@@ -213,15 +215,15 @@ import '@womp/kookie-ui/layout.css'; // Layout utilities
|
|
|
213
215
|
|
|
214
216
|
## Requirements
|
|
215
217
|
|
|
216
|
-
- React
|
|
218
|
+
- React 18 or 19 (`MessageScroller` needs React 19)
|
|
217
219
|
- Node.js 16+ (for development)
|
|
218
220
|
- TypeScript support built-in
|
|
219
221
|
|
|
220
222
|
```json
|
|
221
223
|
{
|
|
222
224
|
"peerDependencies": {
|
|
223
|
-
"react": "
|
|
224
|
-
"react-dom": "
|
|
225
|
+
"react": "^18.0 || ^19.0",
|
|
226
|
+
"react-dom": "^18.0 || ^19.0"
|
|
225
227
|
}
|
|
226
228
|
}
|
|
227
229
|
```
|
|
@@ -297,7 +299,6 @@ Kookie UI uses a comprehensive theming system with:
|
|
|
297
299
|
|
|
298
300
|
- **Accent Colors** - Primary brand colors (blue, green, orange, etc.)
|
|
299
301
|
- **Gray Colors** - Neutral color scales (gray, mauve, slate, etc.)
|
|
300
|
-
- **Material System** - Translucent vs. solid surfaces
|
|
301
302
|
- **Size Scales** - Consistent sizing across components
|
|
302
303
|
- **Spacing System** - 12-point spacing progression
|
|
303
304
|
- **Typography** - Font scales and weights
|
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Helpers the Kookie UI codemods share: which files to visit, and a small JavaScript/JSX scanner
|
|
3
|
+
that tells code apart from strings, comments, regex literals and JSX text.
|
|
4
|
+
"""
|
|
5
|
+
import os
|
|
6
|
+
import re
|
|
7
|
+
|
|
8
|
+
# Skipped at any depth.
|
|
9
|
+
SKIP_ANYWHERE = {'node_modules', '.next', '.git'}
|
|
10
|
+
# Skipped only when they sit directly inside a folder given on the command line, where they are
|
|
11
|
+
# build output. A source folder deeper down named build or dist (src/app/build) is visited.
|
|
12
|
+
SKIP_TOP = {'dist', 'build'}
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
def files(targets, extensions):
|
|
16
|
+
"""Yield every file under the given folders (or the given files) that ends in one of extensions."""
|
|
17
|
+
for target in targets:
|
|
18
|
+
if os.path.isfile(target):
|
|
19
|
+
if target.endswith(extensions):
|
|
20
|
+
yield target
|
|
21
|
+
continue
|
|
22
|
+
root_depth = os.path.abspath(target).rstrip(os.sep).count(os.sep)
|
|
23
|
+
for folder, dirs, names in os.walk(target):
|
|
24
|
+
top = os.path.abspath(folder).rstrip(os.sep).count(os.sep) == root_depth
|
|
25
|
+
dirs[:] = sorted(d for d in dirs if d not in SKIP_ANYWHERE and not (top and d in SKIP_TOP))
|
|
26
|
+
for name in sorted(names):
|
|
27
|
+
if name.endswith(extensions):
|
|
28
|
+
yield os.path.join(folder, name)
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
IDENT = re.compile(r'[A-Za-z_$][\w$]*')
|
|
32
|
+
TAG_NAME = re.compile(r'[A-Za-z_$][\w$.:-]*')
|
|
33
|
+
ATTR_NAME = re.compile(r'[A-Za-z_$][\w$:.-]*')
|
|
34
|
+
NUMBER = re.compile(r'\d[\w.]*')
|
|
35
|
+
# After these words an expression starts, so `<` opens JSX and `/` opens a regex.
|
|
36
|
+
EXPR_KEYWORDS = {
|
|
37
|
+
'return', 'typeof', 'case', 'yield', 'await', 'in', 'of', 'new', 'delete', 'void', 'throw',
|
|
38
|
+
'else', 'do', 'instanceof', 'default', 'extends',
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
class Scan:
|
|
43
|
+
"""
|
|
44
|
+
Walks a .ts/.tsx/.js/.jsx source once and records, with offsets:
|
|
45
|
+
|
|
46
|
+
- idents: (start, end, name, object) for every identifier in code, where object is the
|
|
47
|
+
identifier before a `.` (`K` in `K.Badge`) or None
|
|
48
|
+
- tags: (start, end, name, closing) for every JSX tag name, closing for `</Name>`
|
|
49
|
+
- attrs: (tag_index, name, value_start, value_end) for every attribute written on a tag
|
|
50
|
+
|
|
51
|
+
Strings, template text, comments, regex literals and JSX text record nothing.
|
|
52
|
+
"""
|
|
53
|
+
|
|
54
|
+
def __init__(self, text, jsx=True, run=True):
|
|
55
|
+
self.t = text
|
|
56
|
+
self.n = len(text)
|
|
57
|
+
self.jsx = jsx
|
|
58
|
+
self.idents = []
|
|
59
|
+
self.tags = []
|
|
60
|
+
self.attrs = []
|
|
61
|
+
if run:
|
|
62
|
+
self.code(0, False)
|
|
63
|
+
|
|
64
|
+
@classmethod
|
|
65
|
+
def elements(cls, text, pattern):
|
|
66
|
+
"""Scan only the JSX elements that start where pattern matches (for .mdx, which is not JS)."""
|
|
67
|
+
scan = cls(text, True, run=False)
|
|
68
|
+
for m in pattern.finditer(text):
|
|
69
|
+
scan.element(m.start())
|
|
70
|
+
return scan
|
|
71
|
+
|
|
72
|
+
# --- code ---------------------------------------------------------------------------
|
|
73
|
+
|
|
74
|
+
def code(self, i, stop):
|
|
75
|
+
t, n = self.t, self.n
|
|
76
|
+
depth = 0
|
|
77
|
+
expr = True # whether the next token starts an expression
|
|
78
|
+
while i < n:
|
|
79
|
+
c = t[i]
|
|
80
|
+
if c in ' \t\r\n':
|
|
81
|
+
i += 1
|
|
82
|
+
elif c == '/' and t.startswith('//', i):
|
|
83
|
+
j = t.find('\n', i)
|
|
84
|
+
i = n if j < 0 else j
|
|
85
|
+
elif c == '/' and t.startswith('/*', i):
|
|
86
|
+
j = t.find('*/', i + 2)
|
|
87
|
+
i = n if j < 0 else j + 2
|
|
88
|
+
elif c in '"\'':
|
|
89
|
+
i = self.string(i)
|
|
90
|
+
expr = False
|
|
91
|
+
elif c == '`':
|
|
92
|
+
i = self.template(i)
|
|
93
|
+
expr = False
|
|
94
|
+
elif c == '/' and expr:
|
|
95
|
+
i = self.regex(i)
|
|
96
|
+
expr = False
|
|
97
|
+
elif c == '<' and expr and self.jsx:
|
|
98
|
+
end = self.element(i)
|
|
99
|
+
if end is None:
|
|
100
|
+
i += 1
|
|
101
|
+
expr = True
|
|
102
|
+
else:
|
|
103
|
+
i = end
|
|
104
|
+
expr = False
|
|
105
|
+
elif c == '{':
|
|
106
|
+
depth += 1
|
|
107
|
+
i += 1
|
|
108
|
+
expr = True
|
|
109
|
+
elif c == '}':
|
|
110
|
+
if depth == 0 and stop:
|
|
111
|
+
return i
|
|
112
|
+
depth -= 1
|
|
113
|
+
i += 1
|
|
114
|
+
expr = True
|
|
115
|
+
elif c in ')]':
|
|
116
|
+
i += 1
|
|
117
|
+
expr = False
|
|
118
|
+
elif c.isdigit():
|
|
119
|
+
i = NUMBER.match(t, i).end()
|
|
120
|
+
expr = False
|
|
121
|
+
elif c.isalpha() or c in '_$':
|
|
122
|
+
m = IDENT.match(t, i)
|
|
123
|
+
name = m.group(0)
|
|
124
|
+
self.idents.append((i, m.end(), name, self.object_before(i)))
|
|
125
|
+
i = m.end()
|
|
126
|
+
expr = name in EXPR_KEYWORDS
|
|
127
|
+
else:
|
|
128
|
+
i += 1
|
|
129
|
+
expr = True
|
|
130
|
+
return n
|
|
131
|
+
|
|
132
|
+
def object_before(self, i):
|
|
133
|
+
t = self.t
|
|
134
|
+
k = i - 1
|
|
135
|
+
while k >= 0 and t[k] in ' \t\r\n':
|
|
136
|
+
k -= 1
|
|
137
|
+
if k < 0 or t[k] != '.' or (k > 0 and t[k - 1] == '.'):
|
|
138
|
+
return None
|
|
139
|
+
k -= 1
|
|
140
|
+
if k >= 0 and t[k] == '?':
|
|
141
|
+
k -= 1
|
|
142
|
+
while k >= 0 and t[k] in ' \t\r\n':
|
|
143
|
+
k -= 1
|
|
144
|
+
end = k + 1
|
|
145
|
+
while k >= 0 and (t[k].isalnum() or t[k] in '_$'):
|
|
146
|
+
k -= 1
|
|
147
|
+
return t[k + 1:end] or None
|
|
148
|
+
|
|
149
|
+
def string(self, i):
|
|
150
|
+
t, n, q = self.t, self.n, self.t[i]
|
|
151
|
+
i += 1
|
|
152
|
+
while i < n and t[i] != q:
|
|
153
|
+
if t[i] == '\\':
|
|
154
|
+
i += 1
|
|
155
|
+
elif t[i] == '\n':
|
|
156
|
+
break
|
|
157
|
+
i += 1
|
|
158
|
+
return i + 1
|
|
159
|
+
|
|
160
|
+
def template(self, i):
|
|
161
|
+
t, n = self.t, self.n
|
|
162
|
+
i += 1
|
|
163
|
+
while i < n and t[i] != '`':
|
|
164
|
+
if t[i] == '\\':
|
|
165
|
+
i += 2
|
|
166
|
+
elif t.startswith('${', i):
|
|
167
|
+
i = self.code(i + 2, True) + 1
|
|
168
|
+
else:
|
|
169
|
+
i += 1
|
|
170
|
+
return i + 1
|
|
171
|
+
|
|
172
|
+
def regex(self, i):
|
|
173
|
+
t, n = self.t, self.n
|
|
174
|
+
i += 1
|
|
175
|
+
klass = False
|
|
176
|
+
while i < n and t[i] != '\n':
|
|
177
|
+
if t[i] == '\\':
|
|
178
|
+
i += 2
|
|
179
|
+
continue
|
|
180
|
+
if t[i] == '[':
|
|
181
|
+
klass = True
|
|
182
|
+
elif t[i] == ']':
|
|
183
|
+
klass = False
|
|
184
|
+
elif t[i] == '/' and not klass:
|
|
185
|
+
i += 1
|
|
186
|
+
while i < n and t[i].isalpha():
|
|
187
|
+
i += 1
|
|
188
|
+
return i
|
|
189
|
+
i += 1
|
|
190
|
+
return i
|
|
191
|
+
|
|
192
|
+
# --- JSX ----------------------------------------------------------------------------
|
|
193
|
+
|
|
194
|
+
def element(self, i):
|
|
195
|
+
"""Scan a JSX element starting at `<`. Returns the index after it, or None (not JSX)."""
|
|
196
|
+
marks = (len(self.idents), len(self.tags), len(self.attrs))
|
|
197
|
+
end = self._element(i)
|
|
198
|
+
if end is None:
|
|
199
|
+
del self.idents[marks[0]:]
|
|
200
|
+
del self.tags[marks[1]:]
|
|
201
|
+
del self.attrs[marks[2]:]
|
|
202
|
+
return end
|
|
203
|
+
|
|
204
|
+
def ws(self, j):
|
|
205
|
+
while j < self.n and self.t[j] in ' \t\r\n':
|
|
206
|
+
j += 1
|
|
207
|
+
return j
|
|
208
|
+
|
|
209
|
+
def _element(self, i):
|
|
210
|
+
t, n = self.t, self.n
|
|
211
|
+
j = self.ws(i + 1)
|
|
212
|
+
if j < n and t[j] == '>':
|
|
213
|
+
name, tag = '', None
|
|
214
|
+
else:
|
|
215
|
+
m = TAG_NAME.match(t, j)
|
|
216
|
+
if not m:
|
|
217
|
+
return None
|
|
218
|
+
name = m.group(0)
|
|
219
|
+
tag = len(self.tags)
|
|
220
|
+
self.tags.append((j, m.end(), name, False))
|
|
221
|
+
j = m.end()
|
|
222
|
+
# `<T,>` and `<T extends X>` are TypeScript generics, not JSX.
|
|
223
|
+
k = self.ws(j)
|
|
224
|
+
if k < n and t[k] == ',' or t.startswith('extends', k) and not TAG_NAME.match(t, k + 7):
|
|
225
|
+
return None
|
|
226
|
+
while True:
|
|
227
|
+
j = self.ws(j)
|
|
228
|
+
if j >= n:
|
|
229
|
+
return None
|
|
230
|
+
c = t[j]
|
|
231
|
+
if t.startswith('/>', j):
|
|
232
|
+
return j + 2
|
|
233
|
+
if c == '>':
|
|
234
|
+
return self.children(j + 1)
|
|
235
|
+
if c == '{':
|
|
236
|
+
k = self.code(j + 1, True)
|
|
237
|
+
if k >= n:
|
|
238
|
+
return None
|
|
239
|
+
j = k + 1
|
|
240
|
+
elif c.isalpha() or c in '_$':
|
|
241
|
+
m = ATTR_NAME.match(t, j)
|
|
242
|
+
attr = m.group(0)
|
|
243
|
+
j = self.ws(m.end())
|
|
244
|
+
if j < n and t[j] == '=':
|
|
245
|
+
j = self.ws(j + 1)
|
|
246
|
+
start = j
|
|
247
|
+
if j < n and t[j] in '"\'':
|
|
248
|
+
k = t.find(t[j], j + 1)
|
|
249
|
+
if k < 0:
|
|
250
|
+
return None
|
|
251
|
+
j = k + 1
|
|
252
|
+
elif j < n and t[j] == '{':
|
|
253
|
+
k = self.code(j + 1, True)
|
|
254
|
+
if k >= n:
|
|
255
|
+
return None
|
|
256
|
+
j = k + 1
|
|
257
|
+
elif j < n and t[j] == '<':
|
|
258
|
+
k = self.element(j)
|
|
259
|
+
if k is None:
|
|
260
|
+
return None
|
|
261
|
+
j = k
|
|
262
|
+
else:
|
|
263
|
+
return None
|
|
264
|
+
if tag is not None:
|
|
265
|
+
self.attrs.append((tag, attr, start, j))
|
|
266
|
+
else:
|
|
267
|
+
return None
|
|
268
|
+
|
|
269
|
+
def children(self, j):
|
|
270
|
+
t, n = self.t, self.n
|
|
271
|
+
while j < n:
|
|
272
|
+
c = t[j]
|
|
273
|
+
if c == '<':
|
|
274
|
+
k = self.ws(j + 1)
|
|
275
|
+
if k < n and t[k] == '/':
|
|
276
|
+
k = self.ws(k + 1)
|
|
277
|
+
m = TAG_NAME.match(t, k)
|
|
278
|
+
if m:
|
|
279
|
+
self.tags.append((k, m.end(), m.group(0), True))
|
|
280
|
+
k = m.end()
|
|
281
|
+
k = self.ws(k)
|
|
282
|
+
if k >= n or t[k] != '>':
|
|
283
|
+
return None
|
|
284
|
+
return k + 1
|
|
285
|
+
end = self.element(j)
|
|
286
|
+
if end is None:
|
|
287
|
+
return None
|
|
288
|
+
j = end
|
|
289
|
+
elif c == '{':
|
|
290
|
+
k = self.code(j + 1, True)
|
|
291
|
+
if k >= n:
|
|
292
|
+
return None
|
|
293
|
+
j = k + 1
|
|
294
|
+
else:
|
|
295
|
+
j += 1
|
|
296
|
+
return None
|
|
297
|
+
|
|
298
|
+
|
|
299
|
+
def apply(text, edits):
|
|
300
|
+
"""Apply (start, end, replacement) edits that do not overlap."""
|
|
301
|
+
out = []
|
|
302
|
+
last = 0
|
|
303
|
+
for start, end, new in sorted(edits):
|
|
304
|
+
if start < last:
|
|
305
|
+
continue
|
|
306
|
+
out.append(text[last:start])
|
|
307
|
+
out.append(new)
|
|
308
|
+
last = end
|
|
309
|
+
out.append(text[last:])
|
|
310
|
+
return ''.join(out)
|
|
311
|
+
|
|
312
|
+
|
|
313
|
+
def line_of(text, offset):
|
|
314
|
+
return text.count('\n', 0, offset) + 1
|
|
@@ -4,21 +4,29 @@ Kookie UI 0.21 components codemod.
|
|
|
4
4
|
The component list follows v2. Four names merge into others. This rewrites, in place:
|
|
5
5
|
|
|
6
6
|
- IconButton -> Button iconOnly, ToggleIconButton -> Toggle iconOnly, ToggleButton -> Toggle,
|
|
7
|
-
Badge -> Chip: JSX tags
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
Badge -> Chip: JSX tags (also under an alias or a namespace import, `<K.Badge>`), the import
|
|
8
|
+
from @womp/kookie-ui, other code references to the imported name, and the Props types
|
|
9
|
+
(IconButtonProps -> ButtonProps, BadgeProps -> ChipProps, ToggleButtonProps and
|
|
10
|
+
ToggleIconButtonProps -> ToggleProps) (.ts/.tsx/.js/.jsx/.mdx)
|
|
10
11
|
- .rt-Badge -> .rt-Chip and .rt-IconButton -> .rt-Button[data-icon-only] in .css/.scss
|
|
11
12
|
|
|
13
|
+
Strings, comments and JSX text are left alone. A reference to IconButton or ToggleIconButton
|
|
14
|
+
outside a JSX tag (`const Comp = IconButton`, or `const Comp = IB` under an alias) is printed: it
|
|
15
|
+
needs `iconOnly` where it renders, which only a person can add. A direct name is left as it is, so
|
|
16
|
+
TypeScript flags it; an alias still type-checks, so the printed line is the only notice.
|
|
17
|
+
|
|
12
18
|
It only renames. Dropped components, margin props on leaf components and icon-only buttons
|
|
13
19
|
named by visible text need a person: see MIGRATION.md.
|
|
14
20
|
|
|
15
|
-
Usage: python3 components-0.21.py <folder> [
|
|
21
|
+
Usage: python3 components-0.21.py <folder|file> [...] Safe to run twice.
|
|
16
22
|
"""
|
|
17
|
-
import glob
|
|
18
23
|
import os
|
|
19
24
|
import re
|
|
20
25
|
import sys
|
|
21
26
|
|
|
27
|
+
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
|
|
28
|
+
from _shared import Scan, apply, files, line_of # noqa: E402
|
|
29
|
+
|
|
22
30
|
# old name -> (new name, adds iconOnly)
|
|
23
31
|
RENAME = {
|
|
24
32
|
'IconButton': ('Button', True),
|
|
@@ -32,25 +40,28 @@ TYPES = {
|
|
|
32
40
|
'ToggleButtonProps': 'ToggleProps',
|
|
33
41
|
'BadgeProps': 'ChipProps',
|
|
34
42
|
}
|
|
35
|
-
|
|
43
|
+
SOURCE = r'([\'"])@womp/kookie-ui\3'
|
|
44
|
+
IMPORT = re.compile(r'import(\s+type)?\s*\{([^{}]*)\}\s*from\s*' + SOURCE)
|
|
45
|
+
NAMESPACE = re.compile(r'import\s+\*\s+as\s+([A-Za-z_$][\w$]*)\s+from\s*([\'"])@womp/kookie-ui\2')
|
|
36
46
|
CSS = [
|
|
37
47
|
(re.compile(r'\.rt-Badge(?![\w-])'), '.rt-Chip'),
|
|
38
48
|
(re.compile(r'\.rt-IconButton(?![\w-])'), '.rt-Button[data-icon-only]'),
|
|
39
49
|
]
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
def word(name):
|
|
44
|
-
return re.compile(r'(?<![\w$.-])' + name + r'(?![\w$-])')
|
|
50
|
+
EXT = ('.css', '.scss', '.ts', '.tsx', '.js', '.jsx', '.mdx')
|
|
45
51
|
|
|
46
52
|
|
|
47
53
|
def imported(text):
|
|
48
|
-
|
|
54
|
+
"""Local name -> the name it was imported as, for every named import from Kookie."""
|
|
55
|
+
names = {}
|
|
49
56
|
for m in IMPORT.finditer(text):
|
|
50
57
|
for part in m.group(2).split(','):
|
|
51
|
-
bits = part.
|
|
58
|
+
bits = part.split()
|
|
59
|
+
if bits and bits[0] == 'type':
|
|
60
|
+
bits = bits[1:]
|
|
52
61
|
if len(bits) == 1:
|
|
53
|
-
names
|
|
62
|
+
names[bits[0]] = bits[0]
|
|
63
|
+
elif len(bits) == 3 and bits[1] == 'as':
|
|
64
|
+
names[bits[2]] = bits[0]
|
|
54
65
|
return names
|
|
55
66
|
|
|
56
67
|
|
|
@@ -72,21 +83,66 @@ def fix_import(m):
|
|
|
72
83
|
return 'import%s {%s} from %s@womp/kookie-ui%s' % (m.group(1) or '', body, m.group(3), m.group(3))
|
|
73
84
|
|
|
74
85
|
|
|
75
|
-
def
|
|
86
|
+
def tag_target(name, names, spaces):
|
|
87
|
+
"""The original Kookie name a JSX tag refers to and the tag's new name, or (None, None)."""
|
|
88
|
+
if '.' in name:
|
|
89
|
+
space, _, member = name.partition('.')
|
|
90
|
+
if space in spaces and member in RENAME:
|
|
91
|
+
return member, space + '.' + RENAME[member][0]
|
|
92
|
+
return None, None
|
|
93
|
+
original = names.get(name)
|
|
94
|
+
if original in RENAME:
|
|
95
|
+
return original, RENAME[original][0] if name == original else name
|
|
96
|
+
return None, None
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
def rewrite_code(text, jsx, path='<text>', warn=None):
|
|
76
100
|
names = imported(text)
|
|
77
|
-
|
|
78
|
-
|
|
101
|
+
spaces = {m.group(1) for m in NAMESPACE.finditer(text)}
|
|
102
|
+
if not (set(names.values()) & (set(RENAME) | set(TYPES))) and not spaces:
|
|
103
|
+
return text
|
|
104
|
+
skip = [(m.start(), m.end()) for m in IMPORT.finditer(text)]
|
|
105
|
+
scan = Scan(text, jsx)
|
|
106
|
+
edits = []
|
|
107
|
+
for start, end, name, closing in scan.tags:
|
|
108
|
+
original, new = tag_target(name, names, spaces)
|
|
109
|
+
if original is None:
|
|
110
|
+
continue
|
|
111
|
+
flag = ' iconOnly' if RENAME[original][1] and not closing else ''
|
|
112
|
+
edits.append((start, end, new + flag))
|
|
113
|
+
for start, end, name, obj in scan.idents:
|
|
114
|
+
if any(a <= start < b for a, b in skip):
|
|
115
|
+
continue
|
|
116
|
+
if obj is None and name in names:
|
|
117
|
+
original = names[name]
|
|
118
|
+
elif obj is not None and obj in spaces:
|
|
119
|
+
original = name
|
|
120
|
+
else:
|
|
79
121
|
continue
|
|
122
|
+
# An alias (`IconButton as IB`) keeps its local name: the import rename moves it.
|
|
123
|
+
aliased = obj is None and name != original
|
|
124
|
+
if original in TYPES:
|
|
125
|
+
if not aliased:
|
|
126
|
+
edits.append((start, end, TYPES[original]))
|
|
127
|
+
elif original in RENAME:
|
|
128
|
+
new, icon_only = RENAME[original]
|
|
129
|
+
if icon_only:
|
|
130
|
+
if warn is not None:
|
|
131
|
+
todo = 'add iconOnly' if aliased else 'rename it to %s and add iconOnly' % new
|
|
132
|
+
warn('%s:%d: %s used outside a JSX tag; %s where it renders' % (path, line_of(text, start), name, todo))
|
|
133
|
+
continue
|
|
134
|
+
if not aliased:
|
|
135
|
+
edits.append((start, end, new))
|
|
136
|
+
text = apply(text, edits)
|
|
137
|
+
return IMPORT.sub(fix_import, text)
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
def rewrite_mdx(text):
|
|
141
|
+
for old, (new, icon_only) in RENAME.items():
|
|
80
142
|
flag = ' iconOnly' if icon_only else ''
|
|
81
143
|
text = re.sub(r'<' + old + r'(?![\w$.-])', '<' + new + flag, text)
|
|
82
144
|
text = re.sub(r'</' + old + r'\s*>', '</' + new + '>', text)
|
|
83
|
-
|
|
84
|
-
if old in names:
|
|
85
|
-
text = word(old).sub(new, text)
|
|
86
|
-
for old, (new, _) in RENAME.items():
|
|
87
|
-
if old in names:
|
|
88
|
-
text = word(old).sub(new, text)
|
|
89
|
-
return IMPORT.sub(fix_import, text) if names & (set(RENAME) | set(TYPES)) else text
|
|
145
|
+
return IMPORT.sub(fix_import, text)
|
|
90
146
|
|
|
91
147
|
|
|
92
148
|
def rewrite_css(text):
|
|
@@ -95,25 +151,25 @@ def rewrite_css(text):
|
|
|
95
151
|
return text
|
|
96
152
|
|
|
97
153
|
|
|
98
|
-
def
|
|
154
|
+
def rewrite(text, path, warn=None):
|
|
155
|
+
if path.endswith(('.css', '.scss')):
|
|
156
|
+
return rewrite_css(text)
|
|
157
|
+
if path.endswith('.mdx'):
|
|
158
|
+
return rewrite_mdx(text)
|
|
159
|
+
return rewrite_code(text, not path.endswith('.ts'), path, warn)
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
def main(targets):
|
|
99
163
|
changed = 0
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
continue
|
|
110
|
-
with open(path) as f:
|
|
111
|
-
before = f.read()
|
|
112
|
-
after = fn(before)
|
|
113
|
-
if after != before:
|
|
114
|
-
with open(path, 'w') as f:
|
|
115
|
-
f.write(after)
|
|
116
|
-
changed += 1
|
|
164
|
+
warn = lambda message: print(message, file=sys.stderr)
|
|
165
|
+
for path in files(targets, EXT):
|
|
166
|
+
with open(path) as f:
|
|
167
|
+
before = f.read()
|
|
168
|
+
after = rewrite(before, path, warn)
|
|
169
|
+
if after != before:
|
|
170
|
+
with open(path, 'w') as f:
|
|
171
|
+
f.write(after)
|
|
172
|
+
changed += 1
|
|
117
173
|
print('%d files rewritten' % changed)
|
|
118
174
|
|
|
119
175
|
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Kookie UI 0.22 names codemod.
|
|
3
|
+
|
|
4
|
+
Class names and private variables move from Radix Themes' prefix to Kookie's, as in v2:
|
|
5
|
+
`rt-` -> `kui-` (classes like rt-Button, rt-r-size-2, and variables like --rt-shell-gap) and the
|
|
6
|
+
root class `radix-themes` -> `kui-theme`. The neutral scale's variables move from --gray-N to
|
|
7
|
+
--neutral-N (the `color="gray"` prop value does not change). The page and surface colours take
|
|
8
|
+
v2's names: --color-background -> --color-page, and --color-panel(-solid), --color-surface-solid
|
|
9
|
+
and --color-dialog(-solid) -> --color-surface. The translucent tokens 0.17 removed
|
|
10
|
+
(--color-panel-translucent, --color-surface-translucent, --color-dialog-translucent) also become
|
|
11
|
+
--color-surface, the solid colour they fell back to.
|
|
12
|
+
|
|
13
|
+
Usage: python3 names-0.22.py <folder|file> [...] Safe to run twice.
|
|
14
|
+
"""
|
|
15
|
+
import os
|
|
16
|
+
import re
|
|
17
|
+
import sys
|
|
18
|
+
|
|
19
|
+
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
|
|
20
|
+
from _shared import files # noqa: E402
|
|
21
|
+
|
|
22
|
+
PREFIX = re.compile(r'(?<![A-Za-z0-9_])rt-(?=[A-Za-z-])')
|
|
23
|
+
ROOT = re.compile(r'(?<![A-Za-z0-9_@/])radix-themes(?![A-Za-z0-9_-])')
|
|
24
|
+
NEUTRAL = re.compile(r'--gray-(a?\d+\b|contrast\b|surface\b|indicator\b|track\b|ink\b|ink-faint\b|ink-muted\b)')
|
|
25
|
+
COLORS = [
|
|
26
|
+
('--color-panel-solid', '--color-surface'),
|
|
27
|
+
('--color-surface-solid', '--color-surface'),
|
|
28
|
+
('--color-dialog-solid', '--color-surface'),
|
|
29
|
+
('--color-panel-translucent', '--color-surface'),
|
|
30
|
+
('--color-surface-translucent', '--color-surface'),
|
|
31
|
+
('--color-dialog-translucent', '--color-surface'),
|
|
32
|
+
('--color-panel', '--color-surface'),
|
|
33
|
+
('--color-dialog', '--color-surface'),
|
|
34
|
+
('--color-background', '--color-page'),
|
|
35
|
+
]
|
|
36
|
+
EXT = ('.css', '.scss', '.ts', '.tsx', '.js', '.jsx', '.cjs', '.mjs', '.mdx', '.html')
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def rewrite(text, neutral=True):
|
|
40
|
+
text = PREFIX.sub('kui-', text)
|
|
41
|
+
text = ROOT.sub('kui-theme', text)
|
|
42
|
+
if neutral:
|
|
43
|
+
text = NEUTRAL.sub(lambda m: '--neutral-' + m.group(1), text)
|
|
44
|
+
for old, new in COLORS:
|
|
45
|
+
text = re.sub(re.escape(old) + r'(?![\w-])', new, text)
|
|
46
|
+
return text
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
def main(targets):
|
|
50
|
+
changed = 0
|
|
51
|
+
for path in files(targets, EXT):
|
|
52
|
+
with open(path) as f:
|
|
53
|
+
before = f.read()
|
|
54
|
+
after = rewrite(before)
|
|
55
|
+
if after != before:
|
|
56
|
+
with open(path, 'w') as f:
|
|
57
|
+
f.write(after)
|
|
58
|
+
changed += 1
|
|
59
|
+
print('%d files rewritten' % changed)
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
if __name__ == '__main__':
|
|
63
|
+
if len(sys.argv) < 2:
|
|
64
|
+
sys.exit(__doc__)
|
|
65
|
+
main(sys.argv[1:])
|