@zentauri-ui/zentauri-components 1.7.0 → 1.7.2

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.
Files changed (136) hide show
  1. package/README.md +11 -5
  2. package/cli/index.mjs +1 -0
  3. package/cli/registry.json +3 -0
  4. package/dist/chunk-6QQUQLPB.js +107 -0
  5. package/dist/chunk-6QQUQLPB.js.map +1 -0
  6. package/dist/chunk-BC6M42HQ.mjs +251 -0
  7. package/dist/chunk-BC6M42HQ.mjs.map +1 -0
  8. package/dist/chunk-K6IZANTI.mjs +80 -0
  9. package/dist/chunk-K6IZANTI.mjs.map +1 -0
  10. package/dist/chunk-MTTXLC2V.mjs +100 -0
  11. package/dist/chunk-MTTXLC2V.mjs.map +1 -0
  12. package/dist/chunk-PHEUJ4EF.js +84 -0
  13. package/dist/chunk-PHEUJ4EF.js.map +1 -0
  14. package/dist/chunk-QSPXPU72.js +259 -0
  15. package/dist/chunk-QSPXPU72.js.map +1 -0
  16. package/dist/design-system/checkbox.d.ts +32 -0
  17. package/dist/design-system/checkbox.d.ts.map +1 -0
  18. package/dist/design-system/index.d.ts +3 -0
  19. package/dist/design-system/index.d.ts.map +1 -1
  20. package/dist/design-system/popover.d.ts +40 -0
  21. package/dist/design-system/popover.d.ts.map +1 -0
  22. package/dist/design-system/radio-group.d.ts +37 -0
  23. package/dist/design-system/radio-group.d.ts.map +1 -0
  24. package/dist/ui/checkbox/animated/animations.d.ts +32 -0
  25. package/dist/ui/checkbox/animated/animations.d.ts.map +1 -0
  26. package/dist/ui/checkbox/animated/checkbox-animated.d.ts +6 -0
  27. package/dist/ui/checkbox/animated/checkbox-animated.d.ts.map +1 -0
  28. package/dist/ui/checkbox/animated/index.d.ts +4 -0
  29. package/dist/ui/checkbox/animated/index.d.ts.map +1 -0
  30. package/dist/ui/checkbox/animated/types.d.ts +8 -0
  31. package/dist/ui/checkbox/animated/types.d.ts.map +1 -0
  32. package/dist/ui/checkbox/animated.js +153 -0
  33. package/dist/ui/checkbox/animated.js.map +1 -0
  34. package/dist/ui/checkbox/animated.mjs +150 -0
  35. package/dist/ui/checkbox/animated.mjs.map +1 -0
  36. package/dist/ui/checkbox/checkbox-base.d.ts +6 -0
  37. package/dist/ui/checkbox/checkbox-base.d.ts.map +1 -0
  38. package/dist/ui/checkbox/checkbox.d.ts +6 -0
  39. package/dist/ui/checkbox/checkbox.d.ts.map +1 -0
  40. package/dist/ui/checkbox/index.d.ts +4 -0
  41. package/dist/ui/checkbox/index.d.ts.map +1 -0
  42. package/dist/ui/checkbox/types.d.ts +19 -0
  43. package/dist/ui/checkbox/types.d.ts.map +1 -0
  44. package/dist/ui/checkbox/variants.d.ts +11 -0
  45. package/dist/ui/checkbox/variants.d.ts.map +1 -0
  46. package/dist/ui/checkbox.js +150 -0
  47. package/dist/ui/checkbox.js.map +1 -0
  48. package/dist/ui/checkbox.mjs +137 -0
  49. package/dist/ui/checkbox.mjs.map +1 -0
  50. package/dist/ui/popover/animated/animations.d.ts +3 -0
  51. package/dist/ui/popover/animated/animations.d.ts.map +1 -0
  52. package/dist/ui/popover/animated/index.d.ts +4 -0
  53. package/dist/ui/popover/animated/index.d.ts.map +1 -0
  54. package/dist/ui/popover/animated/popover-content-animated.d.ts +3 -0
  55. package/dist/ui/popover/animated/popover-content-animated.d.ts.map +1 -0
  56. package/dist/ui/popover/animated/types.d.ts +9 -0
  57. package/dist/ui/popover/animated/types.d.ts.map +1 -0
  58. package/dist/ui/popover/animated.js +67 -0
  59. package/dist/ui/popover/animated.js.map +1 -0
  60. package/dist/ui/popover/animated.mjs +64 -0
  61. package/dist/ui/popover/animated.mjs.map +1 -0
  62. package/dist/ui/popover/index.d.ts +4 -0
  63. package/dist/ui/popover/index.d.ts.map +1 -0
  64. package/dist/ui/popover/popover-base.d.ts +8 -0
  65. package/dist/ui/popover/popover-base.d.ts.map +1 -0
  66. package/dist/ui/popover/popover.d.ts +2 -0
  67. package/dist/ui/popover/popover.d.ts.map +1 -0
  68. package/dist/ui/popover/types.d.ts +34 -0
  69. package/dist/ui/popover/types.d.ts.map +1 -0
  70. package/dist/ui/popover/variants.d.ts +6 -0
  71. package/dist/ui/popover/variants.d.ts.map +1 -0
  72. package/dist/ui/popover.js +34 -0
  73. package/dist/ui/popover.js.map +1 -0
  74. package/dist/ui/popover.mjs +5 -0
  75. package/dist/ui/popover.mjs.map +1 -0
  76. package/dist/ui/radio-group/animated/animations.d.ts +32 -0
  77. package/dist/ui/radio-group/animated/animations.d.ts.map +1 -0
  78. package/dist/ui/radio-group/animated/index.d.ts +4 -0
  79. package/dist/ui/radio-group/animated/index.d.ts.map +1 -0
  80. package/dist/ui/radio-group/animated/radio-group-animated.d.ts +10 -0
  81. package/dist/ui/radio-group/animated/radio-group-animated.d.ts.map +1 -0
  82. package/dist/ui/radio-group/animated/types.d.ts +11 -0
  83. package/dist/ui/radio-group/animated/types.d.ts.map +1 -0
  84. package/dist/ui/radio-group/animated.js +177 -0
  85. package/dist/ui/radio-group/animated.js.map +1 -0
  86. package/dist/ui/radio-group/animated.mjs +173 -0
  87. package/dist/ui/radio-group/animated.mjs.map +1 -0
  88. package/dist/ui/radio-group/index.d.ts +4 -0
  89. package/dist/ui/radio-group/index.d.ts.map +1 -0
  90. package/dist/ui/radio-group/radio-group-context.d.ts +13 -0
  91. package/dist/ui/radio-group/radio-group-context.d.ts.map +1 -0
  92. package/dist/ui/radio-group/radio-group.d.ts +10 -0
  93. package/dist/ui/radio-group/radio-group.d.ts.map +1 -0
  94. package/dist/ui/radio-group/types.d.ts +26 -0
  95. package/dist/ui/radio-group/types.d.ts.map +1 -0
  96. package/dist/ui/radio-group/variants.d.ts +14 -0
  97. package/dist/ui/radio-group/variants.d.ts.map +1 -0
  98. package/dist/ui/radio-group.js +171 -0
  99. package/dist/ui/radio-group.js.map +1 -0
  100. package/dist/ui/radio-group.mjs +153 -0
  101. package/dist/ui/radio-group.mjs.map +1 -0
  102. package/package.json +1 -1
  103. package/src/design-system/checkbox.ts +47 -0
  104. package/src/design-system/index.ts +3 -0
  105. package/src/design-system/popover.ts +66 -0
  106. package/src/design-system/radio-group.ts +54 -0
  107. package/src/ui/checkbox/animated/animations.ts +12 -0
  108. package/src/ui/checkbox/animated/checkbox-animated.tsx +145 -0
  109. package/src/ui/checkbox/animated/index.ts +9 -0
  110. package/src/ui/checkbox/animated/types.ts +9 -0
  111. package/src/ui/checkbox/checkbox-base.tsx +134 -0
  112. package/src/ui/checkbox/checkbox.test.tsx +53 -0
  113. package/src/ui/checkbox/checkbox.tsx +8 -0
  114. package/src/ui/checkbox/index.ts +15 -0
  115. package/src/ui/checkbox/types.ts +40 -0
  116. package/src/ui/checkbox/variants.ts +50 -0
  117. package/src/ui/popover/animated/animations.ts +15 -0
  118. package/src/ui/popover/animated/index.ts +10 -0
  119. package/src/ui/popover/animated/popover-content-animated.tsx +54 -0
  120. package/src/ui/popover/animated/types.ts +18 -0
  121. package/src/ui/popover/index.ts +18 -0
  122. package/src/ui/popover/popover-base.tsx +261 -0
  123. package/src/ui/popover/popover.test.tsx +84 -0
  124. package/src/ui/popover/popover.tsx +8 -0
  125. package/src/ui/popover/types.ts +38 -0
  126. package/src/ui/popover/variants.ts +21 -0
  127. package/src/ui/radio-group/animated/animations.ts +12 -0
  128. package/src/ui/radio-group/animated/index.ts +10 -0
  129. package/src/ui/radio-group/animated/radio-group-animated.tsx +173 -0
  130. package/src/ui/radio-group/animated/types.ts +13 -0
  131. package/src/ui/radio-group/index.ts +19 -0
  132. package/src/ui/radio-group/radio-group-context.ts +23 -0
  133. package/src/ui/radio-group/radio-group.test.tsx +61 -0
  134. package/src/ui/radio-group/radio-group.tsx +159 -0
  135. package/src/ui/radio-group/types.ts +62 -0
  136. package/src/ui/radio-group/variants.ts +61 -0
@@ -0,0 +1,40 @@
1
+ export declare const zuiPopoverContentBase = "absolute z-50 rounded-lg border shadow-lg transition-all duration-200 outline-none";
2
+ export declare const zuiPopoverContentVariants: {
3
+ readonly default: "border-[color:var(--zui-popover-default-border,oklch(20.8%_0.042_265.755_/_0.1))] dark:border-[color:var(--zui-popover-default-border-dark,#ffffff1a)] bg-[var(--zui-popover-default-bg,#ffffff)] dark:bg-[var(--zui-popover-default-bg-dark,oklch(20.8%_0.042_265.755))] text-[color:var(--zui-popover-default-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-popover-default-fg-dark,oklch(96.8%_0.007_247.896))]";
4
+ readonly outline: "border-[color:var(--zui-popover-outline-border,oklch(37.3%_0.034_259.733))] dark:border-[color:var(--zui-popover-outline-border-dark,oklch(87.2%_0.01_258.338))] bg-[var(--zui-popover-outline-bg,#ffffff)] dark:bg-[var(--zui-popover-outline-bg-dark,#000000)] text-[color:var(--zui-popover-outline-fg,oklch(21%_0.034_264.665))] dark:text-[color:var(--zui-popover-outline-fg-dark,#ffffff)]";
5
+ readonly ghost: "border-transparent bg-[var(--zui-popover-ghost-bg,oklch(96.7%_0.003_264.542))] dark:bg-[var(--zui-popover-ghost-bg-dark,oklch(27.8%_0.033_256.848))] text-[color:var(--zui-popover-ghost-fg,oklch(21%_0.034_264.665))] dark:text-[color:var(--zui-popover-ghost-fg-dark,#ffffffe6)]";
6
+ readonly glass: "border-[color:var(--zui-popover-glass-border,#00000026)] dark:border-[color:var(--zui-popover-glass-border-dark,#ffffff26)] bg-[var(--zui-popover-glass-bg,#ffffffb3)] dark:bg-[var(--zui-popover-glass-bg-dark,#020617b3)] text-[color:var(--zui-popover-glass-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-popover-glass-fg-dark,#ffffff)] backdrop-blur-md";
7
+ readonly emerald: "border-[color:var(--zui-popover-emerald-border,oklch(43.2%_0.095_166.913_/_0.35))] bg-[var(--zui-popover-emerald-bg,oklch(90.5%_0.093_164.15))] text-[color:var(--zui-popover-emerald-fg,oklch(37.8%_0.077_168.94))] dark:bg-[var(--zui-popover-emerald-bg-dark,oklch(26.2%_0.051_172.552))] dark:text-[color:var(--zui-popover-emerald-fg-dark,oklch(90.5%_0.093_164.15))]";
8
+ readonly indigo: "border-[color:var(--zui-popover-indigo-border,oklch(39.8%_0.195_277.366_/_0.35))] bg-[var(--zui-popover-indigo-bg,oklch(87%_0.065_274.039))] text-[color:var(--zui-popover-indigo-fg,oklch(35.9%_0.144_278.697))] dark:bg-[var(--zui-popover-indigo-bg-dark,oklch(25.7%_0.09_281.288))] dark:text-[color:var(--zui-popover-indigo-fg-dark,oklch(87%_0.065_274.039))]";
9
+ readonly purple: "border-[color:var(--zui-popover-purple-border,oklch(43.8%_0.218_303.724_/_0.35))] bg-[var(--zui-popover-purple-bg,oklch(90.2%_0.063_306.703))] text-[color:var(--zui-popover-purple-fg,oklch(38.1%_0.176_304.987))] dark:bg-[var(--zui-popover-purple-bg-dark,oklch(29.1%_0.149_302.717))] dark:text-[color:var(--zui-popover-purple-fg-dark,oklch(90.2%_0.063_306.703))]";
10
+ readonly pink: "border-[color:var(--zui-popover-pink-border,oklch(45.9%_0.187_3.815_/_0.35))] bg-[var(--zui-popover-pink-bg,oklch(89.9%_0.061_343.231))] text-[color:var(--zui-popover-pink-fg,oklch(40.8%_0.153_2.432))] dark:bg-[var(--zui-popover-pink-bg-dark,oklch(28.4%_0.109_3.907))] dark:text-[color:var(--zui-popover-pink-fg-dark,oklch(89.9%_0.061_343.231))]";
11
+ readonly rose: "border-[color:var(--zui-popover-rose-border,oklch(45.5%_0.188_13.697_/_0.35))] bg-[var(--zui-popover-rose-bg,oklch(89.2%_0.058_10.001))] text-[color:var(--zui-popover-rose-fg,oklch(41%_0.159_10.272))] dark:bg-[var(--zui-popover-rose-bg-dark,oklch(27.1%_0.105_12.094))] dark:text-[color:var(--zui-popover-rose-fg-dark,oklch(89.2%_0.058_10.001))]";
12
+ readonly sky: "border-[color:var(--zui-popover-sky-border,oklch(44.3%_0.11_240.79_/_0.35))] bg-[var(--zui-popover-sky-bg,oklch(90.1%_0.058_230.902))] text-[color:var(--zui-popover-sky-fg,oklch(39.1%_0.09_240.876))] dark:bg-[var(--zui-popover-sky-bg-dark,oklch(29.3%_0.066_243.157))] dark:text-[color:var(--zui-popover-sky-fg-dark,oklch(90.1%_0.058_230.902))]";
13
+ readonly teal: "border-[color:var(--zui-popover-teal-border,oklch(43.7%_0.078_188.216_/_0.35))] bg-[var(--zui-popover-teal-bg,oklch(91%_0.096_180.426))] text-[color:var(--zui-popover-teal-fg,oklch(38.6%_0.063_188.416))] dark:bg-[var(--zui-popover-teal-bg-dark,oklch(27.7%_0.046_192.524))] dark:text-[color:var(--zui-popover-teal-fg-dark,oklch(91%_0.096_180.426))]";
14
+ readonly yellow: "border-[color:var(--zui-popover-yellow-border,oklch(47.6%_0.114_61.907_/_0.35))] bg-[var(--zui-popover-yellow-bg,oklch(94.5%_0.129_101.54))] text-[color:var(--zui-popover-yellow-fg,oklch(42.1%_0.095_57.708))] dark:bg-[var(--zui-popover-yellow-bg-dark,oklch(28.6%_0.066_53.813))] dark:text-[color:var(--zui-popover-yellow-fg-dark,oklch(94.5%_0.129_101.54))]";
15
+ readonly orange: "border-[color:var(--zui-popover-orange-border,oklch(47%_0.157_37.304_/_0.35))] bg-[var(--zui-popover-orange-bg,oklch(90.1%_0.076_70.697))] text-[color:var(--zui-popover-orange-fg,oklch(40.8%_0.123_38.172))] dark:bg-[var(--zui-popover-orange-bg-dark,oklch(26.6%_0.079_36.259))] dark:text-[color:var(--zui-popover-orange-fg-dark,oklch(90.1%_0.076_70.697))]";
16
+ readonly green: "border-[color:var(--zui-popover-green-border,oklch(44.8%_0.119_151.328_/_0.35))] bg-[var(--zui-popover-green-bg,oklch(92.5%_0.084_155.995))] text-[color:var(--zui-popover-green-fg,oklch(39.3%_0.095_152.535))] dark:bg-[var(--zui-popover-green-bg-dark,oklch(26.6%_0.065_152.934))] dark:text-[color:var(--zui-popover-green-fg-dark,oklch(92.5%_0.084_155.995))]";
17
+ readonly "gradient-blue": "border-transparent bg-linear-to-r from-[var(--zui-popover-gradient-blue-from,oklch(42.4%_0.199_265.638))] to-[var(--zui-popover-gradient-blue-to,oklch(43.8%_0.218_303.724))] text-[color:var(--zui-popover-gradient-blue-fg,#ffffff)]";
18
+ readonly "gradient-green": "border-transparent bg-linear-to-r from-[var(--zui-popover-gradient-green-from,oklch(44.8%_0.119_151.328))] to-[var(--zui-popover-gradient-green-to,oklch(45.3%_0.124_130.933))] text-[color:var(--zui-popover-gradient-green-fg,#ffffff)]";
19
+ readonly "gradient-red": "border-transparent bg-linear-to-r from-[var(--zui-popover-gradient-red-from,oklch(44.4%_0.177_26.899))] to-[var(--zui-popover-gradient-red-to,oklch(45.9%_0.187_3.815))] text-[color:var(--zui-popover-gradient-red-fg,#ffffff)]";
20
+ readonly "gradient-yellow": "border-transparent bg-linear-to-r from-[var(--zui-popover-gradient-yellow-from,oklch(47.6%_0.114_61.907))] to-[var(--zui-popover-gradient-yellow-to,oklch(47%_0.157_37.304))] text-[color:var(--zui-popover-gradient-yellow-fg,#ffffff)]";
21
+ readonly "gradient-purple": "border-transparent bg-linear-to-r from-[var(--zui-popover-gradient-purple-from,oklch(43.8%_0.218_303.724))] to-[var(--zui-popover-gradient-purple-to,oklch(45.9%_0.187_3.815))] text-[color:var(--zui-popover-gradient-purple-fg,#ffffff)]";
22
+ readonly "gradient-teal": "border-transparent bg-linear-to-r from-[var(--zui-popover-gradient-teal-from,oklch(43.7%_0.078_188.216))] to-[var(--zui-popover-gradient-teal-to,oklch(45%_0.085_224.283))] text-[color:var(--zui-popover-gradient-teal-fg,#ffffff)]";
23
+ readonly "gradient-indigo": "border-transparent bg-linear-to-r from-[var(--zui-popover-gradient-indigo-from,oklch(39.8%_0.195_277.366))] to-[var(--zui-popover-gradient-indigo-to,oklch(43.8%_0.218_303.724))] text-[color:var(--zui-popover-gradient-indigo-fg,#ffffff)]";
24
+ readonly "gradient-pink": "border-transparent bg-linear-to-r from-[var(--zui-popover-gradient-pink-from,oklch(45.9%_0.187_3.815))] to-[var(--zui-popover-gradient-pink-to,oklch(45.5%_0.188_13.697))] text-[color:var(--zui-popover-gradient-pink-fg,#ffffff)]";
25
+ readonly "gradient-orange": "border-transparent bg-linear-to-r from-[var(--zui-popover-gradient-orange-from,oklch(47%_0.157_37.304))] to-[var(--zui-popover-gradient-orange-to,oklch(44.4%_0.177_26.899))] text-[color:var(--zui-popover-gradient-orange-fg,#ffffff)]";
26
+ };
27
+ export declare const zuiPopoverContentSizes: {
28
+ readonly sm: "p-3 text-sm";
29
+ readonly md: "p-4 text-sm";
30
+ readonly lg: "p-5 text-base";
31
+ };
32
+ export declare const zuiPopoverContentWidths: {
33
+ readonly xs: "min-w-50 md:min-w-xs";
34
+ readonly sm: "min-w-50 md:min-w-sm";
35
+ readonly md: "min-w-50 md:min-w-md";
36
+ readonly lg: "min-w-50 md:min-w-lg";
37
+ readonly xl: "min-w-50 md:min-w-xl";
38
+ readonly "2xl": "min-w-50 md:min-w-2xl";
39
+ };
40
+ //# sourceMappingURL=popover.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"popover.d.ts","sourceRoot":"","sources":["../../src/design-system/popover.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,uFACoD,CAAC;AAEvF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;CA+C5B,CAAC;AAEX,eAAO,MAAM,sBAAsB;;;;CAIzB,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;;;;;CAO1B,CAAC"}
@@ -0,0 +1,37 @@
1
+ export declare const zuiRadioGroupRootBase = "grid gap-2";
2
+ export declare const 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";
3
+ export declare const 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";
4
+ export declare const zuiRadioGroupIndicatorBase = "pointer-events-none block rounded-full opacity-0 transition-opacity duration-150 group-data-[state=checked]:opacity-100";
5
+ export declare const zuiRadioGroupSizes: {
6
+ readonly sm: {
7
+ readonly item: "text-xs";
8
+ readonly control: "mt-0.5 size-4";
9
+ readonly indicator: "size-1.5";
10
+ };
11
+ readonly md: {
12
+ readonly item: "text-sm";
13
+ readonly control: "mt-0.5 size-5";
14
+ readonly indicator: "size-2";
15
+ };
16
+ readonly lg: {
17
+ readonly item: "text-base";
18
+ readonly control: "mt-0.5 size-6";
19
+ readonly indicator: "size-2.5";
20
+ };
21
+ };
22
+ export declare const zuiRadioGroupAppearances: {
23
+ readonly 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))]";
24
+ readonly 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))]";
25
+ readonly 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))]";
26
+ readonly 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))]";
27
+ readonly 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))]";
28
+ readonly 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))]";
29
+ readonly 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))]";
30
+ readonly 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))]";
31
+ readonly 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))]";
32
+ };
33
+ export declare const zuiRadioGroupOrientations: {
34
+ readonly vertical: "grid gap-2";
35
+ readonly horizontal: "flex flex-wrap gap-x-5 gap-y-2";
36
+ };
37
+ //# sourceMappingURL=radio-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-group.d.ts","sourceRoot":"","sources":["../../src/design-system/radio-group.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,eAAe,CAAC;AAElD,eAAO,MAAM,qBAAqB,0RACuP,CAAC;AAE1R,eAAO,MAAM,wBAAwB,2wBACquB,CAAC;AAE3wB,eAAO,MAAM,0BAA0B,4HACoF,CAAC;AAE5H,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;CAgBrB,CAAC;AAEX,eAAO,MAAM,wBAAwB;;;;;;;;;;CAmB3B,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;CAG5B,CAAC"}
@@ -0,0 +1,32 @@
1
+ export declare const checkboxAnimationPresets: {
2
+ readonly draw: {
3
+ readonly initial: {
4
+ readonly pathLength: 0;
5
+ readonly opacity: 0;
6
+ };
7
+ readonly animate: {
8
+ readonly pathLength: 1;
9
+ readonly opacity: 1;
10
+ };
11
+ readonly transition: {
12
+ readonly duration: 0.2;
13
+ readonly ease: "easeOut";
14
+ };
15
+ };
16
+ readonly spring: {
17
+ readonly initial: {
18
+ readonly scale: 0.7;
19
+ readonly opacity: 0;
20
+ };
21
+ readonly animate: {
22
+ readonly scale: 1;
23
+ readonly opacity: 1;
24
+ };
25
+ readonly transition: {
26
+ readonly type: "spring";
27
+ readonly stiffness: 520;
28
+ readonly damping: 30;
29
+ };
30
+ };
31
+ };
32
+ //# sourceMappingURL=animations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"animations.d.ts","sourceRoot":"","sources":["../../../../src/ui/checkbox/animated/animations.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAW3B,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { CheckboxAnimatedProps } from "./types";
2
+ export declare function CheckboxAnimated(props: CheckboxAnimatedProps): import("react/jsx-runtime").JSX.Element;
3
+ export declare namespace CheckboxAnimated {
4
+ var displayName: string;
5
+ }
6
+ //# sourceMappingURL=checkbox-animated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox-animated.d.ts","sourceRoot":"","sources":["../../../../src/ui/checkbox/animated/checkbox-animated.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAkBrD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,2CAoH5D;yBApHe,gBAAgB"}
@@ -0,0 +1,4 @@
1
+ export { CheckboxAnimated } from "./checkbox-animated";
2
+ export type { CheckboxAnimatedProps, CheckboxAnimation, CheckboxAnimationPresets, } from "./types";
3
+ export { checkboxAnimationPresets } from "./animations";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ui/checkbox/animated/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,YAAY,EACV,qBAAqB,EACrB,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { CheckboxProps } from "../types";
2
+ import type { checkboxAnimationPresets } from "./animations";
3
+ export type CheckboxAnimation = keyof typeof checkboxAnimationPresets;
4
+ export type CheckboxAnimationPresets = typeof checkboxAnimationPresets;
5
+ export type CheckboxAnimatedProps = CheckboxProps & {
6
+ animation?: CheckboxAnimation;
7
+ };
8
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/ui/checkbox/animated/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAE7D,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,wBAAwB,CAAC;AACtE,MAAM,MAAM,wBAAwB,GAAG,OAAO,wBAAwB,CAAC;AAEvE,MAAM,MAAM,qBAAqB,GAAG,aAAa,GAAG;IAClD,SAAS,CAAC,EAAE,iBAAiB,CAAC;CAC/B,CAAC"}
@@ -0,0 +1,153 @@
1
+ "use client";
2
+ 'use strict';
3
+
4
+ var chunkPHEUJ4EF_js = require('../../chunk-PHEUJ4EF.js');
5
+ var chunkZS5756ZC_js = require('../../chunk-ZS5756ZC.js');
6
+ var framerMotion = require('framer-motion');
7
+ var react = require('react');
8
+ var jsxRuntime = require('react/jsx-runtime');
9
+
10
+ // src/ui/checkbox/animated/animations.ts
11
+ var checkboxAnimationPresets = {
12
+ draw: {
13
+ initial: { pathLength: 0, opacity: 0 },
14
+ animate: { pathLength: 1, opacity: 1 },
15
+ transition: { duration: 0.2, ease: "easeOut" }
16
+ },
17
+ spring: {
18
+ initial: { scale: 0.7, opacity: 0 },
19
+ animate: { scale: 1, opacity: 1 },
20
+ transition: { type: "spring", stiffness: 520, damping: 30 }
21
+ }
22
+ };
23
+ function resolveCheckboxState(checked, indeterminate) {
24
+ if (indeterminate) {
25
+ return "indeterminate";
26
+ }
27
+ return checked ? "checked" : "unchecked";
28
+ }
29
+ function CheckboxAnimated(props) {
30
+ const {
31
+ className,
32
+ rootClassName,
33
+ controlClassName,
34
+ indicatorClassName,
35
+ appearance,
36
+ size,
37
+ checked,
38
+ defaultChecked = false,
39
+ indeterminate,
40
+ onCheckedChange,
41
+ disabled,
42
+ children,
43
+ label,
44
+ id,
45
+ ref,
46
+ "aria-label": ariaLabel,
47
+ animation = "draw",
48
+ ...rest
49
+ } = props;
50
+ const generatedId = react.useId();
51
+ const controlId = id ?? generatedId;
52
+ const isControlled = checked !== void 0;
53
+ const [uncontrolled, setUncontrolled] = react.useState(defaultChecked);
54
+ const resolvedChecked = isControlled ? Boolean(checked) : uncontrolled;
55
+ const state = resolveCheckboxState(resolvedChecked, indeterminate);
56
+ const labelContent = label ?? children;
57
+ const hasVisibleLabel = labelContent !== void 0 && labelContent !== null && labelContent !== false;
58
+ const motionPreset = checkboxAnimationPresets[animation];
59
+ const svgMotionProps = animation === "spring" ? motionPreset : void 0;
60
+ const pathMotionProps = animation === "draw" ? motionPreset : void 0;
61
+ const setChecked = react.useCallback(
62
+ (next) => {
63
+ if (!isControlled) {
64
+ setUncontrolled(next);
65
+ }
66
+ onCheckedChange?.(next);
67
+ },
68
+ [isControlled, onCheckedChange]
69
+ );
70
+ return /* @__PURE__ */ jsxRuntime.jsxs(
71
+ "label",
72
+ {
73
+ className: chunkZS5756ZC_js.cn(chunkPHEUJ4EF_js.checkboxRootVariants({ size }), rootClassName, className),
74
+ "data-disabled": disabled ? "true" : void 0,
75
+ "data-state": state,
76
+ htmlFor: controlId,
77
+ children: [
78
+ /* @__PURE__ */ jsxRuntime.jsx(
79
+ "input",
80
+ {
81
+ ref,
82
+ id: controlId,
83
+ type: "checkbox",
84
+ "data-slot": "checkbox",
85
+ className: "peer sr-only",
86
+ checked: resolvedChecked,
87
+ disabled,
88
+ "aria-checked": indeterminate ? "mixed" : resolvedChecked,
89
+ "aria-label": ariaLabel ?? (hasVisibleLabel ? void 0 : "Checkbox"),
90
+ onChange: (event) => setChecked(event.currentTarget.checked),
91
+ ...rest
92
+ }
93
+ ),
94
+ /* @__PURE__ */ jsxRuntime.jsx(
95
+ "span",
96
+ {
97
+ "aria-hidden": "true",
98
+ className: chunkZS5756ZC_js.cn(
99
+ chunkPHEUJ4EF_js.checkboxControlVariants({ appearance, size }),
100
+ controlClassName
101
+ ),
102
+ "data-slot": "checkbox-control",
103
+ children: state !== "unchecked" && /* @__PURE__ */ jsxRuntime.jsx(
104
+ framerMotion.motion.svg,
105
+ {
106
+ viewBox: "0 0 16 16",
107
+ fill: "none",
108
+ className: chunkZS5756ZC_js.cn(
109
+ chunkPHEUJ4EF_js.checkboxIndicatorVariants({ size }),
110
+ "opacity-100",
111
+ indicatorClassName
112
+ ),
113
+ initial: svgMotionProps?.initial,
114
+ animate: svgMotionProps?.animate,
115
+ transition: svgMotionProps?.transition,
116
+ children: state === "indeterminate" ? /* @__PURE__ */ jsxRuntime.jsx(
117
+ framerMotion.motion.path,
118
+ {
119
+ d: "M3.5 8H12.5",
120
+ strokeWidth: "2.4",
121
+ strokeLinecap: "round",
122
+ initial: pathMotionProps?.initial,
123
+ animate: pathMotionProps?.animate,
124
+ transition: pathMotionProps?.transition
125
+ }
126
+ ) : /* @__PURE__ */ jsxRuntime.jsx(
127
+ framerMotion.motion.path,
128
+ {
129
+ d: "M3.2 8.4L6.5 11.5L12.8 4.5",
130
+ strokeWidth: "2.2",
131
+ strokeLinecap: "round",
132
+ strokeLinejoin: "round",
133
+ initial: pathMotionProps?.initial,
134
+ animate: pathMotionProps?.animate,
135
+ transition: pathMotionProps?.transition
136
+ }
137
+ )
138
+ },
139
+ state
140
+ )
141
+ }
142
+ ),
143
+ hasVisibleLabel && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "min-w-0 leading-6", "data-slot": "checkbox-label", children: labelContent })
144
+ ]
145
+ }
146
+ );
147
+ }
148
+ CheckboxAnimated.displayName = "Checkbox";
149
+
150
+ exports.CheckboxAnimated = CheckboxAnimated;
151
+ exports.checkboxAnimationPresets = checkboxAnimationPresets;
152
+ //# sourceMappingURL=animated.js.map
153
+ //# sourceMappingURL=animated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/ui/checkbox/animated/animations.ts","../../../src/ui/checkbox/animated/checkbox-animated.tsx"],"names":["useId","useState","useCallback","jsxs","cn","checkboxRootVariants","jsx","checkboxControlVariants","motion","checkboxIndicatorVariants"],"mappings":"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","file":"animated.js","sourcesContent":["export const checkboxAnimationPresets = {\n draw: {\n initial: { pathLength: 0, opacity: 0 },\n animate: { pathLength: 1, opacity: 1 },\n transition: { duration: 0.2, ease: \"easeOut\" },\n },\n spring: {\n initial: { scale: 0.7, opacity: 0 },\n animate: { scale: 1, opacity: 1 },\n transition: { type: \"spring\", stiffness: 520, damping: 30 },\n },\n} as const;\n","\"use client\";\n\nimport { motion } from \"framer-motion\";\nimport { useCallback, useId, useState } from \"react\";\n\nimport { cn } from \"../../../lib/utils\";\n\nimport { checkboxAnimationPresets } from \"./animations\";\nimport type { CheckboxAnimatedProps } from \"./types\";\nimport type { CheckboxState } from \"../types\";\nimport {\n checkboxControlVariants,\n checkboxIndicatorVariants,\n checkboxRootVariants,\n} from \"../variants\";\n\nfunction resolveCheckboxState(\n checked: boolean,\n indeterminate: boolean | undefined,\n): CheckboxState {\n if (indeterminate) {\n return \"indeterminate\";\n }\n return checked ? \"checked\" : \"unchecked\";\n}\n\nexport function CheckboxAnimated(props: CheckboxAnimatedProps) {\n const {\n className,\n rootClassName,\n controlClassName,\n indicatorClassName,\n appearance,\n size,\n checked,\n defaultChecked = false,\n indeterminate,\n onCheckedChange,\n disabled,\n children,\n label,\n id,\n ref,\n \"aria-label\": ariaLabel,\n animation = \"draw\",\n ...rest\n } = props;\n const generatedId = useId();\n const controlId = id ?? generatedId;\n const isControlled = checked !== undefined;\n const [uncontrolled, setUncontrolled] = useState(defaultChecked);\n const resolvedChecked = isControlled ? Boolean(checked) : uncontrolled;\n const state = resolveCheckboxState(resolvedChecked, indeterminate);\n const labelContent = label ?? children;\n const hasVisibleLabel =\n labelContent !== undefined && labelContent !== null && labelContent !== false;\n const motionPreset = checkboxAnimationPresets[animation];\n const svgMotionProps = animation === \"spring\" ? motionPreset : undefined;\n const pathMotionProps = animation === \"draw\" ? motionPreset : undefined;\n\n const setChecked = useCallback(\n (next: boolean) => {\n if (!isControlled) {\n setUncontrolled(next);\n }\n onCheckedChange?.(next);\n },\n [isControlled, onCheckedChange],\n );\n\n return (\n <label\n className={cn(checkboxRootVariants({ size }), rootClassName, className)}\n data-disabled={disabled ? \"true\" : undefined}\n data-state={state}\n htmlFor={controlId}\n >\n <input\n ref={ref}\n id={controlId}\n type=\"checkbox\"\n data-slot=\"checkbox\"\n className=\"peer sr-only\"\n checked={resolvedChecked}\n disabled={disabled}\n aria-checked={indeterminate ? \"mixed\" : resolvedChecked}\n aria-label={ariaLabel ?? (hasVisibleLabel ? undefined : \"Checkbox\")}\n onChange={(event) => setChecked(event.currentTarget.checked)}\n {...rest}\n />\n <span\n aria-hidden=\"true\"\n className={cn(\n checkboxControlVariants({ appearance, size }),\n controlClassName,\n )}\n data-slot=\"checkbox-control\"\n >\n {state !== \"unchecked\" && (\n <motion.svg\n key={state}\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n className={cn(\n checkboxIndicatorVariants({ size }),\n \"opacity-100\",\n indicatorClassName,\n )}\n initial={svgMotionProps?.initial}\n animate={svgMotionProps?.animate}\n transition={svgMotionProps?.transition}\n >\n {state === \"indeterminate\" ? (\n <motion.path\n d=\"M3.5 8H12.5\"\n strokeWidth=\"2.4\"\n strokeLinecap=\"round\"\n initial={pathMotionProps?.initial}\n animate={pathMotionProps?.animate}\n transition={pathMotionProps?.transition}\n />\n ) : (\n <motion.path\n d=\"M3.2 8.4L6.5 11.5L12.8 4.5\"\n strokeWidth=\"2.2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n initial={pathMotionProps?.initial}\n animate={pathMotionProps?.animate}\n transition={pathMotionProps?.transition}\n />\n )}\n </motion.svg>\n )}\n </span>\n {hasVisibleLabel && (\n <span className=\"min-w-0 leading-6\" data-slot=\"checkbox-label\">\n {labelContent}\n </span>\n )}\n </label>\n );\n}\n\nCheckboxAnimated.displayName = \"Checkbox\";\n"]}
@@ -0,0 +1,150 @@
1
+ "use client";
2
+ import { checkboxIndicatorVariants, checkboxControlVariants, checkboxRootVariants } from '../../chunk-K6IZANTI.mjs';
3
+ import { cn } from '../../chunk-4D54YOL6.mjs';
4
+ import { motion } from 'framer-motion';
5
+ import { useId, useState, useCallback } from 'react';
6
+ import { jsxs, jsx } from 'react/jsx-runtime';
7
+
8
+ // src/ui/checkbox/animated/animations.ts
9
+ var checkboxAnimationPresets = {
10
+ draw: {
11
+ initial: { pathLength: 0, opacity: 0 },
12
+ animate: { pathLength: 1, opacity: 1 },
13
+ transition: { duration: 0.2, ease: "easeOut" }
14
+ },
15
+ spring: {
16
+ initial: { scale: 0.7, opacity: 0 },
17
+ animate: { scale: 1, opacity: 1 },
18
+ transition: { type: "spring", stiffness: 520, damping: 30 }
19
+ }
20
+ };
21
+ function resolveCheckboxState(checked, indeterminate) {
22
+ if (indeterminate) {
23
+ return "indeterminate";
24
+ }
25
+ return checked ? "checked" : "unchecked";
26
+ }
27
+ function CheckboxAnimated(props) {
28
+ const {
29
+ className,
30
+ rootClassName,
31
+ controlClassName,
32
+ indicatorClassName,
33
+ appearance,
34
+ size,
35
+ checked,
36
+ defaultChecked = false,
37
+ indeterminate,
38
+ onCheckedChange,
39
+ disabled,
40
+ children,
41
+ label,
42
+ id,
43
+ ref,
44
+ "aria-label": ariaLabel,
45
+ animation = "draw",
46
+ ...rest
47
+ } = props;
48
+ const generatedId = useId();
49
+ const controlId = id ?? generatedId;
50
+ const isControlled = checked !== void 0;
51
+ const [uncontrolled, setUncontrolled] = useState(defaultChecked);
52
+ const resolvedChecked = isControlled ? Boolean(checked) : uncontrolled;
53
+ const state = resolveCheckboxState(resolvedChecked, indeterminate);
54
+ const labelContent = label ?? children;
55
+ const hasVisibleLabel = labelContent !== void 0 && labelContent !== null && labelContent !== false;
56
+ const motionPreset = checkboxAnimationPresets[animation];
57
+ const svgMotionProps = animation === "spring" ? motionPreset : void 0;
58
+ const pathMotionProps = animation === "draw" ? motionPreset : void 0;
59
+ const setChecked = useCallback(
60
+ (next) => {
61
+ if (!isControlled) {
62
+ setUncontrolled(next);
63
+ }
64
+ onCheckedChange?.(next);
65
+ },
66
+ [isControlled, onCheckedChange]
67
+ );
68
+ return /* @__PURE__ */ jsxs(
69
+ "label",
70
+ {
71
+ className: cn(checkboxRootVariants({ size }), rootClassName, className),
72
+ "data-disabled": disabled ? "true" : void 0,
73
+ "data-state": state,
74
+ htmlFor: controlId,
75
+ children: [
76
+ /* @__PURE__ */ jsx(
77
+ "input",
78
+ {
79
+ ref,
80
+ id: controlId,
81
+ type: "checkbox",
82
+ "data-slot": "checkbox",
83
+ className: "peer sr-only",
84
+ checked: resolvedChecked,
85
+ disabled,
86
+ "aria-checked": indeterminate ? "mixed" : resolvedChecked,
87
+ "aria-label": ariaLabel ?? (hasVisibleLabel ? void 0 : "Checkbox"),
88
+ onChange: (event) => setChecked(event.currentTarget.checked),
89
+ ...rest
90
+ }
91
+ ),
92
+ /* @__PURE__ */ jsx(
93
+ "span",
94
+ {
95
+ "aria-hidden": "true",
96
+ className: cn(
97
+ checkboxControlVariants({ appearance, size }),
98
+ controlClassName
99
+ ),
100
+ "data-slot": "checkbox-control",
101
+ children: state !== "unchecked" && /* @__PURE__ */ jsx(
102
+ motion.svg,
103
+ {
104
+ viewBox: "0 0 16 16",
105
+ fill: "none",
106
+ className: cn(
107
+ checkboxIndicatorVariants({ size }),
108
+ "opacity-100",
109
+ indicatorClassName
110
+ ),
111
+ initial: svgMotionProps?.initial,
112
+ animate: svgMotionProps?.animate,
113
+ transition: svgMotionProps?.transition,
114
+ children: state === "indeterminate" ? /* @__PURE__ */ jsx(
115
+ motion.path,
116
+ {
117
+ d: "M3.5 8H12.5",
118
+ strokeWidth: "2.4",
119
+ strokeLinecap: "round",
120
+ initial: pathMotionProps?.initial,
121
+ animate: pathMotionProps?.animate,
122
+ transition: pathMotionProps?.transition
123
+ }
124
+ ) : /* @__PURE__ */ jsx(
125
+ motion.path,
126
+ {
127
+ d: "M3.2 8.4L6.5 11.5L12.8 4.5",
128
+ strokeWidth: "2.2",
129
+ strokeLinecap: "round",
130
+ strokeLinejoin: "round",
131
+ initial: pathMotionProps?.initial,
132
+ animate: pathMotionProps?.animate,
133
+ transition: pathMotionProps?.transition
134
+ }
135
+ )
136
+ },
137
+ state
138
+ )
139
+ }
140
+ ),
141
+ hasVisibleLabel && /* @__PURE__ */ jsx("span", { className: "min-w-0 leading-6", "data-slot": "checkbox-label", children: labelContent })
142
+ ]
143
+ }
144
+ );
145
+ }
146
+ CheckboxAnimated.displayName = "Checkbox";
147
+
148
+ export { CheckboxAnimated, checkboxAnimationPresets };
149
+ //# sourceMappingURL=animated.mjs.map
150
+ //# sourceMappingURL=animated.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/ui/checkbox/animated/animations.ts","../../../src/ui/checkbox/animated/checkbox-animated.tsx"],"names":[],"mappings":"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","file":"animated.mjs","sourcesContent":["export const checkboxAnimationPresets = {\n draw: {\n initial: { pathLength: 0, opacity: 0 },\n animate: { pathLength: 1, opacity: 1 },\n transition: { duration: 0.2, ease: \"easeOut\" },\n },\n spring: {\n initial: { scale: 0.7, opacity: 0 },\n animate: { scale: 1, opacity: 1 },\n transition: { type: \"spring\", stiffness: 520, damping: 30 },\n },\n} as const;\n","\"use client\";\n\nimport { motion } from \"framer-motion\";\nimport { useCallback, useId, useState } from \"react\";\n\nimport { cn } from \"../../../lib/utils\";\n\nimport { checkboxAnimationPresets } from \"./animations\";\nimport type { CheckboxAnimatedProps } from \"./types\";\nimport type { CheckboxState } from \"../types\";\nimport {\n checkboxControlVariants,\n checkboxIndicatorVariants,\n checkboxRootVariants,\n} from \"../variants\";\n\nfunction resolveCheckboxState(\n checked: boolean,\n indeterminate: boolean | undefined,\n): CheckboxState {\n if (indeterminate) {\n return \"indeterminate\";\n }\n return checked ? \"checked\" : \"unchecked\";\n}\n\nexport function CheckboxAnimated(props: CheckboxAnimatedProps) {\n const {\n className,\n rootClassName,\n controlClassName,\n indicatorClassName,\n appearance,\n size,\n checked,\n defaultChecked = false,\n indeterminate,\n onCheckedChange,\n disabled,\n children,\n label,\n id,\n ref,\n \"aria-label\": ariaLabel,\n animation = \"draw\",\n ...rest\n } = props;\n const generatedId = useId();\n const controlId = id ?? generatedId;\n const isControlled = checked !== undefined;\n const [uncontrolled, setUncontrolled] = useState(defaultChecked);\n const resolvedChecked = isControlled ? Boolean(checked) : uncontrolled;\n const state = resolveCheckboxState(resolvedChecked, indeterminate);\n const labelContent = label ?? children;\n const hasVisibleLabel =\n labelContent !== undefined && labelContent !== null && labelContent !== false;\n const motionPreset = checkboxAnimationPresets[animation];\n const svgMotionProps = animation === \"spring\" ? motionPreset : undefined;\n const pathMotionProps = animation === \"draw\" ? motionPreset : undefined;\n\n const setChecked = useCallback(\n (next: boolean) => {\n if (!isControlled) {\n setUncontrolled(next);\n }\n onCheckedChange?.(next);\n },\n [isControlled, onCheckedChange],\n );\n\n return (\n <label\n className={cn(checkboxRootVariants({ size }), rootClassName, className)}\n data-disabled={disabled ? \"true\" : undefined}\n data-state={state}\n htmlFor={controlId}\n >\n <input\n ref={ref}\n id={controlId}\n type=\"checkbox\"\n data-slot=\"checkbox\"\n className=\"peer sr-only\"\n checked={resolvedChecked}\n disabled={disabled}\n aria-checked={indeterminate ? \"mixed\" : resolvedChecked}\n aria-label={ariaLabel ?? (hasVisibleLabel ? undefined : \"Checkbox\")}\n onChange={(event) => setChecked(event.currentTarget.checked)}\n {...rest}\n />\n <span\n aria-hidden=\"true\"\n className={cn(\n checkboxControlVariants({ appearance, size }),\n controlClassName,\n )}\n data-slot=\"checkbox-control\"\n >\n {state !== \"unchecked\" && (\n <motion.svg\n key={state}\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n className={cn(\n checkboxIndicatorVariants({ size }),\n \"opacity-100\",\n indicatorClassName,\n )}\n initial={svgMotionProps?.initial}\n animate={svgMotionProps?.animate}\n transition={svgMotionProps?.transition}\n >\n {state === \"indeterminate\" ? (\n <motion.path\n d=\"M3.5 8H12.5\"\n strokeWidth=\"2.4\"\n strokeLinecap=\"round\"\n initial={pathMotionProps?.initial}\n animate={pathMotionProps?.animate}\n transition={pathMotionProps?.transition}\n />\n ) : (\n <motion.path\n d=\"M3.2 8.4L6.5 11.5L12.8 4.5\"\n strokeWidth=\"2.2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n initial={pathMotionProps?.initial}\n animate={pathMotionProps?.animate}\n transition={pathMotionProps?.transition}\n />\n )}\n </motion.svg>\n )}\n </span>\n {hasVisibleLabel && (\n <span className=\"min-w-0 leading-6\" data-slot=\"checkbox-label\">\n {labelContent}\n </span>\n )}\n </label>\n );\n}\n\nCheckboxAnimated.displayName = \"Checkbox\";\n"]}
@@ -0,0 +1,6 @@
1
+ import type { CheckboxProps } from "./types";
2
+ export declare function CheckboxBase(props: CheckboxProps): import("react/jsx-runtime").JSX.Element;
3
+ export declare namespace CheckboxBase {
4
+ var displayName: string;
5
+ }
6
+ //# sourceMappingURL=checkbox-base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox-base.d.ts","sourceRoot":"","sources":["../../../src/ui/checkbox/checkbox-base.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAiB,MAAM,SAAS,CAAC;AAiB5D,wBAAgB,YAAY,CAAC,KAAK,EAAE,aAAa,2CA4GhD;yBA5Ge,YAAY"}
@@ -0,0 +1,6 @@
1
+ import type { CheckboxProps } from "./types";
2
+ export declare function Checkbox(props: CheckboxProps): import("react/jsx-runtime").JSX.Element;
3
+ export declare namespace Checkbox {
4
+ var displayName: string;
5
+ }
6
+ //# sourceMappingURL=checkbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../../src/ui/checkbox/checkbox.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,2CAE5C;yBAFe,QAAQ"}
@@ -0,0 +1,4 @@
1
+ export { Checkbox } from "./checkbox";
2
+ export type { CheckboxControlVariantProps, CheckboxIndicatorVariantProps, CheckboxProps, CheckboxRootVariantProps, CheckboxState, } from "./types";
3
+ export { checkboxControlVariants, checkboxIndicatorVariants, checkboxRootVariants, } from "./variants";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/checkbox/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EACV,2BAA2B,EAC3B,6BAA6B,EAC7B,aAAa,EACb,wBAAwB,EACxB,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { VariantProps } from "class-variance-authority";
2
+ import type { ComponentPropsWithRef, ReactNode } from "react";
3
+ import type { checkboxControlVariants, checkboxIndicatorVariants, checkboxRootVariants } from "./variants";
4
+ export type CheckboxState = "checked" | "unchecked" | "indeterminate";
5
+ export type CheckboxRootVariantProps = VariantProps<typeof checkboxRootVariants>;
6
+ export type CheckboxControlVariantProps = VariantProps<typeof checkboxControlVariants>;
7
+ export type CheckboxIndicatorVariantProps = VariantProps<typeof checkboxIndicatorVariants>;
8
+ export type CheckboxProps = CheckboxRootVariantProps & CheckboxControlVariantProps & Omit<ComponentPropsWithRef<"input">, "type" | "size" | "checked" | "defaultChecked" | "onChange" | "children"> & {
9
+ checked?: boolean;
10
+ defaultChecked?: boolean;
11
+ indeterminate?: boolean;
12
+ onCheckedChange?: (checked: boolean) => void;
13
+ children?: ReactNode;
14
+ label?: ReactNode;
15
+ rootClassName?: string;
16
+ controlClassName?: string;
17
+ indicatorClassName?: string;
18
+ };
19
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ui/checkbox/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE9D,OAAO,KAAK,EACV,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,eAAe,CAAC;AAEtE,MAAM,MAAM,wBAAwB,GAAG,YAAY,CAAC,OAAO,oBAAoB,CAAC,CAAC;AACjF,MAAM,MAAM,2BAA2B,GAAG,YAAY,CACpD,OAAO,uBAAuB,CAC/B,CAAC;AACF,MAAM,MAAM,6BAA6B,GAAG,YAAY,CACtD,OAAO,yBAAyB,CACjC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,wBAAwB,GAClD,2BAA2B,GAC3B,IAAI,CACF,qBAAqB,CAAC,OAAO,CAAC,EAC5B,MAAM,GACN,MAAM,GACN,SAAS,GACT,gBAAgB,GAChB,UAAU,GACV,UAAU,CACb,GAAG;IACF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC"}
@@ -0,0 +1,11 @@
1
+ export declare const checkboxRootVariants: (props?: ({
2
+ size?: "md" | "sm" | "lg" | null | undefined;
3
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
4
+ export declare const checkboxControlVariants: (props?: ({
5
+ appearance?: "default" | "violet" | "amber" | "indigo" | "pink" | "error" | "success" | "warning" | "info" | null | undefined;
6
+ size?: "md" | "sm" | "lg" | null | undefined;
7
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
8
+ export declare const checkboxIndicatorVariants: (props?: ({
9
+ size?: "md" | "sm" | "lg" | null | undefined;
10
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
11
+ //# sourceMappingURL=variants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/ui/checkbox/variants.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,oBAAoB;;8EAW/B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;8EAalC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;8EAWpC,CAAC"}