@gv-tech/design-system 2.20.0 → 2.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/accordion.cjs +2 -2
- package/dist/accordion.cjs.map +1 -1
- package/dist/accordion.d.ts +2 -34
- package/dist/accordion.mjs +35 -38
- package/dist/accordion.mjs.map +1 -1
- package/dist/alert-dialog.cjs +2 -2
- package/dist/alert-dialog.cjs.map +1 -1
- package/dist/alert-dialog.d.ts +2 -74
- package/dist/alert-dialog.mjs +55 -69
- package/dist/alert-dialog.mjs.map +1 -1
- package/dist/alert.cjs +2 -2
- package/dist/alert.cjs.map +1 -1
- package/dist/alert.d.ts +2 -29
- package/dist/alert.mjs +36 -32
- package/dist/alert.mjs.map +1 -1
- package/dist/aspect-ratio.cjs +2 -2
- package/dist/aspect-ratio.cjs.map +1 -1
- package/dist/aspect-ratio.d.ts +2 -14
- package/dist/aspect-ratio.mjs +8 -6
- package/dist/aspect-ratio.mjs.map +1 -1
- package/dist/avatar.cjs +2 -2
- package/dist/avatar.cjs.map +1 -1
- package/dist/avatar.d.ts +2 -26
- package/dist/avatar.mjs +27 -29
- package/dist/avatar.mjs.map +1 -1
- package/dist/badge.cjs +2 -2
- package/dist/badge.cjs.map +1 -1
- package/dist/badge.d.ts +2 -21
- package/dist/badge.mjs +23 -25
- package/dist/badge.mjs.map +1 -1
- package/dist/breadcrumb.cjs +2 -2
- package/dist/breadcrumb.cjs.map +1 -1
- package/dist/breadcrumb.d.ts +2 -62
- package/dist/breadcrumb.mjs +60 -67
- package/dist/breadcrumb.mjs.map +1 -1
- package/dist/button.cjs +2 -2
- package/dist/button.cjs.map +1 -1
- package/dist/button.d.ts +2 -22
- package/dist/button.mjs +40 -39
- package/dist/button.mjs.map +1 -1
- package/dist/calendar.cjs +2 -2
- package/dist/calendar.cjs.map +1 -1
- package/dist/calendar.d.ts +2 -36
- package/dist/calendar.mjs +94 -130
- package/dist/calendar.mjs.map +1 -1
- package/dist/card.cjs +2 -2
- package/dist/card.cjs.map +1 -1
- package/dist/card.d.ts +2 -23
- package/dist/card.mjs +44 -33
- package/dist/card.mjs.map +1 -1
- package/dist/carousel.cjs +2 -2
- package/dist/carousel.cjs.map +1 -1
- package/dist/carousel.d.ts +2 -78
- package/dist/carousel.mjs +113 -151
- package/dist/carousel.mjs.map +1 -1
- package/dist/chart.cjs +5 -5
- package/dist/chart.cjs.map +1 -1
- package/dist/chart.d.ts +2 -90
- package/dist/chart.mjs +124 -182
- package/dist/chart.mjs.map +1 -1
- package/dist/checkbox.cjs +2 -2
- package/dist/checkbox.cjs.map +1 -1
- package/dist/checkbox.d.ts +2 -17
- package/dist/checkbox.mjs +19 -22
- package/dist/checkbox.mjs.map +1 -1
- package/dist/collapsible.cjs +2 -2
- package/dist/collapsible.cjs.map +1 -1
- package/dist/collapsible.d.ts +2 -32
- package/dist/collapsible.mjs +8 -8
- package/dist/collapsible.mjs.map +1 -1
- package/dist/command.cjs +2 -2
- package/dist/command.cjs.map +1 -1
- package/dist/command.d.ts +2 -133
- package/dist/command.mjs +80 -86
- package/dist/command.mjs.map +1 -1
- package/dist/context-menu.cjs +2 -2
- package/dist/context-menu.cjs.map +1 -1
- package/dist/context-menu.d.ts +2 -115
- package/dist/context-menu.mjs +72 -124
- package/dist/context-menu.mjs.map +1 -1
- package/dist/design-system.css +3 -1
- package/dist/dialog.cjs +2 -2
- package/dist/dialog.cjs.map +1 -1
- package/dist/dialog.d.ts +2 -31
- package/dist/dialog.mjs +50 -65
- package/dist/dialog.mjs.map +1 -1
- package/dist/drawer.cjs +2 -2
- package/dist/drawer.cjs.map +1 -1
- package/dist/drawer.d.ts +2 -79
- package/dist/drawer.mjs +49 -54
- package/dist/drawer.mjs.map +1 -1
- package/dist/dropdown-menu.cjs +2 -2
- package/dist/dropdown-menu.cjs.map +1 -1
- package/dist/dropdown-menu.d.ts +2 -124
- package/dist/dropdown-menu.mjs +73 -126
- package/dist/dropdown-menu.mjs.map +1 -1
- package/dist/form.cjs +2 -2
- package/dist/form.cjs.map +1 -1
- package/dist/form.d.ts +2 -62
- package/dist/form.mjs +75 -65
- package/dist/form.mjs.map +1 -1
- package/dist/hover-card.cjs +2 -2
- package/dist/hover-card.cjs.map +1 -1
- package/dist/hover-card.d.ts +2 -30
- package/dist/hover-card.mjs +17 -23
- package/dist/hover-card.mjs.map +1 -1
- package/dist/index.cjs +1 -2
- package/dist/index.d.ts +2 -2442
- package/dist/index.mjs +56 -430
- package/dist/input.cjs +2 -2
- package/dist/input.cjs.map +1 -1
- package/dist/input.d.ts +2 -14
- package/dist/input.mjs +16 -20
- package/dist/input.mjs.map +1 -1
- package/dist/label.cjs +2 -2
- package/dist/label.cjs.map +1 -1
- package/dist/label.d.ts +2 -14
- package/dist/label.mjs +14 -8
- package/dist/label.mjs.map +1 -1
- package/dist/menubar.cjs +2 -2
- package/dist/menubar.cjs.map +1 -1
- package/dist/menubar.d.ts +2 -125
- package/dist/menubar.mjs +101 -156
- package/dist/menubar.mjs.map +1 -1
- package/dist/navigation-menu.cjs +2 -2
- package/dist/navigation-menu.cjs.map +1 -1
- package/dist/navigation-menu.d.ts +2 -77
- package/dist/navigation-menu.mjs +58 -96
- package/dist/navigation-menu.mjs.map +1 -1
- package/dist/packages/design-tokens/src/index.d.ts +91 -0
- package/dist/packages/design-tokens/src/palette.d.ts +31 -0
- package/dist/packages/design-tokens/src/preset.d.ts +107 -0
- package/dist/packages/design-tokens/src/radii.d.ts +20 -0
- package/dist/packages/design-tokens/src/shadows.d.ts +11 -0
- package/dist/packages/design-tokens/src/spacing.d.ts +29 -0
- package/dist/packages/design-tokens/src/theme.d.ts +47 -0
- package/dist/packages/design-tokens/src/typography.d.ts +32 -0
- package/dist/packages/ui-core/src/contracts/accordion.d.ts +19 -0
- package/dist/packages/ui-core/src/contracts/alert-dialog.d.ts +39 -0
- package/dist/packages/ui-core/src/contracts/alert.d.ts +14 -0
- package/dist/packages/ui-core/src/contracts/aspect-ratio.d.ts +6 -0
- package/dist/packages/ui-core/src/contracts/avatar.d.ts +14 -0
- package/dist/packages/ui-core/src/contracts/badge.d.ts +6 -0
- package/dist/packages/ui-core/src/contracts/breadcrumb.d.ts +30 -0
- package/dist/packages/ui-core/src/contracts/button.d.ts +9 -0
- package/dist/packages/ui-core/src/contracts/calendar.d.ts +4 -0
- package/dist/packages/ui-core/src/contracts/card.d.ts +5 -0
- package/dist/packages/ui-core/src/contracts/carousel.d.ts +24 -0
- package/dist/packages/ui-core/src/contracts/chart.d.ts +33 -0
- package/dist/packages/ui-core/src/contracts/checkbox.d.ts +7 -0
- package/dist/packages/ui-core/src/contracts/collapsible.d.ts +18 -0
- package/dist/packages/ui-core/src/contracts/command.d.ts +35 -0
- package/dist/packages/ui-core/src/contracts/context-menu.d.ts +64 -0
- package/dist/packages/ui-core/src/contracts/dialog.d.ts +13 -0
- package/dist/packages/ui-core/src/contracts/drawer.d.ts +31 -0
- package/dist/packages/ui-core/src/contracts/dropdown-menu.d.ts +73 -0
- package/dist/packages/ui-core/src/contracts/form.d.ts +23 -0
- package/dist/packages/ui-core/src/contracts/hover-card.d.ts +18 -0
- package/dist/packages/ui-core/src/contracts/input.d.ts +5 -0
- package/dist/packages/ui-core/src/contracts/label.d.ts +6 -0
- package/dist/packages/ui-core/src/contracts/menubar.d.ts +73 -0
- package/dist/packages/ui-core/src/contracts/navigation-menu.d.ts +47 -0
- package/dist/packages/ui-core/src/contracts/pagination.d.ts +31 -0
- package/dist/packages/ui-core/src/contracts/popover.d.ts +24 -0
- package/dist/packages/ui-core/src/contracts/progress.d.ts +4 -0
- package/dist/packages/ui-core/src/contracts/radio.d.ts +9 -0
- package/dist/packages/ui-core/src/contracts/resizable.d.ts +38 -0
- package/dist/packages/ui-core/src/contracts/scroll-area.d.ts +13 -0
- package/dist/packages/ui-core/src/contracts/scroll-to-top.d.ts +25 -0
- package/dist/packages/ui-core/src/contracts/search.d.ts +12 -0
- package/dist/packages/ui-core/src/contracts/select.d.ts +54 -0
- package/dist/packages/ui-core/src/contracts/separator.d.ts +5 -0
- package/dist/packages/ui-core/src/contracts/sheet.d.ts +48 -0
- package/dist/packages/ui-core/src/contracts/skeleton.d.ts +5 -0
- package/dist/packages/ui-core/src/contracts/slider.d.ts +15 -0
- package/dist/packages/ui-core/src/contracts/sonner.d.ts +15 -0
- package/dist/packages/ui-core/src/contracts/switch.d.ts +11 -0
- package/dist/packages/ui-core/src/contracts/table-of-contents.d.ts +41 -0
- package/dist/packages/ui-core/src/contracts/table.d.ts +33 -0
- package/dist/packages/ui-core/src/contracts/tabs.d.ts +27 -0
- package/dist/packages/ui-core/src/contracts/text.d.ts +6 -0
- package/dist/packages/ui-core/src/contracts/textarea.d.ts +7 -0
- package/dist/packages/ui-core/src/contracts/theme-provider.d.ts +13 -0
- package/dist/packages/ui-core/src/contracts/theme-toggle.d.ts +15 -0
- package/dist/packages/ui-core/src/contracts/toast.d.ts +10 -0
- package/dist/packages/ui-core/src/contracts/toaster.d.ts +3 -0
- package/dist/packages/ui-core/src/contracts/toggle-group.d.ts +21 -0
- package/dist/packages/ui-core/src/contracts/toggle.d.ts +29 -0
- package/dist/packages/ui-core/src/contracts/tooltip.d.ts +24 -0
- package/dist/packages/ui-core/src/index.d.ts +56 -0
- package/dist/packages/ui-web/src/accordion.d.ts +9 -0
- package/dist/packages/ui-web/src/accordion.test.d.ts +1 -0
- package/dist/packages/ui-web/src/alert-dialog.d.ts +22 -0
- package/dist/packages/ui-web/src/alert-dialog.test.d.ts +1 -0
- package/dist/packages/ui-web/src/alert.d.ts +11 -0
- package/dist/packages/ui-web/src/alert.test.d.ts +1 -0
- package/dist/packages/ui-web/src/aspect-ratio.d.ts +6 -0
- package/dist/packages/ui-web/src/aspect-ratio.test.d.ts +1 -0
- package/dist/packages/ui-web/src/avatar.d.ts +8 -0
- package/dist/packages/ui-web/src/avatar.test.d.ts +1 -0
- package/dist/packages/ui-web/src/badge.d.ts +11 -0
- package/dist/packages/ui-web/src/badge.test.d.ts +1 -0
- package/dist/packages/ui-web/src/breadcrumb.d.ts +19 -0
- package/dist/packages/ui-web/src/button.d.ts +13 -0
- package/dist/packages/ui-web/src/button.test.d.ts +1 -0
- package/dist/packages/ui-web/src/calendar.d.ts +10 -0
- package/dist/packages/ui-web/src/calendar.test.d.ts +1 -0
- package/dist/packages/ui-web/src/card.d.ts +11 -0
- package/dist/packages/ui-web/src/card.test.d.ts +1 -0
- package/dist/packages/ui-web/src/carousel.d.ts +24 -0
- package/dist/packages/ui-web/src/carousel.test.d.ts +1 -0
- package/dist/packages/ui-web/src/chart.d.ts +16 -0
- package/dist/packages/ui-web/src/chart.test.d.ts +1 -0
- package/dist/packages/ui-web/src/checkbox.d.ts +7 -0
- package/dist/packages/ui-web/src/checkbox.test.d.ts +1 -0
- package/dist/packages/ui-web/src/collapsible.d.ts +8 -0
- package/dist/packages/ui-web/src/collapsible.test.d.ts +1 -0
- package/dist/packages/ui-web/src/command.d.ts +82 -0
- package/dist/packages/ui-web/src/command.test.d.ts +1 -0
- package/dist/packages/ui-web/src/context-menu.d.ts +23 -0
- package/dist/packages/ui-web/src/context-menu.test.d.ts +1 -0
- package/dist/packages/ui-web/src/dialog.d.ts +19 -0
- package/dist/packages/ui-web/src/dialog.test.d.ts +1 -0
- package/dist/packages/ui-web/src/drawer.d.ts +25 -0
- package/dist/packages/ui-web/src/drawer.test.d.ts +1 -0
- package/dist/packages/ui-web/src/dropdown-menu.d.ts +23 -0
- package/dist/packages/ui-web/src/dropdown-menu.test.d.ts +1 -0
- package/dist/packages/ui-web/src/form.d.ts +26 -0
- package/dist/packages/ui-web/src/form.test.d.ts +1 -0
- package/dist/packages/ui-web/src/hooks/use-theme.d.ts +51 -0
- package/dist/packages/ui-web/src/hooks/use-toast.d.ts +44 -0
- package/dist/packages/ui-web/src/hover-card.d.ts +8 -0
- package/dist/packages/ui-web/src/hover-card.test.d.ts +1 -0
- package/dist/packages/ui-web/src/index.d.ts +107 -0
- package/dist/packages/ui-web/src/input.d.ts +6 -0
- package/dist/packages/ui-web/src/input.test.d.ts +1 -0
- package/dist/packages/ui-web/src/label.d.ts +8 -0
- package/dist/packages/ui-web/src/label.test.d.ts +1 -0
- package/dist/packages/ui-web/src/lib/utils.d.ts +3 -0
- package/dist/packages/ui-web/src/menubar.d.ts +24 -0
- package/dist/packages/ui-web/src/menubar.test.d.ts +1 -0
- package/dist/packages/ui-web/src/navigation-menu.d.ts +15 -0
- package/dist/packages/ui-web/src/navigation-menu.test.d.ts +1 -0
- package/dist/packages/ui-web/src/pagination.d.ts +30 -0
- package/dist/packages/ui-web/src/pagination.test.d.ts +1 -0
- package/dist/packages/ui-web/src/popover.d.ts +9 -0
- package/dist/packages/ui-web/src/popover.test.d.ts +1 -0
- package/dist/packages/ui-web/src/progress.d.ts +6 -0
- package/dist/packages/ui-web/src/progress.test.d.ts +1 -0
- package/dist/packages/ui-web/src/radio-group.d.ts +10 -0
- package/dist/packages/ui-web/src/radio-group.test.d.ts +1 -0
- package/dist/packages/ui-web/src/resizable.d.ts +8 -0
- package/dist/packages/ui-web/src/resizable.test.d.ts +1 -0
- package/dist/packages/ui-web/src/scroll-area.d.ts +7 -0
- package/dist/packages/ui-web/src/scroll-area.test.d.ts +1 -0
- package/dist/packages/ui-web/src/scroll-to-top.d.ts +7 -0
- package/dist/packages/ui-web/src/scroll-to-top.test.d.ts +1 -0
- package/dist/packages/ui-web/src/search.d.ts +7 -0
- package/dist/packages/ui-web/src/search.test.d.ts +1 -0
- package/dist/packages/ui-web/src/select.d.ts +15 -0
- package/dist/packages/ui-web/src/select.test.d.ts +1 -0
- package/dist/packages/ui-web/src/separator.d.ts +6 -0
- package/dist/packages/ui-web/src/separator.test.d.ts +1 -0
- package/dist/packages/ui-web/src/setupTests.d.ts +0 -0
- package/dist/packages/ui-web/src/sheet.d.ts +28 -0
- package/dist/packages/ui-web/src/sheet.test.d.ts +1 -0
- package/dist/packages/ui-web/src/skeleton.d.ts +5 -0
- package/dist/packages/ui-web/src/skeleton.test.d.ts +1 -0
- package/dist/packages/ui-web/src/slider.d.ts +6 -0
- package/dist/packages/ui-web/src/slider.test.d.ts +1 -0
- package/dist/packages/ui-web/src/sonner.d.ts +7 -0
- package/dist/packages/ui-web/src/sonner.test.d.ts +1 -0
- package/dist/packages/ui-web/src/support-fab.d.ts +15 -0
- package/dist/packages/ui-web/src/support-fab.test.d.ts +1 -0
- package/dist/packages/ui-web/src/switch.d.ts +6 -0
- package/dist/packages/ui-web/src/switch.test.d.ts +1 -0
- package/dist/packages/ui-web/src/table-of-contents.d.ts +23 -0
- package/dist/packages/ui-web/src/table-of-contents.test.d.ts +1 -0
- package/dist/packages/ui-web/src/table.d.ts +12 -0
- package/dist/packages/ui-web/src/table.test.d.ts +1 -0
- package/dist/packages/ui-web/src/tabs.d.ts +9 -0
- package/dist/packages/ui-web/src/tabs.test.d.ts +1 -0
- package/dist/packages/ui-web/src/text.d.ts +12 -0
- package/dist/packages/ui-web/src/text.test.d.ts +1 -0
- package/dist/packages/ui-web/src/textarea.d.ts +6 -0
- package/dist/packages/ui-web/src/textarea.test.d.ts +1 -0
- package/dist/packages/ui-web/src/theme-provider.d.ts +4 -0
- package/dist/packages/ui-web/src/theme-toggle.d.ts +3 -0
- package/dist/packages/ui-web/src/theme-toggle.test.d.ts +1 -0
- package/dist/packages/ui-web/src/toast.d.ts +16 -0
- package/dist/packages/ui-web/src/toast.test.d.ts +1 -0
- package/dist/packages/ui-web/src/toaster.d.ts +2 -0
- package/dist/packages/ui-web/src/toggle-group.d.ts +13 -0
- package/dist/packages/ui-web/src/toggle-group.test.d.ts +1 -0
- package/dist/packages/ui-web/src/toggle.d.ts +8 -0
- package/dist/packages/ui-web/src/toggle.test.d.ts +1 -0
- package/dist/packages/ui-web/src/tooltip.d.ts +12 -0
- package/dist/pagination.cjs +2 -2
- package/dist/pagination.cjs.map +1 -1
- package/dist/pagination.d.ts +2 -94
- package/dist/pagination.mjs +63 -67
- package/dist/pagination.mjs.map +1 -1
- package/dist/popover.cjs +2 -2
- package/dist/popover.cjs.map +1 -1
- package/dist/popover.d.ts +2 -39
- package/dist/popover.mjs +17 -24
- package/dist/popover.mjs.map +1 -1
- package/dist/progress.cjs +2 -2
- package/dist/progress.cjs.map +1 -1
- package/dist/progress.d.ts +2 -11
- package/dist/progress.mjs +19 -23
- package/dist/progress.mjs.map +1 -1
- package/dist/radio-group.cjs +2 -2
- package/dist/radio-group.cjs.map +1 -1
- package/dist/radio-group.d.ts +2 -25
- package/dist/radio-group.mjs +25 -27
- package/dist/radio-group.mjs.map +1 -1
- package/dist/resizable.cjs +2 -2
- package/dist/resizable.cjs.map +1 -1
- package/dist/resizable.d.ts +2 -53
- package/dist/resizable.mjs +21 -34
- package/dist/resizable.mjs.map +1 -1
- package/dist/rolldown-runtime-C0IHAABJ.mjs +23 -0
- package/dist/rolldown-runtime-CacfPODE.js +1 -0
- package/dist/scroll-area.cjs +2 -2
- package/dist/scroll-area.cjs.map +1 -1
- package/dist/scroll-area.d.ts +2 -22
- package/dist/scroll-area.mjs +31 -30
- package/dist/scroll-area.mjs.map +1 -1
- package/dist/scroll-to-top.cjs +2 -2
- package/dist/scroll-to-top.cjs.map +1 -1
- package/dist/scroll-to-top.d.ts +2 -37
- package/dist/scroll-to-top.mjs +72 -84
- package/dist/scroll-to-top.mjs.map +1 -1
- package/dist/search.cjs +2 -2
- package/dist/search.cjs.map +1 -1
- package/dist/search.d.ts +2 -26
- package/dist/search.mjs +54 -63
- package/dist/search.mjs.map +1 -1
- package/dist/select.cjs +2 -2
- package/dist/select.cjs.map +1 -1
- package/dist/select.d.ts +2 -87
- package/dist/select.mjs +70 -100
- package/dist/select.mjs.map +1 -1
- package/dist/separator.cjs +2 -2
- package/dist/separator.cjs.map +1 -1
- package/dist/separator.d.ts +2 -12
- package/dist/separator.mjs +17 -18
- package/dist/separator.mjs.map +1 -1
- package/dist/sheet.cjs +2 -2
- package/dist/sheet.cjs.map +1 -1
- package/dist/sheet.d.ts +2 -97
- package/dist/sheet.mjs +58 -64
- package/dist/sheet.mjs.map +1 -1
- package/dist/skeleton.cjs +2 -2
- package/dist/skeleton.cjs.map +1 -1
- package/dist/skeleton.d.ts +2 -11
- package/dist/skeleton.mjs +15 -8
- package/dist/skeleton.mjs.map +1 -1
- package/dist/slider.cjs +2 -2
- package/dist/slider.cjs.map +1 -1
- package/dist/slider.d.ts +2 -22
- package/dist/slider.mjs +19 -20
- package/dist/slider.mjs.map +1 -1
- package/dist/sonner.cjs +2 -2
- package/dist/sonner.cjs.map +1 -1
- package/dist/sonner.d.ts +2 -25
- package/dist/sonner.mjs +22 -24
- package/dist/sonner.mjs.map +1 -1
- package/dist/src/index.d.ts +2 -0
- package/dist/src/setupTests.d.ts +0 -0
- package/dist/src-B8AA-nU4.js +2 -0
- package/dist/src-B8AA-nU4.js.map +1 -0
- package/dist/src-C65A5RuY.mjs +23 -0
- package/dist/src-C65A5RuY.mjs.map +1 -0
- package/dist/support-fab.cjs +2 -2
- package/dist/support-fab.cjs.map +1 -1
- package/dist/support-fab.d.ts +2 -20
- package/dist/support-fab.mjs +82 -117
- package/dist/support-fab.mjs.map +1 -1
- package/dist/switch.cjs +2 -2
- package/dist/switch.cjs.map +1 -1
- package/dist/switch.d.ts +2 -18
- package/dist/switch.mjs +16 -27
- package/dist/switch.mjs.map +1 -1
- package/dist/table-of-contents.cjs +2 -2
- package/dist/table-of-contents.cjs.map +1 -1
- package/dist/table-of-contents.d.ts +2 -68
- package/dist/table-of-contents.mjs +161 -156
- package/dist/table-of-contents.mjs.map +1 -1
- package/dist/table.cjs +2 -2
- package/dist/table.cjs.map +1 -1
- package/dist/table.d.ts +2 -59
- package/dist/table.mjs +60 -58
- package/dist/table.mjs.map +1 -1
- package/dist/tabs.cjs +2 -2
- package/dist/tabs.cjs.map +1 -1
- package/dist/tabs.d.ts +2 -42
- package/dist/tabs.mjs +27 -46
- package/dist/tabs.mjs.map +1 -1
- package/dist/text.cjs +2 -2
- package/dist/text.cjs.map +1 -1
- package/dist/text.d.ts +2 -21
- package/dist/text.mjs +42 -42
- package/dist/text.mjs.map +1 -1
- package/dist/textarea.cjs +2 -2
- package/dist/textarea.cjs.map +1 -1
- package/dist/textarea.d.ts +2 -16
- package/dist/textarea.mjs +14 -18
- package/dist/textarea.mjs.map +1 -1
- package/dist/theme-provider.cjs +2 -2
- package/dist/theme-provider.cjs.map +1 -1
- package/dist/theme-provider.d.ts +2 -22
- package/dist/theme-provider.mjs +17 -8
- package/dist/theme-provider.mjs.map +1 -1
- package/dist/theme-toggle-B8UiizQB.js +2 -0
- package/dist/theme-toggle-B8UiizQB.js.map +1 -0
- package/dist/theme-toggle-DoAVRoyO.mjs +321 -0
- package/dist/theme-toggle-DoAVRoyO.mjs.map +1 -0
- package/dist/theme-toggle.cjs +1 -2
- package/dist/theme-toggle.d.ts +2 -23
- package/dist/theme-toggle.mjs +3 -9
- package/dist/toast.cjs +2 -2
- package/dist/toast.cjs.map +1 -1
- package/dist/toast.d.ts +2 -26
- package/dist/toast.mjs +53 -70
- package/dist/toast.mjs.map +1 -1
- package/dist/toaster-BgZxvlTL.mjs +128 -0
- package/dist/toaster-BgZxvlTL.mjs.map +1 -0
- package/dist/toaster-DnZKPR-G.js +2 -0
- package/dist/toaster-DnZKPR-G.js.map +1 -0
- package/dist/toaster.cjs +1 -2
- package/dist/toaster.d.ts +2 -9
- package/dist/toaster.mjs +3 -7
- package/dist/toggle-group.cjs +2 -2
- package/dist/toggle-group.cjs.map +1 -1
- package/dist/toggle-group.d.ts +2 -22
- package/dist/toggle-group.mjs +39 -37
- package/dist/toggle-group.mjs.map +1 -1
- package/dist/toggle.cjs +2 -2
- package/dist/toggle.cjs.map +1 -1
- package/dist/toggle.d.ts +2 -43
- package/dist/toggle.mjs +19 -12
- package/dist/toggle.mjs.map +1 -1
- package/dist/tooltip.cjs +2 -2
- package/dist/tooltip.cjs.map +1 -1
- package/dist/tooltip.d.ts +2 -48
- package/dist/tooltip.mjs +25 -29
- package/dist/tooltip.mjs.map +1 -1
- package/dist/utils-BtI8Nf6i.mjs +12 -0
- package/dist/utils-BtI8Nf6i.mjs.map +1 -0
- package/dist/utils-CbSX47LV.js +2 -0
- package/dist/utils-CbSX47LV.js.map +1 -0
- package/dist/vendor-Cr0eKZrm.mjs +28603 -0
- package/dist/vendor-Cr0eKZrm.mjs.map +1 -0
- package/dist/vendor-D3ZzLf8D.js +92 -0
- package/dist/vendor-D3ZzLf8D.js.map +1 -0
- package/package.json +29 -32
- package/dist/index.cjs.map +0 -1
- package/dist/index.mjs.map +0 -1
- package/dist/theme-toggle-BNtYv2Jv.mjs +0 -177
- package/dist/theme-toggle-BNtYv2Jv.mjs.map +0 -1
- package/dist/theme-toggle-DK_OhDRf.js +0 -2
- package/dist/theme-toggle-DK_OhDRf.js.map +0 -1
- package/dist/theme-toggle.cjs.map +0 -1
- package/dist/theme-toggle.mjs.map +0 -1
- package/dist/toaster-Cj_SryBI.mjs +0 -119
- package/dist/toaster-Cj_SryBI.mjs.map +0 -1
- package/dist/toaster-Q_hzVonm.js +0 -2
- package/dist/toaster-Q_hzVonm.js.map +0 -1
- package/dist/toaster.cjs.map +0 -1
- package/dist/toaster.mjs.map +0 -1
- package/dist/toggle-DPMTgo47.mjs +0 -25
- package/dist/toggle-DPMTgo47.mjs.map +0 -1
- package/dist/toggle-_F_yB_Dj.js +0 -2
- package/dist/toggle-_F_yB_Dj.js.map +0 -1
- package/dist/utils-Bgpn0CK0.mjs +0 -12
- package/dist/utils-Bgpn0CK0.mjs.map +0 -1
- package/dist/utils-CBWPs0D7.js +0 -2
- package/dist/utils-CBWPs0D7.js.map +0 -1
- package/dist/vendor-BQwS7aJt.mjs +0 -25217
- package/dist/vendor-BQwS7aJt.mjs.map +0 -1
- package/dist/vendor-B_07FHqh.js +0 -68
- package/dist/vendor-B_07FHqh.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gv-tech/design-system",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.21.0",
|
|
4
4
|
"description": "Garcia Ventures react design system",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Eric N. Garcia <eng618@garciaericn.com>",
|
|
@@ -55,35 +55,35 @@
|
|
|
55
55
|
"validate:no-cache": "tsx ./scripts/validate.ts --no-cache"
|
|
56
56
|
},
|
|
57
57
|
"dependencies": {
|
|
58
|
-
"@expo/metro-config": "~
|
|
59
|
-
"@expo/metro-runtime": "~
|
|
58
|
+
"@expo/metro-config": "~55.0.16",
|
|
59
|
+
"@expo/metro-runtime": "~55.0.9",
|
|
60
60
|
"@rn-primitives/types": "^1.2.0",
|
|
61
61
|
"class-variance-authority": "^0.7.1",
|
|
62
62
|
"expo": "~55.0.5",
|
|
63
|
-
"expo-splash-screen": "~
|
|
64
|
-
"expo-status-bar": "~
|
|
65
|
-
"expo-system-ui": "~
|
|
66
|
-
"lucide-react-native": "^
|
|
63
|
+
"expo-splash-screen": "~55.0.18",
|
|
64
|
+
"expo-status-bar": "~55.0.5",
|
|
65
|
+
"expo-system-ui": "~55.0.15",
|
|
66
|
+
"lucide-react-native": "^1.8.0",
|
|
67
67
|
"react": "^19.2.4",
|
|
68
68
|
"react-dom": "^19.2.4",
|
|
69
|
-
"react-native": "0.
|
|
69
|
+
"react-native": "0.85.1",
|
|
70
70
|
"react-native-svg": "^15.15.3",
|
|
71
71
|
"react-native-svg-transformer": "~1.5.3",
|
|
72
72
|
"tslib": "^2.8.1"
|
|
73
73
|
},
|
|
74
74
|
"devDependencies": {
|
|
75
75
|
"@babel/plugin-proposal-export-namespace-from": "^7.18.9",
|
|
76
|
-
"@eng618/prettier-config": "^2.10.
|
|
77
|
-
"@expo/cli": "~
|
|
76
|
+
"@eng618/prettier-config": "^2.10.1",
|
|
77
|
+
"@expo/cli": "~55.0.24",
|
|
78
78
|
"@gv-tech/eslint-config": "^0.1.14",
|
|
79
|
-
"@nx/expo": "22.5
|
|
80
|
-
"@nx/jest": "22.5
|
|
81
|
-
"@nx/js": "^22.5
|
|
79
|
+
"@nx/expo": "22.6.5",
|
|
80
|
+
"@nx/jest": "22.6.5",
|
|
81
|
+
"@nx/js": "^22.6.5",
|
|
82
82
|
"@rn-primitives/slot": "^1.2.0",
|
|
83
83
|
"@swc-node/register": "~1.11.1",
|
|
84
84
|
"@swc/core": "~1.15.18",
|
|
85
85
|
"@swc/helpers": "~0.5.19",
|
|
86
|
-
"@tailwindcss/postcss": "4.2.
|
|
86
|
+
"@tailwindcss/postcss": "4.2.2",
|
|
87
87
|
"@testing-library/dom": "^10.4.1",
|
|
88
88
|
"@testing-library/jest-dom": "^6.9.1",
|
|
89
89
|
"@testing-library/react": "^16.3.2",
|
|
@@ -95,7 +95,7 @@
|
|
|
95
95
|
"@types/react-native-web": "^0.19.2",
|
|
96
96
|
"@typescript-eslint/eslint-plugin": "^8.56.1",
|
|
97
97
|
"@typescript-eslint/parser": "^8.56.1",
|
|
98
|
-
"@vitejs/plugin-react": "^
|
|
98
|
+
"@vitejs/plugin-react": "^6.0.1",
|
|
99
99
|
"axe-core": "^4.11.1",
|
|
100
100
|
"esbuild-plugin-jsx": "^1.0.1",
|
|
101
101
|
"eslint": "^10.0.3",
|
|
@@ -104,35 +104,31 @@
|
|
|
104
104
|
"eslint-plugin-react-hooks": "^7.0.1",
|
|
105
105
|
"expo-cli": "^6.3.10",
|
|
106
106
|
"husky": "^9.1.7",
|
|
107
|
-
"jsdom": "^
|
|
108
|
-
"lint-staged": "^
|
|
109
|
-
"metro-config": "~0.
|
|
110
|
-
"metro-resolver": "~0.
|
|
107
|
+
"jsdom": "^29.0.2",
|
|
108
|
+
"lint-staged": "^17.0.5",
|
|
109
|
+
"metro-config": "~0.84.3",
|
|
110
|
+
"metro-resolver": "~0.84.3",
|
|
111
111
|
"next-themes": "^0.4.6",
|
|
112
|
-
"nx": "^22.5
|
|
112
|
+
"nx": "^22.6.5",
|
|
113
113
|
"postcss": "^8.5.8",
|
|
114
114
|
"prettier": "^3.8.1",
|
|
115
|
-
"prettier-plugin-jsdoc": "^1.8.0",
|
|
116
|
-
"prettier-plugin-organize-imports": "^4.3.0",
|
|
117
|
-
"prettier-plugin-packagejson": "^3.0.1",
|
|
118
|
-
"prettier-plugin-tailwindcss": "^0.7.2",
|
|
119
115
|
"react-icons": "^5.6.0",
|
|
120
|
-
"react-native-reanimated": "4.
|
|
116
|
+
"react-native-reanimated": "4.3.0",
|
|
121
117
|
"react-native-web": "^0.21.2",
|
|
122
|
-
"react-native-worklets": "0.
|
|
118
|
+
"react-native-worklets": "0.8.1",
|
|
123
119
|
"react-router-dom": "^7.13.1",
|
|
124
|
-
"recharts": "
|
|
120
|
+
"recharts": "3.8.1",
|
|
125
121
|
"rollup-plugin-esbuild": "^6.2.1",
|
|
126
122
|
"sonner": "^2.0.7",
|
|
127
|
-
"tailwindcss": "4.2.
|
|
123
|
+
"tailwindcss": "4.2.2",
|
|
128
124
|
"tsx": "^4.21.0",
|
|
129
|
-
"typescript": "^
|
|
130
|
-
"vite": "
|
|
125
|
+
"typescript": "^6.0.3",
|
|
126
|
+
"vite": "8.0.8",
|
|
131
127
|
"vite-plugin-dts": "^4.5.4",
|
|
132
128
|
"vitest": "^4.0.18"
|
|
133
129
|
},
|
|
134
130
|
"peerDependencies": {
|
|
135
|
-
"lucide-react-native": "^
|
|
131
|
+
"lucide-react-native": "^1.8.0",
|
|
136
132
|
"nativewind": "^4.2.2",
|
|
137
133
|
"next-themes": "^0.4.0",
|
|
138
134
|
"prop-types": "^15.8.1",
|
|
@@ -147,7 +143,8 @@
|
|
|
147
143
|
"@types/react-dom": "^19.2.3",
|
|
148
144
|
"eslint": "^10.0.0",
|
|
149
145
|
"react": "^19.2.4",
|
|
150
|
-
"react-dom": "^19.2.4"
|
|
146
|
+
"react-dom": "^19.2.4",
|
|
147
|
+
"react-is": "^19.2.5"
|
|
151
148
|
},
|
|
152
149
|
"engines": {
|
|
153
150
|
"node": ">=20"
|
package/dist/index.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../packages/design-tokens/src/spacing.ts","../packages/design-tokens/src/radii.ts","../packages/design-tokens/src/typography.ts","../packages/design-tokens/src/shadows.ts","../packages/design-tokens/src/index.ts"],"sourcesContent":["// Spacing scale for the GV Tech design system.\n// Based on a 4px baseline grid. Values are in rem (assuming 16px root font size).\n\nexport const spacing = {\n px: '1px',\n 0: '0',\n 0.5: '0.125rem', // 2px\n 1: '0.25rem', // 4px\n 1.5: '0.375rem', // 6px\n 2: '0.5rem', // 8px\n 2.5: '0.625rem', // 10px\n 3: '0.75rem', // 12px\n 3.5: '0.875rem', // 14px\n 4: '1rem', // 16px\n 5: '1.25rem', // 20px\n 6: '1.5rem', // 24px\n 7: '1.75rem', // 28px\n 8: '2rem', // 32px\n 9: '2.25rem', // 36px\n 10: '2.5rem', // 40px\n 12: '3rem', // 48px\n 14: '3.5rem', // 56px\n 16: '4rem', // 64px\n 20: '5rem', // 80px\n 24: '6rem', // 96px\n 32: '8rem', // 128px\n 40: '10rem', // 160px\n 48: '12rem', // 192px\n 56: '14rem', // 224px\n 64: '16rem', // 256px\n} as const;\n\nexport type SpacingTokens = typeof spacing;\n","// Border radius tokens for the GV Tech design system.\n\nexport const radii = {\n none: '0',\n sm: 'calc(var(--radius) - 4px)',\n md: 'calc(var(--radius) - 2px)',\n lg: 'var(--radius)',\n xl: 'calc(var(--radius) + 4px)',\n '2xl': 'calc(var(--radius) + 8px)',\n full: '9999px',\n} as const;\n\n// Numeric radius values (in px) for React Native, which doesn't support CSS calc().\n// Based on a default --radius of 0.5rem (8px).\nexport const radiiNumeric = {\n none: 0,\n sm: 4, // 8 - 4\n md: 6, // 8 - 2\n lg: 8, // base\n xl: 12, // 8 + 4\n '2xl': 16, // 8 + 8\n full: 9999,\n} as const;\n\nexport type RadiiTokens = typeof radii;\nexport type RadiiNumericTokens = typeof radiiNumeric;\n","// Typography tokens for the GV Tech design system.\n// Defines font families, sizes, weights, and line heights.\n\nexport const typography = {\n fontFamily: {\n sans: 'Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif',\n mono: 'ui-monospace, SFMono-Regular, \"SF Mono\", Menlo, Consolas, \"Liberation Mono\", monospace',\n },\n fontSize: {\n xs: '0.75rem', // 12px\n sm: '0.875rem', // 14px\n base: '1rem', // 16px\n lg: '1.125rem', // 18px\n xl: '1.25rem', // 20px\n '2xl': '1.5rem', // 24px\n '3xl': '1.875rem', // 30px\n '4xl': '2.25rem', // 36px\n '5xl': '3rem', // 48px\n },\n fontWeight: {\n normal: '400',\n medium: '500',\n semibold: '600',\n bold: '700',\n },\n lineHeight: {\n none: '1',\n tight: '1.25',\n snug: '1.375',\n normal: '1.5',\n relaxed: '1.625',\n loose: '2',\n },\n} as const;\n\nexport type TypographyTokens = typeof typography;\n","// Shadow / elevation tokens for the GV Tech design system.\n// Web values use CSS box-shadow syntax.\n// Native consumers should map these to platform-specific elevation or shadow props.\n\nexport const shadows = {\n none: 'none',\n sm: '0 1px 2px 0 rgb(0 0 0 / 0.05)',\n default: '0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)',\n md: '0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)',\n lg: '0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)',\n xl: '0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)',\n '2xl': '0 25px 50px -12px rgb(0 0 0 / 0.25)',\n inner: 'inset 0 2px 4px 0 rgb(0 0 0 / 0.05)',\n} as const;\n\nexport type ShadowTokens = typeof shadows;\n","// @gv-tech/design-tokens\n// Single source of truth for all design tokens in the GV Tech design system.\n// Consumed by both web (ui-web) and native (ui-native) implementations.\n\n// Color tokens\nexport { palette } from './palette';\nexport type { PaletteTokens } from './palette';\n\nexport { theme } from './theme';\nexport type { ThemeTokens } from './theme';\n\n// Layout tokens\nexport { spacing } from './spacing';\nexport type { SpacingTokens } from './spacing';\n\nexport { radii, radiiNumeric } from './radii';\nexport type { RadiiNumericTokens, RadiiTokens } from './radii';\n\n// Typography tokens\nexport { typography } from './typography';\nexport type { TypographyTokens } from './typography';\n\n// Elevation tokens\nexport { shadows } from './shadows';\nexport type { ShadowTokens } from './shadows';\n\n// Convenience re-export of all tokens as a single object.\n// Mirrors the legacy `tokens` export from `src/theme/tokens.ts`.\nimport { palette } from './palette';\nimport { theme } from './theme';\n\nexport const tokens = {\n palette,\n theme,\n} as const;\n"],"names":["spacing","radii","radiiNumeric","typography","shadows","tokens","palette","theme"],"mappings":"2oDAGaA,GAAU,CACrB,GAAI,MACJ,EAAG,IACH,GAAK,WACL,EAAG,UACH,IAAK,WACL,EAAG,SACH,IAAK,WACL,EAAG,UACH,IAAK,WACL,EAAG,OACH,EAAG,UACH,EAAG,SACH,EAAG,UACH,EAAG,OACH,EAAG,UACH,GAAI,SACJ,GAAI,OACJ,GAAI,SACJ,GAAI,OACJ,GAAI,OACJ,GAAI,OACJ,GAAI,OACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,OACN,EC5BaC,GAAQ,CACnB,KAAM,IACN,GAAI,4BACJ,GAAI,4BACJ,GAAI,gBACJ,GAAI,4BACJ,MAAO,4BACP,KAAM,QACR,EAIaC,GAAe,CAC1B,KAAM,EACN,GAAI,EACJ,GAAI,EACJ,GAAI,EACJ,GAAI,GACJ,MAAO,GACP,KAAM,IACR,ECnBaC,GAAa,CACxB,WAAY,CACV,KAAM,8HACN,KAAM,wFAAA,EAER,SAAU,CACR,GAAI,UACJ,GAAI,WACJ,KAAM,OACN,GAAI,WACJ,GAAI,UACJ,MAAO,SACP,MAAO,WACP,MAAO,UACP,MAAO,MAAA,EAET,WAAY,CACV,OAAQ,MACR,OAAQ,MACR,SAAU,MACV,KAAM,KAAA,EAER,WAAY,CACV,KAAM,IACN,MAAO,OACP,KAAM,QACN,OAAQ,MACR,QAAS,QACT,MAAO,GAAA,CAEX,EC7BaC,GAAU,CACrB,KAAM,OACN,GAAI,gCACJ,QAAS,gEACT,GAAI,mEACJ,GAAI,qEACJ,GAAI,sEACJ,MAAO,sCACP,MAAO,qCACT,ECkBaC,GAAS,CACpB,QAAAC,EAAAA,QACA,MAAAC,EAAAA,KACF"}
|
package/dist/index.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../packages/design-tokens/src/spacing.ts","../packages/design-tokens/src/radii.ts","../packages/design-tokens/src/typography.ts","../packages/design-tokens/src/shadows.ts","../packages/design-tokens/src/index.ts"],"sourcesContent":["// Spacing scale for the GV Tech design system.\n// Based on a 4px baseline grid. Values are in rem (assuming 16px root font size).\n\nexport const spacing = {\n px: '1px',\n 0: '0',\n 0.5: '0.125rem', // 2px\n 1: '0.25rem', // 4px\n 1.5: '0.375rem', // 6px\n 2: '0.5rem', // 8px\n 2.5: '0.625rem', // 10px\n 3: '0.75rem', // 12px\n 3.5: '0.875rem', // 14px\n 4: '1rem', // 16px\n 5: '1.25rem', // 20px\n 6: '1.5rem', // 24px\n 7: '1.75rem', // 28px\n 8: '2rem', // 32px\n 9: '2.25rem', // 36px\n 10: '2.5rem', // 40px\n 12: '3rem', // 48px\n 14: '3.5rem', // 56px\n 16: '4rem', // 64px\n 20: '5rem', // 80px\n 24: '6rem', // 96px\n 32: '8rem', // 128px\n 40: '10rem', // 160px\n 48: '12rem', // 192px\n 56: '14rem', // 224px\n 64: '16rem', // 256px\n} as const;\n\nexport type SpacingTokens = typeof spacing;\n","// Border radius tokens for the GV Tech design system.\n\nexport const radii = {\n none: '0',\n sm: 'calc(var(--radius) - 4px)',\n md: 'calc(var(--radius) - 2px)',\n lg: 'var(--radius)',\n xl: 'calc(var(--radius) + 4px)',\n '2xl': 'calc(var(--radius) + 8px)',\n full: '9999px',\n} as const;\n\n// Numeric radius values (in px) for React Native, which doesn't support CSS calc().\n// Based on a default --radius of 0.5rem (8px).\nexport const radiiNumeric = {\n none: 0,\n sm: 4, // 8 - 4\n md: 6, // 8 - 2\n lg: 8, // base\n xl: 12, // 8 + 4\n '2xl': 16, // 8 + 8\n full: 9999,\n} as const;\n\nexport type RadiiTokens = typeof radii;\nexport type RadiiNumericTokens = typeof radiiNumeric;\n","// Typography tokens for the GV Tech design system.\n// Defines font families, sizes, weights, and line heights.\n\nexport const typography = {\n fontFamily: {\n sans: 'Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif',\n mono: 'ui-monospace, SFMono-Regular, \"SF Mono\", Menlo, Consolas, \"Liberation Mono\", monospace',\n },\n fontSize: {\n xs: '0.75rem', // 12px\n sm: '0.875rem', // 14px\n base: '1rem', // 16px\n lg: '1.125rem', // 18px\n xl: '1.25rem', // 20px\n '2xl': '1.5rem', // 24px\n '3xl': '1.875rem', // 30px\n '4xl': '2.25rem', // 36px\n '5xl': '3rem', // 48px\n },\n fontWeight: {\n normal: '400',\n medium: '500',\n semibold: '600',\n bold: '700',\n },\n lineHeight: {\n none: '1',\n tight: '1.25',\n snug: '1.375',\n normal: '1.5',\n relaxed: '1.625',\n loose: '2',\n },\n} as const;\n\nexport type TypographyTokens = typeof typography;\n","// Shadow / elevation tokens for the GV Tech design system.\n// Web values use CSS box-shadow syntax.\n// Native consumers should map these to platform-specific elevation or shadow props.\n\nexport const shadows = {\n none: 'none',\n sm: '0 1px 2px 0 rgb(0 0 0 / 0.05)',\n default: '0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)',\n md: '0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)',\n lg: '0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)',\n xl: '0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)',\n '2xl': '0 25px 50px -12px rgb(0 0 0 / 0.25)',\n inner: 'inset 0 2px 4px 0 rgb(0 0 0 / 0.05)',\n} as const;\n\nexport type ShadowTokens = typeof shadows;\n","// @gv-tech/design-tokens\n// Single source of truth for all design tokens in the GV Tech design system.\n// Consumed by both web (ui-web) and native (ui-native) implementations.\n\n// Color tokens\nexport { palette } from './palette';\nexport type { PaletteTokens } from './palette';\n\nexport { theme } from './theme';\nexport type { ThemeTokens } from './theme';\n\n// Layout tokens\nexport { spacing } from './spacing';\nexport type { SpacingTokens } from './spacing';\n\nexport { radii, radiiNumeric } from './radii';\nexport type { RadiiNumericTokens, RadiiTokens } from './radii';\n\n// Typography tokens\nexport { typography } from './typography';\nexport type { TypographyTokens } from './typography';\n\n// Elevation tokens\nexport { shadows } from './shadows';\nexport type { ShadowTokens } from './shadows';\n\n// Convenience re-export of all tokens as a single object.\n// Mirrors the legacy `tokens` export from `src/theme/tokens.ts`.\nimport { palette } from './palette';\nimport { theme } from './theme';\n\nexport const tokens = {\n palette,\n theme,\n} as const;\n"],"names":["spacing","radii","radiiNumeric","typography","shadows","tokens","palette","theme"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,MAAMA,IAAU;AAAA,EACrB,IAAI;AAAA,EACJ,GAAG;AAAA,EACH,KAAK;AAAA;AAAA,EACL,GAAG;AAAA;AAAA,EACH,KAAK;AAAA;AAAA,EACL,GAAG;AAAA;AAAA,EACH,KAAK;AAAA;AAAA,EACL,GAAG;AAAA;AAAA,EACH,KAAK;AAAA;AAAA,EACL,GAAG;AAAA;AAAA,EACH,GAAG;AAAA;AAAA,EACH,GAAG;AAAA;AAAA,EACH,GAAG;AAAA;AAAA,EACH,GAAG;AAAA;AAAA,EACH,GAAG;AAAA;AAAA,EACH,IAAI;AAAA;AAAA,EACJ,IAAI;AAAA;AAAA,EACJ,IAAI;AAAA;AAAA,EACJ,IAAI;AAAA;AAAA,EACJ,IAAI;AAAA;AAAA,EACJ,IAAI;AAAA;AAAA,EACJ,IAAI;AAAA;AAAA,EACJ,IAAI;AAAA;AAAA,EACJ,IAAI;AAAA;AAAA,EACJ,IAAI;AAAA;AAAA,EACJ,IAAI;AAAA;AACN,GC5BaC,IAAQ;AAAA,EACnB,MAAM;AAAA,EACN,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,MAAM;AACR,GAIaC,IAAe;AAAA,EAC1B,MAAM;AAAA,EACN,IAAI;AAAA;AAAA,EACJ,IAAI;AAAA;AAAA,EACJ,IAAI;AAAA;AAAA,EACJ,IAAI;AAAA;AAAA,EACJ,OAAO;AAAA;AAAA,EACP,MAAM;AACR,GCnBaC,IAAa;AAAA,EACxB,YAAY;AAAA,IACV,MAAM;AAAA,IACN,MAAM;AAAA,EAAA;AAAA,EAER,UAAU;AAAA,IACR,IAAI;AAAA;AAAA,IACJ,IAAI;AAAA;AAAA,IACJ,MAAM;AAAA;AAAA,IACN,IAAI;AAAA;AAAA,IACJ,IAAI;AAAA;AAAA,IACJ,OAAO;AAAA;AAAA,IACP,OAAO;AAAA;AAAA,IACP,OAAO;AAAA;AAAA,IACP,OAAO;AAAA;AAAA,EAAA;AAAA,EAET,YAAY;AAAA,IACV,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,MAAM;AAAA,EAAA;AAAA,EAER,YAAY;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,OAAO;AAAA,EAAA;AAEX,GC7BaC,IAAU;AAAA,EACrB,MAAM;AAAA,EACN,IAAI;AAAA,EACJ,SAAS;AAAA,EACT,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,OAAO;AACT,GCkBaC,IAAS;AAAA,EACpB,SAAAC;AAAAA,EACA,OAAAC;AACF;"}
|
|
@@ -1,177 +0,0 @@
|
|
|
1
|
-
import { j as r, bZ as m, b_ as y, b$ as p } from "./vendor-BQwS7aJt.mjs";
|
|
2
|
-
import { Button as x } from "./button.mjs";
|
|
3
|
-
import { DropdownMenu as b, DropdownMenuTrigger as f, DropdownMenuContent as T, DropdownMenuItem as c } from "./dropdown-menu.mjs";
|
|
4
|
-
import { useTheme as F } from "next-themes";
|
|
5
|
-
import { c as s } from "./utils-Bgpn0CK0.mjs";
|
|
6
|
-
const e = {
|
|
7
|
-
brand: {
|
|
8
|
-
blue: "hsl(225 73% 57%)",
|
|
9
|
-
// Royal Blue (Intellect)
|
|
10
|
-
green: "hsl(151 66% 27%)",
|
|
11
|
-
// #177245 (Stability)
|
|
12
|
-
floralWhite: "hsl(40 100% 97%)"
|
|
13
|
-
// Light Neutral / Floral White
|
|
14
|
-
},
|
|
15
|
-
neutral: {
|
|
16
|
-
white: "hsl(0 0% 100%)",
|
|
17
|
-
black: "hsl(0 0% 0%)",
|
|
18
|
-
// Pure Black
|
|
19
|
-
gray50: "hsl(0 0% 96%)",
|
|
20
|
-
// White Smoke
|
|
21
|
-
gray100: "hsl(0 0% 92%)",
|
|
22
|
-
// Gainsboro
|
|
23
|
-
gray200: "hsl(0 0% 89%)",
|
|
24
|
-
// Light Gray
|
|
25
|
-
gray300: "hsl(0 0% 88%)",
|
|
26
|
-
// French Gray
|
|
27
|
-
gray400: "hsl(0 0% 70%)",
|
|
28
|
-
// Silver
|
|
29
|
-
gray500: "hsl(215 16% 47%)",
|
|
30
|
-
// Steel Blue
|
|
31
|
-
gray600: "hsl(222 47% 11%)",
|
|
32
|
-
// Oxford Blue
|
|
33
|
-
gray700: "hsl(0 0% 18%)",
|
|
34
|
-
// Raisin Black
|
|
35
|
-
gray800: "hsl(0 0% 15%)",
|
|
36
|
-
// Jet
|
|
37
|
-
gray900: "hsl(0 0% 14%)",
|
|
38
|
-
// Eerie Black
|
|
39
|
-
gray950: "hsl(0 0% 11%)",
|
|
40
|
-
// Night (alt)
|
|
41
|
-
gray975: "hsl(0 0% 9%)",
|
|
42
|
-
// Night
|
|
43
|
-
gray990: "hsl(0 0% 6%)"
|
|
44
|
-
// Black (almost)
|
|
45
|
-
},
|
|
46
|
-
semantic: {
|
|
47
|
-
success: "hsl(93 28% 54%)",
|
|
48
|
-
// Asparagus / Pistachio
|
|
49
|
-
successDark: "hsl(96 44% 61%)",
|
|
50
|
-
destructive: "hsl(0 84.2% 60.2%)",
|
|
51
|
-
// Vivid Red
|
|
52
|
-
destructiveDark: "hsl(0 62.8% 30.6%)"
|
|
53
|
-
// Blood Red
|
|
54
|
-
}
|
|
55
|
-
}, j = {
|
|
56
|
-
light: {
|
|
57
|
-
background: e.neutral.gray50,
|
|
58
|
-
foreground: e.neutral.gray600,
|
|
59
|
-
card: e.neutral.white,
|
|
60
|
-
cardForeground: e.neutral.gray600,
|
|
61
|
-
popover: e.neutral.white,
|
|
62
|
-
popoverForeground: e.neutral.gray600,
|
|
63
|
-
primary: e.brand.blue,
|
|
64
|
-
primaryForeground: e.neutral.white,
|
|
65
|
-
secondary: e.semantic.success,
|
|
66
|
-
secondaryForeground: e.neutral.white,
|
|
67
|
-
muted: e.neutral.gray100,
|
|
68
|
-
mutedForeground: e.neutral.gray500,
|
|
69
|
-
accent: e.neutral.gray300,
|
|
70
|
-
accentForeground: e.neutral.gray600,
|
|
71
|
-
destructive: e.semantic.destructive,
|
|
72
|
-
destructiveForeground: e.neutral.white,
|
|
73
|
-
border: e.neutral.gray200,
|
|
74
|
-
input: e.neutral.gray200,
|
|
75
|
-
ring: e.neutral.gray600,
|
|
76
|
-
radius: "0.5rem"
|
|
77
|
-
},
|
|
78
|
-
dark: {
|
|
79
|
-
background: e.neutral.gray975,
|
|
80
|
-
foreground: e.neutral.white,
|
|
81
|
-
card: e.neutral.gray900,
|
|
82
|
-
cardForeground: e.neutral.white,
|
|
83
|
-
popover: e.neutral.gray950,
|
|
84
|
-
popoverForeground: e.neutral.white,
|
|
85
|
-
primary: "hsl(227 96% 71%)",
|
|
86
|
-
// Keeping as specific HSL to match original
|
|
87
|
-
primaryForeground: e.neutral.gray975,
|
|
88
|
-
secondary: e.semantic.successDark,
|
|
89
|
-
secondaryForeground: e.neutral.gray975,
|
|
90
|
-
muted: e.neutral.gray990,
|
|
91
|
-
mutedForeground: e.neutral.gray400,
|
|
92
|
-
accent: e.neutral.gray800,
|
|
93
|
-
accentForeground: e.neutral.white,
|
|
94
|
-
destructive: e.semantic.destructiveDark,
|
|
95
|
-
destructiveForeground: e.neutral.white,
|
|
96
|
-
border: e.neutral.gray700,
|
|
97
|
-
input: e.neutral.gray700,
|
|
98
|
-
ring: "hsl(0 0% 90%)",
|
|
99
|
-
// Platinum
|
|
100
|
-
radius: "0.5rem"
|
|
101
|
-
}
|
|
102
|
-
};
|
|
103
|
-
function D() {
|
|
104
|
-
const t = F(), { resolvedTheme: n } = t, a = n === "dark" ? j.dark : j.light;
|
|
105
|
-
return {
|
|
106
|
-
...t,
|
|
107
|
-
tokens: a
|
|
108
|
-
};
|
|
109
|
-
}
|
|
110
|
-
function $({ variant: t = "binary", onThemeChange: n, customTheme: a, className: i }) {
|
|
111
|
-
const { theme: k, setTheme: w, resolvedTheme: v } = D(), u = a ?? k, h = (a || v) === "dark", o = u === "system", l = (d) => {
|
|
112
|
-
n ? n(d) : w(d);
|
|
113
|
-
}, g = () => /* @__PURE__ */ r.jsxs(r.Fragment, { children: [
|
|
114
|
-
/* @__PURE__ */ r.jsx(
|
|
115
|
-
m,
|
|
116
|
-
{
|
|
117
|
-
className: s(
|
|
118
|
-
"h-[1.2rem] w-[1.2rem] transition-all",
|
|
119
|
-
!o && !h ? "scale-100 rotate-0" : "scale-0 -rotate-90"
|
|
120
|
-
)
|
|
121
|
-
}
|
|
122
|
-
),
|
|
123
|
-
/* @__PURE__ */ r.jsx(
|
|
124
|
-
y,
|
|
125
|
-
{
|
|
126
|
-
className: s(
|
|
127
|
-
"absolute h-[1.2rem] w-[1.2rem] transition-all",
|
|
128
|
-
!o && h ? "scale-100 rotate-0" : "scale-0 rotate-90"
|
|
129
|
-
)
|
|
130
|
-
}
|
|
131
|
-
),
|
|
132
|
-
/* @__PURE__ */ r.jsx(
|
|
133
|
-
p,
|
|
134
|
-
{
|
|
135
|
-
className: s(
|
|
136
|
-
"absolute h-[1.2rem] w-[1.2rem] transition-all",
|
|
137
|
-
o ? "scale-100 rotate-0" : "scale-0 rotate-90"
|
|
138
|
-
)
|
|
139
|
-
}
|
|
140
|
-
),
|
|
141
|
-
/* @__PURE__ */ r.jsx("span", { className: "sr-only", children: "Toggle theme" })
|
|
142
|
-
] });
|
|
143
|
-
return t === "ternary" ? /* @__PURE__ */ r.jsxs(b, { children: [
|
|
144
|
-
/* @__PURE__ */ r.jsx(f, { asChild: !0, children: /* @__PURE__ */ r.jsx(x, { variant: "ghost", size: "icon", className: s("relative h-9 w-9", i), children: /* @__PURE__ */ r.jsx(g, {}) }) }),
|
|
145
|
-
/* @__PURE__ */ r.jsxs(T, { align: "end", children: [
|
|
146
|
-
/* @__PURE__ */ r.jsxs(c, { onClick: () => l("light"), children: [
|
|
147
|
-
/* @__PURE__ */ r.jsx(m, { className: "mr-2 h-4 w-4" }),
|
|
148
|
-
/* @__PURE__ */ r.jsx("span", { children: "Light" })
|
|
149
|
-
] }),
|
|
150
|
-
/* @__PURE__ */ r.jsxs(c, { onClick: () => l("dark"), children: [
|
|
151
|
-
/* @__PURE__ */ r.jsx(y, { className: "mr-2 h-4 w-4" }),
|
|
152
|
-
/* @__PURE__ */ r.jsx("span", { children: "Dark" })
|
|
153
|
-
] }),
|
|
154
|
-
/* @__PURE__ */ r.jsxs(c, { onClick: () => l("system"), children: [
|
|
155
|
-
/* @__PURE__ */ r.jsx(p, { className: "mr-2 h-4 w-4" }),
|
|
156
|
-
/* @__PURE__ */ r.jsx("span", { children: "System" })
|
|
157
|
-
] })
|
|
158
|
-
] })
|
|
159
|
-
] }) : /* @__PURE__ */ r.jsx(
|
|
160
|
-
x,
|
|
161
|
-
{
|
|
162
|
-
variant: "ghost",
|
|
163
|
-
size: "icon",
|
|
164
|
-
className: s("relative h-9 w-9", i),
|
|
165
|
-
onClick: () => l(u === "dark" ? "light" : "dark"),
|
|
166
|
-
"aria-label": "Toggle theme",
|
|
167
|
-
children: /* @__PURE__ */ r.jsx(g, {})
|
|
168
|
-
}
|
|
169
|
-
);
|
|
170
|
-
}
|
|
171
|
-
export {
|
|
172
|
-
$ as T,
|
|
173
|
-
e as p,
|
|
174
|
-
j as t,
|
|
175
|
-
D as u
|
|
176
|
-
};
|
|
177
|
-
//# sourceMappingURL=theme-toggle-BNtYv2Jv.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"theme-toggle-BNtYv2Jv.mjs","sources":["../packages/design-tokens/src/palette.ts","../packages/design-tokens/src/theme.ts","../packages/ui-web/src/hooks/use-theme.ts","../packages/ui-web/src/theme-toggle.tsx"],"sourcesContent":["// Primitive color palette for the GV Tech design system.\n// These are the raw color values. They should NOT be used directly in components —\n// use semantic tokens from `theme.ts` instead.\n\nexport const palette = {\n brand: {\n blue: 'hsl(225 73% 57%)', // Royal Blue (Intellect)\n green: 'hsl(151 66% 27%)', // #177245 (Stability)\n floralWhite: 'hsl(40 100% 97%)', // Light Neutral / Floral White\n },\n neutral: {\n white: 'hsl(0 0% 100%)',\n black: 'hsl(0 0% 0%)', // Pure Black\n gray50: 'hsl(0 0% 96%)', // White Smoke\n gray100: 'hsl(0 0% 92%)', // Gainsboro\n gray200: 'hsl(0 0% 89%)', // Light Gray\n gray300: 'hsl(0 0% 88%)', // French Gray\n gray400: 'hsl(0 0% 70%)', // Silver\n gray500: 'hsl(215 16% 47%)', // Steel Blue\n gray600: 'hsl(222 47% 11%)', // Oxford Blue\n gray700: 'hsl(0 0% 18%)', // Raisin Black\n gray800: 'hsl(0 0% 15%)', // Jet\n gray900: 'hsl(0 0% 14%)', // Eerie Black\n gray950: 'hsl(0 0% 11%)', // Night (alt)\n gray975: 'hsl(0 0% 9%)', // Night\n gray990: 'hsl(0 0% 6%)', // Black (almost)\n },\n semantic: {\n success: 'hsl(93 28% 54%)', // Asparagus / Pistachio\n successDark: 'hsl(96 44% 61%)',\n destructive: 'hsl(0 84.2% 60.2%)', // Vivid Red\n destructiveDark: 'hsl(0 62.8% 30.6%)', // Blood Red\n },\n} as const;\n\nexport type PaletteTokens = typeof palette;\n","// Semantic theme tokens for the GV Tech design system.\n// These map primitive palette values to semantic roles (background, foreground, etc.)\n// for both light and dark modes. Components should reference these tokens, not palette directly.\n\nimport { palette } from './palette';\n\nexport const theme = {\n light: {\n background: palette.neutral.gray50,\n foreground: palette.neutral.gray600,\n card: palette.neutral.white,\n cardForeground: palette.neutral.gray600,\n popover: palette.neutral.white,\n popoverForeground: palette.neutral.gray600,\n primary: palette.brand.blue,\n primaryForeground: palette.neutral.white,\n secondary: palette.semantic.success,\n secondaryForeground: palette.neutral.white,\n muted: palette.neutral.gray100,\n mutedForeground: palette.neutral.gray500,\n accent: palette.neutral.gray300,\n accentForeground: palette.neutral.gray600,\n destructive: palette.semantic.destructive,\n destructiveForeground: palette.neutral.white,\n border: palette.neutral.gray200,\n input: palette.neutral.gray200,\n ring: palette.neutral.gray600,\n radius: '0.5rem',\n },\n dark: {\n background: palette.neutral.gray975,\n foreground: palette.neutral.white,\n card: palette.neutral.gray900,\n cardForeground: palette.neutral.white,\n popover: palette.neutral.gray950,\n popoverForeground: palette.neutral.white,\n primary: 'hsl(227 96% 71%)', // Keeping as specific HSL to match original\n primaryForeground: palette.neutral.gray975,\n secondary: palette.semantic.successDark,\n secondaryForeground: palette.neutral.gray975,\n muted: palette.neutral.gray990,\n mutedForeground: palette.neutral.gray400,\n accent: palette.neutral.gray800,\n accentForeground: palette.neutral.white,\n destructive: palette.semantic.destructiveDark,\n destructiveForeground: palette.neutral.white,\n border: palette.neutral.gray700,\n input: palette.neutral.gray700,\n ring: 'hsl(0 0% 90%)', // Platinum\n radius: '0.5rem',\n },\n} as const;\n\nexport type ThemeTokens = typeof theme.light;\n","import { theme } from '@gv-tech/design-tokens';\nimport { useTheme as useNextTheme } from 'next-themes';\n\nexport function useTheme() {\n const context = useNextTheme();\n const { resolvedTheme } = context;\n\n // Default to light theme tokens if resolvedTheme is undefined or invalid\n const activeTokens = resolvedTheme === 'dark' ? theme.dark : theme.light;\n\n return {\n ...context,\n tokens: activeTokens,\n };\n}\n","'use client';\n\nimport { ThemeToggleBaseProps } from '@gv-tech/ui-core';\nimport { Moon, Sun, SunMoon } from 'lucide-react';\nimport { Button } from './button';\nimport { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from './dropdown-menu';\nimport { useTheme } from './hooks/use-theme';\nimport { cn } from './lib/utils';\n\nexport type ThemeToggleProps = ThemeToggleBaseProps;\n\nexport function ThemeToggle({ variant = 'binary', onThemeChange, customTheme, className }: ThemeToggleProps) {\n const { theme: nextTheme, setTheme: setNextTheme, resolvedTheme } = useTheme();\n\n // Use customTheme if provided, otherwise fallback to next-themes\n const currentTheme = customTheme ?? nextTheme;\n\n // Determine the effective theme for icon rendering\n const effectiveTheme = customTheme ? customTheme : resolvedTheme;\n const isDark = effectiveTheme === 'dark';\n const isSystem = currentTheme === 'system';\n\n const handleThemeChange = (newTheme: string) => {\n if (onThemeChange) {\n onThemeChange(newTheme);\n } else {\n setNextTheme(newTheme);\n }\n };\n\n const IconToggle = () => (\n <>\n <Sun\n className={cn(\n 'h-[1.2rem] w-[1.2rem] transition-all',\n !isSystem && !isDark ? 'scale-100 rotate-0' : 'scale-0 -rotate-90',\n )}\n />\n <Moon\n className={cn(\n 'absolute h-[1.2rem] w-[1.2rem] transition-all',\n !isSystem && isDark ? 'scale-100 rotate-0' : 'scale-0 rotate-90',\n )}\n />\n <SunMoon\n className={cn(\n 'absolute h-[1.2rem] w-[1.2rem] transition-all',\n isSystem ? 'scale-100 rotate-0' : 'scale-0 rotate-90',\n )}\n />\n <span className=\"sr-only\">Toggle theme</span>\n </>\n );\n\n if (variant === 'ternary') {\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant=\"ghost\" size=\"icon\" className={cn('relative h-9 w-9', className)}>\n <IconToggle />\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\">\n <DropdownMenuItem onClick={() => handleThemeChange('light')}>\n <Sun className=\"mr-2 h-4 w-4\" />\n <span>Light</span>\n </DropdownMenuItem>\n <DropdownMenuItem onClick={() => handleThemeChange('dark')}>\n <Moon className=\"mr-2 h-4 w-4\" />\n <span>Dark</span>\n </DropdownMenuItem>\n <DropdownMenuItem onClick={() => handleThemeChange('system')}>\n <SunMoon className=\"mr-2 h-4 w-4\" />\n <span>System</span>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n );\n }\n\n return (\n <Button\n variant=\"ghost\"\n size=\"icon\"\n className={cn('relative h-9 w-9', className)}\n onClick={() => handleThemeChange(currentTheme === 'dark' ? 'light' : 'dark')}\n aria-label=\"Toggle theme\"\n >\n <IconToggle />\n </Button>\n );\n}\n"],"names":["palette","theme","useTheme","context","useNextTheme","resolvedTheme","activeTokens","ThemeToggle","variant","onThemeChange","customTheme","className","nextTheme","setNextTheme","currentTheme","isDark","isSystem","handleThemeChange","newTheme","IconToggle","jsxs","Fragment","jsx","Sun","cn","Moon","SunMoon","DropdownMenu","DropdownMenuTrigger","Button","DropdownMenuContent","DropdownMenuItem"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";const r=require("./vendor-B_07FHqh.js"),x=require("./button.cjs"),t=require("./dropdown-menu.cjs"),k=require("next-themes"),n=require("./utils-CBWPs0D7.js"),e={brand:{blue:"hsl(225 73% 57%)",green:"hsl(151 66% 27%)",floralWhite:"hsl(40 100% 97%)"},neutral:{white:"hsl(0 0% 100%)",black:"hsl(0 0% 0%)",gray50:"hsl(0 0% 96%)",gray100:"hsl(0 0% 92%)",gray200:"hsl(0 0% 89%)",gray300:"hsl(0 0% 88%)",gray400:"hsl(0 0% 70%)",gray500:"hsl(215 16% 47%)",gray600:"hsl(222 47% 11%)",gray700:"hsl(0 0% 18%)",gray800:"hsl(0 0% 15%)",gray900:"hsl(0 0% 14%)",gray950:"hsl(0 0% 11%)",gray975:"hsl(0 0% 9%)",gray990:"hsl(0 0% 6%)"},semantic:{success:"hsl(93 28% 54%)",successDark:"hsl(96 44% 61%)",destructive:"hsl(0 84.2% 60.2%)",destructiveDark:"hsl(0 62.8% 30.6%)"}},i={light:{background:e.neutral.gray50,foreground:e.neutral.gray600,card:e.neutral.white,cardForeground:e.neutral.gray600,popover:e.neutral.white,popoverForeground:e.neutral.gray600,primary:e.brand.blue,primaryForeground:e.neutral.white,secondary:e.semantic.success,secondaryForeground:e.neutral.white,muted:e.neutral.gray100,mutedForeground:e.neutral.gray500,accent:e.neutral.gray300,accentForeground:e.neutral.gray600,destructive:e.semantic.destructive,destructiveForeground:e.neutral.white,border:e.neutral.gray200,input:e.neutral.gray200,ring:e.neutral.gray600,radius:"0.5rem"},dark:{background:e.neutral.gray975,foreground:e.neutral.white,card:e.neutral.gray900,cardForeground:e.neutral.white,popover:e.neutral.gray950,popoverForeground:e.neutral.white,primary:"hsl(227 96% 71%)",primaryForeground:e.neutral.gray975,secondary:e.semantic.successDark,secondaryForeground:e.neutral.gray975,muted:e.neutral.gray990,mutedForeground:e.neutral.gray400,accent:e.neutral.gray800,accentForeground:e.neutral.white,destructive:e.semantic.destructiveDark,destructiveForeground:e.neutral.white,border:e.neutral.gray700,input:e.neutral.gray700,ring:"hsl(0 0% 90%)",radius:"0.5rem"}};function p(){const a=k.useTheme(),{resolvedTheme:o}=a,s=o==="dark"?i.dark:i.light;return{...a,tokens:s}}function v({variant:a="binary",onThemeChange:o,customTheme:s,className:c}){const{theme:y,setTheme:j,resolvedTheme:w}=p(),h=s??y,d=(s||w)==="dark",l=h==="system",u=m=>{o?o(m):j(m)},g=()=>r.jsxRuntimeExports.jsxs(r.jsxRuntimeExports.Fragment,{children:[r.jsxRuntimeExports.jsx(r.Sun,{className:n.cn("h-[1.2rem] w-[1.2rem] transition-all",!l&&!d?"scale-100 rotate-0":"scale-0 -rotate-90")}),r.jsxRuntimeExports.jsx(r.Moon,{className:n.cn("absolute h-[1.2rem] w-[1.2rem] transition-all",!l&&d?"scale-100 rotate-0":"scale-0 rotate-90")}),r.jsxRuntimeExports.jsx(r.SunMoon,{className:n.cn("absolute h-[1.2rem] w-[1.2rem] transition-all",l?"scale-100 rotate-0":"scale-0 rotate-90")}),r.jsxRuntimeExports.jsx("span",{className:"sr-only",children:"Toggle theme"})]});return a==="ternary"?r.jsxRuntimeExports.jsxs(t.DropdownMenu,{children:[r.jsxRuntimeExports.jsx(t.DropdownMenuTrigger,{asChild:!0,children:r.jsxRuntimeExports.jsx(x.Button,{variant:"ghost",size:"icon",className:n.cn("relative h-9 w-9",c),children:r.jsxRuntimeExports.jsx(g,{})})}),r.jsxRuntimeExports.jsxs(t.DropdownMenuContent,{align:"end",children:[r.jsxRuntimeExports.jsxs(t.DropdownMenuItem,{onClick:()=>u("light"),children:[r.jsxRuntimeExports.jsx(r.Sun,{className:"mr-2 h-4 w-4"}),r.jsxRuntimeExports.jsx("span",{children:"Light"})]}),r.jsxRuntimeExports.jsxs(t.DropdownMenuItem,{onClick:()=>u("dark"),children:[r.jsxRuntimeExports.jsx(r.Moon,{className:"mr-2 h-4 w-4"}),r.jsxRuntimeExports.jsx("span",{children:"Dark"})]}),r.jsxRuntimeExports.jsxs(t.DropdownMenuItem,{onClick:()=>u("system"),children:[r.jsxRuntimeExports.jsx(r.SunMoon,{className:"mr-2 h-4 w-4"}),r.jsxRuntimeExports.jsx("span",{children:"System"})]})]})]}):r.jsxRuntimeExports.jsx(x.Button,{variant:"ghost",size:"icon",className:n.cn("relative h-9 w-9",c),onClick:()=>u(h==="dark"?"light":"dark"),"aria-label":"Toggle theme",children:r.jsxRuntimeExports.jsx(g,{})})}exports.ThemeToggle=v;exports.palette=e;exports.theme=i;exports.useTheme=p;
|
|
2
|
-
//# sourceMappingURL=theme-toggle-DK_OhDRf.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"theme-toggle-DK_OhDRf.js","sources":["../packages/design-tokens/src/palette.ts","../packages/design-tokens/src/theme.ts","../packages/ui-web/src/hooks/use-theme.ts","../packages/ui-web/src/theme-toggle.tsx"],"sourcesContent":["// Primitive color palette for the GV Tech design system.\n// These are the raw color values. They should NOT be used directly in components —\n// use semantic tokens from `theme.ts` instead.\n\nexport const palette = {\n brand: {\n blue: 'hsl(225 73% 57%)', // Royal Blue (Intellect)\n green: 'hsl(151 66% 27%)', // #177245 (Stability)\n floralWhite: 'hsl(40 100% 97%)', // Light Neutral / Floral White\n },\n neutral: {\n white: 'hsl(0 0% 100%)',\n black: 'hsl(0 0% 0%)', // Pure Black\n gray50: 'hsl(0 0% 96%)', // White Smoke\n gray100: 'hsl(0 0% 92%)', // Gainsboro\n gray200: 'hsl(0 0% 89%)', // Light Gray\n gray300: 'hsl(0 0% 88%)', // French Gray\n gray400: 'hsl(0 0% 70%)', // Silver\n gray500: 'hsl(215 16% 47%)', // Steel Blue\n gray600: 'hsl(222 47% 11%)', // Oxford Blue\n gray700: 'hsl(0 0% 18%)', // Raisin Black\n gray800: 'hsl(0 0% 15%)', // Jet\n gray900: 'hsl(0 0% 14%)', // Eerie Black\n gray950: 'hsl(0 0% 11%)', // Night (alt)\n gray975: 'hsl(0 0% 9%)', // Night\n gray990: 'hsl(0 0% 6%)', // Black (almost)\n },\n semantic: {\n success: 'hsl(93 28% 54%)', // Asparagus / Pistachio\n successDark: 'hsl(96 44% 61%)',\n destructive: 'hsl(0 84.2% 60.2%)', // Vivid Red\n destructiveDark: 'hsl(0 62.8% 30.6%)', // Blood Red\n },\n} as const;\n\nexport type PaletteTokens = typeof palette;\n","// Semantic theme tokens for the GV Tech design system.\n// These map primitive palette values to semantic roles (background, foreground, etc.)\n// for both light and dark modes. Components should reference these tokens, not palette directly.\n\nimport { palette } from './palette';\n\nexport const theme = {\n light: {\n background: palette.neutral.gray50,\n foreground: palette.neutral.gray600,\n card: palette.neutral.white,\n cardForeground: palette.neutral.gray600,\n popover: palette.neutral.white,\n popoverForeground: palette.neutral.gray600,\n primary: palette.brand.blue,\n primaryForeground: palette.neutral.white,\n secondary: palette.semantic.success,\n secondaryForeground: palette.neutral.white,\n muted: palette.neutral.gray100,\n mutedForeground: palette.neutral.gray500,\n accent: palette.neutral.gray300,\n accentForeground: palette.neutral.gray600,\n destructive: palette.semantic.destructive,\n destructiveForeground: palette.neutral.white,\n border: palette.neutral.gray200,\n input: palette.neutral.gray200,\n ring: palette.neutral.gray600,\n radius: '0.5rem',\n },\n dark: {\n background: palette.neutral.gray975,\n foreground: palette.neutral.white,\n card: palette.neutral.gray900,\n cardForeground: palette.neutral.white,\n popover: palette.neutral.gray950,\n popoverForeground: palette.neutral.white,\n primary: 'hsl(227 96% 71%)', // Keeping as specific HSL to match original\n primaryForeground: palette.neutral.gray975,\n secondary: palette.semantic.successDark,\n secondaryForeground: palette.neutral.gray975,\n muted: palette.neutral.gray990,\n mutedForeground: palette.neutral.gray400,\n accent: palette.neutral.gray800,\n accentForeground: palette.neutral.white,\n destructive: palette.semantic.destructiveDark,\n destructiveForeground: palette.neutral.white,\n border: palette.neutral.gray700,\n input: palette.neutral.gray700,\n ring: 'hsl(0 0% 90%)', // Platinum\n radius: '0.5rem',\n },\n} as const;\n\nexport type ThemeTokens = typeof theme.light;\n","import { theme } from '@gv-tech/design-tokens';\nimport { useTheme as useNextTheme } from 'next-themes';\n\nexport function useTheme() {\n const context = useNextTheme();\n const { resolvedTheme } = context;\n\n // Default to light theme tokens if resolvedTheme is undefined or invalid\n const activeTokens = resolvedTheme === 'dark' ? theme.dark : theme.light;\n\n return {\n ...context,\n tokens: activeTokens,\n };\n}\n","'use client';\n\nimport { ThemeToggleBaseProps } from '@gv-tech/ui-core';\nimport { Moon, Sun, SunMoon } from 'lucide-react';\nimport { Button } from './button';\nimport { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from './dropdown-menu';\nimport { useTheme } from './hooks/use-theme';\nimport { cn } from './lib/utils';\n\nexport type ThemeToggleProps = ThemeToggleBaseProps;\n\nexport function ThemeToggle({ variant = 'binary', onThemeChange, customTheme, className }: ThemeToggleProps) {\n const { theme: nextTheme, setTheme: setNextTheme, resolvedTheme } = useTheme();\n\n // Use customTheme if provided, otherwise fallback to next-themes\n const currentTheme = customTheme ?? nextTheme;\n\n // Determine the effective theme for icon rendering\n const effectiveTheme = customTheme ? customTheme : resolvedTheme;\n const isDark = effectiveTheme === 'dark';\n const isSystem = currentTheme === 'system';\n\n const handleThemeChange = (newTheme: string) => {\n if (onThemeChange) {\n onThemeChange(newTheme);\n } else {\n setNextTheme(newTheme);\n }\n };\n\n const IconToggle = () => (\n <>\n <Sun\n className={cn(\n 'h-[1.2rem] w-[1.2rem] transition-all',\n !isSystem && !isDark ? 'scale-100 rotate-0' : 'scale-0 -rotate-90',\n )}\n />\n <Moon\n className={cn(\n 'absolute h-[1.2rem] w-[1.2rem] transition-all',\n !isSystem && isDark ? 'scale-100 rotate-0' : 'scale-0 rotate-90',\n )}\n />\n <SunMoon\n className={cn(\n 'absolute h-[1.2rem] w-[1.2rem] transition-all',\n isSystem ? 'scale-100 rotate-0' : 'scale-0 rotate-90',\n )}\n />\n <span className=\"sr-only\">Toggle theme</span>\n </>\n );\n\n if (variant === 'ternary') {\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant=\"ghost\" size=\"icon\" className={cn('relative h-9 w-9', className)}>\n <IconToggle />\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\">\n <DropdownMenuItem onClick={() => handleThemeChange('light')}>\n <Sun className=\"mr-2 h-4 w-4\" />\n <span>Light</span>\n </DropdownMenuItem>\n <DropdownMenuItem onClick={() => handleThemeChange('dark')}>\n <Moon className=\"mr-2 h-4 w-4\" />\n <span>Dark</span>\n </DropdownMenuItem>\n <DropdownMenuItem onClick={() => handleThemeChange('system')}>\n <SunMoon className=\"mr-2 h-4 w-4\" />\n <span>System</span>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n );\n }\n\n return (\n <Button\n variant=\"ghost\"\n size=\"icon\"\n className={cn('relative h-9 w-9', className)}\n onClick={() => handleThemeChange(currentTheme === 'dark' ? 'light' : 'dark')}\n aria-label=\"Toggle theme\"\n >\n <IconToggle />\n </Button>\n );\n}\n"],"names":["palette","theme","useTheme","context","useNextTheme","resolvedTheme","activeTokens","ThemeToggle","variant","onThemeChange","customTheme","className","nextTheme","setNextTheme","currentTheme","isDark","isSystem","handleThemeChange","newTheme","IconToggle","jsxs","Fragment","jsx","Sun","cn","Moon","SunMoon","DropdownMenu","DropdownMenuTrigger","Button","DropdownMenuContent","DropdownMenuItem"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"theme-toggle.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"theme-toggle.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
import { j as T } from "./vendor-BQwS7aJt.mjs";
|
|
2
|
-
import * as A from "react";
|
|
3
|
-
import { ToastProvider as E, Toast as _, ToastTitle as f, ToastDescription as m, ToastClose as D, ToastViewport as l } from "./toast.mjs";
|
|
4
|
-
const I = 1, M = 1e6, a = {
|
|
5
|
-
ADD_TOAST: "ADD_TOAST",
|
|
6
|
-
UPDATE_TOAST: "UPDATE_TOAST",
|
|
7
|
-
DISMISS_TOAST: "DISMISS_TOAST",
|
|
8
|
-
REMOVE_TOAST: "REMOVE_TOAST"
|
|
9
|
-
};
|
|
10
|
-
let c = 0;
|
|
11
|
-
function h() {
|
|
12
|
-
return c = (c + 1) % Number.MAX_SAFE_INTEGER, c.toString();
|
|
13
|
-
}
|
|
14
|
-
const u = /* @__PURE__ */ new Map(), d = (t) => {
|
|
15
|
-
if (u.has(t))
|
|
16
|
-
return;
|
|
17
|
-
const s = setTimeout(() => {
|
|
18
|
-
u.delete(t), r({
|
|
19
|
-
type: "REMOVE_TOAST",
|
|
20
|
-
toastId: t
|
|
21
|
-
});
|
|
22
|
-
}, M);
|
|
23
|
-
u.set(t, s);
|
|
24
|
-
}, x = (t, s) => {
|
|
25
|
-
switch (s.type) {
|
|
26
|
-
case a.ADD_TOAST:
|
|
27
|
-
return {
|
|
28
|
-
...t,
|
|
29
|
-
toasts: [s.toast, ...t.toasts].slice(0, I)
|
|
30
|
-
};
|
|
31
|
-
case a.UPDATE_TOAST:
|
|
32
|
-
return {
|
|
33
|
-
...t,
|
|
34
|
-
toasts: t.toasts.map((e) => e.id === s.toast.id ? { ...e, ...s.toast } : e)
|
|
35
|
-
};
|
|
36
|
-
case a.DISMISS_TOAST: {
|
|
37
|
-
const { toastId: e } = s;
|
|
38
|
-
return e ? d(e) : t.toasts.forEach((o) => {
|
|
39
|
-
d(o.id);
|
|
40
|
-
}), {
|
|
41
|
-
...t,
|
|
42
|
-
toasts: t.toasts.map(
|
|
43
|
-
(o) => o.id === e || e === void 0 ? {
|
|
44
|
-
...o,
|
|
45
|
-
open: !1
|
|
46
|
-
} : o
|
|
47
|
-
)
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
case a.REMOVE_TOAST:
|
|
51
|
-
return s.toastId === void 0 ? {
|
|
52
|
-
...t,
|
|
53
|
-
toasts: []
|
|
54
|
-
} : {
|
|
55
|
-
...t,
|
|
56
|
-
toasts: t.toasts.filter((e) => e.id !== s.toastId)
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
|
-
}, i = [];
|
|
60
|
-
let S = { toasts: [] };
|
|
61
|
-
function r(t) {
|
|
62
|
-
S = x(S, t), i.forEach((s) => {
|
|
63
|
-
s(S);
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
function j({ ...t }) {
|
|
67
|
-
const s = h(), e = (n) => r({
|
|
68
|
-
type: "UPDATE_TOAST",
|
|
69
|
-
toast: { ...n, id: s }
|
|
70
|
-
}), o = () => r({ type: "DISMISS_TOAST", toastId: s });
|
|
71
|
-
return r({
|
|
72
|
-
type: "ADD_TOAST",
|
|
73
|
-
toast: {
|
|
74
|
-
...t,
|
|
75
|
-
id: s,
|
|
76
|
-
open: !0,
|
|
77
|
-
onOpenChange: (n) => {
|
|
78
|
-
n || o();
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}), {
|
|
82
|
-
id: s,
|
|
83
|
-
dismiss: o,
|
|
84
|
-
update: e
|
|
85
|
-
};
|
|
86
|
-
}
|
|
87
|
-
function R() {
|
|
88
|
-
const [t, s] = A.useState(S);
|
|
89
|
-
return A.useEffect(() => (i.push(s), () => {
|
|
90
|
-
const e = i.indexOf(s);
|
|
91
|
-
e > -1 && i.splice(e, 1);
|
|
92
|
-
}), [t]), {
|
|
93
|
-
...t,
|
|
94
|
-
toast: j,
|
|
95
|
-
dismiss: (e) => r({ type: "DISMISS_TOAST", toastId: e })
|
|
96
|
-
};
|
|
97
|
-
}
|
|
98
|
-
function g({ ...t }) {
|
|
99
|
-
const { toasts: s } = R();
|
|
100
|
-
return /* @__PURE__ */ T.jsxs(E, { ...t, children: [
|
|
101
|
-
s.map(function({ id: e, title: o, description: n, action: O, ...p }) {
|
|
102
|
-
return /* @__PURE__ */ T.jsxs(_, { ...p, children: [
|
|
103
|
-
/* @__PURE__ */ T.jsxs("div", { className: "grid gap-1", children: [
|
|
104
|
-
o && /* @__PURE__ */ T.jsx(f, { children: o }),
|
|
105
|
-
n && /* @__PURE__ */ T.jsx(m, { children: n })
|
|
106
|
-
] }),
|
|
107
|
-
O,
|
|
108
|
-
/* @__PURE__ */ T.jsx(D, {})
|
|
109
|
-
] }, e);
|
|
110
|
-
}),
|
|
111
|
-
/* @__PURE__ */ T.jsx(l, {})
|
|
112
|
-
] });
|
|
113
|
-
}
|
|
114
|
-
export {
|
|
115
|
-
g as T,
|
|
116
|
-
j as t,
|
|
117
|
-
R as u
|
|
118
|
-
};
|
|
119
|
-
//# sourceMappingURL=toaster-Cj_SryBI.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"toaster-Cj_SryBI.mjs","sources":["../packages/ui-web/src/hooks/use-toast.ts","../packages/ui-web/src/toaster.tsx"],"sourcesContent":["'use client';\n\n// Inspired by react-hot-toast library\nimport * as React from 'react';\n\nimport type { ToastActionElement, ToastProps } from '../index';\n\nconst TOAST_LIMIT = 1;\nconst TOAST_REMOVE_DELAY = 1000000;\n\ntype ToasterToast = ToastProps & {\n id: string;\n title?: React.ReactNode;\n description?: React.ReactNode;\n action?: ToastActionElement;\n};\n\nconst actionTypes = {\n ADD_TOAST: 'ADD_TOAST',\n UPDATE_TOAST: 'UPDATE_TOAST',\n DISMISS_TOAST: 'DISMISS_TOAST',\n REMOVE_TOAST: 'REMOVE_TOAST',\n} as const;\n\nlet count = 0;\n\nfunction genId() {\n count = (count + 1) % Number.MAX_SAFE_INTEGER;\n return count.toString();\n}\n\ntype ActionType = typeof actionTypes;\n\ntype Action =\n | {\n type: ActionType['ADD_TOAST'];\n toast: ToasterToast;\n }\n | {\n type: ActionType['UPDATE_TOAST'];\n toast: Partial<ToasterToast>;\n }\n | {\n type: ActionType['DISMISS_TOAST'];\n toastId?: ToasterToast['id'];\n }\n | {\n type: ActionType['REMOVE_TOAST'];\n toastId?: ToasterToast['id'];\n };\n\ninterface State {\n toasts: ToasterToast[];\n}\n\nconst toastTimeouts = new Map<string, ReturnType<typeof setTimeout>>();\n\nconst addToRemoveQueue = (toastId: string) => {\n if (toastTimeouts.has(toastId)) {\n return;\n }\n\n const timeout = setTimeout(() => {\n toastTimeouts.delete(toastId);\n dispatch({\n type: 'REMOVE_TOAST',\n toastId: toastId,\n });\n }, TOAST_REMOVE_DELAY);\n\n toastTimeouts.set(toastId, timeout);\n};\n\nexport const reducer = (state: State, action: Action): State => {\n switch (action.type) {\n case actionTypes.ADD_TOAST:\n return {\n ...state,\n toasts: [action.toast, ...state.toasts].slice(0, TOAST_LIMIT),\n };\n\n case actionTypes.UPDATE_TOAST:\n return {\n ...state,\n toasts: state.toasts.map((t) => (t.id === action.toast.id ? { ...t, ...action.toast } : t)),\n };\n\n case actionTypes.DISMISS_TOAST: {\n const { toastId } = action;\n\n // ! Side effects ! - This could be extracted into a dismissToast() action,\n // but I'll keep it here for simplicity\n if (toastId) {\n addToRemoveQueue(toastId);\n } else {\n state.toasts.forEach((toast) => {\n addToRemoveQueue(toast.id);\n });\n }\n\n return {\n ...state,\n toasts: state.toasts.map((t) =>\n t.id === toastId || toastId === undefined\n ? {\n ...t,\n open: false,\n }\n : t,\n ),\n };\n }\n case actionTypes.REMOVE_TOAST:\n if (action.toastId === undefined) {\n return {\n ...state,\n toasts: [],\n };\n }\n return {\n ...state,\n toasts: state.toasts.filter((t) => t.id !== action.toastId),\n };\n }\n};\n\nconst listeners: Array<(state: State) => void> = [];\n\nlet memoryState: State = { toasts: [] };\n\nfunction dispatch(action: Action) {\n memoryState = reducer(memoryState, action);\n listeners.forEach((listener) => {\n listener(memoryState);\n });\n}\n\ntype Toast = Omit<ToasterToast, 'id'>;\n\nfunction toast({ ...props }: Toast) {\n const id = genId();\n\n const update = (props: ToasterToast) =>\n dispatch({\n type: 'UPDATE_TOAST',\n toast: { ...props, id },\n });\n const dismiss = () => dispatch({ type: 'DISMISS_TOAST', toastId: id });\n\n dispatch({\n type: 'ADD_TOAST',\n toast: {\n ...props,\n id,\n open: true,\n onOpenChange: (open) => {\n if (!open) {\n dismiss();\n }\n },\n },\n });\n\n return {\n id: id,\n dismiss,\n update,\n };\n}\n\nfunction useToast() {\n const [state, setState] = React.useState<State>(memoryState);\n\n React.useEffect(() => {\n listeners.push(setState);\n return () => {\n const index = listeners.indexOf(setState);\n if (index > -1) {\n listeners.splice(index, 1);\n }\n };\n }, [state]);\n\n return {\n ...state,\n toast,\n dismiss: (toastId?: string) => dispatch({ type: 'DISMISS_TOAST', toastId }),\n };\n}\n\nexport { toast, useToast };\n","'use client';\n\nimport { ToasterBaseProps } from '@gv-tech/ui-core';\nimport { useToast } from './hooks/use-toast';\nimport { Toast, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport } from './toast';\n\nexport function Toaster({ ...props }: ToasterBaseProps) {\n const { toasts } = useToast();\n\n return (\n <ToastProvider {...props}>\n {toasts.map(function ({ id, title, description, action, ...props }) {\n return (\n <Toast key={id} {...props}>\n <div className=\"grid gap-1\">\n {title && <ToastTitle>{title}</ToastTitle>}\n {description && <ToastDescription>{description}</ToastDescription>}\n </div>\n {action}\n <ToastClose />\n </Toast>\n );\n })}\n <ToastViewport />\n </ToastProvider>\n );\n}\n"],"names":["TOAST_LIMIT","TOAST_REMOVE_DELAY","actionTypes","count","genId","toastTimeouts","addToRemoveQueue","toastId","timeout","dispatch","reducer","state","action","t","toast","listeners","memoryState","listener","props","id","update","dismiss","open","useToast","setState","React","index","Toaster","toasts","jsxs","ToastProvider","title","description","Toast","jsx","ToastTitle","ToastDescription","ToastClose","ToastViewport"],"mappings":"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"}
|
package/dist/toaster-Q_hzVonm.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";const n=require("./vendor-B_07FHqh.js"),_=require("react"),T=require("./toast.cjs");function m(t){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const e in t)if(e!=="default"){const o=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(s,e,o.get?o:{enumerable:!0,get:()=>t[e]})}}return s.default=t,Object.freeze(s)}const p=m(_),x=1,D=1e6,a={ADD_TOAST:"ADD_TOAST",UPDATE_TOAST:"UPDATE_TOAST",DISMISS_TOAST:"DISMISS_TOAST",REMOVE_TOAST:"REMOVE_TOAST"};let S=0;function j(){return S=(S+1)%Number.MAX_SAFE_INTEGER,S.toString()}const d=new Map,O=t=>{if(d.has(t))return;const s=setTimeout(()=>{d.delete(t),i({type:"REMOVE_TOAST",toastId:t})},D);d.set(t,s)},R=(t,s)=>{switch(s.type){case a.ADD_TOAST:return{...t,toasts:[s.toast,...t.toasts].slice(0,x)};case a.UPDATE_TOAST:return{...t,toasts:t.toasts.map(e=>e.id===s.toast.id?{...e,...s.toast}:e)};case a.DISMISS_TOAST:{const{toastId:e}=s;return e?O(e):t.toasts.forEach(o=>{O(o.id)}),{...t,toasts:t.toasts.map(o=>o.id===e||e===void 0?{...o,open:!1}:o)}}case a.REMOVE_TOAST:return s.toastId===void 0?{...t,toasts:[]}:{...t,toasts:t.toasts.filter(e=>e.id!==s.toastId)}}},c=[];let u={toasts:[]};function i(t){u=R(u,t),c.forEach(s=>{s(u)})}function A({...t}){const s=j(),e=r=>i({type:"UPDATE_TOAST",toast:{...r,id:s}}),o=()=>i({type:"DISMISS_TOAST",toastId:s});return i({type:"ADD_TOAST",toast:{...t,id:s,open:!0,onOpenChange:r=>{r||o()}}}),{id:s,dismiss:o,update:e}}function E(){const[t,s]=p.useState(u);return p.useEffect(()=>(c.push(s),()=>{const e=c.indexOf(s);e>-1&&c.splice(e,1)}),[t]),{...t,toast:A,dismiss:e=>i({type:"DISMISS_TOAST",toastId:e})}}function I({...t}){const{toasts:s}=E();return n.jsxRuntimeExports.jsxs(T.ToastProvider,{...t,children:[s.map(function({id:e,title:o,description:r,action:f,...l}){return n.jsxRuntimeExports.jsxs(T.Toast,{...l,children:[n.jsxRuntimeExports.jsxs("div",{className:"grid gap-1",children:[o&&n.jsxRuntimeExports.jsx(T.ToastTitle,{children:o}),r&&n.jsxRuntimeExports.jsx(T.ToastDescription,{children:r})]}),f,n.jsxRuntimeExports.jsx(T.ToastClose,{})]},e)}),n.jsxRuntimeExports.jsx(T.ToastViewport,{})]})}exports.Toaster=I;exports.toast=A;exports.useToast=E;
|
|
2
|
-
//# sourceMappingURL=toaster-Q_hzVonm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"toaster-Q_hzVonm.js","sources":["../packages/ui-web/src/hooks/use-toast.ts","../packages/ui-web/src/toaster.tsx"],"sourcesContent":["'use client';\n\n// Inspired by react-hot-toast library\nimport * as React from 'react';\n\nimport type { ToastActionElement, ToastProps } from '../index';\n\nconst TOAST_LIMIT = 1;\nconst TOAST_REMOVE_DELAY = 1000000;\n\ntype ToasterToast = ToastProps & {\n id: string;\n title?: React.ReactNode;\n description?: React.ReactNode;\n action?: ToastActionElement;\n};\n\nconst actionTypes = {\n ADD_TOAST: 'ADD_TOAST',\n UPDATE_TOAST: 'UPDATE_TOAST',\n DISMISS_TOAST: 'DISMISS_TOAST',\n REMOVE_TOAST: 'REMOVE_TOAST',\n} as const;\n\nlet count = 0;\n\nfunction genId() {\n count = (count + 1) % Number.MAX_SAFE_INTEGER;\n return count.toString();\n}\n\ntype ActionType = typeof actionTypes;\n\ntype Action =\n | {\n type: ActionType['ADD_TOAST'];\n toast: ToasterToast;\n }\n | {\n type: ActionType['UPDATE_TOAST'];\n toast: Partial<ToasterToast>;\n }\n | {\n type: ActionType['DISMISS_TOAST'];\n toastId?: ToasterToast['id'];\n }\n | {\n type: ActionType['REMOVE_TOAST'];\n toastId?: ToasterToast['id'];\n };\n\ninterface State {\n toasts: ToasterToast[];\n}\n\nconst toastTimeouts = new Map<string, ReturnType<typeof setTimeout>>();\n\nconst addToRemoveQueue = (toastId: string) => {\n if (toastTimeouts.has(toastId)) {\n return;\n }\n\n const timeout = setTimeout(() => {\n toastTimeouts.delete(toastId);\n dispatch({\n type: 'REMOVE_TOAST',\n toastId: toastId,\n });\n }, TOAST_REMOVE_DELAY);\n\n toastTimeouts.set(toastId, timeout);\n};\n\nexport const reducer = (state: State, action: Action): State => {\n switch (action.type) {\n case actionTypes.ADD_TOAST:\n return {\n ...state,\n toasts: [action.toast, ...state.toasts].slice(0, TOAST_LIMIT),\n };\n\n case actionTypes.UPDATE_TOAST:\n return {\n ...state,\n toasts: state.toasts.map((t) => (t.id === action.toast.id ? { ...t, ...action.toast } : t)),\n };\n\n case actionTypes.DISMISS_TOAST: {\n const { toastId } = action;\n\n // ! Side effects ! - This could be extracted into a dismissToast() action,\n // but I'll keep it here for simplicity\n if (toastId) {\n addToRemoveQueue(toastId);\n } else {\n state.toasts.forEach((toast) => {\n addToRemoveQueue(toast.id);\n });\n }\n\n return {\n ...state,\n toasts: state.toasts.map((t) =>\n t.id === toastId || toastId === undefined\n ? {\n ...t,\n open: false,\n }\n : t,\n ),\n };\n }\n case actionTypes.REMOVE_TOAST:\n if (action.toastId === undefined) {\n return {\n ...state,\n toasts: [],\n };\n }\n return {\n ...state,\n toasts: state.toasts.filter((t) => t.id !== action.toastId),\n };\n }\n};\n\nconst listeners: Array<(state: State) => void> = [];\n\nlet memoryState: State = { toasts: [] };\n\nfunction dispatch(action: Action) {\n memoryState = reducer(memoryState, action);\n listeners.forEach((listener) => {\n listener(memoryState);\n });\n}\n\ntype Toast = Omit<ToasterToast, 'id'>;\n\nfunction toast({ ...props }: Toast) {\n const id = genId();\n\n const update = (props: ToasterToast) =>\n dispatch({\n type: 'UPDATE_TOAST',\n toast: { ...props, id },\n });\n const dismiss = () => dispatch({ type: 'DISMISS_TOAST', toastId: id });\n\n dispatch({\n type: 'ADD_TOAST',\n toast: {\n ...props,\n id,\n open: true,\n onOpenChange: (open) => {\n if (!open) {\n dismiss();\n }\n },\n },\n });\n\n return {\n id: id,\n dismiss,\n update,\n };\n}\n\nfunction useToast() {\n const [state, setState] = React.useState<State>(memoryState);\n\n React.useEffect(() => {\n listeners.push(setState);\n return () => {\n const index = listeners.indexOf(setState);\n if (index > -1) {\n listeners.splice(index, 1);\n }\n };\n }, [state]);\n\n return {\n ...state,\n toast,\n dismiss: (toastId?: string) => dispatch({ type: 'DISMISS_TOAST', toastId }),\n };\n}\n\nexport { toast, useToast };\n","'use client';\n\nimport { ToasterBaseProps } from '@gv-tech/ui-core';\nimport { useToast } from './hooks/use-toast';\nimport { Toast, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport } from './toast';\n\nexport function Toaster({ ...props }: ToasterBaseProps) {\n const { toasts } = useToast();\n\n return (\n <ToastProvider {...props}>\n {toasts.map(function ({ id, title, description, action, ...props }) {\n return (\n <Toast key={id} {...props}>\n <div className=\"grid gap-1\">\n {title && <ToastTitle>{title}</ToastTitle>}\n {description && <ToastDescription>{description}</ToastDescription>}\n </div>\n {action}\n <ToastClose />\n </Toast>\n );\n })}\n <ToastViewport />\n </ToastProvider>\n );\n}\n"],"names":["TOAST_LIMIT","TOAST_REMOVE_DELAY","actionTypes","count","genId","toastTimeouts","addToRemoveQueue","toastId","timeout","dispatch","reducer","state","action","t","toast","listeners","memoryState","listener","props","id","update","dismiss","open","useToast","setState","React","index","Toaster","toasts","jsxs","ToastProvider","title","description","Toast","jsx","ToastTitle","ToastDescription","ToastClose","ToastViewport"],"mappings":"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"}
|
package/dist/toaster.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"toaster.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/dist/toaster.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"toaster.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
package/dist/toggle-DPMTgo47.mjs
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { g as e } from "./vendor-BQwS7aJt.mjs";
|
|
2
|
-
const n = e(
|
|
3
|
-
"inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",
|
|
4
|
-
{
|
|
5
|
-
variants: {
|
|
6
|
-
variant: {
|
|
7
|
-
default: "bg-transparent",
|
|
8
|
-
outline: "border border-input bg-transparent shadow-sm hover:bg-accent hover:text-accent-foreground"
|
|
9
|
-
},
|
|
10
|
-
size: {
|
|
11
|
-
default: "h-9 px-2 min-w-9",
|
|
12
|
-
sm: "h-8 px-1.5 min-w-8",
|
|
13
|
-
lg: "h-10 px-2.5 min-w-10"
|
|
14
|
-
}
|
|
15
|
-
},
|
|
16
|
-
defaultVariants: {
|
|
17
|
-
variant: "default",
|
|
18
|
-
size: "default"
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
);
|
|
22
|
-
export {
|
|
23
|
-
n as t
|
|
24
|
-
};
|
|
25
|
-
//# sourceMappingURL=toggle-DPMTgo47.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"toggle-DPMTgo47.mjs","sources":["../packages/ui-core/src/contracts/toggle.ts"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport * as React from 'react';\n\nexport const toggleVariants = cva(\n 'inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0',\n {\n variants: {\n variant: {\n default: 'bg-transparent',\n outline: 'border border-input bg-transparent shadow-sm hover:bg-accent hover:text-accent-foreground',\n },\n size: {\n default: 'h-9 px-2 min-w-9',\n sm: 'h-8 px-1.5 min-w-8',\n lg: 'h-10 px-2.5 min-w-10',\n },\n },\n defaultVariants: {\n variant: 'default',\n size: 'default',\n },\n },\n);\n\nexport const toggleVariantValues = {\n variant: {\n default: 'default',\n outline: 'outline',\n },\n size: {\n default: 'default',\n sm: 'sm',\n lg: 'lg',\n },\n} as const;\n\nexport type ToggleVariant = keyof typeof toggleVariantValues.variant;\nexport type ToggleSize = keyof typeof toggleVariantValues.size;\n\nexport interface ToggleBaseProps {\n children?: React.ReactNode;\n className?: string;\n variant?: ToggleVariant;\n size?: ToggleSize;\n pressed?: boolean;\n defaultPressed?: boolean;\n onPressedChange?: (pressed: boolean) => void;\n disabled?: boolean;\n}\n"],"names":["toggleVariants","cva"],"mappings":";AAGO,MAAMA,IAAiBC;AAAA,EAC5B;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SAAS;AAAA,QACT,SAAS;AAAA,MAAA;AAAA,MAEX,MAAM;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA;AAAA,IACN;AAAA,IAEF,iBAAiB;AAAA,MACf,SAAS;AAAA,MACT,MAAM;AAAA,IAAA;AAAA,EACR;AAEJ;"}
|