@fuf-stack/uniform 1.22.4 → 1.22.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.
Files changed (442) hide show
  1. package/dist/Checkboxes/index.cjs +113 -3
  2. package/dist/Checkboxes/index.cjs.map +1 -0
  3. package/dist/Checkboxes/index.d.cts +534 -2
  4. package/dist/Checkboxes/index.d.cts.map +1 -0
  5. package/dist/Checkboxes/index.d.ts +534 -2
  6. package/dist/Checkboxes/index.d.ts.map +1 -0
  7. package/dist/Checkboxes/index.js +112 -2
  8. package/dist/Checkboxes/index.js.map +1 -0
  9. package/dist/DatePicker/index.cjs +194 -3
  10. package/dist/DatePicker/index.cjs.map +1 -0
  11. package/dist/DatePicker/index.d.cts +1413 -2
  12. package/dist/DatePicker/index.d.cts.map +1 -0
  13. package/dist/DatePicker/index.d.ts +1413 -2
  14. package/dist/DatePicker/index.d.ts.map +1 -0
  15. package/dist/DatePicker/index.js +193 -2
  16. package/dist/DatePicker/index.js.map +1 -0
  17. package/dist/FieldArray/index.cjs +495 -3
  18. package/dist/FieldArray/index.cjs.map +1 -0
  19. package/dist/FieldArray/index.d.cts +539 -2
  20. package/dist/FieldArray/index.d.cts.map +1 -0
  21. package/dist/FieldArray/index.d.ts +539 -2
  22. package/dist/FieldArray/index.d.ts.map +1 -0
  23. package/dist/FieldArray/index.js +494 -2
  24. package/dist/FieldArray/index.js.map +1 -0
  25. package/dist/FieldCard/index.cjs +230 -4
  26. package/dist/FieldCard/index.cjs.map +1 -0
  27. package/dist/FieldCard/index.d.cts +314 -2
  28. package/dist/FieldCard/index.d.cts.map +1 -0
  29. package/dist/FieldCard/index.d.ts +314 -2
  30. package/dist/FieldCard/index.d.ts.map +1 -0
  31. package/dist/FieldCard/index.js +225 -2
  32. package/dist/FieldCard/index.js.map +1 -0
  33. package/dist/{FieldCopyTestIdButton-Dpmo0uBV.js → FieldCopyTestIdButton-CRJBix9D.js} +2 -2
  34. package/dist/{FieldCopyTestIdButton-Dpmo0uBV.js.map → FieldCopyTestIdButton-CRJBix9D.js.map} +1 -1
  35. package/dist/{FieldCopyTestIdButton-ptoB1F75.cjs → FieldCopyTestIdButton-D3D_LmJh.cjs} +1 -8
  36. package/dist/{FieldCopyTestIdButton-ptoB1F75.cjs.map → FieldCopyTestIdButton-D3D_LmJh.cjs.map} +1 -1
  37. package/dist/{FieldValidationError-ktTyyyip.js → FieldValidationError-ByRoIxaM.js} +5 -5
  38. package/dist/{FieldValidationError-ktTyyyip.js.map → FieldValidationError-ByRoIxaM.js.map} +1 -1
  39. package/dist/{FieldValidationError-BQcvvU9i.cjs → FieldValidationError-CfYKzl7P.cjs} +5 -6
  40. package/dist/{FieldValidationError-BQcvvU9i.cjs.map → FieldValidationError-CfYKzl7P.cjs.map} +1 -1
  41. package/dist/Form/index.cjs +118 -3
  42. package/dist/Form/index.cjs.map +1 -0
  43. package/dist/Form/index.d.cts +43 -2
  44. package/dist/Form/index.d.cts.map +1 -0
  45. package/dist/Form/index.d.ts +43 -2
  46. package/dist/Form/index.d.ts.map +1 -0
  47. package/dist/Form/index.js +118 -2
  48. package/dist/Form/index.js.map +1 -0
  49. package/dist/{FormContext-3kamRn2C.d.cts → FormContext-BLWS7bhO.d.cts} +1 -1
  50. package/dist/{FormContext-3kamRn2C.d.cts.map → FormContext-BLWS7bhO.d.cts.map} +1 -1
  51. package/dist/{FormContext-BQeKOV-0.js → FormContext-DjJOJKxj.js} +1 -1
  52. package/dist/{FormContext-BQeKOV-0.js.map → FormContext-DjJOJKxj.js.map} +1 -1
  53. package/dist/{FormContext-DsmS_mkO.cjs → FormContext-EGH0cVnH.cjs} +1 -1
  54. package/dist/{FormContext-DsmS_mkO.cjs.map → FormContext-EGH0cVnH.cjs.map} +1 -1
  55. package/dist/{FormContext-i66vM5f1.d.ts → FormContext-LgzrDWu1.d.ts} +1 -1
  56. package/dist/{FormContext-i66vM5f1.d.ts.map → FormContext-LgzrDWu1.d.ts.map} +1 -1
  57. package/dist/Grid/index.cjs +1 -2
  58. package/dist/Grid/index.d.cts +22 -2
  59. package/dist/Grid/index.d.cts.map +1 -0
  60. package/dist/Grid/index.d.ts +22 -2
  61. package/dist/Grid/index.d.ts.map +1 -0
  62. package/dist/Grid/index.js +2 -2
  63. package/dist/{Grid-D-VcRGi9.cjs → Grid-BbqCRkuY.cjs} +1 -8
  64. package/dist/{Grid-D-VcRGi9.cjs.map → Grid-BbqCRkuY.cjs.map} +1 -1
  65. package/dist/{Grid-BQpLOB0G.js → Grid-CTs-Rb9G.js} +2 -2
  66. package/dist/{Grid-BQpLOB0G.js.map → Grid-CTs-Rb9G.js.map} +1 -1
  67. package/dist/Input/index.cjs +96 -3
  68. package/dist/Input/index.cjs.map +1 -0
  69. package/dist/Input/index.d.cts +677 -2
  70. package/dist/Input/index.d.cts.map +1 -0
  71. package/dist/Input/index.d.ts +677 -2
  72. package/dist/Input/index.d.ts.map +1 -0
  73. package/dist/Input/index.js +96 -2
  74. package/dist/Input/index.js.map +1 -0
  75. package/dist/RadioBoxes/index.cjs +136 -4
  76. package/dist/RadioBoxes/index.cjs.map +1 -0
  77. package/dist/RadioBoxes/index.d.cts +1477 -2
  78. package/dist/RadioBoxes/index.d.cts.map +1 -0
  79. package/dist/RadioBoxes/index.d.ts +1477 -2
  80. package/dist/RadioBoxes/index.d.ts.map +1 -0
  81. package/dist/RadioBoxes/index.js +135 -2
  82. package/dist/RadioBoxes/index.js.map +1 -0
  83. package/dist/RadioTabs/index.cjs +123 -3
  84. package/dist/RadioTabs/index.cjs.map +1 -0
  85. package/dist/RadioTabs/index.d.cts +585 -2
  86. package/dist/RadioTabs/index.d.cts.map +1 -0
  87. package/dist/RadioTabs/index.d.ts +585 -2
  88. package/dist/RadioTabs/index.d.ts.map +1 -0
  89. package/dist/RadioTabs/index.js +120 -2
  90. package/dist/RadioTabs/index.js.map +1 -0
  91. package/dist/Radios/index.cjs +74 -3
  92. package/dist/Radios/index.cjs.map +1 -0
  93. package/dist/Radios/index.d.cts +1263 -2
  94. package/dist/Radios/index.d.cts.map +1 -0
  95. package/dist/Radios/index.d.ts +1263 -2
  96. package/dist/Radios/index.d.ts.map +1 -0
  97. package/dist/Radios/index.js +73 -2
  98. package/dist/Radios/index.js.map +1 -0
  99. package/dist/Select/index.cjs +286 -3
  100. package/dist/Select/index.cjs.map +1 -0
  101. package/dist/Select/index.d.cts +3917 -2
  102. package/dist/Select/index.d.cts.map +1 -0
  103. package/dist/Select/index.d.ts +3917 -2
  104. package/dist/Select/index.d.ts.map +1 -0
  105. package/dist/Select/index.js +283 -2
  106. package/dist/Select/index.js.map +1 -0
  107. package/dist/Slider/index.cjs +109 -3
  108. package/dist/Slider/index.cjs.map +1 -0
  109. package/dist/Slider/index.d.cts +1760 -2
  110. package/dist/Slider/index.d.cts.map +1 -0
  111. package/dist/Slider/index.d.ts +1760 -2
  112. package/dist/Slider/index.d.ts.map +1 -0
  113. package/dist/Slider/index.js +108 -2
  114. package/dist/Slider/index.js.map +1 -0
  115. package/dist/SubmitButton/index.cjs +31 -3
  116. package/dist/SubmitButton/index.cjs.map +1 -0
  117. package/dist/SubmitButton/index.d.cts +38 -2
  118. package/dist/SubmitButton/index.d.cts.map +1 -0
  119. package/dist/SubmitButton/index.d.ts +38 -2
  120. package/dist/SubmitButton/index.d.ts.map +1 -0
  121. package/dist/SubmitButton/index.js +31 -2
  122. package/dist/SubmitButton/index.js.map +1 -0
  123. package/dist/Switch/index.cjs +82 -3
  124. package/dist/Switch/index.cjs.map +1 -0
  125. package/dist/Switch/index.d.cts +1257 -2
  126. package/dist/Switch/index.d.cts.map +1 -0
  127. package/dist/Switch/index.d.ts +1257 -2
  128. package/dist/Switch/index.d.ts.map +1 -0
  129. package/dist/Switch/index.js +81 -2
  130. package/dist/Switch/index.js.map +1 -0
  131. package/dist/SwitchBox/index.cjs +154 -4
  132. package/dist/SwitchBox/index.cjs.map +1 -0
  133. package/dist/SwitchBox/index.d.cts +473 -2
  134. package/dist/SwitchBox/index.d.cts.map +1 -0
  135. package/dist/SwitchBox/index.d.ts +473 -2
  136. package/dist/SwitchBox/index.d.ts.map +1 -0
  137. package/dist/SwitchBox/index.js +153 -2
  138. package/dist/SwitchBox/index.js.map +1 -0
  139. package/dist/TextArea/index.cjs +66 -3
  140. package/dist/TextArea/index.cjs.map +1 -0
  141. package/dist/TextArea/index.d.cts +659 -2
  142. package/dist/TextArea/index.d.cts.map +1 -0
  143. package/dist/TextArea/index.d.ts +659 -2
  144. package/dist/TextArea/index.d.ts.map +1 -0
  145. package/dist/TextArea/index.js +66 -2
  146. package/dist/TextArea/index.js.map +1 -0
  147. package/dist/Time/index.cjs +221 -3
  148. package/dist/Time/index.cjs.map +1 -0
  149. package/dist/Time/index.d.cts +1028 -2
  150. package/dist/Time/index.d.cts.map +1 -0
  151. package/dist/Time/index.d.ts +1028 -2
  152. package/dist/Time/index.d.ts.map +1 -0
  153. package/dist/Time/index.js +216 -2
  154. package/dist/Time/index.js.map +1 -0
  155. package/dist/helpers/index.cjs +0 -1
  156. package/dist/helpers/index.cjs.map +1 -1
  157. package/dist/helpers/index.js.map +1 -1
  158. package/dist/hooks/useClientValidation/index.cjs +177 -3
  159. package/dist/hooks/useClientValidation/index.cjs.map +1 -1
  160. package/dist/hooks/useClientValidation/index.d.cts +148 -2
  161. package/dist/hooks/useClientValidation/index.d.cts.map +1 -0
  162. package/dist/hooks/useClientValidation/index.d.ts +148 -2
  163. package/dist/hooks/useClientValidation/index.d.ts.map +1 -0
  164. package/dist/hooks/useClientValidation/index.js +175 -1
  165. package/dist/hooks/useClientValidation/index.js.map +1 -1
  166. package/dist/hooks/useController/index.cjs +1 -1
  167. package/dist/hooks/useController/index.d.cts +1 -1
  168. package/dist/hooks/useController/index.d.ts +1 -1
  169. package/dist/hooks/useController/index.js +1 -1
  170. package/dist/hooks/useFormContext/index.cjs +1 -1
  171. package/dist/hooks/useFormContext/index.d.cts +1 -1
  172. package/dist/hooks/useFormContext/index.d.ts +1 -1
  173. package/dist/hooks/useFormContext/index.js +1 -1
  174. package/dist/hooks/useInput/index.cjs +0 -1
  175. package/dist/hooks/useInput/index.d.cts +1 -1
  176. package/dist/hooks/useInput/index.d.ts +1 -1
  177. package/dist/hooks/useInput/index.js +1 -1
  178. package/dist/hooks/useInputValueDebounce/index.cjs +1 -2
  179. package/dist/hooks/useInputValueDebounce/index.cjs.map +1 -1
  180. package/dist/hooks/useInputValueDebounce/index.d.cts +66 -2
  181. package/dist/hooks/useInputValueDebounce/index.d.cts.map +1 -0
  182. package/dist/hooks/useInputValueDebounce/index.d.ts +66 -2
  183. package/dist/hooks/useInputValueDebounce/index.d.ts.map +1 -0
  184. package/dist/hooks/useInputValueDebounce/index.js +1 -1
  185. package/dist/hooks/useInputValueTransform/index.cjs +1 -1
  186. package/dist/hooks/useInputValueTransform/index.d.cts +1 -1
  187. package/dist/hooks/useInputValueTransform/index.d.ts +1 -1
  188. package/dist/hooks/useInputValueTransform/index.js +1 -1
  189. package/dist/hooks/useUniformField/index.cjs +8 -8
  190. package/dist/hooks/useUniformField/index.cjs.map +1 -1
  191. package/dist/hooks/useUniformField/index.d.cts +98 -2
  192. package/dist/hooks/useUniformField/index.d.cts.map +1 -0
  193. package/dist/hooks/useUniformField/index.d.ts +98 -2
  194. package/dist/hooks/useUniformField/index.d.ts.map +1 -0
  195. package/dist/hooks/useUniformField/index.js +8 -8
  196. package/dist/hooks/useUniformField/index.js.map +1 -1
  197. package/dist/hooks/useUniformFieldArray/index.cjs +1 -2
  198. package/dist/hooks/useUniformFieldArray/index.cjs.map +1 -1
  199. package/dist/hooks/useUniformFieldArray/index.d.cts +79 -2
  200. package/dist/hooks/useUniformFieldArray/index.d.cts.map +1 -0
  201. package/dist/hooks/useUniformFieldArray/index.d.ts +79 -2
  202. package/dist/hooks/useUniformFieldArray/index.d.ts.map +1 -0
  203. package/dist/hooks/useUniformFieldArray/index.js +1 -1
  204. package/dist/hooks/useWatchFormReset/index.cjs +1 -2
  205. package/dist/hooks/useWatchFormReset/index.cjs.map +1 -1
  206. package/dist/hooks/useWatchFormReset/index.d.cts +38 -2
  207. package/dist/hooks/useWatchFormReset/index.d.cts.map +1 -0
  208. package/dist/hooks/useWatchFormReset/index.d.ts +38 -2
  209. package/dist/hooks/useWatchFormReset/index.d.ts.map +1 -0
  210. package/dist/hooks/useWatchFormReset/index.js +1 -1
  211. package/dist/hooks/useWatchUserChange/index.cjs +82 -2
  212. package/dist/hooks/useWatchUserChange/index.cjs.map +1 -1
  213. package/dist/hooks/useWatchUserChange/index.d.cts +80 -2
  214. package/dist/hooks/useWatchUserChange/index.d.cts.map +1 -0
  215. package/dist/hooks/useWatchUserChange/index.d.ts +80 -2
  216. package/dist/hooks/useWatchUserChange/index.d.ts.map +1 -0
  217. package/dist/hooks/useWatchUserChange/index.js +81 -1
  218. package/dist/hooks/useWatchUserChange/index.js.map +1 -1
  219. package/dist/partials/FieldCopyTestIdButton/index.cjs +1 -2
  220. package/dist/partials/FieldCopyTestIdButton/index.d.cts +14 -2
  221. package/dist/partials/FieldCopyTestIdButton/index.d.cts.map +1 -0
  222. package/dist/partials/FieldCopyTestIdButton/index.d.ts +14 -2
  223. package/dist/partials/FieldCopyTestIdButton/index.d.ts.map +1 -0
  224. package/dist/partials/FieldCopyTestIdButton/index.js +2 -2
  225. package/dist/partials/FieldValidationError/index.cjs +1 -2
  226. package/dist/partials/FieldValidationError/index.d.cts +22 -2
  227. package/dist/partials/FieldValidationError/index.d.cts.map +1 -0
  228. package/dist/partials/FieldValidationError/index.d.ts +22 -2
  229. package/dist/partials/FieldValidationError/index.d.ts.map +1 -0
  230. package/dist/partials/FieldValidationError/index.js +2 -2
  231. package/dist/{useController-CzP0aVFC.d.ts → useController-CvQqCvFJ.d.ts} +1 -1
  232. package/dist/{useController-CzP0aVFC.d.ts.map → useController-CvQqCvFJ.d.ts.map} +1 -1
  233. package/dist/{useController--lRPWBuD.cjs → useController-Dbe7ADG6.cjs} +2 -2
  234. package/dist/{useController--lRPWBuD.cjs.map → useController-Dbe7ADG6.cjs.map} +1 -1
  235. package/dist/{useController-B287flU_.js → useController-DxFS0u7c.js} +2 -2
  236. package/dist/{useController-B287flU_.js.map → useController-DxFS0u7c.js.map} +1 -1
  237. package/dist/{useController-BT3Fd0IO.d.cts → useController-fblEApv_.d.cts} +1 -1
  238. package/dist/{useController-BT3Fd0IO.d.cts.map → useController-fblEApv_.d.cts.map} +1 -1
  239. package/dist/{useFormContext-CpLVpNAf.d.ts → useFormContext-B1-deU4Z.d.ts} +4 -4
  240. package/dist/{useFormContext-CpLVpNAf.d.ts.map → useFormContext-B1-deU4Z.d.ts.map} +1 -1
  241. package/dist/{useFormContext-CT8H8xIe.js → useFormContext-BJqa1FoT.js} +2 -2
  242. package/dist/{useFormContext-CT8H8xIe.js.map → useFormContext-BJqa1FoT.js.map} +1 -1
  243. package/dist/{useFormContext-Ddc1HWKv.d.cts → useFormContext-D5vrT2sg.d.cts} +4 -4
  244. package/dist/{useFormContext-Ddc1HWKv.d.cts.map → useFormContext-D5vrT2sg.d.cts.map} +1 -1
  245. package/dist/{useFormContext-CrXwNYiB.cjs → useFormContext-kUHonwgu.cjs} +2 -2
  246. package/dist/{useFormContext-CrXwNYiB.cjs.map → useFormContext-kUHonwgu.cjs.map} +1 -1
  247. package/dist/{useInputValueTransform-CNCBU7a9.d.cts → useInputValueTransform-DCXXb2Lp.d.cts} +1 -1
  248. package/dist/{useInputValueTransform-CNCBU7a9.d.cts.map → useInputValueTransform-DCXXb2Lp.d.cts.map} +1 -1
  249. package/dist/{useInputValueTransform-dLfFIYW4.d.ts → useInputValueTransform-DCXXb2Lp.d.ts} +1 -1
  250. package/dist/{useInputValueTransform-dLfFIYW4.d.ts.map → useInputValueTransform-DCXXb2Lp.d.ts.map} +1 -1
  251. package/dist/{useInputValueTransform-CXdmtc0Q.js → useInputValueTransform-DJ5zkqSy.js} +1 -1
  252. package/dist/{useInputValueTransform-CXdmtc0Q.js.map → useInputValueTransform-DJ5zkqSy.js.map} +1 -1
  253. package/dist/{useInputValueTransform-Bm65K8LX.cjs → useInputValueTransform-P62UUZBl.cjs} +1 -2
  254. package/dist/{useInputValueTransform-Bm65K8LX.cjs.map → useInputValueTransform-P62UUZBl.cjs.map} +1 -1
  255. package/package.json +6 -13
  256. package/dist/Checkboxes-D1hppxDE.js +0 -112
  257. package/dist/Checkboxes-D1hppxDE.js.map +0 -1
  258. package/dist/Checkboxes-DHk09GmH.cjs +0 -124
  259. package/dist/Checkboxes-DHk09GmH.cjs.map +0 -1
  260. package/dist/DatePicker-BUSi8SWQ.js +0 -193
  261. package/dist/DatePicker-BUSi8SWQ.js.map +0 -1
  262. package/dist/DatePicker-DuBjvS5g.cjs +0 -205
  263. package/dist/DatePicker-DuBjvS5g.cjs.map +0 -1
  264. package/dist/FieldArray-BxmK1NRd.js +0 -494
  265. package/dist/FieldArray-BxmK1NRd.js.map +0 -1
  266. package/dist/FieldArray-DgiQpIdr.cjs +0 -506
  267. package/dist/FieldArray-DgiQpIdr.cjs.map +0 -1
  268. package/dist/FieldCard-BK6SNqFY.js +0 -222
  269. package/dist/FieldCard-BK6SNqFY.js.map +0 -1
  270. package/dist/FieldCard-C-DZ5ARr.cjs +0 -234
  271. package/dist/FieldCard-C-DZ5ARr.cjs.map +0 -1
  272. package/dist/Form-CYlsIABv.cjs +0 -125
  273. package/dist/Form-CYlsIABv.cjs.map +0 -1
  274. package/dist/Form-D3yfDu4L.js +0 -114
  275. package/dist/Form-D3yfDu4L.js.map +0 -1
  276. package/dist/Input-B5RxbkNS.js +0 -96
  277. package/dist/Input-B5RxbkNS.js.map +0 -1
  278. package/dist/Input-DvVViuWH.cjs +0 -108
  279. package/dist/Input-DvVViuWH.cjs.map +0 -1
  280. package/dist/RadioBoxes-BJz-aJp3.js +0 -135
  281. package/dist/RadioBoxes-BJz-aJp3.js.map +0 -1
  282. package/dist/RadioBoxes-CR--FBhQ.cjs +0 -153
  283. package/dist/RadioBoxes-CR--FBhQ.cjs.map +0 -1
  284. package/dist/RadioTabs-Btt582Nl.cjs +0 -133
  285. package/dist/RadioTabs-Btt582Nl.cjs.map +0 -1
  286. package/dist/RadioTabs-CYmzrPBG.js +0 -120
  287. package/dist/RadioTabs-CYmzrPBG.js.map +0 -1
  288. package/dist/Radios-DZxhrX96.js +0 -73
  289. package/dist/Radios-DZxhrX96.js.map +0 -1
  290. package/dist/Radios-Jg9mwE0B.cjs +0 -85
  291. package/dist/Radios-Jg9mwE0B.cjs.map +0 -1
  292. package/dist/Select-CZwuEAB5.cjs +0 -296
  293. package/dist/Select-CZwuEAB5.cjs.map +0 -1
  294. package/dist/Select-CgeqhZIC.js +0 -283
  295. package/dist/Select-CgeqhZIC.js.map +0 -1
  296. package/dist/Slider-Bpxt-Qgj.cjs +0 -120
  297. package/dist/Slider-Bpxt-Qgj.cjs.map +0 -1
  298. package/dist/Slider-DRfSw0uE.js +0 -108
  299. package/dist/Slider-DRfSw0uE.js.map +0 -1
  300. package/dist/SubmitButton-D-wn1PJV.cjs +0 -43
  301. package/dist/SubmitButton-D-wn1PJV.cjs.map +0 -1
  302. package/dist/SubmitButton-D6aU7IgC.js +0 -31
  303. package/dist/SubmitButton-D6aU7IgC.js.map +0 -1
  304. package/dist/Switch-D9DNrqmj.js +0 -81
  305. package/dist/Switch-D9DNrqmj.js.map +0 -1
  306. package/dist/Switch-hjjy34QB.cjs +0 -93
  307. package/dist/Switch-hjjy34QB.cjs.map +0 -1
  308. package/dist/SwitchBox-BU1XieaZ.js +0 -153
  309. package/dist/SwitchBox-BU1XieaZ.js.map +0 -1
  310. package/dist/SwitchBox-Dl-F5y2m.cjs +0 -171
  311. package/dist/SwitchBox-Dl-F5y2m.cjs.map +0 -1
  312. package/dist/TextArea-CMXm-kTK.cjs +0 -78
  313. package/dist/TextArea-CMXm-kTK.cjs.map +0 -1
  314. package/dist/TextArea-DAg_K-QP.js +0 -66
  315. package/dist/TextArea-DAg_K-QP.js.map +0 -1
  316. package/dist/Time-CDptQ3CK.js +0 -213
  317. package/dist/Time-CDptQ3CK.js.map +0 -1
  318. package/dist/Time-WKgbji5k.cjs +0 -219
  319. package/dist/Time-WKgbji5k.cjs.map +0 -1
  320. package/dist/index-54OZEaUU.d.ts +0 -43
  321. package/dist/index-54OZEaUU.d.ts.map +0 -1
  322. package/dist/index-7UT2Ki5e.d.cts +0 -113
  323. package/dist/index-7UT2Ki5e.d.cts.map +0 -1
  324. package/dist/index-9_3XTDJC.d.cts +0 -174
  325. package/dist/index-9_3XTDJC.d.cts.map +0 -1
  326. package/dist/index-B5SfdA5O.d.cts +0 -99
  327. package/dist/index-B5SfdA5O.d.cts.map +0 -1
  328. package/dist/index-B61zRzeS.d.cts +0 -101
  329. package/dist/index-B61zRzeS.d.cts.map +0 -1
  330. package/dist/index-B7gQppgQ.d.ts +0 -116
  331. package/dist/index-B7gQppgQ.d.ts.map +0 -1
  332. package/dist/index-BDFJDKmz.d.ts +0 -166
  333. package/dist/index-BDFJDKmz.d.ts.map +0 -1
  334. package/dist/index-BPaSE_7b.d.ts +0 -179
  335. package/dist/index-BPaSE_7b.d.ts.map +0 -1
  336. package/dist/index-BSjcTo7A.d.ts +0 -147
  337. package/dist/index-BSjcTo7A.d.ts.map +0 -1
  338. package/dist/index-BmMspnsJ.d.cts +0 -137
  339. package/dist/index-BmMspnsJ.d.cts.map +0 -1
  340. package/dist/index-BqxDWhNr.d.cts +0 -22
  341. package/dist/index-BqxDWhNr.d.cts.map +0 -1
  342. package/dist/index-Bzs7_gnk.d.cts +0 -116
  343. package/dist/index-Bzs7_gnk.d.cts.map +0 -1
  344. package/dist/index-C3-TV4Up.d.cts +0 -43
  345. package/dist/index-C3-TV4Up.d.cts.map +0 -1
  346. package/dist/index-C4GJH8Xv.d.ts +0 -290
  347. package/dist/index-C4GJH8Xv.d.ts.map +0 -1
  348. package/dist/index-CE8fnXuQ.d.ts +0 -167
  349. package/dist/index-CE8fnXuQ.d.ts.map +0 -1
  350. package/dist/index-CEJxjf5R.d.ts +0 -22
  351. package/dist/index-CEJxjf5R.d.ts.map +0 -1
  352. package/dist/index-CHQKk_fN2.d.ts +0 -14
  353. package/dist/index-CHQKk_fN2.d.ts.map +0 -1
  354. package/dist/index-CIiOXrrY.d.ts +0 -99
  355. package/dist/index-CIiOXrrY.d.ts.map +0 -1
  356. package/dist/index-CV7wqRev.d.ts +0 -38
  357. package/dist/index-CV7wqRev.d.ts.map +0 -1
  358. package/dist/index-CXvUaeCL.d.cts +0 -14
  359. package/dist/index-CXvUaeCL.d.cts.map +0 -1
  360. package/dist/index-C_zjtsGM.d.ts +0 -113
  361. package/dist/index-C_zjtsGM.d.ts.map +0 -1
  362. package/dist/index-CbPJiRK2.d.ts +0 -83
  363. package/dist/index-CbPJiRK2.d.ts.map +0 -1
  364. package/dist/index-CvP3tbVV.d.ts +0 -137
  365. package/dist/index-CvP3tbVV.d.ts.map +0 -1
  366. package/dist/index-Cwb7sTO0.d.ts +0 -154
  367. package/dist/index-Cwb7sTO0.d.ts.map +0 -1
  368. package/dist/index-CxY9VWv5.d.cts +0 -154
  369. package/dist/index-CxY9VWv5.d.cts.map +0 -1
  370. package/dist/index-D8udSkgA.d.cts +0 -167
  371. package/dist/index-D8udSkgA.d.cts.map +0 -1
  372. package/dist/index-DBsF7xsq.d.cts +0 -147
  373. package/dist/index-DBsF7xsq.d.cts.map +0 -1
  374. package/dist/index-DNADTCoc.d.cts +0 -290
  375. package/dist/index-DNADTCoc.d.cts.map +0 -1
  376. package/dist/index-DRg0anjB.d.cts +0 -179
  377. package/dist/index-DRg0anjB.d.cts.map +0 -1
  378. package/dist/index-DUmNI6cE.d.cts +0 -83
  379. package/dist/index-DUmNI6cE.d.cts.map +0 -1
  380. package/dist/index-Db0WD4d1.d.cts +0 -166
  381. package/dist/index-Db0WD4d1.d.cts.map +0 -1
  382. package/dist/index-DpXSZCZe.d.cts +0 -38
  383. package/dist/index-DpXSZCZe.d.cts.map +0 -1
  384. package/dist/index-GxTY7aAc.d.ts +0 -174
  385. package/dist/index-GxTY7aAc.d.ts.map +0 -1
  386. package/dist/index-P30z4VRT.d.cts +0 -22
  387. package/dist/index-P30z4VRT.d.cts.map +0 -1
  388. package/dist/index-PMCqBX0t.d.ts +0 -101
  389. package/dist/index-PMCqBX0t.d.ts.map +0 -1
  390. package/dist/index-PWRw2bPH.d.ts +0 -22
  391. package/dist/index-PWRw2bPH.d.ts.map +0 -1
  392. package/dist/index-QgVr4iWX.d.cts +0 -122
  393. package/dist/index-QgVr4iWX.d.cts.map +0 -1
  394. package/dist/index-dgho7gpc.d.ts +0 -122
  395. package/dist/index-dgho7gpc.d.ts.map +0 -1
  396. package/dist/index.cjs +0 -85
  397. package/dist/index.cjs.map +0 -1
  398. package/dist/index.d.cts +0 -31
  399. package/dist/index.d.ts +0 -31
  400. package/dist/index.js +0 -36
  401. package/dist/index.js.map +0 -1
  402. package/dist/useClientValidation-BRfhqRom.cjs +0 -190
  403. package/dist/useClientValidation-BRfhqRom.cjs.map +0 -1
  404. package/dist/useClientValidation-C2dLJnDI.d.cts +0 -148
  405. package/dist/useClientValidation-C2dLJnDI.d.cts.map +0 -1
  406. package/dist/useClientValidation-DpLdzIAb.js +0 -178
  407. package/dist/useClientValidation-DpLdzIAb.js.map +0 -1
  408. package/dist/useClientValidation-qRq2_spX.d.ts +0 -148
  409. package/dist/useClientValidation-qRq2_spX.d.ts.map +0 -1
  410. package/dist/useInputValueDebounce-CfQDiomI.d.cts +0 -66
  411. package/dist/useInputValueDebounce-CfQDiomI.d.cts.map +0 -1
  412. package/dist/useInputValueDebounce-DZgzL7GQ.d.ts +0 -66
  413. package/dist/useInputValueDebounce-DZgzL7GQ.d.ts.map +0 -1
  414. package/dist/useUniformField-CmAYcGER.d.cts +0 -98
  415. package/dist/useUniformField-CmAYcGER.d.cts.map +0 -1
  416. package/dist/useUniformField-DJDpQzRo.d.ts +0 -98
  417. package/dist/useUniformField-DJDpQzRo.d.ts.map +0 -1
  418. package/dist/useUniformFieldArray-D3fdzwzD.d.cts +0 -79
  419. package/dist/useUniformFieldArray-D3fdzwzD.d.cts.map +0 -1
  420. package/dist/useUniformFieldArray-zGcIhwhF.d.ts +0 -79
  421. package/dist/useUniformFieldArray-zGcIhwhF.d.ts.map +0 -1
  422. package/dist/useWatchFormReset-BSd6jMxU.d.cts +0 -38
  423. package/dist/useWatchFormReset-BSd6jMxU.d.cts.map +0 -1
  424. package/dist/useWatchFormReset-C7YJ-I3N.d.ts +0 -38
  425. package/dist/useWatchFormReset-C7YJ-I3N.d.ts.map +0 -1
  426. package/dist/useWatchUserChange-C1xWHtFG.cjs +0 -90
  427. package/dist/useWatchUserChange-C1xWHtFG.cjs.map +0 -1
  428. package/dist/useWatchUserChange-CpyZz2i7.d.ts +0 -80
  429. package/dist/useWatchUserChange-CpyZz2i7.d.ts.map +0 -1
  430. package/dist/useWatchUserChange-DSAboNCs.d.cts +0 -80
  431. package/dist/useWatchUserChange-DSAboNCs.d.cts.map +0 -1
  432. package/dist/useWatchUserChange-DSQGsl1R.js +0 -84
  433. package/dist/useWatchUserChange-DSQGsl1R.js.map +0 -1
  434. /package/dist/{index-BLwMeReG.d.ts → index-BKZ67WMa.d.cts} +0 -0
  435. /package/dist/{index-C2gUMYkE.d.cts → index-BKZ67WMa.d.ts} +0 -0
  436. /package/dist/{index-CJgP-E0M.d.cts → index-BVVgDSdq.d.cts} +0 -0
  437. /package/dist/{index-Cg9utiy0.d.ts → index-BVVgDSdq.d.ts} +0 -0
  438. /package/dist/{index-CspKFJM1.d.cts → index-DmtQKWjk.d.cts} +0 -0
  439. /package/dist/{index-h64gcVNJ.d.ts → index-DmtQKWjk.d.ts} +0 -0
  440. /package/dist/{useInput-CVm3tP78.js → useInput-C0aJaAGe.js} +0 -0
  441. /package/dist/{useInput-BdH8oftG.d.ts → useInput-ClpHDPdr.d.cts} +0 -0
  442. /package/dist/{useInput-DZOmMKcp.d.cts → useInput-ClpHDPdr.d.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/Checkboxes/Checkboxes.tsx"],"mappings":";;;;;cAoBa,kBAAA,IAAkB,KAAA;;;;gbAmC7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;obAEe;;;;wbACH;IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mbA2CM;mbAAA;obAQjB;sbAAe;2bAAA;ybARE;ybAAA;0bAAA;icAAA;4bAAA;IAAA;;;;ubAAA;mbAAA;obAAA;sbAAA;2bAQjB;ybAAe;ybAAA;0bAiHjB;icAAA;;;;;;;;;;;;;;;;;;KArKI,YAAA,GAAe,OAAO,QAAQ,kBAAA;AAAA,KAC9B,SAAA,GAAY,WAAW,QAAQ,kBAAA;AAAA,UAEnB,cAAA;;EAEf,KAAA,GAAQ,SAAA;;EAER,YAAA,GAAe,SAAS;;EAExB,KAAA;;EAEA,QAAA;;EAEA,MAAA;AAAA;AAAA,UAGe,eAAA,SAAwB,YAAA;;EAEvC,SAAA;;EAEA,SAAA,GAAY,SAAA;;EAEZ,KAAA,GAAQ,YAAA;;EAER,QAAA;;EAEA,MAAA;;EAEA,KAAA,GAAQ,SAAA;;EAER,WAAA;;EAEA,IAAA;;EAEA,OAAA,EAAS,cAAA;;EAET,MAAA;;EAEA,SAAA,GAAY,mBAAA;AAAA;;;;cAMR,UAAA;EAAc,SAAA;EAAA,KAAA;EAAA,MAAA;EAAA,WAAA;EAAA,OAAA;EAAA,IAAA;EAAA,GAAA;AAAA,GAQjB,eAAA,iCAAe,GAAA,CAAA,OAAA"}
@@ -1,2 +1,112 @@
1
- import { n as Checkboxes, t as Checkboxes_default } from "../Checkboxes-D1hppxDE.js";
2
- export { Checkboxes, Checkboxes_default as default };
1
+ import { t as FieldValidationError_default } from "../FieldValidationError-ByRoIxaM.js";
2
+ import { useUniformField } from "../hooks/useUniformField/index.js";
3
+ import { Checkbox, CheckboxGroup } from "@heroui/checkbox";
4
+ import { checkbox } from "@heroui/theme";
5
+ import { slugify, tv, variantsToClassNames } from "@fuf-stack/pixel-utils";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ //#region src/Checkboxes/Checkboxes.tsx
8
+ const checkboxesVariants = tv({
9
+ slots: {
10
+ base: "group",
11
+ errorMessage: "text-tiny",
12
+ label: "inline-flex text-sm text-foreground subpixel-antialiased group-data-[invalid=true]:!text-danger",
13
+ optionBase: "",
14
+ optionIcon: "",
15
+ optionLabel: "",
16
+ optionLabelSubline: "text-foreground-400 !text-small",
17
+ optionWrapper: "",
18
+ wrapper: ""
19
+ },
20
+ variants: {
21
+ color: {
22
+ info: { wrapper: "text-info-foreground after:bg-info after:text-info-foreground" },
23
+ ...checkbox.variants.color
24
+ },
25
+ lineThrough: { true: {
26
+ optionLabel: [...checkbox.variants.lineThrough.true.label, "relative before:transition-all before:duration-200"],
27
+ optionLabelSubline: "group-data-[selected=true]:opacity-60"
28
+ } }
29
+ }
30
+ });
31
+ /**
32
+ * Checkboxes component based on [HeroUI CheckboxGroup](https://www.heroui.com//docs/components/checkbox-group)
33
+ */
34
+ const Checkboxes = ({ className = void 0, color = "primary", inline = false, lineThrough = false, options, name, ...uniformFieldProps }) => {
35
+ const { ariaLabel, disabled, error: _error, field: { onChange, value: fieldValue, ref, onBlur }, invalid, label, required, testId } = useUniformField({
36
+ name,
37
+ ...uniformFieldProps
38
+ });
39
+ const value = Array.isArray(fieldValue) ? fieldValue : [];
40
+ const errorMessage = /* @__PURE__ */ jsx(FieldValidationError_default, {
41
+ error: (_error && Object.values(_error).flat()) ?? [],
42
+ testId
43
+ });
44
+ const classNames = variantsToClassNames(checkboxesVariants({ lineThrough }), className, "base");
45
+ const heroCheckboxGroupClassNames = {
46
+ base: classNames.base,
47
+ label: classNames.label,
48
+ wrapper: classNames.wrapper
49
+ };
50
+ const heroCheckboxClassNames = {
51
+ base: classNames.optionBase,
52
+ icon: classNames.optionIcon,
53
+ label: classNames.optionLabel,
54
+ wrapper: classNames.optionWrapper
55
+ };
56
+ return /* @__PURE__ */ jsx(CheckboxGroup, {
57
+ ref,
58
+ "aria-label": ariaLabel,
59
+ classNames: heroCheckboxGroupClassNames,
60
+ color: color === "info" ? "primary" : color,
61
+ "data-invalid": invalid,
62
+ "data-testid": testId,
63
+ errorMessage,
64
+ isDisabled: disabled,
65
+ isInvalid: invalid,
66
+ isRequired: required,
67
+ label: label ? /* @__PURE__ */ jsx("legend", { children: label }) : null,
68
+ name,
69
+ onBlur,
70
+ onChange,
71
+ orientation: inline ? "horizontal" : "vertical",
72
+ value,
73
+ children: options?.map((option) => {
74
+ const optionTestId = slugify(`${testId}_option_${option?.testId ?? option?.value}`, { replaceDots: true });
75
+ const hasSubline = !!option.labelSubline;
76
+ let labelContent;
77
+ let optionClassNames = heroCheckboxClassNames;
78
+ if (hasSubline) {
79
+ labelContent = /* @__PURE__ */ jsxs("div", {
80
+ className: "flex grow flex-col items-start",
81
+ children: [/* @__PURE__ */ jsx("span", {
82
+ className: classNames.optionLabel,
83
+ children: option.label
84
+ }), /* @__PURE__ */ jsx("span", {
85
+ className: classNames.optionLabelSubline,
86
+ children: option.labelSubline
87
+ })]
88
+ });
89
+ optionClassNames = {
90
+ ...optionClassNames,
91
+ label: ""
92
+ };
93
+ } else labelContent = option.label;
94
+ return /* @__PURE__ */ jsx(Checkbox, {
95
+ "aria-label": typeof option.label === "string" ? option.label : option.value,
96
+ classNames: optionClassNames,
97
+ "data-invalid": invalid,
98
+ "data-testid": optionTestId,
99
+ isDisabled: !!disabled || option.disabled,
100
+ value: option?.value,
101
+ children: labelContent
102
+ }, `index_${option.value}`);
103
+ })
104
+ });
105
+ };
106
+ //#endregion
107
+ //#region src/Checkboxes/index.ts
108
+ var Checkboxes_default = Checkboxes;
109
+ //#endregion
110
+ export { checkboxesVariants, Checkboxes_default as default };
111
+
112
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["heroCheckboxVariants","FieldValidationError","HeroCheckboxGroup","HeroCheckbox"],"sources":["../../src/Checkboxes/Checkboxes.tsx","../../src/Checkboxes/index.ts"],"sourcesContent":["import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type {\n CheckboxGroupProps as HeroCheckboxGroupProps,\n CheckboxProps as HeroCheckboxProps,\n} from '@heroui/checkbox';\nimport type { ReactNode } from 'react';\nimport type { FieldError } from 'react-hook-form';\nimport type { InputValueTransform } from '../hooks/useInputValueTransform';\n\nimport {\n Checkbox as HeroCheckbox,\n CheckboxGroup as HeroCheckboxGroup,\n} from '@heroui/checkbox';\nimport { checkbox as heroCheckboxVariants } from '@heroui/theme';\n\nimport { slugify, tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport { useUniformField } from '../hooks/useUniformField';\nimport FieldValidationError from '../partials/FieldValidationError';\n\nexport const checkboxesVariants = tv({\n slots: {\n base: 'group', // Needs group for group-data condition\n errorMessage: 'text-tiny',\n // see HeroUI styles for group-data condition,\n // e.g.: https://github.com/heroui-inc/heroui/blob/main/packages/core/theme/src/components/select.ts\n label:\n 'inline-flex text-sm text-foreground subpixel-antialiased group-data-[invalid=true]:!text-danger',\n optionBase: '',\n optionIcon: '',\n optionLabel: '',\n optionLabelSubline: 'text-foreground-400 !text-small',\n optionWrapper: '',\n wrapper: '',\n },\n variants: {\n // see: https://github.com/heroui-inc/heroui/blob/canary/packages/core/theme/src/components/checkbox.ts\n color: {\n info: {\n wrapper:\n 'text-info-foreground after:bg-info after:text-info-foreground',\n },\n ...heroCheckboxVariants.variants.color,\n } as const,\n lineThrough: {\n true: {\n optionLabel: [\n ...heroCheckboxVariants.variants.lineThrough.true.label,\n // fix stroke position when used with subline and enable animation\n 'relative before:transition-all before:duration-200',\n ],\n optionLabelSubline: 'group-data-[selected=true]:opacity-60',\n },\n },\n },\n});\n\ntype VariantProps = TVProps<typeof checkboxesVariants>;\ntype ClassName = TVClassName<typeof checkboxesVariants>;\n\nexport interface CheckboxOption {\n /** option label */\n label?: ReactNode;\n /** subline displayed below the label */\n labelSubline?: ReactNode;\n /** option value */\n value: string;\n /** disables the option */\n disabled?: boolean;\n /** HTML data-testid attribute of the option */\n testId?: string;\n}\n\nexport interface CheckboxesProps extends VariantProps {\n /** Custom aria-label for accessibility. If not provided, falls back to field name when no visible label exists */\n ariaLabel?: string;\n /** CSS class name */\n className?: ClassName;\n /** Color scheme of the checkboxes */\n color?: VariantProps['color'];\n /** Sets all checkboxes disabled */\n disabled?: boolean;\n /** Orientation of the checkboxes */\n inline?: boolean;\n /** Label displayed above the checkboxes */\n label?: ReactNode;\n /** Whether the checkboxes label should be crossed out */\n lineThrough?: boolean;\n /** Name the Field is registered on the form */\n name: string;\n /** Checkboxes that should be displayed. */\n options: CheckboxOption[];\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** allows disentangled display and form values for a field */\n transform?: InputValueTransform<string[]>;\n}\n\n/**\n * Checkboxes component based on [HeroUI CheckboxGroup](https://www.heroui.com//docs/components/checkbox-group)\n */\nconst Checkboxes = ({\n className = undefined,\n color = 'primary',\n inline = false,\n lineThrough = false,\n options,\n name,\n ...uniformFieldProps\n}: CheckboxesProps) => {\n const {\n ariaLabel,\n disabled,\n error: _error,\n field: { onChange, value: fieldValue, ref, onBlur },\n invalid,\n label,\n required,\n testId,\n } = useUniformField({\n name,\n ...uniformFieldProps,\n });\n\n // Ensure value is always an array (checkboxes need arrays)\n const value = Array.isArray(fieldValue) ? fieldValue : [];\n\n // Convert React Hook Form's nested error object structure to a flat array\n // RHF errors can be nested like: checkboxField.0 (individual checkbox errors)\n // and checkboxField._error (global field errors) - this flattens all\n // error values into a single array for rendering with FieldValidationError\n const errorFlat: FieldError[] =\n (_error &&\n Object.values(\n _error as unknown as Record<string, FieldError[]>,\n ).flat()) ??\n [];\n const errorMessage = (\n <FieldValidationError error={errorFlat} testId={testId} />\n );\n\n // classNames from slots\n const variants = checkboxesVariants({ lineThrough });\n const classNames = variantsToClassNames(variants, className, 'base');\n\n // map slots to HeroUI class names\n const heroCheckboxGroupClassNames: HeroCheckboxGroupProps['classNames'] = {\n base: classNames.base,\n label: classNames.label,\n wrapper: classNames.wrapper,\n };\n const heroCheckboxClassNames: HeroCheckboxProps['classNames'] = {\n base: classNames.optionBase,\n icon: classNames.optionIcon,\n label: classNames.optionLabel,\n wrapper: classNames.optionWrapper,\n };\n\n return (\n <HeroCheckboxGroup\n ref={ref}\n aria-label={ariaLabel}\n classNames={heroCheckboxGroupClassNames}\n color={color === 'info' ? 'primary' : color}\n // see HeroUI styles for group-data condition (data-invalid),\n // e.g.: https://github.com/heroui-inc/heroui/blob/main/packages/components/select/src/use-select.ts\n data-invalid={invalid}\n data-testid={testId}\n errorMessage={errorMessage}\n isDisabled={disabled}\n isInvalid={invalid}\n isRequired={required}\n label={label ? <legend>{label}</legend> : null}\n name={name}\n onBlur={onBlur}\n onChange={onChange}\n orientation={inline ? 'horizontal' : 'vertical'}\n value={value}\n >\n {options?.map((option) => {\n const optionTestId = slugify(\n `${testId}_option_${option?.testId ?? option?.value}`,\n { replaceDots: true },\n );\n\n // set content and classes depending option has subline\n const hasSubline = !!option.labelSubline;\n let labelContent: ReactNode;\n let optionClassNames = heroCheckboxClassNames;\n if (hasSubline) {\n labelContent = (\n <div className=\"flex grow flex-col items-start\">\n <span className={classNames.optionLabel}>{option.label}</span>\n <span className={classNames.optionLabelSubline}>\n {option.labelSubline}\n </span>\n </div>\n );\n // remove label classes from outer label when subline is used\n optionClassNames = { ...optionClassNames, label: '' };\n } else {\n labelContent = option.label;\n }\n\n return (\n <HeroCheckbox\n key={`index_${option.value}`}\n aria-label={\n typeof option.label === 'string' ? option.label : option.value\n }\n classNames={optionClassNames}\n data-invalid={invalid}\n data-testid={optionTestId}\n isDisabled={!!disabled || option.disabled}\n value={option?.value}\n >\n {labelContent}\n </HeroCheckbox>\n );\n })}\n </HeroCheckboxGroup>\n );\n};\n\nexport default Checkboxes;\n","import Checkboxes from './Checkboxes';\n\nexport type { CheckboxesProps, CheckboxOption } from './Checkboxes';\n\nexport { checkboxesVariants } from './Checkboxes';\n\nexport default Checkboxes;\n"],"mappings":";;;;;;;AAoBA,MAAa,qBAAqB,GAAG;CACnC,OAAO;EACL,MAAM;EACN,cAAc;EAGd,OACE;EACF,YAAY;EACZ,YAAY;EACZ,aAAa;EACb,oBAAoB;EACpB,eAAe;EACf,SAAS;CACX;CACA,UAAU;EAER,OAAO;GACL,MAAM,EACJ,SACE,gEACJ;GACA,GAAGA,SAAqB,SAAS;EACnC;EACA,aAAa,EACX,MAAM;GACJ,aAAa,CACX,GAAGA,SAAqB,SAAS,YAAY,KAAK,OAElD,oDACF;GACA,oBAAoB;EACtB,EACF;CACF;AACF,CAAC;;;;AA8CD,MAAM,cAAc,EAClB,YAAY,KAAA,GACZ,QAAQ,WACR,SAAS,OACT,cAAc,OACd,SACA,MACA,GAAG,wBACkB;CACrB,MAAM,EACJ,WACA,UACA,OAAO,QACP,OAAO,EAAE,UAAU,OAAO,YAAY,KAAK,UAC3C,SACA,OACA,UACA,WACE,gBAAgB;EAClB;EACA,GAAG;CACL,CAAC;CAGD,MAAM,QAAQ,MAAM,QAAQ,UAAU,IAAI,aAAa,CAAC;CAYxD,MAAM,eACJ,oBAACC,8BAAD;EAAsB,QANrB,UACC,OAAO,OACL,MACF,EAAE,KAAK,MACT,CAAC;EAE+C;CAAS,CAAA;CAK3D,MAAM,aAAa,qBADF,mBAAmB,EAAE,YAAY,CACH,GAAG,WAAW,MAAM;CAGnE,MAAM,8BAAoE;EACxE,MAAM,WAAW;EACjB,OAAO,WAAW;EAClB,SAAS,WAAW;CACtB;CACA,MAAM,yBAA0D;EAC9D,MAAM,WAAW;EACjB,MAAM,WAAW;EACjB,OAAO,WAAW;EAClB,SAAS,WAAW;CACtB;CAEA,OACE,oBAACC,eAAD;EACO;EACL,cAAY;EACZ,YAAY;EACZ,OAAO,UAAU,SAAS,YAAY;EAGtC,gBAAc;EACd,eAAa;EACC;EACd,YAAY;EACZ,WAAW;EACX,YAAY;EACZ,OAAO,QAAQ,oBAAC,UAAD,EAAA,UAAS,MAAc,CAAA,IAAI;EACpC;EACE;EACE;EACV,aAAa,SAAS,eAAe;EAC9B;YAEN,SAAS,KAAK,WAAW;GACxB,MAAM,eAAe,QACnB,GAAG,OAAO,UAAU,QAAQ,UAAU,QAAQ,SAC9C,EAAE,aAAa,KAAK,CACtB;GAGA,MAAM,aAAa,CAAC,CAAC,OAAO;GAC5B,IAAI;GACJ,IAAI,mBAAmB;GACvB,IAAI,YAAY;IACd,eACE,qBAAC,OAAD;KAAK,WAAU;eAAf,CACE,oBAAC,QAAD;MAAM,WAAW,WAAW;gBAAc,OAAO;KAAY,CAAA,GAC7D,oBAAC,QAAD;MAAM,WAAW,WAAW;gBACzB,OAAO;KACJ,CAAA,CACH;;IAGP,mBAAmB;KAAE,GAAG;KAAkB,OAAO;IAAG;GACtD,OACE,eAAe,OAAO;GAGxB,OACE,oBAACC,UAAD;IAEE,cACE,OAAO,OAAO,UAAU,WAAW,OAAO,QAAQ,OAAO;IAE3D,YAAY;IACZ,gBAAc;IACd,eAAa;IACb,YAAY,CAAC,CAAC,YAAY,OAAO;IACjC,OAAO,QAAQ;cAEd;GACW,GAXP,SAAS,OAAO,OAWT;EAElB,CAAC;CACgB,CAAA;AAEvB;;;ACxNA,IAAA,qBAAe"}
@@ -2,6 +2,197 @@ Object.defineProperties(exports, {
2
2
  __esModule: { value: true },
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
- const require_DatePicker = require("../DatePicker-DuBjvS5g.cjs");
6
- exports.DatePicker = require_DatePicker.DatePicker;
7
- exports.default = require_DatePicker.DatePicker_default;
5
+ const require_hooks_useUniformField_index = require("../hooks/useUniformField/index.cjs");
6
+ let _fuf_stack_pixel_utils = require("@fuf-stack/pixel-utils");
7
+ let react_jsx_runtime = require("react/jsx-runtime");
8
+ let _heroui_date_picker = require("@heroui/date-picker");
9
+ let _internationalized_date = require("@internationalized/date");
10
+ //#region src/DatePicker/dateHelpers.ts
11
+ /** Cast unknown input to the DatePicker value union type. */
12
+ const asDatePickerValue = (value) => {
13
+ return value;
14
+ };
15
+ /** Check whether a value already looks like an @internationalized/date object. */
16
+ const isDateValueLike = (value) => {
17
+ return !!value && typeof value === "object" && "calendar" in value;
18
+ };
19
+ /** True for ISO datetime strings that do not yet include timezone information. */
20
+ const isNaiveDateTimeString = (value) => {
21
+ return /^\d{4}-\d{2}-\d{2}T/.test(value) && !hasExplicitTimeZone(value);
22
+ };
23
+ /** True when an input already carries timezone/offset information. */
24
+ const hasExplicitTimeZone = (value) => {
25
+ if (value.includes("[") && value.includes("]")) return true;
26
+ return /(?:[zZ]|[+-]\d{2}:\d{2})$/.test(value);
27
+ };
28
+ /** Safely run a parser and return `null` on parsing errors. */
29
+ const tryParse = (parser) => {
30
+ try {
31
+ return asDatePickerValue(parser());
32
+ } catch {
33
+ return null;
34
+ }
35
+ };
36
+ /**
37
+ * Parse a form value into a HeroUI DatePicker compatible `DateValue`.
38
+ *
39
+ * Accepts existing `DateValue` objects, native `Date` instances, and ISO-like
40
+ * strings (date, date-time, zoned, and absolute). Returns `null` when the value
41
+ * is empty or cannot be parsed.
42
+ */
43
+ const parseDateValue = (value, timeZone) => {
44
+ if (value == null || value === "") return null;
45
+ if (isDateValueLike(value)) return asDatePickerValue(value);
46
+ if (value instanceof Date) return asDatePickerValue(timeZone ? (0, _internationalized_date.parseAbsolute)(value.toISOString(), timeZone) : (0, _internationalized_date.parseAbsoluteToLocal)(value.toISOString()));
47
+ if (typeof value !== "string") return null;
48
+ const normalizedValue = value.trim();
49
+ if (normalizedValue === "") return null;
50
+ if (/^\d{4}-\d{2}-\d{2}$/.test(normalizedValue)) return tryParse(() => {
51
+ return (0, _internationalized_date.parseDate)(normalizedValue);
52
+ });
53
+ return [
54
+ ...timeZone && isNaiveDateTimeString(normalizedValue) ? [() => {
55
+ return (0, _internationalized_date.parseZonedDateTime)(`${normalizedValue}[${timeZone}]`);
56
+ }] : [],
57
+ () => {
58
+ return timeZone ? (0, _internationalized_date.parseAbsolute)(normalizedValue, timeZone) : (0, _internationalized_date.parseAbsoluteToLocal)(normalizedValue);
59
+ },
60
+ () => {
61
+ return (0, _internationalized_date.parseZonedDateTime)(normalizedValue);
62
+ },
63
+ () => {
64
+ return (0, _internationalized_date.parseDateTime)(normalizedValue);
65
+ },
66
+ () => {
67
+ return (0, _internationalized_date.parseDate)(normalizedValue);
68
+ }
69
+ ].map((parser) => {
70
+ return tryParse(parser);
71
+ }).find((parsedValue) => {
72
+ return parsedValue != null;
73
+ }) ?? null;
74
+ };
75
+ /** Resolve the timezone used by the DatePicker when time fields are enabled. */
76
+ const resolveDatePickerTimeZone = (withTime, timeZone) => {
77
+ if (!withTime) return timeZone;
78
+ return timeZone ?? (0, _internationalized_date.getLocalTimeZone)();
79
+ };
80
+ /** Build the default placeholder value for time-enabled pickers. */
81
+ const getDatePickerPlaceholderValue = (withTime, timeZone) => {
82
+ const resolvedTimeZone = resolveDatePickerTimeZone(withTime, timeZone);
83
+ if (!resolvedTimeZone || !withTime) return;
84
+ return asDatePickerValue((0, _internationalized_date.now)(resolvedTimeZone));
85
+ };
86
+ /**
87
+ * Convert a date value into a UTC ISO string.
88
+ *
89
+ * `CalendarDate` and `CalendarDateTime` values are interpreted in the provided
90
+ * timezone. `ZonedDateTime` values use their own timezone and offset.
91
+ */
92
+ const dateValueToUtcIsoString = (value, timeZone) => {
93
+ if (value == null) return null;
94
+ const maybeWithAbsoluteString = value;
95
+ if (typeof maybeWithAbsoluteString.toAbsoluteString === "function") return maybeWithAbsoluteString.toAbsoluteString();
96
+ const maybeWithToDate = value;
97
+ if (typeof maybeWithToDate.toDate === "function") return maybeWithToDate.toDate(timeZone).toISOString();
98
+ return null;
99
+ };
100
+ //#endregion
101
+ //#region src/DatePicker/DatePicker.tsx
102
+ const datePickerVariants = (0, _fuf_stack_pixel_utils.tv)({ slots: {
103
+ /** wrapper around the whole date picker */
104
+ base: "",
105
+ /** helper wrapper for error/description */
106
+ helperWrapper: ["p-0"],
107
+ /** the calendar element */
108
+ calendar: "",
109
+ /** the calendar's content element */
110
+ calendarContent: "",
111
+ /**
112
+ * inner wrapper (HeroUI inputWrapper slot)
113
+ *
114
+ * NOTE: Unlike HeroUI Input, the DatePicker does not expose a
115
+ * `data-focus` indicator on the group, so the focus border has to be
116
+ * driven by the native `focus-within` state of the segment inputs.
117
+ */
118
+ inputWrapper: "bg-content1 focus-within:border-focus",
119
+ /** the calendar popover element */
120
+ popoverContent: "",
121
+ /** selector button element */
122
+ selectorButton: "",
123
+ /** selector icon element */
124
+ selectorIcon: "",
125
+ /** the time-input component element */
126
+ timeInput: "",
127
+ /** the time-input component's label element */
128
+ timeInputLabel: ""
129
+ } });
130
+ /**
131
+ * DatePicker component based on [HeroUI DatePicker](https://v2.heroui.com/docs/components/date-picker)
132
+ */
133
+ const DatePicker = ({ className: _className = void 0, hourCycle = 24, hideTimeZone = false, maxValue = void 0, minValue = void 0, name, timeZone = void 0, valueType = "string", withTime = false, ...uniformFieldProps }) => {
134
+ const { ariaLabel, disabled, errorMessage, field: { onBlur, onChange, value }, invalid, label, required, testId } = require_hooks_useUniformField_index.useUniformField({
135
+ name,
136
+ ...uniformFieldProps
137
+ });
138
+ const classNames = (0, _fuf_stack_pixel_utils.variantsToClassNames)(datePickerVariants(), _className, "base");
139
+ const resolvedTimeZone = resolveDatePickerTimeZone(withTime, timeZone);
140
+ const parsedValue = parseDateValue(value, withTime ? resolvedTimeZone : timeZone);
141
+ const placeholderValue = getDatePickerPlaceholderValue(withTime, timeZone);
142
+ const parsedMinValue = parseDateValue(minValue, withTime ? resolvedTimeZone : timeZone);
143
+ const parsedMaxValue = parseDateValue(maxValue, withTime ? resolvedTimeZone : timeZone);
144
+ const handleChange = (nextValue) => {
145
+ if (nextValue == null) {
146
+ onChange(null);
147
+ return;
148
+ }
149
+ if (valueType === "dateValue") {
150
+ onChange(nextValue);
151
+ return;
152
+ }
153
+ onChange(dateValueToUtcIsoString(nextValue, resolvedTimeZone ?? "UTC") ?? String(nextValue));
154
+ };
155
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_heroui_date_picker.DatePicker, {
156
+ "aria-label": label ? void 0 : ariaLabel,
157
+ classNames: {
158
+ base: classNames.base,
159
+ calendar: classNames.calendar,
160
+ calendarContent: classNames.calendarContent,
161
+ helperWrapper: classNames.helperWrapper,
162
+ inputWrapper: classNames.inputWrapper,
163
+ popoverContent: classNames.popoverContent,
164
+ selectorButton: classNames.selectorButton,
165
+ selectorIcon: classNames.selectorIcon,
166
+ timeInput: classNames.timeInput,
167
+ timeInputLabel: classNames.timeInputLabel
168
+ },
169
+ "data-testid": testId,
170
+ errorMessage,
171
+ granularity: withTime ? "minute" : "day",
172
+ hideTimeZone,
173
+ hourCycle,
174
+ id: testId,
175
+ isDisabled: disabled,
176
+ isInvalid: invalid,
177
+ isRequired: required,
178
+ label,
179
+ labelPlacement: "outside",
180
+ maxValue: parsedMaxValue,
181
+ minValue: parsedMinValue,
182
+ name,
183
+ onBlur,
184
+ onChange: handleChange,
185
+ placeholderValue,
186
+ radius: "sm",
187
+ value: parsedValue,
188
+ variant: "bordered"
189
+ });
190
+ };
191
+ //#endregion
192
+ //#region src/DatePicker/index.ts
193
+ var DatePicker_default = DatePicker;
194
+ //#endregion
195
+ exports.datePickerVariants = datePickerVariants;
196
+ exports.default = DatePicker_default;
197
+
198
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","names":["useUniformField","HeroDatePicker"],"sources":["../../src/DatePicker/dateHelpers.ts","../../src/DatePicker/DatePicker.tsx","../../src/DatePicker/index.ts"],"sourcesContent":["import type { DatePicker as HeroDatePicker } from '@heroui/date-picker';\nimport type { ComponentProps } from 'react';\n\nimport {\n getLocalTimeZone,\n now,\n parseAbsolute,\n parseAbsoluteToLocal,\n parseDate,\n parseDateTime,\n parseZonedDateTime,\n} from '@internationalized/date';\n\n/** Value type accepted by the HeroUI DatePicker */\nexport type DatePickerValue = ComponentProps<typeof HeroDatePicker>['value'];\n\n/** Cast unknown input to the DatePicker value union type. */\nconst asDatePickerValue = (value: unknown): DatePickerValue => {\n return value as DatePickerValue;\n};\n\n/** Check whether a value already looks like an @internationalized/date object. */\nconst isDateValueLike = (value: unknown): value is object => {\n return !!value && typeof value === 'object' && 'calendar' in value;\n};\n\n/** True for ISO datetime strings that do not yet include timezone information. */\nconst isNaiveDateTimeString = (value: string): boolean => {\n return /^\\d{4}-\\d{2}-\\d{2}T/.test(value) && !hasExplicitTimeZone(value);\n};\n\n/** True when an input already carries timezone/offset information. */\nconst hasExplicitTimeZone = (value: string): boolean => {\n if (value.includes('[') && value.includes(']')) {\n return true;\n }\n\n return /(?:[zZ]|[+-]\\d{2}:\\d{2})$/.test(value);\n};\n\n/** Safely run a parser and return `null` on parsing errors. */\nconst tryParse = (parser: () => unknown): DatePickerValue => {\n try {\n return asDatePickerValue(parser());\n } catch {\n return null;\n }\n};\n\n/**\n * Parse a form value into a HeroUI DatePicker compatible `DateValue`.\n *\n * Accepts existing `DateValue` objects, native `Date` instances, and ISO-like\n * strings (date, date-time, zoned, and absolute). Returns `null` when the value\n * is empty or cannot be parsed.\n */\nexport const parseDateValue = (\n value: unknown,\n timeZone?: string,\n): DatePickerValue => {\n if (value == null || value === '') {\n return null;\n }\n\n if (isDateValueLike(value)) {\n return asDatePickerValue(value);\n }\n\n if (value instanceof Date) {\n return asDatePickerValue(\n timeZone\n ? parseAbsolute(value.toISOString(), timeZone)\n : parseAbsoluteToLocal(value.toISOString()),\n );\n }\n\n if (typeof value !== 'string') {\n return null;\n }\n\n const normalizedValue = value.trim();\n if (normalizedValue === '') {\n return null;\n }\n\n if (/^\\d{4}-\\d{2}-\\d{2}$/.test(normalizedValue)) {\n return tryParse(() => {\n return parseDate(normalizedValue);\n });\n }\n\n const parsers: (() => unknown)[] = [\n ...(timeZone && isNaiveDateTimeString(normalizedValue)\n ? [\n () => {\n return parseZonedDateTime(`${normalizedValue}[${timeZone}]`);\n },\n ]\n : []),\n () => {\n return timeZone\n ? parseAbsolute(normalizedValue, timeZone)\n : parseAbsoluteToLocal(normalizedValue);\n },\n () => {\n return parseZonedDateTime(normalizedValue);\n },\n () => {\n return parseDateTime(normalizedValue);\n },\n () => {\n return parseDate(normalizedValue);\n },\n ];\n\n return (\n parsers\n .map((parser) => {\n return tryParse(parser);\n })\n .find((parsedValue) => {\n return parsedValue != null;\n }) ?? null\n );\n};\n\n/** Resolve the timezone used by the DatePicker when time fields are enabled. */\nexport const resolveDatePickerTimeZone = (\n withTime: boolean,\n timeZone?: string,\n): string | undefined => {\n if (!withTime) {\n return timeZone;\n }\n\n return timeZone ?? getLocalTimeZone();\n};\n\n/** Build the default placeholder value for time-enabled pickers. */\nexport const getDatePickerPlaceholderValue = (\n withTime: boolean,\n timeZone?: string,\n): DatePickerValue => {\n const resolvedTimeZone = resolveDatePickerTimeZone(withTime, timeZone);\n if (!resolvedTimeZone || !withTime) {\n return undefined;\n }\n\n return asDatePickerValue(now(resolvedTimeZone));\n};\n\n/**\n * Convert a date value into a UTC ISO string.\n *\n * `CalendarDate` and `CalendarDateTime` values are interpreted in the provided\n * timezone. `ZonedDateTime` values use their own timezone and offset.\n */\nexport const dateValueToUtcIsoString = (\n value: DatePickerValue,\n timeZone: string,\n): string | null => {\n if (value == null) {\n return null;\n }\n\n const maybeWithAbsoluteString = value as { toAbsoluteString?: () => string };\n if (typeof maybeWithAbsoluteString.toAbsoluteString === 'function') {\n return maybeWithAbsoluteString.toAbsoluteString();\n }\n\n const maybeWithToDate = value as { toDate?: (zone: string) => Date };\n if (typeof maybeWithToDate.toDate === 'function') {\n return maybeWithToDate.toDate(timeZone).toISOString();\n }\n\n return null;\n};\n","import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { DatePickerProps as HeroDatePickerProps } from '@heroui/date-picker';\nimport type { ReactNode } from 'react';\nimport type { DatePickerValue } from './dateHelpers';\n\nimport { DatePicker as HeroDatePicker } from '@heroui/date-picker';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport { useUniformField } from '../hooks/useUniformField';\nimport {\n dateValueToUtcIsoString,\n getDatePickerPlaceholderValue,\n parseDateValue,\n resolveDatePickerTimeZone,\n} from './dateHelpers';\n\nexport const datePickerVariants = tv({\n slots: {\n /** wrapper around the whole date picker */\n base: '',\n /** helper wrapper for error/description */\n helperWrapper: [\n // set padding to 0 for error message exit animation\n 'p-0',\n ],\n /** the calendar element */\n calendar: '',\n /** the calendar's content element */\n calendarContent: '',\n /**\n * inner wrapper (HeroUI inputWrapper slot)\n *\n * NOTE: Unlike HeroUI Input, the DatePicker does not expose a\n * `data-focus` indicator on the group, so the focus border has to be\n * driven by the native `focus-within` state of the segment inputs.\n */\n inputWrapper: 'bg-content1 focus-within:border-focus',\n /** the calendar popover element */\n popoverContent: '',\n /** selector button element */\n selectorButton: '',\n /** selector icon element */\n selectorIcon: '',\n /** the time-input component element */\n timeInput: '',\n /** the time-input component's label element */\n timeInputLabel: '',\n },\n});\n\ntype VariantProps = TVProps<typeof datePickerVariants>;\ntype ClassName = TVClassName<typeof datePickerVariants>;\n\nexport interface DatePickerProps extends VariantProps {\n /** Custom aria-label for accessibility. If not provided, falls back to field name when no visible label exists */\n ariaLabel?: string;\n /** CSS class name */\n className?: ClassName;\n /** date picker is disabled */\n disabled?: boolean;\n /**\n * Optional hour cycle override.\n *\n * When omitted, the picker uses the user's locale default (12-hour or 24-hour).\n */\n hourCycle?: 12 | 24;\n /** hide timezone abbreviation for zoned values */\n hideTimeZone?: boolean;\n /** form field label */\n label?: ReactNode;\n /** latest selectable value as ISO string */\n maxValue?: string;\n /** earliest selectable value as ISO string */\n minValue?: string;\n /** form field name */\n name: string;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /**\n * Optional advanced override for the display/interpretation timezone.\n *\n * When omitted, the picker uses the current user's local timezone while\n * `withTime` is enabled.\n */\n timeZone?: string;\n /**\n * Enables date-time mode.\n *\n * - `false` (default): date-only input (`day` granularity)\n * - `true`: includes time segments (`minute` granularity)\n */\n withTime?: boolean;\n /** value format stored in form state (`string` stores UTC ISO values) */\n valueType?: 'dateValue' | 'string';\n}\n\n/**\n * DatePicker component based on [HeroUI DatePicker](https://v2.heroui.com/docs/components/date-picker)\n */\nconst DatePicker = ({\n className: _className = undefined,\n hourCycle = 24,\n hideTimeZone = false,\n maxValue = undefined,\n minValue = undefined,\n name,\n timeZone = undefined,\n valueType = 'string',\n withTime = false,\n ...uniformFieldProps\n}: DatePickerProps) => {\n const {\n ariaLabel,\n disabled,\n errorMessage,\n field: { onBlur, onChange, value },\n invalid,\n label,\n required,\n testId,\n } = useUniformField({ name, ...uniformFieldProps });\n\n // classNames from slots\n const variants = datePickerVariants();\n const classNames = variantsToClassNames(variants, _className, 'base');\n const resolvedTimeZone = resolveDatePickerTimeZone(withTime, timeZone);\n\n // Normalize incoming form value into HeroUI's DateValue shape so the field can\n // render consistently from UTC strings, local strings, Date instances, or DateValue objects.\n const parsedValue = parseDateValue(\n value,\n withTime ? resolvedTimeZone : timeZone,\n );\n\n // Build the default placeholder value for time-enabled pickers.\n const placeholderValue = getDatePickerPlaceholderValue(withTime, timeZone);\n\n // Parse ISO boundary strings into HeroUI DateValue objects.\n const parsedMinValue = parseDateValue(\n minValue,\n withTime ? resolvedTimeZone : timeZone,\n ) as unknown as HeroDatePickerProps['minValue'];\n const parsedMaxValue = parseDateValue(\n maxValue,\n withTime ? resolvedTimeZone : timeZone,\n ) as unknown as HeroDatePickerProps['maxValue'];\n\n // Normalize DatePicker output into the configured storage format before writing to form state.\n const handleChange = (nextValue: DatePickerValue) => {\n if (nextValue == null) {\n onChange(null);\n return;\n }\n\n if (valueType === 'dateValue') {\n onChange(nextValue);\n return;\n }\n\n // String mode always stores UTC ISO values so form state is timezone-neutral\n // and comparable across users/locales.\n onChange(\n dateValueToUtcIsoString(nextValue, resolvedTimeZone ?? 'UTC') ??\n String(nextValue),\n );\n };\n\n return (\n <HeroDatePicker\n aria-label={label ? undefined : ariaLabel}\n classNames={{\n base: classNames.base,\n calendar: classNames.calendar,\n calendarContent: classNames.calendarContent,\n helperWrapper: classNames.helperWrapper,\n inputWrapper: classNames.inputWrapper,\n popoverContent: classNames.popoverContent,\n selectorButton: classNames.selectorButton,\n selectorIcon: classNames.selectorIcon,\n timeInput: classNames.timeInput,\n timeInputLabel: classNames.timeInputLabel,\n }}\n data-testid={testId}\n errorMessage={errorMessage}\n granularity={withTime ? 'minute' : 'day'}\n hideTimeZone={hideTimeZone}\n hourCycle={hourCycle}\n id={testId}\n isDisabled={disabled}\n isInvalid={invalid}\n isRequired={required}\n label={label}\n labelPlacement=\"outside\"\n maxValue={parsedMaxValue}\n minValue={parsedMinValue}\n name={name}\n onBlur={onBlur}\n onChange={handleChange}\n placeholderValue={placeholderValue}\n radius=\"sm\"\n value={parsedValue}\n variant=\"bordered\"\n />\n );\n};\n\nexport default DatePicker;\n","import DatePicker from './DatePicker';\n\nexport type { DatePickerProps } from './DatePicker';\n\nexport { datePickerVariants } from './DatePicker';\n\nexport default DatePicker;\n"],"mappings":"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"}