@work-rjkashyap/unified-ui 0.3.3 → 0.3.5
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/CHANGELOG.md +105 -0
- package/LICENSE +21 -0
- package/dist/components/accordion.cjs +225 -0
- package/dist/components/accordion.d.cts +157 -0
- package/dist/components/accordion.d.ts +157 -0
- package/dist/components/accordion.mjs +199 -0
- package/dist/components/alert-dialog.cjs +246 -0
- package/dist/components/alert-dialog.d.cts +61 -0
- package/dist/components/alert-dialog.d.ts +61 -0
- package/dist/components/alert-dialog.mjs +218 -0
- package/dist/components/alert.cjs +401 -0
- package/dist/components/alert.d.cts +217 -0
- package/dist/components/alert.d.ts +217 -0
- package/dist/components/alert.mjs +374 -0
- package/dist/components/aspect-ratio.cjs +45 -0
- package/dist/components/aspect-ratio.d.cts +10 -0
- package/dist/components/aspect-ratio.d.ts +10 -0
- package/dist/components/aspect-ratio.mjs +23 -0
- package/dist/components/avatar.cjs +348 -0
- package/dist/components/avatar.d.cts +198 -0
- package/dist/components/avatar.d.ts +198 -0
- package/dist/components/avatar.mjs +329 -0
- package/dist/components/badge.cjs +325 -0
- package/dist/components/badge.d.cts +259 -0
- package/dist/components/badge.d.ts +259 -0
- package/dist/components/badge.mjs +298 -0
- package/dist/components/banner.cjs +147 -0
- package/dist/components/banner.d.cts +31 -0
- package/dist/components/banner.d.ts +31 -0
- package/dist/components/banner.mjs +122 -0
- package/dist/components/breadcrumb.cjs +266 -0
- package/dist/components/breadcrumb.d.cts +159 -0
- package/dist/components/breadcrumb.d.ts +159 -0
- package/dist/components/breadcrumb.mjs +235 -0
- package/dist/components/button.cjs +254 -0
- package/dist/components/button.d.cts +126 -0
- package/dist/components/button.d.ts +126 -0
- package/dist/components/button.mjs +229 -0
- package/dist/components/calendar.cjs +511 -0
- package/dist/components/calendar.d.cts +94 -0
- package/dist/components/calendar.d.ts +94 -0
- package/dist/components/calendar.mjs +492 -0
- package/dist/components/card.cjs +234 -0
- package/dist/components/card.d.cts +190 -0
- package/dist/components/card.d.ts +190 -0
- package/dist/components/card.mjs +210 -0
- package/dist/components/carousel.cjs +234 -0
- package/dist/components/carousel.d.cts +30 -0
- package/dist/components/carousel.d.ts +30 -0
- package/dist/components/carousel.mjs +217 -0
- package/dist/components/chart.cjs +122 -0
- package/dist/components/chart.d.cts +103 -0
- package/dist/components/chart.d.ts +103 -0
- package/dist/components/chart.mjs +96 -0
- package/dist/components/checkbox.cjs +318 -0
- package/dist/components/checkbox.d.cts +182 -0
- package/dist/components/checkbox.d.ts +182 -0
- package/dist/components/checkbox.mjs +296 -0
- package/dist/components/code-highlight.cjs +335 -0
- package/dist/components/code-highlight.d.cts +18 -0
- package/dist/components/code-highlight.d.ts +18 -0
- package/dist/components/code-highlight.mjs +308 -0
- package/dist/components/code.cjs +265 -0
- package/dist/components/code.d.cts +40 -0
- package/dist/components/code.d.ts +40 -0
- package/dist/components/code.mjs +243 -0
- package/dist/components/collapsible.cjs +143 -0
- package/dist/components/collapsible.d.cts +159 -0
- package/dist/components/collapsible.d.ts +159 -0
- package/dist/components/collapsible.mjs +123 -0
- package/dist/components/color-picker.cjs +348 -0
- package/dist/components/color-picker.d.cts +35 -0
- package/dist/components/color-picker.d.ts +35 -0
- package/dist/components/color-picker.mjs +331 -0
- package/dist/components/combobox.cjs +584 -0
- package/dist/components/combobox.d.cts +183 -0
- package/dist/components/combobox.d.ts +183 -0
- package/dist/components/combobox.mjs +571 -0
- package/dist/components/command.cjs +329 -0
- package/dist/components/command.d.cts +97 -0
- package/dist/components/command.d.ts +97 -0
- package/dist/components/command.mjs +311 -0
- package/dist/components/confirm-dialog.cjs +100 -0
- package/dist/components/confirm-dialog.d.cts +25 -0
- package/dist/components/confirm-dialog.d.ts +25 -0
- package/dist/components/confirm-dialog.mjs +86 -0
- package/dist/components/context-menu.cjs +325 -0
- package/dist/components/context-menu.d.cts +259 -0
- package/dist/components/context-menu.d.ts +259 -0
- package/dist/components/context-menu.mjs +290 -0
- package/dist/components/copy-button.cjs +203 -0
- package/dist/components/copy-button.d.cts +22 -0
- package/dist/components/copy-button.d.ts +22 -0
- package/dist/components/copy-button.mjs +178 -0
- package/dist/components/data-list.cjs +140 -0
- package/dist/components/data-list.d.cts +36 -0
- package/dist/components/data-list.d.ts +36 -0
- package/dist/components/data-list.mjs +113 -0
- package/dist/components/data-table-toolbar.cjs +338 -0
- package/dist/components/data-table-toolbar.d.cts +84 -0
- package/dist/components/data-table-toolbar.d.ts +84 -0
- package/dist/components/data-table-toolbar.mjs +320 -0
- package/dist/components/data-table.cjs +1324 -0
- package/dist/components/data-table.d.cts +349 -0
- package/dist/components/data-table.d.ts +349 -0
- package/dist/components/data-table.mjs +1323 -0
- package/dist/components/date-picker.cjs +282 -0
- package/dist/components/date-picker.d.cts +97 -0
- package/dist/components/date-picker.d.ts +97 -0
- package/dist/components/date-picker.mjs +258 -0
- package/dist/components/dialog.cjs +319 -0
- package/dist/components/dialog.d.cts +74 -0
- package/dist/components/dialog.d.ts +74 -0
- package/dist/components/dialog.mjs +292 -0
- package/dist/components/drawer.cjs +262 -0
- package/dist/components/drawer.d.cts +113 -0
- package/dist/components/drawer.d.ts +113 -0
- package/dist/components/drawer.mjs +230 -0
- package/dist/components/dropdown-menu.cjs +328 -0
- package/dist/components/dropdown-menu.d.cts +95 -0
- package/dist/components/dropdown-menu.d.ts +95 -0
- package/dist/components/dropdown-menu.mjs +293 -0
- package/dist/components/empty-state.cjs +123 -0
- package/dist/components/empty-state.d.cts +15 -0
- package/dist/components/empty-state.d.ts +15 -0
- package/dist/components/empty-state.mjs +99 -0
- package/dist/components/file-upload.cjs +442 -0
- package/dist/components/file-upload.d.cts +35 -0
- package/dist/components/file-upload.d.ts +35 -0
- package/dist/components/file-upload.mjs +423 -0
- package/dist/components/form-field.cjs +191 -0
- package/dist/components/form-field.d.cts +163 -0
- package/dist/components/form-field.d.ts +163 -0
- package/dist/components/form-field.mjs +167 -0
- package/dist/components/hover-card.cjs +99 -0
- package/dist/components/hover-card.d.cts +28 -0
- package/dist/components/hover-card.d.ts +28 -0
- package/dist/components/hover-card.mjs +75 -0
- package/dist/components/image-gallery.cjs +359 -0
- package/dist/components/image-gallery.d.cts +46 -0
- package/dist/components/image-gallery.d.ts +46 -0
- package/dist/components/image-gallery.mjs +340 -0
- package/dist/components/index.cjs +719 -0
- package/dist/components/index.d.cts +84 -0
- package/dist/components/index.d.ts +84 -0
- package/dist/components/index.mjs +771 -0
- package/dist/components/infinite-scroll.cjs +95 -0
- package/dist/components/infinite-scroll.d.cts +54 -0
- package/dist/components/infinite-scroll.d.ts +54 -0
- package/dist/components/infinite-scroll.mjs +71 -0
- package/dist/components/input-group.cjs +202 -0
- package/dist/components/input-group.d.cts +22 -0
- package/dist/components/input-group.d.ts +22 -0
- package/dist/components/input-group.mjs +178 -0
- package/dist/components/input.cjs +318 -0
- package/dist/components/input.d.cts +99 -0
- package/dist/components/input.d.ts +99 -0
- package/dist/components/input.mjs +296 -0
- package/dist/components/kbd.cjs +69 -0
- package/dist/components/kbd.d.cts +25 -0
- package/dist/components/kbd.d.ts +25 -0
- package/dist/components/kbd.mjs +44 -0
- package/dist/components/label.cjs +138 -0
- package/dist/components/label.d.cts +91 -0
- package/dist/components/label.d.ts +91 -0
- package/dist/components/label.mjs +113 -0
- package/dist/components/markdown.cjs +179 -0
- package/dist/components/markdown.d.cts +41 -0
- package/dist/components/markdown.d.ts +41 -0
- package/dist/components/markdown.mjs +155 -0
- package/dist/components/menubar.cjs +365 -0
- package/dist/components/menubar.d.cts +88 -0
- package/dist/components/menubar.d.ts +88 -0
- package/dist/components/menubar.mjs +329 -0
- package/dist/components/navigation-menu.cjs +280 -0
- package/dist/components/navigation-menu.d.cts +123 -0
- package/dist/components/navigation-menu.d.ts +123 -0
- package/dist/components/navigation-menu.mjs +250 -0
- package/dist/components/number-input.cjs +419 -0
- package/dist/components/number-input.d.cts +111 -0
- package/dist/components/number-input.d.ts +111 -0
- package/dist/components/number-input.mjs +400 -0
- package/dist/components/pagination.cjs +322 -0
- package/dist/components/pagination.d.cts +119 -0
- package/dist/components/pagination.d.ts +119 -0
- package/dist/components/pagination.mjs +297 -0
- package/dist/components/pin-input.cjs +321 -0
- package/dist/components/pin-input.d.cts +112 -0
- package/dist/components/pin-input.d.ts +112 -0
- package/dist/components/pin-input.mjs +303 -0
- package/dist/components/popover.cjs +194 -0
- package/dist/components/popover.d.cts +108 -0
- package/dist/components/popover.d.ts +108 -0
- package/dist/components/popover.mjs +168 -0
- package/dist/components/progress.cjs +237 -0
- package/dist/components/progress.d.cts +137 -0
- package/dist/components/progress.d.ts +137 -0
- package/dist/components/progress.mjs +211 -0
- package/dist/components/radio.cjs +344 -0
- package/dist/components/radio.d.cts +145 -0
- package/dist/components/radio.d.ts +145 -0
- package/dist/components/radio.mjs +320 -0
- package/dist/components/resizable.cjs +121 -0
- package/dist/components/resizable.d.cts +23 -0
- package/dist/components/resizable.d.ts +23 -0
- package/dist/components/resizable.mjs +99 -0
- package/dist/components/scroll-area.cjs +168 -0
- package/dist/components/scroll-area.d.cts +131 -0
- package/dist/components/scroll-area.d.ts +131 -0
- package/dist/components/scroll-area.mjs +143 -0
- package/dist/components/search-input.cjs +261 -0
- package/dist/components/search-input.d.cts +26 -0
- package/dist/components/search-input.d.ts +26 -0
- package/dist/components/search-input.mjs +243 -0
- package/dist/components/select.cjs +320 -0
- package/dist/components/select.d.cts +55 -0
- package/dist/components/select.d.ts +55 -0
- package/dist/components/select.mjs +288 -0
- package/dist/components/separator.cjs +193 -0
- package/dist/components/separator.d.cts +92 -0
- package/dist/components/separator.d.ts +92 -0
- package/dist/components/separator.mjs +170 -0
- package/dist/components/sheet.cjs +399 -0
- package/dist/components/sheet.d.cts +219 -0
- package/dist/components/sheet.d.ts +219 -0
- package/dist/components/sheet.mjs +379 -0
- package/dist/components/sidebar.cjs +1077 -0
- package/dist/components/sidebar.d.cts +733 -0
- package/dist/components/sidebar.d.ts +733 -0
- package/dist/components/sidebar.mjs +1033 -0
- package/dist/components/skeleton.cjs +210 -0
- package/dist/components/skeleton.d.cts +202 -0
- package/dist/components/skeleton.d.ts +202 -0
- package/dist/components/skeleton.mjs +182 -0
- package/dist/components/slider.cjs +319 -0
- package/dist/components/slider.d.cts +82 -0
- package/dist/components/slider.d.ts +82 -0
- package/dist/components/slider.mjs +296 -0
- package/dist/components/sonner.cjs +119 -0
- package/dist/components/sonner.d.cts +60 -0
- package/dist/components/sonner.d.ts +60 -0
- package/dist/components/sonner.mjs +94 -0
- package/dist/components/spinner.cjs +238 -0
- package/dist/components/spinner.d.cts +101 -0
- package/dist/components/spinner.d.ts +101 -0
- package/dist/components/spinner.mjs +213 -0
- package/dist/components/stat.cjs +180 -0
- package/dist/components/stat.d.cts +21 -0
- package/dist/components/stat.d.ts +21 -0
- package/dist/components/stat.mjs +161 -0
- package/dist/components/steps.cjs +228 -0
- package/dist/components/steps.d.cts +76 -0
- package/dist/components/steps.d.ts +76 -0
- package/dist/components/steps.mjs +207 -0
- package/dist/components/switch.cjs +243 -0
- package/dist/components/switch.d.cts +90 -0
- package/dist/components/switch.d.ts +90 -0
- package/dist/components/switch.mjs +228 -0
- package/dist/components/table.cjs +381 -0
- package/dist/components/table.d.cts +181 -0
- package/dist/components/table.d.ts +181 -0
- package/dist/components/table.mjs +349 -0
- package/dist/components/tabs.cjs +326 -0
- package/dist/components/tabs.d.cts +154 -0
- package/dist/components/tabs.d.ts +154 -0
- package/dist/components/tabs.mjs +304 -0
- package/dist/components/textarea.cjs +258 -0
- package/dist/components/textarea.d.cts +112 -0
- package/dist/components/textarea.d.ts +112 -0
- package/dist/components/textarea.mjs +233 -0
- package/dist/components/theme-toggle.cjs +282 -0
- package/dist/components/theme-toggle.d.cts +58 -0
- package/dist/components/theme-toggle.d.ts +58 -0
- package/dist/components/theme-toggle.mjs +258 -0
- package/dist/components/timeline.cjs +178 -0
- package/dist/components/timeline.d.cts +41 -0
- package/dist/components/timeline.d.ts +41 -0
- package/dist/components/timeline.mjs +157 -0
- package/dist/components/toast.cjs +546 -0
- package/dist/components/toast.d.cts +169 -0
- package/dist/components/toast.d.ts +169 -0
- package/dist/components/toast.mjs +528 -0
- package/dist/components/toggle-group.cjs +204 -0
- package/dist/components/toggle-group.d.cts +215 -0
- package/dist/components/toggle-group.d.ts +215 -0
- package/dist/components/toggle-group.mjs +180 -0
- package/dist/components/toggle.cjs +155 -0
- package/dist/components/toggle.d.cts +100 -0
- package/dist/components/toggle.d.ts +100 -0
- package/dist/components/toggle.mjs +130 -0
- package/dist/components/tooltip.cjs +155 -0
- package/dist/components/tooltip.d.cts +129 -0
- package/dist/components/tooltip.d.ts +129 -0
- package/dist/components/tooltip.mjs +132 -0
- package/dist/components/tree-view.cjs +450 -0
- package/dist/components/tree-view.d.cts +67 -0
- package/dist/components/tree-view.d.ts +67 -0
- package/dist/components/tree-view.mjs +433 -0
- package/dist/components/video-player.cjs +344 -0
- package/dist/components/video-player.d.cts +34 -0
- package/dist/components/video-player.d.ts +34 -0
- package/dist/components/video-player.mjs +320 -0
- package/dist/components/virtual-list.cjs +153 -0
- package/dist/components/virtual-list.d.cts +53 -0
- package/dist/components/virtual-list.d.ts +53 -0
- package/dist/components/virtual-list.mjs +136 -0
- package/dist/components/visually-hidden.cjs +43 -0
- package/dist/components/visually-hidden.d.cts +9 -0
- package/dist/components/visually-hidden.d.ts +9 -0
- package/dist/components/visually-hidden.mjs +21 -0
- package/dist/index.cjs +1081 -1933
- package/dist/index.d.cts +99 -11
- package/dist/index.d.ts +99 -11
- package/dist/index.mjs +1138 -16
- package/dist/motion/hooks.cjs +98 -0
- package/dist/motion/hooks.d.cts +32 -0
- package/dist/motion/hooks.d.ts +32 -0
- package/dist/motion/hooks.mjs +70 -0
- package/dist/motion/index.cjs +157 -0
- package/dist/motion/index.d.cts +5 -0
- package/dist/motion/index.d.ts +5 -0
- package/dist/motion/index.mjs +137 -0
- package/dist/motion/presets.cjs +609 -0
- package/dist/{motion.d.ts → motion/presets.d.cts} +1 -30
- package/dist/{motion.d.cts → motion/presets.d.ts} +1 -30
- package/dist/{chunk-PLRSH37T.mjs → motion/presets.mjs} +119 -126
- package/dist/primitives/container.cjs +88 -0
- package/dist/primitives/container.d.cts +82 -0
- package/dist/primitives/container.d.ts +82 -0
- package/dist/primitives/container.mjs +64 -0
- package/dist/primitives/divider.cjs +74 -0
- package/dist/primitives/divider.d.cts +30 -0
- package/dist/primitives/divider.d.ts +30 -0
- package/dist/primitives/divider.mjs +50 -0
- package/dist/primitives/index.cjs +54 -0
- package/dist/primitives/index.d.cts +6 -0
- package/dist/primitives/index.d.ts +6 -0
- package/dist/primitives/index.mjs +33 -0
- package/dist/primitives/stack.cjs +167 -0
- package/dist/primitives/stack.d.cts +132 -0
- package/dist/primitives/stack.d.ts +132 -0
- package/dist/primitives/stack.mjs +142 -0
- package/dist/primitives/typography.cjs +260 -0
- package/dist/primitives/typography.d.cts +157 -0
- package/dist/primitives/typography.d.ts +157 -0
- package/dist/primitives/typography.mjs +229 -0
- package/dist/theme/contract.cjs +246 -0
- package/dist/theme/contract.d.cts +76 -0
- package/dist/theme/contract.d.ts +76 -0
- package/dist/theme/contract.mjs +221 -0
- package/dist/theme/customizer-store.cjs +266 -0
- package/dist/theme/customizer-store.d.cts +76 -0
- package/dist/theme/customizer-store.d.ts +76 -0
- package/dist/theme/customizer-store.mjs +261 -0
- package/dist/theme/customizer.cjs +812 -0
- package/dist/theme/customizer.d.cts +13 -0
- package/dist/theme/customizer.d.ts +13 -0
- package/dist/theme/customizer.mjs +803 -0
- package/dist/theme/index.cjs +105 -0
- package/dist/theme/index.d.cts +13 -0
- package/dist/theme/index.d.ts +13 -0
- package/dist/theme/index.mjs +87 -0
- package/dist/theme/presets.cjs +1205 -0
- package/dist/theme/presets.d.cts +232 -0
- package/dist/theme/presets.d.ts +232 -0
- package/dist/theme/presets.mjs +1175 -0
- package/dist/theme/provider.cjs +122 -0
- package/dist/theme/provider.d.cts +57 -0
- package/dist/theme/provider.d.ts +57 -0
- package/dist/theme/provider.mjs +104 -0
- package/dist/{chunk-IVZAB7BV.mjs → tokens/colors.cjs} +212 -86
- package/dist/{z-index-Dd8IllRx.d.cts → tokens/colors.d.cts} +235 -72
- package/dist/{z-index-Dd8IllRx.d.ts → tokens/colors.d.ts} +235 -72
- package/dist/{chunk-ZBGR7MUW.cjs → tokens/colors.mjs} +165 -104
- package/dist/tokens/index.cjs +96 -0
- package/dist/tokens/index.d.cts +7 -0
- package/dist/tokens/index.d.ts +7 -0
- package/dist/tokens/index.mjs +71 -0
- package/dist/{chunk-XCKK6P46.cjs → tokens/motion.cjs} +46 -18
- package/dist/{motion-D9wQbcKL.d.cts → tokens/motion.d.cts} +1 -1
- package/dist/{motion-D9wQbcKL.d.ts → tokens/motion.d.ts} +1 -1
- package/dist/{chunk-EZ2L3XPS.mjs → tokens/motion.mjs} +16 -10
- package/dist/tokens/radius.cjs +41 -0
- package/dist/tokens/radius.d.cts +18 -0
- package/dist/tokens/radius.d.ts +18 -0
- package/dist/tokens/radius.mjs +17 -0
- package/dist/tokens/shadows.cjs +57 -0
- package/dist/tokens/shadows.d.cts +32 -0
- package/dist/tokens/shadows.d.ts +32 -0
- package/dist/tokens/shadows.mjs +32 -0
- package/dist/tokens/spacing.cjs +51 -0
- package/dist/tokens/spacing.d.cts +26 -0
- package/dist/tokens/spacing.d.ts +26 -0
- package/dist/{chunk-NMPHV6ZD.mjs → tokens/spacing.mjs} +4 -4
- package/dist/{chunk-ECIGDEAH.cjs → tokens/typography.cjs} +43 -16
- package/dist/{typography-DlvVjEdE.d.ts → tokens/typography.d.cts} +1 -1
- package/dist/{typography-DlvVjEdE.d.cts → tokens/typography.d.ts} +1 -1
- package/dist/{chunk-ITBG42M5.mjs → tokens/typography.mjs} +14 -9
- package/dist/tokens/z-index.cjs +47 -0
- package/dist/tokens/z-index.d.cts +24 -0
- package/dist/tokens/z-index.d.ts +24 -0
- package/dist/tokens/z-index.mjs +23 -0
- package/dist/utils/cn.cjs +102 -0
- package/dist/utils/cn.d.cts +84 -0
- package/dist/utils/cn.d.ts +84 -0
- package/dist/{chunk-ZT3PCXDF.mjs → utils/cn.mjs} +14 -7
- package/dist/{chunk-33QEKXRQ.cjs → utils/contrast.cjs} +68 -38
- package/dist/utils/contrast.d.cts +209 -0
- package/dist/utils/contrast.d.ts +209 -0
- package/dist/{chunk-5NZDQWRV.mjs → utils/contrast.mjs} +27 -18
- package/dist/utils/focus-ring.cjs +81 -0
- package/dist/utils/focus-ring.d.cts +80 -0
- package/dist/utils/focus-ring.d.ts +80 -0
- package/dist/utils/focus-ring.mjs +47 -0
- package/dist/utils/index.cjs +107 -0
- package/dist/utils/index.d.cts +6 -0
- package/dist/utils/index.d.ts +6 -0
- package/dist/utils/index.mjs +88 -0
- package/dist/utils/types.cjs +38 -0
- package/dist/utils/types.d.cts +187 -0
- package/dist/utils/types.d.ts +187 -0
- package/dist/utils/types.mjs +13 -0
- package/package.json +191 -191
- package/dist/chunk-2JFREULQ.cjs +0 -29
- package/dist/chunk-3EHT6IOA.cjs +0 -49
- package/dist/chunk-4ON3M3OM.cjs +0 -73
- package/dist/chunk-5TP7J7T4.cjs +0 -1766
- package/dist/chunk-A2DGHQL2.cjs +0 -21808
- package/dist/chunk-EQWESXRH.mjs +0 -1735
- package/dist/chunk-F4JJFWWU.cjs +0 -604
- package/dist/chunk-FUWXGHWQ.cjs +0 -468
- package/dist/chunk-MBYCK2JJ.mjs +0 -37
- package/dist/chunk-OHEH57BV.mjs +0 -455
- package/dist/chunk-XAIUX2YS.mjs +0 -21477
- package/dist/components.cjs +0 -1247
- package/dist/components.d.cts +0 -7881
- package/dist/components.d.ts +0 -7881
- package/dist/components.mjs +0 -6
- package/dist/motion.cjs +0 -264
- package/dist/motion.mjs +0 -3
- package/dist/primitives.cjs +0 -57
- package/dist/primitives.d.cts +0 -390
- package/dist/primitives.d.ts +0 -390
- package/dist/primitives.mjs +0 -4
- package/dist/theme.cjs +0 -131
- package/dist/theme.d.cts +0 -414
- package/dist/theme.d.ts +0 -414
- package/dist/theme.mjs +0 -6
- package/dist/tokens.cjs +0 -137
- package/dist/tokens.d.cts +0 -30
- package/dist/tokens.d.ts +0 -30
- package/dist/tokens.mjs +0 -4
- package/dist/utils.cjs +0 -164
- package/dist/utils.d.cts +0 -525
- package/dist/utils.d.ts +0 -525
- package/dist/utils.mjs +0 -3
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use strict";
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
+
var contract_exports = {};
|
|
21
|
+
__export(contract_exports, {
|
|
22
|
+
buildDarkThemeVars: () => buildDarkThemeVars,
|
|
23
|
+
buildLightThemeVars: () => buildLightThemeVars,
|
|
24
|
+
buildThemeCSS: () => buildThemeCSS,
|
|
25
|
+
contract: () => contract,
|
|
26
|
+
cssVar: () => cssVar
|
|
27
|
+
});
|
|
28
|
+
module.exports = __toCommonJS(contract_exports);
|
|
29
|
+
var import_colors = require("../tokens/colors");
|
|
30
|
+
var import_motion = require("../tokens/motion");
|
|
31
|
+
var import_radius = require("../tokens/radius");
|
|
32
|
+
var import_shadows = require("../tokens/shadows");
|
|
33
|
+
var import_typography = require("../tokens/typography");
|
|
34
|
+
var import_z_index = require("../tokens/z-index");
|
|
35
|
+
const colorVarNames = {
|
|
36
|
+
background: "--background",
|
|
37
|
+
foreground: "--foreground",
|
|
38
|
+
surface: "--surface",
|
|
39
|
+
surfaceRaised: "--surface-raised",
|
|
40
|
+
surfaceOverlay: "--surface-overlay",
|
|
41
|
+
card: "--card",
|
|
42
|
+
cardForeground: "--card-foreground",
|
|
43
|
+
popover: "--popover",
|
|
44
|
+
popoverForeground: "--popover-foreground",
|
|
45
|
+
muted: "--muted",
|
|
46
|
+
mutedForeground: "--muted-foreground",
|
|
47
|
+
primary: "--primary",
|
|
48
|
+
primaryForeground: "--primary-foreground",
|
|
49
|
+
primaryHover: "--primary-hover",
|
|
50
|
+
primaryActive: "--primary-active",
|
|
51
|
+
primaryMuted: "--primary-muted",
|
|
52
|
+
primaryMutedForeground: "--primary-muted-foreground",
|
|
53
|
+
secondary: "--secondary",
|
|
54
|
+
secondaryForeground: "--secondary-foreground",
|
|
55
|
+
secondaryHover: "--secondary-hover",
|
|
56
|
+
secondaryActive: "--secondary-active",
|
|
57
|
+
accent: "--accent",
|
|
58
|
+
accentForeground: "--accent-foreground",
|
|
59
|
+
success: "--success",
|
|
60
|
+
successForeground: "--success-foreground",
|
|
61
|
+
successMuted: "--success-muted",
|
|
62
|
+
successMutedForeground: "--success-muted-foreground",
|
|
63
|
+
warning: "--warning",
|
|
64
|
+
warningForeground: "--warning-foreground",
|
|
65
|
+
warningMuted: "--warning-muted",
|
|
66
|
+
warningMutedForeground: "--warning-muted-foreground",
|
|
67
|
+
danger: "--danger",
|
|
68
|
+
dangerForeground: "--danger-foreground",
|
|
69
|
+
dangerHover: "--danger-hover",
|
|
70
|
+
dangerActive: "--danger-active",
|
|
71
|
+
dangerMuted: "--danger-muted",
|
|
72
|
+
dangerMutedForeground: "--danger-muted-foreground",
|
|
73
|
+
destructive: "--destructive",
|
|
74
|
+
destructiveForeground: "--destructive-foreground",
|
|
75
|
+
info: "--info",
|
|
76
|
+
infoForeground: "--info-foreground",
|
|
77
|
+
infoMuted: "--info-muted",
|
|
78
|
+
infoMutedForeground: "--info-muted-foreground",
|
|
79
|
+
border: "--border",
|
|
80
|
+
borderMuted: "--border-muted",
|
|
81
|
+
borderStrong: "--border-strong",
|
|
82
|
+
focusRing: "--focus-ring",
|
|
83
|
+
ring: "--ring",
|
|
84
|
+
input: "--input",
|
|
85
|
+
inputForeground: "--input-foreground",
|
|
86
|
+
inputPlaceholder: "--input-placeholder",
|
|
87
|
+
disabled: "--disabled",
|
|
88
|
+
disabledForeground: "--disabled-foreground",
|
|
89
|
+
chart1: "--chart-1",
|
|
90
|
+
chart2: "--chart-2",
|
|
91
|
+
chart3: "--chart-3",
|
|
92
|
+
chart4: "--chart-4",
|
|
93
|
+
chart5: "--chart-5",
|
|
94
|
+
sidebar: "--sidebar",
|
|
95
|
+
sidebarForeground: "--sidebar-foreground",
|
|
96
|
+
sidebarPrimary: "--sidebar-primary",
|
|
97
|
+
sidebarPrimaryForeground: "--sidebar-primary-foreground",
|
|
98
|
+
sidebarAccent: "--sidebar-accent",
|
|
99
|
+
sidebarAccentForeground: "--sidebar-accent-foreground",
|
|
100
|
+
sidebarBorder: "--sidebar-border",
|
|
101
|
+
sidebarRing: "--sidebar-ring"
|
|
102
|
+
};
|
|
103
|
+
const radiusVarNames = {
|
|
104
|
+
none: "--radius-none",
|
|
105
|
+
sm: "--radius-sm",
|
|
106
|
+
md: "--radius-md",
|
|
107
|
+
lg: "--radius-lg",
|
|
108
|
+
xl: "--radius-xl",
|
|
109
|
+
full: "--radius-full"
|
|
110
|
+
};
|
|
111
|
+
const shadowVarNames = {
|
|
112
|
+
none: "--shadow-none",
|
|
113
|
+
xs: "--shadow-xs",
|
|
114
|
+
sm: "--shadow-sm",
|
|
115
|
+
md: "--shadow-md",
|
|
116
|
+
lg: "--shadow-lg",
|
|
117
|
+
xl: "--shadow-xl",
|
|
118
|
+
"2xl": "--shadow-2xl",
|
|
119
|
+
focusRing: "--shadow-focus-ring"
|
|
120
|
+
};
|
|
121
|
+
const zIndexVarNames = {
|
|
122
|
+
base: "--z-base",
|
|
123
|
+
dropdown: "--z-dropdown",
|
|
124
|
+
sticky: "--z-sticky",
|
|
125
|
+
overlay: "--z-overlay",
|
|
126
|
+
modal: "--z-modal",
|
|
127
|
+
popover: "--z-popover",
|
|
128
|
+
toast: "--z-toast",
|
|
129
|
+
tooltip: "--z-tooltip",
|
|
130
|
+
max: "--z-max"
|
|
131
|
+
};
|
|
132
|
+
const durationVarNames = {
|
|
133
|
+
instant: "--duration-instant",
|
|
134
|
+
fast: "--duration-fast",
|
|
135
|
+
moderate: "--duration-moderate",
|
|
136
|
+
normal: "--duration-normal",
|
|
137
|
+
slow: "--duration-slow",
|
|
138
|
+
slower: "--duration-slower",
|
|
139
|
+
slowest: "--duration-slowest"
|
|
140
|
+
};
|
|
141
|
+
const easingVarNames = {
|
|
142
|
+
standard: "--easing-standard",
|
|
143
|
+
decelerate: "--easing-decelerate",
|
|
144
|
+
accelerate: "--easing-accelerate",
|
|
145
|
+
emphasize: "--easing-emphasize",
|
|
146
|
+
linear: "--easing-linear",
|
|
147
|
+
snap: "--easing-snap"
|
|
148
|
+
};
|
|
149
|
+
const fontFamilyVarNames = {
|
|
150
|
+
display: "--font-display",
|
|
151
|
+
sans: "--font-sans",
|
|
152
|
+
serif: "--font-serif",
|
|
153
|
+
mono: "--font-mono",
|
|
154
|
+
inherit: "--font-inherit"
|
|
155
|
+
};
|
|
156
|
+
function mapRecord(varNames, values) {
|
|
157
|
+
const result = {};
|
|
158
|
+
for (const key of Object.keys(varNames)) {
|
|
159
|
+
result[varNames[key]] = values[key];
|
|
160
|
+
}
|
|
161
|
+
return result;
|
|
162
|
+
}
|
|
163
|
+
function buildLightThemeVars() {
|
|
164
|
+
return {
|
|
165
|
+
...mapRecord(colorVarNames, import_colors.semanticLight),
|
|
166
|
+
...mapRecord(radiusVarNames, import_radius.radius),
|
|
167
|
+
...mapRecord(shadowVarNames, import_shadows.shadow),
|
|
168
|
+
...mapRecord(zIndexVarNames, import_z_index.zIndex),
|
|
169
|
+
...mapRecord(durationVarNames, import_motion.durationCSS),
|
|
170
|
+
...mapRecord(easingVarNames, import_motion.easingCSS),
|
|
171
|
+
...mapRecord(fontFamilyVarNames, import_typography.fontFamily)
|
|
172
|
+
};
|
|
173
|
+
}
|
|
174
|
+
function buildDarkThemeVars() {
|
|
175
|
+
return {
|
|
176
|
+
...mapRecord(colorVarNames, import_colors.semanticDark),
|
|
177
|
+
...mapRecord(radiusVarNames, import_radius.radius),
|
|
178
|
+
...mapRecord(shadowVarNames, import_shadows.shadowDark),
|
|
179
|
+
...mapRecord(zIndexVarNames, import_z_index.zIndex),
|
|
180
|
+
...mapRecord(durationVarNames, import_motion.durationCSS),
|
|
181
|
+
...mapRecord(easingVarNames, import_motion.easingCSS),
|
|
182
|
+
...mapRecord(fontFamilyVarNames, import_typography.fontFamily)
|
|
183
|
+
};
|
|
184
|
+
}
|
|
185
|
+
function varsToCSS(vars) {
|
|
186
|
+
return Object.entries(vars).map(([prop, value]) => ` ${prop}: ${value};`).join("\n");
|
|
187
|
+
}
|
|
188
|
+
function buildThemeCSS() {
|
|
189
|
+
const lightVars = buildLightThemeVars();
|
|
190
|
+
const darkVars = buildDarkThemeVars();
|
|
191
|
+
return `:root {
|
|
192
|
+
${varsToCSS(lightVars)}
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
.dark {
|
|
196
|
+
${varsToCSS(darkVars)}
|
|
197
|
+
}`;
|
|
198
|
+
}
|
|
199
|
+
const contract = {
|
|
200
|
+
color: colorVarNames,
|
|
201
|
+
radius: radiusVarNames,
|
|
202
|
+
shadow: shadowVarNames,
|
|
203
|
+
zIndex: zIndexVarNames,
|
|
204
|
+
duration: durationVarNames,
|
|
205
|
+
easing: easingVarNames,
|
|
206
|
+
fontFamily: fontFamilyVarNames
|
|
207
|
+
};
|
|
208
|
+
const cssVar = {
|
|
209
|
+
/** Returns `var(--<key>)` for use in style props */
|
|
210
|
+
color: (key) => `var(${colorVarNames[key]})`,
|
|
211
|
+
/**
|
|
212
|
+
* Returns a color-mix() expression with a custom alpha channel.
|
|
213
|
+
*
|
|
214
|
+
* Because oklch values are stored as complete `oklch(L C H)` strings
|
|
215
|
+
* in the CSS custom property, you cannot directly decompose them with
|
|
216
|
+
* simple var() references. For alpha-modified colors, prefer using
|
|
217
|
+
* Tailwind's built-in opacity modifier syntax (e.g. `bg-primary/50`)
|
|
218
|
+
* or define a dedicated muted token.
|
|
219
|
+
*
|
|
220
|
+
* If you need programmatic alpha in JS, use this helper which produces
|
|
221
|
+
* a color-mix() expression for broad browser support.
|
|
222
|
+
*/
|
|
223
|
+
colorAlpha: (key, alpha) => `color-mix(in oklch, var(${colorVarNames[key]}) ${Math.round(alpha * 100)}%, transparent)`,
|
|
224
|
+
/** Returns `var(--radius-<key>)` */
|
|
225
|
+
radius: (key) => `var(${radiusVarNames[key]})`,
|
|
226
|
+
/** Returns `var(--shadow-<key>)` */
|
|
227
|
+
shadow: (key) => `var(${shadowVarNames[key]})`,
|
|
228
|
+
/** Returns `var(--z-<key>)` */
|
|
229
|
+
zIndex: (key) => `var(${zIndexVarNames[key]})`,
|
|
230
|
+
/** Returns `var(--duration-<key>)` */
|
|
231
|
+
duration: (key) => `var(${durationVarNames[key]})`,
|
|
232
|
+
/** Returns `var(--easing-<key>)` */
|
|
233
|
+
easing: (key) => `var(${easingVarNames[key]})`,
|
|
234
|
+
/** Returns `var(--font-<key>)` */
|
|
235
|
+
fontFamily: (key) => `var(${fontFamilyVarNames[key]})`,
|
|
236
|
+
/** Returns the raw `var(--<key>)` — same as color() since values are complete oklch */
|
|
237
|
+
colorChannels: (key) => `var(${colorVarNames[key]})`
|
|
238
|
+
};
|
|
239
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
240
|
+
0 && (module.exports = {
|
|
241
|
+
buildDarkThemeVars,
|
|
242
|
+
buildLightThemeVars,
|
|
243
|
+
buildThemeCSS,
|
|
244
|
+
contract,
|
|
245
|
+
cssVar
|
|
246
|
+
});
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { SemanticColorKey } from '../tokens/colors.cjs';
|
|
2
|
+
import { durationCSS, easingCSS } from '../tokens/motion.cjs';
|
|
3
|
+
import { radius } from '../tokens/radius.cjs';
|
|
4
|
+
import { shadow } from '../tokens/shadows.cjs';
|
|
5
|
+
import { fontFamily } from '../tokens/typography.cjs';
|
|
6
|
+
import { zIndex } from '../tokens/z-index.cjs';
|
|
7
|
+
|
|
8
|
+
declare const colorVarNames: Record<SemanticColorKey, string>;
|
|
9
|
+
type RadiusKey = keyof typeof radius;
|
|
10
|
+
declare const radiusVarNames: Record<RadiusKey, string>;
|
|
11
|
+
type ShadowKey = keyof typeof shadow;
|
|
12
|
+
declare const shadowVarNames: Record<ShadowKey, string>;
|
|
13
|
+
type ZIndexKey = keyof typeof zIndex;
|
|
14
|
+
declare const zIndexVarNames: Record<ZIndexKey, string>;
|
|
15
|
+
type DurationKey = keyof typeof durationCSS;
|
|
16
|
+
type EasingKey = keyof typeof easingCSS;
|
|
17
|
+
declare const durationVarNames: Record<DurationKey, string>;
|
|
18
|
+
declare const easingVarNames: Record<EasingKey, string>;
|
|
19
|
+
type FontFamilyKey = keyof typeof fontFamily;
|
|
20
|
+
declare const fontFamilyVarNames: Record<FontFamilyKey, string>;
|
|
21
|
+
/** Generate the full set of CSS variables for the light theme */
|
|
22
|
+
declare function buildLightThemeVars(): Record<string, string>;
|
|
23
|
+
/** Generate the full set of CSS variables for the dark theme */
|
|
24
|
+
declare function buildDarkThemeVars(): Record<string, string>;
|
|
25
|
+
/** Returns the complete CSS text for both :root (light) and .dark themes */
|
|
26
|
+
declare function buildThemeCSS(): string;
|
|
27
|
+
declare const contract: {
|
|
28
|
+
readonly color: Record<"input" | "popover" | "disabled" | "background" | "border" | "info" | "success" | "warning" | "danger" | "primary" | "secondary" | "card" | "muted" | "sidebar" | "foreground" | "focusRing" | "surface" | "surfaceRaised" | "surfaceOverlay" | "cardForeground" | "popoverForeground" | "mutedForeground" | "primaryForeground" | "primaryHover" | "primaryActive" | "primaryMuted" | "primaryMutedForeground" | "secondaryForeground" | "secondaryHover" | "secondaryActive" | "accent" | "accentForeground" | "successForeground" | "successMuted" | "successMutedForeground" | "warningForeground" | "warningMuted" | "warningMutedForeground" | "dangerForeground" | "dangerHover" | "dangerActive" | "dangerMuted" | "dangerMutedForeground" | "destructive" | "destructiveForeground" | "infoForeground" | "infoMuted" | "infoMutedForeground" | "borderMuted" | "borderStrong" | "ring" | "inputForeground" | "inputPlaceholder" | "disabledForeground" | "chart1" | "chart2" | "chart3" | "chart4" | "chart5" | "sidebarForeground" | "sidebarPrimary" | "sidebarPrimaryForeground" | "sidebarAccent" | "sidebarAccentForeground" | "sidebarBorder" | "sidebarRing", string>;
|
|
29
|
+
readonly radius: Record<"sm" | "md" | "none" | "lg" | "xl" | "full", string>;
|
|
30
|
+
readonly shadow: Record<"sm" | "md" | "none" | "xs" | "lg" | "xl" | "2xl" | "focusRing", string>;
|
|
31
|
+
readonly zIndex: Record<"base" | "popover" | "tooltip" | "max" | "modal" | "overlay" | "sticky" | "toast" | "dropdown", string>;
|
|
32
|
+
readonly duration: Record<"instant" | "fast" | "moderate" | "normal" | "slow" | "slower" | "slowest", string>;
|
|
33
|
+
readonly easing: Record<"standard" | "decelerate" | "accelerate" | "emphasize" | "linear" | "snap", string>;
|
|
34
|
+
readonly fontFamily: Record<"inherit" | "display" | "serif" | "sans" | "mono", string>;
|
|
35
|
+
};
|
|
36
|
+
declare const cssVar: {
|
|
37
|
+
/** Returns `var(--<key>)` for use in style props */
|
|
38
|
+
readonly color: (key: SemanticColorKey) => string;
|
|
39
|
+
/**
|
|
40
|
+
* Returns a color-mix() expression with a custom alpha channel.
|
|
41
|
+
*
|
|
42
|
+
* Because oklch values are stored as complete `oklch(L C H)` strings
|
|
43
|
+
* in the CSS custom property, you cannot directly decompose them with
|
|
44
|
+
* simple var() references. For alpha-modified colors, prefer using
|
|
45
|
+
* Tailwind's built-in opacity modifier syntax (e.g. `bg-primary/50`)
|
|
46
|
+
* or define a dedicated muted token.
|
|
47
|
+
*
|
|
48
|
+
* If you need programmatic alpha in JS, use this helper which produces
|
|
49
|
+
* a color-mix() expression for broad browser support.
|
|
50
|
+
*/
|
|
51
|
+
readonly colorAlpha: (key: SemanticColorKey, alpha: number) => string;
|
|
52
|
+
/** Returns `var(--radius-<key>)` */
|
|
53
|
+
readonly radius: (key: RadiusKey) => string;
|
|
54
|
+
/** Returns `var(--shadow-<key>)` */
|
|
55
|
+
readonly shadow: (key: ShadowKey) => string;
|
|
56
|
+
/** Returns `var(--z-<key>)` */
|
|
57
|
+
readonly zIndex: (key: ZIndexKey) => string;
|
|
58
|
+
/** Returns `var(--duration-<key>)` */
|
|
59
|
+
readonly duration: (key: DurationKey) => string;
|
|
60
|
+
/** Returns `var(--easing-<key>)` */
|
|
61
|
+
readonly easing: (key: EasingKey) => string;
|
|
62
|
+
/** Returns `var(--font-<key>)` */
|
|
63
|
+
readonly fontFamily: (key: FontFamilyKey) => string;
|
|
64
|
+
/** Returns the raw `var(--<key>)` — same as color() since values are complete oklch */
|
|
65
|
+
readonly colorChannels: (key: SemanticColorKey) => string;
|
|
66
|
+
};
|
|
67
|
+
type ThemeVars = ReturnType<typeof buildLightThemeVars>;
|
|
68
|
+
type ColorVarName = (typeof colorVarNames)[SemanticColorKey];
|
|
69
|
+
type RadiusVarName = (typeof radiusVarNames)[RadiusKey];
|
|
70
|
+
type ShadowVarName = (typeof shadowVarNames)[ShadowKey];
|
|
71
|
+
type ZIndexVarName = (typeof zIndexVarNames)[ZIndexKey];
|
|
72
|
+
type DurationVarName = (typeof durationVarNames)[DurationKey];
|
|
73
|
+
type EasingVarName = (typeof easingVarNames)[EasingKey];
|
|
74
|
+
type FontFamilyVarName = (typeof fontFamilyVarNames)[FontFamilyKey];
|
|
75
|
+
|
|
76
|
+
export { type ColorVarName, type DurationVarName, type EasingVarName, type FontFamilyVarName, type RadiusVarName, type ShadowVarName, type ThemeVars, type ZIndexVarName, buildDarkThemeVars, buildLightThemeVars, buildThemeCSS, contract, cssVar };
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { SemanticColorKey } from '../tokens/colors.js';
|
|
2
|
+
import { durationCSS, easingCSS } from '../tokens/motion.js';
|
|
3
|
+
import { radius } from '../tokens/radius.js';
|
|
4
|
+
import { shadow } from '../tokens/shadows.js';
|
|
5
|
+
import { fontFamily } from '../tokens/typography.js';
|
|
6
|
+
import { zIndex } from '../tokens/z-index.js';
|
|
7
|
+
|
|
8
|
+
declare const colorVarNames: Record<SemanticColorKey, string>;
|
|
9
|
+
type RadiusKey = keyof typeof radius;
|
|
10
|
+
declare const radiusVarNames: Record<RadiusKey, string>;
|
|
11
|
+
type ShadowKey = keyof typeof shadow;
|
|
12
|
+
declare const shadowVarNames: Record<ShadowKey, string>;
|
|
13
|
+
type ZIndexKey = keyof typeof zIndex;
|
|
14
|
+
declare const zIndexVarNames: Record<ZIndexKey, string>;
|
|
15
|
+
type DurationKey = keyof typeof durationCSS;
|
|
16
|
+
type EasingKey = keyof typeof easingCSS;
|
|
17
|
+
declare const durationVarNames: Record<DurationKey, string>;
|
|
18
|
+
declare const easingVarNames: Record<EasingKey, string>;
|
|
19
|
+
type FontFamilyKey = keyof typeof fontFamily;
|
|
20
|
+
declare const fontFamilyVarNames: Record<FontFamilyKey, string>;
|
|
21
|
+
/** Generate the full set of CSS variables for the light theme */
|
|
22
|
+
declare function buildLightThemeVars(): Record<string, string>;
|
|
23
|
+
/** Generate the full set of CSS variables for the dark theme */
|
|
24
|
+
declare function buildDarkThemeVars(): Record<string, string>;
|
|
25
|
+
/** Returns the complete CSS text for both :root (light) and .dark themes */
|
|
26
|
+
declare function buildThemeCSS(): string;
|
|
27
|
+
declare const contract: {
|
|
28
|
+
readonly color: Record<"input" | "popover" | "disabled" | "background" | "border" | "info" | "success" | "warning" | "danger" | "primary" | "secondary" | "card" | "muted" | "sidebar" | "foreground" | "focusRing" | "surface" | "surfaceRaised" | "surfaceOverlay" | "cardForeground" | "popoverForeground" | "mutedForeground" | "primaryForeground" | "primaryHover" | "primaryActive" | "primaryMuted" | "primaryMutedForeground" | "secondaryForeground" | "secondaryHover" | "secondaryActive" | "accent" | "accentForeground" | "successForeground" | "successMuted" | "successMutedForeground" | "warningForeground" | "warningMuted" | "warningMutedForeground" | "dangerForeground" | "dangerHover" | "dangerActive" | "dangerMuted" | "dangerMutedForeground" | "destructive" | "destructiveForeground" | "infoForeground" | "infoMuted" | "infoMutedForeground" | "borderMuted" | "borderStrong" | "ring" | "inputForeground" | "inputPlaceholder" | "disabledForeground" | "chart1" | "chart2" | "chart3" | "chart4" | "chart5" | "sidebarForeground" | "sidebarPrimary" | "sidebarPrimaryForeground" | "sidebarAccent" | "sidebarAccentForeground" | "sidebarBorder" | "sidebarRing", string>;
|
|
29
|
+
readonly radius: Record<"sm" | "md" | "none" | "lg" | "xl" | "full", string>;
|
|
30
|
+
readonly shadow: Record<"sm" | "md" | "none" | "xs" | "lg" | "xl" | "2xl" | "focusRing", string>;
|
|
31
|
+
readonly zIndex: Record<"base" | "popover" | "tooltip" | "max" | "modal" | "overlay" | "sticky" | "toast" | "dropdown", string>;
|
|
32
|
+
readonly duration: Record<"instant" | "fast" | "moderate" | "normal" | "slow" | "slower" | "slowest", string>;
|
|
33
|
+
readonly easing: Record<"standard" | "decelerate" | "accelerate" | "emphasize" | "linear" | "snap", string>;
|
|
34
|
+
readonly fontFamily: Record<"inherit" | "display" | "serif" | "sans" | "mono", string>;
|
|
35
|
+
};
|
|
36
|
+
declare const cssVar: {
|
|
37
|
+
/** Returns `var(--<key>)` for use in style props */
|
|
38
|
+
readonly color: (key: SemanticColorKey) => string;
|
|
39
|
+
/**
|
|
40
|
+
* Returns a color-mix() expression with a custom alpha channel.
|
|
41
|
+
*
|
|
42
|
+
* Because oklch values are stored as complete `oklch(L C H)` strings
|
|
43
|
+
* in the CSS custom property, you cannot directly decompose them with
|
|
44
|
+
* simple var() references. For alpha-modified colors, prefer using
|
|
45
|
+
* Tailwind's built-in opacity modifier syntax (e.g. `bg-primary/50`)
|
|
46
|
+
* or define a dedicated muted token.
|
|
47
|
+
*
|
|
48
|
+
* If you need programmatic alpha in JS, use this helper which produces
|
|
49
|
+
* a color-mix() expression for broad browser support.
|
|
50
|
+
*/
|
|
51
|
+
readonly colorAlpha: (key: SemanticColorKey, alpha: number) => string;
|
|
52
|
+
/** Returns `var(--radius-<key>)` */
|
|
53
|
+
readonly radius: (key: RadiusKey) => string;
|
|
54
|
+
/** Returns `var(--shadow-<key>)` */
|
|
55
|
+
readonly shadow: (key: ShadowKey) => string;
|
|
56
|
+
/** Returns `var(--z-<key>)` */
|
|
57
|
+
readonly zIndex: (key: ZIndexKey) => string;
|
|
58
|
+
/** Returns `var(--duration-<key>)` */
|
|
59
|
+
readonly duration: (key: DurationKey) => string;
|
|
60
|
+
/** Returns `var(--easing-<key>)` */
|
|
61
|
+
readonly easing: (key: EasingKey) => string;
|
|
62
|
+
/** Returns `var(--font-<key>)` */
|
|
63
|
+
readonly fontFamily: (key: FontFamilyKey) => string;
|
|
64
|
+
/** Returns the raw `var(--<key>)` — same as color() since values are complete oklch */
|
|
65
|
+
readonly colorChannels: (key: SemanticColorKey) => string;
|
|
66
|
+
};
|
|
67
|
+
type ThemeVars = ReturnType<typeof buildLightThemeVars>;
|
|
68
|
+
type ColorVarName = (typeof colorVarNames)[SemanticColorKey];
|
|
69
|
+
type RadiusVarName = (typeof radiusVarNames)[RadiusKey];
|
|
70
|
+
type ShadowVarName = (typeof shadowVarNames)[ShadowKey];
|
|
71
|
+
type ZIndexVarName = (typeof zIndexVarNames)[ZIndexKey];
|
|
72
|
+
type DurationVarName = (typeof durationVarNames)[DurationKey];
|
|
73
|
+
type EasingVarName = (typeof easingVarNames)[EasingKey];
|
|
74
|
+
type FontFamilyVarName = (typeof fontFamilyVarNames)[FontFamilyKey];
|
|
75
|
+
|
|
76
|
+
export { type ColorVarName, type DurationVarName, type EasingVarName, type FontFamilyVarName, type RadiusVarName, type ShadowVarName, type ThemeVars, type ZIndexVarName, buildDarkThemeVars, buildLightThemeVars, buildThemeCSS, contract, cssVar };
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
semanticDark,
|
|
4
|
+
semanticLight
|
|
5
|
+
} from "../tokens/colors";
|
|
6
|
+
import { durationCSS, easingCSS } from "../tokens/motion";
|
|
7
|
+
import { radius } from "../tokens/radius";
|
|
8
|
+
import { shadow, shadowDark } from "../tokens/shadows";
|
|
9
|
+
import { fontFamily } from "../tokens/typography";
|
|
10
|
+
import { zIndex } from "../tokens/z-index";
|
|
11
|
+
const colorVarNames = {
|
|
12
|
+
background: "--background",
|
|
13
|
+
foreground: "--foreground",
|
|
14
|
+
surface: "--surface",
|
|
15
|
+
surfaceRaised: "--surface-raised",
|
|
16
|
+
surfaceOverlay: "--surface-overlay",
|
|
17
|
+
card: "--card",
|
|
18
|
+
cardForeground: "--card-foreground",
|
|
19
|
+
popover: "--popover",
|
|
20
|
+
popoverForeground: "--popover-foreground",
|
|
21
|
+
muted: "--muted",
|
|
22
|
+
mutedForeground: "--muted-foreground",
|
|
23
|
+
primary: "--primary",
|
|
24
|
+
primaryForeground: "--primary-foreground",
|
|
25
|
+
primaryHover: "--primary-hover",
|
|
26
|
+
primaryActive: "--primary-active",
|
|
27
|
+
primaryMuted: "--primary-muted",
|
|
28
|
+
primaryMutedForeground: "--primary-muted-foreground",
|
|
29
|
+
secondary: "--secondary",
|
|
30
|
+
secondaryForeground: "--secondary-foreground",
|
|
31
|
+
secondaryHover: "--secondary-hover",
|
|
32
|
+
secondaryActive: "--secondary-active",
|
|
33
|
+
accent: "--accent",
|
|
34
|
+
accentForeground: "--accent-foreground",
|
|
35
|
+
success: "--success",
|
|
36
|
+
successForeground: "--success-foreground",
|
|
37
|
+
successMuted: "--success-muted",
|
|
38
|
+
successMutedForeground: "--success-muted-foreground",
|
|
39
|
+
warning: "--warning",
|
|
40
|
+
warningForeground: "--warning-foreground",
|
|
41
|
+
warningMuted: "--warning-muted",
|
|
42
|
+
warningMutedForeground: "--warning-muted-foreground",
|
|
43
|
+
danger: "--danger",
|
|
44
|
+
dangerForeground: "--danger-foreground",
|
|
45
|
+
dangerHover: "--danger-hover",
|
|
46
|
+
dangerActive: "--danger-active",
|
|
47
|
+
dangerMuted: "--danger-muted",
|
|
48
|
+
dangerMutedForeground: "--danger-muted-foreground",
|
|
49
|
+
destructive: "--destructive",
|
|
50
|
+
destructiveForeground: "--destructive-foreground",
|
|
51
|
+
info: "--info",
|
|
52
|
+
infoForeground: "--info-foreground",
|
|
53
|
+
infoMuted: "--info-muted",
|
|
54
|
+
infoMutedForeground: "--info-muted-foreground",
|
|
55
|
+
border: "--border",
|
|
56
|
+
borderMuted: "--border-muted",
|
|
57
|
+
borderStrong: "--border-strong",
|
|
58
|
+
focusRing: "--focus-ring",
|
|
59
|
+
ring: "--ring",
|
|
60
|
+
input: "--input",
|
|
61
|
+
inputForeground: "--input-foreground",
|
|
62
|
+
inputPlaceholder: "--input-placeholder",
|
|
63
|
+
disabled: "--disabled",
|
|
64
|
+
disabledForeground: "--disabled-foreground",
|
|
65
|
+
chart1: "--chart-1",
|
|
66
|
+
chart2: "--chart-2",
|
|
67
|
+
chart3: "--chart-3",
|
|
68
|
+
chart4: "--chart-4",
|
|
69
|
+
chart5: "--chart-5",
|
|
70
|
+
sidebar: "--sidebar",
|
|
71
|
+
sidebarForeground: "--sidebar-foreground",
|
|
72
|
+
sidebarPrimary: "--sidebar-primary",
|
|
73
|
+
sidebarPrimaryForeground: "--sidebar-primary-foreground",
|
|
74
|
+
sidebarAccent: "--sidebar-accent",
|
|
75
|
+
sidebarAccentForeground: "--sidebar-accent-foreground",
|
|
76
|
+
sidebarBorder: "--sidebar-border",
|
|
77
|
+
sidebarRing: "--sidebar-ring"
|
|
78
|
+
};
|
|
79
|
+
const radiusVarNames = {
|
|
80
|
+
none: "--radius-none",
|
|
81
|
+
sm: "--radius-sm",
|
|
82
|
+
md: "--radius-md",
|
|
83
|
+
lg: "--radius-lg",
|
|
84
|
+
xl: "--radius-xl",
|
|
85
|
+
full: "--radius-full"
|
|
86
|
+
};
|
|
87
|
+
const shadowVarNames = {
|
|
88
|
+
none: "--shadow-none",
|
|
89
|
+
xs: "--shadow-xs",
|
|
90
|
+
sm: "--shadow-sm",
|
|
91
|
+
md: "--shadow-md",
|
|
92
|
+
lg: "--shadow-lg",
|
|
93
|
+
xl: "--shadow-xl",
|
|
94
|
+
"2xl": "--shadow-2xl",
|
|
95
|
+
focusRing: "--shadow-focus-ring"
|
|
96
|
+
};
|
|
97
|
+
const zIndexVarNames = {
|
|
98
|
+
base: "--z-base",
|
|
99
|
+
dropdown: "--z-dropdown",
|
|
100
|
+
sticky: "--z-sticky",
|
|
101
|
+
overlay: "--z-overlay",
|
|
102
|
+
modal: "--z-modal",
|
|
103
|
+
popover: "--z-popover",
|
|
104
|
+
toast: "--z-toast",
|
|
105
|
+
tooltip: "--z-tooltip",
|
|
106
|
+
max: "--z-max"
|
|
107
|
+
};
|
|
108
|
+
const durationVarNames = {
|
|
109
|
+
instant: "--duration-instant",
|
|
110
|
+
fast: "--duration-fast",
|
|
111
|
+
moderate: "--duration-moderate",
|
|
112
|
+
normal: "--duration-normal",
|
|
113
|
+
slow: "--duration-slow",
|
|
114
|
+
slower: "--duration-slower",
|
|
115
|
+
slowest: "--duration-slowest"
|
|
116
|
+
};
|
|
117
|
+
const easingVarNames = {
|
|
118
|
+
standard: "--easing-standard",
|
|
119
|
+
decelerate: "--easing-decelerate",
|
|
120
|
+
accelerate: "--easing-accelerate",
|
|
121
|
+
emphasize: "--easing-emphasize",
|
|
122
|
+
linear: "--easing-linear",
|
|
123
|
+
snap: "--easing-snap"
|
|
124
|
+
};
|
|
125
|
+
const fontFamilyVarNames = {
|
|
126
|
+
display: "--font-display",
|
|
127
|
+
sans: "--font-sans",
|
|
128
|
+
serif: "--font-serif",
|
|
129
|
+
mono: "--font-mono",
|
|
130
|
+
inherit: "--font-inherit"
|
|
131
|
+
};
|
|
132
|
+
function mapRecord(varNames, values) {
|
|
133
|
+
const result = {};
|
|
134
|
+
for (const key of Object.keys(varNames)) {
|
|
135
|
+
result[varNames[key]] = values[key];
|
|
136
|
+
}
|
|
137
|
+
return result;
|
|
138
|
+
}
|
|
139
|
+
function buildLightThemeVars() {
|
|
140
|
+
return {
|
|
141
|
+
...mapRecord(colorVarNames, semanticLight),
|
|
142
|
+
...mapRecord(radiusVarNames, radius),
|
|
143
|
+
...mapRecord(shadowVarNames, shadow),
|
|
144
|
+
...mapRecord(zIndexVarNames, zIndex),
|
|
145
|
+
...mapRecord(durationVarNames, durationCSS),
|
|
146
|
+
...mapRecord(easingVarNames, easingCSS),
|
|
147
|
+
...mapRecord(fontFamilyVarNames, fontFamily)
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
function buildDarkThemeVars() {
|
|
151
|
+
return {
|
|
152
|
+
...mapRecord(colorVarNames, semanticDark),
|
|
153
|
+
...mapRecord(radiusVarNames, radius),
|
|
154
|
+
...mapRecord(shadowVarNames, shadowDark),
|
|
155
|
+
...mapRecord(zIndexVarNames, zIndex),
|
|
156
|
+
...mapRecord(durationVarNames, durationCSS),
|
|
157
|
+
...mapRecord(easingVarNames, easingCSS),
|
|
158
|
+
...mapRecord(fontFamilyVarNames, fontFamily)
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
function varsToCSS(vars) {
|
|
162
|
+
return Object.entries(vars).map(([prop, value]) => ` ${prop}: ${value};`).join("\n");
|
|
163
|
+
}
|
|
164
|
+
function buildThemeCSS() {
|
|
165
|
+
const lightVars = buildLightThemeVars();
|
|
166
|
+
const darkVars = buildDarkThemeVars();
|
|
167
|
+
return `:root {
|
|
168
|
+
${varsToCSS(lightVars)}
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
.dark {
|
|
172
|
+
${varsToCSS(darkVars)}
|
|
173
|
+
}`;
|
|
174
|
+
}
|
|
175
|
+
const contract = {
|
|
176
|
+
color: colorVarNames,
|
|
177
|
+
radius: radiusVarNames,
|
|
178
|
+
shadow: shadowVarNames,
|
|
179
|
+
zIndex: zIndexVarNames,
|
|
180
|
+
duration: durationVarNames,
|
|
181
|
+
easing: easingVarNames,
|
|
182
|
+
fontFamily: fontFamilyVarNames
|
|
183
|
+
};
|
|
184
|
+
const cssVar = {
|
|
185
|
+
/** Returns `var(--<key>)` for use in style props */
|
|
186
|
+
color: (key) => `var(${colorVarNames[key]})`,
|
|
187
|
+
/**
|
|
188
|
+
* Returns a color-mix() expression with a custom alpha channel.
|
|
189
|
+
*
|
|
190
|
+
* Because oklch values are stored as complete `oklch(L C H)` strings
|
|
191
|
+
* in the CSS custom property, you cannot directly decompose them with
|
|
192
|
+
* simple var() references. For alpha-modified colors, prefer using
|
|
193
|
+
* Tailwind's built-in opacity modifier syntax (e.g. `bg-primary/50`)
|
|
194
|
+
* or define a dedicated muted token.
|
|
195
|
+
*
|
|
196
|
+
* If you need programmatic alpha in JS, use this helper which produces
|
|
197
|
+
* a color-mix() expression for broad browser support.
|
|
198
|
+
*/
|
|
199
|
+
colorAlpha: (key, alpha) => `color-mix(in oklch, var(${colorVarNames[key]}) ${Math.round(alpha * 100)}%, transparent)`,
|
|
200
|
+
/** Returns `var(--radius-<key>)` */
|
|
201
|
+
radius: (key) => `var(${radiusVarNames[key]})`,
|
|
202
|
+
/** Returns `var(--shadow-<key>)` */
|
|
203
|
+
shadow: (key) => `var(${shadowVarNames[key]})`,
|
|
204
|
+
/** Returns `var(--z-<key>)` */
|
|
205
|
+
zIndex: (key) => `var(${zIndexVarNames[key]})`,
|
|
206
|
+
/** Returns `var(--duration-<key>)` */
|
|
207
|
+
duration: (key) => `var(${durationVarNames[key]})`,
|
|
208
|
+
/** Returns `var(--easing-<key>)` */
|
|
209
|
+
easing: (key) => `var(${easingVarNames[key]})`,
|
|
210
|
+
/** Returns `var(--font-<key>)` */
|
|
211
|
+
fontFamily: (key) => `var(${fontFamilyVarNames[key]})`,
|
|
212
|
+
/** Returns the raw `var(--<key>)` — same as color() since values are complete oklch */
|
|
213
|
+
colorChannels: (key) => `var(${colorVarNames[key]})`
|
|
214
|
+
};
|
|
215
|
+
export {
|
|
216
|
+
buildDarkThemeVars,
|
|
217
|
+
buildLightThemeVars,
|
|
218
|
+
buildThemeCSS,
|
|
219
|
+
contract,
|
|
220
|
+
cssVar
|
|
221
|
+
};
|