@work-rjkashyap/unified-ui 0.3.4 → 0.3.6
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 -1957
- 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-AAEWG5VR.mjs → tokens/colors.cjs} +94 -94
- package/dist/{z-index-DmLl6FUD.d.ts → tokens/colors.d.cts} +118 -72
- package/dist/{z-index-DmLl6FUD.d.cts → tokens/colors.d.ts} +118 -72
- package/dist/{chunk-6ZZZBOCH.cjs → tokens/colors.mjs} +47 -121
- 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-A2DGHQL2.cjs +0 -21808
- package/dist/chunk-BJ55D5IK.mjs +0 -2433
- 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-RUG3BW2B.cjs +0 -2471
- 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 -159
- package/dist/theme.d.cts +0 -440
- package/dist/theme.d.ts +0 -440
- 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,204 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
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 toggle_group_exports = {};
|
|
21
|
+
__export(toggle_group_exports, {
|
|
22
|
+
ToggleGroup: () => ToggleGroup,
|
|
23
|
+
ToggleGroupItem: () => ToggleGroupItem,
|
|
24
|
+
toggleGroupItemVariants: () => toggleGroupItemVariants,
|
|
25
|
+
toggleGroupVariants: () => toggleGroupVariants,
|
|
26
|
+
useToggleGroupContext: () => useToggleGroupContext
|
|
27
|
+
});
|
|
28
|
+
module.exports = __toCommonJS(toggle_group_exports);
|
|
29
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
30
|
+
var import_cn = require("../utils/cn.cjs");
|
|
31
|
+
var import_focus_ring = require("../utils/focus-ring.cjs");
|
|
32
|
+
var import_class_variance_authority = require("class-variance-authority");
|
|
33
|
+
var import_radix_ui = require("radix-ui");
|
|
34
|
+
var import_react = require("react");
|
|
35
|
+
const ToggleGroupContext = (0, import_react.createContext)({
|
|
36
|
+
variant: "default",
|
|
37
|
+
size: "md"
|
|
38
|
+
});
|
|
39
|
+
function useToggleGroupContext() {
|
|
40
|
+
return (0, import_react.useContext)(ToggleGroupContext);
|
|
41
|
+
}
|
|
42
|
+
const toggleGroupVariants = (0, import_class_variance_authority.cva)(
|
|
43
|
+
// Base styles — shared across all orientations
|
|
44
|
+
[
|
|
45
|
+
// Layout
|
|
46
|
+
"inline-flex items-center",
|
|
47
|
+
// Gap between items
|
|
48
|
+
"gap-1"
|
|
49
|
+
],
|
|
50
|
+
{
|
|
51
|
+
variants: {
|
|
52
|
+
// -----------------------------------------------------------------
|
|
53
|
+
// Orientation Variants
|
|
54
|
+
// -----------------------------------------------------------------
|
|
55
|
+
orientation: {
|
|
56
|
+
horizontal: "flex-row",
|
|
57
|
+
vertical: "flex-col"
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
defaultVariants: {
|
|
61
|
+
orientation: "horizontal"
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
);
|
|
65
|
+
const toggleGroupItemVariants = (0, import_class_variance_authority.cva)(
|
|
66
|
+
// Base styles — shared across all variants and sizes
|
|
67
|
+
[
|
|
68
|
+
// Layout
|
|
69
|
+
"inline-flex items-center justify-center gap-2",
|
|
70
|
+
// Typography
|
|
71
|
+
"text-sm font-medium leading-5",
|
|
72
|
+
// Shape
|
|
73
|
+
"rounded-md",
|
|
74
|
+
// Transition (uses design system motion tokens)
|
|
75
|
+
"transition-[color,background-color,border-color,box-shadow,opacity]",
|
|
76
|
+
"duration-fast ease-standard",
|
|
77
|
+
// Focus ring — WCAG AA compliant, visible on keyboard navigation only
|
|
78
|
+
import_focus_ring.focusRingClasses,
|
|
79
|
+
// Disabled — consistent across all variants
|
|
80
|
+
"disabled:pointer-events-none disabled:opacity-50 disabled:cursor-not-allowed",
|
|
81
|
+
// Cursor
|
|
82
|
+
"cursor-pointer",
|
|
83
|
+
// Prevent text selection on rapid clicks
|
|
84
|
+
"select-none",
|
|
85
|
+
// Shrink protection
|
|
86
|
+
"shrink-0"
|
|
87
|
+
],
|
|
88
|
+
{
|
|
89
|
+
variants: {
|
|
90
|
+
// -----------------------------------------------------------------
|
|
91
|
+
// Visual Variants
|
|
92
|
+
// -----------------------------------------------------------------
|
|
93
|
+
variant: {
|
|
94
|
+
/**
|
|
95
|
+
* Default — transparent background, fills on press.
|
|
96
|
+
*/
|
|
97
|
+
default: [
|
|
98
|
+
"bg-transparent text-muted-foreground",
|
|
99
|
+
"hover:bg-muted hover:text-foreground",
|
|
100
|
+
"data-[state=on]:bg-secondary data-[state=on]:text-foreground"
|
|
101
|
+
],
|
|
102
|
+
/**
|
|
103
|
+
* Outline — bordered item with visible boundary.
|
|
104
|
+
*/
|
|
105
|
+
outline: [
|
|
106
|
+
"border border-border",
|
|
107
|
+
"bg-transparent text-muted-foreground",
|
|
108
|
+
"hover:bg-muted hover:text-foreground",
|
|
109
|
+
"data-[state=on]:bg-secondary data-[state=on]:text-foreground",
|
|
110
|
+
"data-[state=on]:border-border-strong"
|
|
111
|
+
],
|
|
112
|
+
/**
|
|
113
|
+
* Ghost — minimal visual weight.
|
|
114
|
+
*/
|
|
115
|
+
ghost: [
|
|
116
|
+
"bg-transparent text-muted-foreground",
|
|
117
|
+
"hover:bg-muted hover:text-foreground",
|
|
118
|
+
"data-[state=on]:bg-transparent data-[state=on]:text-foreground"
|
|
119
|
+
]
|
|
120
|
+
},
|
|
121
|
+
// -----------------------------------------------------------------
|
|
122
|
+
// Size Variants
|
|
123
|
+
// -----------------------------------------------------------------
|
|
124
|
+
size: {
|
|
125
|
+
/**
|
|
126
|
+
* Small — compact for dense UIs, toolbars.
|
|
127
|
+
* Height: 32px (h-8)
|
|
128
|
+
*/
|
|
129
|
+
sm: "h-8 px-2 text-xs gap-1.5",
|
|
130
|
+
/**
|
|
131
|
+
* Medium — default size for most toggle groups.
|
|
132
|
+
* Height: 36px (h-9)
|
|
133
|
+
*/
|
|
134
|
+
md: "h-9 px-3 text-sm gap-2",
|
|
135
|
+
/**
|
|
136
|
+
* Large — prominent for larger touch targets.
|
|
137
|
+
* Height: 40px (h-10)
|
|
138
|
+
*/
|
|
139
|
+
lg: "h-10 px-4 text-sm gap-2"
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
defaultVariants: {
|
|
143
|
+
variant: "default",
|
|
144
|
+
size: "md"
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
);
|
|
148
|
+
const ToggleGroup = (0, import_react.forwardRef)(function ToggleGroup2({
|
|
149
|
+
variant = "default",
|
|
150
|
+
size = "md",
|
|
151
|
+
orientation = "horizontal",
|
|
152
|
+
className,
|
|
153
|
+
children,
|
|
154
|
+
...rest
|
|
155
|
+
}, ref) {
|
|
156
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToggleGroupContext.Provider, { value: { variant, size }, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
157
|
+
import_radix_ui.ToggleGroup.Root,
|
|
158
|
+
{
|
|
159
|
+
ref,
|
|
160
|
+
orientation,
|
|
161
|
+
className: (0, import_cn.cn)(toggleGroupVariants({ orientation }), className),
|
|
162
|
+
"data-ds": "",
|
|
163
|
+
"data-ds-component": "toggle-group",
|
|
164
|
+
"data-ds-variant": variant,
|
|
165
|
+
"data-ds-size": size,
|
|
166
|
+
"data-ds-orientation": orientation,
|
|
167
|
+
...rest,
|
|
168
|
+
children
|
|
169
|
+
}
|
|
170
|
+
) });
|
|
171
|
+
});
|
|
172
|
+
ToggleGroup.displayName = "ToggleGroup";
|
|
173
|
+
const ToggleGroupItem = (0, import_react.forwardRef)(function ToggleGroupItem2({ variant: variantProp, size: sizeProp, className, children, ...rest }, ref) {
|
|
174
|
+
const context = useToggleGroupContext();
|
|
175
|
+
const variant = variantProp ?? context.variant;
|
|
176
|
+
const size = sizeProp ?? context.size;
|
|
177
|
+
const iconSizeClass = size === "sm" ? "[&>svg]:size-3.5" : "[&>svg]:size-4";
|
|
178
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
179
|
+
import_radix_ui.ToggleGroup.Item,
|
|
180
|
+
{
|
|
181
|
+
ref,
|
|
182
|
+
className: (0, import_cn.cn)(
|
|
183
|
+
toggleGroupItemVariants({ variant, size }),
|
|
184
|
+
iconSizeClass,
|
|
185
|
+
className
|
|
186
|
+
),
|
|
187
|
+
"data-ds": "",
|
|
188
|
+
"data-ds-component": "toggle-group-item",
|
|
189
|
+
"data-ds-variant": variant,
|
|
190
|
+
"data-ds-size": size,
|
|
191
|
+
...rest,
|
|
192
|
+
children
|
|
193
|
+
}
|
|
194
|
+
);
|
|
195
|
+
});
|
|
196
|
+
ToggleGroupItem.displayName = "ToggleGroupItem";
|
|
197
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
198
|
+
0 && (module.exports = {
|
|
199
|
+
ToggleGroup,
|
|
200
|
+
ToggleGroupItem,
|
|
201
|
+
toggleGroupItemVariants,
|
|
202
|
+
toggleGroupVariants,
|
|
203
|
+
useToggleGroupContext
|
|
204
|
+
});
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
import * as react from 'react';
|
|
2
|
+
import { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
3
|
+
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
4
|
+
import { ToggleGroup as ToggleGroup$1 } from 'radix-ui';
|
|
5
|
+
|
|
6
|
+
interface ToggleGroupContextValue {
|
|
7
|
+
variant: ToggleGroupVariant;
|
|
8
|
+
size: ToggleGroupSize;
|
|
9
|
+
}
|
|
10
|
+
declare function useToggleGroupContext(): ToggleGroupContextValue;
|
|
11
|
+
declare const toggleGroupVariants: (props?: ({
|
|
12
|
+
orientation?: "horizontal" | "vertical" | null | undefined;
|
|
13
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
14
|
+
declare const toggleGroupItemVariants: (props?: ({
|
|
15
|
+
variant?: "outline" | "default" | "ghost" | null | undefined;
|
|
16
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
17
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
18
|
+
type ToggleGroupVariant = "default" | "outline" | "ghost";
|
|
19
|
+
type ToggleGroupSize = "sm" | "md" | "lg";
|
|
20
|
+
type ToggleGroupOrientation = "horizontal" | "vertical";
|
|
21
|
+
interface ToggleGroupSingleProps extends Omit<ComponentPropsWithoutRef<typeof ToggleGroup$1.Root>, "type" | "asChild" | "rovingFocus" | "orientation"> {
|
|
22
|
+
/**
|
|
23
|
+
* Selection mode: only one item can be active at a time.
|
|
24
|
+
*/
|
|
25
|
+
type: "single";
|
|
26
|
+
/**
|
|
27
|
+
* The controlled value of the active item.
|
|
28
|
+
*/
|
|
29
|
+
value?: string;
|
|
30
|
+
/**
|
|
31
|
+
* The default value for uncontrolled usage.
|
|
32
|
+
*/
|
|
33
|
+
defaultValue?: string;
|
|
34
|
+
/**
|
|
35
|
+
* Callback fired when the active item changes.
|
|
36
|
+
*/
|
|
37
|
+
onValueChange?: (value: string) => void;
|
|
38
|
+
/**
|
|
39
|
+
* Visual variant applied to all items in the group.
|
|
40
|
+
* @default "default"
|
|
41
|
+
*/
|
|
42
|
+
variant?: ToggleGroupVariant;
|
|
43
|
+
/**
|
|
44
|
+
* Size applied to all items in the group.
|
|
45
|
+
* @default "md"
|
|
46
|
+
*/
|
|
47
|
+
size?: ToggleGroupSize;
|
|
48
|
+
/**
|
|
49
|
+
* Orientation of the toggle group.
|
|
50
|
+
* @default "horizontal"
|
|
51
|
+
*/
|
|
52
|
+
orientation?: ToggleGroupOrientation;
|
|
53
|
+
/**
|
|
54
|
+
* Whether the group is disabled.
|
|
55
|
+
* @default false
|
|
56
|
+
*/
|
|
57
|
+
disabled?: boolean;
|
|
58
|
+
/** Content to render inside the group (ToggleGroupItem children). */
|
|
59
|
+
children: ReactNode;
|
|
60
|
+
/** Additional CSS classes to merge. */
|
|
61
|
+
className?: string;
|
|
62
|
+
}
|
|
63
|
+
interface ToggleGroupMultipleProps extends Omit<ComponentPropsWithoutRef<typeof ToggleGroup$1.Root>, "type" | "asChild" | "rovingFocus" | "orientation"> {
|
|
64
|
+
/**
|
|
65
|
+
* Selection mode: multiple items can be active simultaneously.
|
|
66
|
+
*/
|
|
67
|
+
type: "multiple";
|
|
68
|
+
/**
|
|
69
|
+
* The controlled value of the active items.
|
|
70
|
+
*/
|
|
71
|
+
value?: string[];
|
|
72
|
+
/**
|
|
73
|
+
* The default value for uncontrolled usage.
|
|
74
|
+
*/
|
|
75
|
+
defaultValue?: string[];
|
|
76
|
+
/**
|
|
77
|
+
* Callback fired when the active items change.
|
|
78
|
+
*/
|
|
79
|
+
onValueChange?: (value: string[]) => void;
|
|
80
|
+
/**
|
|
81
|
+
* Visual variant applied to all items in the group.
|
|
82
|
+
* @default "default"
|
|
83
|
+
*/
|
|
84
|
+
variant?: ToggleGroupVariant;
|
|
85
|
+
/**
|
|
86
|
+
* Size applied to all items in the group.
|
|
87
|
+
* @default "md"
|
|
88
|
+
*/
|
|
89
|
+
size?: ToggleGroupSize;
|
|
90
|
+
/**
|
|
91
|
+
* Orientation of the toggle group.
|
|
92
|
+
* @default "horizontal"
|
|
93
|
+
*/
|
|
94
|
+
orientation?: ToggleGroupOrientation;
|
|
95
|
+
/**
|
|
96
|
+
* Whether the group is disabled.
|
|
97
|
+
* @default false
|
|
98
|
+
*/
|
|
99
|
+
disabled?: boolean;
|
|
100
|
+
/** Content to render inside the group (ToggleGroupItem children). */
|
|
101
|
+
children: ReactNode;
|
|
102
|
+
/** Additional CSS classes to merge. */
|
|
103
|
+
className?: string;
|
|
104
|
+
}
|
|
105
|
+
type ToggleGroupProps = ToggleGroupSingleProps | ToggleGroupMultipleProps;
|
|
106
|
+
interface ToggleGroupItemProps extends Omit<ComponentPropsWithoutRef<typeof ToggleGroup$1.Item>, "asChild"> {
|
|
107
|
+
/**
|
|
108
|
+
* The unique value for this item.
|
|
109
|
+
*/
|
|
110
|
+
value: string;
|
|
111
|
+
/**
|
|
112
|
+
* Override the group-level variant for this specific item.
|
|
113
|
+
*/
|
|
114
|
+
variant?: ToggleGroupVariant;
|
|
115
|
+
/**
|
|
116
|
+
* Override the group-level size for this specific item.
|
|
117
|
+
*/
|
|
118
|
+
size?: ToggleGroupSize;
|
|
119
|
+
/** Content to render inside the toggle item. */
|
|
120
|
+
children?: ReactNode;
|
|
121
|
+
/** Additional CSS classes to merge. */
|
|
122
|
+
className?: string;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* ToggleGroup — a group of toggle buttons with single or multi-select behavior.
|
|
126
|
+
*
|
|
127
|
+
* Built on Radix UI's ToggleGroup primitive for accessibility and the
|
|
128
|
+
* design system's token layer for styling. Supports both single-select
|
|
129
|
+
* (radio-like) and multi-select (checkbox-like) modes.
|
|
130
|
+
*
|
|
131
|
+
* The group shares variant and size context with its items, so you only
|
|
132
|
+
* need to set these once on the group level. Individual items can override
|
|
133
|
+
* these if needed.
|
|
134
|
+
*
|
|
135
|
+
* Accessibility:
|
|
136
|
+
* - Radix handles `role="group"` on the root
|
|
137
|
+
* - Radix handles `aria-pressed` on each item
|
|
138
|
+
* - Roving tabindex for keyboard navigation (arrow keys move between items)
|
|
139
|
+
* - Space/Enter toggles the focused item
|
|
140
|
+
* - Disabled state on group propagates to all items
|
|
141
|
+
* - Each icon-only item should have an `aria-label`
|
|
142
|
+
*
|
|
143
|
+
* @example
|
|
144
|
+
* ```tsx
|
|
145
|
+
* // Single-select: text alignment
|
|
146
|
+
* <ToggleGroup type="single" value={align} onValueChange={setAlign}>
|
|
147
|
+
* <ToggleGroupItem value="left" aria-label="Align left">
|
|
148
|
+
* <AlignLeftIcon className="size-4" />
|
|
149
|
+
* </ToggleGroupItem>
|
|
150
|
+
* <ToggleGroupItem value="center" aria-label="Align center">
|
|
151
|
+
* <AlignCenterIcon className="size-4" />
|
|
152
|
+
* </ToggleGroupItem>
|
|
153
|
+
* <ToggleGroupItem value="right" aria-label="Align right">
|
|
154
|
+
* <AlignRightIcon className="size-4" />
|
|
155
|
+
* </ToggleGroupItem>
|
|
156
|
+
* </ToggleGroup>
|
|
157
|
+
*
|
|
158
|
+
* // Multi-select: text formatting
|
|
159
|
+
* <ToggleGroup type="multiple" variant="outline" size="sm">
|
|
160
|
+
* <ToggleGroupItem value="bold" aria-label="Bold">
|
|
161
|
+
* <BoldIcon className="size-3.5" />
|
|
162
|
+
* </ToggleGroupItem>
|
|
163
|
+
* <ToggleGroupItem value="italic" aria-label="Italic">
|
|
164
|
+
* <ItalicIcon className="size-3.5" />
|
|
165
|
+
* </ToggleGroupItem>
|
|
166
|
+
* <ToggleGroupItem value="underline" aria-label="Underline">
|
|
167
|
+
* <UnderlineIcon className="size-3.5" />
|
|
168
|
+
* </ToggleGroupItem>
|
|
169
|
+
* </ToggleGroup>
|
|
170
|
+
*
|
|
171
|
+
* // Vertical orientation
|
|
172
|
+
* <ToggleGroup type="single" orientation="vertical">
|
|
173
|
+
* <ToggleGroupItem value="list">List view</ToggleGroupItem>
|
|
174
|
+
* <ToggleGroupItem value="grid">Grid view</ToggleGroupItem>
|
|
175
|
+
* <ToggleGroupItem value="board">Board view</ToggleGroupItem>
|
|
176
|
+
* </ToggleGroup>
|
|
177
|
+
*
|
|
178
|
+
* // Disabled
|
|
179
|
+
* <ToggleGroup type="single" disabled>
|
|
180
|
+
* <ToggleGroupItem value="a">A</ToggleGroupItem>
|
|
181
|
+
* <ToggleGroupItem value="b">B</ToggleGroupItem>
|
|
182
|
+
* </ToggleGroup>
|
|
183
|
+
* ```
|
|
184
|
+
*/
|
|
185
|
+
declare const ToggleGroup: react.ForwardRefExoticComponent<ToggleGroupProps & react.RefAttributes<HTMLDivElement>>;
|
|
186
|
+
/**
|
|
187
|
+
* ToggleGroupItem — an individual toggle button within a ToggleGroup.
|
|
188
|
+
*
|
|
189
|
+
* Inherits variant and size from the parent ToggleGroup context, but
|
|
190
|
+
* can override them per-item if needed.
|
|
191
|
+
*
|
|
192
|
+
* When used as an icon-only item, always provide an `aria-label` for
|
|
193
|
+
* accessibility.
|
|
194
|
+
*
|
|
195
|
+
* @example
|
|
196
|
+
* ```tsx
|
|
197
|
+
* <ToggleGroupItem value="bold" aria-label="Bold">
|
|
198
|
+
* <BoldIcon className="size-4" />
|
|
199
|
+
* </ToggleGroupItem>
|
|
200
|
+
*
|
|
201
|
+
* // With text label
|
|
202
|
+
* <ToggleGroupItem value="grid">
|
|
203
|
+
* <GridIcon className="size-4" />
|
|
204
|
+
* Grid view
|
|
205
|
+
* </ToggleGroupItem>
|
|
206
|
+
*
|
|
207
|
+
* // Override group variant/size
|
|
208
|
+
* <ToggleGroupItem value="special" variant="outline" size="lg">
|
|
209
|
+
* Special
|
|
210
|
+
* </ToggleGroupItem>
|
|
211
|
+
* ```
|
|
212
|
+
*/
|
|
213
|
+
declare const ToggleGroupItem: react.ForwardRefExoticComponent<ToggleGroupItemProps & react.RefAttributes<HTMLButtonElement>>;
|
|
214
|
+
|
|
215
|
+
export { ToggleGroup, ToggleGroupItem, type ToggleGroupItemProps, type ToggleGroupMultipleProps, type ToggleGroupOrientation, type ToggleGroupProps, type ToggleGroupSingleProps, type ToggleGroupSize, type ToggleGroupVariant, toggleGroupItemVariants, toggleGroupVariants, useToggleGroupContext };
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
import * as react from 'react';
|
|
2
|
+
import { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
3
|
+
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
4
|
+
import { ToggleGroup as ToggleGroup$1 } from 'radix-ui';
|
|
5
|
+
|
|
6
|
+
interface ToggleGroupContextValue {
|
|
7
|
+
variant: ToggleGroupVariant;
|
|
8
|
+
size: ToggleGroupSize;
|
|
9
|
+
}
|
|
10
|
+
declare function useToggleGroupContext(): ToggleGroupContextValue;
|
|
11
|
+
declare const toggleGroupVariants: (props?: ({
|
|
12
|
+
orientation?: "horizontal" | "vertical" | null | undefined;
|
|
13
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
14
|
+
declare const toggleGroupItemVariants: (props?: ({
|
|
15
|
+
variant?: "outline" | "default" | "ghost" | null | undefined;
|
|
16
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
17
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
18
|
+
type ToggleGroupVariant = "default" | "outline" | "ghost";
|
|
19
|
+
type ToggleGroupSize = "sm" | "md" | "lg";
|
|
20
|
+
type ToggleGroupOrientation = "horizontal" | "vertical";
|
|
21
|
+
interface ToggleGroupSingleProps extends Omit<ComponentPropsWithoutRef<typeof ToggleGroup$1.Root>, "type" | "asChild" | "rovingFocus" | "orientation"> {
|
|
22
|
+
/**
|
|
23
|
+
* Selection mode: only one item can be active at a time.
|
|
24
|
+
*/
|
|
25
|
+
type: "single";
|
|
26
|
+
/**
|
|
27
|
+
* The controlled value of the active item.
|
|
28
|
+
*/
|
|
29
|
+
value?: string;
|
|
30
|
+
/**
|
|
31
|
+
* The default value for uncontrolled usage.
|
|
32
|
+
*/
|
|
33
|
+
defaultValue?: string;
|
|
34
|
+
/**
|
|
35
|
+
* Callback fired when the active item changes.
|
|
36
|
+
*/
|
|
37
|
+
onValueChange?: (value: string) => void;
|
|
38
|
+
/**
|
|
39
|
+
* Visual variant applied to all items in the group.
|
|
40
|
+
* @default "default"
|
|
41
|
+
*/
|
|
42
|
+
variant?: ToggleGroupVariant;
|
|
43
|
+
/**
|
|
44
|
+
* Size applied to all items in the group.
|
|
45
|
+
* @default "md"
|
|
46
|
+
*/
|
|
47
|
+
size?: ToggleGroupSize;
|
|
48
|
+
/**
|
|
49
|
+
* Orientation of the toggle group.
|
|
50
|
+
* @default "horizontal"
|
|
51
|
+
*/
|
|
52
|
+
orientation?: ToggleGroupOrientation;
|
|
53
|
+
/**
|
|
54
|
+
* Whether the group is disabled.
|
|
55
|
+
* @default false
|
|
56
|
+
*/
|
|
57
|
+
disabled?: boolean;
|
|
58
|
+
/** Content to render inside the group (ToggleGroupItem children). */
|
|
59
|
+
children: ReactNode;
|
|
60
|
+
/** Additional CSS classes to merge. */
|
|
61
|
+
className?: string;
|
|
62
|
+
}
|
|
63
|
+
interface ToggleGroupMultipleProps extends Omit<ComponentPropsWithoutRef<typeof ToggleGroup$1.Root>, "type" | "asChild" | "rovingFocus" | "orientation"> {
|
|
64
|
+
/**
|
|
65
|
+
* Selection mode: multiple items can be active simultaneously.
|
|
66
|
+
*/
|
|
67
|
+
type: "multiple";
|
|
68
|
+
/**
|
|
69
|
+
* The controlled value of the active items.
|
|
70
|
+
*/
|
|
71
|
+
value?: string[];
|
|
72
|
+
/**
|
|
73
|
+
* The default value for uncontrolled usage.
|
|
74
|
+
*/
|
|
75
|
+
defaultValue?: string[];
|
|
76
|
+
/**
|
|
77
|
+
* Callback fired when the active items change.
|
|
78
|
+
*/
|
|
79
|
+
onValueChange?: (value: string[]) => void;
|
|
80
|
+
/**
|
|
81
|
+
* Visual variant applied to all items in the group.
|
|
82
|
+
* @default "default"
|
|
83
|
+
*/
|
|
84
|
+
variant?: ToggleGroupVariant;
|
|
85
|
+
/**
|
|
86
|
+
* Size applied to all items in the group.
|
|
87
|
+
* @default "md"
|
|
88
|
+
*/
|
|
89
|
+
size?: ToggleGroupSize;
|
|
90
|
+
/**
|
|
91
|
+
* Orientation of the toggle group.
|
|
92
|
+
* @default "horizontal"
|
|
93
|
+
*/
|
|
94
|
+
orientation?: ToggleGroupOrientation;
|
|
95
|
+
/**
|
|
96
|
+
* Whether the group is disabled.
|
|
97
|
+
* @default false
|
|
98
|
+
*/
|
|
99
|
+
disabled?: boolean;
|
|
100
|
+
/** Content to render inside the group (ToggleGroupItem children). */
|
|
101
|
+
children: ReactNode;
|
|
102
|
+
/** Additional CSS classes to merge. */
|
|
103
|
+
className?: string;
|
|
104
|
+
}
|
|
105
|
+
type ToggleGroupProps = ToggleGroupSingleProps | ToggleGroupMultipleProps;
|
|
106
|
+
interface ToggleGroupItemProps extends Omit<ComponentPropsWithoutRef<typeof ToggleGroup$1.Item>, "asChild"> {
|
|
107
|
+
/**
|
|
108
|
+
* The unique value for this item.
|
|
109
|
+
*/
|
|
110
|
+
value: string;
|
|
111
|
+
/**
|
|
112
|
+
* Override the group-level variant for this specific item.
|
|
113
|
+
*/
|
|
114
|
+
variant?: ToggleGroupVariant;
|
|
115
|
+
/**
|
|
116
|
+
* Override the group-level size for this specific item.
|
|
117
|
+
*/
|
|
118
|
+
size?: ToggleGroupSize;
|
|
119
|
+
/** Content to render inside the toggle item. */
|
|
120
|
+
children?: ReactNode;
|
|
121
|
+
/** Additional CSS classes to merge. */
|
|
122
|
+
className?: string;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* ToggleGroup — a group of toggle buttons with single or multi-select behavior.
|
|
126
|
+
*
|
|
127
|
+
* Built on Radix UI's ToggleGroup primitive for accessibility and the
|
|
128
|
+
* design system's token layer for styling. Supports both single-select
|
|
129
|
+
* (radio-like) and multi-select (checkbox-like) modes.
|
|
130
|
+
*
|
|
131
|
+
* The group shares variant and size context with its items, so you only
|
|
132
|
+
* need to set these once on the group level. Individual items can override
|
|
133
|
+
* these if needed.
|
|
134
|
+
*
|
|
135
|
+
* Accessibility:
|
|
136
|
+
* - Radix handles `role="group"` on the root
|
|
137
|
+
* - Radix handles `aria-pressed` on each item
|
|
138
|
+
* - Roving tabindex for keyboard navigation (arrow keys move between items)
|
|
139
|
+
* - Space/Enter toggles the focused item
|
|
140
|
+
* - Disabled state on group propagates to all items
|
|
141
|
+
* - Each icon-only item should have an `aria-label`
|
|
142
|
+
*
|
|
143
|
+
* @example
|
|
144
|
+
* ```tsx
|
|
145
|
+
* // Single-select: text alignment
|
|
146
|
+
* <ToggleGroup type="single" value={align} onValueChange={setAlign}>
|
|
147
|
+
* <ToggleGroupItem value="left" aria-label="Align left">
|
|
148
|
+
* <AlignLeftIcon className="size-4" />
|
|
149
|
+
* </ToggleGroupItem>
|
|
150
|
+
* <ToggleGroupItem value="center" aria-label="Align center">
|
|
151
|
+
* <AlignCenterIcon className="size-4" />
|
|
152
|
+
* </ToggleGroupItem>
|
|
153
|
+
* <ToggleGroupItem value="right" aria-label="Align right">
|
|
154
|
+
* <AlignRightIcon className="size-4" />
|
|
155
|
+
* </ToggleGroupItem>
|
|
156
|
+
* </ToggleGroup>
|
|
157
|
+
*
|
|
158
|
+
* // Multi-select: text formatting
|
|
159
|
+
* <ToggleGroup type="multiple" variant="outline" size="sm">
|
|
160
|
+
* <ToggleGroupItem value="bold" aria-label="Bold">
|
|
161
|
+
* <BoldIcon className="size-3.5" />
|
|
162
|
+
* </ToggleGroupItem>
|
|
163
|
+
* <ToggleGroupItem value="italic" aria-label="Italic">
|
|
164
|
+
* <ItalicIcon className="size-3.5" />
|
|
165
|
+
* </ToggleGroupItem>
|
|
166
|
+
* <ToggleGroupItem value="underline" aria-label="Underline">
|
|
167
|
+
* <UnderlineIcon className="size-3.5" />
|
|
168
|
+
* </ToggleGroupItem>
|
|
169
|
+
* </ToggleGroup>
|
|
170
|
+
*
|
|
171
|
+
* // Vertical orientation
|
|
172
|
+
* <ToggleGroup type="single" orientation="vertical">
|
|
173
|
+
* <ToggleGroupItem value="list">List view</ToggleGroupItem>
|
|
174
|
+
* <ToggleGroupItem value="grid">Grid view</ToggleGroupItem>
|
|
175
|
+
* <ToggleGroupItem value="board">Board view</ToggleGroupItem>
|
|
176
|
+
* </ToggleGroup>
|
|
177
|
+
*
|
|
178
|
+
* // Disabled
|
|
179
|
+
* <ToggleGroup type="single" disabled>
|
|
180
|
+
* <ToggleGroupItem value="a">A</ToggleGroupItem>
|
|
181
|
+
* <ToggleGroupItem value="b">B</ToggleGroupItem>
|
|
182
|
+
* </ToggleGroup>
|
|
183
|
+
* ```
|
|
184
|
+
*/
|
|
185
|
+
declare const ToggleGroup: react.ForwardRefExoticComponent<ToggleGroupProps & react.RefAttributes<HTMLDivElement>>;
|
|
186
|
+
/**
|
|
187
|
+
* ToggleGroupItem — an individual toggle button within a ToggleGroup.
|
|
188
|
+
*
|
|
189
|
+
* Inherits variant and size from the parent ToggleGroup context, but
|
|
190
|
+
* can override them per-item if needed.
|
|
191
|
+
*
|
|
192
|
+
* When used as an icon-only item, always provide an `aria-label` for
|
|
193
|
+
* accessibility.
|
|
194
|
+
*
|
|
195
|
+
* @example
|
|
196
|
+
* ```tsx
|
|
197
|
+
* <ToggleGroupItem value="bold" aria-label="Bold">
|
|
198
|
+
* <BoldIcon className="size-4" />
|
|
199
|
+
* </ToggleGroupItem>
|
|
200
|
+
*
|
|
201
|
+
* // With text label
|
|
202
|
+
* <ToggleGroupItem value="grid">
|
|
203
|
+
* <GridIcon className="size-4" />
|
|
204
|
+
* Grid view
|
|
205
|
+
* </ToggleGroupItem>
|
|
206
|
+
*
|
|
207
|
+
* // Override group variant/size
|
|
208
|
+
* <ToggleGroupItem value="special" variant="outline" size="lg">
|
|
209
|
+
* Special
|
|
210
|
+
* </ToggleGroupItem>
|
|
211
|
+
* ```
|
|
212
|
+
*/
|
|
213
|
+
declare const ToggleGroupItem: react.ForwardRefExoticComponent<ToggleGroupItemProps & react.RefAttributes<HTMLButtonElement>>;
|
|
214
|
+
|
|
215
|
+
export { ToggleGroup, ToggleGroupItem, type ToggleGroupItemProps, type ToggleGroupMultipleProps, type ToggleGroupOrientation, type ToggleGroupProps, type ToggleGroupSingleProps, type ToggleGroupSize, type ToggleGroupVariant, toggleGroupItemVariants, toggleGroupVariants, useToggleGroupContext };
|