@zentauri-ui/zentauri-components 1.7.4 → 1.7.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/README.md +9 -4
- package/cli/registry.json +3 -0
- package/dist/{chunk-CL55KGDF.js → chunk-3W224B3M.js} +22 -22
- package/dist/chunk-3W224B3M.js.map +1 -0
- package/dist/{chunk-NZDHSIIC.js → chunk-4OCTFG3W.js} +3 -3
- package/dist/chunk-4OCTFG3W.js.map +1 -0
- package/dist/{chunk-4ZKBLVQX.js → chunk-5565GZ4T.js} +19 -19
- package/dist/chunk-5565GZ4T.js.map +1 -0
- package/dist/{chunk-BTJYXKCW.js → chunk-6HPS3ZOP.js} +15 -15
- package/dist/chunk-6HPS3ZOP.js.map +1 -0
- package/dist/chunk-7XCUMSCJ.mjs +80 -0
- package/dist/chunk-7XCUMSCJ.mjs.map +1 -0
- package/dist/{chunk-QAJOE3HJ.js → chunk-BU2MPXPZ.js} +6 -6
- package/dist/chunk-BU2MPXPZ.js.map +1 -0
- package/dist/{chunk-BC6M42HQ.mjs → chunk-CL3VH223.mjs} +21 -21
- package/dist/chunk-CL3VH223.mjs.map +1 -0
- package/dist/{chunk-QXHS3HHZ.mjs → chunk-D3VZKUMH.mjs} +15 -15
- package/dist/chunk-D3VZKUMH.mjs.map +1 -0
- package/dist/chunk-DEZRB6DS.mjs +83 -0
- package/dist/chunk-DEZRB6DS.mjs.map +1 -0
- package/dist/{chunk-EDARAO7X.js → chunk-DFCDLVZA.js} +7 -7
- package/dist/chunk-DFCDLVZA.js.map +1 -0
- package/dist/{chunk-ACGVDY5J.mjs → chunk-EZCYSFML.mjs} +4 -4
- package/dist/chunk-EZCYSFML.mjs.map +1 -0
- package/dist/{chunk-ZYKJC5HH.js → chunk-G66SXATZ.js} +15 -15
- package/dist/chunk-G66SXATZ.js.map +1 -0
- package/dist/{chunk-QBPVJH4P.mjs → chunk-H7WDA6U6.mjs} +5 -5
- package/dist/chunk-H7WDA6U6.mjs.map +1 -0
- package/dist/{chunk-OZMSE44N.mjs → chunk-HLG2YJFZ.mjs} +19 -19
- package/dist/chunk-HLG2YJFZ.mjs.map +1 -0
- package/dist/{chunk-QYLTKBH7.js → chunk-INXWZ4DS.js} +3 -3
- package/dist/chunk-INXWZ4DS.js.map +1 -0
- package/dist/{chunk-QSPXPU72.js → chunk-KTLJEPLF.js} +21 -21
- package/dist/chunk-KTLJEPLF.js.map +1 -0
- package/dist/chunk-LMIL2R4R.js +197 -0
- package/dist/chunk-LMIL2R4R.js.map +1 -0
- package/dist/{chunk-PR4QXFJT.js → chunk-LNYCEPW5.js} +5 -5
- package/dist/chunk-LNYCEPW5.js.map +1 -0
- package/dist/chunk-MEAVYU2Y.mjs +192 -0
- package/dist/chunk-MEAVYU2Y.mjs.map +1 -0
- package/dist/{chunk-P5WLYJ2C.mjs → chunk-NNZXBL7R.mjs} +6 -6
- package/dist/chunk-NNZXBL7R.mjs.map +1 -0
- package/dist/{chunk-HMNIH3KJ.mjs → chunk-ORFI4BCJ.mjs} +3 -3
- package/dist/chunk-ORFI4BCJ.mjs.map +1 -0
- package/dist/{chunk-K7TCW5PJ.js → chunk-PMALYOPA.js} +3 -3
- package/dist/chunk-PMALYOPA.js.map +1 -0
- package/dist/{chunk-WPXQHWPV.js → chunk-PYUZOVLY.js} +4 -4
- package/dist/chunk-PYUZOVLY.js.map +1 -0
- package/dist/{chunk-ITVMSCOJ.mjs → chunk-R2JJTREQ.mjs} +22 -22
- package/dist/chunk-R2JJTREQ.mjs.map +1 -0
- package/dist/chunk-RIHJAEOL.js +107 -0
- package/dist/chunk-RIHJAEOL.js.map +1 -0
- package/dist/{chunk-FHLZH3PB.mjs → chunk-SFRS4EZ5.mjs} +3 -3
- package/dist/chunk-SFRS4EZ5.mjs.map +1 -0
- package/dist/{chunk-KTGV76M3.mjs → chunk-SSJXWD2M.mjs} +3 -3
- package/dist/chunk-SSJXWD2M.mjs.map +1 -0
- package/dist/{chunk-YAO62VH2.js → chunk-UGH23TAH.js} +15 -15
- package/dist/chunk-UGH23TAH.js.map +1 -0
- package/dist/chunk-UPZ5XGUD.mjs +100 -0
- package/dist/chunk-UPZ5XGUD.mjs.map +1 -0
- package/dist/{chunk-4XVNQ7IY.mjs → chunk-UR7TNW45.mjs} +15 -15
- package/dist/chunk-UR7TNW45.mjs.map +1 -0
- package/dist/{chunk-HCGSEPOD.mjs → chunk-UROKWFPX.mjs} +7 -7
- package/dist/chunk-UROKWFPX.mjs.map +1 -0
- package/dist/chunk-V5JTDRV5.mjs +278 -0
- package/dist/chunk-V5JTDRV5.mjs.map +1 -0
- package/dist/{chunk-XRDVD2EN.js → chunk-X3O45MPI.js} +3 -3
- package/dist/{chunk-XRDVD2EN.js.map → chunk-X3O45MPI.js.map} +1 -1
- package/dist/{chunk-KEKMMNL5.mjs → chunk-XXRDLZW7.mjs} +3 -3
- package/dist/chunk-XXRDLZW7.mjs.map +1 -0
- package/dist/chunk-Z4KHAD6Y.js +295 -0
- package/dist/chunk-Z4KHAD6Y.js.map +1 -0
- package/dist/{chunk-NHQ3S4Y6.mjs → chunk-ZIFMIS7D.mjs} +15 -15
- package/dist/chunk-ZIFMIS7D.mjs.map +1 -0
- package/dist/chunk-ZUT7ZUM7.js +84 -0
- package/dist/chunk-ZUT7ZUM7.js.map +1 -0
- package/dist/chunk-ZX2IBIZT.js +92 -0
- package/dist/chunk-ZX2IBIZT.js.map +1 -0
- package/dist/design-system/accordion.d.ts +1 -1
- package/dist/design-system/alert.d.ts +5 -5
- package/dist/design-system/badge.d.ts +3 -3
- package/dist/design-system/card.d.ts +2 -2
- package/dist/design-system/checkbox.d.ts +10 -10
- package/dist/design-system/checkbox.d.ts.map +1 -1
- package/dist/design-system/command.d.ts +1 -1
- package/dist/design-system/command.d.ts.map +1 -1
- package/dist/design-system/context-menu.d.ts +41 -0
- package/dist/design-system/context-menu.d.ts.map +1 -0
- package/dist/design-system/drawer.d.ts +1 -1
- package/dist/design-system/dropdown.d.ts +31 -31
- package/dist/design-system/dropdown.d.ts.map +1 -1
- package/dist/design-system/file-upload.d.ts +15 -15
- package/dist/design-system/file-upload.d.ts.map +1 -1
- package/dist/design-system/index.d.ts +3 -0
- package/dist/design-system/index.d.ts.map +1 -1
- package/dist/design-system/inputs.d.ts +13 -13
- package/dist/design-system/inputs.d.ts.map +1 -1
- package/dist/design-system/modal.d.ts +1 -1
- package/dist/design-system/modal.d.ts.map +1 -1
- package/dist/design-system/pagination.d.ts +25 -25
- package/dist/design-system/popover.d.ts +19 -19
- package/dist/design-system/popover.d.ts.map +1 -1
- package/dist/design-system/radio-group.d.ts +10 -10
- package/dist/design-system/radio-group.d.ts.map +1 -1
- package/dist/design-system/scroll-area.d.ts +33 -0
- package/dist/design-system/scroll-area.d.ts.map +1 -0
- package/dist/design-system/select.d.ts +35 -35
- package/dist/design-system/select.d.ts.map +1 -1
- package/dist/design-system/skeleton.d.ts +13 -13
- package/dist/design-system/skeleton.d.ts.map +1 -1
- package/dist/design-system/slider.d.ts +23 -23
- package/dist/design-system/slider.d.ts.map +1 -1
- package/dist/design-system/stepper.d.ts +22 -22
- package/dist/design-system/table.d.ts +13 -13
- package/dist/design-system/tabs.d.ts +4 -4
- package/dist/design-system/tabs.d.ts.map +1 -1
- package/dist/design-system/timeline.d.ts +56 -0
- package/dist/design-system/timeline.d.ts.map +1 -0
- package/dist/design-system/toast.d.ts +17 -17
- package/dist/design-system/toast.d.ts.map +1 -1
- package/dist/design-system/toggle.d.ts +54 -54
- package/dist/design-system/toggle.d.ts.map +1 -1
- package/dist/design-system/tooltip.d.ts +20 -20
- package/dist/design-system/typography.d.ts +15 -15
- package/dist/ui/accordion/animated.js +7 -7
- package/dist/ui/accordion/animated.mjs +2 -2
- package/dist/ui/accordion.js +9 -9
- package/dist/ui/accordion.mjs +2 -2
- package/dist/ui/alert/animated/alert-animated.d.ts.map +1 -1
- package/dist/ui/alert/animated.js +2 -2
- package/dist/ui/alert/animated.js.map +1 -1
- package/dist/ui/alert/animated.mjs +1 -1
- package/dist/ui/alert/animated.mjs.map +1 -1
- package/dist/ui/alert.js +10 -10
- package/dist/ui/alert.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 +1 -1
- package/dist/ui/badge.js +4 -4
- package/dist/ui/badge.mjs +2 -2
- package/dist/ui/card/animated.js +7 -7
- package/dist/ui/card/animated.mjs +2 -2
- package/dist/ui/card.js +12 -12
- package/dist/ui/card.mjs +2 -2
- package/dist/ui/checkbox/animated.js +4 -4
- package/dist/ui/checkbox/animated.mjs +1 -1
- package/dist/ui/checkbox.js +8 -8
- package/dist/ui/checkbox.mjs +2 -2
- package/dist/ui/command/animated.js +2 -2
- package/dist/ui/command/animated.mjs +1 -1
- package/dist/ui/command.js +15 -15
- package/dist/ui/command.mjs +2 -2
- package/dist/ui/context-menu/context-menu.d.ts +11 -0
- package/dist/ui/context-menu/context-menu.d.ts.map +1 -0
- package/dist/ui/context-menu/index.d.ts +4 -0
- package/dist/ui/context-menu/index.d.ts.map +1 -0
- package/dist/ui/context-menu/types.d.ts +81 -0
- package/dist/ui/context-menu/types.d.ts.map +1 -0
- package/dist/ui/context-menu/variants.d.ts +7 -0
- package/dist/ui/context-menu/variants.d.ts.map +1 -0
- package/dist/ui/context-menu.js +500 -0
- package/dist/ui/context-menu.js.map +1 -0
- package/dist/ui/context-menu.mjs +488 -0
- package/dist/ui/context-menu.mjs.map +1 -0
- package/dist/ui/drawer/animated.js +11 -11
- package/dist/ui/drawer/animated.mjs +2 -2
- package/dist/ui/drawer.js +11 -11
- package/dist/ui/drawer.mjs +1 -1
- package/dist/ui/dropdown.js +9 -89
- package/dist/ui/dropdown.js.map +1 -1
- package/dist/ui/dropdown.mjs +1 -81
- package/dist/ui/dropdown.mjs.map +1 -1
- package/dist/ui/dynamic-stepper.js +47 -47
- package/dist/ui/dynamic-stepper.js.map +1 -1
- package/dist/ui/dynamic-stepper.mjs +47 -47
- package/dist/ui/dynamic-stepper.mjs.map +1 -1
- package/dist/ui/file-upload.js +15 -15
- package/dist/ui/file-upload.js.map +1 -1
- package/dist/ui/file-upload.mjs +15 -15
- 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.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.js +12 -12
- package/dist/ui/modal.mjs +2 -2
- package/dist/ui/pagination.js +25 -25
- package/dist/ui/pagination.js.map +1 -1
- package/dist/ui/pagination.mjs +25 -25
- package/dist/ui/pagination.mjs.map +1 -1
- package/dist/ui/popover/animated.js +4 -4
- package/dist/ui/popover/animated.mjs +1 -1
- package/dist/ui/popover.js +7 -7
- package/dist/ui/popover.mjs +1 -1
- package/dist/ui/radio-group/animated.js +7 -7
- package/dist/ui/radio-group/animated.mjs +1 -1
- package/dist/ui/radio-group.js +11 -11
- package/dist/ui/radio-group.mjs +2 -2
- package/dist/ui/scroll-area/index.d.ts +4 -0
- package/dist/ui/scroll-area/index.d.ts.map +1 -0
- package/dist/ui/scroll-area/scroll-area.d.ts +6 -0
- package/dist/ui/scroll-area/scroll-area.d.ts.map +1 -0
- package/dist/ui/scroll-area/types.d.ts +8 -0
- package/dist/ui/scroll-area/types.d.ts.map +1 -0
- package/dist/ui/scroll-area/variants.d.ts +8 -0
- package/dist/ui/scroll-area/variants.d.ts.map +1 -0
- package/dist/ui/scroll-area.js +123 -0
- package/dist/ui/scroll-area.js.map +1 -0
- package/dist/ui/scroll-area.mjs +120 -0
- package/dist/ui/scroll-area.mjs.map +1 -0
- package/dist/ui/search.js +2 -2
- package/dist/ui/search.mjs +1 -1
- package/dist/ui/select.js +35 -35
- package/dist/ui/select.js.map +1 -1
- package/dist/ui/select.mjs +35 -35
- 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.js +9 -9
- package/dist/ui/skeleton.mjs +1 -1
- package/dist/ui/slider.js +23 -23
- package/dist/ui/slider.js.map +1 -1
- package/dist/ui/slider.mjs +23 -23
- package/dist/ui/slider.mjs.map +1 -1
- package/dist/ui/stepper.js +22 -22
- package/dist/ui/stepper.js.map +1 -1
- package/dist/ui/stepper.mjs +22 -22
- 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.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.js +9 -9
- package/dist/ui/tabs.mjs +1 -1
- package/dist/ui/timeline/animated/animations.d.ts +8 -0
- package/dist/ui/timeline/animated/animations.d.ts.map +1 -0
- package/dist/ui/timeline/animated/index.d.ts +6 -0
- package/dist/ui/timeline/animated/index.d.ts.map +1 -0
- package/dist/ui/timeline/animated/timeline-item-animated.d.ts +8 -0
- package/dist/ui/timeline/animated/timeline-item-animated.d.ts.map +1 -0
- package/dist/ui/timeline/animated/types.d.ts +12 -0
- package/dist/ui/timeline/animated/types.d.ts.map +1 -0
- package/dist/ui/timeline/animated.js +94 -0
- package/dist/ui/timeline/animated.js.map +1 -0
- package/dist/ui/timeline/animated.mjs +71 -0
- package/dist/ui/timeline/animated.mjs.map +1 -0
- package/dist/ui/timeline/index.d.ts +4 -0
- package/dist/ui/timeline/index.d.ts.map +1 -0
- package/dist/ui/timeline/timeline-base.d.ts +37 -0
- package/dist/ui/timeline/timeline-base.d.ts.map +1 -0
- package/dist/ui/timeline/timeline.d.ts +8 -0
- package/dist/ui/timeline/timeline.d.ts.map +1 -0
- package/dist/ui/timeline/types.d.ts +38 -0
- package/dist/ui/timeline/types.d.ts.map +1 -0
- package/dist/ui/timeline/variants.d.ts +19 -0
- package/dist/ui/timeline/variants.d.ts.map +1 -0
- package/dist/ui/timeline.js +63 -0
- package/dist/ui/timeline.js.map +1 -0
- package/dist/ui/timeline.mjs +14 -0
- package/dist/ui/timeline.mjs.map +1 -0
- package/dist/ui/toast/animated.js +7 -7
- package/dist/ui/toast/animated.mjs +1 -1
- package/dist/ui/toast.js +12 -12
- package/dist/ui/toast.mjs +1 -1
- package/dist/ui/toggle/animated.js +4 -4
- package/dist/ui/toggle/animated.mjs +1 -1
- package/dist/ui/toggle.js +4 -4
- package/dist/ui/toggle.mjs +2 -2
- package/dist/ui/tooltip/animated.js +3 -3
- package/dist/ui/tooltip/animated.mjs +1 -1
- package/dist/ui/tooltip.js +7 -7
- package/dist/ui/tooltip.mjs +1 -1
- package/dist/ui/typography.js +15 -15
- package/dist/ui/typography.js.map +1 -1
- package/dist/ui/typography.mjs +15 -15
- package/dist/ui/typography.mjs.map +1 -1
- package/package.json +1 -1
- package/src/design-system/accordion.ts +1 -1
- package/src/design-system/alert.ts +5 -5
- package/src/design-system/badge.ts +3 -3
- package/src/design-system/card.ts +2 -2
- package/src/design-system/checkbox.ts +10 -12
- package/src/design-system/command.ts +1 -1
- package/src/design-system/context-menu.ts +44 -0
- package/src/design-system/drawer.ts +1 -1
- package/src/design-system/dropdown.ts +31 -31
- package/src/design-system/dynamic-stepper.ts +47 -47
- package/src/design-system/file-upload.ts +15 -15
- package/src/design-system/index.ts +3 -0
- package/src/design-system/inputs.ts +13 -13
- package/src/design-system/modal.ts +1 -1
- package/src/design-system/pagination.ts +25 -25
- package/src/design-system/popover.ts +19 -23
- package/src/design-system/radio-group.ts +10 -12
- package/src/design-system/scroll-area.ts +47 -0
- package/src/design-system/select.ts +36 -35
- package/src/design-system/skeleton.ts +20 -13
- package/src/design-system/slider.ts +23 -23
- package/src/design-system/stepper.ts +22 -22
- package/src/design-system/table.ts +13 -13
- package/src/design-system/tabs.ts +5 -4
- package/src/design-system/timeline.ts +87 -0
- package/src/design-system/toast.ts +17 -17
- package/src/design-system/toggle.ts +55 -54
- package/src/design-system/tooltip.ts +20 -20
- package/src/design-system/typography.ts +15 -15
- package/src/ui/alert/animated/alert-animated.tsx +1 -0
- package/src/ui/context-menu/context-menu.test.tsx +176 -0
- package/src/ui/context-menu/context-menu.tsx +536 -0
- package/src/ui/context-menu/index.ts +29 -0
- package/src/ui/context-menu/types.ts +110 -0
- package/src/ui/context-menu/variants.ts +26 -0
- package/src/ui/scroll-area/index.ts +5 -0
- package/src/ui/scroll-area/scroll-area.test.tsx +116 -0
- package/src/ui/scroll-area/scroll-area.tsx +62 -0
- package/src/ui/scroll-area/types.ts +11 -0
- package/src/ui/scroll-area/variants.ts +44 -0
- package/src/ui/timeline/animated/animations.ts +16 -0
- package/src/ui/timeline/animated/index.ts +22 -0
- package/src/ui/timeline/animated/timeline-item-animated.tsx +76 -0
- package/src/ui/timeline/animated/types.ts +21 -0
- package/src/ui/timeline/index.ts +30 -0
- package/src/ui/timeline/timeline-base.tsx +232 -0
- package/src/ui/timeline/timeline.test.tsx +262 -0
- package/src/ui/timeline/timeline.tsx +24 -0
- package/src/ui/timeline/types.ts +61 -0
- package/src/ui/timeline/variants.ts +60 -0
- package/dist/chunk-4XVNQ7IY.mjs.map +0 -1
- package/dist/chunk-4ZKBLVQX.js.map +0 -1
- package/dist/chunk-6QQUQLPB.js +0 -107
- package/dist/chunk-6QQUQLPB.js.map +0 -1
- package/dist/chunk-ACGVDY5J.mjs.map +0 -1
- package/dist/chunk-BC6M42HQ.mjs.map +0 -1
- package/dist/chunk-BTJYXKCW.js.map +0 -1
- package/dist/chunk-CL55KGDF.js.map +0 -1
- package/dist/chunk-EDARAO7X.js.map +0 -1
- package/dist/chunk-EN4VLNBF.js +0 -197
- package/dist/chunk-EN4VLNBF.js.map +0 -1
- package/dist/chunk-FHLZH3PB.mjs.map +0 -1
- package/dist/chunk-HCGSEPOD.mjs.map +0 -1
- package/dist/chunk-HMNIH3KJ.mjs.map +0 -1
- package/dist/chunk-ITVMSCOJ.mjs.map +0 -1
- package/dist/chunk-K6IZANTI.mjs +0 -80
- package/dist/chunk-K6IZANTI.mjs.map +0 -1
- package/dist/chunk-K7TCW5PJ.js.map +0 -1
- package/dist/chunk-KEKMMNL5.mjs.map +0 -1
- package/dist/chunk-KTGV76M3.mjs.map +0 -1
- package/dist/chunk-MTTXLC2V.mjs +0 -100
- package/dist/chunk-MTTXLC2V.mjs.map +0 -1
- package/dist/chunk-NHQ3S4Y6.mjs.map +0 -1
- package/dist/chunk-NZDHSIIC.js.map +0 -1
- package/dist/chunk-OZMSE44N.mjs.map +0 -1
- package/dist/chunk-P5WLYJ2C.mjs.map +0 -1
- package/dist/chunk-PHEUJ4EF.js +0 -84
- package/dist/chunk-PHEUJ4EF.js.map +0 -1
- package/dist/chunk-PMWRJ2KS.mjs +0 -192
- package/dist/chunk-PMWRJ2KS.mjs.map +0 -1
- package/dist/chunk-PR4QXFJT.js.map +0 -1
- package/dist/chunk-QAJOE3HJ.js.map +0 -1
- package/dist/chunk-QBPVJH4P.mjs.map +0 -1
- package/dist/chunk-QSPXPU72.js.map +0 -1
- package/dist/chunk-QXHS3HHZ.mjs.map +0 -1
- package/dist/chunk-QYLTKBH7.js.map +0 -1
- package/dist/chunk-WPXQHWPV.js.map +0 -1
- package/dist/chunk-YAO62VH2.js.map +0 -1
- package/dist/chunk-ZYKJC5HH.js.map +0 -1
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
import { createRef } from "react";
|
|
2
|
+
import { render, screen } from "@testing-library/react";
|
|
3
|
+
import { describe, expect, it } from "vitest";
|
|
4
|
+
|
|
5
|
+
import {
|
|
6
|
+
Timeline,
|
|
7
|
+
TimelineContent,
|
|
8
|
+
TimelineDescription,
|
|
9
|
+
TimelineIndicator,
|
|
10
|
+
TimelineItem,
|
|
11
|
+
TimelineTitle,
|
|
12
|
+
} from "./timeline";
|
|
13
|
+
|
|
14
|
+
describe("Timeline", () => {
|
|
15
|
+
it("should expose displayName", () => {
|
|
16
|
+
expect(Timeline.displayName).toBe("Timeline");
|
|
17
|
+
expect(TimelineItem.displayName).toBe("TimelineItem");
|
|
18
|
+
expect(TimelineIndicator.displayName).toBe("TimelineIndicator");
|
|
19
|
+
expect(TimelineContent.displayName).toBe("TimelineContent");
|
|
20
|
+
expect(TimelineTitle.displayName).toBe("TimelineTitle");
|
|
21
|
+
expect(TimelineDescription.displayName).toBe("TimelineDescription");
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
it("should stamp data-slot on timeline root and use ordered list markup", () => {
|
|
25
|
+
render(
|
|
26
|
+
<Timeline>
|
|
27
|
+
<TimelineItem>
|
|
28
|
+
<TimelineIndicator />
|
|
29
|
+
<TimelineContent>
|
|
30
|
+
<TimelineTitle>One</TimelineTitle>
|
|
31
|
+
</TimelineContent>
|
|
32
|
+
</TimelineItem>
|
|
33
|
+
</Timeline>,
|
|
34
|
+
);
|
|
35
|
+
const root = document.querySelector('[data-slot="timeline"]');
|
|
36
|
+
expect(root).toBeTruthy();
|
|
37
|
+
expect(root?.tagName).toBe("OL");
|
|
38
|
+
expect(document.querySelector('[data-slot="timeline-item"]')?.tagName).toBe(
|
|
39
|
+
"LI",
|
|
40
|
+
);
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
it("should apply default indicator appearance from the root", () => {
|
|
44
|
+
render(
|
|
45
|
+
<Timeline>
|
|
46
|
+
<TimelineItem>
|
|
47
|
+
<TimelineIndicator />
|
|
48
|
+
<TimelineContent>
|
|
49
|
+
<TimelineTitle>Cart</TimelineTitle>
|
|
50
|
+
</TimelineContent>
|
|
51
|
+
</TimelineItem>
|
|
52
|
+
</Timeline>,
|
|
53
|
+
);
|
|
54
|
+
const indicator = document.querySelector(
|
|
55
|
+
'[data-slot="timeline-indicator"]',
|
|
56
|
+
);
|
|
57
|
+
expect(indicator?.className).toContain(
|
|
58
|
+
"--zui-timeline-indicator-default-border",
|
|
59
|
+
);
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
it("should inherit appearance from the Timeline root", () => {
|
|
63
|
+
render(
|
|
64
|
+
<Timeline appearance="sky">
|
|
65
|
+
<TimelineItem>
|
|
66
|
+
<TimelineIndicator />
|
|
67
|
+
<TimelineContent>
|
|
68
|
+
<TimelineTitle>Sky</TimelineTitle>
|
|
69
|
+
</TimelineContent>
|
|
70
|
+
</TimelineItem>
|
|
71
|
+
</Timeline>,
|
|
72
|
+
);
|
|
73
|
+
const indicator = document.querySelector(
|
|
74
|
+
'[data-slot="timeline-indicator"]',
|
|
75
|
+
);
|
|
76
|
+
expect(indicator?.className).toContain(
|
|
77
|
+
"--zui-timeline-indicator-sky-border",
|
|
78
|
+
);
|
|
79
|
+
});
|
|
80
|
+
|
|
81
|
+
it("should let an indicator override the root appearance", () => {
|
|
82
|
+
render(
|
|
83
|
+
<Timeline appearance="sky">
|
|
84
|
+
<TimelineItem>
|
|
85
|
+
<TimelineIndicator />
|
|
86
|
+
<TimelineContent>
|
|
87
|
+
<TimelineTitle>Default sky</TimelineTitle>
|
|
88
|
+
</TimelineContent>
|
|
89
|
+
</TimelineItem>
|
|
90
|
+
<TimelineItem>
|
|
91
|
+
<TimelineIndicator appearance="rose" />
|
|
92
|
+
<TimelineContent>
|
|
93
|
+
<TimelineTitle>Override rose</TimelineTitle>
|
|
94
|
+
</TimelineContent>
|
|
95
|
+
</TimelineItem>
|
|
96
|
+
</Timeline>,
|
|
97
|
+
);
|
|
98
|
+
const indicators = document.querySelectorAll(
|
|
99
|
+
'[data-slot="timeline-indicator"]',
|
|
100
|
+
);
|
|
101
|
+
expect(indicators[0]?.className).toContain(
|
|
102
|
+
"--zui-timeline-indicator-sky-border",
|
|
103
|
+
);
|
|
104
|
+
expect(indicators[1]?.className).toContain(
|
|
105
|
+
"--zui-timeline-indicator-rose-border",
|
|
106
|
+
);
|
|
107
|
+
});
|
|
108
|
+
|
|
109
|
+
it("should pass size from Timeline context to indicators", () => {
|
|
110
|
+
render(
|
|
111
|
+
<Timeline size="sm">
|
|
112
|
+
<TimelineItem>
|
|
113
|
+
<TimelineIndicator />
|
|
114
|
+
<TimelineContent>
|
|
115
|
+
<TimelineTitle>Small</TimelineTitle>
|
|
116
|
+
</TimelineContent>
|
|
117
|
+
</TimelineItem>
|
|
118
|
+
</Timeline>,
|
|
119
|
+
);
|
|
120
|
+
const indicator = document.querySelector(
|
|
121
|
+
'[data-slot="timeline-indicator"]',
|
|
122
|
+
);
|
|
123
|
+
expect(indicator?.className).toMatch(/size-5/);
|
|
124
|
+
});
|
|
125
|
+
|
|
126
|
+
it("should render a connector on every item except the last", () => {
|
|
127
|
+
render(
|
|
128
|
+
<Timeline>
|
|
129
|
+
<TimelineItem>
|
|
130
|
+
<TimelineIndicator />
|
|
131
|
+
<TimelineContent>
|
|
132
|
+
<TimelineTitle>First</TimelineTitle>
|
|
133
|
+
</TimelineContent>
|
|
134
|
+
</TimelineItem>
|
|
135
|
+
<TimelineItem>
|
|
136
|
+
<TimelineIndicator />
|
|
137
|
+
<TimelineContent>
|
|
138
|
+
<TimelineTitle>Second</TimelineTitle>
|
|
139
|
+
</TimelineContent>
|
|
140
|
+
</TimelineItem>
|
|
141
|
+
<TimelineItem>
|
|
142
|
+
<TimelineIndicator />
|
|
143
|
+
<TimelineContent>
|
|
144
|
+
<TimelineTitle>Third</TimelineTitle>
|
|
145
|
+
</TimelineContent>
|
|
146
|
+
</TimelineItem>
|
|
147
|
+
</Timeline>,
|
|
148
|
+
);
|
|
149
|
+
const connectors = document.querySelectorAll(
|
|
150
|
+
'[data-slot="timeline-connector"]',
|
|
151
|
+
);
|
|
152
|
+
expect(connectors).toHaveLength(2);
|
|
153
|
+
const items = document.querySelectorAll('[data-slot="timeline-item"]');
|
|
154
|
+
expect(items[2]?.hasAttribute("data-last")).toBe(true);
|
|
155
|
+
expect(items[0]?.hasAttribute("data-last")).toBe(false);
|
|
156
|
+
});
|
|
157
|
+
|
|
158
|
+
it("should drop bottom padding on the last item's content", () => {
|
|
159
|
+
render(
|
|
160
|
+
<Timeline>
|
|
161
|
+
<TimelineItem>
|
|
162
|
+
<TimelineIndicator />
|
|
163
|
+
<TimelineContent data-testid="first">
|
|
164
|
+
<TimelineTitle>First</TimelineTitle>
|
|
165
|
+
</TimelineContent>
|
|
166
|
+
</TimelineItem>
|
|
167
|
+
<TimelineItem>
|
|
168
|
+
<TimelineIndicator />
|
|
169
|
+
<TimelineContent data-testid="last">
|
|
170
|
+
<TimelineTitle>Last</TimelineTitle>
|
|
171
|
+
</TimelineContent>
|
|
172
|
+
</TimelineItem>
|
|
173
|
+
</Timeline>,
|
|
174
|
+
);
|
|
175
|
+
expect(screen.getByTestId("first").className).toMatch(/pb-6/);
|
|
176
|
+
expect(screen.getByTestId("last").className).toMatch(/pb-0/);
|
|
177
|
+
expect(screen.getByTestId("last").className).not.toMatch(/pb-6/);
|
|
178
|
+
});
|
|
179
|
+
|
|
180
|
+
it("should render custom indicator children", () => {
|
|
181
|
+
render(
|
|
182
|
+
<Timeline>
|
|
183
|
+
<TimelineItem>
|
|
184
|
+
<TimelineIndicator>✓</TimelineIndicator>
|
|
185
|
+
<TimelineContent>
|
|
186
|
+
<TimelineTitle>Check</TimelineTitle>
|
|
187
|
+
</TimelineContent>
|
|
188
|
+
</TimelineItem>
|
|
189
|
+
</Timeline>,
|
|
190
|
+
);
|
|
191
|
+
expect(screen.getByText("✓")).toBeInTheDocument();
|
|
192
|
+
});
|
|
193
|
+
|
|
194
|
+
it("should stamp data-slot on content, title and description", () => {
|
|
195
|
+
render(
|
|
196
|
+
<Timeline>
|
|
197
|
+
<TimelineItem>
|
|
198
|
+
<TimelineIndicator />
|
|
199
|
+
<TimelineContent data-testid="c">
|
|
200
|
+
<TimelineTitle data-testid="t">T</TimelineTitle>
|
|
201
|
+
<TimelineDescription data-testid="d">D</TimelineDescription>
|
|
202
|
+
</TimelineContent>
|
|
203
|
+
</TimelineItem>
|
|
204
|
+
</Timeline>,
|
|
205
|
+
);
|
|
206
|
+
expect(document.querySelector('[data-slot="timeline-content"]')).toBe(
|
|
207
|
+
screen.getByTestId("c"),
|
|
208
|
+
);
|
|
209
|
+
expect(document.querySelector('[data-slot="timeline-title"]')).toBe(
|
|
210
|
+
screen.getByTestId("t"),
|
|
211
|
+
);
|
|
212
|
+
expect(document.querySelector('[data-slot="timeline-description"]')).toBe(
|
|
213
|
+
screen.getByTestId("d"),
|
|
214
|
+
);
|
|
215
|
+
});
|
|
216
|
+
|
|
217
|
+
it("should forward ref on Timeline", () => {
|
|
218
|
+
const ref = createRef<HTMLOListElement>();
|
|
219
|
+
render(
|
|
220
|
+
<Timeline ref={ref}>
|
|
221
|
+
<TimelineItem>
|
|
222
|
+
<TimelineIndicator />
|
|
223
|
+
<TimelineContent>
|
|
224
|
+
<TimelineTitle>A</TimelineTitle>
|
|
225
|
+
</TimelineContent>
|
|
226
|
+
</TimelineItem>
|
|
227
|
+
</Timeline>,
|
|
228
|
+
);
|
|
229
|
+
expect(ref.current?.getAttribute("data-slot")).toBe("timeline");
|
|
230
|
+
});
|
|
231
|
+
|
|
232
|
+
it("should forward ref on TimelineItem", () => {
|
|
233
|
+
const ref = createRef<HTMLLIElement>();
|
|
234
|
+
render(
|
|
235
|
+
<Timeline>
|
|
236
|
+
<TimelineItem ref={ref}>
|
|
237
|
+
<TimelineIndicator />
|
|
238
|
+
<TimelineContent>
|
|
239
|
+
<TimelineTitle>A</TimelineTitle>
|
|
240
|
+
</TimelineContent>
|
|
241
|
+
</TimelineItem>
|
|
242
|
+
</Timeline>,
|
|
243
|
+
);
|
|
244
|
+
expect(ref.current?.getAttribute("data-slot")).toBe("timeline-item");
|
|
245
|
+
});
|
|
246
|
+
|
|
247
|
+
it("should throw when TimelineItem is used outside Timeline", () => {
|
|
248
|
+
expect(() =>
|
|
249
|
+
render(
|
|
250
|
+
<TimelineItem>
|
|
251
|
+
<TimelineIndicator />
|
|
252
|
+
</TimelineItem>,
|
|
253
|
+
),
|
|
254
|
+
).toThrow(/must be used within <Timeline>/);
|
|
255
|
+
});
|
|
256
|
+
|
|
257
|
+
it("should throw when TimelineIndicator is used outside Timeline", () => {
|
|
258
|
+
expect(() => render(<TimelineIndicator />)).toThrow(
|
|
259
|
+
/must be used within <Timeline>/,
|
|
260
|
+
);
|
|
261
|
+
});
|
|
262
|
+
});
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// timeline.tsx — default static entry (no framer-motion)
|
|
2
|
+
import {
|
|
3
|
+
Timeline as TimelineBase,
|
|
4
|
+
TimelineContent,
|
|
5
|
+
TimelineDescription,
|
|
6
|
+
TimelineIndicator,
|
|
7
|
+
TimelineItem,
|
|
8
|
+
TimelineTitle,
|
|
9
|
+
} from "./timeline-base";
|
|
10
|
+
import type { TimelineProps } from "./types";
|
|
11
|
+
|
|
12
|
+
export function Timeline(props: TimelineProps) {
|
|
13
|
+
return <TimelineBase {...props} />;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
Timeline.displayName = "Timeline";
|
|
17
|
+
|
|
18
|
+
export {
|
|
19
|
+
TimelineContent,
|
|
20
|
+
TimelineDescription,
|
|
21
|
+
TimelineIndicator,
|
|
22
|
+
TimelineItem,
|
|
23
|
+
TimelineTitle,
|
|
24
|
+
};
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type { VariantProps } from "class-variance-authority";
|
|
2
|
+
import type {
|
|
3
|
+
ComponentPropsWithRef,
|
|
4
|
+
ComponentPropsWithoutRef,
|
|
5
|
+
ReactNode,
|
|
6
|
+
} from "react";
|
|
7
|
+
|
|
8
|
+
import type { TimelineTransition } from "./animated/animations";
|
|
9
|
+
import type {
|
|
10
|
+
timelineIndicatorVariants,
|
|
11
|
+
timelineVariants,
|
|
12
|
+
} from "./variants";
|
|
13
|
+
|
|
14
|
+
export type { TimelineTransition };
|
|
15
|
+
|
|
16
|
+
type TimelineVariantProps = VariantProps<typeof timelineVariants>;
|
|
17
|
+
|
|
18
|
+
export type TimelineAppearance = NonNullable<
|
|
19
|
+
VariantProps<typeof timelineIndicatorVariants>["appearance"]
|
|
20
|
+
>;
|
|
21
|
+
|
|
22
|
+
export type TimelineSize = NonNullable<
|
|
23
|
+
VariantProps<typeof timelineIndicatorVariants>["size"]
|
|
24
|
+
>;
|
|
25
|
+
|
|
26
|
+
export type TimelineProps = TimelineVariantProps & {
|
|
27
|
+
/** Default indicator appearance applied to every item (overridable per indicator). */
|
|
28
|
+
appearance?: TimelineAppearance;
|
|
29
|
+
/** Controls indicator size, content spacing, and text scale. */
|
|
30
|
+
size?: TimelineSize;
|
|
31
|
+
children?: ReactNode;
|
|
32
|
+
} & Omit<ComponentPropsWithRef<"ol">, "children">;
|
|
33
|
+
|
|
34
|
+
export type TimelineItemProps = ComponentPropsWithRef<"li"> & {
|
|
35
|
+
children?: ReactNode;
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
export type TimelineIndicatorProps = ComponentPropsWithoutRef<"div"> & {
|
|
39
|
+
/** Override the appearance inherited from the Timeline root. */
|
|
40
|
+
appearance?: TimelineAppearance;
|
|
41
|
+
children?: ReactNode;
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
export type TimelineContentProps = ComponentPropsWithoutRef<"div"> & {
|
|
45
|
+
children?: ReactNode;
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
export type TimelineTitleProps = ComponentPropsWithoutRef<"div">;
|
|
49
|
+
|
|
50
|
+
export type TimelineDescriptionProps = ComponentPropsWithoutRef<"p">;
|
|
51
|
+
|
|
52
|
+
export type TimelineCtx = {
|
|
53
|
+
appearance: TimelineAppearance;
|
|
54
|
+
size: TimelineSize;
|
|
55
|
+
total: number;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
export type TimelineItemCtx = {
|
|
59
|
+
index: number;
|
|
60
|
+
isLast: boolean;
|
|
61
|
+
};
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { cva } from "class-variance-authority";
|
|
2
|
+
|
|
3
|
+
import {
|
|
4
|
+
zuiTimelineBase,
|
|
5
|
+
zuiTimelineConnectorBase,
|
|
6
|
+
zuiTimelineConnectorSizes,
|
|
7
|
+
zuiTimelineContentBase,
|
|
8
|
+
zuiTimelineContentSizes,
|
|
9
|
+
zuiTimelineDescriptionBase,
|
|
10
|
+
zuiTimelineDescriptionSizes,
|
|
11
|
+
zuiTimelineIndicatorAppearances,
|
|
12
|
+
zuiTimelineIndicatorBase,
|
|
13
|
+
zuiTimelineIndicatorSizes,
|
|
14
|
+
zuiTimelineItemBase,
|
|
15
|
+
zuiTimelineTitleBase,
|
|
16
|
+
zuiTimelineTitleSizes,
|
|
17
|
+
} from "../../design-system/timeline";
|
|
18
|
+
|
|
19
|
+
export const timelineVariants = cva(zuiTimelineBase);
|
|
20
|
+
|
|
21
|
+
export const timelineItemVariants = cva(zuiTimelineItemBase);
|
|
22
|
+
|
|
23
|
+
export const timelineConnectorVariants = cva(zuiTimelineConnectorBase, {
|
|
24
|
+
variants: {
|
|
25
|
+
size: zuiTimelineConnectorSizes,
|
|
26
|
+
},
|
|
27
|
+
defaultVariants: { size: "md" },
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
export const timelineIndicatorVariants = cva(zuiTimelineIndicatorBase, {
|
|
31
|
+
variants: {
|
|
32
|
+
appearance: zuiTimelineIndicatorAppearances,
|
|
33
|
+
size: zuiTimelineIndicatorSizes,
|
|
34
|
+
},
|
|
35
|
+
defaultVariants: {
|
|
36
|
+
appearance: "default",
|
|
37
|
+
size: "md",
|
|
38
|
+
},
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
export const timelineContentVariants = cva(zuiTimelineContentBase, {
|
|
42
|
+
variants: {
|
|
43
|
+
size: zuiTimelineContentSizes,
|
|
44
|
+
},
|
|
45
|
+
defaultVariants: { size: "md" },
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
export const timelineTitleVariants = cva(zuiTimelineTitleBase, {
|
|
49
|
+
variants: {
|
|
50
|
+
size: zuiTimelineTitleSizes,
|
|
51
|
+
},
|
|
52
|
+
defaultVariants: { size: "md" },
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
export const timelineDescriptionVariants = cva(zuiTimelineDescriptionBase, {
|
|
56
|
+
variants: {
|
|
57
|
+
size: zuiTimelineDescriptionSizes,
|
|
58
|
+
},
|
|
59
|
+
defaultVariants: { size: "md" },
|
|
60
|
+
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/design-system/skeleton.ts","../src/ui/skeleton/variants.ts","../src/ui/skeleton/skeleton-base.tsx"],"names":[],"mappings":"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","file":"chunk-4XVNQ7IY.mjs","sourcesContent":["const shimmerLayer =\n \"[background-size:220%_100%] [background-repeat:no-repeat] [background-position:100%_0%]\";\n\nexport const zuiSkeletonShimmerGradientClasses = {\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 ZuiSkeletonShimmerTone =\n keyof typeof zuiSkeletonShimmerGradientClasses;\n\nexport const zuiSkeletonBase =\n \"relative overflow-hidden bg-[var(--zui-skeleton-bg,#0000001a)] dark:bg-[var(--zui-skeleton-bg-dark,#ffffff1a)] text-[color:var(--zui-skeleton-fg,transparent)]\";\n\nexport const zuiSkeletonAppearances = {\n default:\n \"bg-[var(--zui-skeleton-default-bg,#0000001a)] dark:bg-[var(--zui-skeleton-default-bg-dark,#ffffff1a)]\",\n subtle:\n \"bg-[var(--zui-skeleton-subtle-bg,#00000012)] dark:bg-[var(--zui-skeleton-subtle-bg-dark,#ffffff12)]\",\n muted:\n \"bg-[var(--zui-skeleton-muted-bg,oklch(92.9%_0.013_255.508_/_0.8))] dark:bg-[var(--zui-skeleton-muted-bg-dark,oklch(27.9%_0.041_260.031_/_0.8))]\",\n sky: \"bg-[var(--zui-skeleton-sky-bg,oklch(68.5%_0.169_237.323_/_0.1))]\",\n rose: \"bg-[var(--zui-skeleton-rose-bg,oklch(64.5%_0.246_16.439_/_0.1))]\",\n purple: \"bg-[var(--zui-skeleton-purple-bg,oklch(62.7%_0.265_303.9_/_0.1))]\",\n pink: \"bg-[var(--zui-skeleton-pink-bg,oklch(65.6%_0.241_354.308_/_0.1))]\",\n orange: \"bg-[var(--zui-skeleton-orange-bg,oklch(70.5%_0.213_47.604_/_0.1))]\",\n yellow: \"bg-[var(--zui-skeleton-yellow-bg,oklch(79.5%_0.184_86.047_/_0.1))]\",\n teal: \"bg-[var(--zui-skeleton-teal-bg,oklch(70.4%_0.14_182.503_/_0.1))]\",\n indigo: \"bg-[var(--zui-skeleton-indigo-bg,oklch(58.5%_0.233_277.117_/_0.1))]\",\n emerald: \"bg-[var(--zui-skeleton-emerald-bg,oklch(69.6%_0.17_162.48_/_0.1))]\",\n gray: \"bg-[var(--zui-skeleton-gray-bg,oklch(55.1%_0.027_264.364_/_0.1))]\",\n amber: \"bg-[var(--zui-skeleton-amber-bg,oklch(76.9%_0.188_70.08_/_0.1))]\",\n violet: \"bg-[var(--zui-skeleton-violet-bg,oklch(60.6%_0.25_292.717_/_0.1))]\",\n \"gradient-blue\":\n \"bg-linear-to-r from-[var(--zui-skeleton-gradient-blue-from,oklch(42.4%_0.199_265.638))] dark:from-[var(--zui-skeleton-gradient-blue-from-dark,oklch(54.6%_0.245_262.881))] to-[var(--zui-skeleton-gradient-blue-to,oklch(43.8%_0.218_303.724))] dark:to-[var(--zui-skeleton-gradient-blue-to-dark,oklch(55.8%_0.288_302.321))]\",\n \"gradient-green\":\n \"bg-linear-to-r from-[var(--zui-skeleton-gradient-green-from,oklch(44.8%_0.119_151.328))] dark:from-[var(--zui-skeleton-gradient-green-from-dark,oklch(62.7%_0.194_149.214))] to-[var(--zui-skeleton-gradient-green-to,oklch(45.3%_0.124_130.933))] dark:to-[var(--zui-skeleton-gradient-green-to-dark,oklch(64.8%_0.2_131.684))]\",\n \"gradient-red\":\n \"bg-linear-to-r from-[var(--zui-skeleton-gradient-red-from,oklch(44.4%_0.177_26.899))] dark:from-[var(--zui-skeleton-gradient-red-from-dark,oklch(57.7%_0.245_27.325))] to-[var(--zui-skeleton-gradient-red-to,oklch(45.9%_0.187_3.815))] dark:to-[var(--zui-skeleton-gradient-red-to-dark,oklch(59.2%_0.249_0.584))]\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-[var(--zui-skeleton-gradient-yellow-from,oklch(47.6%_0.114_61.907))] dark:from-[var(--zui-skeleton-gradient-yellow-from-dark,oklch(68.1%_0.162_75.834))] to-[var(--zui-skeleton-gradient-yellow-to,oklch(47%_0.157_37.304))] dark:to-[var(--zui-skeleton-gradient-yellow-to-dark,oklch(64.6%_0.222_41.116))]\",\n \"gradient-purple\":\n \"bg-linear-to-r from-[var(--zui-skeleton-gradient-purple-from,oklch(43.8%_0.218_303.724))] dark:from-[var(--zui-skeleton-gradient-purple-from-dark,oklch(55.8%_0.288_302.321))] to-[var(--zui-skeleton-gradient-purple-to,oklch(45.9%_0.187_3.815))] dark:to-[var(--zui-skeleton-gradient-purple-to-dark,oklch(59.2%_0.249_0.584))]\",\n \"gradient-teal\":\n \"bg-linear-to-r from-[var(--zui-skeleton-gradient-teal-from,oklch(43.7%_0.078_188.216))] dark:from-[var(--zui-skeleton-gradient-teal-from-dark,oklch(60%_0.118_184.704))] to-[var(--zui-skeleton-gradient-teal-to,oklch(45%_0.085_224.283))] dark:to-[var(--zui-skeleton-gradient-teal-to-dark,oklch(60.9%_0.126_221.723))]\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-[var(--zui-skeleton-gradient-indigo-from,oklch(39.8%_0.195_277.366))] dark:from-[var(--zui-skeleton-gradient-indigo-from-dark,oklch(51.1%_0.262_276.966))] to-[var(--zui-skeleton-gradient-indigo-to,oklch(43.8%_0.218_303.724))] dark:to-[var(--zui-skeleton-gradient-indigo-to-dark,oklch(55.8%_0.288_302.321))]\",\n \"gradient-pink\":\n \"bg-linear-to-r from-[var(--zui-skeleton-gradient-pink-from,oklch(45.9%_0.187_3.815))] dark:from-[var(--zui-skeleton-gradient-pink-from-dark,oklch(59.2%_0.249_0.584))] to-[var(--zui-skeleton-gradient-pink-to,oklch(45.5%_0.188_13.697))] dark:to-[var(--zui-skeleton-gradient-pink-to-dark,oklch(58.6%_0.253_17.585))]\",\n \"gradient-orange\":\n \"bg-linear-to-r from-[var(--zui-skeleton-gradient-orange-from,oklch(47%_0.157_37.304))] dark:from-[var(--zui-skeleton-gradient-orange-from-dark,oklch(64.6%_0.222_41.116))] to-[var(--zui-skeleton-gradient-orange-to,oklch(44.4%_0.177_26.899))] dark:to-[var(--zui-skeleton-gradient-orange-to-dark,oklch(57.7%_0.245_27.325))]\",\n} as const;\n\nexport const zuiSkeletonSizes = {\n sm: \"min-h-3\",\n md: \"min-h-4\",\n lg: \"min-h-6\",\n} as const;\n\nexport const zuiSkeletonRounded = {\n none: \"rounded-none\",\n sm: \"rounded-md\",\n md: \"rounded-lg\",\n lg: \"rounded-xl\",\n full: \"rounded-full\",\n} as const;\n\nexport const zuiSkeletonAnimations = {\n none: \"\",\n shimmer: \"\",\n pulse: \"\",\n} as const;\n\nexport const zuiSkeletonShimmerTones = {\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} as const;\n\nexport const zuiSkeletonTextLineBase = \"block w-full\";\n\nexport const zuiSkeletonTextLineSizes = {\n sm: \"h-2.5\",\n md: \"h-3\",\n lg: \"h-4\",\n} as const;\n","import { cva } from \"class-variance-authority\";\n\nimport {\n zuiSkeletonAnimations,\n zuiSkeletonAppearances,\n zuiSkeletonBase,\n zuiSkeletonRounded,\n zuiSkeletonShimmerGradientClasses,\n zuiSkeletonShimmerTones,\n zuiSkeletonSizes,\n zuiSkeletonTextLineBase,\n zuiSkeletonTextLineSizes,\n type ZuiSkeletonShimmerTone,\n} from \"../../design-system/skeleton\";\n\nexport const skeletonShimmerGradientClasses = zuiSkeletonShimmerGradientClasses;\nexport type SkeletonShimmerTone = ZuiSkeletonShimmerTone;\n\nexport const skeletonVariants = cva(zuiSkeletonBase, {\n variants: {\n appearance: zuiSkeletonAppearances,\n size: zuiSkeletonSizes,\n rounded: zuiSkeletonRounded,\n animation: zuiSkeletonAnimations,\n shimmerTone: zuiSkeletonShimmerTones,\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\nexport const skeletonTextLineVariants = cva(zuiSkeletonTextLineBase, {\n variants: {\n size: zuiSkeletonTextLineSizes,\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"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/design-system/toast.ts","../src/ui/toast/variants.ts","../src/ui/toast/toast-base.tsx"],"names":["cva","createContext","useContext","useState","useRef","useCallback","useMemo","useEffect","createPortal","jsx","cn","jsxs"],"mappings":"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","file":"chunk-4ZKBLVQX.js","sourcesContent":["export const zuiToastViewportBase =\n \"fixed z-[60] flex max-h-screen flex-col gap-2 p-4\";\n\nexport const zuiToastViewportPositions = {\n \"top-left\": \"left-0 top-0 items-start\",\n \"top-center\": \"left-1/2 top-0 -translate-x-1/2 items-center\",\n \"top-right\": \"right-0 top-0 items-end\",\n \"bottom-left\": \"bottom-0 left-0 items-start\",\n \"bottom-center\": \"bottom-0 left-1/2 -translate-x-1/2 items-center\",\n \"bottom-right\": \"bottom-0 right-0 items-end\",\n} as const;\n\nexport const zuiToastRootBase =\n \"pointer-events-auto w-[min(100vw-2rem,380px)] rounded-xl border bg-[var(--zui-toast-root-bg,oklch(98.4%_0.003_247.858))] p-4 text-[color:var(--zui-toast-root-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-toast-root-fg-dark,oklch(98.4%_0.003_247.858))] shadow-[var(--zui-toast-root-shadow,0_8px_24px_rgba(15,23,42,0.12))] dark:shadow-[var(--zui-toast-root-shadow-dark,0_18px_48px_rgba(15,23,42,0.45))]\";\n\nexport const zuiToastRootAppearances = {\n default:\n \"bg-[var(--zui-toast-root-default-bg,oklch(12.9%_0.042_264.695))] text-[color:var(--zui-toast-root-default-fg,oklch(98.4%_0.003_247.858))]\",\n success:\n \"border-[color:var(--zui-toast-root-success-border,oklch(69.6%_0.17_162.48_/_0.4))] bg-[var(--zui-toast-root-success-bg,oklch(26.2%_0.051_172.552))] text-[color:var(--zui-toast-root-success-fg,oklch(97.9%_0.021_166.113))]\",\n warning:\n \"border-[color:var(--zui-toast-root-warning-border,oklch(76.9%_0.188_70.08_/_0.4))] bg-[var(--zui-toast-root-warning-bg,oklch(27.9%_0.077_45.635))] text-[color:var(--zui-toast-root-warning-fg,oklch(98.7%_0.022_95.277))]\",\n error:\n \"border-[color:var(--zui-toast-root-error-border,oklch(64.5%_0.246_16.439_/_0.5))] bg-[var(--zui-toast-root-error-bg,oklch(27.1%_0.105_12.094))] text-[color:var(--zui-toast-root-error-fg,oklch(96.9%_0.015_12.422))]\",\n info: \"border-[color:var(--zui-toast-root-info-border,oklch(68.5%_0.169_237.323_/_0.4))] bg-[var(--zui-toast-root-info-bg,oklch(29.3%_0.066_243.157))] text-[color:var(--zui-toast-root-info-fg,oklch(97.7%_0.013_236.62))]\",\n ghost:\n \"border-[color:var(--zui-toast-root-ghost-border,transparent)] bg-[var(--zui-toast-root-ghost-bg,transparent)] text-[color:var(--zui-toast-root-ghost-fg,oklch(20.8%_0.042_265.755))]\",\n purple:\n \"border-[color:var(--zui-toast-root-purple-border,oklch(43.8%_0.218_303.724))] dark:border-[color:var(--zui-toast-root-purple-border-dark,oklch(55.8%_0.288_302.321))] bg-[var(--zui-toast-root-purple-bg,oklch(29.1%_0.149_302.717))] backdrop-blur-xl text-[color:var(--zui-toast-root-purple-fg,oklch(97.7%_0.014_308.299))]\",\n pink: \"border-[color:var(--zui-toast-root-pink-border,oklch(45.9%_0.187_3.815))] dark:border-[color:var(--zui-toast-root-pink-border-dark,oklch(59.2%_0.249_0.584))] bg-[var(--zui-toast-root-pink-bg,oklch(28.4%_0.109_3.907))] backdrop-blur-xl text-[color:var(--zui-toast-root-pink-fg,oklch(97.1%_0.014_343.198))]\",\n orange:\n \"border-[color:var(--zui-toast-root-orange-border,oklch(47%_0.157_37.304))] dark:border-[color:var(--zui-toast-root-orange-border-dark,oklch(64.6%_0.222_41.116))] bg-[var(--zui-toast-root-orange-bg,oklch(26.6%_0.079_36.259))] backdrop-blur-xl text-[color:var(--zui-toast-root-orange-fg,oklch(98%_0.016_73.684))]\",\n yellow:\n \"border-[color:var(--zui-toast-root-yellow-border,oklch(47.6%_0.114_61.907))] dark:border-[color:var(--zui-toast-root-yellow-border-dark,oklch(68.1%_0.162_75.834))] bg-[var(--zui-toast-root-yellow-bg,oklch(28.6%_0.066_53.813))] backdrop-blur-xl text-[color:var(--zui-toast-root-yellow-fg,oklch(98.7%_0.026_102.212))]\",\n teal: \"border-[color:var(--zui-toast-root-teal-border,oklch(43.7%_0.078_188.216))] dark:border-[color:var(--zui-toast-root-teal-border-dark,oklch(60%_0.118_184.704))] bg-[var(--zui-toast-root-teal-bg,oklch(27.7%_0.046_192.524))] backdrop-blur-xl text-[color:var(--zui-toast-root-teal-fg,oklch(98.4%_0.014_180.72))]\",\n indigo:\n \"border-[color:var(--zui-toast-root-indigo-border,oklch(39.8%_0.195_277.366))] dark:border-[color:var(--zui-toast-root-indigo-border-dark,oklch(51.1%_0.262_276.966))] bg-[var(--zui-toast-root-indigo-bg,oklch(25.7%_0.09_281.288))] backdrop-blur-xl text-[color:var(--zui-toast-root-indigo-fg,oklch(96.2%_0.018_272.314))]\",\n emerald:\n \"border-[color:var(--zui-toast-root-emerald-border,oklch(43.2%_0.095_166.913))] dark:border-[color:var(--zui-toast-root-emerald-border-dark,oklch(59.6%_0.145_163.225))] bg-[var(--zui-toast-root-emerald-bg,oklch(26.2%_0.051_172.552))] backdrop-blur-xl text-[color:var(--zui-toast-root-emerald-fg,oklch(97.9%_0.021_166.113))]\",\n gray: \"border-[color:var(--zui-toast-root-gray-border,oklch(27.8%_0.033_256.848))] dark:border-[color:var(--zui-toast-root-gray-border-dark,oklch(44.6%_0.03_256.802))] bg-[var(--zui-toast-root-gray-bg,oklch(13%_0.028_261.692))] backdrop-blur-xl text-[color:var(--zui-toast-root-gray-fg,oklch(98.5%_0.002_247.839))]\",\n amber:\n \"border-[color:var(--zui-toast-root-amber-border,oklch(47.3%_0.137_46.201))] dark:border-[color:var(--zui-toast-root-amber-border-dark,oklch(66.6%_0.179_58.318))] bg-[var(--zui-toast-root-amber-bg,oklch(27.9%_0.077_45.635))] backdrop-blur-xl text-[color:var(--zui-toast-root-amber-fg,oklch(98.7%_0.022_95.277))]\",\n violet:\n \"border-[color:var(--zui-toast-root-violet-border,oklch(43.2%_0.232_292.759))] dark:border-[color:var(--zui-toast-root-violet-border-dark,oklch(54.1%_0.281_293.009))] bg-[var(--zui-toast-root-violet-bg,oklch(28.3%_0.141_291.089))] backdrop-blur-xl text-[color:var(--zui-toast-root-violet-fg,oklch(96.9%_0.016_293.756))]\",\n \"gradient-blue\":\n \"border-[color:var(--zui-toast-root-gradient-blue-border,oklch(42.4%_0.199_265.638))] dark:border-[color:var(--zui-toast-root-gradient-blue-border-dark,oklch(54.6%_0.245_262.881))] bg-linear-to-r from-[var(--zui-toast-root-gradient-blue-from,oklch(97%_0.014_254.604))] dark:from-[var(--zui-toast-root-gradient-blue-from-dark,oklch(28.2%_0.091_267.935_/_0.7))] to-[var(--zui-toast-root-gradient-blue-to,oklch(97.7%_0.014_308.299))] dark:to-[var(--zui-toast-root-gradient-blue-to-dark,oklch(29.1%_0.149_302.717_/_0.7))] backdrop-blur-xl\",\n \"gradient-green\":\n \"border-[color:var(--zui-toast-root-gradient-green-border,oklch(44.8%_0.119_151.328))] dark:border-[color:var(--zui-toast-root-gradient-green-border-dark,oklch(62.7%_0.194_149.214))] bg-linear-to-r from-[var(--zui-toast-root-gradient-green-from,oklch(98.2%_0.018_155.826))] dark:from-[var(--zui-toast-root-gradient-green-from-dark,oklch(26.6%_0.065_152.934_/_0.7))] to-[var(--zui-toast-root-gradient-green-to,oklch(98.6%_0.031_120.757))] dark:to-[var(--zui-toast-root-gradient-green-to-dark,oklch(27.4%_0.072_132.109_/_0.7))] backdrop-blur-xl\",\n \"gradient-red\":\n \"border-[color:var(--zui-toast-root-gradient-red-border,oklch(44.4%_0.177_26.899))] dark:border-[color:var(--zui-toast-root-gradient-red-border-dark,oklch(57.7%_0.245_27.325))] bg-linear-to-r from-[var(--zui-toast-root-gradient-red-from,oklch(97.1%_0.013_17.38))] dark:from-[var(--zui-toast-root-gradient-red-from-dark,oklch(25.8%_0.092_26.042_/_0.7))] to-[var(--zui-toast-root-gradient-red-to,oklch(97.1%_0.014_343.198))] dark:to-[var(--zui-toast-root-gradient-red-to-dark,oklch(28.4%_0.109_3.907_/_0.7))] backdrop-blur-xl\",\n \"gradient-yellow\":\n \"border-[color:var(--zui-toast-root-gradient-yellow-border,oklch(47.6%_0.114_61.907))] dark:border-[color:var(--zui-toast-root-gradient-yellow-border-dark,oklch(68.1%_0.162_75.834))] bg-linear-to-r from-[var(--zui-toast-root-gradient-yellow-from,oklch(98.7%_0.026_102.212))] dark:from-[var(--zui-toast-root-gradient-yellow-from-dark,oklch(28.6%_0.066_53.813_/_0.7))] to-[var(--zui-toast-root-gradient-yellow-to,oklch(98%_0.016_73.684))] dark:to-[var(--zui-toast-root-gradient-yellow-to-dark,oklch(26.6%_0.079_36.259_/_0.7))] backdrop-blur-xl\",\n \"gradient-purple\":\n \"border-[color:var(--zui-toast-root-gradient-purple-border,oklch(43.8%_0.218_303.724))] dark:border-[color:var(--zui-toast-root-gradient-purple-border-dark,oklch(55.8%_0.288_302.321))] bg-linear-to-r from-[var(--zui-toast-root-gradient-purple-from,oklch(97.7%_0.014_308.299))] dark:from-[var(--zui-toast-root-gradient-purple-from-dark,oklch(29.1%_0.149_302.717_/_0.7))] to-[var(--zui-toast-root-gradient-purple-to,oklch(97.1%_0.014_343.198))] dark:to-[var(--zui-toast-root-gradient-purple-to-dark,oklch(28.4%_0.109_3.907_/_0.7))] backdrop-blur-xl\",\n \"gradient-teal\":\n \"border-[color:var(--zui-toast-root-gradient-teal-border,oklch(43.7%_0.078_188.216))] dark:border-[color:var(--zui-toast-root-gradient-teal-border-dark,oklch(60%_0.118_184.704))] bg-linear-to-r from-[var(--zui-toast-root-gradient-teal-from,oklch(98.4%_0.014_180.72))] dark:from-[var(--zui-toast-root-gradient-teal-from-dark,oklch(27.7%_0.046_192.524_/_0.7))] to-[var(--zui-toast-root-gradient-teal-to,oklch(98.4%_0.019_200.873))] dark:to-[var(--zui-toast-root-gradient-teal-to-dark,oklch(30.2%_0.056_229.695_/_0.7))] backdrop-blur-xl\",\n \"gradient-indigo\":\n \"border-[color:var(--zui-toast-root-gradient-indigo-border,oklch(39.8%_0.195_277.366))] dark:border-[color:var(--zui-toast-root-gradient-indigo-border-dark,oklch(51.1%_0.262_276.966))] bg-linear-to-r from-[var(--zui-toast-root-gradient-indigo-from,oklch(96.2%_0.018_272.314))] dark:from-[var(--zui-toast-root-gradient-indigo-from-dark,oklch(25.7%_0.09_281.288_/_0.7))] to-[var(--zui-toast-root-gradient-indigo-to,oklch(97.7%_0.014_308.299))] dark:to-[var(--zui-toast-root-gradient-indigo-to-dark,oklch(29.1%_0.149_302.717_/_0.7))] backdrop-blur-xl\",\n \"gradient-pink\":\n \"border-[color:var(--zui-toast-root-gradient-pink-border,oklch(45.9%_0.187_3.815))] dark:border-[color:var(--zui-toast-root-gradient-pink-border-dark,oklch(59.2%_0.249_0.584))] bg-linear-to-r from-[var(--zui-toast-root-gradient-pink-from,oklch(97.1%_0.014_343.198))] dark:from-[var(--zui-toast-root-gradient-pink-from-dark,oklch(28.4%_0.109_3.907_/_0.7))] to-[var(--zui-toast-root-gradient-pink-to,oklch(96.9%_0.015_12.422))] dark:to-[var(--zui-toast-root-gradient-pink-to-dark,oklch(27.1%_0.105_12.094_/_0.7))] backdrop-blur-xl\",\n \"gradient-orange\":\n \"border-[color:var(--zui-toast-root-gradient-orange-border,oklch(47%_0.157_37.304))] dark:border-[color:var(--zui-toast-root-gradient-orange-border-dark,oklch(64.6%_0.222_41.116))] bg-linear-to-r from-[var(--zui-toast-root-gradient-orange-from,oklch(98%_0.016_73.684))] dark:from-[var(--zui-toast-root-gradient-orange-from-dark,oklch(26.6%_0.079_36.259_/_0.7))] to-[var(--zui-toast-root-gradient-orange-to,oklch(97.1%_0.013_17.38))] dark:to-[var(--zui-toast-root-gradient-orange-to-dark,oklch(25.8%_0.092_26.042_/_0.7))] backdrop-blur-xl\",\n} as const;\n\nexport const zuiToastRootSizes = {\n sm: \"p-3 text-xs\",\n md: \"p-4 text-sm\",\n lg: \"p-5 text-base\",\n} as const;\n","import { cva } from \"class-variance-authority\";\n\nimport {\n zuiToastRootAppearances,\n zuiToastRootBase,\n zuiToastRootSizes,\n zuiToastViewportBase,\n zuiToastViewportPositions,\n} from \"../../design-system/toast\";\n\nexport const toastViewportVariants = cva(zuiToastViewportBase, {\n variants: {\n position: zuiToastViewportPositions,\n },\n defaultVariants: {\n position: \"bottom-right\",\n },\n});\n\nexport const toastRootVariants = cva(zuiToastRootBase, {\n variants: {\n appearance: zuiToastRootAppearances,\n size: zuiToastRootSizes,\n },\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n },\n});\n","\"use client\";\n\nimport {\n createContext,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { createPortal } from \"react-dom\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type {\n ToastContextValue,\n ToastStoreContextValue,\n InternalToast,\n ToastInput,\n ToastProps,\n ToastProviderProps,\n ToastSectionProps,\n ToastViewportProps,\n} from \"./types\";\nimport { toastRootVariants, toastViewportVariants } from \"./variants\";\n\nexport const ToastStoreContext = createContext<ToastStoreContextValue | null>(\n null,\n);\n\nlet toastDispatcher: ToastStoreContextValue[\"push\"] | null = null;\n\nexport function toast(input: ToastInput) {\n if (!toastDispatcher) {\n return \"\";\n }\n return toastDispatcher(input);\n}\n\nexport function useToast(): ToastContextValue {\n const ctx = useContext(ToastStoreContext);\n if (!ctx) {\n throw new Error(\"useToast must be used within <ToastProvider>\");\n }\n return { toast: ctx.push, dismiss: ctx.dismiss };\n}\n\nexport function ToastProvider({ children }: ToastProviderProps) {\n const [toasts, setToasts] = useState<InternalToast[]>([]);\n const timers = useRef<Map<string, number>>(new Map());\n\n const dismiss = useCallback((id: string) => {\n const timerId = timers.current.get(id);\n if (timerId) {\n window.clearTimeout(timerId);\n timers.current.delete(id);\n }\n setToasts((prev) => prev.filter((toastItem) => toastItem.id !== id));\n }, []);\n\n const push = useCallback(\n (input: ToastInput) => {\n const id = input.id ?? `toast-${Math.random().toString(16).slice(2)}`;\n const durationMs = input.durationMs ?? 4500;\n const record: InternalToast = {\n ...input,\n id,\n durationMs,\n animation: input.animation ?? \"slide\",\n };\n setToasts((prev) => [...prev, record]);\n const timerId = window.setTimeout(() => dismiss(id), durationMs);\n timers.current.set(id, timerId);\n return id;\n },\n [dismiss],\n );\n\n const ctx = useMemo(\n () => ({\n toasts,\n push,\n dismiss,\n }),\n [dismiss, push, toasts],\n );\n\n useEffect(() => {\n toastDispatcher = push;\n return () => {\n toastDispatcher = null;\n };\n }, [push]);\n\n return (\n <ToastStoreContext.Provider value={ctx}>\n {children}\n </ToastStoreContext.Provider>\n );\n}\n\nToastProvider.displayName = \"ToastProvider\";\n\nexport function ToastViewport({\n position = \"bottom-right\",\n className,\n}: ToastViewportProps) {\n const ctx = useContext(ToastStoreContext);\n if (!ctx) {\n throw new Error(\"ToastViewport must be used within <ToastProvider>\");\n }\n\n const portalTarget = typeof document !== \"undefined\" ? document.body : null;\n if (!portalTarget) {\n return null;\n }\n\n return createPortal(\n <div\n className={cn(toastViewportVariants({ position }), className)}\n data-slot=\"toast-viewport\"\n >\n {ctx.toasts.map((item) => (\n <Toast\n key={item.id}\n toastId={item.id}\n appearance={item.appearance}\n size={item.size}\n animation={item.animation}\n >\n <ToastTitle>{item.title}</ToastTitle>\n {item.description ? (\n <ToastDescription>{item.description}</ToastDescription>\n ) : null}\n <ToastClose onClick={() => ctx.dismiss(item.id)} />\n </Toast>\n ))}\n </div>,\n portalTarget,\n );\n}\n\nToastViewport.displayName = \"ToastViewport\";\n\nexport function Toast({\n toastId: _toastId,\n appearance,\n size,\n animation: _animation = \"slide\",\n className,\n children,\n}: ToastProps) {\n const live = appearance === \"error\" ? \"assertive\" : \"polite\";\n\n return (\n <div\n data-slot=\"toast\"\n role={appearance === \"error\" ? \"alert\" : \"status\"}\n aria-live={live}\n aria-atomic=\"true\"\n className={cn(\n \"relative\",\n toastRootVariants({ appearance, size }),\n className,\n )}\n >\n {children}\n </div>\n );\n}\n\nToast.displayName = \"Toast\";\n\nexport function ToastTitle({ className, children }: ToastSectionProps) {\n return (\n <div data-slot=\"toast-title\" className={cn(\"font-semibold\", className)}>\n {children}\n </div>\n );\n}\n\nToastTitle.displayName = \"ToastTitle\";\n\nexport function ToastDescription({ className, children }: ToastSectionProps) {\n return (\n <div data-slot=\"toast-description\" className={cn(\"text-sm\", className)}>\n {children}\n </div>\n );\n}\n\nToastDescription.displayName = \"ToastDescription\";\n\nexport function ToastAction({ className, children }: ToastSectionProps) {\n return (\n <div data-slot=\"toast-action\" className={cn(\"mt-3\", className)}>\n {children}\n </div>\n );\n}\n\nToastAction.displayName = \"ToastAction\";\n\nexport function ToastClose({\n className,\n children,\n onClick,\n ...rest\n}: ToastSectionProps & { onClick?: () => void }) {\n return (\n <button\n type=\"button\"\n data-slot=\"toast-close\"\n aria-label=\"Dismiss notification\"\n className={cn(\n \"absolute right-3 top-3 inline-flex size-8 items-center justify-center rounded-md text-slate-200 transition hover:bg-white/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/40 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-950\",\n className,\n )}\n onClick={onClick}\n {...rest}\n >\n {children ?? \"×\"}\n </button>\n );\n}\n\nToastClose.displayName = \"ToastClose\";\n"]}
|
package/dist/chunk-6QQUQLPB.js
DELETED
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var classVarianceAuthority = require('class-variance-authority');
|
|
4
|
-
var react = require('react');
|
|
5
|
-
|
|
6
|
-
// src/ui/radio-group/variants.ts
|
|
7
|
-
|
|
8
|
-
// src/design-system/radio-group.ts
|
|
9
|
-
var zuiRadioGroupRootBase = "grid gap-2";
|
|
10
|
-
var zuiRadioGroupItemBase = "group inline-flex w-fit items-start gap-2.5 text-sm font-medium text-[color:var(--zui-radio-label-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-radio-label-fg-dark,oklch(98.4%_0.003_247.858))] data-[disabled=true]:cursor-not-allowed data-[disabled=true]:opacity-50";
|
|
11
|
-
var zuiRadioGroupControlBase = "grid shrink-0 place-items-center rounded-full border-2 border-[color:var(--zui-radio-border,#0000004d)] bg-[var(--zui-radio-bg,transparent)] transition-[background-color,border-color,box-shadow] peer-focus-visible:outline-none peer-focus-visible:ring-2 peer-focus-visible:ring-[var(--zui-radio-ring-focus,oklch(44.6%_0.043_257.281_/_0.7))] peer-focus-visible:ring-offset-2 peer-focus-visible:ring-offset-[var(--zui-radio-ring-offset-focus,oklch(98.4%_0.003_247.858))] dark:border-[color:var(--zui-radio-border-dark,#ffffff4d)] dark:peer-focus-visible:ring-[var(--zui-radio-ring-focus-dark,oklch(86.9%_0.022_252.894_/_0.7))] dark:peer-focus-visible:ring-offset-[var(--zui-radio-ring-offset-focus-dark,oklch(12.9%_0.042_264.695))] group-data-[disabled=true]:cursor-not-allowed";
|
|
12
|
-
var zuiRadioGroupIndicatorBase = "pointer-events-none block rounded-full opacity-0 transition-opacity duration-150 group-data-[state=checked]:opacity-100";
|
|
13
|
-
var zuiRadioGroupSizes = {
|
|
14
|
-
sm: {
|
|
15
|
-
item: "text-xs",
|
|
16
|
-
control: "mt-0.5 size-4",
|
|
17
|
-
indicator: "size-1.5"
|
|
18
|
-
},
|
|
19
|
-
md: {
|
|
20
|
-
item: "text-sm",
|
|
21
|
-
control: "mt-0.5 size-5",
|
|
22
|
-
indicator: "size-2"
|
|
23
|
-
},
|
|
24
|
-
lg: {
|
|
25
|
-
item: "text-base",
|
|
26
|
-
control: "mt-0.5 size-6",
|
|
27
|
-
indicator: "size-2.5"
|
|
28
|
-
}
|
|
29
|
-
};
|
|
30
|
-
var zuiRadioGroupAppearances = {
|
|
31
|
-
default: "group-data-[state=checked]:border-[color:var(--zui-radio-default-border-checked,oklch(44.6%_0.043_257.281))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-default-indicator-bg,oklch(44.6%_0.043_257.281))]",
|
|
32
|
-
success: "group-data-[state=checked]:border-[color:var(--zui-radio-success-border-checked,oklch(59.6%_0.145_163.225))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-success-indicator-bg,oklch(59.6%_0.145_163.225))]",
|
|
33
|
-
warning: "group-data-[state=checked]:border-[color:var(--zui-radio-warning-border-checked,oklch(68.1%_0.162_75.834))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-warning-indicator-bg,oklch(68.1%_0.162_75.834))]",
|
|
34
|
-
error: "group-data-[state=checked]:border-[color:var(--zui-radio-error-border-checked,oklch(58.6%_0.253_17.585))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-error-indicator-bg,oklch(58.6%_0.253_17.585))]",
|
|
35
|
-
info: "group-data-[state=checked]:border-[color:var(--zui-radio-info-border-checked,oklch(54.6%_0.245_262.881))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-info-indicator-bg,oklch(54.6%_0.245_262.881))]",
|
|
36
|
-
violet: "group-data-[state=checked]:border-[color:var(--zui-radio-violet-border-checked,oklch(54.1%_0.281_293.009))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-violet-indicator-bg,oklch(54.1%_0.281_293.009))]",
|
|
37
|
-
amber: "group-data-[state=checked]:border-[color:var(--zui-radio-amber-border-checked,oklch(66.6%_0.179_58.318))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-amber-indicator-bg,oklch(66.6%_0.179_58.318))]",
|
|
38
|
-
pink: "group-data-[state=checked]:border-[color:var(--zui-radio-pink-border-checked,oklch(59.2%_0.249_0.584))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-pink-indicator-bg,oklch(59.2%_0.249_0.584))]",
|
|
39
|
-
indigo: "group-data-[state=checked]:border-[color:var(--zui-radio-indigo-border-checked,oklch(51.1%_0.262_276.966))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-indigo-indicator-bg,oklch(51.1%_0.262_276.966))]"
|
|
40
|
-
};
|
|
41
|
-
var zuiRadioGroupOrientations = {
|
|
42
|
-
vertical: "grid gap-2",
|
|
43
|
-
horizontal: "flex flex-wrap gap-x-5 gap-y-2"
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
// src/ui/radio-group/variants.ts
|
|
47
|
-
var radioGroupRootVariants = classVarianceAuthority.cva(zuiRadioGroupRootBase, {
|
|
48
|
-
variants: {
|
|
49
|
-
orientation: zuiRadioGroupOrientations
|
|
50
|
-
},
|
|
51
|
-
defaultVariants: {
|
|
52
|
-
orientation: "vertical"
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
var radioGroupItemVariants = classVarianceAuthority.cva(zuiRadioGroupItemBase, {
|
|
56
|
-
variants: {
|
|
57
|
-
size: {
|
|
58
|
-
sm: zuiRadioGroupSizes.sm.item,
|
|
59
|
-
md: zuiRadioGroupSizes.md.item,
|
|
60
|
-
lg: zuiRadioGroupSizes.lg.item
|
|
61
|
-
}
|
|
62
|
-
},
|
|
63
|
-
defaultVariants: {
|
|
64
|
-
size: "md"
|
|
65
|
-
}
|
|
66
|
-
});
|
|
67
|
-
var radioGroupControlVariants = classVarianceAuthority.cva(zuiRadioGroupControlBase, {
|
|
68
|
-
variants: {
|
|
69
|
-
appearance: zuiRadioGroupAppearances,
|
|
70
|
-
size: {
|
|
71
|
-
sm: zuiRadioGroupSizes.sm.control,
|
|
72
|
-
md: zuiRadioGroupSizes.md.control,
|
|
73
|
-
lg: zuiRadioGroupSizes.lg.control
|
|
74
|
-
}
|
|
75
|
-
},
|
|
76
|
-
defaultVariants: {
|
|
77
|
-
appearance: "default",
|
|
78
|
-
size: "md"
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
var radioGroupIndicatorVariants = classVarianceAuthority.cva(zuiRadioGroupIndicatorBase, {
|
|
82
|
-
variants: {
|
|
83
|
-
size: {
|
|
84
|
-
sm: zuiRadioGroupSizes.sm.indicator,
|
|
85
|
-
md: zuiRadioGroupSizes.md.indicator,
|
|
86
|
-
lg: zuiRadioGroupSizes.lg.indicator
|
|
87
|
-
}
|
|
88
|
-
},
|
|
89
|
-
defaultVariants: {
|
|
90
|
-
size: "md"
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
var RadioGroupContext = react.createContext(
|
|
94
|
-
null
|
|
95
|
-
);
|
|
96
|
-
function useRadioGroupContext() {
|
|
97
|
-
return react.useContext(RadioGroupContext);
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
exports.RadioGroupContext = RadioGroupContext;
|
|
101
|
-
exports.radioGroupControlVariants = radioGroupControlVariants;
|
|
102
|
-
exports.radioGroupIndicatorVariants = radioGroupIndicatorVariants;
|
|
103
|
-
exports.radioGroupItemVariants = radioGroupItemVariants;
|
|
104
|
-
exports.radioGroupRootVariants = radioGroupRootVariants;
|
|
105
|
-
exports.useRadioGroupContext = useRadioGroupContext;
|
|
106
|
-
//# sourceMappingURL=chunk-6QQUQLPB.js.map
|
|
107
|
-
//# sourceMappingURL=chunk-6QQUQLPB.js.map
|