@payfit/unity-components 0.0.0-alpha.6 → 0.0.0-alpha.8

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 (366) hide show
  1. package/dist/cjs/components/alert/Alert.js +1 -1
  2. package/dist/cjs/components/anchor/Anchor.d.ts +1 -1
  3. package/dist/cjs/components/app-layout/AppLayout.d.ts +6 -1
  4. package/dist/cjs/components/app-layout/AppLayout.js +1 -1
  5. package/dist/cjs/components/app-menu/AppMenu.d.ts +9 -0
  6. package/dist/cjs/components/app-menu/AppMenu.js +1 -0
  7. package/dist/cjs/components/app-menu/parts/AppMenu.context.d.ts +9 -0
  8. package/dist/cjs/components/app-menu/parts/AppMenu.context.js +1 -0
  9. package/dist/cjs/components/app-menu/parts/AppMenuFooter.d.ts +31 -0
  10. package/dist/cjs/components/app-menu/parts/AppMenuFooter.js +1 -0
  11. package/dist/cjs/components/app-menu/parts/AppMenuHeader.d.ts +9 -0
  12. package/dist/cjs/components/app-menu/parts/AppMenuHeader.js +1 -0
  13. package/dist/cjs/components/app-menu/parts/AppMenuNavContent.d.ts +5 -0
  14. package/dist/cjs/components/app-menu/parts/AppMenuNavContent.js +1 -0
  15. package/dist/cjs/components/avatar/Avatar.context.d.ts +1 -1
  16. package/dist/cjs/components/avatar/parts/AvatarFallback.d.ts +1 -1
  17. package/dist/cjs/components/avatar/parts/AvatarFallback.js +1 -1
  18. package/dist/cjs/components/avatar/parts/AvatarPair.d.ts +20 -0
  19. package/dist/cjs/components/avatar/parts/AvatarPair.js +1 -1
  20. package/dist/cjs/components/avatar/utils.d.ts +1 -0
  21. package/dist/cjs/components/avatar/utils.js +1 -0
  22. package/dist/cjs/components/badge/Badge.d.ts +3 -0
  23. package/dist/cjs/components/badge/Badge.js +1 -1
  24. package/dist/cjs/components/breadcrumbs/Breadcrumbs.context.d.ts +1 -1
  25. package/dist/cjs/components/breadcrumbs/parts/Breadcrumb.js +1 -1
  26. package/dist/cjs/components/button/Button.d.ts +2 -1
  27. package/dist/cjs/components/checkbox/Checkbox.d.ts +225 -0
  28. package/dist/cjs/components/checkbox/Checkbox.js +1 -0
  29. package/dist/cjs/components/checkbox/parts/CheckboxIndicator.d.ts +13 -0
  30. package/dist/cjs/components/checkbox/parts/CheckboxIndicator.js +1 -0
  31. package/dist/cjs/components/checkbox-field/CheckboxField.d.ts +74 -0
  32. package/dist/cjs/components/checkbox-field/CheckboxField.js +1 -0
  33. package/dist/cjs/components/checkbox-group/CheckboxGroup.d.ts +65 -0
  34. package/dist/cjs/components/checkbox-group/CheckboxGroup.js +1 -0
  35. package/dist/cjs/components/checkbox-group-field/CheckboxGroupField.d.ts +79 -0
  36. package/dist/cjs/components/checkbox-group-field/CheckboxGroupField.js +1 -0
  37. package/dist/cjs/components/collapsible/Collapsible.d.ts +33 -0
  38. package/dist/cjs/components/collapsible/parts/CollapsibleContent.d.ts +36 -0
  39. package/dist/cjs/components/collapsible/parts/CollapsibleTitle.d.ts +39 -0
  40. package/dist/cjs/components/date-picker/DatePicker.d.ts +67 -0
  41. package/dist/cjs/components/date-picker/DatePicker.js +1 -0
  42. package/dist/cjs/components/date-picker/hooks/useMonthsList.d.ts +4 -0
  43. package/dist/cjs/components/date-picker/hooks/useMonthsList.js +1 -0
  44. package/dist/cjs/components/date-picker/hooks/useYearsList.d.ts +10 -0
  45. package/dist/cjs/components/date-picker/hooks/useYearsList.js +1 -0
  46. package/dist/cjs/components/date-picker/parts/DateCalendar.d.ts +9 -0
  47. package/dist/cjs/components/date-picker/parts/DateCalendar.js +1 -0
  48. package/dist/cjs/components/date-picker/parts/DateInput.d.ts +155 -0
  49. package/dist/cjs/components/date-picker/parts/DateInput.js +1 -0
  50. package/dist/cjs/components/date-picker/parts/DateSegmentSelect.d.ts +15 -0
  51. package/dist/cjs/components/date-picker/parts/DateSegmentSelect.js +1 -0
  52. package/dist/cjs/components/date-picker/utils.d.ts +12 -0
  53. package/dist/cjs/components/date-picker-field/DatePickerField.d.ts +83 -0
  54. package/dist/cjs/components/date-picker-field/DatePickerField.js +1 -0
  55. package/dist/cjs/components/dialog/Dialog.d.ts +1 -1
  56. package/dist/cjs/components/dialog/parts/DialogActions/DialogButton.d.ts +1 -1
  57. package/dist/cjs/components/dialog/parts/DialogActions.d.ts +1 -1
  58. package/dist/cjs/components/dialog/parts/DialogTitle.d.ts +1 -1
  59. package/dist/cjs/components/fieldset/Fieldset.d.ts +150 -0
  60. package/dist/cjs/components/fieldset/Fieldset.js +1 -0
  61. package/dist/cjs/components/fieldset/parts/FieldGroup.d.ts +27 -0
  62. package/dist/cjs/components/fieldset/parts/FieldGroup.js +1 -0
  63. package/dist/cjs/components/form/Form.context.d.ts +1 -1
  64. package/dist/cjs/components/form/Form.context.js +1 -1
  65. package/dist/cjs/components/form/Form.js +1 -1
  66. package/dist/cjs/components/form-field/FormField.context.d.ts +32 -14
  67. package/dist/cjs/components/form-field/FormField.context.js +1 -0
  68. package/dist/cjs/components/form-field/FormField.d.ts +40 -16
  69. package/dist/cjs/components/form-field/FormField.js +1 -0
  70. package/dist/cjs/components/form-field/parts/FormContextualLink.js +1 -0
  71. package/dist/cjs/components/form-field/parts/FormControl.d.ts +30 -0
  72. package/dist/cjs/components/form-field/parts/FormControl.js +1 -0
  73. package/dist/cjs/components/form-field/parts/FormFeedbackText.js +1 -0
  74. package/dist/cjs/components/form-field/parts/FormHelperText.d.ts +1 -1
  75. package/dist/cjs/components/form-field/parts/FormHelperText.js +1 -0
  76. package/dist/cjs/components/form-field/parts/FormLabel.d.ts +3 -3
  77. package/dist/cjs/components/form-field/parts/FormLabel.js +1 -0
  78. package/dist/cjs/components/form-field/utils/isFieldRequired.d.ts +8 -0
  79. package/dist/cjs/components/form-field/utils/isFieldRequired.js +1 -0
  80. package/dist/cjs/components/full-page-loader/FullPageLoader.d.ts +13 -0
  81. package/dist/cjs/components/full-page-loader/FullPageLoader.js +1 -0
  82. package/dist/cjs/components/icon/Icon.d.ts +1 -1
  83. package/dist/cjs/components/icon-button/CircularIconButton.d.ts +1 -1
  84. package/dist/cjs/components/icon-button/CircularIconButton.js +1 -1
  85. package/dist/cjs/components/icon-button/IconButton.d.ts +1 -1
  86. package/dist/cjs/components/icon-button/IconButton.variants.js +1 -1
  87. package/dist/cjs/components/input/Input.d.ts +48 -0
  88. package/dist/cjs/components/input/Input.js +1 -0
  89. package/dist/cjs/components/label/Label.d.ts +17 -0
  90. package/dist/cjs/components/label/Label.js +1 -0
  91. package/dist/cjs/components/link/Link.d.ts +10 -0
  92. package/dist/cjs/components/link/Link.js +1 -1
  93. package/dist/cjs/components/menu/Menu.d.ts +1 -1
  94. package/dist/cjs/components/menu/parts/MenuContent.d.ts +1 -1
  95. package/dist/cjs/components/menu/parts/MenuContent.js +1 -1
  96. package/dist/cjs/components/menu/parts/MenuHeader.d.ts +1 -1
  97. package/dist/cjs/components/menu/parts/MenuItem.d.ts +2 -2
  98. package/dist/cjs/components/menu/parts/MenuSeparator.d.ts +1 -1
  99. package/dist/cjs/components/menu/parts/MenuTrigger.d.ts +1 -1
  100. package/dist/cjs/components/multi-select/MultiSelect.d.ts +62 -0
  101. package/dist/cjs/components/multi-select/MultiSelect.js +1 -0
  102. package/dist/cjs/components/multi-select/Multiselect.context.d.ts +7 -0
  103. package/dist/cjs/components/multi-select/Multiselect.context.js +1 -0
  104. package/dist/cjs/components/multi-select/Multiselect.types.d.ts +109 -0
  105. package/dist/cjs/components/multi-select/hooks/use-combobox-filter.d.ts +12 -0
  106. package/dist/cjs/components/multi-select/hooks/use-combobox-filter.js +1 -0
  107. package/dist/cjs/components/multi-select/hooks/use-multiselection-state.d.ts +14 -0
  108. package/dist/cjs/components/multi-select/hooks/use-multiselection-state.js +1 -0
  109. package/dist/cjs/components/multi-select/parts/MultiSelectButton.d.ts +16 -0
  110. package/dist/cjs/components/multi-select/parts/MultiSelectButton.js +1 -0
  111. package/dist/cjs/components/multi-select/parts/MultiSelectOptGroup.d.ts +69 -0
  112. package/dist/cjs/components/multi-select/parts/MultiSelectOptGroup.js +1 -0
  113. package/dist/cjs/components/multi-select/parts/MultiSelectOption.d.ts +20 -0
  114. package/dist/cjs/components/multi-select/parts/MultiSelectOption.js +1 -0
  115. package/dist/cjs/components/multi-select/parts/MultiSelectPopover.d.ts +7 -0
  116. package/dist/cjs/components/multi-select/parts/MultiSelectPopover.js +1 -0
  117. package/dist/cjs/components/multi-select-field/MultiSelectField.d.ts +59 -0
  118. package/dist/cjs/components/multi-select-field/MultiSelectField.js +1 -0
  119. package/dist/cjs/components/nav/Nav.d.ts +1 -1
  120. package/dist/cjs/components/nav/parts/NavGroup.d.ts +1 -1
  121. package/dist/cjs/components/nav/parts/NavItem.d.ts +1 -1
  122. package/dist/cjs/components/segmented-button-group/SegmentedButtonGroup.d.ts +43 -0
  123. package/dist/cjs/components/segmented-button-group/SegmentedButtonGroups.context.d.ts +8 -0
  124. package/dist/cjs/components/segmented-button-group/parts/ToggleButton.d.ts +47 -0
  125. package/dist/cjs/components/select/Select.d.ts +52 -0
  126. package/dist/cjs/components/select/Select.js +1 -0
  127. package/dist/cjs/components/select/parts/SearchInput.d.ts +2 -0
  128. package/dist/cjs/components/select/parts/SearchInput.js +1 -0
  129. package/dist/cjs/components/select/parts/SelectButton.d.ts +8 -0
  130. package/dist/cjs/components/select/parts/SelectButton.js +1 -0
  131. package/dist/cjs/components/select/parts/SelectOption.context.d.ts +8 -0
  132. package/dist/cjs/components/select/parts/SelectOption.context.js +1 -0
  133. package/dist/cjs/components/select/parts/SelectOption.d.ts +6 -0
  134. package/dist/cjs/components/select/parts/SelectOption.js +1 -0
  135. package/dist/cjs/components/select/parts/SelectOptionGroup.d.ts +12 -0
  136. package/dist/cjs/components/select/parts/SelectOptionGroup.js +1 -0
  137. package/dist/cjs/components/select/parts/SelectOptionHelper.d.ts +4 -0
  138. package/dist/cjs/components/select/parts/SelectOptionHelper.js +1 -0
  139. package/dist/cjs/components/select-field/SelectField.d.ts +50 -0
  140. package/dist/cjs/components/select-field/SelectField.js +1 -0
  141. package/dist/cjs/components/selectable-button-group/SelectableButtonGroup.context.d.ts +2 -0
  142. package/dist/cjs/components/selectable-button-group/SelectableButtonGroup.context.js +1 -0
  143. package/dist/cjs/components/selectable-button-group/SelectableButtonGroup.d.ts +59 -0
  144. package/dist/cjs/components/selectable-button-group/SelectableButtonGroup.js +1 -0
  145. package/dist/cjs/components/selectable-button-group/parts/SelectableButton.d.ts +127 -0
  146. package/dist/cjs/components/selectable-button-group/parts/SelectableButton.js +1 -0
  147. package/dist/cjs/components/spinner/Spinner.d.ts +2 -2
  148. package/dist/cjs/components/spinner/Spinner.js +1 -1
  149. package/dist/cjs/components/spinner/dynamic-content.d.ts +1 -1
  150. package/dist/cjs/components/stepper/Stepper.context.d.ts +1 -1
  151. package/dist/cjs/components/tabs/Tabs.context.d.ts +1 -1
  152. package/dist/cjs/components/tabs/parts/NavigationButton.d.ts +1 -1
  153. package/dist/cjs/components/tabs/parts/Tab.d.ts +3 -1
  154. package/dist/cjs/components/tabs/parts/TabList.js +1 -1
  155. package/dist/cjs/components/text/Text.d.ts +1 -1
  156. package/dist/cjs/components/text-area/TextArea.d.ts +220 -0
  157. package/dist/cjs/components/text-area/TextArea.js +1 -0
  158. package/dist/cjs/components/text-field/TextField.d.ts +63 -0
  159. package/dist/cjs/components/text-field/TextField.js +1 -0
  160. package/dist/cjs/components/toast/Toast.context.d.ts +1 -1
  161. package/dist/cjs/components/toast/ToastManager.d.ts +1 -1
  162. package/dist/cjs/components/toast/UnityToast.d.ts +3 -3
  163. package/dist/cjs/components/toast/UnityToast.js +1 -1
  164. package/dist/cjs/components/toast/parts/ToastAction.d.ts +1 -1
  165. package/dist/cjs/components/toast/parts/ToastContent.d.ts +1 -1
  166. package/dist/cjs/components/toast/parts/ToastTitle.d.ts +1 -1
  167. package/dist/cjs/components/tooltip/Tooltip.d.ts +1 -1
  168. package/dist/cjs/components/tooltip/Tooltip.js +1 -1
  169. package/dist/cjs/docs/blocks/Cards.d.ts +7 -7
  170. package/dist/cjs/hooks/use-form.d.ts +5 -5
  171. package/dist/cjs/hooks/use-form.js +1 -0
  172. package/dist/cjs/hooks/use-resizable.d.ts +13 -0
  173. package/dist/cjs/hooks/use-resizable.js +1 -0
  174. package/dist/cjs/index.d.ts +40 -0
  175. package/dist/cjs/index.js +1 -1
  176. package/dist/cjs/providers/router/RouterProvider.d.ts +1 -1
  177. package/dist/cjs/providers/router/integrations/UnityReactRouterV5Provider.d.ts +1 -1
  178. package/dist/cjs/types/utils.d.ts +1 -0
  179. package/dist/esm/components/alert/Alert.mjs +1 -1
  180. package/dist/esm/components/anchor/Anchor.d.mts +1 -1
  181. package/dist/esm/components/app-layout/AppLayout.d.mts +6 -1
  182. package/dist/esm/components/app-layout/AppLayout.mjs +35 -23
  183. package/dist/esm/components/app-menu/AppMenu.d.mts +9 -0
  184. package/dist/esm/components/app-menu/AppMenu.mjs +14 -0
  185. package/dist/esm/components/app-menu/parts/AppMenu.context.d.mts +9 -0
  186. package/dist/esm/components/app-menu/parts/AppMenu.context.mjs +25 -0
  187. package/dist/esm/components/app-menu/parts/AppMenuFooter.d.mts +31 -0
  188. package/dist/esm/components/app-menu/parts/AppMenuFooter.mjs +224 -0
  189. package/dist/esm/components/app-menu/parts/AppMenuHeader.d.mts +9 -0
  190. package/dist/esm/components/app-menu/parts/AppMenuHeader.mjs +41 -0
  191. package/dist/esm/components/app-menu/parts/AppMenuNavContent.d.mts +5 -0
  192. package/dist/esm/components/app-menu/parts/AppMenuNavContent.mjs +23 -0
  193. package/dist/esm/components/avatar/Avatar.context.d.mts +1 -1
  194. package/dist/esm/components/avatar/parts/AvatarFallback.d.mts +1 -1
  195. package/dist/esm/components/avatar/parts/AvatarFallback.mjs +9 -8
  196. package/dist/esm/components/avatar/parts/AvatarPair.d.mts +20 -0
  197. package/dist/esm/components/avatar/parts/AvatarPair.mjs +10 -10
  198. package/dist/esm/components/avatar/utils.d.mts +1 -0
  199. package/dist/esm/components/avatar/utils.mjs +4 -0
  200. package/dist/esm/components/badge/Badge.d.mts +3 -0
  201. package/dist/esm/components/badge/Badge.mjs +12 -10
  202. package/dist/esm/components/breadcrumbs/Breadcrumbs.context.d.mts +1 -1
  203. package/dist/esm/components/breadcrumbs/parts/Breadcrumb.mjs +10 -10
  204. package/dist/esm/components/button/Button.d.mts +2 -1
  205. package/dist/esm/components/checkbox/Checkbox.d.mts +225 -0
  206. package/dist/esm/components/checkbox/Checkbox.mjs +146 -0
  207. package/dist/esm/components/checkbox/parts/CheckboxIndicator.d.mts +13 -0
  208. package/dist/esm/components/checkbox/parts/CheckboxIndicator.mjs +146 -0
  209. package/dist/esm/components/checkbox-field/CheckboxField.d.mts +74 -0
  210. package/dist/esm/components/checkbox-field/CheckboxField.mjs +61 -0
  211. package/dist/esm/components/checkbox-group/CheckboxGroup.d.mts +65 -0
  212. package/dist/esm/components/checkbox-group/CheckboxGroup.mjs +66 -0
  213. package/dist/esm/components/checkbox-group-field/CheckboxGroupField.d.mts +79 -0
  214. package/dist/esm/components/checkbox-group-field/CheckboxGroupField.mjs +54 -0
  215. package/dist/esm/components/collapsible/Collapsible.d.mts +33 -0
  216. package/dist/esm/components/collapsible/parts/CollapsibleContent.d.mts +36 -0
  217. package/dist/esm/components/collapsible/parts/CollapsibleTitle.d.mts +39 -0
  218. package/dist/esm/components/date-picker/DatePicker.d.mts +67 -0
  219. package/dist/esm/components/date-picker/DatePicker.mjs +163 -0
  220. package/dist/esm/components/date-picker/hooks/useMonthsList.d.mts +4 -0
  221. package/dist/esm/components/date-picker/hooks/useMonthsList.mjs +26 -0
  222. package/dist/esm/components/date-picker/hooks/useYearsList.d.mts +10 -0
  223. package/dist/esm/components/date-picker/hooks/useYearsList.mjs +33 -0
  224. package/dist/esm/components/date-picker/parts/DateCalendar.d.mts +9 -0
  225. package/dist/esm/components/date-picker/parts/DateCalendar.mjs +172 -0
  226. package/dist/esm/components/date-picker/parts/DateInput.d.mts +155 -0
  227. package/dist/esm/components/date-picker/parts/DateInput.mjs +124 -0
  228. package/dist/esm/components/date-picker/parts/DateSegmentSelect.d.mts +15 -0
  229. package/dist/esm/components/date-picker/parts/DateSegmentSelect.mjs +69 -0
  230. package/dist/esm/components/date-picker/utils.d.mts +12 -0
  231. package/dist/esm/components/date-picker-field/DatePickerField.d.mts +83 -0
  232. package/dist/esm/components/date-picker-field/DatePickerField.mjs +73 -0
  233. package/dist/esm/components/dialog/Dialog.d.mts +1 -1
  234. package/dist/esm/components/dialog/parts/DialogActions/DialogButton.d.mts +1 -1
  235. package/dist/esm/components/dialog/parts/DialogActions.d.mts +1 -1
  236. package/dist/esm/components/dialog/parts/DialogTitle.d.mts +1 -1
  237. package/dist/esm/components/fieldset/Fieldset.d.mts +150 -0
  238. package/dist/esm/components/fieldset/Fieldset.mjs +65 -0
  239. package/dist/esm/components/fieldset/parts/FieldGroup.d.mts +27 -0
  240. package/dist/esm/components/fieldset/parts/FieldGroup.mjs +18 -0
  241. package/dist/esm/components/form/Form.context.d.mts +1 -1
  242. package/dist/esm/components/form/Form.context.mjs +21 -14
  243. package/dist/esm/components/form/Form.mjs +5 -5
  244. package/dist/esm/components/form-field/FormField.context.d.mts +32 -14
  245. package/dist/esm/components/form-field/FormField.context.mjs +81 -0
  246. package/dist/esm/components/form-field/FormField.d.mts +40 -16
  247. package/dist/esm/components/form-field/FormField.mjs +60 -0
  248. package/dist/esm/components/form-field/parts/FormContextualLink.mjs +35 -0
  249. package/dist/esm/components/form-field/parts/FormControl.d.mts +30 -0
  250. package/dist/esm/components/form-field/parts/FormControl.mjs +50 -0
  251. package/dist/esm/components/form-field/parts/FormFeedbackText.mjs +25 -0
  252. package/dist/esm/components/form-field/parts/FormHelperText.d.mts +1 -1
  253. package/dist/esm/components/form-field/parts/FormHelperText.mjs +25 -0
  254. package/dist/esm/components/form-field/parts/FormLabel.d.mts +3 -3
  255. package/dist/esm/components/form-field/parts/FormLabel.mjs +30 -0
  256. package/dist/esm/components/form-field/utils/isFieldRequired.d.mts +8 -0
  257. package/dist/esm/components/form-field/utils/isFieldRequired.mjs +23 -0
  258. package/dist/esm/components/full-page-loader/FullPageLoader.d.mts +13 -0
  259. package/dist/esm/components/full-page-loader/FullPageLoader.mjs +26 -0
  260. package/dist/esm/components/icon/Icon.d.mts +1 -1
  261. package/dist/esm/components/icon-button/CircularIconButton.d.mts +1 -1
  262. package/dist/esm/components/icon-button/CircularIconButton.mjs +10 -11
  263. package/dist/esm/components/icon-button/IconButton.d.mts +1 -1
  264. package/dist/esm/components/icon-button/IconButton.variants.mjs +9 -9
  265. package/dist/esm/components/input/Input.d.mts +48 -0
  266. package/dist/esm/components/input/Input.mjs +148 -0
  267. package/dist/esm/components/label/Label.d.mts +17 -0
  268. package/dist/esm/components/label/Label.mjs +56 -0
  269. package/dist/esm/components/link/Link.d.mts +10 -0
  270. package/dist/esm/components/link/Link.mjs +26 -24
  271. package/dist/esm/components/menu/Menu.d.mts +1 -1
  272. package/dist/esm/components/menu/parts/MenuContent.d.mts +1 -1
  273. package/dist/esm/components/menu/parts/MenuContent.mjs +1 -1
  274. package/dist/esm/components/menu/parts/MenuHeader.d.mts +1 -1
  275. package/dist/esm/components/menu/parts/MenuItem.d.mts +2 -2
  276. package/dist/esm/components/menu/parts/MenuSeparator.d.mts +1 -1
  277. package/dist/esm/components/menu/parts/MenuTrigger.d.mts +1 -1
  278. package/dist/esm/components/multi-select/MultiSelect.d.mts +62 -0
  279. package/dist/esm/components/multi-select/MultiSelect.mjs +230 -0
  280. package/dist/esm/components/multi-select/Multiselect.context.d.mts +7 -0
  281. package/dist/esm/components/multi-select/Multiselect.context.mjs +8 -0
  282. package/dist/esm/components/multi-select/Multiselect.types.d.mts +109 -0
  283. package/dist/esm/components/multi-select/hooks/use-combobox-filter.d.mts +12 -0
  284. package/dist/esm/components/multi-select/hooks/use-combobox-filter.mjs +22 -0
  285. package/dist/esm/components/multi-select/hooks/use-multiselection-state.d.mts +14 -0
  286. package/dist/esm/components/multi-select/hooks/use-multiselection-state.mjs +47 -0
  287. package/dist/esm/components/multi-select/parts/MultiSelectButton.d.mts +16 -0
  288. package/dist/esm/components/multi-select/parts/MultiSelectButton.mjs +160 -0
  289. package/dist/esm/components/multi-select/parts/MultiSelectOptGroup.d.mts +69 -0
  290. package/dist/esm/components/multi-select/parts/MultiSelectOptGroup.mjs +34 -0
  291. package/dist/esm/components/multi-select/parts/MultiSelectOption.d.mts +20 -0
  292. package/dist/esm/components/multi-select/parts/MultiSelectOption.mjs +85 -0
  293. package/dist/esm/components/multi-select/parts/MultiSelectPopover.d.mts +7 -0
  294. package/dist/esm/components/multi-select/parts/MultiSelectPopover.mjs +65 -0
  295. package/dist/esm/components/multi-select-field/MultiSelectField.d.mts +59 -0
  296. package/dist/esm/components/multi-select-field/MultiSelectField.mjs +81 -0
  297. package/dist/esm/components/nav/Nav.d.mts +1 -1
  298. package/dist/esm/components/nav/parts/NavGroup.d.mts +1 -1
  299. package/dist/esm/components/nav/parts/NavItem.d.mts +1 -1
  300. package/dist/esm/components/segmented-button-group/SegmentedButtonGroup.d.mts +43 -0
  301. package/dist/esm/components/segmented-button-group/SegmentedButtonGroups.context.d.mts +8 -0
  302. package/dist/esm/components/segmented-button-group/parts/ToggleButton.d.mts +47 -0
  303. package/dist/esm/components/select/Select.d.mts +52 -0
  304. package/dist/esm/components/select/Select.mjs +63 -0
  305. package/dist/esm/components/select/parts/SearchInput.d.mts +2 -0
  306. package/dist/esm/components/select/parts/SearchInput.mjs +39 -0
  307. package/dist/esm/components/select/parts/SelectButton.d.mts +8 -0
  308. package/dist/esm/components/select/parts/SelectButton.mjs +87 -0
  309. package/dist/esm/components/select/parts/SelectOption.context.d.mts +8 -0
  310. package/dist/esm/components/select/parts/SelectOption.context.mjs +24 -0
  311. package/dist/esm/components/select/parts/SelectOption.d.mts +6 -0
  312. package/dist/esm/components/select/parts/SelectOption.mjs +63 -0
  313. package/dist/esm/components/select/parts/SelectOptionGroup.d.mts +12 -0
  314. package/dist/esm/components/select/parts/SelectOptionGroup.mjs +26 -0
  315. package/dist/esm/components/select/parts/SelectOptionHelper.d.mts +4 -0
  316. package/dist/esm/components/select/parts/SelectOptionHelper.mjs +20 -0
  317. package/dist/esm/components/select-field/SelectField.d.mts +50 -0
  318. package/dist/esm/components/select-field/SelectField.mjs +65 -0
  319. package/dist/esm/components/selectable-button-group/SelectableButtonGroup.context.d.mts +2 -0
  320. package/dist/esm/components/selectable-button-group/SelectableButtonGroup.context.mjs +5 -0
  321. package/dist/esm/components/selectable-button-group/SelectableButtonGroup.d.mts +59 -0
  322. package/dist/esm/components/selectable-button-group/SelectableButtonGroup.mjs +25 -0
  323. package/dist/esm/components/selectable-button-group/parts/SelectableButton.d.mts +127 -0
  324. package/dist/esm/components/selectable-button-group/parts/SelectableButton.mjs +98 -0
  325. package/dist/esm/components/spinner/Spinner.d.mts +2 -2
  326. package/dist/esm/components/spinner/Spinner.mjs +34 -27
  327. package/dist/esm/components/spinner/dynamic-content.d.mts +1 -1
  328. package/dist/esm/components/stepper/Stepper.context.d.mts +1 -1
  329. package/dist/esm/components/tabs/Tabs.context.d.mts +1 -1
  330. package/dist/esm/components/tabs/parts/NavigationButton.d.mts +1 -1
  331. package/dist/esm/components/tabs/parts/Tab.d.mts +3 -1
  332. package/dist/esm/components/tabs/parts/TabList.mjs +47 -25
  333. package/dist/esm/components/text/Text.d.mts +1 -1
  334. package/dist/esm/components/text-area/TextArea.d.mts +220 -0
  335. package/dist/esm/components/text-area/TextArea.mjs +161 -0
  336. package/dist/esm/components/text-field/TextField.d.mts +63 -0
  337. package/dist/esm/components/text-field/TextField.mjs +78 -0
  338. package/dist/esm/components/toast/Toast.context.d.mts +1 -1
  339. package/dist/esm/components/toast/ToastManager.d.mts +1 -1
  340. package/dist/esm/components/toast/UnityToast.d.mts +3 -3
  341. package/dist/esm/components/toast/UnityToast.mjs +5 -5
  342. package/dist/esm/components/toast/parts/ToastAction.d.mts +1 -1
  343. package/dist/esm/components/toast/parts/ToastContent.d.mts +1 -1
  344. package/dist/esm/components/toast/parts/ToastTitle.d.mts +1 -1
  345. package/dist/esm/components/tooltip/Tooltip.d.mts +1 -1
  346. package/dist/esm/components/tooltip/Tooltip.mjs +11 -17
  347. package/dist/esm/docs/blocks/Cards.d.mts +7 -7
  348. package/dist/esm/hooks/use-form.d.mts +5 -5
  349. package/dist/esm/hooks/use-form.mjs +32 -0
  350. package/dist/esm/hooks/use-resizable.d.mts +13 -0
  351. package/dist/esm/hooks/use-resizable.mjs +51 -0
  352. package/dist/esm/index.d.mts +40 -0
  353. package/dist/esm/index.mjs +196 -109
  354. package/dist/esm/providers/router/RouterProvider.d.mts +1 -1
  355. package/dist/esm/providers/router/RouterProvider.mjs +3 -3
  356. package/dist/esm/providers/router/integrations/UnityReactRouterV5Provider.d.mts +1 -1
  357. package/dist/esm/types/utils.d.mts +1 -0
  358. package/i18n/en-GB.json +15 -3
  359. package/i18n/es-ES.json +15 -3
  360. package/i18n/fr-FR.json +15 -3
  361. package/package.json +27 -22
  362. package/dist/cjs/components/form-field/parts/FormInput.d.ts +0 -15
  363. package/dist/cjs/components/spinner/Spinner.module.css.js +0 -1
  364. package/dist/esm/components/form-field/parts/FormInput.d.mts +0 -15
  365. package/dist/esm/components/spinner/Spinner.module.css.mjs +0 -10
  366. package/dist/style.css +0 -1
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),f=require("react"),q=require("react-hook-form"),y=require("../checkbox/Checkbox.js"),j=require("../form-field/FormField.js"),p=require("../form-field/parts/FormControl.js"),T=require("../form-field/parts/FormFeedbackText.js");function g({name:o,children:r,defaultSelected:c,helperText:n,contextualLink:i,isRequired:s,isInvalid:l,isLoading:u,isDisabled:x,isReadOnly:d,requiredVariant:F,...a},m){const{control:b,watch:k}=q.useFormContext(),h=k(o),C={isRequired:s,isInvalid:l,isLoading:u,isDisabled:x,isReadOnly:d};return e.jsxs(j.FormField,{control:b,name:o,className:"uy-flex uy-flex-col uy-gap-100",...C,children:[e.jsx(p.FormControl,{children:e.jsx(y.Checkbox,{ref:m,defaultSelected:c,isSelected:h,requiredVariant:F,helperText:n,feedbackText:e.jsx(T.FormFeedbackText,{}),...a,children:r})}),i]})}const t=f.forwardRef(function(r,c){return g(r,c)});t.displayName="CheckboxField";exports.CheckboxField=t;
@@ -0,0 +1,65 @@
1
+ import { ReactNode } from 'react';
2
+ import { CheckboxGroupProps as AriaCheckboxGroupProps } from 'react-aria-components';
3
+ import { VariantProps } from 'tailwind-variants';
4
+ export declare const checkboxGroup: import('tailwind-variants').TVReturnType<{} | {} | {}, undefined, "uy-flex uy-flex-col uy-gap-50", import('tailwind-variants/dist/config').TVConfig<unknown, {} | {}>, {} | {}, undefined, import('tailwind-variants').TVReturnType<unknown, undefined, "uy-flex uy-flex-col uy-gap-50", import('tailwind-variants/dist/config').TVConfig<unknown, {} | {}>, unknown, unknown, undefined>>;
5
+ export interface CheckboxGroupProps extends VariantProps<typeof checkboxGroup>, Omit<AriaCheckboxGroupProps, 'className' | 'class'> {
6
+ /** The label for the checkbox group. */
7
+ label: string;
8
+ /** Helper text to display below the checkbox group. */
9
+ helperText?: ReactNode;
10
+ /** Feedback text to display below the checkbox group. */
11
+ feedbackText?: ReactNode;
12
+ /** The default selected values of the checkbox group. */
13
+ defaultValue?: string[];
14
+ /** The current selected values of the checkbox group (controlled). */
15
+ value?: string[];
16
+ /** Whether the checkbox group is disabled. */
17
+ isDisabled?: boolean;
18
+ /** Whether the checkbox group is read-only. */
19
+ isReadOnly?: boolean;
20
+ /** Whether the checkbox group is invalid. */
21
+ isInvalid?: boolean;
22
+ /** Whether the checkbox group is required. */
23
+ isRequired?: boolean;
24
+ /** Whether the checkbox group is loading. */
25
+ isLoading?: boolean;
26
+ /** The variant of the required indicator. */
27
+ requiredVariant?: 'required' | 'optional';
28
+ /** Callback when the selection changes. */
29
+ onChange?: (value: string[]) => void;
30
+ /**
31
+ * Handler called when the checkbox receives focus.
32
+ */
33
+ onFocus?: AriaCheckboxGroupProps['onFocus'];
34
+ /**
35
+ * Handler called when the checkbox loses focus.
36
+ */
37
+ onBlur?: AriaCheckboxGroupProps['onBlur'];
38
+ /**
39
+ * Handler that is called when the element's focus status changes.
40
+ * @param isFocused
41
+ */
42
+ onFocusChange?: (isFocused: boolean) => void;
43
+ children: ReactNode;
44
+ }
45
+ /**
46
+ * The `CheckboxGroup` component is an accessible group of related checkboxes.
47
+ * It provides a way to select multiple options from a list of choices.
48
+ * @param {CheckboxGroupProps} props - The props for the `CheckboxGroup` component
49
+ * @example
50
+ * ```tsx
51
+ * import { CheckboxGroup, Checkbox } from '@payfit/unity-components'
52
+ *
53
+ * <CheckboxGroup
54
+ * label="Notification preferences"
55
+ * helperText="Choose how you want to receive notifications"
56
+ * >
57
+ * <Checkbox value="email">Email notifications</Checkbox>
58
+ * <Checkbox value="sms">SMS notifications</Checkbox>
59
+ * <Checkbox value="push">Push notifications</Checkbox>
60
+ * </CheckboxGroup>
61
+ * ```
62
+ * @see {@link CheckboxProps} for all available props
63
+ */
64
+ declare const CheckboxGroup: import('react').ForwardRefExoticComponent<CheckboxGroupProps & import('react').RefAttributes<HTMLDivElement>>;
65
+ export { CheckboxGroup };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),r=require("react"),g=require("react-aria-components"),j=require("tailwind-variants"),f=require("../label/Label.js"),l=require("../text/Text.js"),a=j.tv({base:"uy-flex uy-flex-col uy-gap-50"}),i=r.forwardRef(({label:t,helperText:n,feedbackText:e,isDisabled:u,isReadOnly:x,isInvalid:s,isRequired:c,isLoading:y,children:m,requiredVariant:p,...d},b)=>{const h={isDisabled:u,isReadOnly:x,isInvalid:s,isRequired:c,isLoading:y};return o.jsxs(g.CheckboxGroup,{...h,...d,ref:b,className:a(),children:[t&&o.jsx(f.Label,{isRequired:c,requiredVariant:p,children:t}),n&&o.jsx(l.Text,{variant:"bodySmall",color:"content.neutral.low",slot:"description",children:n}),o.jsx("div",{className:"uy-mt-100 uy-flex uy-flex-col uy-gap-150 uy-py-25",children:m}),s&&(typeof e=="string"?o.jsx(l.Text,{variant:"bodySmallStrong",color:"content.form.invalid",slot:"errorMessage",children:e}):r.isValidElement(e)&&r.cloneElement(e,{slot:"errorMessage"}))]})});i.displayName="CheckboxGroup";exports.CheckboxGroup=i;exports.checkboxGroup=a;
@@ -0,0 +1,79 @@
1
+ import { ForwardedRef, JSX, PropsWithChildren, ReactNode } from 'react';
2
+ import { FieldPath, FieldValues } from 'react-hook-form';
3
+ import { infer as ZodInfer } from 'zod';
4
+ import { Schema } from '../../hooks/use-form.types.js';
5
+ import { CheckboxGroupProps } from '../checkbox-group/CheckboxGroup.js';
6
+ import { LabelProps } from '../label/Label.js';
7
+ interface FieldProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> extends PropsWithChildren<Pick<LabelProps, 'isRequired' | 'requiredVariant'>> {
8
+ /** The name of the field, which should match the form schema. */
9
+ name: TName;
10
+ /** The label for the checkbox group. */
11
+ label: string;
12
+ /** Helper text to display below the checkbox group. */
13
+ helperText?: ReactNode;
14
+ /** A contextual link to display below the checkbox group. */
15
+ contextualLink?: ReactNode;
16
+ /** The default selected values of the checkbox group. */
17
+ defaultValue?: string[];
18
+ /** Whether the checkbox group is disabled. */
19
+ isDisabled?: boolean;
20
+ /** Whether the checkbox group is read-only. */
21
+ isReadOnly?: boolean;
22
+ /** Whether the checkbox group is invalid. */
23
+ isInvalid?: boolean;
24
+ /** Whether the checkbox group is loading. */
25
+ isLoading?: boolean;
26
+ /** Callback when the selection changes. */
27
+ onChange?: (value: string[]) => void;
28
+ /**
29
+ * Handler called when the checkbox receives focus.
30
+ */
31
+ onFocus?: CheckboxGroupProps['onFocus'];
32
+ /**
33
+ * Handler called when the checkbox loses focus.
34
+ */
35
+ onBlur?: CheckboxGroupProps['onBlur'];
36
+ /**
37
+ * Handler that is called when the element's focus status changes.
38
+ * @param isFocused
39
+ */
40
+ onFocusChange?: (isFocused: boolean) => void;
41
+ }
42
+ export type CheckboxGroupFieldProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = FieldProps<TFieldValues, TName>;
43
+ type CheckboxGroupFieldComponent = (<TSchema extends Schema>(props: CheckboxGroupFieldProps<ZodInfer<TSchema>> & {
44
+ ref?: ForwardedRef<HTMLDivElement>;
45
+ }) => JSX.Element) & {
46
+ displayName?: string;
47
+ };
48
+ /**
49
+ * The `CheckboxGroupField` component renders a group of related checkboxes that can be used in forms.
50
+ * It integrates with the `Form` component automatically and provides form validation, helper text,
51
+ * and error feedback.
52
+ * @example
53
+ * ```tsx
54
+ * const schema = z.object({
55
+ * preferences: z.array(z.string())
56
+ * })
57
+ *
58
+ * function MyForm() {
59
+ * const { Form } = useUnityForm(schema)
60
+ *
61
+ * return (
62
+ * <Form action={handleSubmit}>
63
+ * <CheckboxGroupField<typeof schema>
64
+ * name="preferences"
65
+ * label="Select your preferences"
66
+ * helperText="Choose all that apply"
67
+ * >
68
+ * <Checkbox value="email">Email notifications</Checkbox>
69
+ * <Checkbox value="sms">SMS notifications</Checkbox>
70
+ * </CheckboxGroupField>
71
+ * </Form>
72
+ * )
73
+ * }
74
+ * ```
75
+ * @note The schema type parameter is needed to ensure type safety with the form's schema.
76
+ * If you omit it, the `name` prop will not be type-safe.
77
+ */
78
+ declare const CheckboxGroupField: CheckboxGroupFieldComponent;
79
+ export { CheckboxGroupField };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),q=require("react"),G=require("react-hook-form"),f=require("../checkbox-group/CheckboxGroup.js"),j=require("../form-field/FormField.js"),y=require("../form-field/parts/FormControl.js"),T=require("../form-field/parts/FormFeedbackText.js");function R({name:o,label:r,defaultValue:t,helperText:n,contextualLink:i,isRequired:u,isInvalid:s,isLoading:l,isDisabled:F,isReadOnly:d,requiredVariant:x,children:m,...b},a){const{control:k,watch:p}=G.useFormContext(),h=p(o),C={isRequired:u,isInvalid:s,isLoading:l,isDisabled:F,isReadOnly:d};return e.jsxs(j.FormField,{control:k,name:o,...C,children:[e.jsx(y.FormControl,{children:e.jsx(f.CheckboxGroup,{ref:a,label:r,defaultValue:t,value:h,helperText:n,feedbackText:e.jsx(T.FormFeedbackText,{}),requiredVariant:x,...b,children:m})}),i]})}const c=q.forwardRef(function(r,t){return R(r,t)});c.displayName="CheckboxGroupField";exports.CheckboxGroupField=c;
@@ -0,0 +1,33 @@
1
+ import { ReactNode } from 'react';
2
+ import { DisclosureProps } from 'react-aria-components';
3
+ export interface CollapsibleProps extends Omit<DisclosureProps, 'isDisabled' | 'defaultExpanded' | 'className'> {
4
+ /**
5
+ * The content of the collapsible component.
6
+ * Typically includes a CollapsibleTitle and CollapsibleContent.
7
+ */
8
+ children: ReactNode;
9
+ /**
10
+ * Controls whether the collapsible is expanded by default.
11
+ * @default false
12
+ */
13
+ isExpanded?: boolean;
14
+ }
15
+ /**
16
+ * @description
17
+ * The Collapsible component provides an expandable/collapsible container that can show or hide content.
18
+ * It's typically used to organize information in a space-efficient way, allowing users to focus on relevant content.
19
+ * @example
20
+ * ```tsx
21
+ * <Collapsible>
22
+ * <CollapsibleTitle>Section Title</CollapsibleTitle>
23
+ * <CollapsibleContent>
24
+ * Content that can be shown or hidden
25
+ * </CollapsibleContent>
26
+ * </Collapsible>
27
+ * ```
28
+ * @component
29
+ * @see {@link CollapsibleTitle} - The clickable title component that toggles the expanded state
30
+ * @see {@link CollapsibleContent} - The content component that is shown/hidden based on the expanded state
31
+ */
32
+ declare const Collapsible: import('react').ForwardRefExoticComponent<CollapsibleProps & import('react').RefAttributes<HTMLDivElement>>;
33
+ export { Collapsible };
@@ -0,0 +1,36 @@
1
+ import { ReactNode } from 'react';
2
+ /**
3
+ * @description
4
+ * The CollapsibleContent component renders the content that is shown or hidden
5
+ * when the parent Collapsible component is expanded or collapsed.
6
+ */
7
+ export interface CollapsibleContentProps {
8
+ /**
9
+ * The content to be shown or hidden.
10
+ */
11
+ children: ReactNode;
12
+ }
13
+ /**
14
+ * The content component for a Collapsible.
15
+ *
16
+ * This component renders a DisclosurePanel that shows or hides its content
17
+ * based on the expanded state of the parent Collapsible component.
18
+ * @example
19
+ * ```tsx
20
+ * <Collapsible>
21
+ * <CollapsibleTitle>Section Title</CollapsibleTitle>
22
+ * <CollapsibleContent>
23
+ * This content will be shown or hidden based on the expanded state.
24
+ * </CollapsibleContent>
25
+ * </Collapsible>
26
+ * ```
27
+ * @component
28
+ * @see {@link Collapsible} - The parent component
29
+ * @see {@link CollapsibleTitle} - The title component that toggles the expanded state
30
+ * @param {CollapsibleContentProps} props - The component props
31
+ * @param {ReactNode} props.children - The content to be shown or hidden
32
+ * @param {React.Ref<HTMLDivElement>} ref - A ref to the underlying HTML div element
33
+ * @returns {JSX.Element} The rendered CollapsibleContent component
34
+ */
35
+ declare const CollapsibleContent: import('react').ForwardRefExoticComponent<CollapsibleContentProps & import('react').RefAttributes<HTMLDivElement>>;
36
+ export { CollapsibleContent };
@@ -0,0 +1,39 @@
1
+ import { ReactNode } from 'react';
2
+ /**
3
+ * @description
4
+ * The CollapsibleTitle component renders the clickable header of a Collapsible component.
5
+ * It displays a title with an icon that rotates based on the expanded state.
6
+ * @example
7
+ * ```tsx
8
+ * <Collapsible>
9
+ * <CollapsibleTitle>Section Title</CollapsibleTitle>
10
+ * <CollapsibleContent>Content</CollapsibleContent>
11
+ * </Collapsible>
12
+ * ```
13
+ * @component
14
+ * @see {@link Collapsible} - The parent component
15
+ * @see {@link CollapsibleContent} - The content component that is shown/hidden
16
+ */
17
+ interface CollapsibleTitleProps {
18
+ /**
19
+ * The content of the collapsible title.
20
+ */
21
+ children: ReactNode;
22
+ /**
23
+ * Optional content to display after the title.
24
+ */
25
+ suffix?: ReactNode;
26
+ }
27
+ /**
28
+ * The title component for a Collapsible.
29
+ *
30
+ * This component renders a heading with a button that toggles the expanded state of the parent Collapsible.
31
+ * It displays an icon that rotates based on the expanded state to indicate the current state.
32
+ * @param {CollapsibleTitleProps} props - The component props
33
+ * @param {ReactNode} props.children - The content of the title
34
+ * @param {ReactNode} [props.suffix] - Optional content to display after the title
35
+ * @param {React.Ref<HTMLDivElement>} ref - A ref to the underlying HTML div element
36
+ * @returns {JSX.Element} The rendered CollapsibleTitle component
37
+ */
38
+ declare const CollapsibleTitle: import('react').ForwardRefExoticComponent<CollapsibleTitleProps & import('react').RefAttributes<HTMLDivElement>>;
39
+ export { CollapsibleTitle };
@@ -0,0 +1,67 @@
1
+ import { CalendarDate } from '@internationalized/date';
2
+ import { DatePickerProps as AriaDatePickerProps } from 'react-aria-components';
3
+ export interface DatePickerProps extends Pick<AriaDatePickerProps<CalendarDate>, 'id' | 'firstDayOfWeek'> {
4
+ /** The currently selected date */
5
+ value?: CalendarDate;
6
+ /** The default selected date (uncontrolled) */
7
+ defaultValue?: CalendarDate;
8
+ /** The minimum allowed date */
9
+ minValue?: CalendarDate;
10
+ /** The maximum allowed date */
11
+ maxValue?: CalendarDate;
12
+ /** Callback fired when the date value changes */
13
+ onChange?: (value: CalendarDate | undefined) => void;
14
+ /** Callback fired when the clear button is clicked */
15
+ onClearButtonPress?: () => void;
16
+ /** Callback fired when the picker loses focus */
17
+ onBlur?: () => void;
18
+ /** Callback fired when the picker gains focus */
19
+ onFocus?: () => void;
20
+ /** Callback fired when the calendar overlay's open state changes */
21
+ onOpenChange?: (isOpen: boolean) => void;
22
+ /** Whether the picker is in an invalid state */
23
+ isInvalid?: boolean;
24
+ /** Whether the picker is in a loading state */
25
+ isLoading?: boolean;
26
+ /** Whether the picker is disabled */
27
+ isDisabled?: boolean;
28
+ /** Whether the picker is read-only */
29
+ isReadOnly?: boolean;
30
+ /** Function to determine if a date should be disabled */
31
+ isDateUnavailable?: (date: CalendarDate) => boolean;
32
+ /** Whether to force leading zeros for days and months */
33
+ shouldForceLeadingZeros?: boolean;
34
+ /** Whether to close the calendar after a date is selected */
35
+ shouldCloseOnSelect?: boolean;
36
+ /** Whether to open the calendar by default */
37
+ defaultOpen?: boolean;
38
+ }
39
+ /**
40
+ * The DatePicker component allows users to select a date either by typing it in directly or choosing from a calendar overlay, providing a standardized way to handle date selection across the application.
41
+ * @param {DatePickerProps} props - Props for configuring the DatePicker's behavior and appearance
42
+ * @see {@link DatePickerProps} for all available props
43
+ * @example
44
+ * ```tsx
45
+ * import { DatePicker } from '@payfit/unity-components'
46
+ * import { parseDate } from '@internationalized/date'
47
+ *
48
+ * function Example() {
49
+ * const [selectedDate, setSelectedDate] = useState<CalendarDate>()
50
+ *
51
+ * return (
52
+ * <DatePicker
53
+ * value={selectedDate}
54
+ * onChange={setSelectedDate}
55
+ * minValue={parseDate('2024-01-01')} // Restrict dates before Jan 1, 2024
56
+ * isDateUnavailable={(date) => date.dayOfWeek === 0} // Disable Sundays
57
+ * />
58
+ * )
59
+ * }
60
+ * ```
61
+ * @remarks
62
+ * [API & Docs](https://master--66fe6715241b661107117e47.chromatic.com/?path=/docs/inputs-datepicker--docs) • [Design Guidelines](https://www.payfit.design/24f360409/p/719ac2-date-picker)
63
+ * @note
64
+ * This component requires `@internationalized/date` as a peer dependency. Make sure to install it in your project: `yarn add @internationalized/date`
65
+ */
66
+ declare const DatePicker: import('react').ForwardRefExoticComponent<DatePickerProps & import('react').RefAttributes<HTMLDivElement>>;
67
+ export { DatePicker };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),I=require("react"),s=require("react-aria-components"),N=require("react-intl"),m=require("tailwind-variants"),P=require("../icon/Icon.js"),W=require("./parts/DateCalendar.js"),R=require("./parts/DateInput.js"),U=m.tv({slots:{base:["uy-group uy-flex uy-h-500 uy-border uy-border-solid uy-rounded-100","active:uy-border-border-form-active data-[focus-visible]:uy-border-border-form-active"],inputWrapper:["uy-flex uy-grow uy-rounded-75 uy-outline-none","focus-within:uy-outline-2 focus-within:uy-outline-utility-focus-ring focus-within:uy-outline-offset-2","group-[:has(button:focus)]:data-[focus-within]:uy-outline-none group-[:has(button:focus)]:data-[focus-within]:uy-outline-offset-0 group-[:has(button:focus)]:data-[focus-within]:uy-outline-transparent"],suffix:["uy-flex-grow-0 uy-content-center uy-pt-100 uy-pb-100 uy-pl-150 uy-pr-150 uy-border-l uy-rounded-r-100","hover:uy-bg-surface-neutral-hover active:uy-bg-surface-neutral-pressed active:uy-border-border-form-active data-[pressed]:uy-bg-surface-neutral-pressed data-[pressed]:uy-border-border-form-active","focus-visible:uy-outline-2 focus-visible:uy-outline-utility-focus-ring focus-visible:uy-outline-offset-[3px]"]},variants:{isInvalid:{true:{base:"uy-border-border-form-error uy-bg-surface-form-error",suffix:"uy-bg-surface-form-error uy-border-border-form-error"}},isReadOnly:{true:{base:"uy-border-border-form-disabled uy-bg-surface-form-disabled",inputWrapper:"uy-border-border-form-disabled uy-bg-surface-form-disabled",suffix:"uy-bg-surface-form-disabled uy-border-border-form-disabled uy-text-content-form-disabled"}},isDisabled:{true:{base:"uy-border-border-form-disabled uy-bg-surface-form-disabled",inputWrapper:"uy-bg-surface-form-disabled uy-text-content-form-disabled",suffix:"uy-bg-surface-form-disabled uy-border-border-form-disabled uy-text-content-form-disabled"}}},compoundVariants:[{isInvalid:!1,isDisabled:!1,isReadOnly:!1,className:{base:"uy-border-border-form-enabled uy-bg-surface-form-enabled",suffix:"uy-border-border-form-enabled uy-bg-surface-neutral-low uy-text-content-form-enabled"}}]}),M=m.tv({base:"uy-overflow-auto uy-shadow-floating uy-border uy-border-solid uy-border-border-neutral uy-bg-surface-neutral uy-rounded-75",variants:{isEntering:{true:"uy-animate-in uy-fade-in data-[placement-bottom]:uy-slide-in-from-top-1 data-[placement-top]:uy-slide-in-from-bottom-1 uy-duration-200 uy-ease-out"},isExiting:{true:"uy-animate-out uy-fade-out data-[placement-bottom]:uy-slide-out-to-top-1 data-[placement-top]:uy-slide-out-to-bottom-1 uy-duration-150 uy-ease-in"}}}),p=I.forwardRef(({value:f,defaultValue:b,isInvalid:y,isLoading:v,isDisabled:t,isReadOnly:u,onClearButtonPress:d,onBlur:o,onFocus:i,onChange:n,onOpenChange:l,id:x,...e},O)=>{const g=N.useIntl(),{base:h,inputWrapper:D,suffix:w}=U({isInvalid:!!y,isReadOnly:!!u,isDisabled:!!t}),c=r=>{n==null||n(r??void 0)},j=r=>{l==null||l(r),r?i==null||i():o==null||o()},k=r=>e.isDateUnavailable?e.isDateUnavailable(r):!1,V=()=>{d==null||d()};return a.jsxs(s.DatePicker,{...e,className:h(),value:f,defaultValue:b,minValue:e.minValue,maxValue:e.maxValue,isReadOnly:!!u,isDisabled:!!t,onChange:c,onFocus:i,onBlur:o,onOpenChange:j,isDateUnavailable:k,children:[a.jsxs(s.Group,{className:D(),id:x,children:[a.jsx(R.DateInput,{isLoading:v,isDisabled:t,isReadOnly:u,isInvalid:y,onClearButtonPress:V}),a.jsx(s.Button,{className:w(),isDisabled:u||t,children:a.jsx(P.Icon,{src:"CalendarBlankOutlined",color:"inherit",alt:g.formatMessage({id:"unity:component:form-field:date-picker:calendar-button",defaultMessage:"Open Calendar"})})})]}),a.jsx(s.Popover,{className:({isEntering:r,isExiting:q})=>M({isEntering:r,isExiting:q}),children:a.jsx(W.DateCalendar,{value:f,defaultValue:b,minValue:e.minValue,maxValue:e.maxValue,onChange:c,firstDayOfWeek:e.firstDayOfWeek})})]})});p.displayName="DatePicker";exports.DatePicker=p;
@@ -0,0 +1,4 @@
1
+ export declare function useMonthsList(): {
2
+ id: string;
3
+ name: string;
4
+ }[];
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react"),e=require("@internationalized/date"),i=require("react-aria-components");function d(){const{locale:a}=i.useLocale(),s=new Intl.DateTimeFormat().resolvedOptions().calendar,t=e.createCalendar(s);return l.useMemo(()=>{const n=e.today(e.getLocalTimeZone()),o=new e.CalendarDate(t,n.year,n.month,n.day);return Array.from({length:t.getMonthsInYear(o)}).map((u,c)=>{const r=new e.CalendarDate(t,o.year,c+1,1);return{id:r.month.toString(),name:r.toDate(e.getLocalTimeZone()).toLocaleString(a,{month:"long"})}})},[a,t])}exports.useMonthsList=d;
@@ -0,0 +1,10 @@
1
+ export interface UseYearsListOptions {
2
+ yearsBefore?: number;
3
+ yearsAfter?: number;
4
+ startYear?: number;
5
+ endYear?: number;
6
+ }
7
+ export declare function useYearsList({ yearsBefore, yearsAfter, startYear, endYear, }?: UseYearsListOptions): {
8
+ id: string;
9
+ name: string;
10
+ }[];
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("react"),e=require("@internationalized/date"),L=require("react-aria-components");function C({yearsBefore:s=100,yearsAfter:d=30,startYear:l,endYear:u}={}){const{locale:o}=L.useLocale(),n=e.today(e.getLocalTimeZone()),m=new Intl.DateTimeFormat().resolvedOptions().calendar,a=e.createCalendar(m),c=new e.CalendarDate(a,n.year,n.month,n.day);let t=l,r=u;return t===void 0&&(t=c.year-s),r===void 0&&(r=c.year+d),f.useMemo(()=>Array.from({length:r-t+1}).map((D,y)=>{const i=t+y,g=new e.CalendarDate(a,i,1,1);return{id:i.toString(),name:g.toDate(e.getLocalTimeZone()).toLocaleString(o,{year:"numeric",calendar:a.identifier})}}),[o,a,r,t])}exports.useYearsList=C;
@@ -0,0 +1,9 @@
1
+ import { DateValue } from '@internationalized/date';
2
+ import { CalendarProps as AriaDateCalendarProps } from 'react-aria-components';
3
+ type PropsFromAriaCalendar<TDate extends DateValue> = AriaDateCalendarProps<TDate>;
4
+ export type DateCalendarProps<TDate extends DateValue> = PropsFromAriaCalendar<TDate>;
5
+ declare function DateCalendar<TDate extends DateValue>({ value, defaultValue, minValue, maxValue, ...props }: DateCalendarProps<TDate>): import("react/jsx-runtime").JSX.Element;
6
+ declare namespace DateCalendar {
7
+ var displayName: string;
8
+ }
9
+ export { DateCalendar };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),h=require("react"),d=require("@internationalized/date"),t=require("react-aria-components"),G=require("tailwind-variants"),g=require("../../icon-button/IconButton.js"),I=require("../hooks/useMonthsList.js"),Y=require("../hooks/useYearsList.js"),f=require("./DateSegmentSelect.js"),B=G.tv({slots:{dialog:"uy-p-150",calendarWrapper:"uy-flex uy-flex-col uy-gap-150",dialogHeader:"uy-flex uy-items-center uy-h-500 uy-w-full",dialogHeaderGroup:"uy-flex uy-items-center",calendarGrid:"uy-border-separate uy-border-spacing-0 uy-w-full",calendarHeaderCell:"uy-typography-body-strong uy-text-content-neutral-low uy-w-[44px] uy-h-[44px] uy-uppercase",calendarCell:["uy-typography-body uy-relative uy-text-content-form-enabled uy-w-[44px] uy-h-[44px] uy-outline-hidden uy-cursor-pointer uy-rounded-circle uy-flex uy-items-center uy-justify-center","hover:uy-bg-surface-neutral-hover active:uy-bg-surface-form-active data-[pressed]:uy-bg-surface-neutral-pressed focus-visible:uy-outline-2 focus-visible:uy-outline-utility-focus-ring focus-visible:uy-outline-offset-2","data-[outside-month]:uy-text-content-neutral-disabled data-[outside-month]:uy-cursor-not-allowed data-[disabled]:uy-text-content-neutral-disabled data-[disabled]:uy-cursor-not-allowed data-[unavailable]:uy-text-content-neutral-disabled data-[unavailable]:uy-cursor-not-allowed","data-[selected]:uy-bg-surface-form-active data-[selected]:uy-text-content-inverted","data-[today]:after:uy-content-' ' data-[today]:after:uy-absolute data-[today]:after:uy-bottom-150 data-[today]:after:uy-w-100 data-[today]:after:uy-h-25 data-[today]:after:uy-bg-border-primary-active data-[today]:data-[selected]:after:uy-bg-content-inverted"]},variants:{isDisabled:{true:{calendarHeaderCell:"uy-text-content-form-disabled"}}},defaultVariants:{isDisabled:!1}});function x({value:c,defaultValue:l,minValue:r,maxValue:n,...s}){const y=d.today(d.getLocalTimeZone()),[m,v]=h.useState(c??l??y),[o,i]=h.useState(c??l??y),C=I.useMonthsList(),p=Y.useYearsList({startYear:r==null?void 0:r.year,endYear:n==null?void 0:n.year}),D=a=>{i(u=>u.set({month:parseInt(a,10)}))},j=a=>{i(u=>u.set({year:parseInt(a,10)}))},{dialog:N,calendarWrapper:S,dialogHeader:w,dialogHeaderGroup:b,calendarGrid:H,calendarHeaderCell:q,calendarCell:L}=B({isDisabled:s.isDisabled});return e.jsx(t.Dialog,{className:N(),children:e.jsx(t.Calendar,{...s,minValue:r,maxValue:n,value:m,defaultValue:l,onChange:a=>{v(a)},focusedValue:o,onFocusChange:a=>{i(a)},children:e.jsxs("div",{className:S(),children:[e.jsxs("header",{className:w(),children:[e.jsx(t.Heading,{className:"uy-sr-only"}),e.jsxs("div",{className:b({className:"uy-pl-100 uy-gap-200"}),children:[e.jsx(f.DateSegmentSelect,{type:"month",items:C,value:o.month.toString(),onChange:D,isDisabled:s.isDisabled}),e.jsx(f.DateSegmentSelect,{type:"year",items:p,value:o.year.toString(),onChange:j,isDisabled:s.isDisabled})]}),e.jsxs("div",{className:b({className:"uy-ml-auto uy-gap-100"}),children:[e.jsx(g.IconButton,{slot:"previous",icon:"CaretLeftOutlined",color:"neutral",label:"Previous",variant:"ghost",isDisabled:s.isDisabled}),e.jsx(g.IconButton,{slot:"next",icon:"CaretRightOutlined",color:"neutral",label:"Next",variant:"ghost",isDisabled:s.isDisabled})]})]}),e.jsxs(t.CalendarGrid,{className:H(),weekdayStyle:"short",children:[e.jsx(t.CalendarGridHeader,{children:a=>e.jsx(t.CalendarHeaderCell,{className:q(),children:a})}),e.jsx(t.CalendarGridBody,{children:a=>e.jsx(t.CalendarCell,{date:a,"data-today":d.isToday(a,d.getLocalTimeZone())?!0:void 0,className:L()})})]})]})})})}x.displayName="DateCalendar";exports.DateCalendar=x;
@@ -0,0 +1,155 @@
1
+ import { CalendarDate } from '@internationalized/date';
2
+ import { ReactElement } from 'react';
3
+ import { DateFieldProps } from 'react-aria-components';
4
+ export declare const dateInput: import('tailwind-variants').TVReturnType<{
5
+ isInvalid: {
6
+ true: {
7
+ base: string;
8
+ state: string;
9
+ };
10
+ };
11
+ isReadOnly: {
12
+ true: {
13
+ base: string;
14
+ };
15
+ };
16
+ isDisabled: {
17
+ true: {
18
+ base: string;
19
+ };
20
+ };
21
+ }, {
22
+ base: string;
23
+ input: string;
24
+ state: string;
25
+ }, undefined, import('tailwind-variants/dist/config').TVConfig<{
26
+ isInvalid: {
27
+ true: {
28
+ base: string;
29
+ state: string;
30
+ };
31
+ };
32
+ isReadOnly: {
33
+ true: {
34
+ base: string;
35
+ };
36
+ };
37
+ isDisabled: {
38
+ true: {
39
+ base: string;
40
+ };
41
+ };
42
+ }, {
43
+ isInvalid: {
44
+ true: {
45
+ base: string;
46
+ state: string;
47
+ };
48
+ };
49
+ isReadOnly: {
50
+ true: {
51
+ base: string;
52
+ };
53
+ };
54
+ isDisabled: {
55
+ true: {
56
+ base: string;
57
+ };
58
+ };
59
+ }>, {
60
+ isInvalid: {
61
+ true: {
62
+ base: string;
63
+ state: string;
64
+ };
65
+ };
66
+ isReadOnly: {
67
+ true: {
68
+ base: string;
69
+ };
70
+ };
71
+ isDisabled: {
72
+ true: {
73
+ base: string;
74
+ };
75
+ };
76
+ }, {
77
+ base: string;
78
+ input: string;
79
+ state: string;
80
+ }, import('tailwind-variants').TVReturnType<{
81
+ isInvalid: {
82
+ true: {
83
+ base: string;
84
+ state: string;
85
+ };
86
+ };
87
+ isReadOnly: {
88
+ true: {
89
+ base: string;
90
+ };
91
+ };
92
+ isDisabled: {
93
+ true: {
94
+ base: string;
95
+ };
96
+ };
97
+ }, {
98
+ base: string;
99
+ input: string;
100
+ state: string;
101
+ }, undefined, import('tailwind-variants/dist/config').TVConfig<{
102
+ isInvalid: {
103
+ true: {
104
+ base: string;
105
+ state: string;
106
+ };
107
+ };
108
+ isReadOnly: {
109
+ true: {
110
+ base: string;
111
+ };
112
+ };
113
+ isDisabled: {
114
+ true: {
115
+ base: string;
116
+ };
117
+ };
118
+ }, {
119
+ isInvalid: {
120
+ true: {
121
+ base: string;
122
+ state: string;
123
+ };
124
+ };
125
+ isReadOnly: {
126
+ true: {
127
+ base: string;
128
+ };
129
+ };
130
+ isDisabled: {
131
+ true: {
132
+ base: string;
133
+ };
134
+ };
135
+ }>, unknown, unknown, undefined>>;
136
+ export interface DateInputProps extends DateFieldProps<CalendarDate> {
137
+ /** Element to display after the input field */
138
+ suffix?: ReactElement;
139
+ /** Whether the field is required */
140
+ isRequired?: boolean;
141
+ /** Whether the field is in an invalid state */
142
+ isInvalid?: boolean;
143
+ /** Whether the field is in a loading state */
144
+ isLoading?: boolean;
145
+ /** Whether the field is disabled */
146
+ isDisabled?: boolean;
147
+ /** Whether the field is read-only */
148
+ isReadOnly?: boolean;
149
+ /** Clear button click handler */
150
+ onClearButtonPress?: () => void;
151
+ }
152
+ export declare function DateInput({ isLoading, isInvalid, isReadOnly, isDisabled, onClearButtonPress, }: DateInputProps): import("react/jsx-runtime").JSX.Element;
153
+ export declare namespace DateInput {
154
+ var displayName: string;
155
+ }
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),g=require("react"),s=require("react-aria-components"),I=require("react-intl"),c=require("tailwind-variants"),v=require("../../icon-button/CircularIconButton.js"),j=require("../../icon/Icon.js"),h=require("../../spinner/Spinner.js"),q=c.tv({base:"uy-group uy-box-content uy-rounded-25 uy-px-25 uy-text-end uy-tabular-nums uy-outline-none uy-typography-body focus:uy-bg-surface-form-active focus:uy-rounded-25 focus:uy-text-content-inverted data-[disabled]:uy-text-content-form-disabled",variants:{isPlaceholder:{true:"uy-text-content-neutral-lowest",false:"uy-text-content-form-enabled"},isLiteral:{true:"uy-text-content-form-enabled",false:""}}}),d=c.tv({slots:{base:"uy-flex uy-gap-50 uy-flex-grow uy-pt-100 uy-pb-100 uy-pl-150 uy-pr-150 uy-rounded-100",input:"uy-flex uy-gap-25 uy-w-fit uy-grow",state:"uy-flex uy-gap-50 uy-items-center"},variants:{isInvalid:{true:{base:"uy-bg-surface-form-error",state:"uy-text-content-form-error"}},isReadOnly:{true:{base:"uy-border-border-form-disabled uy-bg-surface-form-disabled"}},isDisabled:{true:{base:"uy-bg-surface-form-disabled uy-text-content-form-disabled"}}},compoundVariants:[{isInvalid:!1,isDisabled:!1,isReadOnly:!1,className:{base:"uy-border-border-form-enabled uy-bg-surface-form-enabled",state:"uy-text-content-neutral-disabled"}}]});function y({isLoading:u,isInvalid:o,isReadOnly:l,isDisabled:i,onClearButtonPress:a}){const n=I.useIntl(),t=g.useContext(s.DatePickerStateContext),{dateValue:f}=t,{base:m,input:b,state:p}=d({isInvalid:!!o,isReadOnly:!!l,isDisabled:!!i}),x=f&&!u&&!l&&!i;return e.jsxs("div",{className:m(),children:[e.jsx(s.DateInput,{className:b(),children:r=>e.jsx(s.DateSegment,{segment:r,className:q({isPlaceholder:r.isPlaceholder,isLiteral:r.type==="literal"})})}),e.jsxs("div",{className:p(),children:[u&&e.jsx(h.Spinner,{color:"inherit",size:"small",label:n.formatMessage({id:"unity:component:common:loading:label",defaultMessage:"Loading..."})}),o&&e.jsx(j.Icon,{src:"WarningCircleOutlined",color:"content.form.invalid",alt:n.formatMessage({id:"unity:component:form-field:form-input:error:alt",defaultMessage:"Error"})}),x&&e.jsx(v.CircularIconButton,{slot:null,title:n.formatMessage({id:"unity:component:form-field:form-input:clear:title",defaultMessage:"Clear"}),icon:"CloseOutlined",onPress:()=>{t==null||t.setValue(null),a==null||a()}})]})]})}y.displayName="DateInput";exports.DateInput=y;exports.dateInput=d;
@@ -0,0 +1,15 @@
1
+ export interface DateSegmentSelectProps {
2
+ items: Array<{
3
+ id: string | number;
4
+ name: string;
5
+ }>;
6
+ value: string;
7
+ onChange: (value: string) => void;
8
+ type: 'month' | 'year';
9
+ isDisabled?: boolean;
10
+ }
11
+ declare function DateSegmentSelect({ items, value, onChange, type, isDisabled, }: DateSegmentSelectProps): import("react/jsx-runtime").JSX.Element;
12
+ declare namespace DateSegmentSelect {
13
+ var displayName: string;
14
+ }
15
+ export { DateSegmentSelect };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),v=require("react"),I=require("@payfit/unity-icons"),S=require("react-aria"),j=require("react-intl");function m({items:s,value:i,onChange:g,type:e,isDisabled:o=!1}){const c=t=>()=>{const a=s.find(x=>x.id===t);return(a==null?void 0:a.name)??Array.from({length:3}).join("\0")},r=S.useId(),l=j.useIntl(),[h,b]=v.useState(c(i)),d=`${r}-calendar-${e}-select-label`,u=`${r}-calendar-${e}-select`,y=`${r}-calendar-${e}-select-description`,f=e==="month"?"unity:component:form-field:date-picker:segment-select:month":"unity:component:form-field:date-picker:segment-select:year",p=e==="month"?"unity:component:form-field:date-picker:segment-select:month-description":"unity:component:form-field:date-picker:segment-select:year-description";return n.jsxs("div",{className:"uy-isolation-isolate uy-relative uy-inline-flex uy-items-center uy-cursor-pointer",children:[n.jsx("label",{id:d,htmlFor:u,className:"uy-sr-only","aria-hidden":"true",children:l.formatMessage({id:f,defaultMessage:`Change current ${e}`})}),n.jsx("select",{id:u,value:i,onChange:t=>{g(t.target.value),b(c(t.target.value))},disabled:o,className:"uy-appearance-none uy-box-border uy-w-[var(--uy-selected-item-width)] uy-bg-transparent uy-border-none uy-rounded-50 uy-capitalize uy-text-content-form-enabled uy-typography-action-large uy-cursor-pointer uy-pr-300 disabled:uy-text-content-form-disabled focus-visible:uy-outline-2 focus-visible:uy-outline-offset-2 focus-visible:uy-outline-utility-focus-ring [-webkit-tap-highlight-color:transparent] [background-color:transparent]",style:{"--uy-selected-item-width":`calc(var(--uy-spacing-300) + ${h.length}ch)`},"aria-labelledby":d,"aria-describedby":y,children:s.map(t=>n.jsx("option",{value:t.id,children:t.name},t.id))}),n.jsx("div",{className:"uy-absolute uy-right-0 uy-pointer-events-none",children:n.jsx(I.IconSprite,{src:"CaretDownOutlined",width:20,height:20,color:"inherit",role:"presentation",className:o?"uy-text-content-form-disabled":""})}),n.jsx("span",{id:y,className:"uy-sr-only","aria-hidden":"true",children:l.formatMessage({id:p,defaultMessage:`Press Enter or Space to change ${e}, then use up and down arrows to select a ${e}`})})]})}m.displayName="DateSegmentSelect";exports.DateSegmentSelect=m;
@@ -0,0 +1,12 @@
1
+ import { CalendarDate } from '@internationalized/date';
2
+ /**
3
+ * Converts a JS Date or string to a CalendarDate, preserving the local date components
4
+ * regardless of timezone.
5
+ */
6
+ export declare const parseDateValue: (value: Date | string | undefined) => CalendarDate | undefined;
7
+ /**
8
+ * Converts a CalendarDate to a JS Date, preserving the local date components.
9
+ * This ensures that "2024-03-15" becomes "March 15, 2024" in the local timezone,
10
+ * without any unexpected shifts due to timezone conversion.
11
+ */
12
+ export declare const calendarDateToDate: (date: CalendarDate | null) => Date | undefined;