@multiplatform.one/forms 7.6.2 → 7.7.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 (492) hide show
  1. package/dist/cjs/Button/index.cjs +7 -1
  2. package/dist/cjs/Button/index.native.js +7 -1
  3. package/dist/cjs/Button/index.native.js.map +1 -1
  4. package/dist/cjs/Chip/index.cjs +1 -3
  5. package/dist/cjs/Chip/index.native.js +5 -3
  6. package/dist/cjs/Chip/index.native.js.map +1 -1
  7. package/dist/cjs/ContextualSaveBar/index.cjs +19 -3
  8. package/dist/cjs/ContextualSaveBar/index.native.js +19 -3
  9. package/dist/cjs/ContextualSaveBar/index.native.js.map +1 -1
  10. package/dist/cjs/DescriptionList/index.cjs +38 -12
  11. package/dist/cjs/DescriptionList/index.native.js +38 -12
  12. package/dist/cjs/DescriptionList/index.native.js.map +1 -1
  13. package/dist/cjs/ErrorSummary.cjs +4 -1
  14. package/dist/cjs/ErrorSummary.native.js +4 -1
  15. package/dist/cjs/ErrorSummary.native.js.map +1 -1
  16. package/dist/cjs/FloatingPanel/useFloatingPanel.cjs +24 -2
  17. package/dist/cjs/FloatingPanel/useFloatingPanel.native.js +43 -2
  18. package/dist/cjs/FloatingPanel/useFloatingPanel.native.js.map +1 -1
  19. package/dist/cjs/InputParts/index.cjs +42 -2
  20. package/dist/cjs/InputParts/index.native.js +42 -2
  21. package/dist/cjs/InputParts/index.native.js.map +1 -1
  22. package/dist/cjs/fields/Checkbox/Checkbox.cjs +5 -2
  23. package/dist/cjs/fields/Checkbox/Checkbox.native.js +6 -3
  24. package/dist/cjs/fields/Checkbox/Checkbox.native.js.map +1 -1
  25. package/dist/cjs/fields/Checkbox/CheckboxGroup.cjs +69 -59
  26. package/dist/cjs/fields/Checkbox/CheckboxGroup.native.js +75 -65
  27. package/dist/cjs/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
  28. package/dist/cjs/fields/Checkbox/checkboxGroupContext.cjs +33 -0
  29. package/dist/cjs/fields/Checkbox/checkboxGroupContext.native.js +36 -0
  30. package/dist/cjs/fields/Checkbox/checkboxGroupContext.native.js.map +1 -0
  31. package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.cjs +402 -0
  32. package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js +441 -0
  33. package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -0
  34. package/dist/cjs/fields/DatePicker/DatetimePicker.cjs +2 -376
  35. package/dist/cjs/fields/DatePicker/DatetimePicker.native.js +69 -297
  36. package/dist/cjs/fields/DatePicker/DatetimePicker.native.js.map +1 -1
  37. package/dist/cjs/fields/DatePicker/catalog.cjs +306 -0
  38. package/dist/cjs/fields/DatePicker/catalog.native.js +350 -0
  39. package/dist/cjs/fields/DatePicker/catalog.native.js.map +1 -0
  40. package/dist/cjs/fields/DatePicker/index.cjs +7 -280
  41. package/dist/cjs/fields/DatePicker/index.native.js +66 -185
  42. package/dist/cjs/fields/DatePicker/index.native.js.map +1 -1
  43. package/dist/cjs/fields/DatePicker/parts.cjs +12 -9
  44. package/dist/cjs/fields/DatePicker/parts.native.js +12 -9
  45. package/dist/cjs/fields/DatePicker/parts.native.js.map +1 -1
  46. package/dist/cjs/fields/Duration/index.cjs +29 -3
  47. package/dist/cjs/fields/Duration/index.native.js +29 -3
  48. package/dist/cjs/fields/Duration/index.native.js.map +1 -1
  49. package/dist/cjs/fields/PhoneInput/index.cjs +9 -4
  50. package/dist/cjs/fields/PhoneInput/index.native.js +13 -6
  51. package/dist/cjs/fields/PhoneInput/index.native.js.map +1 -1
  52. package/dist/cjs/fields/Rating/index.cjs +1 -1
  53. package/dist/cjs/fields/Rating/index.native.js +4 -1
  54. package/dist/cjs/fields/Rating/index.native.js.map +1 -1
  55. package/dist/cjs/fields/SearchInput/index.cjs +6 -0
  56. package/dist/cjs/fields/SearchInput/index.native.js +6 -0
  57. package/dist/cjs/fields/SearchInput/index.native.js.map +1 -1
  58. package/dist/cjs/fields/Select/index.cjs +75 -2
  59. package/dist/cjs/fields/Select/index.native.js +77 -2
  60. package/dist/cjs/fields/Select/index.native.js.map +1 -1
  61. package/dist/cjs/fields/Signature/index.cjs +9 -5
  62. package/dist/cjs/fields/Signature/index.native.js +9 -5
  63. package/dist/cjs/fields/Signature/index.native.js.map +1 -1
  64. package/dist/cjs/fields/Slider/index.cjs +3 -1
  65. package/dist/cjs/fields/Slider/index.native.js +3 -1
  66. package/dist/cjs/fields/Slider/index.native.js.map +1 -1
  67. package/dist/cjs/fields/Switch/index.cjs +5 -18
  68. package/dist/cjs/fields/Switch/index.native.js +5 -18
  69. package/dist/cjs/fields/Switch/index.native.js.map +1 -1
  70. package/dist/cjs/fields/TextArea/index.cjs +19 -5
  71. package/dist/cjs/fields/TextArea/index.native.js +23 -5
  72. package/dist/cjs/fields/TextArea/index.native.js.map +1 -1
  73. package/dist/cjs/fields/TimePicker/catalog.cjs +203 -0
  74. package/dist/cjs/fields/TimePicker/catalog.native.js +227 -0
  75. package/dist/cjs/fields/TimePicker/catalog.native.js.map +1 -0
  76. package/dist/cjs/fields/TimePicker/index.cjs +6 -177
  77. package/dist/cjs/fields/TimePicker/index.native.js +74 -85
  78. package/dist/cjs/fields/TimePicker/index.native.js.map +1 -1
  79. package/dist/cjs/fields/TimeRangeScrubber/geometry.cjs +6 -0
  80. package/dist/cjs/fields/TimeRangeScrubber/geometry.native.js +6 -0
  81. package/dist/cjs/fields/TimeRangeScrubber/geometry.native.js.map +1 -1
  82. package/dist/cjs/fields/TimeRangeScrubber/index.cjs +34 -14
  83. package/dist/cjs/fields/TimeRangeScrubber/index.native.js +38 -14
  84. package/dist/cjs/fields/TimeRangeScrubber/index.native.js.map +1 -1
  85. package/dist/cjs/fields/nativeDateTime/OsDateTimeSheet.cjs +202 -0
  86. package/dist/cjs/fields/nativeDateTime/OsDateTimeSheet.native.js +211 -0
  87. package/dist/cjs/fields/nativeDateTime/OsDateTimeSheet.native.js.map +1 -0
  88. package/dist/cjs/fields/nativeDateTime/osDateTimeIosDisplay.cjs +30 -0
  89. package/dist/cjs/fields/nativeDateTime/osDateTimeIosDisplay.native.js +33 -0
  90. package/dist/cjs/fields/nativeDateTime/osDateTimeIosDisplay.native.js.map +1 -0
  91. package/dist/cjs/fields/nativeSelect.cjs +30 -0
  92. package/dist/cjs/fields/nativeSelect.native.js +33 -0
  93. package/dist/cjs/fields/nativeSelect.native.js.map +1 -0
  94. package/dist/cjs/index.cjs +1 -0
  95. package/dist/cjs/index.native.js +1 -0
  96. package/dist/cjs/index.native.js.map +1 -1
  97. package/dist/cjs/themedPrimitives.cjs +5 -0
  98. package/dist/cjs/themedPrimitives.native.js +5 -0
  99. package/dist/cjs/themedPrimitives.native.js.map +1 -1
  100. package/dist/esm/Button/index.mjs +8 -2
  101. package/dist/esm/Button/index.mjs.map +1 -1
  102. package/dist/esm/Button/index.native.js +8 -2
  103. package/dist/esm/Button/index.native.js.map +1 -1
  104. package/dist/esm/Chip/index.mjs +1 -3
  105. package/dist/esm/Chip/index.mjs.map +1 -1
  106. package/dist/esm/Chip/index.native.js +5 -3
  107. package/dist/esm/Chip/index.native.js.map +1 -1
  108. package/dist/esm/ContextualSaveBar/index.mjs +19 -3
  109. package/dist/esm/ContextualSaveBar/index.mjs.map +1 -1
  110. package/dist/esm/ContextualSaveBar/index.native.js +19 -3
  111. package/dist/esm/ContextualSaveBar/index.native.js.map +1 -1
  112. package/dist/esm/DescriptionList/index.mjs +38 -12
  113. package/dist/esm/DescriptionList/index.mjs.map +1 -1
  114. package/dist/esm/DescriptionList/index.native.js +38 -12
  115. package/dist/esm/DescriptionList/index.native.js.map +1 -1
  116. package/dist/esm/ErrorSummary.mjs +5 -2
  117. package/dist/esm/ErrorSummary.mjs.map +1 -1
  118. package/dist/esm/ErrorSummary.native.js +5 -2
  119. package/dist/esm/ErrorSummary.native.js.map +1 -1
  120. package/dist/esm/FloatingPanel/useFloatingPanel.mjs +24 -3
  121. package/dist/esm/FloatingPanel/useFloatingPanel.mjs.map +1 -1
  122. package/dist/esm/FloatingPanel/useFloatingPanel.native.js +43 -3
  123. package/dist/esm/FloatingPanel/useFloatingPanel.native.js.map +1 -1
  124. package/dist/esm/InputParts/index.mjs +43 -3
  125. package/dist/esm/InputParts/index.mjs.map +1 -1
  126. package/dist/esm/InputParts/index.native.js +43 -3
  127. package/dist/esm/InputParts/index.native.js.map +1 -1
  128. package/dist/esm/fields/Checkbox/Checkbox.mjs +5 -2
  129. package/dist/esm/fields/Checkbox/Checkbox.mjs.map +1 -1
  130. package/dist/esm/fields/Checkbox/Checkbox.native.js +6 -3
  131. package/dist/esm/fields/Checkbox/Checkbox.native.js.map +1 -1
  132. package/dist/esm/fields/Checkbox/CheckboxGroup.mjs +69 -59
  133. package/dist/esm/fields/Checkbox/CheckboxGroup.mjs.map +1 -1
  134. package/dist/esm/fields/Checkbox/CheckboxGroup.native.js +75 -65
  135. package/dist/esm/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
  136. package/dist/esm/fields/Checkbox/checkboxGroupContext.mjs +7 -0
  137. package/dist/esm/fields/Checkbox/checkboxGroupContext.mjs.map +1 -0
  138. package/dist/esm/fields/Checkbox/checkboxGroupContext.native.js +7 -0
  139. package/dist/esm/fields/Checkbox/checkboxGroupContext.native.js.map +1 -0
  140. package/dist/esm/fields/DatePicker/DatetimePicker.catalog.mjs +377 -0
  141. package/dist/esm/fields/DatePicker/DatetimePicker.catalog.mjs.map +1 -0
  142. package/dist/esm/fields/DatePicker/DatetimePicker.catalog.native.js +413 -0
  143. package/dist/esm/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -0
  144. package/dist/esm/fields/DatePicker/DatetimePicker.mjs +1 -375
  145. package/dist/esm/fields/DatePicker/DatetimePicker.mjs.map +1 -1
  146. package/dist/esm/fields/DatePicker/DatetimePicker.native.js +65 -293
  147. package/dist/esm/fields/DatePicker/DatetimePicker.native.js.map +1 -1
  148. package/dist/esm/fields/DatePicker/catalog.mjs +276 -0
  149. package/dist/esm/fields/DatePicker/catalog.mjs.map +1 -0
  150. package/dist/esm/fields/DatePicker/catalog.native.js +317 -0
  151. package/dist/esm/fields/DatePicker/catalog.native.js.map +1 -0
  152. package/dist/esm/fields/DatePicker/index.mjs +1 -274
  153. package/dist/esm/fields/DatePicker/index.mjs.map +1 -1
  154. package/dist/esm/fields/DatePicker/index.native.js +60 -179
  155. package/dist/esm/fields/DatePicker/index.native.js.map +1 -1
  156. package/dist/esm/fields/DatePicker/parts.mjs +13 -10
  157. package/dist/esm/fields/DatePicker/parts.mjs.map +1 -1
  158. package/dist/esm/fields/DatePicker/parts.native.js +13 -10
  159. package/dist/esm/fields/DatePicker/parts.native.js.map +1 -1
  160. package/dist/esm/fields/Duration/index.mjs +29 -4
  161. package/dist/esm/fields/Duration/index.mjs.map +1 -1
  162. package/dist/esm/fields/Duration/index.native.js +29 -4
  163. package/dist/esm/fields/Duration/index.native.js.map +1 -1
  164. package/dist/esm/fields/PhoneInput/index.mjs +9 -4
  165. package/dist/esm/fields/PhoneInput/index.mjs.map +1 -1
  166. package/dist/esm/fields/PhoneInput/index.native.js +13 -6
  167. package/dist/esm/fields/PhoneInput/index.native.js.map +1 -1
  168. package/dist/esm/fields/Rating/index.mjs +2 -2
  169. package/dist/esm/fields/Rating/index.mjs.map +1 -1
  170. package/dist/esm/fields/Rating/index.native.js +5 -2
  171. package/dist/esm/fields/Rating/index.native.js.map +1 -1
  172. package/dist/esm/fields/SearchInput/index.mjs +6 -0
  173. package/dist/esm/fields/SearchInput/index.mjs.map +1 -1
  174. package/dist/esm/fields/SearchInput/index.native.js +6 -0
  175. package/dist/esm/fields/SearchInput/index.native.js.map +1 -1
  176. package/dist/esm/fields/Select/index.mjs +76 -3
  177. package/dist/esm/fields/Select/index.mjs.map +1 -1
  178. package/dist/esm/fields/Select/index.native.js +78 -3
  179. package/dist/esm/fields/Select/index.native.js.map +1 -1
  180. package/dist/esm/fields/Signature/index.mjs +10 -6
  181. package/dist/esm/fields/Signature/index.mjs.map +1 -1
  182. package/dist/esm/fields/Signature/index.native.js +10 -6
  183. package/dist/esm/fields/Signature/index.native.js.map +1 -1
  184. package/dist/esm/fields/Slider/index.mjs +4 -2
  185. package/dist/esm/fields/Slider/index.mjs.map +1 -1
  186. package/dist/esm/fields/Slider/index.native.js +4 -2
  187. package/dist/esm/fields/Slider/index.native.js.map +1 -1
  188. package/dist/esm/fields/Switch/index.mjs +6 -19
  189. package/dist/esm/fields/Switch/index.mjs.map +1 -1
  190. package/dist/esm/fields/Switch/index.native.js +6 -19
  191. package/dist/esm/fields/Switch/index.native.js.map +1 -1
  192. package/dist/esm/fields/TextArea/index.mjs +19 -5
  193. package/dist/esm/fields/TextArea/index.mjs.map +1 -1
  194. package/dist/esm/fields/TextArea/index.native.js +23 -5
  195. package/dist/esm/fields/TextArea/index.native.js.map +1 -1
  196. package/dist/esm/fields/TimePicker/catalog.mjs +174 -0
  197. package/dist/esm/fields/TimePicker/catalog.mjs.map +1 -0
  198. package/dist/esm/fields/TimePicker/catalog.native.js +195 -0
  199. package/dist/esm/fields/TimePicker/catalog.native.js.map +1 -0
  200. package/dist/esm/fields/TimePicker/index.mjs +2 -173
  201. package/dist/esm/fields/TimePicker/index.mjs.map +1 -1
  202. package/dist/esm/fields/TimePicker/index.native.js +76 -87
  203. package/dist/esm/fields/TimePicker/index.native.js.map +1 -1
  204. package/dist/esm/fields/TimeRangeScrubber/geometry.mjs +6 -1
  205. package/dist/esm/fields/TimeRangeScrubber/geometry.mjs.map +1 -1
  206. package/dist/esm/fields/TimeRangeScrubber/geometry.native.js +6 -1
  207. package/dist/esm/fields/TimeRangeScrubber/geometry.native.js.map +1 -1
  208. package/dist/esm/fields/TimeRangeScrubber/index.mjs +37 -18
  209. package/dist/esm/fields/TimeRangeScrubber/index.mjs.map +1 -1
  210. package/dist/esm/fields/TimeRangeScrubber/index.native.js +41 -18
  211. package/dist/esm/fields/TimeRangeScrubber/index.native.js.map +1 -1
  212. package/dist/esm/fields/nativeDateTime/OsDateTimeSheet.mjs +166 -0
  213. package/dist/esm/fields/nativeDateTime/OsDateTimeSheet.mjs.map +1 -0
  214. package/dist/esm/fields/nativeDateTime/OsDateTimeSheet.native.js +172 -0
  215. package/dist/esm/fields/nativeDateTime/OsDateTimeSheet.native.js.map +1 -0
  216. package/dist/esm/fields/nativeDateTime/osDateTimeIosDisplay.mjs +5 -0
  217. package/dist/esm/fields/nativeDateTime/osDateTimeIosDisplay.mjs.map +1 -0
  218. package/dist/esm/fields/nativeDateTime/osDateTimeIosDisplay.native.js +5 -0
  219. package/dist/esm/fields/nativeDateTime/osDateTimeIosDisplay.native.js.map +1 -0
  220. package/dist/esm/fields/nativeSelect.mjs +5 -0
  221. package/dist/esm/fields/nativeSelect.mjs.map +1 -0
  222. package/dist/esm/fields/nativeSelect.native.js +5 -0
  223. package/dist/esm/fields/nativeSelect.native.js.map +1 -0
  224. package/dist/esm/index.mjs +2 -2
  225. package/dist/esm/index.mjs.map +1 -1
  226. package/dist/esm/index.native.js +2 -2
  227. package/dist/esm/index.native.js.map +1 -1
  228. package/dist/esm/themedPrimitives.mjs +5 -0
  229. package/dist/esm/themedPrimitives.mjs.map +1 -1
  230. package/dist/esm/themedPrimitives.native.js +5 -0
  231. package/dist/esm/themedPrimitives.native.js.map +1 -1
  232. package/dist/jsx/Button/index.mjs +8 -2
  233. package/dist/jsx/Button/index.mjs.map +1 -1
  234. package/dist/jsx/Button/index.native.js +7 -1
  235. package/dist/jsx/Button/index.native.js.map +1 -1
  236. package/dist/jsx/Chip/index.mjs +1 -3
  237. package/dist/jsx/Chip/index.mjs.map +1 -1
  238. package/dist/jsx/Chip/index.native.js +5 -3
  239. package/dist/jsx/Chip/index.native.js.map +1 -1
  240. package/dist/jsx/ContextualSaveBar/index.mjs +19 -3
  241. package/dist/jsx/ContextualSaveBar/index.mjs.map +1 -1
  242. package/dist/jsx/ContextualSaveBar/index.native.js +19 -3
  243. package/dist/jsx/ContextualSaveBar/index.native.js.map +1 -1
  244. package/dist/jsx/DescriptionList/index.mjs +38 -12
  245. package/dist/jsx/DescriptionList/index.mjs.map +1 -1
  246. package/dist/jsx/DescriptionList/index.native.js +38 -12
  247. package/dist/jsx/DescriptionList/index.native.js.map +1 -1
  248. package/dist/jsx/ErrorSummary.mjs +5 -2
  249. package/dist/jsx/ErrorSummary.mjs.map +1 -1
  250. package/dist/jsx/ErrorSummary.native.js +4 -1
  251. package/dist/jsx/ErrorSummary.native.js.map +1 -1
  252. package/dist/jsx/FloatingPanel/useFloatingPanel.mjs +24 -3
  253. package/dist/jsx/FloatingPanel/useFloatingPanel.mjs.map +1 -1
  254. package/dist/jsx/FloatingPanel/useFloatingPanel.native.js +43 -2
  255. package/dist/jsx/FloatingPanel/useFloatingPanel.native.js.map +1 -1
  256. package/dist/jsx/InputParts/index.mjs +43 -3
  257. package/dist/jsx/InputParts/index.mjs.map +1 -1
  258. package/dist/jsx/InputParts/index.native.js +42 -2
  259. package/dist/jsx/InputParts/index.native.js.map +1 -1
  260. package/dist/jsx/fields/Checkbox/Checkbox.mjs +5 -2
  261. package/dist/jsx/fields/Checkbox/Checkbox.mjs.map +1 -1
  262. package/dist/jsx/fields/Checkbox/Checkbox.native.js +6 -3
  263. package/dist/jsx/fields/Checkbox/Checkbox.native.js.map +1 -1
  264. package/dist/jsx/fields/Checkbox/CheckboxGroup.mjs +69 -59
  265. package/dist/jsx/fields/Checkbox/CheckboxGroup.mjs.map +1 -1
  266. package/dist/jsx/fields/Checkbox/CheckboxGroup.native.js +75 -65
  267. package/dist/jsx/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
  268. package/dist/jsx/fields/Checkbox/checkboxGroupContext.mjs +7 -0
  269. package/dist/jsx/fields/Checkbox/checkboxGroupContext.mjs.map +1 -0
  270. package/dist/jsx/fields/Checkbox/checkboxGroupContext.native.js +36 -0
  271. package/dist/jsx/fields/Checkbox/checkboxGroupContext.native.js.map +1 -0
  272. package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.mjs +377 -0
  273. package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.mjs.map +1 -0
  274. package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.native.js +441 -0
  275. package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -0
  276. package/dist/jsx/fields/DatePicker/DatetimePicker.mjs +1 -375
  277. package/dist/jsx/fields/DatePicker/DatetimePicker.mjs.map +1 -1
  278. package/dist/jsx/fields/DatePicker/DatetimePicker.native.js +69 -297
  279. package/dist/jsx/fields/DatePicker/DatetimePicker.native.js.map +1 -1
  280. package/dist/jsx/fields/DatePicker/catalog.mjs +276 -0
  281. package/dist/jsx/fields/DatePicker/catalog.mjs.map +1 -0
  282. package/dist/jsx/fields/DatePicker/catalog.native.js +350 -0
  283. package/dist/jsx/fields/DatePicker/catalog.native.js.map +1 -0
  284. package/dist/jsx/fields/DatePicker/index.mjs +1 -274
  285. package/dist/jsx/fields/DatePicker/index.mjs.map +1 -1
  286. package/dist/jsx/fields/DatePicker/index.native.js +66 -185
  287. package/dist/jsx/fields/DatePicker/index.native.js.map +1 -1
  288. package/dist/jsx/fields/DatePicker/parts.mjs +13 -10
  289. package/dist/jsx/fields/DatePicker/parts.mjs.map +1 -1
  290. package/dist/jsx/fields/DatePicker/parts.native.js +12 -9
  291. package/dist/jsx/fields/DatePicker/parts.native.js.map +1 -1
  292. package/dist/jsx/fields/Duration/index.mjs +29 -4
  293. package/dist/jsx/fields/Duration/index.mjs.map +1 -1
  294. package/dist/jsx/fields/Duration/index.native.js +29 -3
  295. package/dist/jsx/fields/Duration/index.native.js.map +1 -1
  296. package/dist/jsx/fields/PhoneInput/index.mjs +9 -4
  297. package/dist/jsx/fields/PhoneInput/index.mjs.map +1 -1
  298. package/dist/jsx/fields/PhoneInput/index.native.js +13 -6
  299. package/dist/jsx/fields/PhoneInput/index.native.js.map +1 -1
  300. package/dist/jsx/fields/Rating/index.mjs +2 -2
  301. package/dist/jsx/fields/Rating/index.mjs.map +1 -1
  302. package/dist/jsx/fields/Rating/index.native.js +4 -1
  303. package/dist/jsx/fields/Rating/index.native.js.map +1 -1
  304. package/dist/jsx/fields/SearchInput/index.mjs +6 -0
  305. package/dist/jsx/fields/SearchInput/index.mjs.map +1 -1
  306. package/dist/jsx/fields/SearchInput/index.native.js +6 -0
  307. package/dist/jsx/fields/SearchInput/index.native.js.map +1 -1
  308. package/dist/jsx/fields/Select/index.mjs +76 -3
  309. package/dist/jsx/fields/Select/index.mjs.map +1 -1
  310. package/dist/jsx/fields/Select/index.native.js +77 -2
  311. package/dist/jsx/fields/Select/index.native.js.map +1 -1
  312. package/dist/jsx/fields/Signature/index.mjs +10 -6
  313. package/dist/jsx/fields/Signature/index.mjs.map +1 -1
  314. package/dist/jsx/fields/Signature/index.native.js +9 -5
  315. package/dist/jsx/fields/Signature/index.native.js.map +1 -1
  316. package/dist/jsx/fields/Slider/index.mjs +4 -2
  317. package/dist/jsx/fields/Slider/index.mjs.map +1 -1
  318. package/dist/jsx/fields/Slider/index.native.js +3 -1
  319. package/dist/jsx/fields/Slider/index.native.js.map +1 -1
  320. package/dist/jsx/fields/Switch/index.mjs +6 -19
  321. package/dist/jsx/fields/Switch/index.mjs.map +1 -1
  322. package/dist/jsx/fields/Switch/index.native.js +5 -18
  323. package/dist/jsx/fields/Switch/index.native.js.map +1 -1
  324. package/dist/jsx/fields/TextArea/index.mjs +19 -5
  325. package/dist/jsx/fields/TextArea/index.mjs.map +1 -1
  326. package/dist/jsx/fields/TextArea/index.native.js +23 -5
  327. package/dist/jsx/fields/TextArea/index.native.js.map +1 -1
  328. package/dist/jsx/fields/TimePicker/catalog.mjs +174 -0
  329. package/dist/jsx/fields/TimePicker/catalog.mjs.map +1 -0
  330. package/dist/jsx/fields/TimePicker/catalog.native.js +227 -0
  331. package/dist/jsx/fields/TimePicker/catalog.native.js.map +1 -0
  332. package/dist/jsx/fields/TimePicker/index.mjs +2 -173
  333. package/dist/jsx/fields/TimePicker/index.mjs.map +1 -1
  334. package/dist/jsx/fields/TimePicker/index.native.js +74 -85
  335. package/dist/jsx/fields/TimePicker/index.native.js.map +1 -1
  336. package/dist/jsx/fields/TimeRangeScrubber/geometry.mjs +6 -1
  337. package/dist/jsx/fields/TimeRangeScrubber/geometry.mjs.map +1 -1
  338. package/dist/jsx/fields/TimeRangeScrubber/geometry.native.js +6 -0
  339. package/dist/jsx/fields/TimeRangeScrubber/geometry.native.js.map +1 -1
  340. package/dist/jsx/fields/TimeRangeScrubber/index.mjs +37 -18
  341. package/dist/jsx/fields/TimeRangeScrubber/index.mjs.map +1 -1
  342. package/dist/jsx/fields/TimeRangeScrubber/index.native.js +38 -14
  343. package/dist/jsx/fields/TimeRangeScrubber/index.native.js.map +1 -1
  344. package/dist/jsx/fields/nativeDateTime/OsDateTimeSheet.mjs +166 -0
  345. package/dist/jsx/fields/nativeDateTime/OsDateTimeSheet.mjs.map +1 -0
  346. package/dist/jsx/fields/nativeDateTime/OsDateTimeSheet.native.js +211 -0
  347. package/dist/jsx/fields/nativeDateTime/OsDateTimeSheet.native.js.map +1 -0
  348. package/dist/jsx/fields/nativeDateTime/osDateTimeIosDisplay.mjs +5 -0
  349. package/dist/jsx/fields/nativeDateTime/osDateTimeIosDisplay.mjs.map +1 -0
  350. package/dist/jsx/fields/nativeDateTime/osDateTimeIosDisplay.native.js +33 -0
  351. package/dist/jsx/fields/nativeDateTime/osDateTimeIosDisplay.native.js.map +1 -0
  352. package/dist/jsx/fields/nativeSelect.mjs +5 -0
  353. package/dist/jsx/fields/nativeSelect.mjs.map +1 -0
  354. package/dist/jsx/fields/nativeSelect.native.js +33 -0
  355. package/dist/jsx/fields/nativeSelect.native.js.map +1 -0
  356. package/dist/jsx/index.js +2 -2
  357. package/dist/jsx/index.js.map +1 -1
  358. package/dist/jsx/index.mjs +2 -2
  359. package/dist/jsx/index.mjs.map +1 -1
  360. package/dist/jsx/index.native.js +1 -0
  361. package/dist/jsx/index.native.js.map +1 -1
  362. package/dist/jsx/themedPrimitives.mjs +5 -0
  363. package/dist/jsx/themedPrimitives.mjs.map +1 -1
  364. package/dist/jsx/themedPrimitives.native.js +5 -0
  365. package/dist/jsx/themedPrimitives.native.js.map +1 -1
  366. package/package.json +12 -9
  367. package/src/Button/Button.labelInk.spec.tsx +1 -1
  368. package/src/Button/Button.sizeLadder.spec.tsx +124 -0
  369. package/src/Button/Button.spec.tsx +7 -17
  370. package/src/Button/Button.stories.tsx +14 -0
  371. package/src/Button/index.tsx +18 -3
  372. package/src/Chip/Chip.spec.tsx +15 -0
  373. package/src/Chip/Chip.stories.tsx +251 -0
  374. package/src/Chip/index.tsx +5 -1
  375. package/src/ContextualSaveBar/ContextualSaveBar.spec.tsx +51 -0
  376. package/src/ContextualSaveBar/ContextualSaveBar.stories.tsx +42 -23
  377. package/src/ContextualSaveBar/UnsavedChangesDialog.spec.tsx +167 -0
  378. package/src/ContextualSaveBar/index.tsx +14 -5
  379. package/src/DescriptionList/DescriptionList.spec.tsx +19 -1
  380. package/src/DescriptionList/DescriptionList.stories.tsx +5 -1
  381. package/src/DescriptionList/index.tsx +57 -19
  382. package/src/ErrorSummary.tsx +5 -2
  383. package/src/FloatingPanel/panelWidthContract.spec.ts +2 -2
  384. package/src/FloatingPanel/useFloatingPanel.spec.tsx +199 -1
  385. package/src/FloatingPanel/useFloatingPanel.ts +45 -3
  386. package/src/InputParts/index.tsx +56 -2
  387. package/src/Spinner/SpinnerGlyph.spec.tsx +132 -0
  388. package/src/Wheel/WheelEdgeFade.spec.tsx +141 -0
  389. package/src/fields/Checkbox/Checkbox.spec.tsx +24 -0
  390. package/src/fields/Checkbox/Checkbox.tsx +8 -3
  391. package/src/fields/Checkbox/CheckboxBox.spec.tsx +395 -0
  392. package/src/fields/Checkbox/CheckboxCard.spec.tsx +197 -0
  393. package/src/fields/Checkbox/CheckboxFieldFrame.spec.tsx +116 -0
  394. package/src/fields/Checkbox/CheckboxGroup.stories.tsx +15 -0
  395. package/src/fields/Checkbox/CheckboxGroup.tsx +77 -70
  396. package/src/fields/Checkbox/checkboxGroupContext.ts +12 -0
  397. package/src/fields/DatePicker/Calendar.spec.tsx +6 -5
  398. package/src/fields/DatePicker/DatePicker.stories.tsx +13 -0
  399. package/src/fields/DatePicker/DatetimePicker.catalog.tsx +586 -0
  400. package/src/fields/DatePicker/DatetimePicker.native.tsx +243 -0
  401. package/src/fields/DatePicker/DatetimePicker.tsx +2 -584
  402. package/src/fields/DatePicker/catalog.tsx +450 -0
  403. package/src/fields/DatePicker/index.native.tsx +261 -0
  404. package/src/fields/DatePicker/index.tsx +20 -448
  405. package/src/fields/DatePicker/parts.tsx +11 -6
  406. package/src/fields/Duration/Duration.spec.tsx +50 -0
  407. package/src/fields/Duration/Duration.stories.tsx +21 -0
  408. package/src/fields/Duration/index.tsx +43 -5
  409. package/src/fields/PhoneInput/PhoneInput.spec.tsx +16 -63
  410. package/src/fields/PhoneInput/PhoneInput.tvalue-source.spec.ts +23 -0
  411. package/src/fields/PhoneInput/index.tsx +10 -3
  412. package/src/fields/Rating/index.tsx +9 -1
  413. package/src/fields/SearchInput/SearchInput.spec.tsx +20 -0
  414. package/src/fields/SearchInput/index.tsx +6 -0
  415. package/src/fields/Select/Select.stories.tsx +23 -1
  416. package/src/fields/Select/index.tsx +77 -1
  417. package/src/fields/Signature/Signature.spec.tsx +22 -3
  418. package/src/fields/Signature/index.tsx +16 -7
  419. package/src/fields/Slider/index.tsx +4 -1
  420. package/src/fields/Switch/index.tsx +14 -12
  421. package/src/fields/TextArea/TextArea.spec.tsx +68 -0
  422. package/src/fields/TextArea/index.tsx +23 -5
  423. package/src/fields/TimePicker/TimePicker.stories.tsx +13 -0
  424. package/src/fields/TimePicker/catalog.tsx +265 -0
  425. package/src/fields/TimePicker/index.native.tsx +229 -0
  426. package/src/fields/TimePicker/index.tsx +6 -261
  427. package/src/fields/TimeRangeScrubber/TimeRangeScrubber.spec.tsx +36 -0
  428. package/src/fields/TimeRangeScrubber/geometry.ts +13 -0
  429. package/src/fields/TimeRangeScrubber/index.tsx +49 -8
  430. package/src/fields/nativeDateTime/OsDateTimeSheet.spec.ts +12 -0
  431. package/src/fields/nativeDateTime/OsDateTimeSheet.tsx +197 -0
  432. package/src/fields/nativeDateTime/osDateTimeIosDisplay.ts +4 -0
  433. package/src/fields/nativeSelect.spec.ts +28 -0
  434. package/src/fields/nativeSelect.ts +13 -0
  435. package/src/index.ts +2 -2
  436. package/src/themedPrimitives.tsx +10 -6
  437. package/types/Button/index.d.ts +3 -2
  438. package/types/Button/index.d.ts.map +1 -1
  439. package/types/Chip/index.d.ts.map +1 -1
  440. package/types/ContextualSaveBar/index.d.ts.map +1 -1
  441. package/types/DescriptionList/index.d.ts.map +1 -1
  442. package/types/ErrorSummary.d.ts.map +1 -1
  443. package/types/FloatingPanel/useFloatingPanel.d.ts +13 -0
  444. package/types/FloatingPanel/useFloatingPanel.d.ts.map +1 -1
  445. package/types/InputParts/index.d.ts.map +1 -1
  446. package/types/fields/Checkbox/Checkbox.d.ts.map +1 -1
  447. package/types/fields/Checkbox/CheckboxGroup.d.ts.map +1 -1
  448. package/types/fields/Checkbox/checkboxGroupContext.d.ts +8 -0
  449. package/types/fields/Checkbox/checkboxGroupContext.d.ts.map +1 -0
  450. package/types/fields/DatePicker/DatetimePicker.catalog.d.ts +35 -0
  451. package/types/fields/DatePicker/DatetimePicker.catalog.d.ts.map +1 -0
  452. package/types/fields/DatePicker/DatetimePicker.d.ts +2 -32
  453. package/types/fields/DatePicker/DatetimePicker.d.ts.map +1 -1
  454. package/types/fields/DatePicker/DatetimePicker.native.d.ts +26 -0
  455. package/types/fields/DatePicker/DatetimePicker.native.d.ts.map +1 -0
  456. package/types/fields/DatePicker/catalog.d.ts +42 -0
  457. package/types/fields/DatePicker/catalog.d.ts.map +1 -0
  458. package/types/fields/DatePicker/index.d.ts +2 -39
  459. package/types/fields/DatePicker/index.d.ts.map +1 -1
  460. package/types/fields/DatePicker/index.native.d.ts +40 -0
  461. package/types/fields/DatePicker/index.native.d.ts.map +1 -0
  462. package/types/fields/DatePicker/parts.d.ts.map +1 -1
  463. package/types/fields/Duration/index.d.ts +2 -0
  464. package/types/fields/Duration/index.d.ts.map +1 -1
  465. package/types/fields/PhoneInput/index.d.ts.map +1 -1
  466. package/types/fields/Rating/index.d.ts.map +1 -1
  467. package/types/fields/SearchInput/index.d.ts.map +1 -1
  468. package/types/fields/Select/index.d.ts +6 -1
  469. package/types/fields/Select/index.d.ts.map +1 -1
  470. package/types/fields/Signature/index.d.ts.map +1 -1
  471. package/types/fields/Slider/index.d.ts.map +1 -1
  472. package/types/fields/Switch/index.d.ts.map +1 -1
  473. package/types/fields/TextArea/index.d.ts.map +1 -1
  474. package/types/fields/TimePicker/catalog.d.ts +41 -0
  475. package/types/fields/TimePicker/catalog.d.ts.map +1 -0
  476. package/types/fields/TimePicker/index.d.ts +2 -38
  477. package/types/fields/TimePicker/index.d.ts.map +1 -1
  478. package/types/fields/TimePicker/index.native.d.ts +31 -0
  479. package/types/fields/TimePicker/index.native.d.ts.map +1 -0
  480. package/types/fields/TimeRangeScrubber/geometry.d.ts +8 -0
  481. package/types/fields/TimeRangeScrubber/geometry.d.ts.map +1 -1
  482. package/types/fields/TimeRangeScrubber/index.d.ts +1 -1
  483. package/types/fields/TimeRangeScrubber/index.d.ts.map +1 -1
  484. package/types/fields/nativeDateTime/OsDateTimeSheet.d.ts +12 -0
  485. package/types/fields/nativeDateTime/OsDateTimeSheet.d.ts.map +1 -0
  486. package/types/fields/nativeDateTime/osDateTimeIosDisplay.d.ts +3 -0
  487. package/types/fields/nativeDateTime/osDateTimeIosDisplay.d.ts.map +1 -0
  488. package/types/fields/nativeSelect.d.ts +12 -0
  489. package/types/fields/nativeSelect.d.ts.map +1 -0
  490. package/types/index.d.ts +2 -2
  491. package/types/index.d.ts.map +1 -1
  492. package/types/themedPrimitives.d.ts.map +1 -1
@@ -0,0 +1,276 @@
1
+ import { useCallback, useEffect, useRef, useState } from "react";
2
+ import { DatePickerFieldValueSync } from "./fieldValueSync.mjs";
3
+ import { coerceToDate } from "./utils.mjs";
4
+ import { useProps } from "tamagui";
5
+ import { Field, FieldLayout } from "../../fieldLayout.mjs";
6
+ import { t } from "../../shared/t.mjs";
7
+ import { getFieldError, mergeFieldHandler, useFormField, useResolvedValidators } from "../../shared/utils.mjs";
8
+ import { Input as InputParts } from "../../InputParts/index.mjs";
9
+ import { Skeleton } from "../../Skeleton/index.mjs";
10
+ import { CalendarDays, CalendarHeader, CalendarPanelFrame, DatePickerInputTrigger, DatePickerPopoverShell, CalendarViewSwitcher, formatDateDisplay, isSameDay, useCalendarData, useDateNavigation, yearPageSize } from "./parts.mjs";
11
+ import { MultiDatePicker } from "./MultiDatePicker.mjs";
12
+ import { DateRangePicker } from "./DateRangePicker.mjs";
13
+ import { Calendar } from "./Calendar.mjs";
14
+ import { MonthPicker } from "./MonthPicker.mjs";
15
+ import { DatetimePicker } from "./DatetimePicker.mjs";
16
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
17
+ function DayGrid({
18
+ calendarData,
19
+ selectedDate,
20
+ onSelectDate,
21
+ minDate,
22
+ maxDate
23
+ }) {
24
+ return /* @__PURE__ */jsx(CalendarDays, {
25
+ calendarData,
26
+ minDate,
27
+ maxDate,
28
+ isSelected: day => isSameDay(selectedDate, day),
29
+ onSelect: onSelectDate,
30
+ onToday: () => onSelectDate(/* @__PURE__ */new Date())
31
+ });
32
+ }
33
+ function CalendarBody({
34
+ displayDate,
35
+ selectedDate,
36
+ onSelectDate,
37
+ onNavigateMonth,
38
+ onSetDisplayDate,
39
+ minDate,
40
+ maxDate
41
+ }) {
42
+ const [viewMode, setViewMode] = useState("day");
43
+ const calendarData = useCalendarData(displayDate);
44
+ const [yearPageStart, setYearPageStart] = useState(() => calendarData.year - calendarData.year % yearPageSize);
45
+ return /* @__PURE__ */jsx(CalendarViewSwitcher, {
46
+ calendarData,
47
+ displayDate,
48
+ onSetDisplayDate,
49
+ viewMode,
50
+ setViewMode,
51
+ yearPageStart,
52
+ setYearPageStart,
53
+ children: /* @__PURE__ */jsxs(CalendarPanelFrame, {
54
+ children: [/* @__PURE__ */jsx(CalendarHeader, {
55
+ year: calendarData.year,
56
+ monthName: calendarData.monthName,
57
+ onPrevMonth: () => onNavigateMonth("prev"),
58
+ onNextMonth: () => onNavigateMonth("next"),
59
+ onYearPress: () => {
60
+ setYearPageStart(calendarData.year - calendarData.year % yearPageSize);
61
+ setViewMode("year");
62
+ },
63
+ onMonthPress: () => setViewMode("month")
64
+ }), /* @__PURE__ */jsx(DayGrid, {
65
+ calendarData,
66
+ selectedDate,
67
+ onSelectDate,
68
+ minDate,
69
+ maxDate
70
+ })]
71
+ })
72
+ });
73
+ }
74
+ function DatePicker(props) {
75
+ const {
76
+ defaultValue,
77
+ value: controlledValue,
78
+ onChange,
79
+ onValueChange,
80
+ form,
81
+ inputProps: _inputProps,
82
+ placeholder = t("Select date"),
83
+ format: _format = "MM/DD/YYYY",
84
+ minDate,
85
+ maxDate,
86
+ disabled,
87
+ mode,
88
+ name,
89
+ preserveValue,
90
+ validators,
91
+ label,
92
+ labelProps,
93
+ error: errorProp,
94
+ helperText,
95
+ required,
96
+ size,
97
+ readOnly,
98
+ onBlur,
99
+ skeleton,
100
+ compact,
101
+ id: idProp,
102
+ ..._restProps
103
+ } = useProps(props);
104
+ const {
105
+ resolvedForm,
106
+ knobProps,
107
+ id
108
+ } = useFormField({
109
+ form,
110
+ id: idProp,
111
+ compact
112
+ });
113
+ const resolvedValidators = useResolvedValidators(required, validators, label, name);
114
+ const hasLabel = Boolean(label);
115
+ const [open, setOpen] = useState(false);
116
+ const [selectedDate, setSelectedDate] = useState(() => coerceToDate(controlledValue ?? defaultValue));
117
+ useEffect(() => {
118
+ if (controlledValue === void 0) return;
119
+ setSelectedDate(coerceToDate(controlledValue));
120
+ }, [controlledValue]);
121
+ const {
122
+ displayDate,
123
+ setDisplayDate,
124
+ navigateMonth
125
+ } = useDateNavigation(selectedDate ?? void 0);
126
+ const popoverRef = useRef(null);
127
+ const closePopover = useCallback(() => {
128
+ setOpen(false);
129
+ popoverRef.current?.close();
130
+ }, []);
131
+ useEffect(() => {
132
+ if (selectedDate) closePopover();
133
+ }, [selectedDate, closePopover]);
134
+ const handleDateSelect = useCallback((date, fieldChange) => {
135
+ if (minDate && date < minDate) return;
136
+ if (maxDate && date > maxDate) return;
137
+ setSelectedDate(date);
138
+ setDisplayDate(date);
139
+ fieldChange?.(date);
140
+ onChange?.(date);
141
+ onValueChange?.(date);
142
+ closePopover();
143
+ }, [minDate, maxDate, setDisplayDate, closePopover, onChange, onValueChange]);
144
+ const handleClearDate = useCallback(fieldChange => {
145
+ setSelectedDate(null);
146
+ setDisplayDate(/* @__PURE__ */new Date());
147
+ fieldChange?.(null);
148
+ onChange?.(null);
149
+ onValueChange?.(null);
150
+ }, [setDisplayDate, onChange, onValueChange]);
151
+ const calendarContent = fieldChange => /* @__PURE__ */jsx(CalendarBody, {
152
+ displayDate,
153
+ selectedDate,
154
+ onSelectDate: date => handleDateSelect(date, fieldChange),
155
+ onNavigateMonth: navigateMonth,
156
+ onSetDisplayDate: setDisplayDate,
157
+ minDate,
158
+ maxDate
159
+ });
160
+ const renderPopover = (hasError, blurHandler, fieldChange) => {
161
+ if (readOnly) {
162
+ return /* @__PURE__ */jsx(InputParts.Box, {
163
+ children: /* @__PURE__ */jsx(InputParts.Area, {
164
+ value: formatDateDisplay(selectedDate),
165
+ readOnly: true,
166
+ "aria-readonly": "true",
167
+ "aria-required": required || void 0,
168
+ "aria-invalid": hasError || void 0,
169
+ placeholder
170
+ })
171
+ });
172
+ }
173
+ const handleOpenChange = isOpen => {
174
+ if (isOpen && selectedDate) setDisplayDate(selectedDate);
175
+ setOpen(isOpen);
176
+ if (!isOpen) {
177
+ blurHandler?.();
178
+ }
179
+ };
180
+ return /* @__PURE__ */jsx(DatePickerPopoverShell, {
181
+ open,
182
+ onOpenChange: handleOpenChange,
183
+ disabled,
184
+ popoverRef,
185
+ triggerA11y: {
186
+ label: typeof label === "string" && label || t("Date"),
187
+ value: formatDateDisplay(selectedDate) || placeholder,
188
+ hint: helperText
189
+ },
190
+ trigger: /* @__PURE__ */jsx(DatePickerInputTrigger, {
191
+ value: formatDateDisplay(selectedDate),
192
+ placeholder,
193
+ disabled,
194
+ open,
195
+ onReset: () => handleClearDate(fieldChange),
196
+ onButtonPress: () => {
197
+ if (selectedDate) setDisplayDate(selectedDate);
198
+ setOpen(true);
199
+ },
200
+ error: !!hasError,
201
+ id,
202
+ "aria-label": hasLabel ? void 0 : t("Date"),
203
+ "aria-describedby": [helperText && id ? `${id}-description` : void 0, hasError && id ? `${id}-error` : void 0].filter(Boolean).join(" ") || void 0,
204
+ "aria-required": required || void 0,
205
+ "aria-invalid": hasError || void 0
206
+ }),
207
+ clearValue: formatDateDisplay(selectedDate),
208
+ onClear: () => handleClearDate(fieldChange),
209
+ children: calendarContent(fieldChange)
210
+ });
211
+ };
212
+ if (skeleton) {
213
+ return /* @__PURE__ */jsx(FieldLayout, {
214
+ id,
215
+ label,
216
+ size,
217
+ knobProps,
218
+ children: /* @__PURE__ */jsx(Skeleton, {
219
+ variant: "rounded",
220
+ width: "100%",
221
+ height: knobProps.sizeToken
222
+ })
223
+ });
224
+ }
225
+ if (!resolvedForm || !name) {
226
+ return /* @__PURE__ */jsx(FieldLayout, {
227
+ id,
228
+ label,
229
+ labelProps,
230
+ error: errorProp,
231
+ helperText,
232
+ required,
233
+ size,
234
+ knobProps,
235
+ onBlur,
236
+ disabled,
237
+ children: /* @__PURE__ */jsx(InputParts, {
238
+ size: size || knobProps.sizeToken,
239
+ children: renderPopover(!!errorProp)
240
+ })
241
+ });
242
+ }
243
+ return /* @__PURE__ */jsx(Field, {
244
+ defaultValue,
245
+ form: resolvedForm,
246
+ mode,
247
+ name,
248
+ preserveValue,
249
+ validators: resolvedValidators,
250
+ children: field => {
251
+ const resolvedError = getFieldError(field, errorProp);
252
+ return /* @__PURE__ */jsxs(Fragment, {
253
+ children: [/* @__PURE__ */jsx(DatePickerFieldValueSync, {
254
+ value: field.state.value,
255
+ onSync: setSelectedDate
256
+ }), /* @__PURE__ */jsx(FieldLayout, {
257
+ id,
258
+ label,
259
+ labelProps,
260
+ error: resolvedError,
261
+ helperText,
262
+ required,
263
+ size,
264
+ knobProps,
265
+ disabled,
266
+ children: /* @__PURE__ */jsx(InputParts, {
267
+ size: size || knobProps.sizeToken,
268
+ children: renderPopover(!!resolvedError, mergeFieldHandler(field, "handleBlur", onBlur), mergeFieldHandler(field, "handleChange"))
269
+ })
270
+ })]
271
+ });
272
+ }
273
+ });
274
+ }
275
+ export { Calendar, DatePicker, DateRangePicker, DatetimePicker, MonthPicker, MultiDatePicker };
276
+ //# sourceMappingURL=catalog.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useCallback","useEffect","useRef","useState","DatePickerFieldValueSync","coerceToDate","useProps","Field","FieldLayout","t","getFieldError","mergeFieldHandler","useFormField","useResolvedValidators","Input","InputParts","Skeleton","CalendarDays","CalendarHeader","CalendarPanelFrame","DatePickerInputTrigger","DatePickerPopoverShell","CalendarViewSwitcher","formatDateDisplay","isSameDay","useCalendarData","useDateNavigation","yearPageSize","MultiDatePicker","DateRangePicker","Calendar","MonthPicker","DatetimePicker","Fragment","jsx","jsxs","DayGrid","calendarData","selectedDate","onSelectDate","minDate","maxDate","isSelected","day","onSelect","onToday","Date","CalendarBody","displayDate","onNavigateMonth","onSetDisplayDate","viewMode","setViewMode","yearPageStart","setYearPageStart","year","children","monthName","onPrevMonth","onNextMonth","onYearPress","onMonthPress","DatePicker","props","defaultValue","value","controlledValue","onChange","onValueChange","form","inputProps","_inputProps","placeholder","format","_format","disabled","mode","name","preserveValue","validators","label","labelProps","error","errorProp","helperText","required","size","readOnly","onBlur","skeleton","compact","id","idProp","_restProps","resolvedForm","knobProps","resolvedValidators","hasLabel","Boolean","open","setOpen","setSelectedDate","setDisplayDate","navigateMonth","popoverRef","closePopover","current","close","handleDateSelect","date","fieldChange","handleClearDate","calendarContent","renderPopover","hasError","blurHandler","Box","Area","handleOpenChange","isOpen","onOpenChange","triggerA11y","hint","trigger","onReset","onButtonPress","filter","join","clearValue","onClear","variant","width","height","sizeToken","field","resolvedError","state","onSync"],"sources":["../../../../src/fields/DatePicker/catalog.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,317 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { useCallback, useEffect, useRef, useState } from "react";
3
+ import { DatePickerFieldValueSync } from "./fieldValueSync.native.js";
4
+ import { coerceToDate } from "./utils.native.js";
5
+ import { useProps } from "tamagui";
6
+ import { Field, FieldLayout } from "../../fieldLayout.native.js";
7
+ import { t } from "../../shared/t.native.js";
8
+ import { getFieldError, mergeFieldHandler, useFormField, useResolvedValidators } from "../../shared/utils.native.js";
9
+ import { Input as InputParts } from "../../InputParts/index.native.js";
10
+ import { Skeleton } from "../../Skeleton/index.native.js";
11
+ import { CalendarDays, CalendarHeader, CalendarPanelFrame, DatePickerInputTrigger, DatePickerPopoverShell, CalendarViewSwitcher, formatDateDisplay, isSameDay, useCalendarData, useDateNavigation, yearPageSize } from "./parts.native.js";
12
+ import { MultiDatePicker } from "./MultiDatePicker.native.js";
13
+ import { DateRangePicker } from "./DateRangePicker.native.js";
14
+ import { Calendar } from "./Calendar.native.js";
15
+ import { MonthPicker } from "./MonthPicker.native.js";
16
+ import { DatetimePicker } from "./DatetimePicker.native.js";
17
+ function DayGrid(param) {
18
+ var {
19
+ calendarData,
20
+ selectedDate,
21
+ onSelectDate,
22
+ minDate,
23
+ maxDate
24
+ } = param;
25
+ return /* @__PURE__ */_jsx(CalendarDays, {
26
+ calendarData,
27
+ minDate,
28
+ maxDate,
29
+ isSelected: function isSelected(day) {
30
+ return isSameDay(selectedDate, day);
31
+ },
32
+ onSelect: onSelectDate,
33
+ onToday: function onToday() {
34
+ return onSelectDate(/* @__PURE__ */new Date());
35
+ }
36
+ });
37
+ }
38
+ function CalendarBody(param) {
39
+ var {
40
+ displayDate,
41
+ selectedDate,
42
+ onSelectDate,
43
+ onNavigateMonth,
44
+ onSetDisplayDate,
45
+ minDate,
46
+ maxDate
47
+ } = param;
48
+ var [viewMode, setViewMode] = useState("day");
49
+ var calendarData = useCalendarData(displayDate);
50
+ var [yearPageStart, setYearPageStart] = useState(function () {
51
+ return calendarData.year - calendarData.year % yearPageSize;
52
+ });
53
+ return /* @__PURE__ */_jsx(CalendarViewSwitcher, {
54
+ calendarData,
55
+ displayDate,
56
+ onSetDisplayDate,
57
+ viewMode,
58
+ setViewMode,
59
+ yearPageStart,
60
+ setYearPageStart,
61
+ children: /* @__PURE__ */_jsxs(CalendarPanelFrame, {
62
+ children: [/* @__PURE__ */_jsx(CalendarHeader, {
63
+ year: calendarData.year,
64
+ monthName: calendarData.monthName,
65
+ onPrevMonth: function onPrevMonth() {
66
+ return onNavigateMonth("prev");
67
+ },
68
+ onNextMonth: function onNextMonth() {
69
+ return onNavigateMonth("next");
70
+ },
71
+ onYearPress: function onYearPress() {
72
+ setYearPageStart(calendarData.year - calendarData.year % yearPageSize);
73
+ setViewMode("year");
74
+ },
75
+ onMonthPress: function onMonthPress() {
76
+ return setViewMode("month");
77
+ }
78
+ }), /* @__PURE__ */_jsx(DayGrid, {
79
+ calendarData,
80
+ selectedDate,
81
+ onSelectDate,
82
+ minDate,
83
+ maxDate
84
+ })]
85
+ })
86
+ });
87
+ }
88
+ function DatePicker(props) {
89
+ var {
90
+ defaultValue,
91
+ value: controlledValue,
92
+ onChange,
93
+ onValueChange,
94
+ form,
95
+ inputProps: _inputProps,
96
+ placeholder = t("Select date"),
97
+ format: _format = "MM/DD/YYYY",
98
+ minDate,
99
+ maxDate,
100
+ disabled,
101
+ mode,
102
+ name,
103
+ preserveValue,
104
+ validators,
105
+ label,
106
+ labelProps,
107
+ error: errorProp,
108
+ helperText,
109
+ required,
110
+ size,
111
+ readOnly,
112
+ onBlur,
113
+ skeleton,
114
+ compact,
115
+ id: idProp,
116
+ ..._restProps
117
+ } = useProps(props);
118
+ var {
119
+ resolvedForm,
120
+ knobProps,
121
+ id
122
+ } = useFormField({
123
+ form,
124
+ id: idProp,
125
+ compact
126
+ });
127
+ var resolvedValidators = useResolvedValidators(required, validators, label, name);
128
+ var hasLabel = Boolean(label);
129
+ var [open, setOpen] = useState(false);
130
+ var [selectedDate, setSelectedDate] = useState(function () {
131
+ return coerceToDate(controlledValue !== null && controlledValue !== void 0 ? controlledValue : defaultValue);
132
+ });
133
+ useEffect(function () {
134
+ if (controlledValue === void 0) return;
135
+ setSelectedDate(coerceToDate(controlledValue));
136
+ }, [controlledValue]);
137
+ var {
138
+ displayDate,
139
+ setDisplayDate,
140
+ navigateMonth
141
+ } = useDateNavigation(selectedDate !== null && selectedDate !== void 0 ? selectedDate : void 0);
142
+ var popoverRef = useRef(null);
143
+ var closePopover = useCallback(function () {
144
+ var _popoverRef_current;
145
+ setOpen(false);
146
+ (_popoverRef_current = popoverRef.current) === null || _popoverRef_current === void 0 ? void 0 : _popoverRef_current.close();
147
+ }, []);
148
+ useEffect(function () {
149
+ if (selectedDate) closePopover();
150
+ }, [selectedDate, closePopover]);
151
+ var handleDateSelect = useCallback(function (date, fieldChange) {
152
+ if (minDate && date < minDate) return;
153
+ if (maxDate && date > maxDate) return;
154
+ setSelectedDate(date);
155
+ setDisplayDate(date);
156
+ fieldChange === null || fieldChange === void 0 ? void 0 : fieldChange(date);
157
+ onChange === null || onChange === void 0 ? void 0 : onChange(date);
158
+ onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(date);
159
+ closePopover();
160
+ }, [minDate, maxDate, setDisplayDate, closePopover, onChange, onValueChange]);
161
+ var handleClearDate = useCallback(function (fieldChange) {
162
+ setSelectedDate(null);
163
+ setDisplayDate(/* @__PURE__ */new Date());
164
+ fieldChange === null || fieldChange === void 0 ? void 0 : fieldChange(null);
165
+ onChange === null || onChange === void 0 ? void 0 : onChange(null);
166
+ onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(null);
167
+ }, [setDisplayDate, onChange, onValueChange]);
168
+ var calendarContent = function calendarContent2(fieldChange) {
169
+ return /* @__PURE__ */_jsx(CalendarBody, {
170
+ displayDate,
171
+ selectedDate,
172
+ onSelectDate: function onSelectDate(date) {
173
+ return handleDateSelect(date, fieldChange);
174
+ },
175
+ onNavigateMonth: navigateMonth,
176
+ onSetDisplayDate: setDisplayDate,
177
+ minDate,
178
+ maxDate
179
+ });
180
+ };
181
+ var renderPopover = function renderPopover2(hasError, blurHandler, fieldChange) {
182
+ if (readOnly) {
183
+ return /* @__PURE__ */_jsx(InputParts.Box, {
184
+ children: /* @__PURE__ */_jsx(InputParts.Area, {
185
+ value: formatDateDisplay(selectedDate),
186
+ readOnly: true,
187
+ "aria-readonly": "true",
188
+ "aria-required": required || void 0,
189
+ "aria-invalid": hasError || void 0,
190
+ placeholder
191
+ })
192
+ });
193
+ }
194
+ var handleOpenChange = function handleOpenChange2(isOpen) {
195
+ if (isOpen && selectedDate) setDisplayDate(selectedDate);
196
+ setOpen(isOpen);
197
+ if (!isOpen) {
198
+ blurHandler === null || blurHandler === void 0 ? void 0 : blurHandler();
199
+ }
200
+ };
201
+ return /* @__PURE__ */_jsx(DatePickerPopoverShell, {
202
+ open,
203
+ onOpenChange: handleOpenChange,
204
+ // Disabling only the trigger is what LET the panel open: the trigger
205
+ // goes `pointerEvents:none`, so the click falls through to
206
+ // FloatingPanel's own reference wrapper, which opens on click unless
207
+ // it is told the field is disabled (SB-M-614). DatetimePicker and
208
+ // TimePicker already pass it.
209
+ disabled,
210
+ popoverRef,
211
+ // "Date, Jul 15 2026": VO gets the field name + current value on the
212
+ // native trigger (the web trigger announces via aria on the Area).
213
+ triggerA11y: {
214
+ label: typeof label === "string" && label || t("Date"),
215
+ value: formatDateDisplay(selectedDate) || placeholder,
216
+ hint: helperText
217
+ },
218
+ trigger: /* @__PURE__ */_jsx(DatePickerInputTrigger, {
219
+ value: formatDateDisplay(selectedDate),
220
+ placeholder,
221
+ disabled,
222
+ open,
223
+ onReset: function onReset() {
224
+ return handleClearDate(fieldChange);
225
+ },
226
+ onButtonPress: function onButtonPress() {
227
+ if (selectedDate) setDisplayDate(selectedDate);
228
+ setOpen(true);
229
+ },
230
+ error: !!hasError,
231
+ id,
232
+ // Labelled: FieldLayout's Label wires `aria-labelledby` onto this
233
+ // id itself — naming it here too doubles the spoken name.
234
+ "aria-label": hasLabel ? void 0 : t("Date"),
235
+ "aria-describedby": [helperText && id ? `${id}-description` : void 0, hasError && id ? `${id}-error` : void 0].filter(Boolean).join(" ") || void 0,
236
+ "aria-required": required || void 0,
237
+ "aria-invalid": hasError || void 0
238
+ }),
239
+ clearValue: formatDateDisplay(selectedDate),
240
+ onClear: function onClear() {
241
+ return handleClearDate(fieldChange);
242
+ },
243
+ children: calendarContent(fieldChange)
244
+ });
245
+ };
246
+ if (skeleton) {
247
+ return /* @__PURE__ */_jsx(FieldLayout, {
248
+ id,
249
+ label,
250
+ size,
251
+ knobProps,
252
+ children: /* @__PURE__ */_jsx(Skeleton, {
253
+ variant: "rounded",
254
+ width: "100%",
255
+ height: knobProps.sizeToken
256
+ })
257
+ });
258
+ }
259
+ if (!resolvedForm || !name) {
260
+ return /* @__PURE__ */_jsx(FieldLayout, {
261
+ id,
262
+ label,
263
+ labelProps,
264
+ error: errorProp,
265
+ helperText,
266
+ required,
267
+ size,
268
+ knobProps,
269
+ onBlur,
270
+ // LC-40: FieldLayout owns the dimWhole assembly dim (keepLabel pins
271
+ // the sibling label/helper readable) — it needs the disabled state.
272
+ disabled,
273
+ children: /* @__PURE__ */_jsx(InputParts, {
274
+ size: size || knobProps.sizeToken,
275
+ children: renderPopover(!!errorProp)
276
+ })
277
+ });
278
+ }
279
+ return /* @__PURE__ */_jsx(Field, {
280
+ defaultValue,
281
+ form: resolvedForm,
282
+ mode,
283
+ name,
284
+ preserveValue,
285
+ validators: resolvedValidators,
286
+ children: function children(field) {
287
+ var resolvedError = getFieldError(field, errorProp);
288
+ return /* @__PURE__ */_jsxs(_Fragment, {
289
+ children: [
290
+ /* Form branch displays from `selectedDate` — keep it synced to
291
+ the live field value (late seeds / programmatic updates). */
292
+ /* @__PURE__ */
293
+ _jsx(DatePickerFieldValueSync, {
294
+ value: field.state.value,
295
+ onSync: setSelectedDate
296
+ }), /* @__PURE__ */_jsx(FieldLayout, {
297
+ id,
298
+ label,
299
+ labelProps,
300
+ error: resolvedError,
301
+ helperText,
302
+ required,
303
+ size,
304
+ knobProps,
305
+ // LC-40: see standalone branch — FieldLayout carries dimWhole.
306
+ disabled,
307
+ children: /* @__PURE__ */_jsx(InputParts, {
308
+ size: size || knobProps.sizeToken,
309
+ children: renderPopover(!!resolvedError, mergeFieldHandler(field, "handleBlur", onBlur), mergeFieldHandler(field, "handleChange"))
310
+ })
311
+ })]
312
+ });
313
+ }
314
+ });
315
+ }
316
+ export { Calendar, DatePicker, DateRangePicker, DatetimePicker, MonthPicker, MultiDatePicker };
317
+ //# sourceMappingURL=catalog.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useCallback","useEffect","useRef","useState","DatePickerFieldValueSync","coerceToDate","useProps","Field","FieldLayout","t","getFieldError","mergeFieldHandler","useFormField","useResolvedValidators","Input","InputParts","Skeleton","CalendarDays","CalendarHeader","CalendarPanelFrame","DatePickerInputTrigger","DatePickerPopoverShell","CalendarViewSwitcher","formatDateDisplay","isSameDay","useCalendarData","useDateNavigation","yearPageSize","MultiDatePicker","DateRangePicker","Calendar","MonthPicker","DatetimePicker","DayGrid","param","calendarData","selectedDate","onSelectDate","minDate","maxDate","isSelected","day","onSelect","onToday","Date","CalendarBody","displayDate","onNavigateMonth","onSetDisplayDate","viewMode","setViewMode","yearPageStart","setYearPageStart","year","children","monthName","onPrevMonth","onNextMonth","onYearPress","onMonthPress","DatePicker","props","defaultValue","value","controlledValue","onChange","onValueChange","form","inputProps","_inputProps","placeholder","format","_format","disabled","mode","name","preserveValue","validators","label","labelProps","error","errorProp","helperText","required","size","readOnly","onBlur","skeleton","compact","id","idProp","_restProps","resolvedForm","knobProps","resolvedValidators","hasLabel","Boolean","open","setOpen","setSelectedDate","setDisplayDate","navigateMonth","popoverRef","closePopover","_popoverRef_current","current","close","handleDateSelect","date","fieldChange","handleClearDate","calendarContent","calendarContent2","renderPopover","renderPopover2","hasError","blurHandler","Box","Area","handleOpenChange","handleOpenChange2","isOpen","onOpenChange","triggerA11y","hint","trigger","onReset","onButtonPress","filter","join","clearValue","onClear","variant","width","height","sizeToken","field","resolvedError","state","onSync"],"sources":["catalog.native.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { useCallback, useEffect, useRef, useState } from \"react\";\nimport { DatePickerFieldValueSync } from \"./fieldValueSync\";\nimport { coerceToDate } from \"./utils\";\nimport { useProps } from \"tamagui\";\nimport { Field, FieldLayout } from \"../../fieldLayout\";\nimport { t } from \"../../shared/t\";\nimport { getFieldError, mergeFieldHandler, useFormField, useResolvedValidators } from \"../../shared/utils\";\nimport { Input as InputParts } from \"../../InputParts\";\nimport { Skeleton } from \"../../Skeleton\";\nimport { CalendarDays, CalendarHeader, CalendarPanelFrame, DatePickerInputTrigger, DatePickerPopoverShell, CalendarViewSwitcher, formatDateDisplay, isSameDay, useCalendarData, useDateNavigation, yearPageSize } from \"./parts\";\nimport { MultiDatePicker } from \"./MultiDatePicker\";\nimport { DateRangePicker } from \"./DateRangePicker\";\nimport { Calendar } from \"./Calendar\";\nimport { MonthPicker } from \"./MonthPicker\";\nimport { DatetimePicker } from \"./DatetimePicker\";\nfunction DayGrid(param) {\n var { calendarData, selectedDate, onSelectDate, minDate, maxDate } = param;\n return /* @__PURE__ */ _jsx(CalendarDays, {\n calendarData,\n minDate,\n maxDate,\n isSelected: function isSelected(day) {\n return isSameDay(selectedDate, day);\n },\n onSelect: onSelectDate,\n onToday: function onToday() {\n return onSelectDate(/* @__PURE__ */ new Date());\n }\n });\n}\nfunction CalendarBody(param) {\n var { displayDate, selectedDate, onSelectDate, onNavigateMonth, onSetDisplayDate, minDate, maxDate } = param;\n var [viewMode, setViewMode] = useState(\"day\");\n var calendarData = useCalendarData(displayDate);\n var [yearPageStart, setYearPageStart] = useState(function() {\n return calendarData.year - calendarData.year % yearPageSize;\n });\n return /* @__PURE__ */ _jsx(CalendarViewSwitcher, {\n calendarData,\n displayDate,\n onSetDisplayDate,\n viewMode,\n setViewMode,\n yearPageStart,\n setYearPageStart,\n children: /* @__PURE__ */ _jsxs(CalendarPanelFrame, {\n children: [\n /* @__PURE__ */ _jsx(CalendarHeader, {\n year: calendarData.year,\n monthName: calendarData.monthName,\n onPrevMonth: function onPrevMonth() {\n return onNavigateMonth(\"prev\");\n },\n onNextMonth: function onNextMonth() {\n return onNavigateMonth(\"next\");\n },\n onYearPress: function onYearPress() {\n setYearPageStart(calendarData.year - calendarData.year % yearPageSize);\n setViewMode(\"year\");\n },\n onMonthPress: function onMonthPress() {\n return setViewMode(\"month\");\n }\n }),\n /* @__PURE__ */ _jsx(DayGrid, {\n calendarData,\n selectedDate,\n onSelectDate,\n minDate,\n maxDate\n })\n ]\n })\n });\n}\nfunction DatePicker(props) {\n var { defaultValue, value: controlledValue, onChange, onValueChange, form, inputProps: _inputProps, placeholder = t(\"Select date\"), format: _format = \"MM/DD/YYYY\", minDate, maxDate, disabled, mode, name, preserveValue, validators, label, labelProps, error: errorProp, helperText, required, size, readOnly, onBlur, skeleton, compact, id: idProp, ..._restProps } = useProps(props);\n var { resolvedForm, knobProps, id } = useFormField({\n form,\n id: idProp,\n compact\n });\n var resolvedValidators = useResolvedValidators(required, validators, label, name);\n var hasLabel = Boolean(label);\n var [open, setOpen] = useState(false);\n var [selectedDate, setSelectedDate] = useState(function() {\n return coerceToDate(controlledValue !== null && controlledValue !== void 0 ? controlledValue : defaultValue);\n });\n useEffect(function() {\n if (controlledValue === void 0) return;\n setSelectedDate(coerceToDate(controlledValue));\n }, [\n controlledValue\n ]);\n var { displayDate, setDisplayDate, navigateMonth } = useDateNavigation(selectedDate !== null && selectedDate !== void 0 ? selectedDate : void 0);\n var popoverRef = useRef(null);\n var closePopover = useCallback(function() {\n var _popoverRef_current;\n setOpen(false);\n (_popoverRef_current = popoverRef.current) === null || _popoverRef_current === void 0 ? void 0 : _popoverRef_current.close();\n }, []);\n useEffect(function() {\n if (selectedDate) closePopover();\n }, [\n selectedDate,\n closePopover\n ]);\n var handleDateSelect = useCallback(function(date, fieldChange) {\n if (minDate && date < minDate) return;\n if (maxDate && date > maxDate) return;\n setSelectedDate(date);\n setDisplayDate(date);\n fieldChange === null || fieldChange === void 0 ? void 0 : fieldChange(date);\n onChange === null || onChange === void 0 ? void 0 : onChange(date);\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(date);\n closePopover();\n }, [\n minDate,\n maxDate,\n setDisplayDate,\n closePopover,\n onChange,\n onValueChange\n ]);\n var handleClearDate = useCallback(function(fieldChange) {\n setSelectedDate(null);\n setDisplayDate(/* @__PURE__ */ new Date());\n fieldChange === null || fieldChange === void 0 ? void 0 : fieldChange(null);\n onChange === null || onChange === void 0 ? void 0 : onChange(null);\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(null);\n }, [\n setDisplayDate,\n onChange,\n onValueChange\n ]);\n var calendarContent = function calendarContent2(fieldChange) {\n return /* @__PURE__ */ _jsx(CalendarBody, {\n displayDate,\n selectedDate,\n onSelectDate: function onSelectDate(date) {\n return handleDateSelect(date, fieldChange);\n },\n onNavigateMonth: navigateMonth,\n onSetDisplayDate: setDisplayDate,\n minDate,\n maxDate\n });\n };\n var renderPopover = function renderPopover2(hasError, blurHandler, fieldChange) {\n if (readOnly) {\n return /* @__PURE__ */ _jsx(InputParts.Box, {\n children: /* @__PURE__ */ _jsx(InputParts.Area, {\n value: formatDateDisplay(selectedDate),\n readOnly: true,\n \"aria-readonly\": \"true\",\n \"aria-required\": required || void 0,\n \"aria-invalid\": hasError || void 0,\n placeholder\n })\n });\n }\n var handleOpenChange = function handleOpenChange2(isOpen) {\n if (isOpen && selectedDate) setDisplayDate(selectedDate);\n setOpen(isOpen);\n if (!isOpen) {\n blurHandler === null || blurHandler === void 0 ? void 0 : blurHandler();\n }\n };\n return /* @__PURE__ */ _jsx(DatePickerPopoverShell, {\n open,\n onOpenChange: handleOpenChange,\n // Disabling only the trigger is what LET the panel open: the trigger\n // goes `pointerEvents:none`, so the click falls through to\n // FloatingPanel's own reference wrapper, which opens on click unless\n // it is told the field is disabled (SB-M-614). DatetimePicker and\n // TimePicker already pass it.\n disabled,\n popoverRef,\n // \"Date, Jul 15 2026\": VO gets the field name + current value on the\n // native trigger (the web trigger announces via aria on the Area).\n triggerA11y: {\n label: typeof label === \"string\" && label || t(\"Date\"),\n value: formatDateDisplay(selectedDate) || placeholder,\n hint: helperText\n },\n trigger: /* @__PURE__ */ _jsx(DatePickerInputTrigger, {\n value: formatDateDisplay(selectedDate),\n placeholder,\n disabled,\n open,\n onReset: function onReset() {\n return handleClearDate(fieldChange);\n },\n onButtonPress: function onButtonPress() {\n if (selectedDate) setDisplayDate(selectedDate);\n setOpen(true);\n },\n error: !!hasError,\n id,\n // Labelled: FieldLayout's Label wires `aria-labelledby` onto this\n // id itself — naming it here too doubles the spoken name.\n \"aria-label\": hasLabel ? void 0 : t(\"Date\"),\n \"aria-describedby\": [\n helperText && id ? `${id}-description` : void 0,\n hasError && id ? `${id}-error` : void 0\n ].filter(Boolean).join(\" \") || void 0,\n \"aria-required\": required || void 0,\n \"aria-invalid\": hasError || void 0\n }),\n clearValue: formatDateDisplay(selectedDate),\n onClear: function onClear() {\n return handleClearDate(fieldChange);\n },\n children: calendarContent(fieldChange)\n });\n };\n if (skeleton) {\n return /* @__PURE__ */ _jsx(FieldLayout, {\n id,\n label,\n size,\n knobProps,\n children: /* @__PURE__ */ _jsx(Skeleton, {\n variant: \"rounded\",\n width: \"100%\",\n height: knobProps.sizeToken\n })\n });\n }\n if (!resolvedForm || !name) {\n return /* @__PURE__ */ _jsx(FieldLayout, {\n id,\n label,\n labelProps,\n error: errorProp,\n helperText,\n required,\n size,\n knobProps,\n onBlur,\n // LC-40: FieldLayout owns the dimWhole assembly dim (keepLabel pins\n // the sibling label/helper readable) — it needs the disabled state.\n disabled,\n children: /* @__PURE__ */ _jsx(InputParts, {\n size: size || knobProps.sizeToken,\n children: renderPopover(!!errorProp)\n })\n });\n }\n return /* @__PURE__ */ _jsx(Field, {\n defaultValue,\n form: resolvedForm,\n mode,\n name,\n preserveValue,\n validators: resolvedValidators,\n children: function children(field) {\n var resolvedError = getFieldError(field, errorProp);\n return /* @__PURE__ */ _jsxs(_Fragment, {\n children: [\n /* Form branch displays from `selectedDate` — keep it synced to\n the live field value (late seeds / programmatic updates). */\n /* @__PURE__ */ _jsx(DatePickerFieldValueSync, {\n value: field.state.value,\n onSync: setSelectedDate\n }),\n /* @__PURE__ */ _jsx(FieldLayout, {\n id,\n label,\n labelProps,\n error: resolvedError,\n helperText,\n required,\n size,\n knobProps,\n // LC-40: see standalone branch — FieldLayout carries dimWhole.\n disabled,\n children: /* @__PURE__ */ _jsx(InputParts, {\n size: size || knobProps.sizeToken,\n children: renderPopover(!!resolvedError, mergeFieldHandler(field, \"handleBlur\", onBlur), mergeFieldHandler(field, \"handleChange\"))\n })\n })\n ]\n });\n }\n });\n}\nexport {\n Calendar,\n DatePicker,\n DateRangePicker,\n DatetimePicker,\n MonthPicker,\n MultiDatePicker\n};\n//# sourceMappingURL=catalog.js.map\n"],"mappings":"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","ignoreList":[]}