@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.
- package/dist/Checkboxes/index.cjs +113 -3
- package/dist/Checkboxes/index.cjs.map +1 -0
- package/dist/Checkboxes/index.d.cts +534 -2
- package/dist/Checkboxes/index.d.cts.map +1 -0
- package/dist/Checkboxes/index.d.ts +534 -2
- package/dist/Checkboxes/index.d.ts.map +1 -0
- package/dist/Checkboxes/index.js +112 -2
- package/dist/Checkboxes/index.js.map +1 -0
- package/dist/DatePicker/index.cjs +194 -3
- package/dist/DatePicker/index.cjs.map +1 -0
- package/dist/DatePicker/index.d.cts +1413 -2
- package/dist/DatePicker/index.d.cts.map +1 -0
- package/dist/DatePicker/index.d.ts +1413 -2
- package/dist/DatePicker/index.d.ts.map +1 -0
- package/dist/DatePicker/index.js +193 -2
- package/dist/DatePicker/index.js.map +1 -0
- package/dist/FieldArray/index.cjs +495 -3
- package/dist/FieldArray/index.cjs.map +1 -0
- package/dist/FieldArray/index.d.cts +539 -2
- package/dist/FieldArray/index.d.cts.map +1 -0
- package/dist/FieldArray/index.d.ts +539 -2
- package/dist/FieldArray/index.d.ts.map +1 -0
- package/dist/FieldArray/index.js +494 -2
- package/dist/FieldArray/index.js.map +1 -0
- package/dist/FieldCard/index.cjs +230 -4
- package/dist/FieldCard/index.cjs.map +1 -0
- package/dist/FieldCard/index.d.cts +314 -2
- package/dist/FieldCard/index.d.cts.map +1 -0
- package/dist/FieldCard/index.d.ts +314 -2
- package/dist/FieldCard/index.d.ts.map +1 -0
- package/dist/FieldCard/index.js +225 -2
- package/dist/FieldCard/index.js.map +1 -0
- package/dist/{FieldCopyTestIdButton-Dpmo0uBV.js → FieldCopyTestIdButton-CRJBix9D.js} +2 -2
- package/dist/{FieldCopyTestIdButton-Dpmo0uBV.js.map → FieldCopyTestIdButton-CRJBix9D.js.map} +1 -1
- package/dist/{FieldCopyTestIdButton-ptoB1F75.cjs → FieldCopyTestIdButton-D3D_LmJh.cjs} +1 -8
- package/dist/{FieldCopyTestIdButton-ptoB1F75.cjs.map → FieldCopyTestIdButton-D3D_LmJh.cjs.map} +1 -1
- package/dist/{FieldValidationError-ktTyyyip.js → FieldValidationError-ByRoIxaM.js} +5 -5
- package/dist/{FieldValidationError-ktTyyyip.js.map → FieldValidationError-ByRoIxaM.js.map} +1 -1
- package/dist/{FieldValidationError-BQcvvU9i.cjs → FieldValidationError-CfYKzl7P.cjs} +5 -6
- package/dist/{FieldValidationError-BQcvvU9i.cjs.map → FieldValidationError-CfYKzl7P.cjs.map} +1 -1
- package/dist/Form/index.cjs +118 -3
- package/dist/Form/index.cjs.map +1 -0
- package/dist/Form/index.d.cts +43 -2
- package/dist/Form/index.d.cts.map +1 -0
- package/dist/Form/index.d.ts +43 -2
- package/dist/Form/index.d.ts.map +1 -0
- package/dist/Form/index.js +118 -2
- package/dist/Form/index.js.map +1 -0
- package/dist/{FormContext-3kamRn2C.d.cts → FormContext-BLWS7bhO.d.cts} +1 -1
- package/dist/{FormContext-3kamRn2C.d.cts.map → FormContext-BLWS7bhO.d.cts.map} +1 -1
- package/dist/{FormContext-BQeKOV-0.js → FormContext-DjJOJKxj.js} +1 -1
- package/dist/{FormContext-BQeKOV-0.js.map → FormContext-DjJOJKxj.js.map} +1 -1
- package/dist/{FormContext-DsmS_mkO.cjs → FormContext-EGH0cVnH.cjs} +1 -1
- package/dist/{FormContext-DsmS_mkO.cjs.map → FormContext-EGH0cVnH.cjs.map} +1 -1
- package/dist/{FormContext-i66vM5f1.d.ts → FormContext-LgzrDWu1.d.ts} +1 -1
- package/dist/{FormContext-i66vM5f1.d.ts.map → FormContext-LgzrDWu1.d.ts.map} +1 -1
- package/dist/Grid/index.cjs +1 -2
- package/dist/Grid/index.d.cts +22 -2
- package/dist/Grid/index.d.cts.map +1 -0
- package/dist/Grid/index.d.ts +22 -2
- package/dist/Grid/index.d.ts.map +1 -0
- package/dist/Grid/index.js +2 -2
- package/dist/{Grid-D-VcRGi9.cjs → Grid-BbqCRkuY.cjs} +1 -8
- package/dist/{Grid-D-VcRGi9.cjs.map → Grid-BbqCRkuY.cjs.map} +1 -1
- package/dist/{Grid-BQpLOB0G.js → Grid-CTs-Rb9G.js} +2 -2
- package/dist/{Grid-BQpLOB0G.js.map → Grid-CTs-Rb9G.js.map} +1 -1
- package/dist/Input/index.cjs +96 -3
- package/dist/Input/index.cjs.map +1 -0
- package/dist/Input/index.d.cts +677 -2
- package/dist/Input/index.d.cts.map +1 -0
- package/dist/Input/index.d.ts +677 -2
- package/dist/Input/index.d.ts.map +1 -0
- package/dist/Input/index.js +96 -2
- package/dist/Input/index.js.map +1 -0
- package/dist/RadioBoxes/index.cjs +136 -4
- package/dist/RadioBoxes/index.cjs.map +1 -0
- package/dist/RadioBoxes/index.d.cts +1477 -2
- package/dist/RadioBoxes/index.d.cts.map +1 -0
- package/dist/RadioBoxes/index.d.ts +1477 -2
- package/dist/RadioBoxes/index.d.ts.map +1 -0
- package/dist/RadioBoxes/index.js +135 -2
- package/dist/RadioBoxes/index.js.map +1 -0
- package/dist/RadioTabs/index.cjs +123 -3
- package/dist/RadioTabs/index.cjs.map +1 -0
- package/dist/RadioTabs/index.d.cts +585 -2
- package/dist/RadioTabs/index.d.cts.map +1 -0
- package/dist/RadioTabs/index.d.ts +585 -2
- package/dist/RadioTabs/index.d.ts.map +1 -0
- package/dist/RadioTabs/index.js +120 -2
- package/dist/RadioTabs/index.js.map +1 -0
- package/dist/Radios/index.cjs +74 -3
- package/dist/Radios/index.cjs.map +1 -0
- package/dist/Radios/index.d.cts +1263 -2
- package/dist/Radios/index.d.cts.map +1 -0
- package/dist/Radios/index.d.ts +1263 -2
- package/dist/Radios/index.d.ts.map +1 -0
- package/dist/Radios/index.js +73 -2
- package/dist/Radios/index.js.map +1 -0
- package/dist/Select/index.cjs +286 -3
- package/dist/Select/index.cjs.map +1 -0
- package/dist/Select/index.d.cts +3917 -2
- package/dist/Select/index.d.cts.map +1 -0
- package/dist/Select/index.d.ts +3917 -2
- package/dist/Select/index.d.ts.map +1 -0
- package/dist/Select/index.js +283 -2
- package/dist/Select/index.js.map +1 -0
- package/dist/Slider/index.cjs +109 -3
- package/dist/Slider/index.cjs.map +1 -0
- package/dist/Slider/index.d.cts +1760 -2
- package/dist/Slider/index.d.cts.map +1 -0
- package/dist/Slider/index.d.ts +1760 -2
- package/dist/Slider/index.d.ts.map +1 -0
- package/dist/Slider/index.js +108 -2
- package/dist/Slider/index.js.map +1 -0
- package/dist/SubmitButton/index.cjs +31 -3
- package/dist/SubmitButton/index.cjs.map +1 -0
- package/dist/SubmitButton/index.d.cts +38 -2
- package/dist/SubmitButton/index.d.cts.map +1 -0
- package/dist/SubmitButton/index.d.ts +38 -2
- package/dist/SubmitButton/index.d.ts.map +1 -0
- package/dist/SubmitButton/index.js +31 -2
- package/dist/SubmitButton/index.js.map +1 -0
- package/dist/Switch/index.cjs +82 -3
- package/dist/Switch/index.cjs.map +1 -0
- package/dist/Switch/index.d.cts +1257 -2
- package/dist/Switch/index.d.cts.map +1 -0
- package/dist/Switch/index.d.ts +1257 -2
- package/dist/Switch/index.d.ts.map +1 -0
- package/dist/Switch/index.js +81 -2
- package/dist/Switch/index.js.map +1 -0
- package/dist/SwitchBox/index.cjs +154 -4
- package/dist/SwitchBox/index.cjs.map +1 -0
- package/dist/SwitchBox/index.d.cts +473 -2
- package/dist/SwitchBox/index.d.cts.map +1 -0
- package/dist/SwitchBox/index.d.ts +473 -2
- package/dist/SwitchBox/index.d.ts.map +1 -0
- package/dist/SwitchBox/index.js +153 -2
- package/dist/SwitchBox/index.js.map +1 -0
- package/dist/TextArea/index.cjs +66 -3
- package/dist/TextArea/index.cjs.map +1 -0
- package/dist/TextArea/index.d.cts +659 -2
- package/dist/TextArea/index.d.cts.map +1 -0
- package/dist/TextArea/index.d.ts +659 -2
- package/dist/TextArea/index.d.ts.map +1 -0
- package/dist/TextArea/index.js +66 -2
- package/dist/TextArea/index.js.map +1 -0
- package/dist/Time/index.cjs +221 -3
- package/dist/Time/index.cjs.map +1 -0
- package/dist/Time/index.d.cts +1028 -2
- package/dist/Time/index.d.cts.map +1 -0
- package/dist/Time/index.d.ts +1028 -2
- package/dist/Time/index.d.ts.map +1 -0
- package/dist/Time/index.js +216 -2
- package/dist/Time/index.js.map +1 -0
- package/dist/helpers/index.cjs +0 -1
- package/dist/helpers/index.cjs.map +1 -1
- package/dist/helpers/index.js.map +1 -1
- package/dist/hooks/useClientValidation/index.cjs +177 -3
- package/dist/hooks/useClientValidation/index.cjs.map +1 -1
- package/dist/hooks/useClientValidation/index.d.cts +148 -2
- package/dist/hooks/useClientValidation/index.d.cts.map +1 -0
- package/dist/hooks/useClientValidation/index.d.ts +148 -2
- package/dist/hooks/useClientValidation/index.d.ts.map +1 -0
- package/dist/hooks/useClientValidation/index.js +175 -1
- package/dist/hooks/useClientValidation/index.js.map +1 -1
- package/dist/hooks/useController/index.cjs +1 -1
- package/dist/hooks/useController/index.d.cts +1 -1
- package/dist/hooks/useController/index.d.ts +1 -1
- package/dist/hooks/useController/index.js +1 -1
- package/dist/hooks/useFormContext/index.cjs +1 -1
- package/dist/hooks/useFormContext/index.d.cts +1 -1
- package/dist/hooks/useFormContext/index.d.ts +1 -1
- package/dist/hooks/useFormContext/index.js +1 -1
- package/dist/hooks/useInput/index.cjs +0 -1
- package/dist/hooks/useInput/index.d.cts +1 -1
- package/dist/hooks/useInput/index.d.ts +1 -1
- package/dist/hooks/useInput/index.js +1 -1
- package/dist/hooks/useInputValueDebounce/index.cjs +1 -2
- package/dist/hooks/useInputValueDebounce/index.cjs.map +1 -1
- package/dist/hooks/useInputValueDebounce/index.d.cts +66 -2
- package/dist/hooks/useInputValueDebounce/index.d.cts.map +1 -0
- package/dist/hooks/useInputValueDebounce/index.d.ts +66 -2
- package/dist/hooks/useInputValueDebounce/index.d.ts.map +1 -0
- package/dist/hooks/useInputValueDebounce/index.js +1 -1
- package/dist/hooks/useInputValueTransform/index.cjs +1 -1
- package/dist/hooks/useInputValueTransform/index.d.cts +1 -1
- package/dist/hooks/useInputValueTransform/index.d.ts +1 -1
- package/dist/hooks/useInputValueTransform/index.js +1 -1
- package/dist/hooks/useUniformField/index.cjs +8 -8
- package/dist/hooks/useUniformField/index.cjs.map +1 -1
- package/dist/hooks/useUniformField/index.d.cts +98 -2
- package/dist/hooks/useUniformField/index.d.cts.map +1 -0
- package/dist/hooks/useUniformField/index.d.ts +98 -2
- package/dist/hooks/useUniformField/index.d.ts.map +1 -0
- package/dist/hooks/useUniformField/index.js +8 -8
- package/dist/hooks/useUniformField/index.js.map +1 -1
- package/dist/hooks/useUniformFieldArray/index.cjs +1 -2
- package/dist/hooks/useUniformFieldArray/index.cjs.map +1 -1
- package/dist/hooks/useUniformFieldArray/index.d.cts +79 -2
- package/dist/hooks/useUniformFieldArray/index.d.cts.map +1 -0
- package/dist/hooks/useUniformFieldArray/index.d.ts +79 -2
- package/dist/hooks/useUniformFieldArray/index.d.ts.map +1 -0
- package/dist/hooks/useUniformFieldArray/index.js +1 -1
- package/dist/hooks/useWatchFormReset/index.cjs +1 -2
- package/dist/hooks/useWatchFormReset/index.cjs.map +1 -1
- package/dist/hooks/useWatchFormReset/index.d.cts +38 -2
- package/dist/hooks/useWatchFormReset/index.d.cts.map +1 -0
- package/dist/hooks/useWatchFormReset/index.d.ts +38 -2
- package/dist/hooks/useWatchFormReset/index.d.ts.map +1 -0
- package/dist/hooks/useWatchFormReset/index.js +1 -1
- package/dist/hooks/useWatchUserChange/index.cjs +82 -2
- package/dist/hooks/useWatchUserChange/index.cjs.map +1 -1
- package/dist/hooks/useWatchUserChange/index.d.cts +80 -2
- package/dist/hooks/useWatchUserChange/index.d.cts.map +1 -0
- package/dist/hooks/useWatchUserChange/index.d.ts +80 -2
- package/dist/hooks/useWatchUserChange/index.d.ts.map +1 -0
- package/dist/hooks/useWatchUserChange/index.js +81 -1
- package/dist/hooks/useWatchUserChange/index.js.map +1 -1
- package/dist/partials/FieldCopyTestIdButton/index.cjs +1 -2
- package/dist/partials/FieldCopyTestIdButton/index.d.cts +14 -2
- package/dist/partials/FieldCopyTestIdButton/index.d.cts.map +1 -0
- package/dist/partials/FieldCopyTestIdButton/index.d.ts +14 -2
- package/dist/partials/FieldCopyTestIdButton/index.d.ts.map +1 -0
- package/dist/partials/FieldCopyTestIdButton/index.js +2 -2
- package/dist/partials/FieldValidationError/index.cjs +1 -2
- package/dist/partials/FieldValidationError/index.d.cts +22 -2
- package/dist/partials/FieldValidationError/index.d.cts.map +1 -0
- package/dist/partials/FieldValidationError/index.d.ts +22 -2
- package/dist/partials/FieldValidationError/index.d.ts.map +1 -0
- package/dist/partials/FieldValidationError/index.js +2 -2
- package/dist/{useController-CzP0aVFC.d.ts → useController-CvQqCvFJ.d.ts} +1 -1
- package/dist/{useController-CzP0aVFC.d.ts.map → useController-CvQqCvFJ.d.ts.map} +1 -1
- package/dist/{useController--lRPWBuD.cjs → useController-Dbe7ADG6.cjs} +2 -2
- package/dist/{useController--lRPWBuD.cjs.map → useController-Dbe7ADG6.cjs.map} +1 -1
- package/dist/{useController-B287flU_.js → useController-DxFS0u7c.js} +2 -2
- package/dist/{useController-B287flU_.js.map → useController-DxFS0u7c.js.map} +1 -1
- package/dist/{useController-BT3Fd0IO.d.cts → useController-fblEApv_.d.cts} +1 -1
- package/dist/{useController-BT3Fd0IO.d.cts.map → useController-fblEApv_.d.cts.map} +1 -1
- package/dist/{useFormContext-CpLVpNAf.d.ts → useFormContext-B1-deU4Z.d.ts} +4 -4
- package/dist/{useFormContext-CpLVpNAf.d.ts.map → useFormContext-B1-deU4Z.d.ts.map} +1 -1
- package/dist/{useFormContext-CT8H8xIe.js → useFormContext-BJqa1FoT.js} +2 -2
- package/dist/{useFormContext-CT8H8xIe.js.map → useFormContext-BJqa1FoT.js.map} +1 -1
- package/dist/{useFormContext-Ddc1HWKv.d.cts → useFormContext-D5vrT2sg.d.cts} +4 -4
- package/dist/{useFormContext-Ddc1HWKv.d.cts.map → useFormContext-D5vrT2sg.d.cts.map} +1 -1
- package/dist/{useFormContext-CrXwNYiB.cjs → useFormContext-kUHonwgu.cjs} +2 -2
- package/dist/{useFormContext-CrXwNYiB.cjs.map → useFormContext-kUHonwgu.cjs.map} +1 -1
- package/dist/{useInputValueTransform-CNCBU7a9.d.cts → useInputValueTransform-DCXXb2Lp.d.cts} +1 -1
- package/dist/{useInputValueTransform-CNCBU7a9.d.cts.map → useInputValueTransform-DCXXb2Lp.d.cts.map} +1 -1
- package/dist/{useInputValueTransform-dLfFIYW4.d.ts → useInputValueTransform-DCXXb2Lp.d.ts} +1 -1
- package/dist/{useInputValueTransform-dLfFIYW4.d.ts.map → useInputValueTransform-DCXXb2Lp.d.ts.map} +1 -1
- package/dist/{useInputValueTransform-CXdmtc0Q.js → useInputValueTransform-DJ5zkqSy.js} +1 -1
- package/dist/{useInputValueTransform-CXdmtc0Q.js.map → useInputValueTransform-DJ5zkqSy.js.map} +1 -1
- package/dist/{useInputValueTransform-Bm65K8LX.cjs → useInputValueTransform-P62UUZBl.cjs} +1 -2
- package/dist/{useInputValueTransform-Bm65K8LX.cjs.map → useInputValueTransform-P62UUZBl.cjs.map} +1 -1
- package/package.json +6 -13
- package/dist/Checkboxes-D1hppxDE.js +0 -112
- package/dist/Checkboxes-D1hppxDE.js.map +0 -1
- package/dist/Checkboxes-DHk09GmH.cjs +0 -124
- package/dist/Checkboxes-DHk09GmH.cjs.map +0 -1
- package/dist/DatePicker-BUSi8SWQ.js +0 -193
- package/dist/DatePicker-BUSi8SWQ.js.map +0 -1
- package/dist/DatePicker-DuBjvS5g.cjs +0 -205
- package/dist/DatePicker-DuBjvS5g.cjs.map +0 -1
- package/dist/FieldArray-BxmK1NRd.js +0 -494
- package/dist/FieldArray-BxmK1NRd.js.map +0 -1
- package/dist/FieldArray-DgiQpIdr.cjs +0 -506
- package/dist/FieldArray-DgiQpIdr.cjs.map +0 -1
- package/dist/FieldCard-BK6SNqFY.js +0 -222
- package/dist/FieldCard-BK6SNqFY.js.map +0 -1
- package/dist/FieldCard-C-DZ5ARr.cjs +0 -234
- package/dist/FieldCard-C-DZ5ARr.cjs.map +0 -1
- package/dist/Form-CYlsIABv.cjs +0 -125
- package/dist/Form-CYlsIABv.cjs.map +0 -1
- package/dist/Form-D3yfDu4L.js +0 -114
- package/dist/Form-D3yfDu4L.js.map +0 -1
- package/dist/Input-B5RxbkNS.js +0 -96
- package/dist/Input-B5RxbkNS.js.map +0 -1
- package/dist/Input-DvVViuWH.cjs +0 -108
- package/dist/Input-DvVViuWH.cjs.map +0 -1
- package/dist/RadioBoxes-BJz-aJp3.js +0 -135
- package/dist/RadioBoxes-BJz-aJp3.js.map +0 -1
- package/dist/RadioBoxes-CR--FBhQ.cjs +0 -153
- package/dist/RadioBoxes-CR--FBhQ.cjs.map +0 -1
- package/dist/RadioTabs-Btt582Nl.cjs +0 -133
- package/dist/RadioTabs-Btt582Nl.cjs.map +0 -1
- package/dist/RadioTabs-CYmzrPBG.js +0 -120
- package/dist/RadioTabs-CYmzrPBG.js.map +0 -1
- package/dist/Radios-DZxhrX96.js +0 -73
- package/dist/Radios-DZxhrX96.js.map +0 -1
- package/dist/Radios-Jg9mwE0B.cjs +0 -85
- package/dist/Radios-Jg9mwE0B.cjs.map +0 -1
- package/dist/Select-CZwuEAB5.cjs +0 -296
- package/dist/Select-CZwuEAB5.cjs.map +0 -1
- package/dist/Select-CgeqhZIC.js +0 -283
- package/dist/Select-CgeqhZIC.js.map +0 -1
- package/dist/Slider-Bpxt-Qgj.cjs +0 -120
- package/dist/Slider-Bpxt-Qgj.cjs.map +0 -1
- package/dist/Slider-DRfSw0uE.js +0 -108
- package/dist/Slider-DRfSw0uE.js.map +0 -1
- package/dist/SubmitButton-D-wn1PJV.cjs +0 -43
- package/dist/SubmitButton-D-wn1PJV.cjs.map +0 -1
- package/dist/SubmitButton-D6aU7IgC.js +0 -31
- package/dist/SubmitButton-D6aU7IgC.js.map +0 -1
- package/dist/Switch-D9DNrqmj.js +0 -81
- package/dist/Switch-D9DNrqmj.js.map +0 -1
- package/dist/Switch-hjjy34QB.cjs +0 -93
- package/dist/Switch-hjjy34QB.cjs.map +0 -1
- package/dist/SwitchBox-BU1XieaZ.js +0 -153
- package/dist/SwitchBox-BU1XieaZ.js.map +0 -1
- package/dist/SwitchBox-Dl-F5y2m.cjs +0 -171
- package/dist/SwitchBox-Dl-F5y2m.cjs.map +0 -1
- package/dist/TextArea-CMXm-kTK.cjs +0 -78
- package/dist/TextArea-CMXm-kTK.cjs.map +0 -1
- package/dist/TextArea-DAg_K-QP.js +0 -66
- package/dist/TextArea-DAg_K-QP.js.map +0 -1
- package/dist/Time-CDptQ3CK.js +0 -213
- package/dist/Time-CDptQ3CK.js.map +0 -1
- package/dist/Time-WKgbji5k.cjs +0 -219
- package/dist/Time-WKgbji5k.cjs.map +0 -1
- package/dist/index-54OZEaUU.d.ts +0 -43
- package/dist/index-54OZEaUU.d.ts.map +0 -1
- package/dist/index-7UT2Ki5e.d.cts +0 -113
- package/dist/index-7UT2Ki5e.d.cts.map +0 -1
- package/dist/index-9_3XTDJC.d.cts +0 -174
- package/dist/index-9_3XTDJC.d.cts.map +0 -1
- package/dist/index-B5SfdA5O.d.cts +0 -99
- package/dist/index-B5SfdA5O.d.cts.map +0 -1
- package/dist/index-B61zRzeS.d.cts +0 -101
- package/dist/index-B61zRzeS.d.cts.map +0 -1
- package/dist/index-B7gQppgQ.d.ts +0 -116
- package/dist/index-B7gQppgQ.d.ts.map +0 -1
- package/dist/index-BDFJDKmz.d.ts +0 -166
- package/dist/index-BDFJDKmz.d.ts.map +0 -1
- package/dist/index-BPaSE_7b.d.ts +0 -179
- package/dist/index-BPaSE_7b.d.ts.map +0 -1
- package/dist/index-BSjcTo7A.d.ts +0 -147
- package/dist/index-BSjcTo7A.d.ts.map +0 -1
- package/dist/index-BmMspnsJ.d.cts +0 -137
- package/dist/index-BmMspnsJ.d.cts.map +0 -1
- package/dist/index-BqxDWhNr.d.cts +0 -22
- package/dist/index-BqxDWhNr.d.cts.map +0 -1
- package/dist/index-Bzs7_gnk.d.cts +0 -116
- package/dist/index-Bzs7_gnk.d.cts.map +0 -1
- package/dist/index-C3-TV4Up.d.cts +0 -43
- package/dist/index-C3-TV4Up.d.cts.map +0 -1
- package/dist/index-C4GJH8Xv.d.ts +0 -290
- package/dist/index-C4GJH8Xv.d.ts.map +0 -1
- package/dist/index-CE8fnXuQ.d.ts +0 -167
- package/dist/index-CE8fnXuQ.d.ts.map +0 -1
- package/dist/index-CEJxjf5R.d.ts +0 -22
- package/dist/index-CEJxjf5R.d.ts.map +0 -1
- package/dist/index-CHQKk_fN2.d.ts +0 -14
- package/dist/index-CHQKk_fN2.d.ts.map +0 -1
- package/dist/index-CIiOXrrY.d.ts +0 -99
- package/dist/index-CIiOXrrY.d.ts.map +0 -1
- package/dist/index-CV7wqRev.d.ts +0 -38
- package/dist/index-CV7wqRev.d.ts.map +0 -1
- package/dist/index-CXvUaeCL.d.cts +0 -14
- package/dist/index-CXvUaeCL.d.cts.map +0 -1
- package/dist/index-C_zjtsGM.d.ts +0 -113
- package/dist/index-C_zjtsGM.d.ts.map +0 -1
- package/dist/index-CbPJiRK2.d.ts +0 -83
- package/dist/index-CbPJiRK2.d.ts.map +0 -1
- package/dist/index-CvP3tbVV.d.ts +0 -137
- package/dist/index-CvP3tbVV.d.ts.map +0 -1
- package/dist/index-Cwb7sTO0.d.ts +0 -154
- package/dist/index-Cwb7sTO0.d.ts.map +0 -1
- package/dist/index-CxY9VWv5.d.cts +0 -154
- package/dist/index-CxY9VWv5.d.cts.map +0 -1
- package/dist/index-D8udSkgA.d.cts +0 -167
- package/dist/index-D8udSkgA.d.cts.map +0 -1
- package/dist/index-DBsF7xsq.d.cts +0 -147
- package/dist/index-DBsF7xsq.d.cts.map +0 -1
- package/dist/index-DNADTCoc.d.cts +0 -290
- package/dist/index-DNADTCoc.d.cts.map +0 -1
- package/dist/index-DRg0anjB.d.cts +0 -179
- package/dist/index-DRg0anjB.d.cts.map +0 -1
- package/dist/index-DUmNI6cE.d.cts +0 -83
- package/dist/index-DUmNI6cE.d.cts.map +0 -1
- package/dist/index-Db0WD4d1.d.cts +0 -166
- package/dist/index-Db0WD4d1.d.cts.map +0 -1
- package/dist/index-DpXSZCZe.d.cts +0 -38
- package/dist/index-DpXSZCZe.d.cts.map +0 -1
- package/dist/index-GxTY7aAc.d.ts +0 -174
- package/dist/index-GxTY7aAc.d.ts.map +0 -1
- package/dist/index-P30z4VRT.d.cts +0 -22
- package/dist/index-P30z4VRT.d.cts.map +0 -1
- package/dist/index-PMCqBX0t.d.ts +0 -101
- package/dist/index-PMCqBX0t.d.ts.map +0 -1
- package/dist/index-PWRw2bPH.d.ts +0 -22
- package/dist/index-PWRw2bPH.d.ts.map +0 -1
- package/dist/index-QgVr4iWX.d.cts +0 -122
- package/dist/index-QgVr4iWX.d.cts.map +0 -1
- package/dist/index-dgho7gpc.d.ts +0 -122
- package/dist/index-dgho7gpc.d.ts.map +0 -1
- package/dist/index.cjs +0 -85
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts +0 -31
- package/dist/index.d.ts +0 -31
- package/dist/index.js +0 -36
- package/dist/index.js.map +0 -1
- package/dist/useClientValidation-BRfhqRom.cjs +0 -190
- package/dist/useClientValidation-BRfhqRom.cjs.map +0 -1
- package/dist/useClientValidation-C2dLJnDI.d.cts +0 -148
- package/dist/useClientValidation-C2dLJnDI.d.cts.map +0 -1
- package/dist/useClientValidation-DpLdzIAb.js +0 -178
- package/dist/useClientValidation-DpLdzIAb.js.map +0 -1
- package/dist/useClientValidation-qRq2_spX.d.ts +0 -148
- package/dist/useClientValidation-qRq2_spX.d.ts.map +0 -1
- package/dist/useInputValueDebounce-CfQDiomI.d.cts +0 -66
- package/dist/useInputValueDebounce-CfQDiomI.d.cts.map +0 -1
- package/dist/useInputValueDebounce-DZgzL7GQ.d.ts +0 -66
- package/dist/useInputValueDebounce-DZgzL7GQ.d.ts.map +0 -1
- package/dist/useUniformField-CmAYcGER.d.cts +0 -98
- package/dist/useUniformField-CmAYcGER.d.cts.map +0 -1
- package/dist/useUniformField-DJDpQzRo.d.ts +0 -98
- package/dist/useUniformField-DJDpQzRo.d.ts.map +0 -1
- package/dist/useUniformFieldArray-D3fdzwzD.d.cts +0 -79
- package/dist/useUniformFieldArray-D3fdzwzD.d.cts.map +0 -1
- package/dist/useUniformFieldArray-zGcIhwhF.d.ts +0 -79
- package/dist/useUniformFieldArray-zGcIhwhF.d.ts.map +0 -1
- package/dist/useWatchFormReset-BSd6jMxU.d.cts +0 -38
- package/dist/useWatchFormReset-BSd6jMxU.d.cts.map +0 -1
- package/dist/useWatchFormReset-C7YJ-I3N.d.ts +0 -38
- package/dist/useWatchFormReset-C7YJ-I3N.d.ts.map +0 -1
- package/dist/useWatchUserChange-C1xWHtFG.cjs +0 -90
- package/dist/useWatchUserChange-C1xWHtFG.cjs.map +0 -1
- package/dist/useWatchUserChange-CpyZz2i7.d.ts +0 -80
- package/dist/useWatchUserChange-CpyZz2i7.d.ts.map +0 -1
- package/dist/useWatchUserChange-DSAboNCs.d.cts +0 -80
- package/dist/useWatchUserChange-DSAboNCs.d.cts.map +0 -1
- package/dist/useWatchUserChange-DSQGsl1R.js +0 -84
- package/dist/useWatchUserChange-DSQGsl1R.js.map +0 -1
- /package/dist/{index-BLwMeReG.d.ts → index-BKZ67WMa.d.cts} +0 -0
- /package/dist/{index-C2gUMYkE.d.cts → index-BKZ67WMa.d.ts} +0 -0
- /package/dist/{index-CJgP-E0M.d.cts → index-BVVgDSdq.d.cts} +0 -0
- /package/dist/{index-Cg9utiy0.d.ts → index-BVVgDSdq.d.ts} +0 -0
- /package/dist/{index-CspKFJM1.d.cts → index-DmtQKWjk.d.cts} +0 -0
- /package/dist/{index-h64gcVNJ.d.ts → index-DmtQKWjk.d.ts} +0 -0
- /package/dist/{useInput-CVm3tP78.js → useInput-C0aJaAGe.js} +0 -0
- /package/dist/{useInput-BdH8oftG.d.ts → useInput-ClpHDPdr.d.cts} +0 -0
- /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/DatePicker/DatePicker.tsx"],"mappings":";;;;cAiBa,kBAAA,IAAkB,KAAA;EAAA;;;gbAgC7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gbAhC6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kbAkCd;;;;sbACH;EAAA;IAAA;;;kbAEmB;;;;sbAgBvB;EAAA;IAAA;;;kbAdR;;;;sbAUA;EAAA;kbAIA;;;;sbAMA;EAAA;;;;;kbAkBS;;;;sbAMS;EAAA;IAAA;;;kbAAA;;;;sbAWjB;EAAA;IAAA;;;kbAXiB;;;;sbAAA;EAAA;IAAA;;;kbAAA;;;;sbAAA;EAAA;IAAA;;;kbAWF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA5Db,YAAA,GAAe,OAAO,QAAQ,kBAAA;AAAA,KAC9B,SAAA,GAAY,WAAW,QAAQ,kBAAA;AAAA,UAEnB,eAAA,SAAwB,YAAA;;EAEvC,SAAA;;EAEA,SAAA,GAAY,SAAA;;EAEZ,QAAA;;;;;;EAMA,SAAA;;EAEA,YAAA;;EAEA,KAAA,GAAQ,SAAA;;EAER,QAAA;;EAEA,QAAA;;EAEA,IAAA;;EAEA,MAAA;;;;;;;EAOA,QAAA;;;;;;;EAOA,QAAA;;EAEA,SAAA;AAAA;;;;cAMI,UAAA;EAAc,SAAA,EAAA,UAAA;EAAA,SAAA;EAAA,YAAA;EAAA,QAAA;EAAA,QAAA;EAAA,IAAA;EAAA,QAAA;EAAA,SAAA;EAAA,QAAA;EAAA,GAAA;AAAA,GAWjB,eAAA,iCAAe,GAAA,CAAA,OAAA"}
|
package/dist/DatePicker/index.js
CHANGED
|
@@ -1,2 +1,193 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { useUniformField } from "../hooks/useUniformField/index.js";
|
|
2
|
+
import { tv, variantsToClassNames } from "@fuf-stack/pixel-utils";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
import { DatePicker } from "@heroui/date-picker";
|
|
5
|
+
import { getLocalTimeZone, now, parseAbsolute, parseAbsoluteToLocal, parseDate, parseDateTime, parseZonedDateTime } from "@internationalized/date";
|
|
6
|
+
//#region src/DatePicker/dateHelpers.ts
|
|
7
|
+
/** Cast unknown input to the DatePicker value union type. */
|
|
8
|
+
const asDatePickerValue = (value) => {
|
|
9
|
+
return value;
|
|
10
|
+
};
|
|
11
|
+
/** Check whether a value already looks like an @internationalized/date object. */
|
|
12
|
+
const isDateValueLike = (value) => {
|
|
13
|
+
return !!value && typeof value === "object" && "calendar" in value;
|
|
14
|
+
};
|
|
15
|
+
/** True for ISO datetime strings that do not yet include timezone information. */
|
|
16
|
+
const isNaiveDateTimeString = (value) => {
|
|
17
|
+
return /^\d{4}-\d{2}-\d{2}T/.test(value) && !hasExplicitTimeZone(value);
|
|
18
|
+
};
|
|
19
|
+
/** True when an input already carries timezone/offset information. */
|
|
20
|
+
const hasExplicitTimeZone = (value) => {
|
|
21
|
+
if (value.includes("[") && value.includes("]")) return true;
|
|
22
|
+
return /(?:[zZ]|[+-]\d{2}:\d{2})$/.test(value);
|
|
23
|
+
};
|
|
24
|
+
/** Safely run a parser and return `null` on parsing errors. */
|
|
25
|
+
const tryParse = (parser) => {
|
|
26
|
+
try {
|
|
27
|
+
return asDatePickerValue(parser());
|
|
28
|
+
} catch {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Parse a form value into a HeroUI DatePicker compatible `DateValue`.
|
|
34
|
+
*
|
|
35
|
+
* Accepts existing `DateValue` objects, native `Date` instances, and ISO-like
|
|
36
|
+
* strings (date, date-time, zoned, and absolute). Returns `null` when the value
|
|
37
|
+
* is empty or cannot be parsed.
|
|
38
|
+
*/
|
|
39
|
+
const parseDateValue = (value, timeZone) => {
|
|
40
|
+
if (value == null || value === "") return null;
|
|
41
|
+
if (isDateValueLike(value)) return asDatePickerValue(value);
|
|
42
|
+
if (value instanceof Date) return asDatePickerValue(timeZone ? parseAbsolute(value.toISOString(), timeZone) : parseAbsoluteToLocal(value.toISOString()));
|
|
43
|
+
if (typeof value !== "string") return null;
|
|
44
|
+
const normalizedValue = value.trim();
|
|
45
|
+
if (normalizedValue === "") return null;
|
|
46
|
+
if (/^\d{4}-\d{2}-\d{2}$/.test(normalizedValue)) return tryParse(() => {
|
|
47
|
+
return parseDate(normalizedValue);
|
|
48
|
+
});
|
|
49
|
+
return [
|
|
50
|
+
...timeZone && isNaiveDateTimeString(normalizedValue) ? [() => {
|
|
51
|
+
return parseZonedDateTime(`${normalizedValue}[${timeZone}]`);
|
|
52
|
+
}] : [],
|
|
53
|
+
() => {
|
|
54
|
+
return timeZone ? parseAbsolute(normalizedValue, timeZone) : parseAbsoluteToLocal(normalizedValue);
|
|
55
|
+
},
|
|
56
|
+
() => {
|
|
57
|
+
return parseZonedDateTime(normalizedValue);
|
|
58
|
+
},
|
|
59
|
+
() => {
|
|
60
|
+
return parseDateTime(normalizedValue);
|
|
61
|
+
},
|
|
62
|
+
() => {
|
|
63
|
+
return parseDate(normalizedValue);
|
|
64
|
+
}
|
|
65
|
+
].map((parser) => {
|
|
66
|
+
return tryParse(parser);
|
|
67
|
+
}).find((parsedValue) => {
|
|
68
|
+
return parsedValue != null;
|
|
69
|
+
}) ?? null;
|
|
70
|
+
};
|
|
71
|
+
/** Resolve the timezone used by the DatePicker when time fields are enabled. */
|
|
72
|
+
const resolveDatePickerTimeZone = (withTime, timeZone) => {
|
|
73
|
+
if (!withTime) return timeZone;
|
|
74
|
+
return timeZone ?? getLocalTimeZone();
|
|
75
|
+
};
|
|
76
|
+
/** Build the default placeholder value for time-enabled pickers. */
|
|
77
|
+
const getDatePickerPlaceholderValue = (withTime, timeZone) => {
|
|
78
|
+
const resolvedTimeZone = resolveDatePickerTimeZone(withTime, timeZone);
|
|
79
|
+
if (!resolvedTimeZone || !withTime) return;
|
|
80
|
+
return asDatePickerValue(now(resolvedTimeZone));
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* Convert a date value into a UTC ISO string.
|
|
84
|
+
*
|
|
85
|
+
* `CalendarDate` and `CalendarDateTime` values are interpreted in the provided
|
|
86
|
+
* timezone. `ZonedDateTime` values use their own timezone and offset.
|
|
87
|
+
*/
|
|
88
|
+
const dateValueToUtcIsoString = (value, timeZone) => {
|
|
89
|
+
if (value == null) return null;
|
|
90
|
+
const maybeWithAbsoluteString = value;
|
|
91
|
+
if (typeof maybeWithAbsoluteString.toAbsoluteString === "function") return maybeWithAbsoluteString.toAbsoluteString();
|
|
92
|
+
const maybeWithToDate = value;
|
|
93
|
+
if (typeof maybeWithToDate.toDate === "function") return maybeWithToDate.toDate(timeZone).toISOString();
|
|
94
|
+
return null;
|
|
95
|
+
};
|
|
96
|
+
//#endregion
|
|
97
|
+
//#region src/DatePicker/DatePicker.tsx
|
|
98
|
+
const datePickerVariants = tv({ slots: {
|
|
99
|
+
/** wrapper around the whole date picker */
|
|
100
|
+
base: "",
|
|
101
|
+
/** helper wrapper for error/description */
|
|
102
|
+
helperWrapper: ["p-0"],
|
|
103
|
+
/** the calendar element */
|
|
104
|
+
calendar: "",
|
|
105
|
+
/** the calendar's content element */
|
|
106
|
+
calendarContent: "",
|
|
107
|
+
/**
|
|
108
|
+
* inner wrapper (HeroUI inputWrapper slot)
|
|
109
|
+
*
|
|
110
|
+
* NOTE: Unlike HeroUI Input, the DatePicker does not expose a
|
|
111
|
+
* `data-focus` indicator on the group, so the focus border has to be
|
|
112
|
+
* driven by the native `focus-within` state of the segment inputs.
|
|
113
|
+
*/
|
|
114
|
+
inputWrapper: "bg-content1 focus-within:border-focus",
|
|
115
|
+
/** the calendar popover element */
|
|
116
|
+
popoverContent: "",
|
|
117
|
+
/** selector button element */
|
|
118
|
+
selectorButton: "",
|
|
119
|
+
/** selector icon element */
|
|
120
|
+
selectorIcon: "",
|
|
121
|
+
/** the time-input component element */
|
|
122
|
+
timeInput: "",
|
|
123
|
+
/** the time-input component's label element */
|
|
124
|
+
timeInputLabel: ""
|
|
125
|
+
} });
|
|
126
|
+
/**
|
|
127
|
+
* DatePicker component based on [HeroUI DatePicker](https://v2.heroui.com/docs/components/date-picker)
|
|
128
|
+
*/
|
|
129
|
+
const DatePicker$1 = ({ className: _className = void 0, hourCycle = 24, hideTimeZone = false, maxValue = void 0, minValue = void 0, name, timeZone = void 0, valueType = "string", withTime = false, ...uniformFieldProps }) => {
|
|
130
|
+
const { ariaLabel, disabled, errorMessage, field: { onBlur, onChange, value }, invalid, label, required, testId } = useUniformField({
|
|
131
|
+
name,
|
|
132
|
+
...uniformFieldProps
|
|
133
|
+
});
|
|
134
|
+
const classNames = variantsToClassNames(datePickerVariants(), _className, "base");
|
|
135
|
+
const resolvedTimeZone = resolveDatePickerTimeZone(withTime, timeZone);
|
|
136
|
+
const parsedValue = parseDateValue(value, withTime ? resolvedTimeZone : timeZone);
|
|
137
|
+
const placeholderValue = getDatePickerPlaceholderValue(withTime, timeZone);
|
|
138
|
+
const parsedMinValue = parseDateValue(minValue, withTime ? resolvedTimeZone : timeZone);
|
|
139
|
+
const parsedMaxValue = parseDateValue(maxValue, withTime ? resolvedTimeZone : timeZone);
|
|
140
|
+
const handleChange = (nextValue) => {
|
|
141
|
+
if (nextValue == null) {
|
|
142
|
+
onChange(null);
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
if (valueType === "dateValue") {
|
|
146
|
+
onChange(nextValue);
|
|
147
|
+
return;
|
|
148
|
+
}
|
|
149
|
+
onChange(dateValueToUtcIsoString(nextValue, resolvedTimeZone ?? "UTC") ?? String(nextValue));
|
|
150
|
+
};
|
|
151
|
+
return /* @__PURE__ */ jsx(DatePicker, {
|
|
152
|
+
"aria-label": label ? void 0 : ariaLabel,
|
|
153
|
+
classNames: {
|
|
154
|
+
base: classNames.base,
|
|
155
|
+
calendar: classNames.calendar,
|
|
156
|
+
calendarContent: classNames.calendarContent,
|
|
157
|
+
helperWrapper: classNames.helperWrapper,
|
|
158
|
+
inputWrapper: classNames.inputWrapper,
|
|
159
|
+
popoverContent: classNames.popoverContent,
|
|
160
|
+
selectorButton: classNames.selectorButton,
|
|
161
|
+
selectorIcon: classNames.selectorIcon,
|
|
162
|
+
timeInput: classNames.timeInput,
|
|
163
|
+
timeInputLabel: classNames.timeInputLabel
|
|
164
|
+
},
|
|
165
|
+
"data-testid": testId,
|
|
166
|
+
errorMessage,
|
|
167
|
+
granularity: withTime ? "minute" : "day",
|
|
168
|
+
hideTimeZone,
|
|
169
|
+
hourCycle,
|
|
170
|
+
id: testId,
|
|
171
|
+
isDisabled: disabled,
|
|
172
|
+
isInvalid: invalid,
|
|
173
|
+
isRequired: required,
|
|
174
|
+
label,
|
|
175
|
+
labelPlacement: "outside",
|
|
176
|
+
maxValue: parsedMaxValue,
|
|
177
|
+
minValue: parsedMinValue,
|
|
178
|
+
name,
|
|
179
|
+
onBlur,
|
|
180
|
+
onChange: handleChange,
|
|
181
|
+
placeholderValue,
|
|
182
|
+
radius: "sm",
|
|
183
|
+
value: parsedValue,
|
|
184
|
+
variant: "bordered"
|
|
185
|
+
});
|
|
186
|
+
};
|
|
187
|
+
//#endregion
|
|
188
|
+
//#region src/DatePicker/index.ts
|
|
189
|
+
var DatePicker_default = DatePicker$1;
|
|
190
|
+
//#endregion
|
|
191
|
+
export { datePickerVariants, DatePicker_default as default };
|
|
192
|
+
|
|
193
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["DatePicker","HeroDatePicker","DatePicker"],"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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"}
|