@zentauri-ui/zentauri-components 1.6.3 → 1.7.1
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/README.md +40 -6
- package/cli/cli.integration.test.ts +8 -0
- package/cli/index.mjs +47 -1
- package/cli/registry.json +2 -0
- package/dist/charts/area.js +11 -10
- package/dist/charts/area.js.map +1 -1
- package/dist/charts/area.mjs +4 -3
- package/dist/charts/area.mjs.map +1 -1
- package/dist/charts/bar.js +10 -9
- package/dist/charts/bar.js.map +1 -1
- package/dist/charts/bar.mjs +4 -3
- package/dist/charts/bar.mjs.map +1 -1
- package/dist/charts/bubble.js +10 -9
- package/dist/charts/bubble.js.map +1 -1
- package/dist/charts/bubble.mjs +4 -3
- package/dist/charts/bubble.mjs.map +1 -1
- package/dist/charts/line.js +10 -9
- package/dist/charts/line.js.map +1 -1
- package/dist/charts/line.mjs +4 -3
- package/dist/charts/line.mjs.map +1 -1
- package/dist/charts/pie.js +6 -5
- package/dist/charts/pie.js.map +1 -1
- package/dist/charts/pie.mjs +3 -2
- package/dist/charts/pie.mjs.map +1 -1
- package/dist/charts/shared/chart-frame.d.ts.map +1 -1
- package/dist/{chunk-QSIJKHC5.mjs → chunk-4XVNQ7IY.mjs} +223 -214
- package/dist/chunk-4XVNQ7IY.mjs.map +1 -0
- package/dist/chunk-4ZKBLVQX.js +248 -0
- package/dist/chunk-4ZKBLVQX.js.map +1 -0
- package/dist/chunk-6QQUQLPB.js +107 -0
- package/dist/chunk-6QQUQLPB.js.map +1 -0
- package/dist/chunk-ABOZ5QIX.js +84 -0
- package/dist/chunk-ABOZ5QIX.js.map +1 -0
- package/dist/chunk-ACGVDY5J.mjs +220 -0
- package/dist/chunk-ACGVDY5J.mjs.map +1 -0
- package/dist/{chunk-PPVJ4INP.mjs → chunk-ASJQP53L.mjs} +3 -3
- package/dist/{chunk-PPVJ4INP.mjs.map → chunk-ASJQP53L.mjs.map} +1 -1
- package/dist/{chunk-D55YIHBN.js → chunk-BTJYXKCW.js} +223 -214
- package/dist/chunk-BTJYXKCW.js.map +1 -0
- package/dist/{chunk-MM3P52WS.js → chunk-CL55KGDF.js} +56 -52
- package/dist/chunk-CL55KGDF.js.map +1 -0
- package/dist/chunk-CSFLMMAT.mjs +198 -0
- package/dist/chunk-CSFLMMAT.mjs.map +1 -0
- package/dist/chunk-EDARAO7X.js +206 -0
- package/dist/chunk-EDARAO7X.js.map +1 -0
- package/dist/chunk-EIRCCTNA.js +175 -0
- package/dist/chunk-EIRCCTNA.js.map +1 -0
- package/dist/chunk-EN4VLNBF.js +197 -0
- package/dist/chunk-EN4VLNBF.js.map +1 -0
- package/dist/chunk-FHLZH3PB.mjs +326 -0
- package/dist/chunk-FHLZH3PB.mjs.map +1 -0
- package/dist/chunk-FXYPRPAT.mjs +35 -0
- package/dist/chunk-FXYPRPAT.mjs.map +1 -0
- package/dist/{chunk-SPX2QDIB.mjs → chunk-G2WARVAM.mjs} +8 -4
- package/dist/chunk-G2WARVAM.mjs.map +1 -0
- package/dist/chunk-HCGSEPOD.mjs +196 -0
- package/dist/chunk-HCGSEPOD.mjs.map +1 -0
- package/dist/chunk-HDO5ZM2S.mjs +82 -0
- package/dist/chunk-HDO5ZM2S.mjs.map +1 -0
- package/dist/chunk-HMNIH3KJ.mjs +277 -0
- package/dist/chunk-HMNIH3KJ.mjs.map +1 -0
- package/dist/chunk-HNLQXHSQ.mjs +263 -0
- package/dist/chunk-HNLQXHSQ.mjs.map +1 -0
- package/dist/{chunk-M6FS7X54.mjs → chunk-ITVMSCOJ.mjs} +56 -52
- package/dist/chunk-ITVMSCOJ.mjs.map +1 -0
- package/dist/chunk-K6IZANTI.mjs +80 -0
- package/dist/chunk-K6IZANTI.mjs.map +1 -0
- package/dist/chunk-K7TCW5PJ.js +338 -0
- package/dist/chunk-K7TCW5PJ.js.map +1 -0
- package/dist/chunk-KTGV76M3.mjs +325 -0
- package/dist/chunk-KTGV76M3.mjs.map +1 -0
- package/dist/chunk-MTTXLC2V.mjs +100 -0
- package/dist/chunk-MTTXLC2V.mjs.map +1 -0
- package/dist/{chunk-JOMSI4WH.js → chunk-NFEA5TN2.js} +52 -47
- package/dist/chunk-NFEA5TN2.js.map +1 -0
- package/dist/chunk-NHQ3S4Y6.mjs +282 -0
- package/dist/chunk-NHQ3S4Y6.mjs.map +1 -0
- package/dist/{chunk-OVTWPGMW.mjs → chunk-NMQAHUYA.mjs} +52 -47
- package/dist/chunk-NMQAHUYA.mjs.map +1 -0
- package/dist/{chunk-MWR5DIA5.mjs → chunk-OULU7OC4.mjs} +3 -3
- package/dist/{chunk-MWR5DIA5.mjs.map → chunk-OULU7OC4.mjs.map} +1 -1
- package/dist/chunk-OZHETX4J.mjs +169 -0
- package/dist/chunk-OZHETX4J.mjs.map +1 -0
- package/dist/chunk-OZMSE44N.mjs +235 -0
- package/dist/chunk-OZMSE44N.mjs.map +1 -0
- package/dist/chunk-P5WLYJ2C.mjs +272 -0
- package/dist/chunk-P5WLYJ2C.mjs.map +1 -0
- package/dist/chunk-PHEUJ4EF.js +84 -0
- package/dist/chunk-PHEUJ4EF.js.map +1 -0
- package/dist/chunk-PMWRJ2KS.mjs +192 -0
- package/dist/chunk-PMWRJ2KS.mjs.map +1 -0
- package/dist/chunk-PR4QXFJT.js +132 -0
- package/dist/chunk-PR4QXFJT.js.map +1 -0
- package/dist/chunk-QAJOE3HJ.js +281 -0
- package/dist/chunk-QAJOE3HJ.js.map +1 -0
- package/dist/chunk-QBPVJH4P.mjs +128 -0
- package/dist/chunk-QBPVJH4P.mjs.map +1 -0
- package/dist/{chunk-MTJRPLMG.js → chunk-QNUDODDX.js} +8 -4
- package/dist/chunk-QNUDODDX.js.map +1 -0
- package/dist/{chunk-DO2LEXUY.js → chunk-QQ6F4LZK.js} +5 -5
- package/dist/{chunk-DO2LEXUY.js.map → chunk-QQ6F4LZK.js.map} +1 -1
- package/dist/chunk-QXHS3HHZ.mjs +340 -0
- package/dist/chunk-QXHS3HHZ.mjs.map +1 -0
- package/dist/chunk-QYLTKBH7.js +338 -0
- package/dist/chunk-QYLTKBH7.js.map +1 -0
- package/dist/chunk-TTTYW3TR.js +207 -0
- package/dist/chunk-TTTYW3TR.js.map +1 -0
- package/dist/chunk-W3QRRWQX.js +37 -0
- package/dist/chunk-W3QRRWQX.js.map +1 -0
- package/dist/chunk-WPXQHWPV.js +232 -0
- package/dist/chunk-WPXQHWPV.js.map +1 -0
- package/dist/chunk-XRDVD2EN.js +288 -0
- package/dist/chunk-XRDVD2EN.js.map +1 -0
- package/dist/chunk-XYEMP4K7.js +273 -0
- package/dist/chunk-XYEMP4K7.js.map +1 -0
- package/dist/chunk-YAO62VH2.js +342 -0
- package/dist/chunk-YAO62VH2.js.map +1 -0
- package/dist/{chunk-PVTTWOYV.js → chunk-Z6S36PDD.js} +7 -7
- package/dist/{chunk-PVTTWOYV.js.map → chunk-Z6S36PDD.js.map} +1 -1
- package/dist/chunk-ZYKJC5HH.js +296 -0
- package/dist/chunk-ZYKJC5HH.js.map +1 -0
- package/dist/design-system/accordion.d.ts +70 -0
- package/dist/design-system/accordion.d.ts.map +1 -0
- package/dist/design-system/alert.d.ts +39 -0
- package/dist/design-system/alert.d.ts.map +1 -0
- package/dist/design-system/avatar.d.ts +36 -0
- package/dist/design-system/avatar.d.ts.map +1 -0
- package/dist/design-system/badge.d.ts +71 -0
- package/dist/design-system/badge.d.ts.map +1 -0
- package/dist/design-system/breadcrumb.d.ts +27 -0
- package/dist/design-system/breadcrumb.d.ts.map +1 -0
- package/dist/design-system/button.d.ts +48 -0
- package/dist/design-system/button.d.ts.map +1 -0
- package/dist/design-system/card.d.ts +65 -0
- package/dist/design-system/card.d.ts.map +1 -0
- package/dist/design-system/checkbox.d.ts +32 -0
- package/dist/design-system/checkbox.d.ts.map +1 -0
- package/dist/design-system/divider.d.ts +45 -0
- package/dist/design-system/divider.d.ts.map +1 -0
- package/dist/design-system/drawer.d.ts +67 -0
- package/dist/design-system/drawer.d.ts.map +1 -0
- package/dist/design-system/dropdown.d.ts +79 -0
- package/dist/design-system/dropdown.d.ts.map +1 -0
- package/dist/design-system/dynamic-stepper.d.ts +29 -0
- package/dist/design-system/dynamic-stepper.d.ts.map +1 -0
- package/dist/design-system/empty-state.d.ts +29 -0
- package/dist/design-system/empty-state.d.ts.map +1 -0
- package/dist/design-system/file-upload.d.ts +19 -0
- package/dist/design-system/file-upload.d.ts.map +1 -0
- package/dist/design-system/index.d.ts +32 -0
- package/dist/design-system/index.d.ts.map +1 -0
- package/dist/design-system/inputs.d.ts +31 -0
- package/dist/design-system/inputs.d.ts.map +1 -0
- package/dist/design-system/modal.d.ts +66 -0
- package/dist/design-system/modal.d.ts.map +1 -0
- package/dist/design-system/pagination.d.ts +65 -0
- package/dist/design-system/pagination.d.ts.map +1 -0
- package/dist/design-system/progress.d.ts +57 -0
- package/dist/design-system/progress.d.ts.map +1 -0
- package/dist/design-system/radio-group.d.ts +37 -0
- package/dist/design-system/radio-group.d.ts.map +1 -0
- package/dist/design-system/select.d.ts +92 -0
- package/dist/design-system/select.d.ts.map +1 -0
- package/dist/design-system/skeleton.d.ts +104 -0
- package/dist/design-system/skeleton.d.ts.map +1 -0
- package/dist/design-system/slider.d.ts +44 -0
- package/dist/design-system/slider.d.ts.map +1 -0
- package/dist/design-system/spinner.d.ts +39 -0
- package/dist/design-system/spinner.d.ts.map +1 -0
- package/dist/design-system/stepper.d.ts +42 -0
- package/dist/design-system/stepper.d.ts.map +1 -0
- package/dist/design-system/table.d.ts +77 -0
- package/dist/design-system/table.d.ts.map +1 -0
- package/dist/design-system/tabs.d.ts +49 -0
- package/dist/design-system/tabs.d.ts.map +1 -0
- package/dist/design-system/toast.d.ts +43 -0
- package/dist/design-system/toast.d.ts.map +1 -0
- package/dist/design-system/toggle.d.ts +73 -0
- package/dist/design-system/toggle.d.ts.map +1 -0
- package/dist/design-system/tokens.d.ts +15 -0
- package/dist/design-system/tokens.d.ts.map +1 -0
- package/dist/design-system/tooltip.d.ts +41 -0
- package/dist/design-system/tooltip.d.ts.map +1 -0
- package/dist/design-system/typography.d.ts +42 -0
- package/dist/design-system/typography.d.ts.map +1 -0
- package/dist/hooks/useResizeObserver.js +6 -31
- package/dist/hooks/useResizeObserver.js.map +1 -1
- package/dist/hooks/useResizeObserver.mjs +1 -33
- package/dist/hooks/useResizeObserver.mjs.map +1 -1
- package/dist/ui/accordion/animated.js +7 -7
- package/dist/ui/accordion/animated.mjs +2 -2
- package/dist/ui/accordion/variants.d.ts +5 -5
- package/dist/ui/accordion/variants.d.ts.map +1 -1
- package/dist/ui/accordion.js +9 -9
- package/dist/ui/accordion.mjs +2 -2
- package/dist/ui/alert/animated.js +2 -2
- package/dist/ui/alert/animated.mjs +1 -1
- package/dist/ui/alert/variants.d.ts +4 -4
- package/dist/ui/alert/variants.d.ts.map +1 -1
- package/dist/ui/alert.js +10 -10
- package/dist/ui/alert.mjs +2 -2
- package/dist/ui/avatar/animated.js +5 -5
- package/dist/ui/avatar/animated.mjs +2 -2
- package/dist/ui/avatar/variants.d.ts +1 -1
- package/dist/ui/avatar/variants.d.ts.map +1 -1
- package/dist/ui/avatar.js +9 -9
- package/dist/ui/avatar.mjs +2 -2
- package/dist/ui/badge/animated.js +2 -2
- package/dist/ui/badge/animated.mjs +1 -1
- package/dist/ui/badge/variants.d.ts +29 -32
- package/dist/ui/badge/variants.d.ts.map +1 -1
- package/dist/ui/badge.js +4 -4
- package/dist/ui/badge.mjs +2 -2
- package/dist/ui/breadcrumb/variants.d.ts +1 -1
- package/dist/ui/breadcrumb/variants.d.ts.map +1 -1
- package/dist/ui/breadcrumb.js +42 -40
- package/dist/ui/breadcrumb.js.map +1 -1
- package/dist/ui/breadcrumb.mjs +42 -40
- package/dist/ui/breadcrumb.mjs.map +1 -1
- package/dist/ui/buttons/animated.js +3 -3
- package/dist/ui/buttons/animated.mjs +1 -1
- package/dist/ui/buttons/variants.d.ts +2 -2
- package/dist/ui/buttons/variants.d.ts.map +1 -1
- package/dist/ui/buttons.js +4 -4
- package/dist/ui/buttons.mjs +2 -2
- package/dist/ui/card/animated.js +7 -7
- package/dist/ui/card/animated.mjs +2 -2
- package/dist/ui/card/variants.d.ts +7 -7
- package/dist/ui/card/variants.d.ts.map +1 -1
- package/dist/ui/card.js +12 -12
- package/dist/ui/card.mjs +2 -2
- package/dist/ui/checkbox/animated/animations.d.ts +32 -0
- package/dist/ui/checkbox/animated/animations.d.ts.map +1 -0
- package/dist/ui/checkbox/animated/checkbox-animated.d.ts +6 -0
- package/dist/ui/checkbox/animated/checkbox-animated.d.ts.map +1 -0
- package/dist/ui/checkbox/animated/index.d.ts +4 -0
- package/dist/ui/checkbox/animated/index.d.ts.map +1 -0
- package/dist/ui/checkbox/animated/types.d.ts +8 -0
- package/dist/ui/checkbox/animated/types.d.ts.map +1 -0
- package/dist/ui/checkbox/animated.js +153 -0
- package/dist/ui/checkbox/animated.js.map +1 -0
- package/dist/ui/checkbox/animated.mjs +150 -0
- package/dist/ui/checkbox/animated.mjs.map +1 -0
- package/dist/ui/checkbox/checkbox-base.d.ts +6 -0
- package/dist/ui/checkbox/checkbox-base.d.ts.map +1 -0
- package/dist/ui/checkbox/checkbox.d.ts +6 -0
- package/dist/ui/checkbox/checkbox.d.ts.map +1 -0
- package/dist/ui/checkbox/index.d.ts +4 -0
- package/dist/ui/checkbox/index.d.ts.map +1 -0
- package/dist/ui/checkbox/types.d.ts +19 -0
- package/dist/ui/checkbox/types.d.ts.map +1 -0
- package/dist/ui/checkbox/variants.d.ts +11 -0
- package/dist/ui/checkbox/variants.d.ts.map +1 -0
- package/dist/ui/checkbox.js +150 -0
- package/dist/ui/checkbox.js.map +1 -0
- package/dist/ui/checkbox.mjs +137 -0
- package/dist/ui/checkbox.mjs.map +1 -0
- package/dist/ui/divider/animated.js +2 -2
- package/dist/ui/divider/animated.mjs +1 -1
- package/dist/ui/divider/variants.d.ts +4 -4
- package/dist/ui/divider/variants.d.ts.map +1 -1
- package/dist/ui/divider.js +6 -6
- package/dist/ui/divider.mjs +2 -2
- package/dist/ui/drawer/animated.js +11 -11
- package/dist/ui/drawer/animated.mjs +2 -2
- package/dist/ui/drawer/variants.d.ts +1 -1
- package/dist/ui/drawer/variants.d.ts.map +1 -1
- package/dist/ui/drawer.js +11 -11
- package/dist/ui/drawer.mjs +1 -1
- package/dist/ui/dropdown/variants.d.ts +4 -4
- package/dist/ui/dropdown/variants.d.ts.map +1 -1
- package/dist/ui/dropdown.js +106 -104
- package/dist/ui/dropdown.js.map +1 -1
- package/dist/ui/dropdown.mjs +106 -104
- package/dist/ui/dropdown.mjs.map +1 -1
- package/dist/ui/dynamic-stepper/variants.d.ts +5 -9
- package/dist/ui/dynamic-stepper/variants.d.ts.map +1 -1
- package/dist/ui/dynamic-stepper.js +100 -93
- package/dist/ui/dynamic-stepper.js.map +1 -1
- package/dist/ui/dynamic-stepper.mjs +98 -91
- package/dist/ui/dynamic-stepper.mjs.map +1 -1
- package/dist/ui/empty-state/animated.js +2 -2
- package/dist/ui/empty-state/animated.mjs +1 -1
- package/dist/ui/empty-state/variants.d.ts +3 -3
- package/dist/ui/empty-state/variants.d.ts.map +1 -1
- package/dist/ui/empty-state.js +10 -10
- package/dist/ui/empty-state.mjs +2 -2
- package/dist/ui/file-upload/variants.d.ts.map +1 -1
- package/dist/ui/file-upload.js +28 -26
- package/dist/ui/file-upload.js.map +1 -1
- package/dist/ui/file-upload.mjs +28 -26
- package/dist/ui/file-upload.mjs.map +1 -1
- package/dist/ui/inputs/animated.js +3 -3
- package/dist/ui/inputs/animated.mjs +1 -1
- package/dist/ui/inputs/variants.d.ts +1 -1
- package/dist/ui/inputs/variants.d.ts.map +1 -1
- package/dist/ui/inputs.js +4 -4
- package/dist/ui/inputs.mjs +2 -2
- package/dist/ui/modal/animated.js +4 -4
- package/dist/ui/modal/animated.mjs +1 -1
- package/dist/ui/modal/variants.d.ts +1 -1
- package/dist/ui/modal/variants.d.ts.map +1 -1
- package/dist/ui/modal.js +12 -12
- package/dist/ui/modal.mjs +2 -2
- package/dist/ui/pagination/variants.d.ts +3 -7
- package/dist/ui/pagination/variants.d.ts.map +1 -1
- package/dist/ui/pagination.js +84 -84
- package/dist/ui/pagination.js.map +1 -1
- package/dist/ui/pagination.mjs +81 -81
- package/dist/ui/pagination.mjs.map +1 -1
- package/dist/ui/progress/animated.js +8 -8
- package/dist/ui/progress/animated.mjs +2 -2
- package/dist/ui/progress/variants.d.ts +3 -3
- package/dist/ui/progress/variants.d.ts.map +1 -1
- package/dist/ui/progress.js +9 -9
- package/dist/ui/progress.mjs +2 -2
- package/dist/ui/radio-group/animated/animations.d.ts +32 -0
- package/dist/ui/radio-group/animated/animations.d.ts.map +1 -0
- package/dist/ui/radio-group/animated/index.d.ts +4 -0
- package/dist/ui/radio-group/animated/index.d.ts.map +1 -0
- package/dist/ui/radio-group/animated/radio-group-animated.d.ts +10 -0
- package/dist/ui/radio-group/animated/radio-group-animated.d.ts.map +1 -0
- package/dist/ui/radio-group/animated/types.d.ts +11 -0
- package/dist/ui/radio-group/animated/types.d.ts.map +1 -0
- package/dist/ui/radio-group/animated.js +177 -0
- package/dist/ui/radio-group/animated.js.map +1 -0
- package/dist/ui/radio-group/animated.mjs +173 -0
- package/dist/ui/radio-group/animated.mjs.map +1 -0
- package/dist/ui/radio-group/index.d.ts +4 -0
- package/dist/ui/radio-group/index.d.ts.map +1 -0
- package/dist/ui/radio-group/radio-group-context.d.ts +13 -0
- package/dist/ui/radio-group/radio-group-context.d.ts.map +1 -0
- package/dist/ui/radio-group/radio-group.d.ts +10 -0
- package/dist/ui/radio-group/radio-group.d.ts.map +1 -0
- package/dist/ui/radio-group/types.d.ts +26 -0
- package/dist/ui/radio-group/types.d.ts.map +1 -0
- package/dist/ui/radio-group/variants.d.ts +14 -0
- package/dist/ui/radio-group/variants.d.ts.map +1 -0
- package/dist/ui/radio-group.js +171 -0
- package/dist/ui/radio-group.js.map +1 -0
- package/dist/ui/radio-group.mjs +153 -0
- package/dist/ui/radio-group.mjs.map +1 -0
- package/dist/ui/search.js +2 -2
- package/dist/ui/search.mjs +1 -1
- package/dist/ui/select/variants.d.ts +6 -6
- package/dist/ui/select/variants.d.ts.map +1 -1
- package/dist/ui/select.js +122 -123
- package/dist/ui/select.js.map +1 -1
- package/dist/ui/select.mjs +122 -123
- package/dist/ui/select.mjs.map +1 -1
- package/dist/ui/skeleton/animated.js +8 -8
- package/dist/ui/skeleton/animated.mjs +1 -1
- package/dist/ui/skeleton/variants.d.ts +5 -4
- package/dist/ui/skeleton/variants.d.ts.map +1 -1
- package/dist/ui/skeleton.js +9 -9
- package/dist/ui/skeleton.mjs +1 -1
- package/dist/ui/slider/variants.d.ts +3 -3
- package/dist/ui/slider/variants.d.ts.map +1 -1
- package/dist/ui/slider.js +69 -67
- package/dist/ui/slider.js.map +1 -1
- package/dist/ui/slider.mjs +69 -67
- package/dist/ui/slider.mjs.map +1 -1
- package/dist/ui/spinner/animated/variants.d.ts +2 -2
- package/dist/ui/spinner/animated/variants.d.ts.map +1 -1
- package/dist/ui/spinner/animated.js +44 -38
- package/dist/ui/spinner/animated.js.map +1 -1
- package/dist/ui/spinner/animated.mjs +44 -38
- package/dist/ui/spinner/animated.mjs.map +1 -1
- package/dist/ui/stepper/variants.d.ts +1 -1
- package/dist/ui/stepper/variants.d.ts.map +1 -1
- package/dist/ui/stepper.js +57 -50
- package/dist/ui/stepper.js.map +1 -1
- package/dist/ui/stepper.mjs +57 -50
- package/dist/ui/stepper.mjs.map +1 -1
- package/dist/ui/table/animated.js +8 -8
- package/dist/ui/table/animated.mjs +2 -2
- package/dist/ui/table/variants.d.ts +2 -2
- package/dist/ui/table/variants.d.ts.map +1 -1
- package/dist/ui/table.js +14 -14
- package/dist/ui/table.mjs +1 -1
- package/dist/ui/tabs/animated.js +2 -2
- package/dist/ui/tabs/animated.mjs +1 -1
- package/dist/ui/tabs/variants.d.ts +2 -2
- package/dist/ui/tabs/variants.d.ts.map +1 -1
- package/dist/ui/tabs.js +9 -9
- package/dist/ui/tabs.mjs +1 -1
- package/dist/ui/toast/animated.js +7 -7
- package/dist/ui/toast/animated.mjs +1 -1
- package/dist/ui/toast/variants.d.ts +3 -3
- package/dist/ui/toast/variants.d.ts.map +1 -1
- package/dist/ui/toast.js +12 -12
- package/dist/ui/toast.mjs +1 -1
- package/dist/ui/toggle/animated/toggle-animated.d.ts.map +1 -1
- package/dist/ui/toggle/animated.js +13 -6
- package/dist/ui/toggle/animated.js.map +1 -1
- package/dist/ui/toggle/animated.mjs +12 -5
- package/dist/ui/toggle/animated.mjs.map +1 -1
- package/dist/ui/toggle/toggle-base.d.ts +2 -0
- package/dist/ui/toggle/toggle-base.d.ts.map +1 -1
- package/dist/ui/toggle/variants.d.ts +4 -4
- package/dist/ui/toggle/variants.d.ts.map +1 -1
- package/dist/ui/toggle.js +5 -94
- package/dist/ui/toggle.js.map +1 -1
- package/dist/ui/toggle.mjs +4 -93
- package/dist/ui/toggle.mjs.map +1 -1
- package/dist/ui/tooltip/animated.js +3 -3
- package/dist/ui/tooltip/animated.mjs +1 -1
- package/dist/ui/tooltip/variants.d.ts +3 -3
- package/dist/ui/tooltip/variants.d.ts.map +1 -1
- package/dist/ui/tooltip.js +7 -7
- package/dist/ui/tooltip.mjs +1 -1
- package/dist/ui/typography/variants.d.ts +1 -3
- package/dist/ui/typography/variants.d.ts.map +1 -1
- package/dist/ui/typography.js +51 -41
- package/dist/ui/typography.js.map +1 -1
- package/dist/ui/typography.mjs +51 -41
- package/dist/ui/typography.mjs.map +1 -1
- package/package.json +2 -1
- package/src/charts/shared/chart-frame.tsx +19 -8
- package/src/design-system/accordion.ts +111 -0
- package/src/design-system/alert.ts +64 -0
- package/src/design-system/avatar.ts +61 -0
- package/src/design-system/badge.ts +85 -0
- package/src/design-system/breadcrumb.ts +45 -0
- package/src/design-system/button.ts +81 -0
- package/src/design-system/card.ts +104 -0
- package/src/design-system/checkbox.ts +47 -0
- package/src/design-system/divider.ts +73 -0
- package/src/design-system/drawer.ts +111 -0
- package/src/design-system/dropdown.ts +130 -0
- package/src/design-system/dynamic-stepper.ts +218 -0
- package/src/design-system/empty-state.ts +39 -0
- package/src/design-system/file-upload.ts +30 -0
- package/src/design-system/index.ts +31 -0
- package/src/design-system/inputs.ts +74 -0
- package/src/design-system/modal.ts +110 -0
- package/src/design-system/pagination.ts +92 -0
- package/src/design-system/progress.ts +86 -0
- package/src/design-system/radio-group.ts +54 -0
- package/src/design-system/select.ts +155 -0
- package/src/design-system/skeleton.ts +129 -0
- package/src/design-system/slider.ts +70 -0
- package/src/design-system/spinner.ts +59 -0
- package/src/design-system/stepper.ts +66 -0
- package/src/design-system/table.ts +115 -0
- package/src/design-system/tabs.ts +73 -0
- package/src/design-system/toast.ts +69 -0
- package/src/design-system/toggle.ts +120 -0
- package/src/design-system/tokens.ts +22 -0
- package/src/design-system/tooltip.ts +63 -0
- package/src/design-system/typography.ts +64 -0
- package/src/ui/accordion/variants.ts +24 -106
- package/src/ui/alert/alert.test.tsx +1 -1
- package/src/ui/alert/variants.ts +25 -77
- package/src/ui/avatar/variants.ts +21 -66
- package/src/ui/badge/badge.test.tsx +1 -1
- package/src/ui/badge/variants.ts +28 -89
- package/src/ui/breadcrumb/variants.ts +24 -40
- package/src/ui/buttons/button.test.tsx +25 -5
- package/src/ui/buttons/variants.ts +15 -84
- package/src/ui/card/card.test.tsx +1 -1
- package/src/ui/card/variants.ts +46 -121
- package/src/ui/checkbox/animated/animations.ts +12 -0
- package/src/ui/checkbox/animated/checkbox-animated.tsx +145 -0
- package/src/ui/checkbox/animated/index.ts +9 -0
- package/src/ui/checkbox/animated/types.ts +9 -0
- package/src/ui/checkbox/checkbox-base.tsx +134 -0
- package/src/ui/checkbox/checkbox.test.tsx +53 -0
- package/src/ui/checkbox/checkbox.tsx +8 -0
- package/src/ui/checkbox/index.ts +15 -0
- package/src/ui/checkbox/types.ts +40 -0
- package/src/ui/checkbox/variants.ts +50 -0
- package/src/ui/divider/variants.ts +32 -70
- package/src/ui/drawer/drawer-base.tsx +1 -1
- package/src/ui/drawer/variants.ts +41 -132
- package/src/ui/dropdown/variants.ts +36 -142
- package/src/ui/dynamic-stepper/variants.ts +32 -216
- package/src/ui/empty-state/variants.ts +29 -44
- package/src/ui/file-upload/variants.ts +12 -36
- package/src/ui/inputs/input.test.tsx +11 -11
- package/src/ui/inputs/variants.ts +308 -371
- package/src/ui/modal/variants.ts +29 -120
- package/src/ui/pagination/pagination.test.tsx +1 -1
- package/src/ui/pagination/variants.ts +22 -95
- package/src/ui/progress/variants.ts +41 -112
- package/src/ui/radio-group/animated/animations.ts +12 -0
- package/src/ui/radio-group/animated/index.ts +10 -0
- package/src/ui/radio-group/animated/radio-group-animated.tsx +173 -0
- package/src/ui/radio-group/animated/types.ts +13 -0
- package/src/ui/radio-group/index.ts +19 -0
- package/src/ui/radio-group/radio-group-context.ts +23 -0
- package/src/ui/radio-group/radio-group.test.tsx +61 -0
- package/src/ui/radio-group/radio-group.tsx +159 -0
- package/src/ui/radio-group/types.ts +62 -0
- package/src/ui/radio-group/variants.ts +61 -0
- package/src/ui/select/variants.ts +40 -165
- package/src/ui/skeleton/variants.ts +154 -250
- package/src/ui/slider/variants.ts +34 -67
- package/src/ui/spinner/animated/variants.ts +10 -39
- package/src/ui/stepper/stepper.test.tsx +12 -4
- package/src/ui/stepper/variants.ts +23 -68
- package/src/ui/table/variants.ts +36 -106
- package/src/ui/tabs/variants.ts +26 -73
- package/src/ui/toast/variants.ts +24 -75
- package/src/ui/toggle/animated/toggle-animated.tsx +14 -4
- package/src/ui/toggle/toggle-base.tsx +3 -7
- package/src/ui/toggle/variants.ts +27 -111
- package/src/ui/tooltip/variants.ts +18 -57
- package/src/ui/typography/typography.test.tsx +1 -1
- package/src/ui/typography/variants.ts +17 -54
- package/dist/chunk-25EAVVGS.mjs +0 -267
- package/dist/chunk-25EAVVGS.mjs.map +0 -1
- package/dist/chunk-4F56BLZQ.js +0 -336
- package/dist/chunk-4F56BLZQ.js.map +0 -1
- package/dist/chunk-4PZIDDC6.js +0 -279
- package/dist/chunk-4PZIDDC6.js.map +0 -1
- package/dist/chunk-73RHHGIA.mjs +0 -197
- package/dist/chunk-73RHHGIA.mjs.map +0 -1
- package/dist/chunk-746CV3AN.js +0 -246
- package/dist/chunk-746CV3AN.js.map +0 -1
- package/dist/chunk-CFTDAGKD.js +0 -130
- package/dist/chunk-CFTDAGKD.js.map +0 -1
- package/dist/chunk-CXNDE4VC.js +0 -273
- package/dist/chunk-CXNDE4VC.js.map +0 -1
- package/dist/chunk-D55YIHBN.js.map +0 -1
- package/dist/chunk-EU63V22F.mjs +0 -126
- package/dist/chunk-EU63V22F.mjs.map +0 -1
- package/dist/chunk-EZS47EZW.mjs +0 -70
- package/dist/chunk-EZS47EZW.mjs.map +0 -1
- package/dist/chunk-GHJN3Z3V.js +0 -292
- package/dist/chunk-GHJN3Z3V.js.map +0 -1
- package/dist/chunk-GIC3J6HR.mjs +0 -196
- package/dist/chunk-GIC3J6HR.mjs.map +0 -1
- package/dist/chunk-GPAUYUM3.js +0 -232
- package/dist/chunk-GPAUYUM3.js.map +0 -1
- package/dist/chunk-HARD4NMB.mjs +0 -268
- package/dist/chunk-HARD4NMB.mjs.map +0 -1
- package/dist/chunk-HV7LVRK3.js +0 -277
- package/dist/chunk-HV7LVRK3.js.map +0 -1
- package/dist/chunk-JE6B3DHW.mjs +0 -220
- package/dist/chunk-JE6B3DHW.mjs.map +0 -1
- package/dist/chunk-JOMSI4WH.js.map +0 -1
- package/dist/chunk-KA5MORDC.js +0 -336
- package/dist/chunk-KA5MORDC.js.map +0 -1
- package/dist/chunk-M6FS7X54.mjs.map +0 -1
- package/dist/chunk-MM3P52WS.js.map +0 -1
- package/dist/chunk-MTJRPLMG.js.map +0 -1
- package/dist/chunk-OB6TYS5Q.js +0 -205
- package/dist/chunk-OB6TYS5Q.js.map +0 -1
- package/dist/chunk-OHST7AHC.mjs +0 -99
- package/dist/chunk-OHST7AHC.mjs.map +0 -1
- package/dist/chunk-OVTWPGMW.mjs.map +0 -1
- package/dist/chunk-OZ4SFJ3S.mjs +0 -264
- package/dist/chunk-OZ4SFJ3S.mjs.map +0 -1
- package/dist/chunk-PSIAOIXJ.mjs +0 -278
- package/dist/chunk-PSIAOIXJ.mjs.map +0 -1
- package/dist/chunk-QNF4JPFP.js +0 -339
- package/dist/chunk-QNF4JPFP.js.map +0 -1
- package/dist/chunk-QSIJKHC5.mjs.map +0 -1
- package/dist/chunk-QWC2QBRJ.js +0 -175
- package/dist/chunk-QWC2QBRJ.js.map +0 -1
- package/dist/chunk-RFFGQYDQ.mjs +0 -337
- package/dist/chunk-RFFGQYDQ.mjs.map +0 -1
- package/dist/chunk-S5H2OMTZ.mjs +0 -233
- package/dist/chunk-S5H2OMTZ.mjs.map +0 -1
- package/dist/chunk-SPX2QDIB.mjs.map +0 -1
- package/dist/chunk-TIPNRH26.js +0 -102
- package/dist/chunk-TIPNRH26.js.map +0 -1
- package/dist/chunk-V2PEOBAT.mjs +0 -324
- package/dist/chunk-V2PEOBAT.mjs.map +0 -1
- package/dist/chunk-V3XNH7Y4.mjs +0 -169
- package/dist/chunk-V3XNH7Y4.mjs.map +0 -1
- package/dist/chunk-VGWA26BN.js +0 -72
- package/dist/chunk-VGWA26BN.js.map +0 -1
- package/dist/chunk-WNLDXBS6.mjs +0 -323
- package/dist/chunk-WNLDXBS6.mjs.map +0 -1
- package/dist/chunk-YIO7DFUA.js +0 -207
- package/dist/chunk-YIO7DFUA.js.map +0 -1
package/dist/chunk-CFTDAGKD.js
DELETED
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var chunkZS5756ZC_js = require('./chunk-ZS5756ZC.js');
|
|
4
|
-
var classVarianceAuthority = require('class-variance-authority');
|
|
5
|
-
var hi2 = require('react-icons/hi2');
|
|
6
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
7
|
-
|
|
8
|
-
var buttonLikeSolidAppearances = {
|
|
9
|
-
default: "bg-slate-900 dark:bg-slate-50 text-slate-50 dark:text-slate-950 shadow-[0_1px_2px_rgba(15,23,42,0.08)] dark:shadow-[0_1px_2px_rgba(15,23,42,0.12)]",
|
|
10
|
-
secondary: "bg-slate-200 dark:bg-slate-800 text-slate-900 dark:text-slate-50",
|
|
11
|
-
destructive: "bg-rose-500 dark:bg-rose-700 text-slate-900 dark:text-white",
|
|
12
|
-
outline: "border border-black/10 dark:border-white/10 bg-black/5 dark:bg-white/5 text-slate-900 dark:text-slate-50",
|
|
13
|
-
ghost: "bg-transparent text-slate-700 dark:text-slate-200",
|
|
14
|
-
glass: "border border-black/15 dark:border-white/15 bg-black/10 dark:bg-white/10 text-slate-900 dark:text-white backdrop-blur-md",
|
|
15
|
-
emerald: "bg-emerald-500 dark:bg-emerald-800 text-slate-100 dark:text-white",
|
|
16
|
-
indigo: "bg-indigo-800 dark:bg-indigo-600 text-slate-100 dark:text-white",
|
|
17
|
-
purple: "bg-purple-800 dark:bg-purple-600 text-slate-100 dark:text-white",
|
|
18
|
-
pink: "bg-pink-800 dark:bg-pink-600 text-slate-100 dark:text-white",
|
|
19
|
-
rose: "bg-rose-500 dark:bg-rose-700 text-slate-100 dark:text-white",
|
|
20
|
-
sky: "bg-sky-500 dark:bg-sky-700 text-slate-100 dark:text-white",
|
|
21
|
-
teal: "bg-teal-500 dark:bg-teal-700 text-slate-100 dark:text-white",
|
|
22
|
-
yellow: "bg-yellow-500 dark:bg-yellow-800 text-slate-100 dark:text-white",
|
|
23
|
-
orange: "bg-orange-500 dark:bg-orange-800 text-slate-100 dark:text-white",
|
|
24
|
-
"gradient-blue": "bg-linear-to-r from-blue-800 dark:from-blue-600 to-purple-800 dark:to-purple-600 text-slate-100 dark:text-white",
|
|
25
|
-
"gradient-green": "bg-linear-to-r from-green-800 dark:from-green-600 to-lime-800 dark:to-lime-600 text-slate-100 dark:text-white",
|
|
26
|
-
"gradient-red": "bg-linear-to-r from-red-800 dark:from-red-600 to-pink-800 dark:to-pink-600 text-slate-100 dark:text-white",
|
|
27
|
-
"gradient-yellow": "bg-linear-to-r from-yellow-800 dark:from-yellow-600 to-orange-800 dark:to-orange-600 text-slate-100 dark:text-white",
|
|
28
|
-
"gradient-purple": "bg-linear-to-r from-purple-800 dark:from-purple-600 to-pink-800 dark:to-pink-600 text-slate-100 dark:text-white",
|
|
29
|
-
"gradient-teal": "bg-linear-to-r from-teal-800 dark:from-teal-600 to-cyan-800 dark:to-cyan-600 text-slate-100 dark:text-white",
|
|
30
|
-
"gradient-indigo": "bg-linear-to-r from-indigo-800 dark:from-indigo-600 to-purple-800 dark:to-purple-600 text-slate-100 dark:text-white",
|
|
31
|
-
"gradient-pink": "bg-linear-to-r from-pink-800 dark:from-pink-600 to-rose-800 dark:to-rose-600 text-slate-100 dark:text-white",
|
|
32
|
-
"gradient-orange": "bg-linear-to-r from-orange-800 dark:from-orange-600 to-red-800 dark:to-red-600 text-slate-100 dark:text-white"
|
|
33
|
-
};
|
|
34
|
-
var badgeAppearances = {
|
|
35
|
-
...buttonLikeSolidAppearances,
|
|
36
|
-
outline: "border border-black/15 dark:border-white/15 bg-transparent text-slate-700 dark:text-slate-200 shadow-none",
|
|
37
|
-
ghost: "bg-transparent text-slate-600 dark:text-slate-300 shadow-none"
|
|
38
|
-
};
|
|
39
|
-
var badgeVariants = classVarianceAuthority.cva(
|
|
40
|
-
[
|
|
41
|
-
"inline-flex max-w-full items-center justify-center gap-1 font-medium",
|
|
42
|
-
"whitespace-nowrap ring-offset-slate-50 dark:ring-offset-slate-950 transition-colors",
|
|
43
|
-
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-600 dark:focus-visible:ring-slate-300 focus-visible:ring-offset-2",
|
|
44
|
-
"select-none"
|
|
45
|
-
],
|
|
46
|
-
{
|
|
47
|
-
variants: {
|
|
48
|
-
appearance: badgeAppearances,
|
|
49
|
-
size: {
|
|
50
|
-
sm: "h-6 min-h-6 px-2 text-[0.65rem] leading-none",
|
|
51
|
-
md: "h-7 min-h-7 px-2.5 text-xs leading-none",
|
|
52
|
-
lg: "h-8 min-h-8 px-3 text-sm leading-none"
|
|
53
|
-
},
|
|
54
|
-
shape: {
|
|
55
|
-
pill: "rounded-full",
|
|
56
|
-
square: "rounded-md",
|
|
57
|
-
dot: "h-2.5 min-h-2.5 w-2.5 min-w-2.5 rounded-full p-0 px-0 text-[0]"
|
|
58
|
-
}
|
|
59
|
-
},
|
|
60
|
-
defaultVariants: {
|
|
61
|
-
appearance: "default",
|
|
62
|
-
size: "md",
|
|
63
|
-
shape: "pill"
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
);
|
|
67
|
-
var badgeCloseButtonVariants = classVarianceAuthority.cva(
|
|
68
|
-
"inline-flex shrink-0 items-center justify-center rounded-md p-0.5 text-current transition focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-black/40 dark:focus-visible:ring-white/40",
|
|
69
|
-
{
|
|
70
|
-
variants: {
|
|
71
|
-
size: {
|
|
72
|
-
sm: "size-4",
|
|
73
|
-
md: "size-5",
|
|
74
|
-
lg: "size-6"
|
|
75
|
-
}
|
|
76
|
-
},
|
|
77
|
-
defaultVariants: { size: "md" }
|
|
78
|
-
}
|
|
79
|
-
);
|
|
80
|
-
function BadgeBase({
|
|
81
|
-
className,
|
|
82
|
-
appearance,
|
|
83
|
-
size,
|
|
84
|
-
shape,
|
|
85
|
-
closable = false,
|
|
86
|
-
liveRegion = false,
|
|
87
|
-
onClose,
|
|
88
|
-
closeLabel = "Remove",
|
|
89
|
-
children,
|
|
90
|
-
ref,
|
|
91
|
-
"aria-label": ariaLabel,
|
|
92
|
-
as: Wrapper = "span",
|
|
93
|
-
...rest
|
|
94
|
-
}) {
|
|
95
|
-
const isDot = shape === "dot";
|
|
96
|
-
const resolvedAriaLabel = ariaLabel ?? (isDot ? "Status indicator" : void 0);
|
|
97
|
-
const landmarkRole = liveRegion === true || isDot ? "status" : void 0;
|
|
98
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
99
|
-
Wrapper,
|
|
100
|
-
{
|
|
101
|
-
ref,
|
|
102
|
-
role: landmarkRole,
|
|
103
|
-
"data-slot": "badge",
|
|
104
|
-
"aria-label": resolvedAriaLabel,
|
|
105
|
-
className: chunkZS5756ZC_js.cn(badgeVariants({ appearance, size, shape }), className),
|
|
106
|
-
...rest,
|
|
107
|
-
children: [
|
|
108
|
-
!isDot ? children : null,
|
|
109
|
-
closable ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
110
|
-
"button",
|
|
111
|
-
{
|
|
112
|
-
type: "button",
|
|
113
|
-
"data-slot": "badge-close",
|
|
114
|
-
"aria-label": closeLabel,
|
|
115
|
-
onClick: onClose,
|
|
116
|
-
className: badgeCloseButtonVariants({ size }),
|
|
117
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(hi2.HiXMark, { className: "size-3.5", "aria-hidden": true })
|
|
118
|
-
}
|
|
119
|
-
) : null
|
|
120
|
-
]
|
|
121
|
-
}
|
|
122
|
-
);
|
|
123
|
-
}
|
|
124
|
-
BadgeBase.displayName = "Badge";
|
|
125
|
-
|
|
126
|
-
exports.BadgeBase = BadgeBase;
|
|
127
|
-
exports.badgeCloseButtonVariants = badgeCloseButtonVariants;
|
|
128
|
-
exports.badgeVariants = badgeVariants;
|
|
129
|
-
//# sourceMappingURL=chunk-CFTDAGKD.js.map
|
|
130
|
-
//# sourceMappingURL=chunk-CFTDAGKD.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/ui/badge/variants.ts","../src/ui/badge/badge-base.tsx"],"names":["cva","jsxs","cn","jsx","HiXMark"],"mappings":"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","file":"chunk-CFTDAGKD.js","sourcesContent":["import { cva } from \"class-variance-authority\";\n\n/**\n * Tailwind class maps mirroring `buttons/variants.ts` appearance tokens.\n * Reused by primitives that should stay visually aligned with Button.\n */\nexport const buttonLikeSolidAppearances = {\n default:\n \"bg-slate-900 dark:bg-slate-50 text-slate-50 dark:text-slate-950 shadow-[0_1px_2px_rgba(15,23,42,0.08)] dark:shadow-[0_1px_2px_rgba(15,23,42,0.12)]\",\n secondary: \"bg-slate-200 dark:bg-slate-800 text-slate-900 dark:text-slate-50\",\n destructive: \"bg-rose-500 dark:bg-rose-700 text-slate-900 dark:text-white\",\n outline:\n \"border border-black/10 dark:border-white/10 bg-black/5 dark:bg-white/5 text-slate-900 dark:text-slate-50\",\n ghost: \"bg-transparent text-slate-700 dark:text-slate-200\",\n glass:\n \"border border-black/15 dark:border-white/15 bg-black/10 dark:bg-white/10 text-slate-900 dark:text-white backdrop-blur-md\",\n emerald: \"bg-emerald-500 dark:bg-emerald-800 text-slate-100 dark:text-white\",\n indigo: \"bg-indigo-800 dark:bg-indigo-600 text-slate-100 dark:text-white\",\n purple: \"bg-purple-800 dark:bg-purple-600 text-slate-100 dark:text-white\",\n pink: \"bg-pink-800 dark:bg-pink-600 text-slate-100 dark:text-white\",\n rose: \"bg-rose-500 dark:bg-rose-700 text-slate-100 dark:text-white\",\n sky: \"bg-sky-500 dark:bg-sky-700 text-slate-100 dark:text-white\",\n teal: \"bg-teal-500 dark:bg-teal-700 text-slate-100 dark:text-white\",\n yellow: \"bg-yellow-500 dark:bg-yellow-800 text-slate-100 dark:text-white\",\n orange: \"bg-orange-500 dark:bg-orange-800 text-slate-100 dark:text-white\",\n \"gradient-blue\":\n \"bg-linear-to-r from-blue-800 dark:from-blue-600 to-purple-800 dark:to-purple-600 text-slate-100 dark:text-white\",\n \"gradient-green\":\n \"bg-linear-to-r from-green-800 dark:from-green-600 to-lime-800 dark:to-lime-600 text-slate-100 dark:text-white\",\n \"gradient-red\":\n \"bg-linear-to-r from-red-800 dark:from-red-600 to-pink-800 dark:to-pink-600 text-slate-100 dark:text-white\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-yellow-800 dark:from-yellow-600 to-orange-800 dark:to-orange-600 text-slate-100 dark:text-white\",\n \"gradient-purple\":\n \"bg-linear-to-r from-purple-800 dark:from-purple-600 to-pink-800 dark:to-pink-600 text-slate-100 dark:text-white\",\n \"gradient-teal\":\n \"bg-linear-to-r from-teal-800 dark:from-teal-600 to-cyan-800 dark:to-cyan-600 text-slate-100 dark:text-white\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-indigo-800 dark:from-indigo-600 to-purple-800 dark:to-purple-600 text-slate-100 dark:text-white\",\n \"gradient-pink\":\n \"bg-linear-to-r from-pink-800 dark:from-pink-600 to-rose-800 dark:to-rose-600 text-slate-100 dark:text-white\",\n \"gradient-orange\":\n \"bg-linear-to-r from-orange-800 dark:from-orange-600 to-red-800 dark:to-red-600 text-slate-100 dark:text-white\",\n} as const;\n\nexport type ButtonLikeSolidAppearance = keyof typeof buttonLikeSolidAppearances;\n\nconst badgeAppearances = {\n ...buttonLikeSolidAppearances,\n outline:\n \"border border-black/15 dark:border-white/15 bg-transparent text-slate-700 dark:text-slate-200 shadow-none\",\n ghost: \"bg-transparent text-slate-600 dark:text-slate-300 shadow-none\",\n} as const;\n\nexport const badgeVariants = cva(\n [\n \"inline-flex max-w-full items-center justify-center gap-1 font-medium\",\n \"whitespace-nowrap ring-offset-slate-50 dark:ring-offset-slate-950 transition-colors\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-600 dark:focus-visible:ring-slate-300 focus-visible:ring-offset-2\",\n \"select-none\",\n ],\n {\n variants: {\n appearance: badgeAppearances,\n size: {\n sm: \"h-6 min-h-6 px-2 text-[0.65rem] leading-none\",\n md: \"h-7 min-h-7 px-2.5 text-xs leading-none\",\n lg: \"h-8 min-h-8 px-3 text-sm leading-none\",\n },\n shape: {\n pill: \"rounded-full\",\n square: \"rounded-md\",\n dot: \"h-2.5 min-h-2.5 w-2.5 min-w-2.5 rounded-full p-0 px-0 text-[0]\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n shape: \"pill\",\n },\n },\n);\n\nexport const badgeCloseButtonVariants = cva(\n \"inline-flex shrink-0 items-center justify-center rounded-md p-0.5 text-current transition focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-black/40 dark:focus-visible:ring-white/40\",\n {\n variants: {\n size: {\n sm: \"size-4\",\n md: \"size-5\",\n lg: \"size-6\",\n },\n },\n defaultVariants: { size: \"md\" },\n },\n);\n","\"use client\";\n\nimport { HiXMark } from \"react-icons/hi2\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type { BadgeBaseProps } from \"./types\";\nimport { badgeCloseButtonVariants, badgeVariants } from \"./variants\";\n\nexport function BadgeBase({\n className,\n appearance,\n size,\n shape,\n closable = false,\n liveRegion = false,\n onClose,\n closeLabel = \"Remove\",\n children,\n ref,\n \"aria-label\": ariaLabel,\n as: Wrapper = \"span\",\n ...rest\n}: BadgeBaseProps) {\n const isDot = shape === \"dot\";\n const resolvedAriaLabel =\n ariaLabel ?? (isDot ? \"Status indicator\" : undefined);\n const landmarkRole =\n liveRegion === true || isDot ? (\"status\" as const) : undefined;\n\n return (\n <Wrapper\n ref={ref}\n role={landmarkRole}\n data-slot=\"badge\"\n aria-label={resolvedAriaLabel}\n className={cn(badgeVariants({ appearance, size, shape }), className)}\n {...rest}\n >\n {!isDot ? children : null}\n {closable ? (\n <button\n type=\"button\"\n data-slot=\"badge-close\"\n aria-label={closeLabel}\n onClick={onClose}\n className={badgeCloseButtonVariants({ size })}\n >\n <HiXMark className=\"size-3.5\" aria-hidden />\n </button>\n ) : null}\n </Wrapper>\n );\n}\n\nBadgeBase.displayName = \"Badge\";\n"]}
|
package/dist/chunk-CXNDE4VC.js
DELETED
|
@@ -1,273 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var chunkZS5756ZC_js = require('./chunk-ZS5756ZC.js');
|
|
4
|
-
var classVarianceAuthority = require('class-variance-authority');
|
|
5
|
-
var react = require('react');
|
|
6
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
7
|
-
|
|
8
|
-
var tabsListVariants = classVarianceAuthority.cva("flex flex-wrap items-center gap-1", {
|
|
9
|
-
variants: {
|
|
10
|
-
variant: {
|
|
11
|
-
default: "bg-transparent",
|
|
12
|
-
underline: "border-b-2 border-transparent",
|
|
13
|
-
pills: "rounded-md"
|
|
14
|
-
},
|
|
15
|
-
size: {
|
|
16
|
-
sm: "text-sm p-1",
|
|
17
|
-
md: "text-base p-1.5",
|
|
18
|
-
lg: "text-lg p-2"
|
|
19
|
-
},
|
|
20
|
-
orientation: {
|
|
21
|
-
horizontal: "flex-row",
|
|
22
|
-
vertical: "flex-col"
|
|
23
|
-
}
|
|
24
|
-
},
|
|
25
|
-
defaultVariants: {
|
|
26
|
-
size: "md",
|
|
27
|
-
orientation: "horizontal",
|
|
28
|
-
variant: "pills"
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
var tabsTriggerVariants = classVarianceAuthority.cva(
|
|
32
|
-
"px-3 py-1.5 rounded-md transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
|
|
33
|
-
{
|
|
34
|
-
variants: {
|
|
35
|
-
appearance: {
|
|
36
|
-
default: "bg-transparent text-slate-900 dark:text-slate-50",
|
|
37
|
-
sky: "bg-sky-300 text-sky-900 dark:bg-sky-900 dark:text-sky-200 data-[state=active]:bg-sky-900 dark:data-[state=active]:bg-sky-700 data-[state=active]:text-sky-50 dark:data-[state=active]:text-sky-100",
|
|
38
|
-
rose: "bg-rose-300 text-rose-900 dark:bg-rose-900 dark:text-rose-200 data-[state=active]:bg-rose-900 dark:data-[state=active]:bg-rose-700 data-[state=active]:text-rose-50 dark:data-[state=active]:text-rose-100",
|
|
39
|
-
purple: "bg-purple-300 text-purple-900 dark:bg-purple-900 dark:text-purple-200 data-[state=active]:bg-purple-900 dark:data-[state=active]:bg-purple-700 data-[state=active]:text-purple-50 dark:data-[state=active]:text-purple-100",
|
|
40
|
-
pink: "bg-pink-300 text-pink-900 dark:bg-pink-900 dark:text-pink-200 data-[state=active]:bg-pink-900 dark:data-[state=active]:bg-pink-700 data-[state=active]:text-pink-50 dark:data-[state=active]:text-pink-100",
|
|
41
|
-
orange: "bg-orange-300 text-orange-900 dark:bg-orange-900 dark:text-orange-200 data-[state=active]:bg-orange-900 dark:data-[state=active]:bg-orange-700 data-[state=active]:text-orange-50 dark:data-[state=active]:text-orange-100",
|
|
42
|
-
yellow: "bg-yellow-300 text-yellow-900 dark:bg-yellow-900 dark:text-yellow-200 data-[state=active]:bg-yellow-900 dark:data-[state=active]:bg-yellow-700 data-[state=active]:text-yellow-50 dark:data-[state=active]:text-yellow-100",
|
|
43
|
-
teal: "bg-teal-300 text-teal-900 dark:bg-teal-900 dark:text-teal-200 data-[state=active]:bg-teal-900 dark:data-[state=active]:bg-teal-700 data-[state=active]:text-teal-50 dark:data-[state=active]:text-teal-100",
|
|
44
|
-
indigo: "bg-indigo-300 text-indigo-900 dark:bg-indigo-900 dark:text-indigo-200 data-[state=active]:bg-indigo-900 dark:data-[state=active]:bg-indigo-700 data-[state=active]:text-indigo-50 dark:data-[state=active]:text-indigo-100",
|
|
45
|
-
emerald: "bg-emerald-300 text-emerald-900 dark:bg-emerald-900 dark:text-emerald-200 data-[state=active]:bg-emerald-900 dark:data-[state=active]:bg-emerald-700 data-[state=active]:text-emerald-50 dark:data-[state=active]:text-emerald-100",
|
|
46
|
-
gray: "bg-gray-300 text-gray-900 dark:bg-gray-900 dark:text-gray-200 data-[state=active]:bg-gray-900 dark:data-[state=active]:bg-gray-700 data-[state=active]:text-gray-50 dark:data-[state=active]:text-gray-100",
|
|
47
|
-
"gradient-blue": "bg-linear-to-r from-blue-800 dark:from-blue-800 to-purple-800 dark:to-purple-800 text-blue-100 dark:text-blue-50 data-[state=active]:from-blue-600 dark:data-[state=active]:from-blue-600 data-[state=active]:to-purple-600 dark:data-[state=active]:to-purple-600 data-[state=active]:text-blue-100 dark:data-[state=active]:text-blue-100",
|
|
48
|
-
"gradient-green": "bg-linear-to-r from-green-800 dark:from-green-800 to-lime-800 dark:to-lime-800 text-green-100 dark:text-green-50 data-[state=active]:from-green-600 dark:data-[state=active]:from-green-600 data-[state=active]:to-lime-600 dark:data-[state=active]:to-lime-600 data-[state=active]:text-green-100 dark:data-[state=active]:text-green-100",
|
|
49
|
-
"gradient-red": "bg-linear-to-r from-red-800 dark:from-red-800 to-pink-800 dark:to-pink-800 text-red-100 dark:text-red-50 data-[state=active]:from-red-600 dark:data-[state=active]:from-red-600 data-[state=active]:to-pink-600 dark:data-[state=active]:to-pink-600 data-[state=active]:text-red-100 dark:data-[state=active]:text-red-100",
|
|
50
|
-
"gradient-yellow": "bg-linear-to-r from-yellow-800 dark:from-yellow-800 to-orange-800 dark:to-orange-800 text-yellow-100 dark:text-yellow-50 data-[state=active]:from-yellow-600 dark:data-[state=active]:from-yellow-600 data-[state=active]:to-orange-600 dark:data-[state=active]:to-orange-600 data-[state=active]:text-yellow-100 dark:data-[state=active]:text-yellow-100",
|
|
51
|
-
"gradient-purple": "bg-linear-to-r from-purple-800 dark:from-purple-800 to-pink-800 dark:to-pink-800 text-purple-100 dark:text-purple-50 data-[state=active]:from-purple-600 dark:data-[state=active]:from-purple-600 data-[state=active]:to-pink-600 dark:data-[state=active]:to-pink-600 data-[state=active]:text-purple-100 dark:data-[state=active]:text-purple-100",
|
|
52
|
-
"gradient-teal": "bg-linear-to-r from-teal-800 dark:from-teal-800 to-cyan-800 dark:to-cyan-800 text-teal-100 dark:text-teal-50 data-[state=active]:from-teal-600 dark:data-[state=active]:from-teal-600 data-[state=active]:to-cyan-600 dark:data-[state=active]:to-cyan-600 data-[state=active]:text-teal-100 dark:data-[state=active]:text-teal-100",
|
|
53
|
-
"gradient-indigo": "bg-linear-to-r from-indigo-800 dark:from-indigo-800 to-purple-800 dark:to-purple-800 text-indigo-100 dark:text-indigo-50 data-[state=active]:from-indigo-600 dark:data-[state=active]:from-indigo-600 data-[state=active]:to-purple-600 dark:data-[state=active]:to-purple-600 data-[state=active]:text-indigo-100 dark:data-[state=active]:text-indigo-100",
|
|
54
|
-
"gradient-pink": "bg-linear-to-r from-pink-800 dark:from-pink-800 to-rose-800 dark:to-rose-800 text-pink-100 dark:text-pink-50 data-[state=active]:from-pink-600 dark:data-[state=active]:from-pink-600 data-[state=active]:to-rose-600 dark:data-[state=active]:to-rose-600 data-[state=active]:text-pink-100 dark:data-[state=active]:text-pink-100",
|
|
55
|
-
"gradient-orange": "bg-linear-to-r from-orange-800 dark:from-orange-800 to-red-800 dark:to-red-800 text-orange-100 dark:text-orange-50 data-[state=active]:from-orange-600 dark:data-[state=active]:from-orange-600 data-[state=active]:to-red-600 dark:data-[state=active]:to-red-600 data-[state=active]:text-orange-100 dark:data-[state=active]:text-orange-100"
|
|
56
|
-
},
|
|
57
|
-
variant: {
|
|
58
|
-
default: "data-[state=active]:bg-background",
|
|
59
|
-
underline: "border-b-2 border-transparent data-[state=active]:border-current rounded-none",
|
|
60
|
-
pills: ""
|
|
61
|
-
},
|
|
62
|
-
size: {
|
|
63
|
-
sm: "px-2 py-1",
|
|
64
|
-
md: "px-3 py-1.5",
|
|
65
|
-
lg: "px-4 py-2"
|
|
66
|
-
}
|
|
67
|
-
},
|
|
68
|
-
defaultVariants: {
|
|
69
|
-
appearance: "default",
|
|
70
|
-
variant: "pills",
|
|
71
|
-
size: "md"
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
);
|
|
75
|
-
var TabsContext = react.createContext(null);
|
|
76
|
-
var useTabs = () => {
|
|
77
|
-
const ctx = react.useContext(TabsContext);
|
|
78
|
-
if (!ctx) throw new Error("Tabs components must be used within Tabs");
|
|
79
|
-
return ctx;
|
|
80
|
-
};
|
|
81
|
-
function Tabs({
|
|
82
|
-
value,
|
|
83
|
-
defaultValue,
|
|
84
|
-
onValueChange,
|
|
85
|
-
orientation = "horizontal",
|
|
86
|
-
variant,
|
|
87
|
-
size,
|
|
88
|
-
appearance,
|
|
89
|
-
children,
|
|
90
|
-
className
|
|
91
|
-
}) {
|
|
92
|
-
const [internalValue, setInternalValue] = react.useState(defaultValue);
|
|
93
|
-
const idPrefix = react.useId();
|
|
94
|
-
const listRef = react.useRef(null);
|
|
95
|
-
const isControlled = value !== void 0;
|
|
96
|
-
const currentValue = isControlled ? value : internalValue;
|
|
97
|
-
const setValue = (val) => {
|
|
98
|
-
if (!isControlled) setInternalValue(val);
|
|
99
|
-
onValueChange?.(val);
|
|
100
|
-
};
|
|
101
|
-
const tabTriggerId = (tabValue) => `${idPrefix}zentauri-tab-${tabValue}`;
|
|
102
|
-
const tabPanelId = (tabValue) => `${idPrefix}zentauri-panel-${tabValue}`;
|
|
103
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
104
|
-
TabsContext.Provider,
|
|
105
|
-
{
|
|
106
|
-
value: {
|
|
107
|
-
value: currentValue,
|
|
108
|
-
setValue,
|
|
109
|
-
listRef,
|
|
110
|
-
orientation,
|
|
111
|
-
size,
|
|
112
|
-
variant,
|
|
113
|
-
appearance,
|
|
114
|
-
tabTriggerId,
|
|
115
|
-
tabPanelId
|
|
116
|
-
},
|
|
117
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("div", { "data-slot": "tabs", className: chunkZS5756ZC_js.cn("w-full", className), children })
|
|
118
|
-
}
|
|
119
|
-
);
|
|
120
|
-
}
|
|
121
|
-
function TabsList({ children, className, ...props }) {
|
|
122
|
-
const { orientation, size, listRef } = useTabs();
|
|
123
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
124
|
-
"div",
|
|
125
|
-
{
|
|
126
|
-
ref: listRef,
|
|
127
|
-
role: "tablist",
|
|
128
|
-
"aria-orientation": orientation,
|
|
129
|
-
className: chunkZS5756ZC_js.cn(tabsListVariants({ orientation, size }), className),
|
|
130
|
-
...props,
|
|
131
|
-
children
|
|
132
|
-
}
|
|
133
|
-
);
|
|
134
|
-
}
|
|
135
|
-
function TabsTrigger({
|
|
136
|
-
value,
|
|
137
|
-
children,
|
|
138
|
-
disabled,
|
|
139
|
-
className,
|
|
140
|
-
...props
|
|
141
|
-
}) {
|
|
142
|
-
const {
|
|
143
|
-
value: activeValue,
|
|
144
|
-
setValue,
|
|
145
|
-
listRef,
|
|
146
|
-
orientation,
|
|
147
|
-
tabTriggerId,
|
|
148
|
-
tabPanelId,
|
|
149
|
-
size,
|
|
150
|
-
appearance,
|
|
151
|
-
variant
|
|
152
|
-
} = useTabs();
|
|
153
|
-
const isActive = activeValue === value;
|
|
154
|
-
const handleKeyDown = (e) => {
|
|
155
|
-
const list = listRef.current;
|
|
156
|
-
const triggers = list === null ? [] : Array.from(list.querySelectorAll('[role="tab"]'));
|
|
157
|
-
const nextKeys = orientation === "vertical" ? ["ArrowDown"] : ["ArrowRight"];
|
|
158
|
-
const prevKeys = orientation === "vertical" ? ["ArrowUp"] : ["ArrowLeft"];
|
|
159
|
-
const index = triggers.findIndex((el) => el === e.currentTarget);
|
|
160
|
-
if (index === -1) {
|
|
161
|
-
return;
|
|
162
|
-
}
|
|
163
|
-
const findEnabledIndex = (start, direction) => {
|
|
164
|
-
const n = triggers.length;
|
|
165
|
-
if (n === 0) {
|
|
166
|
-
return void 0;
|
|
167
|
-
}
|
|
168
|
-
let i = start;
|
|
169
|
-
for (let step = 0; step < n; step += 1) {
|
|
170
|
-
i = (i + direction + n) % n;
|
|
171
|
-
if (triggers[i]?.disabled !== true) {
|
|
172
|
-
return i;
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
return void 0;
|
|
176
|
-
};
|
|
177
|
-
const focusAt = (i) => {
|
|
178
|
-
const target = triggers[i];
|
|
179
|
-
if (target !== void 0 && target.disabled !== true) {
|
|
180
|
-
target.focus();
|
|
181
|
-
}
|
|
182
|
-
};
|
|
183
|
-
const isNext = nextKeys.includes(e.key);
|
|
184
|
-
const isPrev = prevKeys.includes(e.key);
|
|
185
|
-
if (isNext) {
|
|
186
|
-
e.preventDefault();
|
|
187
|
-
const nextIdx = findEnabledIndex(index, 1);
|
|
188
|
-
if (nextIdx !== void 0) {
|
|
189
|
-
focusAt(nextIdx);
|
|
190
|
-
}
|
|
191
|
-
return;
|
|
192
|
-
}
|
|
193
|
-
if (isPrev) {
|
|
194
|
-
e.preventDefault();
|
|
195
|
-
const prevIdx = findEnabledIndex(index, -1);
|
|
196
|
-
if (prevIdx !== void 0) {
|
|
197
|
-
focusAt(prevIdx);
|
|
198
|
-
}
|
|
199
|
-
return;
|
|
200
|
-
}
|
|
201
|
-
if (e.key === "Home") {
|
|
202
|
-
e.preventDefault();
|
|
203
|
-
const firstEnabledIndex = triggers.findIndex((btn) => !btn.disabled);
|
|
204
|
-
if (firstEnabledIndex !== -1) {
|
|
205
|
-
triggers[firstEnabledIndex]?.focus();
|
|
206
|
-
}
|
|
207
|
-
return;
|
|
208
|
-
}
|
|
209
|
-
if (e.key === "End") {
|
|
210
|
-
e.preventDefault();
|
|
211
|
-
for (let i = triggers.length - 1; i >= 0; i -= 1) {
|
|
212
|
-
if (!triggers[i]?.disabled) {
|
|
213
|
-
triggers[i]?.focus();
|
|
214
|
-
break;
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
};
|
|
219
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
220
|
-
"button",
|
|
221
|
-
{
|
|
222
|
-
id: tabTriggerId(value),
|
|
223
|
-
type: "button",
|
|
224
|
-
role: "tab",
|
|
225
|
-
"data-state": isActive ? "active" : "inactive",
|
|
226
|
-
"aria-selected": isActive,
|
|
227
|
-
"aria-controls": tabPanelId(value),
|
|
228
|
-
disabled,
|
|
229
|
-
tabIndex: activeValue === void 0 ? void 0 : isActive ? 0 : -1,
|
|
230
|
-
onClick: () => setValue(value),
|
|
231
|
-
onKeyDown: handleKeyDown,
|
|
232
|
-
className: chunkZS5756ZC_js.cn(
|
|
233
|
-
tabsTriggerVariants({ size, appearance, variant }),
|
|
234
|
-
className,
|
|
235
|
-
"cursor-pointer"
|
|
236
|
-
),
|
|
237
|
-
...props,
|
|
238
|
-
children
|
|
239
|
-
}
|
|
240
|
-
);
|
|
241
|
-
}
|
|
242
|
-
function TabsContent({
|
|
243
|
-
value,
|
|
244
|
-
children,
|
|
245
|
-
className,
|
|
246
|
-
as: Wrapper = "div",
|
|
247
|
-
...props
|
|
248
|
-
}) {
|
|
249
|
-
const { value: activeValue, tabTriggerId, tabPanelId } = useTabs();
|
|
250
|
-
if (activeValue !== value) return null;
|
|
251
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
252
|
-
Wrapper,
|
|
253
|
-
{
|
|
254
|
-
id: tabPanelId(value),
|
|
255
|
-
role: "tabpanel",
|
|
256
|
-
"aria-labelledby": tabTriggerId(value),
|
|
257
|
-
className: chunkZS5756ZC_js.cn("mt-2", className),
|
|
258
|
-
...props,
|
|
259
|
-
children
|
|
260
|
-
}
|
|
261
|
-
);
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
exports.Tabs = Tabs;
|
|
265
|
-
exports.TabsContent = TabsContent;
|
|
266
|
-
exports.TabsContext = TabsContext;
|
|
267
|
-
exports.TabsList = TabsList;
|
|
268
|
-
exports.TabsTrigger = TabsTrigger;
|
|
269
|
-
exports.tabsListVariants = tabsListVariants;
|
|
270
|
-
exports.tabsTriggerVariants = tabsTriggerVariants;
|
|
271
|
-
exports.useTabs = useTabs;
|
|
272
|
-
//# sourceMappingURL=chunk-CXNDE4VC.js.map
|
|
273
|
-
//# sourceMappingURL=chunk-CXNDE4VC.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/ui/tabs/variants.ts","../src/ui/tabs/tabs-base.tsx"],"names":["cva","createContext","useContext","useState","useId","useRef","jsx","cn"],"mappings":"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","file":"chunk-CXNDE4VC.js","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const tabsListVariants = cva(\"flex flex-wrap items-center gap-1\", {\n variants: {\n variant: {\n default: \"bg-transparent\",\n underline: \"border-b-2 border-transparent\",\n pills: \"rounded-md\",\n },\n size: {\n sm: \"text-sm p-1\",\n md: \"text-base p-1.5\",\n lg: \"text-lg p-2\",\n },\n orientation: {\n horizontal: \"flex-row\",\n vertical: \"flex-col\",\n },\n },\n defaultVariants: {\n size: \"md\",\n orientation: \"horizontal\",\n variant: \"pills\",\n },\n});\n\nexport const tabsTriggerVariants = cva(\n \"px-3 py-1.5 rounded-md transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\",\n {\n variants: {\n appearance: {\n default: \"bg-transparent text-slate-900 dark:text-slate-50\",\n sky: \"bg-sky-300 text-sky-900 dark:bg-sky-900 dark:text-sky-200 data-[state=active]:bg-sky-900 dark:data-[state=active]:bg-sky-700 data-[state=active]:text-sky-50 dark:data-[state=active]:text-sky-100\",\n rose: \"bg-rose-300 text-rose-900 dark:bg-rose-900 dark:text-rose-200 data-[state=active]:bg-rose-900 dark:data-[state=active]:bg-rose-700 data-[state=active]:text-rose-50 dark:data-[state=active]:text-rose-100\",\n purple:\n \"bg-purple-300 text-purple-900 dark:bg-purple-900 dark:text-purple-200 data-[state=active]:bg-purple-900 dark:data-[state=active]:bg-purple-700 data-[state=active]:text-purple-50 dark:data-[state=active]:text-purple-100\",\n pink: \"bg-pink-300 text-pink-900 dark:bg-pink-900 dark:text-pink-200 data-[state=active]:bg-pink-900 dark:data-[state=active]:bg-pink-700 data-[state=active]:text-pink-50 dark:data-[state=active]:text-pink-100\",\n orange:\n \"bg-orange-300 text-orange-900 dark:bg-orange-900 dark:text-orange-200 data-[state=active]:bg-orange-900 dark:data-[state=active]:bg-orange-700 data-[state=active]:text-orange-50 dark:data-[state=active]:text-orange-100\",\n yellow:\n \"bg-yellow-300 text-yellow-900 dark:bg-yellow-900 dark:text-yellow-200 data-[state=active]:bg-yellow-900 dark:data-[state=active]:bg-yellow-700 data-[state=active]:text-yellow-50 dark:data-[state=active]:text-yellow-100\",\n teal: \"bg-teal-300 text-teal-900 dark:bg-teal-900 dark:text-teal-200 data-[state=active]:bg-teal-900 dark:data-[state=active]:bg-teal-700 data-[state=active]:text-teal-50 dark:data-[state=active]:text-teal-100\",\n indigo:\n \"bg-indigo-300 text-indigo-900 dark:bg-indigo-900 dark:text-indigo-200 data-[state=active]:bg-indigo-900 dark:data-[state=active]:bg-indigo-700 data-[state=active]:text-indigo-50 dark:data-[state=active]:text-indigo-100\",\n emerald:\n \"bg-emerald-300 text-emerald-900 dark:bg-emerald-900 dark:text-emerald-200 data-[state=active]:bg-emerald-900 dark:data-[state=active]:bg-emerald-700 data-[state=active]:text-emerald-50 dark:data-[state=active]:text-emerald-100\",\n gray: \"bg-gray-300 text-gray-900 dark:bg-gray-900 dark:text-gray-200 data-[state=active]:bg-gray-900 dark:data-[state=active]:bg-gray-700 data-[state=active]:text-gray-50 dark:data-[state=active]:text-gray-100\",\n \"gradient-blue\":\n \"bg-linear-to-r from-blue-800 dark:from-blue-800 to-purple-800 dark:to-purple-800 text-blue-100 dark:text-blue-50 data-[state=active]:from-blue-600 dark:data-[state=active]:from-blue-600 data-[state=active]:to-purple-600 dark:data-[state=active]:to-purple-600 data-[state=active]:text-blue-100 dark:data-[state=active]:text-blue-100\",\n \"gradient-green\":\n \"bg-linear-to-r from-green-800 dark:from-green-800 to-lime-800 dark:to-lime-800 text-green-100 dark:text-green-50 data-[state=active]:from-green-600 dark:data-[state=active]:from-green-600 data-[state=active]:to-lime-600 dark:data-[state=active]:to-lime-600 data-[state=active]:text-green-100 dark:data-[state=active]:text-green-100\",\n \"gradient-red\":\n \"bg-linear-to-r from-red-800 dark:from-red-800 to-pink-800 dark:to-pink-800 text-red-100 dark:text-red-50 data-[state=active]:from-red-600 dark:data-[state=active]:from-red-600 data-[state=active]:to-pink-600 dark:data-[state=active]:to-pink-600 data-[state=active]:text-red-100 dark:data-[state=active]:text-red-100\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-yellow-800 dark:from-yellow-800 to-orange-800 dark:to-orange-800 text-yellow-100 dark:text-yellow-50 data-[state=active]:from-yellow-600 dark:data-[state=active]:from-yellow-600 data-[state=active]:to-orange-600 dark:data-[state=active]:to-orange-600 data-[state=active]:text-yellow-100 dark:data-[state=active]:text-yellow-100\",\n \"gradient-purple\":\n \"bg-linear-to-r from-purple-800 dark:from-purple-800 to-pink-800 dark:to-pink-800 text-purple-100 dark:text-purple-50 data-[state=active]:from-purple-600 dark:data-[state=active]:from-purple-600 data-[state=active]:to-pink-600 dark:data-[state=active]:to-pink-600 data-[state=active]:text-purple-100 dark:data-[state=active]:text-purple-100\",\n \"gradient-teal\":\n \"bg-linear-to-r from-teal-800 dark:from-teal-800 to-cyan-800 dark:to-cyan-800 text-teal-100 dark:text-teal-50 data-[state=active]:from-teal-600 dark:data-[state=active]:from-teal-600 data-[state=active]:to-cyan-600 dark:data-[state=active]:to-cyan-600 data-[state=active]:text-teal-100 dark:data-[state=active]:text-teal-100\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-indigo-800 dark:from-indigo-800 to-purple-800 dark:to-purple-800 text-indigo-100 dark:text-indigo-50 data-[state=active]:from-indigo-600 dark:data-[state=active]:from-indigo-600 data-[state=active]:to-purple-600 dark:data-[state=active]:to-purple-600 data-[state=active]:text-indigo-100 dark:data-[state=active]:text-indigo-100\",\n \"gradient-pink\":\n \"bg-linear-to-r from-pink-800 dark:from-pink-800 to-rose-800 dark:to-rose-800 text-pink-100 dark:text-pink-50 data-[state=active]:from-pink-600 dark:data-[state=active]:from-pink-600 data-[state=active]:to-rose-600 dark:data-[state=active]:to-rose-600 data-[state=active]:text-pink-100 dark:data-[state=active]:text-pink-100\",\n \"gradient-orange\":\n \"bg-linear-to-r from-orange-800 dark:from-orange-800 to-red-800 dark:to-red-800 text-orange-100 dark:text-orange-50 data-[state=active]:from-orange-600 dark:data-[state=active]:from-orange-600 data-[state=active]:to-red-600 dark:data-[state=active]:to-red-600 data-[state=active]:text-orange-100 dark:data-[state=active]:text-orange-100\",\n },\n variant: {\n default: \"data-[state=active]:bg-background\",\n underline:\n \"border-b-2 border-transparent data-[state=active]:border-current rounded-none\",\n pills: \"\",\n },\n size: {\n sm: \"px-2 py-1\",\n md: \"px-3 py-1.5\",\n lg: \"px-4 py-2\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n variant: \"pills\",\n size: \"md\",\n },\n },\n);\n","\"use client\";\n\nimport {\n createContext,\n KeyboardEvent,\n useContext,\n useId,\n useRef,\n useState,\n} from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport {\n TabsContentProps,\n TabsListProps,\n TabsProps,\n TabsTriggerProps,\n TabsValue,\n TabsContextType,\n} from \"./types\";\nimport { tabsListVariants, tabsTriggerVariants } from \"./variants\";\n\nexport const TabsContext = createContext<TabsContextType | null>(null);\n\nexport const useTabs = () => {\n const ctx = useContext(TabsContext);\n if (!ctx) throw new Error(\"Tabs components must be used within Tabs\");\n return ctx;\n};\n\nexport function Tabs({\n value,\n defaultValue,\n onValueChange,\n orientation = \"horizontal\",\n variant,\n size,\n appearance,\n children,\n className,\n}: TabsProps) {\n const [internalValue, setInternalValue] = useState(defaultValue);\n const idPrefix = useId();\n const listRef = useRef<HTMLDivElement | null>(null);\n\n const isControlled = value !== undefined;\n const currentValue = isControlled ? value : internalValue;\n\n const setValue = (val: string) => {\n if (!isControlled) setInternalValue(val);\n onValueChange?.(val);\n };\n\n const tabTriggerId = (tabValue: TabsValue) =>\n `${idPrefix}zentauri-tab-${tabValue}`;\n const tabPanelId = (tabValue: TabsValue) =>\n `${idPrefix}zentauri-panel-${tabValue}`;\n\n return (\n <TabsContext.Provider\n value={{\n value: currentValue,\n setValue,\n listRef,\n orientation,\n size,\n variant,\n appearance,\n tabTriggerId,\n tabPanelId,\n }}\n >\n <div data-slot=\"tabs\" className={cn(\"w-full\", className)}>\n {children}\n </div>\n </TabsContext.Provider>\n );\n}\n\nexport function TabsList({ children, className, ...props }: TabsListProps) {\n const { orientation, size, listRef } = useTabs();\n\n return (\n <div\n ref={listRef}\n role=\"tablist\"\n aria-orientation={orientation}\n className={cn(tabsListVariants({ orientation, size }), className)}\n {...props}\n >\n {children}\n </div>\n );\n}\n\nexport function TabsTrigger({\n value,\n children,\n disabled,\n className,\n ...props\n}: TabsTriggerProps) {\n const {\n value: activeValue,\n setValue,\n listRef,\n orientation,\n tabTriggerId,\n tabPanelId,\n size,\n appearance,\n variant,\n } = useTabs();\n\n const isActive = activeValue === value;\n\n const handleKeyDown = (e: KeyboardEvent<HTMLButtonElement>) => {\n const list = listRef.current;\n const triggers =\n list === null\n ? []\n : Array.from(list.querySelectorAll<HTMLButtonElement>('[role=\"tab\"]'));\n\n const nextKeys =\n orientation === \"vertical\" ? [\"ArrowDown\"] : [\"ArrowRight\"];\n const prevKeys = orientation === \"vertical\" ? [\"ArrowUp\"] : [\"ArrowLeft\"];\n\n const index = triggers.findIndex((el) => el === e.currentTarget);\n if (index === -1) {\n return;\n }\n\n const findEnabledIndex = (\n start: number,\n direction: 1 | -1,\n ): number | undefined => {\n const n = triggers.length;\n if (n === 0) {\n return undefined;\n }\n let i = start;\n for (let step = 0; step < n; step += 1) {\n i = (i + direction + n) % n;\n if (triggers[i]?.disabled !== true) {\n return i;\n }\n }\n return undefined;\n };\n\n const focusAt = (i: number) => {\n const target = triggers[i];\n if (target !== undefined && target.disabled !== true) {\n target.focus();\n }\n };\n\n const isNext = nextKeys.includes(e.key);\n const isPrev = prevKeys.includes(e.key);\n\n if (isNext) {\n e.preventDefault();\n const nextIdx = findEnabledIndex(index, 1);\n if (nextIdx !== undefined) {\n focusAt(nextIdx);\n }\n return;\n }\n\n if (isPrev) {\n e.preventDefault();\n const prevIdx = findEnabledIndex(index, -1);\n if (prevIdx !== undefined) {\n focusAt(prevIdx);\n }\n return;\n }\n\n if (e.key === \"Home\") {\n e.preventDefault();\n const firstEnabledIndex = triggers.findIndex((btn) => !btn.disabled);\n if (firstEnabledIndex !== -1) {\n triggers[firstEnabledIndex]?.focus();\n }\n return;\n }\n\n if (e.key === \"End\") {\n e.preventDefault();\n for (let i = triggers.length - 1; i >= 0; i -= 1) {\n if (!triggers[i]?.disabled) {\n triggers[i]?.focus();\n break;\n }\n }\n }\n };\n\n return (\n <button\n id={tabTriggerId(value)}\n type=\"button\"\n role=\"tab\"\n data-state={isActive ? \"active\" : \"inactive\"}\n aria-selected={isActive}\n aria-controls={tabPanelId(value)}\n disabled={disabled}\n tabIndex={activeValue === undefined ? undefined : isActive ? 0 : -1}\n onClick={() => setValue(value)}\n onKeyDown={handleKeyDown}\n className={cn(\n tabsTriggerVariants({ size, appearance, variant }),\n className,\n \"cursor-pointer\",\n )}\n {...props}\n >\n {children}\n </button>\n );\n}\n\nexport function TabsContent({\n value,\n children,\n className,\n as: Wrapper = \"div\",\n ...props\n}: TabsContentProps) {\n const { value: activeValue, tabTriggerId, tabPanelId } = useTabs();\n\n if (activeValue !== value) return null;\n\n return (\n <Wrapper\n id={tabPanelId(value)}\n role=\"tabpanel\"\n aria-labelledby={tabTriggerId(value)}\n className={cn(\"mt-2\", className)}\n {...props}\n >\n {children}\n </Wrapper>\n );\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/ui/skeleton/variants.ts","../src/ui/skeleton/skeleton-base.tsx"],"names":["cva","createContext","useContext","useMemo","jsx","cn","jsxs"],"mappings":"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","file":"chunk-D55YIHBN.js","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nconst shimmerLayer =\n \"[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%]\";\n\nexport const skeletonShimmerGradientClasses = {\n default: `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(255,255,255,0.04),rgba(255,255,255,0.22),rgba(255,255,255,0.04))]`,\n subtle: `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(255,255,255,0.03),rgba(255,255,255,0.14),rgba(255,255,255,0.03))]`,\n muted: `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(255,255,255,0.02),rgba(255,255,255,0.1),rgba(255,255,255,0.02))]`,\n sky: `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(56,189,248,0.1),rgba(56,189,248,0.42),rgba(56,189,248,0.1))]`,\n rose: `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(251,113,133,0.1),rgba(251,113,133,0.42),rgba(251,113,133,0.1))]`,\n purple: `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(192,132,252,0.1),rgba(192,132,252,0.42),rgba(192,132,252,0.1))]`,\n pink: `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(244,114,182,0.1),rgba(244,114,182,0.42),rgba(244,114,182,0.1))]`,\n orange: `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(251,146,60,0.1),rgba(251,146,60,0.42),rgba(251,146,60,0.1))]`,\n yellow: `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(250,204,21,0.12),rgba(250,204,21,0.4),rgba(250,204,21,0.12))]`,\n teal: `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(45,212,191,0.1),rgba(45,212,191,0.42),rgba(45,212,191,0.1))]`,\n indigo: `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(129,140,248,0.1),rgba(129,140,248,0.42),rgba(129,140,248,0.1))]`,\n emerald: `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(52,211,153,0.1),rgba(52,211,153,0.42),rgba(52,211,153,0.1))]`,\n gray: `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(161,161,170,0.1),rgba(161,161,170,0.38),rgba(161,161,170,0.1))]`,\n amber: `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(251,191,36,0.12),rgba(251,191,36,0.42),rgba(251,191,36,0.12))]`,\n violet: `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(167,139,250,0.1),rgba(167,139,250,0.42),rgba(167,139,250,0.1))]`,\n \"gradient-blue\": `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(100,149,237,0.1),rgba(100,149,237,0.42),rgba(100,149,237,0.1))]`,\n \"gradient-green\": `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(52,211,153,0.1),rgba(52,211,153,0.42),rgba(52,211,153,0.1))]`,\n \"gradient-red\": `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(239,68,68,0.1),rgba(239,68,68,0.42),rgba(239,68,68,0.1))]`,\n \"gradient-yellow\": `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(250,204,21,0.12),rgba(250,204,21,0.42),rgba(250,204,21,0.12))]`,\n \"gradient-purple\": `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(167,139,250,0.1),rgba(167,139,250,0.42),rgba(167,139,250,0.1))]`,\n \"gradient-teal\": `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(45,212,191,0.1),rgba(45,212,191,0.42),rgba(45,212,191,0.1))]`,\n \"gradient-indigo\": `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(129,140,248,0.1),rgba(129,140,248,0.42),rgba(129,140,248,0.1))]`,\n \"gradient-pink\": `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(244,114,182,0.1),rgba(244,114,182,0.42),rgba(244,114,182,0.1))]`,\n \"gradient-orange\": `${shimmerLayer} [background-image:linear-gradient(90deg,rgba(251,146,60,0.1),rgba(251,146,60,0.42),rgba(251,146,60,0.1))]`,\n} as const;\n\nexport type SkeletonShimmerTone = keyof typeof skeletonShimmerGradientClasses;\n\nexport const skeletonVariants = cva(\n \"relative overflow-hidden bg-black/10 dark:bg-white/10 text-transparent\",\n {\n variants: {\n appearance: {\n default: \"bg-black/10 dark:bg-white/10\",\n subtle: \"bg-black/[0.07] dark:bg-white/[0.07]\",\n muted: \"bg-slate-200/80 dark:bg-slate-800/80\",\n sky: \"bg-sky-500/10\",\n rose: \"bg-rose-500/10\",\n purple: \"bg-purple-500/10\",\n pink: \"bg-pink-500/10\",\n orange: \"bg-orange-500/10\",\n yellow: \"bg-yellow-500/10\",\n teal: \"bg-teal-500/10\",\n indigo: \"bg-indigo-500/10\",\n emerald: \"bg-emerald-500/10\",\n gray: \"bg-gray-500/10\",\n amber: \"bg-amber-500/10\",\n violet: \"bg-violet-500/10\",\n \"gradient-blue\":\n \"bg-linear-to-r from-blue-800 dark:from-blue-600 to-purple-800 dark:to-purple-600\",\n \"gradient-green\":\n \"bg-linear-to-r from-green-800 dark:from-green-600 to-lime-800 dark:to-lime-600\",\n \"gradient-red\":\n \"bg-linear-to-r from-red-800 dark:from-red-600 to-pink-800 dark:to-pink-600\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-yellow-800 dark:from-yellow-600 to-orange-800 dark:to-orange-600\",\n \"gradient-purple\":\n \"bg-linear-to-r from-purple-800 dark:from-purple-600 to-pink-800 dark:to-pink-600\",\n \"gradient-teal\":\n \"bg-linear-to-r from-teal-800 dark:from-teal-600 to-cyan-800 dark:to-cyan-600\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-indigo-800 dark:from-indigo-600 to-purple-800 dark:to-purple-600\",\n \"gradient-pink\":\n \"bg-linear-to-r from-pink-800 dark:from-pink-600 to-rose-800 dark:to-rose-600\",\n \"gradient-orange\":\n \"bg-linear-to-r from-orange-800 dark:from-orange-600 to-red-800 dark:to-red-600\",\n },\n size: {\n sm: \"min-h-3\",\n md: \"min-h-4\",\n lg: \"min-h-6\",\n },\n rounded: {\n none: \"rounded-none\",\n sm: \"rounded-md\",\n md: \"rounded-lg\",\n lg: \"rounded-xl\",\n full: \"rounded-full\",\n },\n animation: {\n none: \"\",\n shimmer: \"\",\n pulse: \"\",\n },\n shimmerTone: {\n default: \"\",\n subtle: \"\",\n muted: \"\",\n sky: \"\",\n rose: \"\",\n purple: \"\",\n pink: \"\",\n orange: \"\",\n yellow: \"\",\n teal: \"\",\n indigo: \"\",\n emerald: \"\",\n gray: \"\",\n amber: \"\",\n violet: \"\",\n \"gradient-blue\": \"\",\n \"gradient-green\": \"\",\n \"gradient-red\": \"\",\n \"gradient-yellow\": \"\",\n \"gradient-purple\": \"\",\n \"gradient-teal\": \"\",\n \"gradient-indigo\": \"\",\n \"gradient-pink\": \"\",\n \"gradient-orange\": \"\",\n },\n },\n compoundVariants: [\n {\n animation: \"shimmer\",\n shimmerTone: \"default\",\n class: skeletonShimmerGradientClasses.default,\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"muted\",\n class: skeletonShimmerGradientClasses.subtle,\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"subtle\",\n class: skeletonShimmerGradientClasses.subtle,\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"sky\",\n class: skeletonShimmerGradientClasses.sky,\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"rose\",\n class: skeletonShimmerGradientClasses.rose,\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"purple\",\n class: skeletonShimmerGradientClasses.purple,\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"pink\",\n class: skeletonShimmerGradientClasses.pink,\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"orange\",\n class: skeletonShimmerGradientClasses.orange,\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"yellow\",\n class: skeletonShimmerGradientClasses.yellow,\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"teal\",\n class: skeletonShimmerGradientClasses.teal,\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"indigo\",\n class: skeletonShimmerGradientClasses.indigo,\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"emerald\",\n class: skeletonShimmerGradientClasses.emerald,\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"gray\",\n class: skeletonShimmerGradientClasses.gray,\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"amber\",\n class: skeletonShimmerGradientClasses.amber,\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"violet\",\n class: skeletonShimmerGradientClasses.violet,\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"gradient-blue\",\n class: skeletonShimmerGradientClasses[\"gradient-blue\"],\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"gradient-green\",\n class: skeletonShimmerGradientClasses[\"gradient-green\"],\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"gradient-red\",\n class: skeletonShimmerGradientClasses[\"gradient-red\"],\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"gradient-yellow\",\n class: skeletonShimmerGradientClasses[\"gradient-yellow\"],\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"gradient-purple\",\n class: skeletonShimmerGradientClasses[\"gradient-purple\"],\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"gradient-teal\",\n class: skeletonShimmerGradientClasses[\"gradient-teal\"],\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"gradient-indigo\",\n class: skeletonShimmerGradientClasses[\"gradient-indigo\"],\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"gradient-pink\",\n class: skeletonShimmerGradientClasses[\"gradient-pink\"],\n },\n {\n animation: \"shimmer\",\n shimmerTone: \"gradient-orange\",\n class: skeletonShimmerGradientClasses[\"gradient-orange\"],\n },\n {\n animation: \"pulse\",\n class: \"\",\n },\n ],\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n rounded: \"md\",\n animation: \"shimmer\",\n shimmerTone: \"default\",\n },\n },\n);\n\nexport const skeletonTextLineVariants = cva(\"block w-full\", {\n variants: {\n size: {\n sm: \"h-2.5\",\n md: \"h-3\",\n lg: \"h-4\",\n },\n },\n defaultVariants: { size: \"md\" },\n});\n","\"use client\";\n\nimport { createContext, useContext, useMemo } from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type {\n SkeletonAnimation,\n SkeletonAvatarProps,\n SkeletonButtonProps,\n SkeletonCardProps,\n SkeletonProps,\n SkeletonTextProps,\n} from \"./types\";\nimport { skeletonTextLineVariants, skeletonVariants } from \"./variants\";\n\nexport const SkeletonAnimationContext = createContext<\n SkeletonAnimation | undefined\n>(undefined);\n\nexport function useSkeletonAnimation(\n fallback: SkeletonAnimation,\n): SkeletonAnimation {\n const value = useContext(SkeletonAnimationContext);\n return value ?? fallback;\n}\n\nfunction skeletonMotionClass(animation: SkeletonAnimation): string {\n if (animation === \"none\") {\n return \"\";\n }\n return \"animate-pulse\";\n}\n\nexport function SkeletonBase(props: SkeletonProps) {\n const {\n className,\n appearance,\n size,\n rounded,\n animation = \"shimmer\",\n shimmerTone,\n busy,\n children,\n ref,\n as: Wrapper = \"div\",\n ...rest\n } = props;\n const ctx = useMemo(() => animation, [animation]);\n\n return (\n <SkeletonAnimationContext.Provider value={ctx}>\n <Wrapper\n ref={ref}\n data-slot=\"skeleton\"\n aria-hidden\n aria-busy={busy ? true : undefined}\n className={cn(\n skeletonVariants({\n appearance,\n size,\n rounded,\n animation,\n shimmerTone,\n }),\n skeletonMotionClass(animation),\n className,\n )}\n {...rest}\n >\n {children}\n </Wrapper>\n </SkeletonAnimationContext.Provider>\n );\n}\n\nSkeletonBase.displayName = \"Skeleton\";\n\nexport function SkeletonTextBase(props: SkeletonTextProps) {\n const {\n lines = 3,\n className,\n appearance,\n size,\n rounded,\n animation = \"shimmer\",\n shimmerTone,\n busy,\n ref,\n as: Wrapper = \"div\",\n } = props;\n const effectiveAnimation = useSkeletonAnimation(animation);\n const motionClass = skeletonMotionClass(effectiveAnimation);\n\n return (\n <div\n data-slot=\"skeleton-text\"\n className={cn(\"flex w-full flex-col gap-2\", className)}\n aria-hidden\n aria-busy={busy ? true : undefined}\n >\n {Array.from({ length: lines }).map((_, index) => (\n <Wrapper\n key={index}\n ref={index === 0 ? ref : undefined}\n className={cn(\n skeletonVariants({\n appearance,\n size,\n rounded,\n animation: effectiveAnimation,\n shimmerTone,\n }),\n skeletonTextLineVariants({ size }),\n index === lines - 1 ? \"w-3/5\" : \"w-full\",\n motionClass,\n )}\n />\n ))}\n </div>\n );\n}\n\nSkeletonTextBase.displayName = \"SkeletonText\";\n\nconst avatarSizeClass: Record<\n NonNullable<SkeletonAvatarProps[\"avatarSize\"]>,\n string\n> = {\n xs: \"size-6\",\n sm: \"size-8\",\n md: \"size-10\",\n lg: \"size-12\",\n xl: \"size-14\",\n \"2xl\": \"size-16\",\n};\n\nexport function SkeletonAvatarBase(props: SkeletonAvatarProps) {\n const {\n avatarSize = \"md\",\n className,\n appearance,\n size,\n rounded = \"full\",\n animation,\n shimmerTone,\n busy,\n ref,\n as: Wrapper = \"div\",\n ...rest\n } = props;\n const effectiveAnimation = useSkeletonAnimation(animation ?? \"shimmer\");\n const motionClass = skeletonMotionClass(effectiveAnimation);\n\n return (\n <Wrapper\n ref={ref}\n data-slot=\"skeleton-avatar\"\n aria-hidden\n aria-busy={busy ? true : undefined}\n className={cn(\n skeletonVariants({\n appearance,\n size,\n rounded,\n animation: effectiveAnimation,\n shimmerTone,\n }),\n avatarSizeClass[avatarSize],\n motionClass,\n className,\n )}\n {...rest}\n />\n );\n}\n\nSkeletonAvatarBase.displayName = \"SkeletonAvatar\";\n\nexport function SkeletonCardBase(props: SkeletonCardProps) {\n const {\n className,\n busy,\n animation = \"shimmer\",\n shimmerTone,\n appearance,\n size,\n rounded,\n ref,\n } = props;\n\n return (\n <div\n ref={ref as never}\n data-slot=\"skeleton-card\"\n className={cn(\"w-full max-w-sm\", className)}\n aria-busy={busy ? true : undefined}\n >\n <SkeletonBase\n rounded=\"lg\"\n animation={animation}\n shimmerTone={shimmerTone}\n appearance={appearance}\n size={size}\n busy={busy}\n className=\"flex flex-col gap-4 p-4\"\n >\n <div className=\"flex items-center gap-3\">\n <SkeletonAvatarBase\n appearance={appearance}\n size={size}\n animation={animation}\n shimmerTone={shimmerTone}\n rounded={rounded}\n />\n <div className=\"flex flex-1 flex-col gap-2\">\n <SkeletonTextBase\n lines={2}\n appearance={appearance}\n size={size}\n animation={animation}\n shimmerTone={shimmerTone}\n />\n </div>\n </div>\n <SkeletonTextBase\n lines={4}\n appearance={appearance}\n size={size}\n animation={animation}\n shimmerTone={shimmerTone}\n />\n </SkeletonBase>\n </div>\n );\n}\n\nSkeletonCardBase.displayName = \"SkeletonCard\";\n\nconst buttonHeight: Record<\n NonNullable<SkeletonButtonProps[\"buttonSize\"]>,\n string\n> = {\n sm: \"h-8 w-24\",\n md: \"h-10 w-32\",\n lg: \"h-12 w-40\",\n};\n\nexport function SkeletonButtonBase(props: SkeletonButtonProps) {\n const {\n buttonSize = \"md\",\n className,\n appearance,\n size,\n rounded = \"md\",\n animation,\n shimmerTone,\n busy,\n ref,\n ...rest\n } = props;\n const effectiveAnimation = useSkeletonAnimation(animation ?? \"shimmer\");\n const motionClass = skeletonMotionClass(effectiveAnimation);\n\n return (\n <div\n ref={ref}\n data-slot=\"skeleton-button\"\n aria-hidden\n aria-busy={busy ? true : undefined}\n className={cn(\n skeletonVariants({\n appearance,\n size,\n rounded,\n animation: effectiveAnimation,\n shimmerTone,\n }),\n buttonHeight[buttonSize],\n motionClass,\n className,\n )}\n {...rest}\n />\n );\n}\n\nSkeletonButtonBase.displayName = \"SkeletonButton\";\n"]}
|