@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,237 @@
|
|
|
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 progress_exports = {};
|
|
21
|
+
__export(progress_exports, {
|
|
22
|
+
Progress: () => Progress,
|
|
23
|
+
progressIndicatorVariants: () => progressIndicatorVariants,
|
|
24
|
+
progressTrackVariants: () => progressTrackVariants
|
|
25
|
+
});
|
|
26
|
+
module.exports = __toCommonJS(progress_exports);
|
|
27
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
28
|
+
var import_cn = require("../utils/cn.cjs");
|
|
29
|
+
var import_class_variance_authority = require("class-variance-authority");
|
|
30
|
+
var import_react = require("react");
|
|
31
|
+
const progressTrackVariants = (0, import_class_variance_authority.cva)(
|
|
32
|
+
// Base styles — shared across all variants and sizes
|
|
33
|
+
[
|
|
34
|
+
// Layout
|
|
35
|
+
"relative w-full overflow-hidden",
|
|
36
|
+
// Shape
|
|
37
|
+
"rounded-full",
|
|
38
|
+
// Background
|
|
39
|
+
"bg-muted"
|
|
40
|
+
],
|
|
41
|
+
{
|
|
42
|
+
variants: {
|
|
43
|
+
// -----------------------------------------------------------------
|
|
44
|
+
// Size Variants
|
|
45
|
+
// -----------------------------------------------------------------
|
|
46
|
+
size: {
|
|
47
|
+
/**
|
|
48
|
+
* Small — thin bar for subtle progress indicators.
|
|
49
|
+
* Height: 6px
|
|
50
|
+
*/
|
|
51
|
+
sm: "h-1.5",
|
|
52
|
+
/**
|
|
53
|
+
* Medium — default size for most progress bars.
|
|
54
|
+
* Height: 8px
|
|
55
|
+
*/
|
|
56
|
+
md: "h-2",
|
|
57
|
+
/**
|
|
58
|
+
* Large — prominent bar for hero progress, file uploads.
|
|
59
|
+
* Height: 12px
|
|
60
|
+
*/
|
|
61
|
+
lg: "h-3"
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
defaultVariants: {
|
|
65
|
+
size: "md"
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
);
|
|
69
|
+
const progressIndicatorVariants = (0, import_class_variance_authority.cva)(
|
|
70
|
+
// Base styles — shared across all variants
|
|
71
|
+
[
|
|
72
|
+
// Layout
|
|
73
|
+
"h-full",
|
|
74
|
+
// Shape — match track rounding
|
|
75
|
+
"rounded-full",
|
|
76
|
+
// Transition for value changes
|
|
77
|
+
"transition-[width] duration-standard ease-standard"
|
|
78
|
+
],
|
|
79
|
+
{
|
|
80
|
+
variants: {
|
|
81
|
+
// -----------------------------------------------------------------
|
|
82
|
+
// Visual Variants
|
|
83
|
+
// -----------------------------------------------------------------
|
|
84
|
+
variant: {
|
|
85
|
+
/**
|
|
86
|
+
* Default — uses primary brand color.
|
|
87
|
+
*/
|
|
88
|
+
default: "bg-primary",
|
|
89
|
+
/**
|
|
90
|
+
* Primary — explicit primary brand color.
|
|
91
|
+
*/
|
|
92
|
+
primary: "bg-primary",
|
|
93
|
+
/**
|
|
94
|
+
* Success — positive/complete progress.
|
|
95
|
+
*/
|
|
96
|
+
success: "bg-success",
|
|
97
|
+
/**
|
|
98
|
+
* Danger — error/critical progress (e.g., storage almost full).
|
|
99
|
+
*/
|
|
100
|
+
danger: "bg-danger",
|
|
101
|
+
/**
|
|
102
|
+
* Warning — caution progress (e.g., approaching limit).
|
|
103
|
+
*/
|
|
104
|
+
warning: "bg-warning",
|
|
105
|
+
/**
|
|
106
|
+
* Info — informational progress.
|
|
107
|
+
*/
|
|
108
|
+
info: "bg-info"
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
defaultVariants: {
|
|
112
|
+
variant: "default"
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
);
|
|
116
|
+
const stripedStyle = {
|
|
117
|
+
backgroundImage: "linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)",
|
|
118
|
+
backgroundSize: "1rem 1rem"
|
|
119
|
+
};
|
|
120
|
+
const PROGRESS_STYLE_ID = "unified-ui-progress-keyframes";
|
|
121
|
+
const PROGRESS_KEYFRAMES_CSS = `
|
|
122
|
+
@keyframes unified-ui-progress-indeterminate {
|
|
123
|
+
0% { transform: translateX(-100%); width: 50%; }
|
|
124
|
+
50% { transform: translateX(50%); width: 30%; }
|
|
125
|
+
100% { transform: translateX(200%); width: 50%; }
|
|
126
|
+
}
|
|
127
|
+
@keyframes unified-ui-progress-stripe-slide {
|
|
128
|
+
0% { background-position: 1rem 0; }
|
|
129
|
+
100% { background-position: 0 0; }
|
|
130
|
+
}
|
|
131
|
+
`;
|
|
132
|
+
function useProgressKeyframes() {
|
|
133
|
+
(0, import_react.useEffect)(() => {
|
|
134
|
+
if (document.getElementById(PROGRESS_STYLE_ID)) {
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
137
|
+
const style = document.createElement("style");
|
|
138
|
+
style.id = PROGRESS_STYLE_ID;
|
|
139
|
+
style.textContent = PROGRESS_KEYFRAMES_CSS;
|
|
140
|
+
document.head.appendChild(style);
|
|
141
|
+
}, []);
|
|
142
|
+
}
|
|
143
|
+
const Progress = (0, import_react.forwardRef)(
|
|
144
|
+
function Progress2({
|
|
145
|
+
value = 0,
|
|
146
|
+
max = 100,
|
|
147
|
+
min = 0,
|
|
148
|
+
variant = "default",
|
|
149
|
+
size = "md",
|
|
150
|
+
indeterminate = false,
|
|
151
|
+
striped = false,
|
|
152
|
+
animated = false,
|
|
153
|
+
showLabel = false,
|
|
154
|
+
label,
|
|
155
|
+
formatLabel,
|
|
156
|
+
"aria-label": ariaLabel,
|
|
157
|
+
"aria-labelledby": ariaLabelledBy,
|
|
158
|
+
className,
|
|
159
|
+
indicatorClassName,
|
|
160
|
+
...rest
|
|
161
|
+
}, ref) {
|
|
162
|
+
useProgressKeyframes();
|
|
163
|
+
const clampedValue = Math.max(min, Math.min(value, max));
|
|
164
|
+
const range = max - min;
|
|
165
|
+
const percentage = range > 0 ? (clampedValue - min) / range * 100 : 0;
|
|
166
|
+
const defaultFormatLabel = (v, m) => {
|
|
167
|
+
const pct = m - min > 0 ? (v - min) / (m - min) * 100 : 0;
|
|
168
|
+
return `${Math.round(pct)}%`;
|
|
169
|
+
};
|
|
170
|
+
const labelFormatter = formatLabel ?? defaultFormatLabel;
|
|
171
|
+
const _labelText = label ?? labelFormatter(clampedValue, max);
|
|
172
|
+
const indicatorStyle = {
|
|
173
|
+
...indeterminate ? {
|
|
174
|
+
animation: "unified-ui-progress-indeterminate 1.5s ease-in-out infinite"
|
|
175
|
+
} : {
|
|
176
|
+
width: `${percentage}%`
|
|
177
|
+
},
|
|
178
|
+
...striped ? stripedStyle : {},
|
|
179
|
+
...striped && animated ? {
|
|
180
|
+
animation: indeterminate ? "unified-ui-progress-indeterminate 1.5s ease-in-out infinite" : "unified-ui-progress-stripe-slide 0.6s linear infinite"
|
|
181
|
+
} : {}
|
|
182
|
+
};
|
|
183
|
+
const ariaAttrs = {
|
|
184
|
+
role: "progressbar",
|
|
185
|
+
"aria-valuemin": min,
|
|
186
|
+
"aria-valuemax": max,
|
|
187
|
+
...ariaLabel ? { "aria-label": ariaLabel } : {},
|
|
188
|
+
...ariaLabelledBy ? { "aria-labelledby": ariaLabelledBy } : {}
|
|
189
|
+
};
|
|
190
|
+
if (!indeterminate) {
|
|
191
|
+
ariaAttrs["aria-valuenow"] = clampedValue;
|
|
192
|
+
}
|
|
193
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
194
|
+
"div",
|
|
195
|
+
{
|
|
196
|
+
"data-ds": "",
|
|
197
|
+
"data-ds-component": "progress",
|
|
198
|
+
"data-ds-variant": variant,
|
|
199
|
+
"data-ds-size": size,
|
|
200
|
+
...indeterminate ? { "data-ds-indeterminate": "" } : {},
|
|
201
|
+
children: [
|
|
202
|
+
showLabel && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center justify-between mb-1.5", children: [
|
|
203
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "text-xs font-medium leading-4 text-foreground", children: label ?? "" }),
|
|
204
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "text-xs font-medium leading-4 text-muted-foreground tabular-nums", children: typeof label === "string" || !label ? labelFormatter(clampedValue, max) : "" })
|
|
205
|
+
] }),
|
|
206
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
207
|
+
"div",
|
|
208
|
+
{
|
|
209
|
+
ref,
|
|
210
|
+
className: (0, import_cn.cn)(progressTrackVariants({ size }), className),
|
|
211
|
+
...ariaAttrs,
|
|
212
|
+
...rest,
|
|
213
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
214
|
+
"div",
|
|
215
|
+
{
|
|
216
|
+
className: (0, import_cn.cn)(
|
|
217
|
+
progressIndicatorVariants({ variant }),
|
|
218
|
+
indeterminate && "absolute",
|
|
219
|
+
indicatorClassName
|
|
220
|
+
),
|
|
221
|
+
style: indicatorStyle
|
|
222
|
+
}
|
|
223
|
+
)
|
|
224
|
+
}
|
|
225
|
+
)
|
|
226
|
+
]
|
|
227
|
+
}
|
|
228
|
+
);
|
|
229
|
+
}
|
|
230
|
+
);
|
|
231
|
+
Progress.displayName = "Progress";
|
|
232
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
233
|
+
0 && (module.exports = {
|
|
234
|
+
Progress,
|
|
235
|
+
progressIndicatorVariants,
|
|
236
|
+
progressTrackVariants
|
|
237
|
+
});
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import * as react from 'react';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
4
|
+
import { VariantProps } from 'class-variance-authority';
|
|
5
|
+
|
|
6
|
+
declare const progressTrackVariants: (props?: ({
|
|
7
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
8
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
9
|
+
declare const progressIndicatorVariants: (props?: ({
|
|
10
|
+
variant?: "info" | "success" | "warning" | "danger" | "default" | "primary" | null | undefined;
|
|
11
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
12
|
+
type ProgressVariant = "default" | "primary" | "success" | "danger" | "warning" | "info";
|
|
13
|
+
type ProgressSize = "sm" | "md" | "lg";
|
|
14
|
+
interface ProgressProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "children">, VariantProps<typeof progressTrackVariants>, VariantProps<typeof progressIndicatorVariants> {
|
|
15
|
+
/**
|
|
16
|
+
* Current progress value (0–100).
|
|
17
|
+
* Ignored when `indeterminate` is true.
|
|
18
|
+
* @default 0
|
|
19
|
+
*/
|
|
20
|
+
value?: number;
|
|
21
|
+
/**
|
|
22
|
+
* Maximum progress value.
|
|
23
|
+
* @default 100
|
|
24
|
+
*/
|
|
25
|
+
max?: number;
|
|
26
|
+
/**
|
|
27
|
+
* Minimum progress value.
|
|
28
|
+
* @default 0
|
|
29
|
+
*/
|
|
30
|
+
min?: number;
|
|
31
|
+
/**
|
|
32
|
+
* Visual variant of the progress indicator.
|
|
33
|
+
* @default "default"
|
|
34
|
+
*/
|
|
35
|
+
variant?: ProgressVariant;
|
|
36
|
+
/**
|
|
37
|
+
* Size of the progress bar.
|
|
38
|
+
* @default "md"
|
|
39
|
+
*/
|
|
40
|
+
size?: ProgressSize;
|
|
41
|
+
/**
|
|
42
|
+
* Whether the progress is indeterminate (unknown completion).
|
|
43
|
+
* When true, the bar displays a looping sliding animation
|
|
44
|
+
* and `value` is ignored.
|
|
45
|
+
* @default false
|
|
46
|
+
*/
|
|
47
|
+
indeterminate?: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Whether to display diagonal stripes on the indicator.
|
|
50
|
+
* @default false
|
|
51
|
+
*/
|
|
52
|
+
striped?: boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Whether the stripes should animate (slide).
|
|
55
|
+
* Only applies when `striped` is true.
|
|
56
|
+
* @default false
|
|
57
|
+
*/
|
|
58
|
+
animated?: boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Whether to display the progress label.
|
|
61
|
+
* Shows the percentage value or custom label above the bar.
|
|
62
|
+
* @default false
|
|
63
|
+
*/
|
|
64
|
+
showLabel?: boolean;
|
|
65
|
+
/**
|
|
66
|
+
* Custom label text displayed above or inside the bar.
|
|
67
|
+
* When provided alongside `showLabel`, replaces the default "X%" text.
|
|
68
|
+
*/
|
|
69
|
+
label?: ReactNode;
|
|
70
|
+
/**
|
|
71
|
+
* Custom format function for the value label.
|
|
72
|
+
* Receives the current value and max, returns a string.
|
|
73
|
+
* @default (value, max) => `${Math.round((value / max) * 100)}%`
|
|
74
|
+
*/
|
|
75
|
+
formatLabel?: (value: number, max: number) => string;
|
|
76
|
+
/**
|
|
77
|
+
* Accessible label for the progress bar.
|
|
78
|
+
* Use when there's no visible label to describe what's loading.
|
|
79
|
+
*/
|
|
80
|
+
"aria-label"?: string;
|
|
81
|
+
/**
|
|
82
|
+
* ID of the element that labels the progress bar.
|
|
83
|
+
*/
|
|
84
|
+
"aria-labelledby"?: string;
|
|
85
|
+
/** Additional CSS classes for the track (outer container). */
|
|
86
|
+
className?: string;
|
|
87
|
+
/** Additional CSS classes for the indicator (inner fill). */
|
|
88
|
+
indicatorClassName?: string;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Progress — a linear progress bar for displaying completion or loading state.
|
|
92
|
+
*
|
|
93
|
+
* Built on the design system's token layer with CVA for variant composition.
|
|
94
|
+
* All colors, radii, spacing, and transitions come from CSS custom properties
|
|
95
|
+
* defined in design-system.css.
|
|
96
|
+
*
|
|
97
|
+
* Supports both determinate (with a known value) and indeterminate (unknown
|
|
98
|
+
* completion) modes. Add stripes and animation for visual emphasis.
|
|
99
|
+
*
|
|
100
|
+
* Accessibility:
|
|
101
|
+
* - Uses `role="progressbar"` with proper ARIA attributes
|
|
102
|
+
* - `aria-valuenow`, `aria-valuemin`, `aria-valuemax` for determinate mode
|
|
103
|
+
* - `aria-valuenow` is omitted for indeterminate mode (per WAI-ARIA spec)
|
|
104
|
+
* - Supports `aria-label` and `aria-labelledby` for screen readers
|
|
105
|
+
*
|
|
106
|
+
* @example
|
|
107
|
+
* ```tsx
|
|
108
|
+
* // Basic determinate progress
|
|
109
|
+
* <Progress value={60} />
|
|
110
|
+
*
|
|
111
|
+
* // With variant and label
|
|
112
|
+
* <Progress value={80} variant="success" showLabel />
|
|
113
|
+
*
|
|
114
|
+
* // Indeterminate (loading)
|
|
115
|
+
* <Progress indeterminate />
|
|
116
|
+
*
|
|
117
|
+
* // Striped with animation
|
|
118
|
+
* <Progress value={45} striped animated />
|
|
119
|
+
*
|
|
120
|
+
* // Large with custom label
|
|
121
|
+
* <Progress value={30} size="lg" showLabel label="Uploading files..." />
|
|
122
|
+
*
|
|
123
|
+
* // Custom format
|
|
124
|
+
* <Progress
|
|
125
|
+
* value={750}
|
|
126
|
+
* max={1000}
|
|
127
|
+
* showLabel
|
|
128
|
+
* formatLabel={(v, m) => `${v}/${m} MB`}
|
|
129
|
+
* />
|
|
130
|
+
*
|
|
131
|
+
* // Danger variant (e.g. storage warning)
|
|
132
|
+
* <Progress value={92} variant="danger" showLabel />
|
|
133
|
+
* ```
|
|
134
|
+
*/
|
|
135
|
+
declare const Progress: react.ForwardRefExoticComponent<ProgressProps & react.RefAttributes<HTMLDivElement>>;
|
|
136
|
+
|
|
137
|
+
export { Progress, type ProgressProps, type ProgressSize, type ProgressVariant, progressIndicatorVariants, progressTrackVariants };
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import * as react from 'react';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
4
|
+
import { VariantProps } from 'class-variance-authority';
|
|
5
|
+
|
|
6
|
+
declare const progressTrackVariants: (props?: ({
|
|
7
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
8
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
9
|
+
declare const progressIndicatorVariants: (props?: ({
|
|
10
|
+
variant?: "info" | "success" | "warning" | "danger" | "default" | "primary" | null | undefined;
|
|
11
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
12
|
+
type ProgressVariant = "default" | "primary" | "success" | "danger" | "warning" | "info";
|
|
13
|
+
type ProgressSize = "sm" | "md" | "lg";
|
|
14
|
+
interface ProgressProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "children">, VariantProps<typeof progressTrackVariants>, VariantProps<typeof progressIndicatorVariants> {
|
|
15
|
+
/**
|
|
16
|
+
* Current progress value (0–100).
|
|
17
|
+
* Ignored when `indeterminate` is true.
|
|
18
|
+
* @default 0
|
|
19
|
+
*/
|
|
20
|
+
value?: number;
|
|
21
|
+
/**
|
|
22
|
+
* Maximum progress value.
|
|
23
|
+
* @default 100
|
|
24
|
+
*/
|
|
25
|
+
max?: number;
|
|
26
|
+
/**
|
|
27
|
+
* Minimum progress value.
|
|
28
|
+
* @default 0
|
|
29
|
+
*/
|
|
30
|
+
min?: number;
|
|
31
|
+
/**
|
|
32
|
+
* Visual variant of the progress indicator.
|
|
33
|
+
* @default "default"
|
|
34
|
+
*/
|
|
35
|
+
variant?: ProgressVariant;
|
|
36
|
+
/**
|
|
37
|
+
* Size of the progress bar.
|
|
38
|
+
* @default "md"
|
|
39
|
+
*/
|
|
40
|
+
size?: ProgressSize;
|
|
41
|
+
/**
|
|
42
|
+
* Whether the progress is indeterminate (unknown completion).
|
|
43
|
+
* When true, the bar displays a looping sliding animation
|
|
44
|
+
* and `value` is ignored.
|
|
45
|
+
* @default false
|
|
46
|
+
*/
|
|
47
|
+
indeterminate?: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Whether to display diagonal stripes on the indicator.
|
|
50
|
+
* @default false
|
|
51
|
+
*/
|
|
52
|
+
striped?: boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Whether the stripes should animate (slide).
|
|
55
|
+
* Only applies when `striped` is true.
|
|
56
|
+
* @default false
|
|
57
|
+
*/
|
|
58
|
+
animated?: boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Whether to display the progress label.
|
|
61
|
+
* Shows the percentage value or custom label above the bar.
|
|
62
|
+
* @default false
|
|
63
|
+
*/
|
|
64
|
+
showLabel?: boolean;
|
|
65
|
+
/**
|
|
66
|
+
* Custom label text displayed above or inside the bar.
|
|
67
|
+
* When provided alongside `showLabel`, replaces the default "X%" text.
|
|
68
|
+
*/
|
|
69
|
+
label?: ReactNode;
|
|
70
|
+
/**
|
|
71
|
+
* Custom format function for the value label.
|
|
72
|
+
* Receives the current value and max, returns a string.
|
|
73
|
+
* @default (value, max) => `${Math.round((value / max) * 100)}%`
|
|
74
|
+
*/
|
|
75
|
+
formatLabel?: (value: number, max: number) => string;
|
|
76
|
+
/**
|
|
77
|
+
* Accessible label for the progress bar.
|
|
78
|
+
* Use when there's no visible label to describe what's loading.
|
|
79
|
+
*/
|
|
80
|
+
"aria-label"?: string;
|
|
81
|
+
/**
|
|
82
|
+
* ID of the element that labels the progress bar.
|
|
83
|
+
*/
|
|
84
|
+
"aria-labelledby"?: string;
|
|
85
|
+
/** Additional CSS classes for the track (outer container). */
|
|
86
|
+
className?: string;
|
|
87
|
+
/** Additional CSS classes for the indicator (inner fill). */
|
|
88
|
+
indicatorClassName?: string;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Progress — a linear progress bar for displaying completion or loading state.
|
|
92
|
+
*
|
|
93
|
+
* Built on the design system's token layer with CVA for variant composition.
|
|
94
|
+
* All colors, radii, spacing, and transitions come from CSS custom properties
|
|
95
|
+
* defined in design-system.css.
|
|
96
|
+
*
|
|
97
|
+
* Supports both determinate (with a known value) and indeterminate (unknown
|
|
98
|
+
* completion) modes. Add stripes and animation for visual emphasis.
|
|
99
|
+
*
|
|
100
|
+
* Accessibility:
|
|
101
|
+
* - Uses `role="progressbar"` with proper ARIA attributes
|
|
102
|
+
* - `aria-valuenow`, `aria-valuemin`, `aria-valuemax` for determinate mode
|
|
103
|
+
* - `aria-valuenow` is omitted for indeterminate mode (per WAI-ARIA spec)
|
|
104
|
+
* - Supports `aria-label` and `aria-labelledby` for screen readers
|
|
105
|
+
*
|
|
106
|
+
* @example
|
|
107
|
+
* ```tsx
|
|
108
|
+
* // Basic determinate progress
|
|
109
|
+
* <Progress value={60} />
|
|
110
|
+
*
|
|
111
|
+
* // With variant and label
|
|
112
|
+
* <Progress value={80} variant="success" showLabel />
|
|
113
|
+
*
|
|
114
|
+
* // Indeterminate (loading)
|
|
115
|
+
* <Progress indeterminate />
|
|
116
|
+
*
|
|
117
|
+
* // Striped with animation
|
|
118
|
+
* <Progress value={45} striped animated />
|
|
119
|
+
*
|
|
120
|
+
* // Large with custom label
|
|
121
|
+
* <Progress value={30} size="lg" showLabel label="Uploading files..." />
|
|
122
|
+
*
|
|
123
|
+
* // Custom format
|
|
124
|
+
* <Progress
|
|
125
|
+
* value={750}
|
|
126
|
+
* max={1000}
|
|
127
|
+
* showLabel
|
|
128
|
+
* formatLabel={(v, m) => `${v}/${m} MB`}
|
|
129
|
+
* />
|
|
130
|
+
*
|
|
131
|
+
* // Danger variant (e.g. storage warning)
|
|
132
|
+
* <Progress value={92} variant="danger" showLabel />
|
|
133
|
+
* ```
|
|
134
|
+
*/
|
|
135
|
+
declare const Progress: react.ForwardRefExoticComponent<ProgressProps & react.RefAttributes<HTMLDivElement>>;
|
|
136
|
+
|
|
137
|
+
export { Progress, type ProgressProps, type ProgressSize, type ProgressVariant, progressIndicatorVariants, progressTrackVariants };
|