@psnext/design-system 2.2.0 → 2.4.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/DESIGN.md +466 -4
- package/README.md +3 -3
- package/SKILL.md +83 -5
- package/bin/install-agent-skill.mjs +39 -7
- package/dist/Header.cjs +214 -108
- package/dist/Header.cjs.map +1 -1
- package/dist/Header.js +214 -108
- package/dist/Header.js.map +1 -1
- package/dist/Icon.cjs +40 -8
- package/dist/Icon.cjs.map +1 -1
- package/dist/Icon.js +40 -8
- package/dist/Icon.js.map +1 -1
- package/dist/MultiColumn.cjs +354 -0
- package/dist/MultiColumn.cjs.map +1 -0
- package/dist/MultiColumn.js +335 -0
- package/dist/MultiColumn.js.map +1 -0
- package/dist/Sidebar.cjs +4 -3
- package/dist/Sidebar.cjs.map +1 -1
- package/dist/Sidebar.js +4 -3
- package/dist/Sidebar.js.map +1 -1
- package/dist/index.cjs +5 -1
- package/dist/index.d.cts +5 -5
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index10.d.cts +6 -6
- package/dist/index10.d.ts +7 -7
- package/dist/index10.d.ts.map +1 -1
- package/dist/index11.d.cts +3 -3
- package/dist/index11.d.cts.map +1 -1
- package/dist/index11.d.ts +3 -3
- package/dist/index11.d.ts.map +1 -1
- package/dist/index12.d.cts +11 -11
- package/dist/index12.d.ts +13 -13
- package/dist/index12.d.ts.map +1 -1
- package/dist/index13.d.cts +6 -6
- package/dist/index13.d.cts.map +1 -1
- package/dist/index13.d.ts +6 -6
- package/dist/index13.d.ts.map +1 -1
- package/dist/index14.d.cts +5 -5
- package/dist/index14.d.cts.map +1 -1
- package/dist/index14.d.ts +5 -5
- package/dist/index15.d.cts +3 -3
- package/dist/index15.d.cts.map +1 -1
- package/dist/index15.d.ts +3 -3
- package/dist/index15.d.ts.map +1 -1
- package/dist/index16.d.cts +2 -2
- package/dist/index16.d.cts.map +1 -1
- package/dist/index16.d.ts +2 -2
- package/dist/index16.d.ts.map +1 -1
- package/dist/index17.d.cts +4 -4
- package/dist/index17.d.cts.map +1 -1
- package/dist/index17.d.ts +4 -4
- package/dist/index18.d.cts +11 -11
- package/dist/index18.d.cts.map +1 -1
- package/dist/index18.d.ts +11 -11
- package/dist/index18.d.ts.map +1 -1
- package/dist/index19.d.cts +10 -10
- package/dist/index19.d.cts.map +1 -1
- package/dist/index19.d.ts +10 -10
- package/dist/index19.d.ts.map +1 -1
- package/dist/index2.d.cts +8 -8
- package/dist/index2.d.cts.map +1 -1
- package/dist/index2.d.ts +7 -7
- package/dist/index20.d.cts +16 -16
- package/dist/index20.d.cts.map +1 -1
- package/dist/index20.d.ts +16 -16
- package/dist/index20.d.ts.map +1 -1
- package/dist/index21.d.cts +4 -4
- package/dist/index21.d.cts.map +1 -1
- package/dist/index21.d.ts +4 -4
- package/dist/index21.d.ts.map +1 -1
- package/dist/index22.d.cts +11 -11
- package/dist/index22.d.ts +11 -11
- package/dist/index23.d.cts +16 -16
- package/dist/index23.d.cts.map +1 -1
- package/dist/index23.d.ts +16 -16
- package/dist/index23.d.ts.map +1 -1
- package/dist/index24.d.cts +10 -10
- package/dist/index24.d.cts.map +1 -1
- package/dist/index24.d.ts +11 -11
- package/dist/index24.d.ts.map +1 -1
- package/dist/index25.d.cts +2 -2
- package/dist/index25.d.cts.map +1 -1
- package/dist/index25.d.ts +2 -2
- package/dist/index25.d.ts.map +1 -1
- package/dist/index26.d.cts +13 -13
- package/dist/index26.d.cts.map +1 -1
- package/dist/index26.d.ts +15 -15
- package/dist/index26.d.ts.map +1 -1
- package/dist/index27.d.cts +7 -7
- package/dist/index27.d.cts.map +1 -1
- package/dist/index27.d.ts +7 -7
- package/dist/index27.d.ts.map +1 -1
- package/dist/index28.d.cts +4 -4
- package/dist/index28.d.ts +6 -6
- package/dist/index28.d.ts.map +1 -1
- package/dist/index29.d.cts +4 -4
- package/dist/index29.d.cts.map +1 -1
- package/dist/index29.d.ts +4 -4
- package/dist/index29.d.ts.map +1 -1
- package/dist/index3.d.cts +13 -13
- package/dist/index3.d.ts +13 -13
- package/dist/index30.d.cts +42 -13
- package/dist/index30.d.cts.map +1 -1
- package/dist/index30.d.ts +43 -14
- package/dist/index30.d.ts.map +1 -1
- package/dist/index31.d.cts +5 -5
- package/dist/index31.d.cts.map +1 -1
- package/dist/index31.d.ts +6 -6
- package/dist/index31.d.ts.map +1 -1
- package/dist/index32.d.cts +6 -6
- package/dist/index32.d.cts.map +1 -1
- package/dist/index32.d.ts +6 -6
- package/dist/index33.d.cts +11 -11
- package/dist/index33.d.cts.map +1 -1
- package/dist/index33.d.ts +12 -12
- package/dist/index33.d.ts.map +1 -1
- package/dist/index34.d.cts +5 -5
- package/dist/index34.d.cts.map +1 -1
- package/dist/index34.d.ts +5 -5
- package/dist/index34.d.ts.map +1 -1
- package/dist/index35.d.cts +15 -15
- package/dist/index35.d.cts.map +1 -1
- package/dist/index35.d.ts +16 -16
- package/dist/index35.d.ts.map +1 -1
- package/dist/index36.d.cts +3 -3
- package/dist/index36.d.ts +3 -3
- package/dist/index36.d.ts.map +1 -1
- package/dist/index37.d.cts +5 -5
- package/dist/index37.d.ts +6 -6
- package/dist/index38.d.cts +2 -2
- package/dist/index38.d.ts +2 -2
- package/dist/index39.d.cts +17 -17
- package/dist/index39.d.cts.map +1 -1
- package/dist/index39.d.ts +17 -17
- package/dist/index39.d.ts.map +1 -1
- package/dist/index4.d.cts +2 -2
- package/dist/index4.d.ts +2 -2
- package/dist/index40.d.cts +5 -5
- package/dist/index40.d.cts.map +1 -1
- package/dist/index40.d.ts +6 -6
- package/dist/index40.d.ts.map +1 -1
- package/dist/index41.d.cts +11 -11
- package/dist/index41.d.cts.map +1 -1
- package/dist/index41.d.ts +11 -11
- package/dist/index41.d.ts.map +1 -1
- package/dist/index42.d.cts +8 -8
- package/dist/index42.d.cts.map +1 -1
- package/dist/index42.d.ts +8 -8
- package/dist/index42.d.ts.map +1 -1
- package/dist/index43.d.cts +9 -9
- package/dist/index43.d.cts.map +1 -1
- package/dist/index43.d.ts +9 -9
- package/dist/index43.d.ts.map +1 -1
- package/dist/index45.d.cts +8 -8
- package/dist/index45.d.cts.map +1 -1
- package/dist/index45.d.ts +8 -8
- package/dist/index45.d.ts.map +1 -1
- package/dist/index46.d.cts +2 -2
- package/dist/index46.d.cts.map +1 -1
- package/dist/index46.d.ts +2 -2
- package/dist/index46.d.ts.map +1 -1
- package/dist/index47.d.cts +4 -4
- package/dist/index47.d.cts.map +1 -1
- package/dist/index47.d.ts +4 -4
- package/dist/index47.d.ts.map +1 -1
- package/dist/index48.d.cts +4 -4
- package/dist/index48.d.cts.map +1 -1
- package/dist/index48.d.ts +4 -4
- package/dist/index48.d.ts.map +1 -1
- package/dist/index49.d.cts +3 -3
- package/dist/index49.d.ts +3 -3
- package/dist/index5.d.cts +7 -7
- package/dist/index5.d.ts +7 -7
- package/dist/index5.d.ts.map +1 -1
- package/dist/index50.d.cts +11 -11
- package/dist/index50.d.cts.map +1 -1
- package/dist/index50.d.ts +11 -11
- package/dist/index50.d.ts.map +1 -1
- package/dist/index51.d.cts +9 -9
- package/dist/index51.d.cts.map +1 -1
- package/dist/index51.d.ts +9 -9
- package/dist/index51.d.ts.map +1 -1
- package/dist/index52.d.cts +5 -5
- package/dist/index52.d.ts +5 -5
- package/dist/index53.d.cts +26 -26
- package/dist/index53.d.cts.map +1 -1
- package/dist/index53.d.ts +27 -27
- package/dist/index53.d.ts.map +1 -1
- package/dist/index54.d.cts +5 -5
- package/dist/index54.d.ts +5 -5
- package/dist/index54.d.ts.map +1 -1
- package/dist/index55.d.cts +2 -2
- package/dist/index55.d.cts.map +1 -1
- package/dist/index55.d.ts +2 -2
- package/dist/index56.d.cts +2 -2
- package/dist/index56.d.cts.map +1 -1
- package/dist/index56.d.ts +2 -2
- package/dist/index56.d.ts.map +1 -1
- package/dist/index57.d.cts +2 -2
- package/dist/index57.d.cts.map +1 -1
- package/dist/index57.d.ts +2 -2
- package/dist/index57.d.ts.map +1 -1
- package/dist/index58.d.cts +4 -4
- package/dist/index58.d.ts +4 -4
- package/dist/index58.d.ts.map +1 -1
- package/dist/index59.d.cts +9 -9
- package/dist/index59.d.ts +9 -9
- package/dist/index6.d.cts +6 -6
- package/dist/index6.d.cts.map +1 -1
- package/dist/index6.d.ts +6 -6
- package/dist/index6.d.ts.map +1 -1
- package/dist/index60.d.cts +9 -9
- package/dist/index60.d.cts.map +1 -1
- package/dist/index60.d.ts +13 -13
- package/dist/index60.d.ts.map +1 -1
- package/dist/index61.d.cts +5 -5
- package/dist/index61.d.ts +6 -6
- package/dist/index62.d.cts +5 -5
- package/dist/index62.d.ts +5 -5
- package/dist/index62.d.ts.map +1 -1
- package/dist/index63.d.cts +2 -2
- package/dist/index63.d.cts.map +1 -1
- package/dist/index63.d.ts +2 -2
- package/dist/index63.d.ts.map +1 -1
- package/dist/index64.d.cts +6 -6
- package/dist/index64.d.cts.map +1 -1
- package/dist/index64.d.ts +7 -7
- package/dist/index65.d.cts +3 -3
- package/dist/index65.d.ts +4 -4
- package/dist/index65.d.ts.map +1 -1
- package/dist/index66.d.cts +4 -4
- package/dist/index66.d.cts.map +1 -1
- package/dist/index66.d.ts +6 -6
- package/dist/index66.d.ts.map +1 -1
- package/dist/index67.d.cts +83 -11
- package/dist/index67.d.cts.map +1 -1
- package/dist/index67.d.ts +83 -11
- package/dist/index67.d.ts.map +1 -1
- package/dist/index68.d.cts +12 -30
- package/dist/index68.d.cts.map +1 -1
- package/dist/index68.d.ts +12 -30
- package/dist/index68.d.ts.map +1 -1
- package/dist/index69.d.cts +28 -27
- package/dist/index69.d.cts.map +1 -1
- package/dist/index69.d.ts +29 -28
- package/dist/index69.d.ts.map +1 -1
- package/dist/index7.d.cts +8 -8
- package/dist/index7.d.cts.map +1 -1
- package/dist/index7.d.ts +8 -8
- package/dist/index7.d.ts.map +1 -1
- package/dist/index70.d.cts +33 -78
- package/dist/index70.d.cts.map +1 -1
- package/dist/index70.d.ts +33 -78
- package/dist/index70.d.ts.map +1 -1
- package/dist/index71.d.cts +77 -258
- package/dist/index71.d.cts.map +1 -1
- package/dist/index71.d.ts +77 -258
- package/dist/index71.d.ts.map +1 -1
- package/dist/index72.d.cts +278 -0
- package/dist/index72.d.cts.map +1 -0
- package/dist/index72.d.ts +278 -0
- package/dist/index72.d.ts.map +1 -0
- package/dist/index8.d.cts +5 -5
- package/dist/index8.d.ts +5 -5
- package/dist/index8.d.ts.map +1 -1
- package/dist/index9.d.cts +2 -2
- package/dist/index9.d.cts.map +1 -1
- package/dist/index9.d.ts +2 -2
- package/dist/layouts/Container/index.cjs +2 -1
- package/dist/layouts/Container/index.cjs.map +1 -1
- package/dist/layouts/Container/index.js +1 -1
- package/dist/layouts/MultiColumn/index.cjs +5 -0
- package/dist/layouts/MultiColumn/index.d.cts +2 -0
- package/dist/layouts/MultiColumn/index.d.ts +2 -0
- package/dist/layouts/MultiColumn/index.js +2 -0
- package/dist/layouts/PageBackground/index.d.cts +1 -1
- package/dist/layouts/PageBackground/index.d.ts +1 -1
- package/dist/layouts/Stack/index.cjs +2 -1
- package/dist/layouts/Stack/index.cjs.map +1 -1
- package/dist/layouts/Stack/index.d.cts +1 -1
- package/dist/layouts/Stack/index.d.ts +1 -1
- package/dist/layouts/Stack/index.js +1 -1
- package/dist/layouts/TwoColumn/index.cjs +2 -1
- package/dist/layouts/TwoColumn/index.cjs.map +1 -1
- package/dist/layouts/TwoColumn/index.d.cts +1 -1
- package/dist/layouts/TwoColumn/index.d.ts +1 -1
- package/dist/layouts/TwoColumn/index.js +1 -1
- package/dist/layouts/index.cjs +4 -0
- package/dist/layouts/index.d.cts +5 -4
- package/dist/layouts/index.d.ts +5 -4
- package/dist/layouts/index.js +2 -1
- package/dist/patterns/DataTable/index.cjs +6 -2
- package/dist/patterns/DataTable/index.cjs.map +1 -1
- package/dist/patterns/DataTable/index.d.cts +3 -3
- package/dist/patterns/DataTable/index.d.cts.map +1 -1
- package/dist/patterns/DataTable/index.d.ts +3 -3
- package/dist/patterns/DataTable/index.d.ts.map +1 -1
- package/dist/patterns/DataTable/index.js +6 -2
- package/dist/patterns/DataTable/index.js.map +1 -1
- package/dist/patterns/Footer/index.d.cts +7 -7
- package/dist/patterns/Footer/index.d.cts.map +1 -1
- package/dist/patterns/Footer/index.d.ts +7 -7
- package/dist/patterns/Header/index.d.cts +1 -1
- package/dist/patterns/Header/index.d.ts +1 -1
- package/dist/patterns/MediaObject/index.cjs +1 -1
- package/dist/patterns/MediaObject/index.d.cts +11 -11
- package/dist/patterns/MediaObject/index.d.ts +14 -14
- package/dist/patterns/MediaObject/index.js +1 -1
- package/dist/patterns/NavRail/index.cjs +4 -2
- package/dist/patterns/NavRail/index.cjs.map +1 -1
- package/dist/patterns/NavRail/index.js +4 -2
- package/dist/patterns/NavRail/index.js.map +1 -1
- package/dist/patterns/SectionCard/index.d.cts +2 -2
- package/dist/patterns/SectionCard/index.d.ts +2 -2
- package/dist/patterns/SectionCard/index.d.ts.map +1 -1
- package/dist/patterns/SectionHeading/index.d.cts +2 -2
- package/dist/patterns/SectionHeading/index.d.ts +2 -2
- package/dist/patterns/SectionHeading/index.d.ts.map +1 -1
- package/dist/patterns/index.d.cts +1 -1
- package/dist/patterns/index.d.ts +1 -1
- package/dist/primitives/Accordion/index.cjs +6 -2
- package/dist/primitives/Accordion/index.cjs.map +1 -1
- package/dist/primitives/Accordion/index.js +6 -2
- package/dist/primitives/Accordion/index.js.map +1 -1
- package/dist/primitives/Alert/index.cjs +2 -1
- package/dist/primitives/Alert/index.cjs.map +1 -1
- package/dist/primitives/Alert/index.js +1 -1
- package/dist/primitives/AlertDialog/index.cjs +1 -1
- package/dist/primitives/AlertDialog/index.js +1 -1
- package/dist/primitives/AspectRatio/index.cjs +1 -1
- package/dist/primitives/AspectRatio/index.js +1 -1
- package/dist/primitives/Avatar/index.cjs +1 -1
- package/dist/primitives/Avatar/index.js +1 -1
- package/dist/primitives/Badge/index.cjs +3 -2
- package/dist/primitives/Badge/index.cjs.map +1 -1
- package/dist/primitives/Badge/index.js +2 -2
- package/dist/primitives/Breadcrumb/index.cjs +7 -3
- package/dist/primitives/Breadcrumb/index.cjs.map +1 -1
- package/dist/primitives/Breadcrumb/index.js +7 -3
- package/dist/primitives/Breadcrumb/index.js.map +1 -1
- package/dist/primitives/Button/index.cjs +3 -2
- package/dist/primitives/Button/index.cjs.map +1 -1
- package/dist/primitives/Button/index.js +2 -2
- package/dist/primitives/ButtonGroup/index.cjs +3 -2
- package/dist/primitives/ButtonGroup/index.cjs.map +1 -1
- package/dist/primitives/ButtonGroup/index.js +2 -2
- package/dist/primitives/Calendar/index.cjs +12 -11
- package/dist/primitives/Calendar/index.cjs.map +1 -1
- package/dist/primitives/Calendar/index.js +12 -11
- package/dist/primitives/Calendar/index.js.map +1 -1
- package/dist/primitives/Card/index.cjs +2 -1
- package/dist/primitives/Card/index.cjs.map +1 -1
- package/dist/primitives/Card/index.js +1 -1
- package/dist/primitives/Carousel/index.cjs +4 -3
- package/dist/primitives/Carousel/index.cjs.map +1 -1
- package/dist/primitives/Carousel/index.js +4 -3
- package/dist/primitives/Carousel/index.js.map +1 -1
- package/dist/primitives/Checkbox/index.cjs +9 -2
- package/dist/primitives/Checkbox/index.cjs.map +1 -1
- package/dist/primitives/Checkbox/index.js +9 -2
- package/dist/primitives/Checkbox/index.js.map +1 -1
- package/dist/primitives/CheckboxTree/index.cjs +6 -2
- package/dist/primitives/CheckboxTree/index.cjs.map +1 -1
- package/dist/primitives/CheckboxTree/index.js +6 -2
- package/dist/primitives/CheckboxTree/index.js.map +1 -1
- package/dist/primitives/Collapsible/index.cjs +1 -1
- package/dist/primitives/Collapsible/index.js +1 -1
- package/dist/primitives/Command/index.cjs +6 -2
- package/dist/primitives/Command/index.cjs.map +1 -1
- package/dist/primitives/Command/index.js +6 -2
- package/dist/primitives/Command/index.js.map +1 -1
- package/dist/primitives/ContextMenu/index.cjs +14 -4
- package/dist/primitives/ContextMenu/index.cjs.map +1 -1
- package/dist/primitives/ContextMenu/index.js +14 -4
- package/dist/primitives/ContextMenu/index.js.map +1 -1
- package/dist/primitives/Credits/index.cjs +8 -3
- package/dist/primitives/Credits/index.cjs.map +1 -1
- package/dist/primitives/Credits/index.js +7 -3
- package/dist/primitives/Credits/index.js.map +1 -1
- package/dist/primitives/Dialog/index.cjs +3 -2
- package/dist/primitives/Dialog/index.cjs.map +1 -1
- package/dist/primitives/Dialog/index.js +3 -2
- package/dist/primitives/Dialog/index.js.map +1 -1
- package/dist/primitives/DropdownMenu/index.cjs +14 -4
- package/dist/primitives/DropdownMenu/index.cjs.map +1 -1
- package/dist/primitives/DropdownMenu/index.js +14 -4
- package/dist/primitives/DropdownMenu/index.js.map +1 -1
- package/dist/primitives/Empty/index.cjs +1 -1
- package/dist/primitives/Empty/index.js +1 -1
- package/dist/primitives/Field/index.cjs +1 -1
- package/dist/primitives/Field/index.js +1 -1
- package/dist/primitives/Form/index.cjs +1 -1
- package/dist/primitives/Form/index.js +1 -1
- package/dist/primitives/Heading/index.cjs +2 -1
- package/dist/primitives/Heading/index.cjs.map +1 -1
- package/dist/primitives/Heading/index.js +1 -1
- package/dist/primitives/HoverCard/index.cjs +1 -1
- package/dist/primitives/HoverCard/index.js +1 -1
- package/dist/primitives/InfoBanner/index.cjs +6 -3
- package/dist/primitives/InfoBanner/index.cjs.map +1 -1
- package/dist/primitives/InfoBanner/index.js +5 -3
- package/dist/primitives/InfoBanner/index.js.map +1 -1
- package/dist/primitives/Input/index.cjs +2 -1
- package/dist/primitives/Input/index.cjs.map +1 -1
- package/dist/primitives/Input/index.js +1 -1
- package/dist/primitives/InputGroup/index.cjs +1 -1
- package/dist/primitives/InputGroup/index.js +1 -1
- package/dist/primitives/InputOtp/index.cjs +3 -2
- package/dist/primitives/InputOtp/index.cjs.map +1 -1
- package/dist/primitives/InputOtp/index.js +3 -2
- package/dist/primitives/InputOtp/index.js.map +1 -1
- package/dist/primitives/Item/index.cjs +2 -2
- package/dist/primitives/Item/index.js +2 -2
- package/dist/primitives/Label/index.cjs +1 -1
- package/dist/primitives/Label/index.js +1 -1
- package/dist/primitives/Link/index.cjs +3 -2
- package/dist/primitives/Link/index.cjs.map +1 -1
- package/dist/primitives/Link/index.js +2 -2
- package/dist/primitives/Menubar/index.cjs +14 -4
- package/dist/primitives/Menubar/index.cjs.map +1 -1
- package/dist/primitives/Menubar/index.js +14 -4
- package/dist/primitives/Menubar/index.js.map +1 -1
- package/dist/primitives/NativeSelect/index.cjs +6 -3
- package/dist/primitives/NativeSelect/index.cjs.map +1 -1
- package/dist/primitives/NativeSelect/index.js +5 -3
- package/dist/primitives/NativeSelect/index.js.map +1 -1
- package/dist/primitives/NavigationMenu/index.cjs +5 -3
- package/dist/primitives/NavigationMenu/index.cjs.map +1 -1
- package/dist/primitives/NavigationMenu/index.js +5 -3
- package/dist/primitives/NavigationMenu/index.js.map +1 -1
- package/dist/primitives/Pagination/index.cjs +6 -2
- package/dist/primitives/Pagination/index.cjs.map +1 -1
- package/dist/primitives/Pagination/index.js +6 -2
- package/dist/primitives/Pagination/index.js.map +1 -1
- package/dist/primitives/Popover/index.cjs +1 -1
- package/dist/primitives/Popover/index.js +1 -1
- package/dist/primitives/Progress/index.cjs +1 -1
- package/dist/primitives/Progress/index.js +1 -1
- package/dist/primitives/RadioGroup/index.cjs +6 -2
- package/dist/primitives/RadioGroup/index.cjs.map +1 -1
- package/dist/primitives/RadioGroup/index.js +6 -2
- package/dist/primitives/RadioGroup/index.js.map +1 -1
- package/dist/primitives/Resizable/index.cjs +6 -2
- package/dist/primitives/Resizable/index.cjs.map +1 -1
- package/dist/primitives/Resizable/index.js +6 -2
- package/dist/primitives/Resizable/index.js.map +1 -1
- package/dist/primitives/ScrollArea/index.cjs +1 -1
- package/dist/primitives/ScrollArea/index.js +1 -1
- package/dist/primitives/Select/index.cjs +18 -5
- package/dist/primitives/Select/index.cjs.map +1 -1
- package/dist/primitives/Select/index.js +18 -5
- package/dist/primitives/Select/index.js.map +1 -1
- package/dist/primitives/Separator/index.cjs +1 -1
- package/dist/primitives/Separator/index.js +1 -1
- package/dist/primitives/Sheet/index.cjs +6 -2
- package/dist/primitives/Sheet/index.cjs.map +1 -1
- package/dist/primitives/Sheet/index.js +6 -2
- package/dist/primitives/Sheet/index.js.map +1 -1
- package/dist/primitives/Slider/index.cjs +1 -1
- package/dist/primitives/Slider/index.js +1 -1
- package/dist/primitives/Sonner/index.cjs +22 -6
- package/dist/primitives/Sonner/index.cjs.map +1 -1
- package/dist/primitives/Sonner/index.js +22 -6
- package/dist/primitives/Sonner/index.js.map +1 -1
- package/dist/primitives/Spinner/index.cjs +4 -2
- package/dist/primitives/Spinner/index.cjs.map +1 -1
- package/dist/primitives/Spinner/index.js +4 -2
- package/dist/primitives/Spinner/index.js.map +1 -1
- package/dist/primitives/Switch/index.cjs +1 -1
- package/dist/primitives/Switch/index.js +1 -1
- package/dist/primitives/Tabs/index.cjs +2 -2
- package/dist/primitives/Tabs/index.js +2 -2
- package/dist/primitives/Text/index.cjs +2 -1
- package/dist/primitives/Text/index.cjs.map +1 -1
- package/dist/primitives/Text/index.js +1 -1
- package/dist/primitives/Textarea/index.cjs +2 -1
- package/dist/primitives/Textarea/index.cjs.map +1 -1
- package/dist/primitives/Textarea/index.js +1 -1
- package/dist/primitives/Toggle/index.cjs +3 -2
- package/dist/primitives/Toggle/index.cjs.map +1 -1
- package/dist/primitives/Toggle/index.js +2 -2
- package/dist/primitives/ToggleGroup/index.cjs +1 -1
- package/dist/primitives/ToggleGroup/index.js +1 -1
- package/dist/primitives/Tooltip/index.cjs +1 -1
- package/dist/primitives/Tooltip/index.js +1 -1
- package/dist/primitives/index.cjs +1 -1
- package/dist/primitives/index.js +1 -1
- package/package.json +2 -1
package/SKILL.md
CHANGED
|
@@ -12,18 +12,44 @@ component catalog, full token inventory, theming model — is in
|
|
|
12
12
|
|
|
13
13
|
## Decision order
|
|
14
14
|
|
|
15
|
+
Work down this ladder in order — each step is only allowed after the one above it
|
|
16
|
+
demonstrably can't produce the design:
|
|
17
|
+
|
|
15
18
|
1. **Pattern first**: does a pattern (`patterns/Header`, `DataTable`, `Footer`,
|
|
16
19
|
`SectionCard`, `SectionHeading`, `MediaObject`) or layout (`Container`, `Stack`,
|
|
17
|
-
`TwoColumn`, `PageBackground`) already solve it? Use it.
|
|
20
|
+
`TwoColumn`, `MultiColumn`, `PageBackground`) already solve it? Use it.
|
|
18
21
|
2. **Primitive second**: compose from `primitives/*` (64 of them — check the catalog
|
|
19
22
|
in DESIGN.md §6 before writing anything custom).
|
|
20
|
-
3. **
|
|
21
|
-
|
|
23
|
+
3. **Stock rendering**: render the chosen component with its variants/props as
|
|
24
|
+
designed. Pick the variant from its "Choosing a variant" table in DESIGN.md
|
|
25
|
+
(intent + light/dark look + tell) — don't guess from the variant name.
|
|
26
|
+
4. **Layout tweaks only**: `className` may place and size the component in its
|
|
27
|
+
context — margin, width, flex/grid placement, alignment. It must never repaint
|
|
28
|
+
it (no `bg-*`/`text-*` color/`border-*` color/`hover:*` on a variant).
|
|
29
|
+
5. **Exception — last resort, and marked**: only when 1–4 can't get there:
|
|
30
|
+
- **Component missing from the DS** → build custom from token utilities only
|
|
31
|
+
(tokens, px-named radii, `ring-focus`; never raw colors, never `dark:`,
|
|
32
|
+
never a parallel component that shadows an existing one).
|
|
33
|
+
- **Component exists but no variant fits** → do NOT re-skin it (see the
|
|
34
|
+
anti-pattern below); add or request a variant. If you must ship now, mark
|
|
35
|
+
the deviation at the call site so it stays auditable:
|
|
36
|
+
`// DS-EXCEPTION: <why> — <what the DS should provide instead>`
|
|
37
|
+
|
|
38
|
+
Every `DS-EXCEPTION` is a design-system backlog item — sweep them with
|
|
39
|
+
`grep -rn "DS-EXCEPTION"` and either upstream the need into a real
|
|
40
|
+
variant/component or remove the deviation. Exceptions feed the DS; they must
|
|
41
|
+
never silently erode it.
|
|
22
42
|
|
|
23
43
|
Import per subpath: `@psnext/design-system/primitives/Button`. The DS bundles Radix,
|
|
24
44
|
cva, lucide-react, recharts, sonner, react-hook-form, zod — import primitives from the
|
|
25
|
-
DS, not from those libraries directly (exception: `toast()` from `"sonner"
|
|
26
|
-
|
|
45
|
+
DS, not from those libraries directly (exception: `toast()` from `"sonner"`).
|
|
46
|
+
|
|
47
|
+
**Icons**: prefer the DS `Icon` — `<Icon icon="search" />` (typed lucide name, lazy /
|
|
48
|
+
code-split) for content icons, or `<Icon as={Search} />` (sync, bare `<svg>`) with a
|
|
49
|
+
lucide **or a custom** icon component, e.g. inside a component's icon slot. `Icon`
|
|
50
|
+
inherits the surrounding text color by default, so it's correct on a Button; pass
|
|
51
|
+
`color` or a `text-*` class to override. Raw `lucide-react` icons still work as icon-slot
|
|
52
|
+
children (`<Button><Search /></Button>`) — those slots style a direct-child `[&>svg]`.
|
|
27
53
|
|
|
28
54
|
## Class-writing rules (do / don't)
|
|
29
55
|
|
|
@@ -38,10 +64,41 @@ DS, not from those libraries directly (exception: `toast()` from `"sonner"`, and
|
|
|
38
64
|
| `text-danger-txt` for errors | `text-destructive`, `text-red-500` | severity family is info/success/warning/danger |
|
|
39
65
|
| `cn(...)` from the DS for merged classes | template-string concat | cn's tailwind-merge knows the numeric radius scale |
|
|
40
66
|
| suffix matches property: `bg-*-bg`, `text-*-txt` | `text-primary-bg` | token suffix encodes the valid context |
|
|
67
|
+
| pick the variant that already looks right | re-skin a variant with paint classes | variants bundle hover/active/focus states — overrides break them (see below) |
|
|
41
68
|
|
|
42
69
|
Figma → code: px ÷ 4 = spacing step (16px → `p-4`); radius px maps 1:1 (`rounded-12`);
|
|
43
70
|
heading levels map to `<Heading size={n}>`.
|
|
44
71
|
|
|
72
|
+
## Never re-skin a variant (anti-pattern)
|
|
73
|
+
|
|
74
|
+
A component variant is a **package deal**: rest + hover + active + focus + disabled
|
|
75
|
+
states, tuned together. Overriding its paint with `className` only changes the rest
|
|
76
|
+
state — the interaction states still belong to the original variant, and the result
|
|
77
|
+
is visibly broken.
|
|
78
|
+
|
|
79
|
+
Real failure seen in the wild:
|
|
80
|
+
|
|
81
|
+
```tsx
|
|
82
|
+
// ✗ WRONG — outline button "made primary" with a bg override
|
|
83
|
+
<Button variant="outline" className="bg-primary-invert-bg text-primary-invert-txt">
|
|
84
|
+
// Looks primary at rest. On hover, outline's own hover:bg-outline-hover-bg fires
|
|
85
|
+
// and the fill flickers to a translucent gray — broken hover, broken contrast.
|
|
86
|
+
|
|
87
|
+
// ✓ RIGHT — that look already exists as a variant
|
|
88
|
+
<Button variant="default">
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Rules:
|
|
92
|
+
|
|
93
|
+
- **`className` on a DS component is for layout only** — margin, width, flex/grid
|
|
94
|
+
placement, alignment. Never for paint: `bg-*`, `text-*` color, `border-*` color,
|
|
95
|
+
`hover:*`, `rounded-*` that fight the variant.
|
|
96
|
+
- **If the look you want isn't a variant, that's a DS gap** — don't patch it at the
|
|
97
|
+
call site. Add/request a variant (cva) so the states are designed together.
|
|
98
|
+
- This applies to **every** cva-styled component (Button, Badge, Tabs, Card, Alert, …),
|
|
99
|
+
not just Button. If you catch yourself writing a paint class on one, stop and check
|
|
100
|
+
the component's variant table in DESIGN.md first.
|
|
101
|
+
|
|
45
102
|
## Recipes
|
|
46
103
|
|
|
47
104
|
**Page scaffold**
|
|
@@ -85,6 +142,27 @@ tokens inside flip; do not hand-pick dark colors.
|
|
|
85
142
|
with `cn`); don't wrap in extra divs to fight specificity.
|
|
86
143
|
- **`!important` on library-styled elements** (e.g. toast classNames) will override
|
|
87
144
|
richColors/severity styling — scope with `data-[type=…]` variants instead.
|
|
145
|
+
- **App-defined `@layer base` wiping the tokens**: an app that declares its own
|
|
146
|
+
base-layer `:root`/`body` rules (or a reset) can silently override the DS token
|
|
147
|
+
variables — every component then renders colorless while classes look correct.
|
|
148
|
+
Don't redefine base-layer custom properties; put app-level overrides *after* the
|
|
149
|
+
DS styles import, outside `@layer base`.
|
|
150
|
+
|
|
151
|
+
**If the DS token variables are missing entirely** (components render but
|
|
152
|
+
`--primary-bg` etc. aren't on `:root`), walk this tree in order:
|
|
153
|
+
|
|
154
|
+
1. Devtools → inspect `<html>` → computed styles → search `--primary-bg`.
|
|
155
|
+
Present? The tokens are fine — suspect a wrong class name or missing `@source`.
|
|
156
|
+
2. Absent → check the Tailwind entry CSS: `@import "tailwindcss"` then
|
|
157
|
+
`@import "@psnext/design-system/styles"`, and **all `@import`s before any other
|
|
158
|
+
statement** (including `@source` — a misplaced import can abort the rest).
|
|
159
|
+
3. Confirm Tailwind is **v4** and this file is actually compiled by
|
|
160
|
+
`@tailwindcss/vite` / `@tailwindcss/postcss` (not served as plain CSS).
|
|
161
|
+
4. Check nothing *later* redefines the vars: app `@layer base` blocks, resets, or
|
|
162
|
+
`:root` rules after the import (see the pitfall above — this has happened).
|
|
163
|
+
5. Isolation test: `@import "@psnext/design-system/dist/styles/tokens/mode-light.css"`.
|
|
164
|
+
If vars appear now, the `/styles` subpath isn't resolving in your bundler —
|
|
165
|
+
report that, don't ship the workaround.
|
|
88
166
|
- **Logo**: never recolor; wordmark ink follows mode automatically; no ThemeProvider
|
|
89
167
|
needed.
|
|
90
168
|
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
// Install the design-system agent docs (SKILL.md + DESIGN.md) into a consumer
|
|
3
3
|
// project as an Agent Skill, so coding agents load them for UI work.
|
|
4
4
|
//
|
|
5
|
-
// npx @psnext/design-system → .
|
|
5
|
+
// npx @psnext/design-system → .agent/skills/design-system/
|
|
6
6
|
// npx @psnext/design-system <dir> → <dir>/ (explicit destination)
|
|
7
7
|
//
|
|
8
8
|
// The two docs are copied verbatim from the installed package; SKILL.md links to
|
|
9
9
|
// DESIGN.md as a sibling, so they must land in the same folder (this does that).
|
|
10
10
|
|
|
11
|
-
import { copyFileSync, existsSync, mkdirSync } from "node:fs";
|
|
12
|
-
import { dirname, join, resolve } from "node:path";
|
|
11
|
+
import { copyFileSync, existsSync, mkdirSync, statSync } from "node:fs";
|
|
12
|
+
import { dirname, join, resolve, sep } from "node:path";
|
|
13
13
|
import { fileURLToPath } from "node:url";
|
|
14
14
|
|
|
15
15
|
const PKG_ROOT = resolve(dirname(fileURLToPath(import.meta.url)), "..");
|
|
@@ -20,7 +20,7 @@ if (args.includes("--help") || args.includes("-h")) {
|
|
|
20
20
|
console.log(`Install @psnext/design-system agent docs as an Agent Skill.
|
|
21
21
|
|
|
22
22
|
Usage:
|
|
23
|
-
npx @psnext/design-system Copy SKILL.md + DESIGN.md into .
|
|
23
|
+
npx @psnext/design-system Copy SKILL.md + DESIGN.md into .agent/skills/design-system/
|
|
24
24
|
npx @psnext/design-system <dir> Copy into an explicit destination folder
|
|
25
25
|
npx @psnext/design-system --help Show this help
|
|
26
26
|
|
|
@@ -32,7 +32,7 @@ The agent then loads the skill when writing or reviewing UI in this project.`);
|
|
|
32
32
|
const positional = args.find((a) => !a.startsWith("-"));
|
|
33
33
|
const dest = positional
|
|
34
34
|
? resolve(process.cwd(), positional)
|
|
35
|
-
: resolve(process.cwd(), ".
|
|
35
|
+
: resolve(process.cwd(), ".agent/skills/design-system");
|
|
36
36
|
|
|
37
37
|
for (const doc of DOCS) {
|
|
38
38
|
const src = join(PKG_ROOT, doc);
|
|
@@ -42,13 +42,45 @@ for (const doc of DOCS) {
|
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
-
|
|
45
|
+
// Whether the skill was already installed here (a re-run just refreshes the two
|
|
46
|
+
// docs in place) — checked before we create anything.
|
|
47
|
+
const isRefresh = DOCS.every((doc) => existsSync(join(dest, doc)));
|
|
48
|
+
|
|
49
|
+
// Validate/create the destination one level at a time (for the default that's
|
|
50
|
+
// .agent → skills → design-system): reuse a folder that already exists, create
|
|
51
|
+
// the ones that don't, and bail with a clear message if a segment is occupied
|
|
52
|
+
// by a file — otherwise mkdir would fail cryptically. Only walk segments under
|
|
53
|
+
// the cwd; anything outside falls through to the recursive mkdir below.
|
|
54
|
+
const chain = [];
|
|
55
|
+
for (let cur = dest; cur.startsWith(process.cwd() + sep); cur = dirname(cur)) {
|
|
56
|
+
chain.unshift(cur);
|
|
57
|
+
}
|
|
58
|
+
for (const dir of chain) {
|
|
59
|
+
if (existsSync(dir)) {
|
|
60
|
+
if (!statSync(dir).isDirectory()) {
|
|
61
|
+
console.error(`✗ ${dir} already exists but is not a directory — move it aside and re-run.`);
|
|
62
|
+
process.exit(1);
|
|
63
|
+
}
|
|
64
|
+
continue; // reuse the existing folder
|
|
65
|
+
}
|
|
66
|
+
mkdirSync(dir); // parent already ensured by the outer→inner order
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
try {
|
|
70
|
+
mkdirSync(dest, { recursive: true }); // covers a destination outside the cwd
|
|
71
|
+
} catch (err) {
|
|
72
|
+
console.error(`✗ Could not create ${dest}: ${err.message}`);
|
|
73
|
+
process.exit(1);
|
|
74
|
+
}
|
|
75
|
+
|
|
46
76
|
for (const doc of DOCS) {
|
|
47
77
|
copyFileSync(join(PKG_ROOT, doc), join(dest, doc));
|
|
48
78
|
}
|
|
49
79
|
|
|
50
80
|
const rel = dest.startsWith(process.cwd()) ? `.${dest.slice(process.cwd().length)}` : dest;
|
|
51
|
-
console.log(
|
|
81
|
+
console.log(
|
|
82
|
+
`✓ ${isRefresh ? "Refreshed" : "Installed"} @psnext/design-system agent skill → ${rel}/`,
|
|
83
|
+
);
|
|
52
84
|
console.log(" • SKILL.md — workflow playbook (the Agent Skill entry point)");
|
|
53
85
|
console.log(" • DESIGN.md — full token + component reference");
|
|
54
86
|
console.log("\nRe-run this after upgrading the package to refresh the docs.");
|