@proyecto-viviana/solidaria-components 0.3.2 → 0.4.0

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 (398) hide show
  1. package/dist/ActionBar.js +184 -0
  2. package/dist/ActionBar.js.map +1 -0
  3. package/dist/ActionBar.jsx +128 -0
  4. package/dist/ActionBar.jsx.map +1 -0
  5. package/dist/ActionGroup.js +179 -0
  6. package/dist/ActionGroup.js.map +1 -0
  7. package/dist/ActionGroup.jsx +129 -0
  8. package/dist/ActionGroup.jsx.map +1 -0
  9. package/dist/Alert.js +111 -0
  10. package/dist/Alert.js.map +1 -0
  11. package/dist/Alert.jsx +82 -0
  12. package/dist/Alert.jsx.map +1 -0
  13. package/dist/Autocomplete.js +130 -0
  14. package/dist/Autocomplete.js.map +1 -0
  15. package/dist/Autocomplete.jsx +116 -0
  16. package/dist/Autocomplete.jsx.map +1 -0
  17. package/dist/Breadcrumbs.d.ts.map +1 -1
  18. package/dist/Breadcrumbs.js +334 -0
  19. package/dist/Breadcrumbs.js.map +1 -0
  20. package/dist/Breadcrumbs.jsx +266 -0
  21. package/dist/Breadcrumbs.jsx.map +1 -0
  22. package/dist/Button.d.ts.map +1 -1
  23. package/dist/Button.js +348 -0
  24. package/dist/Button.js.map +1 -0
  25. package/dist/Button.jsx +314 -0
  26. package/dist/Button.jsx.map +1 -0
  27. package/dist/Calendar.d.ts +4 -4
  28. package/dist/Calendar.d.ts.map +1 -1
  29. package/dist/Calendar.js +538 -0
  30. package/dist/Calendar.js.map +1 -0
  31. package/dist/Calendar.jsx +333 -0
  32. package/dist/Calendar.jsx.map +1 -0
  33. package/dist/CalendarPicker.d.ts +33 -0
  34. package/dist/CalendarPicker.d.ts.map +1 -0
  35. package/dist/CalendarPicker.js +44 -0
  36. package/dist/CalendarPicker.js.map +1 -0
  37. package/dist/CalendarPicker.jsx +44 -0
  38. package/dist/CalendarPicker.jsx.map +1 -0
  39. package/dist/Checkbox.d.ts +83 -4
  40. package/dist/Checkbox.d.ts.map +1 -1
  41. package/dist/Checkbox.js +923 -0
  42. package/dist/Checkbox.js.map +1 -0
  43. package/dist/Checkbox.jsx +707 -0
  44. package/dist/Checkbox.jsx.map +1 -0
  45. package/dist/Collection.d.ts.map +1 -1
  46. package/dist/Collection.js +202 -0
  47. package/dist/Collection.js.map +1 -0
  48. package/dist/Collection.jsx +152 -0
  49. package/dist/Collection.jsx.map +1 -0
  50. package/dist/Color.d.ts.map +1 -1
  51. package/dist/Color.js +1720 -0
  52. package/dist/Color.js.map +1 -0
  53. package/dist/Color.jsx +1344 -0
  54. package/dist/Color.jsx.map +1 -0
  55. package/dist/ColorEditor.js +208 -0
  56. package/dist/ColorEditor.js.map +1 -0
  57. package/dist/ColorEditor.jsx +120 -0
  58. package/dist/ColorEditor.jsx.map +1 -0
  59. package/dist/ComboBox.d.ts +4 -4
  60. package/dist/ComboBox.d.ts.map +1 -1
  61. package/dist/ComboBox.js +992 -0
  62. package/dist/ComboBox.js.map +1 -0
  63. package/dist/ComboBox.jsx +714 -0
  64. package/dist/ComboBox.jsx.map +1 -0
  65. package/dist/ContextualHelpTrigger.js +146 -0
  66. package/dist/ContextualHelpTrigger.js.map +1 -0
  67. package/dist/ContextualHelpTrigger.jsx +109 -0
  68. package/dist/ContextualHelpTrigger.jsx.map +1 -0
  69. package/dist/DateField.d.ts +3 -3
  70. package/dist/DateField.d.ts.map +1 -1
  71. package/dist/DateField.js +4 -0
  72. package/dist/DateField.jsx +4 -0
  73. package/dist/DateField2.js +499 -0
  74. package/dist/DateField2.js.map +1 -0
  75. package/dist/DateField2.jsx +317 -0
  76. package/dist/DateField2.jsx.map +1 -0
  77. package/dist/DatePicker.d.ts +4 -4
  78. package/dist/DatePicker.d.ts.map +1 -1
  79. package/dist/DatePicker.js +991 -0
  80. package/dist/DatePicker.js.map +1 -0
  81. package/dist/DatePicker.jsx +682 -0
  82. package/dist/DatePicker.jsx.map +1 -0
  83. package/dist/Dialog.d.ts.map +1 -1
  84. package/dist/Dialog.js +337 -0
  85. package/dist/Dialog.js.map +1 -0
  86. package/dist/Dialog.jsx +192 -0
  87. package/dist/Dialog.jsx.map +1 -0
  88. package/dist/Disclosure.d.ts.map +1 -1
  89. package/dist/Disclosure.js +328 -0
  90. package/dist/Disclosure.js.map +1 -0
  91. package/dist/Disclosure.jsx +230 -0
  92. package/dist/Disclosure.jsx.map +1 -0
  93. package/dist/DragAndDrop.d.ts.map +1 -1
  94. package/dist/DragAndDrop.js +176 -0
  95. package/dist/DragAndDrop.js.map +1 -0
  96. package/dist/DragAndDrop.jsx +160 -0
  97. package/dist/DragAndDrop.jsx.map +1 -0
  98. package/dist/DropZone.d.ts.map +1 -1
  99. package/dist/DropZone.js +189 -0
  100. package/dist/DropZone.js.map +1 -0
  101. package/dist/DropZone.jsx +144 -0
  102. package/dist/DropZone.jsx.map +1 -0
  103. package/dist/FieldError.js +66 -0
  104. package/dist/FieldError.js.map +1 -0
  105. package/dist/FieldError.jsx +47 -0
  106. package/dist/FieldError.jsx.map +1 -0
  107. package/dist/FileTrigger.js +79 -0
  108. package/dist/FileTrigger.js.map +1 -0
  109. package/dist/FileTrigger.jsx +49 -0
  110. package/dist/FileTrigger.jsx.map +1 -0
  111. package/dist/Focusable.js +70 -0
  112. package/dist/Focusable.js.map +1 -0
  113. package/dist/Focusable.jsx +69 -0
  114. package/dist/Focusable.jsx.map +1 -0
  115. package/dist/Form.js +99 -0
  116. package/dist/Form.js.map +1 -0
  117. package/dist/Form.jsx +73 -0
  118. package/dist/Form.jsx.map +1 -0
  119. package/dist/GridList.d.ts +34 -2
  120. package/dist/GridList.d.ts.map +1 -1
  121. package/dist/GridList.js +723 -0
  122. package/dist/GridList.js.map +1 -0
  123. package/dist/GridList.jsx +552 -0
  124. package/dist/GridList.jsx.map +1 -0
  125. package/dist/HiddenTimeInput.js +104 -0
  126. package/dist/HiddenTimeInput.js.map +1 -0
  127. package/dist/HiddenTimeInput.jsx +69 -0
  128. package/dist/HiddenTimeInput.jsx.map +1 -0
  129. package/dist/Icon.d.ts.map +1 -1
  130. package/dist/Icon.js +127 -0
  131. package/dist/Icon.js.map +1 -0
  132. package/dist/Icon.jsx +72 -0
  133. package/dist/Icon.jsx.map +1 -0
  134. package/dist/Keyboard.js +30 -0
  135. package/dist/Keyboard.js.map +1 -0
  136. package/dist/Keyboard.jsx +24 -0
  137. package/dist/Keyboard.jsx.map +1 -0
  138. package/dist/Landmark.js +134 -0
  139. package/dist/Landmark.js.map +1 -0
  140. package/dist/Landmark.jsx +118 -0
  141. package/dist/Landmark.jsx.map +1 -0
  142. package/dist/Link.d.ts.map +1 -1
  143. package/dist/Link.js +219 -0
  144. package/dist/Link.js.map +1 -0
  145. package/dist/Link.jsx +189 -0
  146. package/dist/Link.jsx.map +1 -0
  147. package/dist/ListBox.d.ts.map +1 -1
  148. package/dist/ListBox.js +670 -0
  149. package/dist/ListBox.js.map +1 -0
  150. package/dist/ListBox.jsx +508 -0
  151. package/dist/ListBox.jsx.map +1 -0
  152. package/dist/Menu.d.ts +27 -9
  153. package/dist/Menu.d.ts.map +1 -1
  154. package/dist/Menu.js +1254 -0
  155. package/dist/Menu.js.map +1 -0
  156. package/dist/Menu.jsx +1042 -0
  157. package/dist/Menu.jsx.map +1 -0
  158. package/dist/Meter.d.ts.map +1 -1
  159. package/dist/Meter.js +123 -0
  160. package/dist/Meter.js.map +1 -0
  161. package/dist/Meter.jsx +107 -0
  162. package/dist/Meter.jsx.map +1 -0
  163. package/dist/Modal.d.ts.map +1 -1
  164. package/dist/Modal.js +380 -0
  165. package/dist/Modal.js.map +1 -0
  166. package/dist/Modal.jsx +314 -0
  167. package/dist/Modal.jsx.map +1 -0
  168. package/dist/NumberField.d.ts +3 -3
  169. package/dist/NumberField.d.ts.map +1 -1
  170. package/dist/NumberField.js +573 -0
  171. package/dist/NumberField.js.map +1 -0
  172. package/dist/NumberField.jsx +443 -0
  173. package/dist/NumberField.jsx.map +1 -0
  174. package/dist/Popover.d.ts +10 -2
  175. package/dist/Popover.d.ts.map +1 -1
  176. package/dist/Popover.js +464 -0
  177. package/dist/Popover.js.map +1 -0
  178. package/dist/Popover.jsx +333 -0
  179. package/dist/Popover.jsx.map +1 -0
  180. package/dist/Pressable.js +69 -0
  181. package/dist/Pressable.js.map +1 -0
  182. package/dist/Pressable.jsx +68 -0
  183. package/dist/Pressable.jsx.map +1 -0
  184. package/dist/ProgressBar.d.ts.map +1 -1
  185. package/dist/ProgressBar.js +130 -0
  186. package/dist/ProgressBar.js.map +1 -0
  187. package/dist/ProgressBar.jsx +114 -0
  188. package/dist/ProgressBar.jsx.map +1 -0
  189. package/dist/RadioGroup.d.ts +82 -4
  190. package/dist/RadioGroup.d.ts.map +1 -1
  191. package/dist/RadioGroup.js +931 -0
  192. package/dist/RadioGroup.js.map +1 -0
  193. package/dist/RadioGroup.jsx +681 -0
  194. package/dist/RadioGroup.jsx.map +1 -0
  195. package/dist/RangeCalendar.d.ts.map +1 -1
  196. package/dist/RangeCalendar.js +410 -0
  197. package/dist/RangeCalendar.js.map +1 -0
  198. package/dist/RangeCalendar.jsx +253 -0
  199. package/dist/RangeCalendar.jsx.map +1 -0
  200. package/dist/RouterProvider.js +118 -0
  201. package/dist/RouterProvider.js.map +1 -0
  202. package/dist/RouterProvider.jsx +112 -0
  203. package/dist/RouterProvider.jsx.map +1 -0
  204. package/dist/SearchField.d.ts +2 -2
  205. package/dist/SearchField.d.ts.map +1 -1
  206. package/dist/SearchField.js +643 -0
  207. package/dist/SearchField.js.map +1 -0
  208. package/dist/SearchField.jsx +526 -0
  209. package/dist/SearchField.jsx.map +1 -0
  210. package/dist/Select.d.ts.map +1 -1
  211. package/dist/Select.js +1031 -0
  212. package/dist/Select.js.map +1 -0
  213. package/dist/Select.jsx +744 -0
  214. package/dist/Select.jsx.map +1 -0
  215. package/dist/SelectionIndicator.d.ts.map +1 -1
  216. package/dist/SelectionIndicator.js +86 -0
  217. package/dist/SelectionIndicator.js.map +1 -0
  218. package/dist/SelectionIndicator.jsx +50 -0
  219. package/dist/SelectionIndicator.jsx.map +1 -0
  220. package/dist/Separator.js +97 -0
  221. package/dist/Separator.js.map +1 -0
  222. package/dist/Separator.jsx +85 -0
  223. package/dist/Separator.jsx.map +1 -0
  224. package/dist/SharedElementTransition.d.ts.map +1 -1
  225. package/dist/SharedElementTransition.js +165 -0
  226. package/dist/SharedElementTransition.js.map +1 -0
  227. package/dist/SharedElementTransition.jsx +138 -0
  228. package/dist/SharedElementTransition.jsx.map +1 -0
  229. package/dist/Slider.d.ts +33 -1
  230. package/dist/Slider.d.ts.map +1 -1
  231. package/dist/Slider.js +515 -0
  232. package/dist/Slider.js.map +1 -0
  233. package/dist/Slider.jsx +403 -0
  234. package/dist/Slider.jsx.map +1 -0
  235. package/dist/StepList.js +198 -0
  236. package/dist/StepList.js.map +1 -0
  237. package/dist/StepList.jsx +141 -0
  238. package/dist/StepList.jsx.map +1 -0
  239. package/dist/Switch.d.ts +65 -2
  240. package/dist/Switch.d.ts.map +1 -1
  241. package/dist/Switch.js +534 -0
  242. package/dist/Switch.js.map +1 -0
  243. package/dist/Switch.jsx +393 -0
  244. package/dist/Switch.jsx.map +1 -0
  245. package/dist/Table.d.ts +48 -0
  246. package/dist/Table.d.ts.map +1 -1
  247. package/dist/Table.js +1759 -0
  248. package/dist/Table.js.map +1 -0
  249. package/dist/Table.jsx +1348 -0
  250. package/dist/Table.jsx.map +1 -0
  251. package/dist/Tabs.d.ts +0 -4
  252. package/dist/Tabs.d.ts.map +1 -1
  253. package/dist/Tabs.js +595 -0
  254. package/dist/Tabs.js.map +1 -0
  255. package/dist/Tabs.jsx +367 -0
  256. package/dist/Tabs.jsx.map +1 -0
  257. package/dist/TagGroup.d.ts.map +1 -1
  258. package/dist/TagGroup.js +378 -0
  259. package/dist/TagGroup.js.map +1 -0
  260. package/dist/TagGroup.jsx +270 -0
  261. package/dist/TagGroup.jsx.map +1 -0
  262. package/dist/Text.d.ts +18 -6
  263. package/dist/Text.d.ts.map +1 -1
  264. package/dist/Text.js +42 -0
  265. package/dist/Text.js.map +1 -0
  266. package/dist/Text.jsx +35 -0
  267. package/dist/Text.jsx.map +1 -0
  268. package/dist/TextField.d.ts +6 -6
  269. package/dist/TextField.d.ts.map +1 -1
  270. package/dist/TextField.js +436 -0
  271. package/dist/TextField.js.map +1 -0
  272. package/dist/TextField.jsx +403 -0
  273. package/dist/TextField.jsx.map +1 -0
  274. package/dist/TimeField.d.ts +3 -3
  275. package/dist/TimeField.d.ts.map +1 -1
  276. package/dist/TimeField.js +372 -0
  277. package/dist/TimeField.js.map +1 -0
  278. package/dist/TimeField.jsx +224 -0
  279. package/dist/TimeField.jsx.map +1 -0
  280. package/dist/Toast.d.ts +14 -0
  281. package/dist/Toast.d.ts.map +1 -1
  282. package/dist/Toast.js +551 -0
  283. package/dist/Toast.js.map +1 -0
  284. package/dist/Toast.jsx +361 -0
  285. package/dist/Toast.jsx.map +1 -0
  286. package/dist/ToggleButton.d.ts.map +1 -1
  287. package/dist/ToggleButton.js +123 -0
  288. package/dist/ToggleButton.js.map +1 -0
  289. package/dist/ToggleButton.jsx +88 -0
  290. package/dist/ToggleButton.jsx.map +1 -0
  291. package/dist/ToggleButtonGroup.d.ts.map +1 -1
  292. package/dist/ToggleButtonGroup.js +114 -0
  293. package/dist/ToggleButtonGroup.js.map +1 -0
  294. package/dist/ToggleButtonGroup.jsx +85 -0
  295. package/dist/ToggleButtonGroup.jsx.map +1 -0
  296. package/dist/Toolbar.js +112 -0
  297. package/dist/Toolbar.js.map +1 -0
  298. package/dist/Toolbar.jsx +92 -0
  299. package/dist/Toolbar.jsx.map +1 -0
  300. package/dist/Tooltip.d.ts.map +1 -1
  301. package/dist/Tooltip.js +539 -0
  302. package/dist/Tooltip.js.map +1 -0
  303. package/dist/Tooltip.jsx +465 -0
  304. package/dist/Tooltip.jsx.map +1 -0
  305. package/dist/Tree.d.ts +14 -2
  306. package/dist/Tree.d.ts.map +1 -1
  307. package/dist/Tree.js +1424 -0
  308. package/dist/Tree.js.map +1 -0
  309. package/dist/Tree.jsx +1172 -0
  310. package/dist/Tree.jsx.map +1 -0
  311. package/dist/Virtualizer.d.ts +16 -2
  312. package/dist/Virtualizer.d.ts.map +1 -1
  313. package/dist/Virtualizer.js +2 -0
  314. package/dist/Virtualizer.jsx +2 -0
  315. package/dist/Virtualizer2.js +751 -0
  316. package/dist/Virtualizer2.js.map +1 -0
  317. package/dist/Virtualizer2.jsx +730 -0
  318. package/dist/Virtualizer2.jsx.map +1 -0
  319. package/dist/VirtualizerLayouts.d.ts +18 -0
  320. package/dist/VirtualizerLayouts.d.ts.map +1 -1
  321. package/dist/VisuallyHidden.js +42 -0
  322. package/dist/VisuallyHidden.js.map +1 -0
  323. package/dist/VisuallyHidden.jsx +35 -0
  324. package/dist/VisuallyHidden.jsx.map +1 -0
  325. package/dist/contexts.js +33 -0
  326. package/dist/contexts.js.map +1 -0
  327. package/dist/contexts.jsx +33 -0
  328. package/dist/contexts.jsx.map +1 -0
  329. package/dist/index.d.ts +7 -6
  330. package/dist/index.d.ts.map +1 -1
  331. package/dist/index.js +70 -23932
  332. package/dist/index.jsx +70 -18337
  333. package/dist/useDragAndDrop.js +2 -0
  334. package/dist/useDragAndDrop.jsx +2 -0
  335. package/dist/useDragAndDrop2.js +395 -0
  336. package/dist/useDragAndDrop2.js.map +1 -0
  337. package/dist/useDragAndDrop2.jsx +395 -0
  338. package/dist/useDragAndDrop2.jsx.map +1 -0
  339. package/dist/utils.d.ts +83 -11
  340. package/dist/utils.d.ts.map +1 -1
  341. package/dist/utils.js +285 -0
  342. package/dist/utils.js.map +1 -0
  343. package/dist/utils.jsx +277 -0
  344. package/dist/utils.jsx.map +1 -0
  345. package/dist/virtualizer/Layout.js +144 -0
  346. package/dist/virtualizer/Layout.js.map +1 -0
  347. package/dist/virtualizer/Layout.jsx +144 -0
  348. package/dist/virtualizer/Layout.jsx.map +1 -0
  349. package/package.json +401 -4
  350. package/src/Breadcrumbs.tsx +3 -1
  351. package/src/Button.tsx +22 -2
  352. package/src/Calendar.tsx +27 -10
  353. package/src/CalendarPicker.tsx +73 -0
  354. package/src/Checkbox.tsx +539 -3
  355. package/src/Collection.tsx +9 -3
  356. package/src/Color.tsx +42 -14
  357. package/src/ComboBox.tsx +50 -6
  358. package/src/DateField.tsx +20 -2
  359. package/src/DatePicker.tsx +57 -5
  360. package/src/Dialog.tsx +13 -5
  361. package/src/Disclosure.tsx +3 -1
  362. package/src/DragAndDrop.tsx +3 -1
  363. package/src/DropZone.tsx +3 -1
  364. package/src/GridList.tsx +125 -24
  365. package/src/Icon.tsx +3 -1
  366. package/src/Link.tsx +3 -1
  367. package/src/ListBox.tsx +31 -4
  368. package/src/Menu.tsx +252 -128
  369. package/src/Meter.tsx +3 -1
  370. package/src/Modal.tsx +100 -52
  371. package/src/NumberField.tsx +51 -8
  372. package/src/Popover.tsx +40 -10
  373. package/src/ProgressBar.tsx +3 -1
  374. package/src/RadioGroup.tsx +468 -4
  375. package/src/RangeCalendar.tsx +3 -1
  376. package/src/SearchField.tsx +27 -3
  377. package/src/Select.tsx +22 -7
  378. package/src/SelectionIndicator.tsx +3 -1
  379. package/src/SharedElementTransition.tsx +3 -1
  380. package/src/Slider.tsx +159 -13
  381. package/src/Switch.tsx +395 -2
  382. package/src/Table.tsx +409 -95
  383. package/src/Tabs.tsx +16 -45
  384. package/src/TagGroup.tsx +3 -1
  385. package/src/Text.tsx +31 -10
  386. package/src/TextField.tsx +43 -5
  387. package/src/TimeField.tsx +20 -2
  388. package/src/Toast.tsx +79 -14
  389. package/src/ToggleButton.tsx +3 -1
  390. package/src/ToggleButtonGroup.tsx +3 -1
  391. package/src/Tooltip.tsx +3 -1
  392. package/src/Tree.tsx +77 -9
  393. package/src/Virtualizer.tsx +180 -31
  394. package/src/VirtualizerLayouts.ts +45 -10
  395. package/src/index.ts +50 -0
  396. package/src/utils.tsx +243 -27
  397. package/dist/index.js.map +0 -1
  398. package/dist/index.jsx.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatePicker.js","names":["JSX","Context","createContext","createEffect","createMemo","createSignal","onCleanup","splitProps","useContext","Show","Portal","createDatePicker","createDateRangePicker","createPopover","FocusScope","useUNSAFE_PortalContext","AriaDatePickerProps","AriaDateRangePickerProps","DatePickerState","AriaDatePickerState","createDateFieldState","createCalendarState","createRangeCalendarState","createDatePickerState","access","DateFieldState","CalendarStateProps","CalendarState","RangeCalendarState","DateFieldStateProps","DatePickerStateOptions","CalendarDate","DateValue","RangeCalendarStateProps","RangeValue","RenderChildren","ClassNameOrFunction","StyleOrFunction","SlotProps","useRenderProps","dataAttr","useIsHydrated","Provider","TextContext","DateFieldContext","CalendarContext","RangeCalendarContext","HiddenDateInput","FormContext","FormProps","DateRangePickerContext","useDateRangePickerContext","DateRangePickerContextValue","DateRangePickerFieldContextValue","DatePickerRenderProps","isDisabled","isReadOnly","isRequired","isInvalid","isOpen","DateRangePickerRenderProps","Omit","DatePickerContextValue","fieldState","datePickerState","calendarState","overlayState","open","close","toggle","triggerRef","HTMLElement","setTriggerRef","element","pickerAria","ReturnType","DatePickerProps","T","children","Element","class","style","locale","shouldCloseOnSelect","defaultOpen","onOpenChange","name","form","visibleMonths","pageBehavior","selectionAlignment","isDateDisabled","date","DateRangePickerProps","granularity","hourCycle","hideTimeZone","placeholderValue","startName","endName","validationBehavior","DatePickerButtonRenderProps","DatePickerButtonProps","DateRangePickerButtonProps","DatePickerContext","DatePickerStateContext","DateRangePickerStateContext","withFormValidationBehavior","props","P","formContext","Proxy","get","target","property","receiver","localValue","Reflect","undefined","has","ownKeys","keys","Set","add","Array","from","getOwnPropertyDescriptor","descriptor","enumerable","configurable","useDatePickerContext","context","Error","DatePicker","isHydrated","_$createComponent","when","fallback","_$getNextElement","_tmpl$","DatePickerInner","_$mergeProps","__formContext","DatePickerInnerProps","mergedProps","local","stateProps","rest","fieldRef","setFieldRef","HTMLDivElement","datePickerStateProps","value","defaultValue","onChange","minValue","maxValue","isDateUnavailable","validationState","setOpen","setValue","setDateValue","createCalendar","firstDayOfWeek","Record","description","errorMessage","contextValue","current","isConnected","builtinValidation","Boolean","renderValues","renderProps","defaultClassName","state","aria","labelProps","inputProps","fieldProps","descriptionProps","errorMessageProps","_el$2","_tmpl$2","_$use","_$spread","groupProps","data-disabled","data-readonly","data-required","data-invalid","data-open","_$insert","values","slots","_$runHydrationEvents","autoComplete","focus","querySelector","DateRangePicker","_tmpl$3","DateRangePickerInner","overlayProps","internalOpen","setInternalOpen","internalRangeValue","setInternalRangeValue","currentRangeValue","controlled","setCommittedRangeValue","start","end","startFieldValue","setStartFieldValue","endFieldValue","setEndFieldValue","rangeGranularity","setRangeFieldValue","part","nextValue","nextStart","nextEnd","rangeFieldStateProps","Partial","startFieldState","endFieldState","startFieldContext","startInputProps","endFieldContext","endInputProps","_el$4","DatePickerButton","getChildren","renderChildren","_el$5","_tmpl$4","el","buttonProps","disabled","DateRangePickerButton","_el$6","DatePickerContentProps","CSSProperties","DateRangePickerContentProps","DatePickerLabelProps","DatePickerLabel","_el$7","_tmpl$5","DatePickerDescriptionProps","DatePickerDescription","_el$8","_tmpl$6","DatePickerErrorMessageProps","DatePickerErrorMessage","_el$9","DateRangePickerLabelProps","DateRangePickerLabel","_el$0","DateRangePickerDescriptionProps","DateRangePickerDescription","_el$1","DateRangePickerErrorMessageProps","DateRangePickerErrorMessage","_el$10","createEscapeDismissFallback","document","onKeyDown","event","KeyboardEvent","key","defaultPrevented","isComposing","addEventListener","removeEventListener","DatePickerContent","portalContext","contentRef","portalContainer","getContainer","popoverAria","parentElement","popoverRef","placement","offset","isNonModal","isKeyboardDismissDisabled","cleanPopoverProps","_style","ref","_ref","popoverProps","mergedStyle","popoverStyle","requestAnimationFrame","mount","contain","restoreFocus","_el$11","_ref$","dialogProps","data-placement","DateRangePickerContent","_el$12","_ref$2","HiddenDateInputProps"],"sources":["../src/DatePicker.tsx"],"sourcesContent":["/**\n * DatePicker component for solidaria-components\n *\n * Pre-wired headless date picker component that combines a date field with a calendar popup.\n * Port of react-aria-components/src/DatePicker.tsx\n */\n\nimport {\n type JSX,\n type Context,\n createContext,\n createEffect,\n createMemo,\n createSignal,\n onCleanup,\n splitProps,\n useContext,\n Show,\n} from \"solid-js\";\nimport { Portal } from \"solid-js/web\";\nimport {\n createDatePicker,\n createDateRangePicker,\n createPopover,\n FocusScope,\n useUNSAFE_PortalContext,\n type AriaDatePickerProps,\n type AriaDateRangePickerProps,\n type DatePickerState as AriaDatePickerState,\n} from \"@proyecto-viviana/solidaria\";\nimport {\n createDateFieldState,\n createCalendarState,\n createRangeCalendarState,\n createDatePickerState,\n access,\n type DateFieldState,\n type DatePickerState,\n type CalendarStateProps,\n type CalendarState,\n type RangeCalendarState,\n type DateFieldStateProps,\n type DatePickerStateOptions,\n type CalendarDate,\n type DateValue,\n type RangeCalendarStateProps,\n type RangeValue,\n} from \"@proyecto-viviana/solid-stately\";\nimport {\n type RenderChildren,\n type ClassNameOrFunction,\n type StyleOrFunction,\n type SlotProps,\n useRenderProps,\n dataAttr,\n useIsHydrated,\n Provider,\n} from \"./utils\";\nimport { TextContext } from \"./Text\";\nimport { DateFieldContext } from \"./DateField\";\nimport { CalendarContext } from \"./Calendar\";\nimport { RangeCalendarContext } from \"./RangeCalendar\";\nimport { HiddenDateInput } from \"./HiddenDateInput\";\nimport { FormContext, type FormProps } from \"./Form\";\nimport {\n DateRangePickerContext,\n useDateRangePickerContext,\n type DateRangePickerContextValue,\n type DateRangePickerFieldContextValue,\n} from \"./DateRangePickerContext\";\n\nexport interface DatePickerRenderProps {\n /** Whether the picker is disabled. */\n isDisabled: boolean;\n /** Whether the picker is read-only. */\n isReadOnly: boolean;\n /** Whether the picker is required. */\n isRequired: boolean;\n /** Whether the picker is invalid. */\n isInvalid: boolean;\n /** Whether the calendar is open. */\n isOpen: boolean;\n}\n\nexport interface DateRangePickerRenderProps extends Omit<DatePickerRenderProps, \"isInvalid\"> {\n isInvalid: boolean;\n}\n\nexport interface DatePickerContextValue {\n fieldState: DateFieldState<DateValue>;\n datePickerState: DatePickerState<DateValue>;\n calendarState: CalendarState<DateValue>;\n overlayState: {\n isOpen: boolean;\n open: () => void;\n close: () => void;\n toggle: () => void;\n };\n triggerRef: () => HTMLElement | null;\n setTriggerRef: (element: HTMLElement | null) => void;\n pickerAria: ReturnType<typeof createDatePicker>;\n}\n\nexport type DatePickerProps<T extends DateValue = DateValue> = Omit<\n AriaDatePickerProps,\n \"id\" | \"isDisabled\" | \"isReadOnly\" | \"isRequired\" | \"minValue\" | \"maxValue\"\n> &\n Omit<DateFieldStateProps<T>, \"locale\"> &\n SlotProps & {\n /** The children of the component. */\n children?: JSX.Element;\n /** The CSS className for the element. */\n class?: ClassNameOrFunction<DatePickerRenderProps>;\n /** The inline style for the element. */\n style?: StyleOrFunction<DatePickerRenderProps>;\n /** The locale to use for formatting. */\n locale?: string;\n /** Whether the calendar should close when a date is selected. */\n shouldCloseOnSelect?: boolean;\n /** Whether the overlay is open by default (uncontrolled). */\n defaultOpen?: boolean;\n /** Whether the overlay is open (controlled). */\n isOpen?: boolean;\n /** Callback when the overlay open state changes. */\n onOpenChange?: (isOpen: boolean) => void;\n /** The name for the hidden date input used in HTML form submission. */\n name?: string;\n /** The associated form id for the hidden date input. */\n form?: string;\n /** The number of months to display in the calendar popover. */\n visibleMonths?: number;\n /** Controls whether calendar paging advances by one month or by the visible month range. */\n pageBehavior?: CalendarStateProps<T>[\"pageBehavior\"];\n /** Determines how visible months align around the initial focused date. */\n selectionAlignment?: CalendarStateProps<T>[\"selectionAlignment\"];\n /** A function that determines whether a date is disabled. */\n isDateDisabled?: (date: DateValue) => boolean;\n };\n\nexport interface DateRangePickerProps<T extends DateValue = DateValue>\n extends\n Omit<AriaDateRangePickerProps, \"id\" | \"isDisabled\" | \"isReadOnly\">,\n Omit<RangeCalendarStateProps<T>, \"locale\">,\n SlotProps {\n children?: JSX.Element;\n class?: ClassNameOrFunction<DateRangePickerRenderProps>;\n style?: StyleOrFunction<DateRangePickerRenderProps>;\n locale?: string;\n shouldCloseOnSelect?: boolean;\n /** Whether the overlay is open by default (uncontrolled). */\n defaultOpen?: boolean;\n /** Whether the overlay is open (controlled). */\n isOpen?: boolean;\n /** Callback when the overlay open state changes. */\n onOpenChange?: (isOpen: boolean) => void;\n /** The granularity of the date/time fields. */\n granularity?: \"day\" | \"hour\" | \"minute\" | \"second\";\n /** Whether to show the hour in 12 or 24 hour format. */\n hourCycle?: 12 | 24;\n /** Whether to hide the time zone in date/time fields. */\n hideTimeZone?: boolean;\n /** The placeholder date used to determine segment structure. */\n placeholderValue?: DateValue;\n /** The name for the start date input used in HTML form submission. */\n startName?: string;\n /** The name for the end date input used in HTML form submission. */\n endName?: string;\n /** The associated form id for the hidden start/end date inputs. */\n form?: string;\n /** Controls whether native or ARIA validation should be used. */\n validationBehavior?: \"native\" | \"aria\";\n}\n\nexport interface DatePickerButtonRenderProps {\n /** Whether the button is disabled. */\n isDisabled: boolean;\n /** Whether the calendar is open. */\n isOpen: boolean;\n}\n\nexport interface DatePickerButtonProps extends SlotProps {\n /** The children of the component. */\n children?: RenderChildren<DatePickerButtonRenderProps>;\n /** The CSS className for the element. */\n class?: ClassNameOrFunction<DatePickerButtonRenderProps>;\n /** The inline style for the element. */\n style?: StyleOrFunction<DatePickerButtonRenderProps>;\n /** Whether the button is disabled. */\n isDisabled?: boolean;\n}\n\nexport interface DateRangePickerButtonProps extends DatePickerButtonProps {}\n\nexport const DatePickerContext = createContext<DatePickerContextValue | null>(null);\nexport const DatePickerStateContext = createContext<DateFieldState<DateValue> | null>(null);\nexport const DateRangePickerStateContext = createContext<RangeCalendarState<DateValue> | null>(\n null,\n);\nexport { DateRangePickerContext, useDateRangePickerContext } from \"./DateRangePickerContext\";\nexport type {\n DateRangePickerContextValue,\n DateRangePickerFieldContextValue,\n} from \"./DateRangePickerContext\";\n\nfunction withFormValidationBehavior<P extends object>(props: P, formContext: FormProps | null): P {\n if (!formContext?.validationBehavior) {\n return props;\n }\n\n return new Proxy(props, {\n get(target, property, receiver) {\n const localValue = Reflect.get(target, property, receiver);\n if (property === \"validationBehavior\" && localValue === undefined) {\n return formContext.validationBehavior;\n }\n\n return localValue;\n },\n has(target, property) {\n return (\n Reflect.has(target, property) ||\n (property === \"validationBehavior\" && formContext.validationBehavior !== undefined)\n );\n },\n ownKeys(target) {\n const keys = new Set(Reflect.ownKeys(target));\n if (formContext.validationBehavior !== undefined) {\n keys.add(\"validationBehavior\");\n }\n\n return Array.from(keys);\n },\n getOwnPropertyDescriptor(target, property) {\n const descriptor = Reflect.getOwnPropertyDescriptor(target, property);\n if (descriptor) {\n return descriptor;\n }\n\n if (property === \"validationBehavior\" && formContext.validationBehavior !== undefined) {\n return {\n enumerable: true,\n configurable: true,\n get: () => formContext.validationBehavior,\n };\n }\n\n return undefined;\n },\n });\n}\n\nexport function useDatePickerContext(): DatePickerContextValue {\n const context = useContext(DatePickerContext);\n if (!context) {\n throw new Error(\"DatePicker components must be used within a DatePicker\");\n }\n return context;\n}\n\n/**\n * A date picker combines a DateField and a Calendar popover.\n *\n * @example\n * ```tsx\n * <DatePicker label=\"Event date\">\n * <Label>Event date</Label>\n * <Group>\n * <DateInput>\n * {(segment) => <DateSegment segment={segment} />}\n * </DateInput>\n * <DatePickerButton>📅</DatePickerButton>\n * </Group>\n * <Popover>\n * <Dialog>\n * <Calendar>\n * <CalendarGrid>\n * {(date) => <CalendarCell date={date} />}\n * </CalendarGrid>\n * </Calendar>\n * </Dialog>\n * </Popover>\n * </DatePicker>\n * ```\n */\nexport function DatePicker<T extends DateValue = CalendarDate>(\n props: DatePickerProps<T>,\n): JSX.Element {\n // Use hydration-safe pattern for client-only rendering\n const isHydrated = useIsHydrated();\n const formContext = useContext(FormContext);\n\n return (\n <Show\n when={isHydrated()}\n fallback={\n <div class=\"solidaria-DatePicker solidaria-DatePicker--placeholder\" aria-hidden=\"true\" />\n }\n >\n <DatePickerInner {...props} __formContext={formContext} />\n </Show>\n );\n}\n\ntype DatePickerInnerProps<T extends DateValue = DateValue> = DatePickerProps<T> & {\n __formContext?: FormProps | null;\n};\n\n/**\n * Internal DatePicker component that renders after client mount.\n */\nfunction DatePickerInner<T extends DateValue = CalendarDate>(\n props: DatePickerInnerProps<T>,\n): JSX.Element {\n const formContext = props.__formContext ?? useContext(FormContext);\n const mergedProps = withFormValidationBehavior(props, formContext);\n const [local, stateProps, rest] = splitProps(\n mergedProps,\n [\"children\", \"class\", \"style\", \"slot\", \"shouldCloseOnSelect\", \"__formContext\"],\n [\n \"value\",\n \"defaultValue\",\n \"onChange\",\n \"isOpen\",\n \"defaultOpen\",\n \"onOpenChange\",\n \"minValue\",\n \"maxValue\",\n \"isInvalid\",\n \"isDisabled\",\n \"isReadOnly\",\n \"isRequired\",\n \"locale\",\n \"granularity\",\n \"hourCycle\",\n \"hideTimeZone\",\n \"placeholderValue\",\n \"shouldForceLeadingZeros\",\n \"createCalendar\",\n \"validationState\",\n \"validationBehavior\",\n \"validate\",\n \"description\",\n \"errorMessage\",\n \"isDateUnavailable\",\n \"firstDayOfWeek\",\n \"visibleMonths\",\n \"pageBehavior\",\n \"selectionAlignment\",\n \"isDateDisabled\",\n ],\n );\n\n const [triggerRef, setTriggerRef] = createSignal<HTMLElement | null>(null);\n const [fieldRef, setFieldRef] = createSignal<HTMLDivElement | null>(null);\n\n // Unified state using createDatePickerState as single source of truth.\n // Use getters here so controlled props keep tracking after splitProps.\n const datePickerStateProps = {\n get value() {\n return stateProps.value;\n },\n get defaultValue() {\n return stateProps.defaultValue;\n },\n get onChange() {\n return stateProps.onChange;\n },\n get minValue() {\n return stateProps.minValue;\n },\n get maxValue() {\n return stateProps.maxValue;\n },\n get isDisabled() {\n return stateProps.isDisabled;\n },\n get isReadOnly() {\n return stateProps.isReadOnly;\n },\n get isRequired() {\n return stateProps.isRequired;\n },\n get granularity() {\n return stateProps.granularity;\n },\n get hourCycle() {\n return stateProps.hourCycle;\n },\n get hideTimeZone() {\n return stateProps.hideTimeZone;\n },\n get placeholderValue() {\n return stateProps.placeholderValue;\n },\n get shouldCloseOnSelect() {\n return local.shouldCloseOnSelect;\n },\n get defaultOpen() {\n return stateProps.defaultOpen;\n },\n get isOpen() {\n return stateProps.isOpen;\n },\n get onOpenChange() {\n return stateProps.onOpenChange;\n },\n get isDateUnavailable() {\n return stateProps.isDateUnavailable;\n },\n get validationState() {\n return stateProps.validationState;\n },\n } satisfies DatePickerStateOptions<T>;\n const datePickerState = createDatePickerState<T>(datePickerStateProps);\n\n const overlayState = {\n get isOpen() {\n return datePickerState.isOpen();\n },\n open: datePickerState.open,\n close: datePickerState.close,\n toggle: () => datePickerState.setOpen(!datePickerState.isOpen()),\n };\n\n // Create field state synced through datePickerState\n const fieldState = createDateFieldState<T>({\n ...stateProps,\n value: () => datePickerState.value(),\n onChange: (value) => {\n datePickerState.setValue(value);\n },\n });\n\n // Create calendar state synced through datePickerState\n const calendarState = createCalendarState<T>({\n value: () => datePickerState.value(),\n onChange: (value) => {\n if (!value) {\n return;\n }\n datePickerState.setDateValue(value);\n },\n minValue: stateProps.minValue,\n maxValue: stateProps.maxValue,\n isDisabled: stateProps.isDisabled,\n isReadOnly: stateProps.isReadOnly,\n locale: stateProps.locale,\n createCalendar: stateProps.createCalendar as CalendarStateProps<T>[\"createCalendar\"],\n isDateUnavailable: stateProps.isDateUnavailable,\n firstDayOfWeek: stateProps.firstDayOfWeek as 0 | 1 | 2 | 3 | 4 | 5 | 6 | undefined,\n visibleMonths: stateProps.visibleMonths,\n pageBehavior: stateProps.pageBehavior,\n selectionAlignment: stateProps.selectionAlignment,\n isDateDisabled: stateProps.isDateDisabled,\n });\n\n // Create date picker ARIA props\n const pickerAria = createDatePicker(\n () => ({\n ...(rest as Record<string, unknown>),\n description: stateProps.description,\n errorMessage: stateProps.errorMessage,\n }),\n fieldState as unknown as DateFieldState<DateValue>,\n overlayState as AriaDatePickerState,\n calendarState as unknown as CalendarState<DateValue>,\n );\n\n const contextValue: DatePickerContextValue = {\n fieldState: fieldState as unknown as DateFieldState<DateValue>,\n datePickerState: datePickerState as unknown as DatePickerState<DateValue>,\n calendarState: calendarState as unknown as CalendarState<DateValue>,\n overlayState,\n triggerRef,\n setTriggerRef: (element) => {\n if (!element) return;\n const current = triggerRef();\n if (!current || !current.isConnected) {\n setTriggerRef(() => element);\n }\n },\n pickerAria,\n };\n\n const isInvalid = createMemo(\n () =>\n fieldState.isInvalid() ||\n datePickerState.builtinValidation().isInvalid ||\n Boolean(stateProps.isInvalid),\n );\n\n const renderValues = createMemo<DatePickerRenderProps>(() => ({\n isDisabled: fieldState.isDisabled(),\n isReadOnly: fieldState.isReadOnly(),\n isRequired: fieldState.isRequired(),\n isInvalid: isInvalid(),\n isOpen: overlayState.isOpen,\n }));\n\n const renderProps = useRenderProps(\n {\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-DatePicker\",\n },\n renderValues,\n );\n\n const validationBehavior = () =>\n (stateProps as { validationBehavior?: \"aria\" | \"native\" }).validationBehavior ??\n formContext?.validationBehavior ??\n \"native\";\n\n return (\n <DatePickerStateContext.Provider value={fieldState as unknown as DateFieldState<DateValue>}>\n <DatePickerContext.Provider value={contextValue}>\n {/* Also provide DateFieldContext so DateInput/DateSegment work inside DatePicker */}\n <DateFieldContext.Provider\n value={{\n state: fieldState as unknown as DateFieldState<DateValue>,\n aria: {\n labelProps: pickerAria.labelProps,\n inputProps: pickerAria.fieldProps,\n descriptionProps: pickerAria.descriptionProps,\n errorMessageProps: pickerAria.errorMessageProps,\n },\n }}\n >\n <CalendarContext.Provider value={calendarState as unknown as CalendarState<DateValue>}>\n <div\n ref={setFieldRef}\n {...pickerAria.groupProps}\n class={renderProps.class()}\n style={renderProps.style()}\n data-disabled={dataAttr(fieldState.isDisabled())}\n data-readonly={dataAttr(fieldState.isReadOnly())}\n data-required={dataAttr(fieldState.isRequired())}\n data-invalid={dataAttr(isInvalid())}\n data-open={dataAttr(overlayState.isOpen)}\n >\n <Provider\n values={\n [\n [\n TextContext,\n {\n slots: {\n get description() {\n return pickerAria.descriptionProps;\n },\n get errorMessage() {\n return pickerAria.errorMessageProps;\n },\n },\n },\n ],\n ] as Array<[Context<unknown>, unknown]>\n }\n >\n {props.children}\n </Provider>\n </div>\n <Show when={(rest as Record<string, unknown>).name}>\n <HiddenDateInput\n name={(rest as Record<string, unknown>).name as string | undefined}\n form={(rest as Record<string, unknown>).form as string | undefined}\n value={() => datePickerState.value()}\n autoComplete={(rest as Record<string, unknown>).autoComplete as string | undefined}\n isDisabled={fieldState.isDisabled()}\n isRequired={fieldState.isRequired()}\n validationBehavior={validationBehavior()}\n validationState={fieldState}\n focus={() => {\n fieldRef()?.querySelector<HTMLElement>('[role=\"spinbutton\"]')?.focus();\n }}\n minValue={() => access(stateProps.minValue) as DateValue | undefined}\n maxValue={() => access(stateProps.maxValue) as DateValue | undefined}\n granularity={datePickerState.granularity}\n />\n </Show>\n </CalendarContext.Provider>\n </DateFieldContext.Provider>\n </DatePickerContext.Provider>\n </DatePickerStateContext.Provider>\n );\n}\n\nexport function DateRangePicker<T extends DateValue = CalendarDate>(\n props: DateRangePickerProps<T>,\n): JSX.Element {\n const isHydrated = useIsHydrated();\n return (\n <Show\n when={isHydrated()}\n fallback={\n <div\n class=\"solidaria-DateRangePicker solidaria-DateRangePicker--placeholder\"\n aria-hidden=\"true\"\n />\n }\n >\n <DateRangePickerInner {...props} />\n </Show>\n );\n}\n\nfunction DateRangePickerInner<T extends DateValue = CalendarDate>(\n props: DateRangePickerProps<T>,\n): JSX.Element {\n const [local, overlayProps, stateProps, rest] = splitProps(\n props,\n [\"children\", \"class\", \"style\", \"slot\", \"shouldCloseOnSelect\"],\n [\"defaultOpen\", \"isOpen\", \"onOpenChange\"],\n [\n \"value\",\n \"defaultValue\",\n \"onChange\",\n \"minValue\",\n \"maxValue\",\n \"isDisabled\",\n \"isReadOnly\",\n \"focusedValue\",\n \"defaultFocusedValue\",\n \"onFocusChange\",\n \"locale\",\n \"granularity\",\n \"hourCycle\",\n \"hideTimeZone\",\n \"placeholderValue\",\n \"createCalendar\",\n \"isDateUnavailable\",\n \"visibleMonths\",\n \"isDateDisabled\",\n \"validationState\",\n \"allowsNonContiguousRanges\",\n \"firstDayOfWeek\",\n \"pageBehavior\",\n \"selectionAlignment\",\n ],\n );\n\n const [internalOpen, setInternalOpen] = createSignal(overlayProps.defaultOpen ?? false);\n const isOpen = () => access(overlayProps.isOpen) ?? internalOpen();\n const setOpen = (open: boolean) => {\n if (access(overlayProps.isOpen) === undefined) {\n setInternalOpen(open);\n }\n overlayProps.onOpenChange?.(open);\n };\n\n let triggerRef: HTMLElement | null = null;\n const overlayState = {\n get isOpen() {\n return isOpen();\n },\n open: () => setOpen(true),\n close: () => setOpen(false),\n toggle: () => setOpen(!isOpen()),\n };\n\n const [internalRangeValue, setInternalRangeValue] = createSignal<RangeValue<T> | null>(\n stateProps.defaultValue ?? null,\n );\n const currentRangeValue = createMemo<RangeValue<T> | null>(() => {\n const controlled = access(stateProps.value);\n return controlled !== undefined ? controlled : internalRangeValue();\n });\n const setCommittedRangeValue = (value: RangeValue<T> | null) => {\n if (access(stateProps.value) === undefined) {\n setInternalRangeValue(() => value);\n }\n stateProps.onChange?.(value);\n };\n\n const calendarState = createRangeCalendarState({\n ...stateProps,\n value: currentRangeValue,\n onChange: (value) => {\n setCommittedRangeValue(value);\n if (local.shouldCloseOnSelect !== false && value?.start && value?.end) {\n setOpen(false);\n }\n },\n });\n\n const isInvalid = createMemo(\n () =>\n Boolean((rest as { isInvalid?: boolean }).isInvalid) ||\n calendarState.validationState() === \"invalid\",\n );\n const isRequired = createMemo(() => Boolean((rest as { isRequired?: boolean }).isRequired));\n const [startFieldValue, setStartFieldValue] = createSignal<T | null>(\n currentRangeValue()?.start ?? null,\n );\n const [endFieldValue, setEndFieldValue] = createSignal<T | null>(\n currentRangeValue()?.end ?? null,\n );\n const rangeGranularity = createMemo<\"day\" | \"hour\" | \"minute\" | \"second\">(() => {\n if (stateProps.granularity) {\n return stateProps.granularity;\n }\n const value = currentRangeValue()?.start ?? currentRangeValue()?.end;\n if (value && \"hour\" in value) {\n return \"second\" in value ? \"second\" : \"minute\";\n }\n return \"day\";\n });\n\n createEffect(() => {\n const value = currentRangeValue();\n setStartFieldValue(() => value?.start ?? null);\n setEndFieldValue(() => value?.end ?? null);\n });\n\n const setRangeFieldValue = (part: \"start\" | \"end\", nextValue: T | null) => {\n if (part === \"start\") {\n setStartFieldValue(() => nextValue);\n } else {\n setEndFieldValue(() => nextValue);\n }\n\n const nextStart = part === \"start\" ? nextValue : startFieldValue();\n const nextEnd = part === \"end\" ? nextValue : endFieldValue();\n\n setCommittedRangeValue(\n nextStart && nextEnd ? ({ start: nextStart, end: nextEnd } as RangeValue<T>) : null,\n );\n };\n\n const rangeFieldStateProps = {\n minValue: stateProps.minValue,\n maxValue: stateProps.maxValue,\n isDisabled: stateProps.isDisabled,\n isReadOnly: stateProps.isReadOnly,\n isRequired,\n locale: access(stateProps.locale),\n granularity: rangeGranularity(),\n hourCycle: stateProps.hourCycle,\n hideTimeZone: stateProps.hideTimeZone,\n placeholderValue: stateProps.placeholderValue,\n validationState: () => (isInvalid() ? \"invalid\" : access(stateProps.validationState)),\n // The range picker's isDateUnavailable is anchor-aware (date, anchorDate),\n // but a text field has no range anchor, so adapt it to the field's 1-arg form\n // by always passing a null anchor (checks raw per-date availability).\n isDateUnavailable: stateProps.isDateUnavailable\n ? (date: DateValue) => stateProps.isDateUnavailable!(date, null)\n : undefined,\n } satisfies Partial<DateFieldStateProps<T>>;\n\n const startFieldState = createDateFieldState<T>({\n ...rangeFieldStateProps,\n value: startFieldValue,\n onChange: (value) => setRangeFieldValue(\"start\", value),\n });\n\n const endFieldState = createDateFieldState<T>({\n ...rangeFieldStateProps,\n value: endFieldValue,\n onChange: (value) => setRangeFieldValue(\"end\", value),\n });\n\n const pickerAria = createDateRangePicker(\n () => ({\n ...(rest as Record<string, unknown>),\n description: (props as { description?: string }).description,\n errorMessage: (props as { errorMessage?: string }).errorMessage,\n }),\n calendarState as unknown as RangeCalendarState<DateValue>,\n overlayState as AriaDatePickerState,\n );\n\n const startFieldContext: DateRangePickerFieldContextValue = {\n state: startFieldState as unknown as DateFieldState<DateValue>,\n aria: {\n labelProps: {},\n get inputProps() {\n return pickerAria.startInputProps;\n },\n get descriptionProps() {\n return pickerAria.descriptionProps;\n },\n get errorMessageProps() {\n return pickerAria.errorMessageProps;\n },\n },\n };\n\n const endFieldContext: DateRangePickerFieldContextValue = {\n state: endFieldState as unknown as DateFieldState<DateValue>,\n aria: {\n labelProps: {},\n get inputProps() {\n return pickerAria.endInputProps;\n },\n get descriptionProps() {\n return pickerAria.descriptionProps;\n },\n get errorMessageProps() {\n return pickerAria.errorMessageProps;\n },\n },\n };\n\n const contextValue: DateRangePickerContextValue = {\n calendarState: calendarState as unknown as RangeCalendarState<DateValue>,\n startFieldState: startFieldState as unknown as DateFieldState<DateValue>,\n endFieldState: endFieldState as unknown as DateFieldState<DateValue>,\n startFieldContext,\n endFieldContext,\n overlayState,\n triggerRef: () => triggerRef,\n setTriggerRef: (element) => {\n if (!element) return;\n if (!triggerRef || !triggerRef.isConnected) triggerRef = element;\n },\n pickerAria,\n };\n\n const renderValues = createMemo<DateRangePickerRenderProps>(() => ({\n isDisabled: calendarState.isDisabled(),\n isReadOnly: calendarState.isReadOnly(),\n isRequired: isRequired(),\n isInvalid: isInvalid(),\n isOpen: overlayState.isOpen,\n }));\n\n const renderProps = useRenderProps(\n {\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-DateRangePicker\",\n },\n renderValues,\n );\n\n return (\n <DateRangePickerStateContext.Provider\n value={calendarState as unknown as RangeCalendarState<DateValue>}\n >\n <DateRangePickerContext.Provider value={contextValue}>\n <RangeCalendarContext.Provider\n value={calendarState as unknown as RangeCalendarState<DateValue>}\n >\n <div\n {...pickerAria.groupProps}\n class={renderProps.class()}\n style={renderProps.style()}\n data-disabled={dataAttr(calendarState.isDisabled())}\n data-readonly={dataAttr(calendarState.isReadOnly())}\n data-required={dataAttr(isRequired())}\n data-invalid={dataAttr(isInvalid())}\n data-open={dataAttr(overlayState.isOpen)}\n >\n <Provider\n values={\n [\n [\n TextContext,\n {\n slots: {\n get description() {\n return pickerAria.descriptionProps;\n },\n get errorMessage() {\n return pickerAria.errorMessageProps;\n },\n },\n },\n ],\n ] as Array<[Context<unknown>, unknown]>\n }\n >\n {props.children}\n </Provider>\n </div>\n <Show when={(rest as Record<string, unknown>).startName}>\n <HiddenDateInput\n name={(rest as Record<string, unknown>).startName as string | undefined}\n form={(rest as Record<string, unknown>).form as string | undefined}\n value={() => currentRangeValue()?.start ?? null}\n isDisabled={access(stateProps.isDisabled) ?? false}\n minValue={() => access(stateProps.minValue) as DateValue | undefined}\n maxValue={() => access(stateProps.maxValue) as DateValue | undefined}\n granularity={rangeGranularity()}\n />\n </Show>\n <Show when={(rest as Record<string, unknown>).endName}>\n <HiddenDateInput\n name={(rest as Record<string, unknown>).endName as string | undefined}\n form={(rest as Record<string, unknown>).form as string | undefined}\n value={() => currentRangeValue()?.end ?? null}\n isDisabled={access(stateProps.isDisabled) ?? false}\n minValue={() => access(stateProps.minValue) as DateValue | undefined}\n maxValue={() => access(stateProps.maxValue) as DateValue | undefined}\n granularity={rangeGranularity()}\n />\n </Show>\n </RangeCalendarContext.Provider>\n </DateRangePickerContext.Provider>\n </DateRangePickerStateContext.Provider>\n );\n}\n\n/**\n * A button that opens the date picker calendar.\n */\nexport function DatePickerButton(props: DatePickerButtonProps): JSX.Element {\n const context = useDatePickerContext();\n\n const renderValues = createMemo<DatePickerButtonRenderProps>(() => ({\n isDisabled: context.fieldState.isDisabled() || (props.isDisabled ?? false),\n isOpen: context.overlayState.isOpen,\n }));\n\n const renderProps = useRenderProps(\n {\n get children() {\n return props.children;\n },\n class: props.class,\n style: props.style,\n defaultClassName: \"solidaria-DatePickerButton\",\n },\n renderValues,\n );\n\n // Determine children content - avoid Show for SSR hydration compatibility\n const getChildren = () => {\n if (typeof props.children === \"function\") {\n return renderProps.renderChildren();\n }\n return props.children ?? \"📅\";\n };\n\n return (\n <button\n ref={(el) => {\n context.setTriggerRef(el);\n }}\n {...context.pickerAria.buttonProps}\n class={renderProps.class()}\n style={renderProps.style()}\n disabled={context.fieldState.isDisabled() || props.isDisabled}\n data-disabled={dataAttr(context.fieldState.isDisabled() || props.isDisabled)}\n data-open={dataAttr(context.overlayState.isOpen)}\n >\n {getChildren()}\n </button>\n );\n}\n\nexport function DateRangePickerButton(props: DateRangePickerButtonProps): JSX.Element {\n const context = useDateRangePickerContext();\n\n const renderValues = createMemo<DatePickerButtonRenderProps>(() => ({\n isDisabled: context.calendarState.isDisabled() || (props.isDisabled ?? false),\n isOpen: context.overlayState.isOpen,\n }));\n\n const renderProps = useRenderProps(\n {\n get children() {\n return props.children;\n },\n class: props.class,\n style: props.style,\n defaultClassName: \"solidaria-DateRangePickerButton\",\n },\n renderValues,\n );\n\n const getChildren = () => {\n if (typeof props.children === \"function\") {\n return renderProps.renderChildren();\n }\n return props.children ?? \"📅\";\n };\n\n return (\n <button\n ref={(el) => context.setTriggerRef(el)}\n {...context.pickerAria.buttonProps}\n class={renderProps.class()}\n style={renderProps.style()}\n disabled={context.calendarState.isDisabled() || props.isDisabled}\n data-disabled={dataAttr(context.calendarState.isDisabled() || props.isDisabled)}\n data-open={dataAttr(context.overlayState.isOpen)}\n >\n {getChildren()}\n </button>\n );\n}\n\nexport interface DatePickerContentProps extends SlotProps {\n /** The children of the component. */\n children?: JSX.Element;\n /** The CSS className for the element. */\n class?: string;\n /** The inline style for the element. */\n style?: JSX.CSSProperties;\n}\n\nexport interface DateRangePickerContentProps extends DatePickerContentProps {}\n\nexport interface DatePickerLabelProps {\n children?: JSX.Element;\n class?: string;\n}\n\nexport function DatePickerLabel(props: DatePickerLabelProps): JSX.Element {\n const context = useDatePickerContext();\n return (\n <span {...context.pickerAria.labelProps} class={props.class}>\n {props.children}\n </span>\n );\n}\n\nexport interface DatePickerDescriptionProps {\n children?: JSX.Element;\n class?: string;\n}\n\nexport function DatePickerDescription(props: DatePickerDescriptionProps): JSX.Element {\n const context = useDatePickerContext();\n return (\n <p {...context.pickerAria.descriptionProps} class={props.class}>\n {props.children}\n </p>\n );\n}\n\nexport interface DatePickerErrorMessageProps {\n children?: JSX.Element;\n class?: string;\n}\n\nexport function DatePickerErrorMessage(props: DatePickerErrorMessageProps): JSX.Element {\n const context = useDatePickerContext();\n return (\n <p {...context.pickerAria.errorMessageProps} class={props.class}>\n {props.children}\n </p>\n );\n}\n\nexport interface DateRangePickerLabelProps {\n children?: JSX.Element;\n class?: string;\n}\n\nexport function DateRangePickerLabel(props: DateRangePickerLabelProps): JSX.Element {\n const context = useDateRangePickerContext();\n return (\n <span {...context.pickerAria.labelProps} class={props.class}>\n {props.children}\n </span>\n );\n}\n\nexport interface DateRangePickerDescriptionProps {\n children?: JSX.Element;\n class?: string;\n}\n\nexport function DateRangePickerDescription(props: DateRangePickerDescriptionProps): JSX.Element {\n const context = useDateRangePickerContext();\n return (\n <p {...context.pickerAria.descriptionProps} class={props.class}>\n {props.children}\n </p>\n );\n}\n\nexport interface DateRangePickerErrorMessageProps {\n children?: JSX.Element;\n class?: string;\n}\n\nexport function DateRangePickerErrorMessage(props: DateRangePickerErrorMessageProps): JSX.Element {\n const context = useDateRangePickerContext();\n return (\n <p {...context.pickerAria.errorMessageProps} class={props.class}>\n {props.children}\n </p>\n );\n}\n\nfunction createEscapeDismissFallback(isOpen: () => boolean, close: () => void): void {\n createEffect(() => {\n if (!isOpen() || typeof document === \"undefined\") return;\n\n const onKeyDown = (event: KeyboardEvent) => {\n if (event.key !== \"Escape\" || event.defaultPrevented || event.isComposing) return;\n close();\n };\n\n document.addEventListener(\"keydown\", onKeyDown);\n onCleanup(() => document.removeEventListener(\"keydown\", onKeyDown));\n });\n}\n\n/**\n * The content area of the date picker (typically contains a Calendar).\n */\nexport function DatePickerContent(props: DatePickerContentProps): JSX.Element {\n const context = useDatePickerContext();\n const portalContext = useUNSAFE_PortalContext();\n let contentRef: HTMLDivElement | undefined;\n const portalContainer = () => portalContext.getContainer?.() ?? undefined;\n\n const popoverAria = createPopover(\n {\n triggerRef: () => context.triggerRef()?.parentElement ?? context.triggerRef(),\n popoverRef: () => contentRef ?? null,\n placement: \"bottom start\",\n offset: 8,\n isNonModal: false,\n isKeyboardDismissDisabled: false,\n },\n {\n isOpen: () => context.overlayState.isOpen,\n open: context.overlayState.open,\n close: context.overlayState.close,\n toggle: context.overlayState.toggle,\n },\n );\n\n createEscapeDismissFallback(() => context.overlayState.isOpen, context.overlayState.close);\n\n const cleanPopoverProps = () => {\n const {\n style: _style,\n ref: _ref,\n ...rest\n } = popoverAria.popoverProps as Record<string, unknown>;\n return rest;\n };\n\n const mergedStyle = (): JSX.CSSProperties => {\n const popoverStyle = (popoverAria.popoverProps as Record<string, unknown>).style as\n | JSX.CSSProperties\n | undefined;\n return {\n ...popoverStyle,\n ...props.style,\n };\n };\n\n // Return focus to trigger when overlay closes\n createEffect(() => {\n const open = context.overlayState.isOpen;\n if (!open) {\n requestAnimationFrame(() => context.triggerRef()?.focus());\n }\n });\n\n return (\n <Show when={context.overlayState.isOpen}>\n <Portal mount={portalContainer()}>\n <FocusScope contain restoreFocus>\n <div\n ref={contentRef}\n {...cleanPopoverProps()}\n {...context.pickerAria.dialogProps}\n tabIndex={-1}\n class={props.class ?? \"solidaria-DatePickerContent\"}\n style={mergedStyle()}\n data-placement={popoverAria.placement() ?? undefined}\n >\n {props.children}\n </div>\n </FocusScope>\n </Portal>\n </Show>\n );\n}\n\nexport function DateRangePickerContent(props: DateRangePickerContentProps): JSX.Element {\n const context = useDateRangePickerContext();\n const portalContext = useUNSAFE_PortalContext();\n let contentRef: HTMLDivElement | undefined;\n const portalContainer = () => portalContext.getContainer?.() ?? undefined;\n\n const popoverAria = createPopover(\n {\n triggerRef: () => context.triggerRef()?.parentElement ?? context.triggerRef(),\n popoverRef: () => contentRef ?? null,\n placement: \"bottom start\",\n offset: 8,\n isNonModal: false,\n isKeyboardDismissDisabled: false,\n },\n {\n isOpen: () => context.overlayState.isOpen,\n open: context.overlayState.open,\n close: context.overlayState.close,\n toggle: context.overlayState.toggle,\n },\n );\n\n createEscapeDismissFallback(() => context.overlayState.isOpen, context.overlayState.close);\n\n const cleanPopoverProps = () => {\n const {\n style: _style,\n ref: _ref,\n ...rest\n } = popoverAria.popoverProps as Record<string, unknown>;\n return rest;\n };\n\n const mergedStyle = (): JSX.CSSProperties => {\n const popoverStyle = (popoverAria.popoverProps as Record<string, unknown>).style as\n | JSX.CSSProperties\n | undefined;\n return {\n ...popoverStyle,\n ...props.style,\n };\n };\n\n // Return focus to trigger when overlay closes\n createEffect(() => {\n const open = context.overlayState.isOpen;\n if (!open) {\n requestAnimationFrame(() => context.triggerRef()?.focus());\n }\n });\n\n return (\n <Show when={context.overlayState.isOpen}>\n <Portal mount={portalContainer()}>\n <FocusScope contain restoreFocus>\n <div\n ref={contentRef}\n {...cleanPopoverProps()}\n {...context.pickerAria.dialogProps}\n tabIndex={-1}\n class={props.class ?? \"solidaria-DateRangePickerContent\"}\n style={mergedStyle()}\n data-placement={popoverAria.placement() ?? undefined}\n >\n {props.children}\n </div>\n </FocusScope>\n </Portal>\n </Show>\n );\n}\n\nexport { HiddenDateInput } from \"./HiddenDateInput\";\nexport type { HiddenDateInputProps } from \"./HiddenDateInput\";\n\n// DatePickerContextValue is already exported at declaration\n"],"mappings":"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"}