@servicetitan/anvil2 2.6.0 → 2.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 (363) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/{Alert-efJbA3Sy.js → Alert-C_o2f78C.js} +4 -4
  3. package/dist/{Alert-efJbA3Sy.js.map → Alert-C_o2f78C.js.map} +1 -1
  4. package/dist/Alert.js +1 -1
  5. package/dist/{Announcement-D9eVhPwx.js → Announcement-CyrTvgP4.js} +4 -4
  6. package/dist/{Announcement-D9eVhPwx.js.map → Announcement-CyrTvgP4.js.map} +1 -1
  7. package/dist/Announcement.js +1 -1
  8. package/dist/{AnvilProvider-DrjU73_k.js → AnvilProvider-ClfmLl_6.js} +3 -3
  9. package/dist/{AnvilProvider-DrjU73_k.js.map → AnvilProvider-ClfmLl_6.js.map} +1 -1
  10. package/dist/AnvilProvider.js +1 -1
  11. package/dist/{Avatar--E9iBILU.js → Avatar--CnTAnfD.js} +2 -2
  12. package/dist/{Avatar--E9iBILU.js.map → Avatar--CnTAnfD.js.map} +1 -1
  13. package/dist/{Avatar-CJCAu9Hk.js → Avatar-CCnbKkCm.js} +3 -3
  14. package/dist/{Avatar-CJCAu9Hk.js.map → Avatar-CCnbKkCm.js.map} +1 -1
  15. package/dist/Avatar.js +2 -2
  16. package/dist/{Badge-pHlnInjl.js → Badge-C2W7Dls9.js} +3 -3
  17. package/dist/{Badge-pHlnInjl.js.map → Badge-C2W7Dls9.js.map} +1 -1
  18. package/dist/Badge.js +1 -1
  19. package/dist/{Breadcrumbs-B5deMJRX.js → Breadcrumbs-3Y7jnj-F.js} +5 -5
  20. package/dist/{Breadcrumbs-B5deMJRX.js.map → Breadcrumbs-3Y7jnj-F.js.map} +1 -1
  21. package/dist/Breadcrumbs.js +1 -1
  22. package/dist/{Button-DuvaXRZ5.js → Button-CVsGhVJz.js} +4 -4
  23. package/dist/{Button-DuvaXRZ5.js.map → Button-CVsGhVJz.js.map} +1 -1
  24. package/dist/Button.js +1 -1
  25. package/dist/{ButtonCompound-CfRJlClF.js → ButtonCompound-Cmw3cgMY.js} +2 -2
  26. package/dist/{ButtonCompound-CfRJlClF.js.map → ButtonCompound-Cmw3cgMY.js.map} +1 -1
  27. package/dist/ButtonCompound.js +1 -1
  28. package/dist/{ButtonLink-B5Ixd5d5.js → ButtonLink-BJKTJER8.js} +4 -4
  29. package/dist/{ButtonLink-B5Ixd5d5.js.map → ButtonLink-BJKTJER8.js.map} +1 -1
  30. package/dist/ButtonLink.js +1 -1
  31. package/dist/{ButtonToggle-BkDR0AcM.js → ButtonToggle-DaYJWso_.js} +3 -3
  32. package/dist/{ButtonToggle-BkDR0AcM.js.map → ButtonToggle-DaYJWso_.js.map} +1 -1
  33. package/dist/ButtonToggle.js +1 -1
  34. package/dist/{Calendar-MXQWMrwC.js → Calendar-C1U2npPP.js} +2 -2
  35. package/dist/{Calendar-MXQWMrwC.js.map → Calendar-C1U2npPP.js.map} +1 -1
  36. package/dist/{Calendar-M8K2O28r.js → Calendar-SGlTt-bs.js} +6 -6
  37. package/dist/{Calendar-M8K2O28r.js.map → Calendar-SGlTt-bs.js.map} +1 -1
  38. package/dist/Calendar.js +2 -2
  39. package/dist/{Card-C5TyS0Iv.js → Card-wz71dEVA.js} +2 -2
  40. package/dist/{Card-C5TyS0Iv.js.map → Card-wz71dEVA.js.map} +1 -1
  41. package/dist/Card.js +1 -1
  42. package/dist/{Checkbox-Czx6UCfq.js → Checkbox-CjEKa5Iv.js} +2 -2
  43. package/dist/{Checkbox-Czx6UCfq.js.map → Checkbox-CjEKa5Iv.js.map} +1 -1
  44. package/dist/{Checkbox-LPr8zpzs.js → Checkbox-CtKUNeyu.js} +20 -11
  45. package/dist/Checkbox-CtKUNeyu.js.map +1 -0
  46. package/dist/Checkbox.js +1 -1
  47. package/dist/{Chip-BJmzOMOd.js → Chip-DjTAR0va.js} +5 -5
  48. package/dist/{Chip-BJmzOMOd.js.map → Chip-DjTAR0va.js.map} +1 -1
  49. package/dist/Chip.js +1 -1
  50. package/dist/{Combobox-CnzBCYLC.js → Combobox-By8-34bw.js} +13 -12
  51. package/dist/{Combobox-CnzBCYLC.js.map → Combobox-By8-34bw.js.map} +1 -1
  52. package/dist/Combobox.js +1 -1
  53. package/dist/{DataTable-Cau6ylNR.js → DataTable-BYOS6icI.js} +95 -53
  54. package/dist/DataTable-BYOS6icI.js.map +1 -0
  55. package/dist/DataTable.css +68 -55
  56. package/dist/{DateFieldRange-B1BR8K7C.js → DateFieldRange-C8Uzrboc.js} +45 -54
  57. package/dist/DateFieldRange-C8Uzrboc.js.map +1 -0
  58. package/dist/DateFieldRange.js +1 -1
  59. package/dist/{DateFieldSingle-CaWruBBO.js → DateFieldSingle-DrhLIjlK.js} +43 -52
  60. package/dist/DateFieldSingle-DrhLIjlK.js.map +1 -0
  61. package/dist/DateFieldSingle.js +1 -1
  62. package/dist/{DateFieldYearless-ClF88lnZ.js → DateFieldYearless-DbivK4Hm.js} +6 -6
  63. package/dist/{DateFieldYearless-ClF88lnZ.js.map → DateFieldYearless-DbivK4Hm.js.map} +1 -1
  64. package/dist/DateFieldYearless.js +1 -1
  65. package/dist/{DateFieldYearlessRange-LZFr55tn.js → DateFieldYearlessRange-BEqJe4Uf.js} +7 -7
  66. package/dist/{DateFieldYearlessRange-LZFr55tn.js.map → DateFieldYearlessRange-BEqJe4Uf.js.map} +1 -1
  67. package/dist/DateFieldYearlessRange.js +1 -1
  68. package/dist/{DaysOfTheWeek-BLdndX4a.js → DaysOfTheWeek-BR32AA32.js} +6 -6
  69. package/dist/{DaysOfTheWeek-BLdndX4a.js.map → DaysOfTheWeek-BR32AA32.js.map} +1 -1
  70. package/dist/DaysOfTheWeek.js +1 -1
  71. package/dist/{Details-C9temdJE.js → Details-Dxq_v3Qg.js} +3 -3
  72. package/dist/{Details-C9temdJE.js.map → Details-Dxq_v3Qg.js.map} +1 -1
  73. package/dist/Details.js +1 -1
  74. package/dist/{Dialog-CXnUkcrS.js → Dialog-CGhwkwvq.js} +5 -5
  75. package/dist/{Dialog-CXnUkcrS.js.map → Dialog-CGhwkwvq.js.map} +1 -1
  76. package/dist/Dialog.js +1 -1
  77. package/dist/{DialogCancelButton-LfPkSYCE.js → DialogCancelButton-DQDMzGeT.js} +2 -2
  78. package/dist/{DialogCancelButton-LfPkSYCE.js.map → DialogCancelButton-DQDMzGeT.js.map} +1 -1
  79. package/dist/{Divider-HHjG0KYA.js → Divider-B1UoK8ho.js} +2 -2
  80. package/dist/{Divider-HHjG0KYA.js.map → Divider-B1UoK8ho.js.map} +1 -1
  81. package/dist/Divider.js +1 -1
  82. package/dist/Dnd.js +1 -1
  83. package/dist/DndSort.js +8 -10
  84. package/dist/DndSort.js.map +1 -1
  85. package/dist/{Drawer-BmNHRJJJ.js → Drawer-DA4iAgt-.js} +5 -5
  86. package/dist/{Drawer-BmNHRJJJ.js.map → Drawer-DA4iAgt-.js.map} +1 -1
  87. package/dist/Drawer.js +1 -1
  88. package/dist/DrillDown.js +1 -1
  89. package/dist/{EditCard-8gQ6IJez.js → EditCard-CLN0GBN_.js} +6 -6
  90. package/dist/{EditCard-8gQ6IJez.js.map → EditCard-CLN0GBN_.js.map} +1 -1
  91. package/dist/EditCard.js +1 -1
  92. package/dist/{FieldLabel-35fac7b-.js → FieldLabel-DbMosKtd.js} +5 -5
  93. package/dist/{FieldLabel-35fac7b-.js.map → FieldLabel-DbMosKtd.js.map} +1 -1
  94. package/dist/FieldLabel.js +1 -1
  95. package/dist/{FieldMessage-eYenMJY5.js → FieldMessage-COHqUdj5.js} +3 -3
  96. package/dist/{FieldMessage-eYenMJY5.js.map → FieldMessage-COHqUdj5.js.map} +1 -1
  97. package/dist/FieldMessage.js +2 -2
  98. package/dist/{Flex-DZu-_z-U.js → Flex-WyyZm1bf.js} +2 -2
  99. package/dist/{Flex-DZu-_z-U.js.map → Flex-WyyZm1bf.js.map} +1 -1
  100. package/dist/Flex.js +1 -1
  101. package/dist/{Grid-xRKvVHA2.js → Grid-ONcUpb__.js} +2 -2
  102. package/dist/{Grid-xRKvVHA2.js.map → Grid-ONcUpb__.js.map} +1 -1
  103. package/dist/Grid.js +1 -1
  104. package/dist/{Helper-CDZD_AOG.js → Helper-B_FIOlhy.js} +3 -3
  105. package/dist/{Helper-CDZD_AOG.js.map → Helper-B_FIOlhy.js.map} +1 -1
  106. package/dist/{Icon-Bgkq1egx.js → Icon-DuIlne4x.js} +2 -2
  107. package/dist/{Icon-Bgkq1egx.js.map → Icon-DuIlne4x.js.map} +1 -1
  108. package/dist/Icon.js +1 -1
  109. package/dist/{InputMask-DkvZ4MIT.js → InputMask-HjaNCb73.js} +3 -3
  110. package/dist/{InputMask-DkvZ4MIT.js.map → InputMask-HjaNCb73.js.map} +1 -1
  111. package/dist/InputMask.js +1 -1
  112. package/dist/{InteractiveCard-B3_FAoIE.js → InteractiveCard-GTYbR6Xy.js} +3 -3
  113. package/dist/{InteractiveCard-B3_FAoIE.js.map → InteractiveCard-GTYbR6Xy.js.map} +1 -1
  114. package/dist/InteractiveCard.js +1 -1
  115. package/dist/{Layout-DTAU7jS5.js → Layout-VfhlilMG.js} +2 -2
  116. package/dist/{Layout-DTAU7jS5.js.map → Layout-VfhlilMG.js.map} +1 -1
  117. package/dist/Layout.js +1 -1
  118. package/dist/{Link-DSyeiS7g.js → Link-jTvzyXca.js} +3 -3
  119. package/dist/{Link-DSyeiS7g.js.map → Link-jTvzyXca.js.map} +1 -1
  120. package/dist/Link.js +1 -1
  121. package/dist/{LinkButton-DOI4osnN.js → LinkButton-DGyHR1E7.js} +2 -2
  122. package/dist/{LinkButton-DOI4osnN.js.map → LinkButton-DGyHR1E7.js.map} +1 -1
  123. package/dist/LinkButton.js +1 -1
  124. package/dist/{List-Cyvkt0Px.js → List-CJZjElAQ.js} +2 -2
  125. package/dist/{List-Cyvkt0Px.js.map → List-CJZjElAQ.js.map} +1 -1
  126. package/dist/List.js +1 -1
  127. package/dist/{ListView-VzdUffCe.js → ListView-mujFK6mQ.js} +3 -3
  128. package/dist/{ListView-VzdUffCe.js.map → ListView-mujFK6mQ.js.map} +1 -1
  129. package/dist/ListView.js +1 -1
  130. package/dist/{Listbox-SRBgb1VS.js → Listbox-BtAgBDRS.js} +6 -6
  131. package/dist/{Listbox-SRBgb1VS.js.map → Listbox-BtAgBDRS.js.map} +1 -1
  132. package/dist/Listbox.css +29 -29
  133. package/dist/Listbox.js +1 -1
  134. package/dist/Listbox.module-HAXMOKvC.js +18 -0
  135. package/dist/Listbox.module-HAXMOKvC.js.map +1 -0
  136. package/dist/{Menu-Bxbrulia.js → Menu-BXsmCP20.js} +6 -5
  137. package/dist/{Menu-Bxbrulia.js.map → Menu-BXsmCP20.js.map} +1 -1
  138. package/dist/Menu.js +1 -1
  139. package/dist/MultiSelectField.js +1 -1
  140. package/dist/{MultiSelectFieldSync-B6J42MpG.js → MultiSelectFieldSync-DGpGgu8q.js} +91 -176
  141. package/dist/MultiSelectFieldSync-DGpGgu8q.js.map +1 -0
  142. package/dist/MultiSelectMenu.d.ts +2 -0
  143. package/dist/MultiSelectMenu.js +2 -0
  144. package/dist/MultiSelectMenu.js.map +1 -0
  145. package/dist/MultiSelectMenuSync-DiLddJDw.js +432 -0
  146. package/dist/MultiSelectMenuSync-DiLddJDw.js.map +1 -0
  147. package/dist/{NumberField-BgeDEoHw.js → NumberField-svhZp1kB.js} +8 -8
  148. package/dist/{NumberField-BgeDEoHw.js.map → NumberField-svhZp1kB.js.map} +1 -1
  149. package/dist/NumberField.js +1 -1
  150. package/dist/Overflow.js +2 -2
  151. package/dist/{Page-DgqEClR7.js → Page-Be029Dij.js} +123 -82
  152. package/dist/Page-Be029Dij.js.map +1 -0
  153. package/dist/Page.css +84 -72
  154. package/dist/Page.js +1 -1
  155. package/dist/{Pagination-DIredMzG.js → Pagination-BAwqfl_2.js} +8 -8
  156. package/dist/{Pagination-DIredMzG.js.map → Pagination-BAwqfl_2.js.map} +1 -1
  157. package/dist/Pagination.js +1 -1
  158. package/dist/{Popover-CsVesD9_.js → Popover-D0qSKZ1J.js} +6 -5
  159. package/dist/{Popover-CsVesD9_.js.map → Popover-D0qSKZ1J.js.map} +1 -1
  160. package/dist/{Popover-ZyaN26OB.js → Popover-DxZF6lbJ.js} +28 -15
  161. package/dist/Popover-DxZF6lbJ.js.map +1 -0
  162. package/dist/Popover.js +1 -1
  163. package/dist/{ProgressBar-x1cyKo1E.js → ProgressBar-JpRDW5vG.js} +7 -7
  164. package/dist/{ProgressBar-x1cyKo1E.js.map → ProgressBar-JpRDW5vG.js.map} +1 -1
  165. package/dist/ProgressBar.js +1 -1
  166. package/dist/{Radio-Beneo_h3.js → Radio-BOq9UkpC.js} +2 -2
  167. package/dist/{Radio-Beneo_h3.js.map → Radio-BOq9UkpC.js.map} +1 -1
  168. package/dist/{Radio-D8HSazJ6.js → Radio-BQg7exDG.js} +17 -8
  169. package/dist/{Radio-D8HSazJ6.js.map → Radio-BQg7exDG.js.map} +1 -1
  170. package/dist/Radio.js +1 -1
  171. package/dist/{SearchField-Dn_5cMo3.js → SearchField-im7AHGYo.js} +4 -4
  172. package/dist/{SearchField-Dn_5cMo3.js.map → SearchField-im7AHGYo.js.map} +1 -1
  173. package/dist/SearchField.js +1 -1
  174. package/dist/{SegmentedControl-BshzGPsW.js → SegmentedControl-7fDLhgvh.js} +3 -3
  175. package/dist/{SegmentedControl-BshzGPsW.js.map → SegmentedControl-7fDLhgvh.js.map} +1 -1
  176. package/dist/SegmentedControl.js +1 -1
  177. package/dist/{SelectCard-D94UKLxM.js → SelectCard-cu4MBuh8.js} +24 -15
  178. package/dist/{SelectCard-D94UKLxM.js.map → SelectCard-cu4MBuh8.js.map} +1 -1
  179. package/dist/SelectCard.css +23 -18
  180. package/dist/SelectCard.js +1 -1
  181. package/dist/SelectField.js +1 -1
  182. package/dist/SelectFieldLabel-Dr8HeW3N.js +31 -0
  183. package/dist/SelectFieldLabel-Dr8HeW3N.js.map +1 -0
  184. package/dist/{SelectFieldSync-BQrC0j2-.js → SelectFieldSync-CJ2Ie_v1.js} +79 -168
  185. package/dist/SelectFieldSync-CJ2Ie_v1.js.map +1 -0
  186. package/dist/SelectMenu.d.ts +2 -0
  187. package/dist/SelectMenu.js +2 -0
  188. package/dist/SelectMenu.js.map +1 -0
  189. package/dist/SelectMenuSync-CJA_coqD.js +327 -0
  190. package/dist/SelectMenuSync-CJA_coqD.js.map +1 -0
  191. package/dist/SelectOptions-Bf4xsFek.js +26 -0
  192. package/dist/SelectOptions-Bf4xsFek.js.map +1 -0
  193. package/dist/{SelectTrigger-D8xkq1wa.js → SelectTrigger-ObsnAKNp.js} +4 -4
  194. package/dist/{SelectTrigger-D8xkq1wa.js.map → SelectTrigger-ObsnAKNp.js.map} +1 -1
  195. package/dist/SelectTrigger.js +1 -1
  196. package/dist/{SelectTriggerBase-CBS5URqs.js → SelectTriggerBase-DKfOL2RJ.js} +8 -8
  197. package/dist/{SelectTriggerBase-CBS5URqs.js.map → SelectTriggerBase-DKfOL2RJ.js.map} +1 -1
  198. package/dist/{SideNav-2CgD8uxD.js → SideNav-KksbSQn7.js} +3 -3
  199. package/dist/{SideNav-2CgD8uxD.js.map → SideNav-KksbSQn7.js.map} +1 -1
  200. package/dist/SideNav.js +1 -1
  201. package/dist/Skeleton.js +1 -1
  202. package/dist/{Spinner-CpEm3Lud.js → Spinner-BqmcE2pb.js} +2 -2
  203. package/dist/{Spinner-CpEm3Lud.js.map → Spinner-BqmcE2pb.js.map} +1 -1
  204. package/dist/Spinner.js +1 -1
  205. package/dist/{SrOnly-CrdBTl6E.js → SrOnly-eUpYGpAT.js} +2 -2
  206. package/dist/{SrOnly-CrdBTl6E.js.map → SrOnly-eUpYGpAT.js.map} +1 -1
  207. package/dist/SrOnly.js +1 -1
  208. package/dist/{Stepper-D71Zhlr9.js → Stepper-Dt8_ImvJ.js} +4 -4
  209. package/dist/{Stepper-D71Zhlr9.js.map → Stepper-Dt8_ImvJ.js.map} +1 -1
  210. package/dist/Stepper.js +1 -1
  211. package/dist/{Switch-DxkmA-o4.js → Switch-DpPHr3G3.js} +5 -5
  212. package/dist/{Switch-DxkmA-o4.js.map → Switch-DpPHr3G3.js.map} +1 -1
  213. package/dist/Switch.js +1 -1
  214. package/dist/{Tab-2mEMF0vc.js → Tab-DO7LaUbw.js} +3 -3
  215. package/dist/{Tab-2mEMF0vc.js.map → Tab-DO7LaUbw.js.map} +1 -1
  216. package/dist/Tab.js +1 -1
  217. package/dist/Table.js +1 -1
  218. package/dist/{Text-BqES2rv3.js → Text-BJo4oMI2.js} +2 -2
  219. package/dist/{Text-BqES2rv3.js.map → Text-BJo4oMI2.js.map} +1 -1
  220. package/dist/Text.js +1 -1
  221. package/dist/{TextField-Dk90SWXl.js → TextField-BW8sJAls.js} +2 -2
  222. package/dist/{TextField-Dk90SWXl.js.map → TextField-BW8sJAls.js.map} +1 -1
  223. package/dist/{TextField-Dn6HWZoH.js → TextField-DeHpgPag.js} +12 -7
  224. package/dist/TextField-DeHpgPag.js.map +1 -0
  225. package/dist/TextField.js +1 -1
  226. package/dist/{Textarea-D4gqy2ZR.js → Textarea-DyqdMTvQ.js} +5 -5
  227. package/dist/{Textarea-D4gqy2ZR.js.map → Textarea-DyqdMTvQ.js.map} +1 -1
  228. package/dist/Textarea.js +1 -1
  229. package/dist/{ThemeProvider-BwZHpkFv.js → ThemeProvider-CaYW3RuA.js} +2 -2
  230. package/dist/{ThemeProvider-BwZHpkFv.js.map → ThemeProvider-CaYW3RuA.js.map} +1 -1
  231. package/dist/ThemeProvider.js +1 -1
  232. package/dist/{TimeField-DgdGwPF9.js → TimeField-Dc0Y1JD-.js} +6 -7
  233. package/dist/{TimeField-DgdGwPF9.js.map → TimeField-Dc0Y1JD-.js.map} +1 -1
  234. package/dist/TimeField.js +1 -1
  235. package/dist/Toast.js +2 -2
  236. package/dist/{Toaster-BBcWImWl.js → Toaster-DikGo_hR.js} +2 -2
  237. package/dist/{Toaster-BBcWImWl.js.map → Toaster-DikGo_hR.js.map} +1 -1
  238. package/dist/{Toaster-C07D40P9.js → Toaster-b0-Ub3yt.js} +7 -7
  239. package/dist/{Toaster-C07D40P9.js.map → Toaster-b0-Ub3yt.js.map} +1 -1
  240. package/dist/{Toolbar-4LHKM6ub.js → Toolbar-DAuz4Gs2.js} +41 -129
  241. package/dist/Toolbar-DAuz4Gs2.js.map +1 -0
  242. package/dist/Toolbar.js +1 -1
  243. package/dist/{Tooltip-BiW5nNAy.js → Tooltip-Bupqao9B.js} +5 -4
  244. package/dist/{Tooltip-BiW5nNAy.js.map → Tooltip-Bupqao9B.js.map} +1 -1
  245. package/dist/Tooltip.js +1 -1
  246. package/dist/{YearlessDateInputWithPicker-CxfcJqro.js → YearlessDateInputWithPicker-DFi08TLG.js} +13 -15
  247. package/dist/YearlessDateInputWithPicker-DFi08TLG.js.map +1 -0
  248. package/dist/YearlessDateInputWithPicker.css +33 -33
  249. package/dist/beta/components/MultiSelectField/MultiSelectFieldSync.d.ts +2 -3
  250. package/dist/beta/components/MultiSelectField/internal/useComboMultiple.d.ts +8 -7
  251. package/dist/beta/components/MultiSelectField/internal/useSelectModeMultiple.d.ts +6 -4
  252. package/dist/beta/components/MultiSelectField/types.d.ts +2 -3
  253. package/dist/beta/components/MultiSelectMenu/MultiSelectMenu.d.ts +30 -0
  254. package/dist/beta/components/MultiSelectMenu/MultiSelectMenuSync.d.ts +54 -0
  255. package/dist/beta/components/MultiSelectMenu/index.d.ts +3 -0
  256. package/dist/beta/components/MultiSelectMenu/types.d.ts +170 -0
  257. package/dist/beta/components/SelectField/SelectFieldSync.d.ts +2 -3
  258. package/dist/beta/components/SelectField/internal/SelectFieldComboboxMode.d.ts +1 -1
  259. package/dist/beta/components/SelectField/internal/SelectFieldSelectMode.d.ts +1 -1
  260. package/dist/beta/components/SelectField/internal/useCombo.d.ts +7 -7
  261. package/dist/beta/components/SelectField/internal/useSelectMode.d.ts +7 -6
  262. package/dist/beta/components/SelectField/types.d.ts +2 -9
  263. package/dist/beta/components/SelectMenu/SelectMenu.d.ts +27 -0
  264. package/dist/beta/components/SelectMenu/SelectMenuSync.d.ts +41 -0
  265. package/dist/beta/components/SelectMenu/index.d.ts +3 -0
  266. package/dist/beta/components/SelectMenu/internal/useMenuInteraction.d.ts +72 -0
  267. package/dist/beta/components/SelectMenu/types.d.ts +153 -0
  268. package/dist/beta/components/Table/DataTable/DataTable.d.ts +7 -1
  269. package/dist/beta/components/Table/DataTable/internal/cells/CellFocusContext.d.ts +1 -1
  270. package/dist/beta/components/Table/DataTable/internal/cells/CellStatus.d.ts +12 -0
  271. package/dist/beta/components/Table/DataTable/internal/util/getTanStackColumnDef.d.ts +7 -1
  272. package/dist/beta/components/Table/createColumnHelper.d.ts +6 -0
  273. package/dist/beta/components/Table/types.d.ts +20 -0
  274. package/dist/beta/components/Toolbar/ToolbarSelect.d.ts +3 -3
  275. package/dist/beta/components/index.d.ts +2 -0
  276. package/dist/beta.js +10 -8
  277. package/dist/beta.js.map +1 -1
  278. package/dist/components/Announcement/Announcement.figma.d.ts +1 -0
  279. package/dist/components/Checkbox/internal/Checkbox.d.ts +8 -0
  280. package/dist/components/DateFieldYearless/internal/YearlessDateSelectionPopover.d.ts +1 -1
  281. package/dist/components/DndSort/internal/test-utils.d.ts +15 -8
  282. package/dist/components/FieldMessage/FieldMessage.figma.d.ts +1 -0
  283. package/dist/components/Page/Page.d.ts +1 -1
  284. package/dist/components/Page/PageContent.d.ts +5 -5
  285. package/dist/components/Page/PageContext.d.ts +2 -0
  286. package/dist/components/Page/PageFooter.d.ts +1 -0
  287. package/dist/components/Radio/internal/Radio.d.ts +8 -0
  288. package/dist/components/Toolbar/ToolbarSelect.d.ts +3 -3
  289. package/dist/{match-sorter.esm-adzV1NDp.js → downshift.esm-xtSnQp44.js} +3 -907
  290. package/dist/downshift.esm-xtSnQp44.js.map +1 -0
  291. package/dist/{floating-ui.react-S01OoTc9.js → floating-ui.react-C_s3_nEb.js} +2 -2
  292. package/dist/{floating-ui.react-S01OoTc9.js.map → floating-ui.react-C_s3_nEb.js.map} +1 -1
  293. package/dist/{floating-ui.react-dom-DSiPHZwm.js → floating-ui.react-dom-imrk9N49.js} +2 -17
  294. package/dist/floating-ui.react-dom-imrk9N49.js.map +1 -0
  295. package/dist/{index-DuDm69S1.js → index-D6ag_WQW.js} +4 -4
  296. package/dist/{index-DuDm69S1.js.map → index-D6ag_WQW.js.map} +1 -1
  297. package/dist/{index-SvGbrGuT.js → index-De1g9FRV.js} +2 -2
  298. package/dist/{index-SvGbrGuT.js.map → index-De1g9FRV.js.map} +1 -1
  299. package/dist/index.js +73 -100
  300. package/dist/index.js.map +1 -1
  301. package/dist/internal/components/MultiSelectOptions.d.ts +23 -0
  302. package/dist/{beta/components/SelectField/internal/FieldDialog/FieldDialog.d.ts → internal/components/OptionsDialog/OptionsDialog.d.ts} +2 -2
  303. package/dist/internal/components/OptionsPanel.d.ts +26 -0
  304. package/dist/internal/components/OptionsPopover/OptionsPopover.d.ts +16 -0
  305. package/dist/internal/components/Popover/Popover.d.ts +3 -2
  306. package/dist/internal/components/Popover/PopoverContent.d.ts +4 -0
  307. package/dist/internal/components/Popover/internal/PopoverContext.d.ts +2 -2
  308. package/dist/internal/components/SelectOption.d.ts +13 -0
  309. package/dist/internal/components/SelectOptions.d.ts +23 -0
  310. package/dist/internal/components/VirtualizedOptionsPanel.d.ts +2 -0
  311. package/dist/internal/functions/buildSelectItems.d.ts +22 -0
  312. package/dist/internal/functions/syncFilterUtils.d.ts +10 -0
  313. package/dist/{beta/components/SelectField/internal → internal/hooks}/useGroupedOptions.d.ts +4 -3
  314. package/dist/{beta/components/SelectField/internal/useFieldListSections.d.ts → internal/hooks/useOptionsSections.d.ts} +7 -8
  315. package/dist/{beta/components/SelectField/internal → internal/hooks}/usePinnedOptions.d.ts +1 -1
  316. package/dist/{beta/components/SelectField/internal → internal/hooks}/useProcessedOptions.d.ts +2 -2
  317. package/dist/internal/hooks/useSelectOrchestration.d.ts +38 -0
  318. package/dist/{beta/components/MultiSelectField/internal → internal/hooks}/useToggleSelection.d.ts +2 -2
  319. package/dist/{beta/components/SelectField/internal/types.d.ts → internal/types/selectFieldInternalTypes.d.ts} +11 -3
  320. package/dist/match-sorter.esm-CGAauEiU.js +908 -0
  321. package/dist/match-sorter.esm-CGAauEiU.js.map +1 -0
  322. package/dist/safePopover-BDso-xSH.js +17 -0
  323. package/dist/safePopover-BDso-xSH.js.map +1 -0
  324. package/dist/{FieldDialog-DaRvLS6m.js → syncFilterUtils-vt8ldsES.js} +287 -146
  325. package/dist/syncFilterUtils-vt8ldsES.js.map +1 -0
  326. package/dist/{FieldDialog.css → syncFilterUtils.css} +18 -11
  327. package/dist/{useDrilldown-CuvPT4gS.js → useDrilldown-wwXRpNgb.js} +5 -5
  328. package/dist/{useDrilldown-CuvPT4gS.js.map → useDrilldown-wwXRpNgb.js.map} +1 -1
  329. package/dist/useMenuInteraction-zR_78KQC.js +249 -0
  330. package/dist/useMenuInteraction-zR_78KQC.js.map +1 -0
  331. package/dist/useToggleSelection-BdXW3Zg3.js +63 -0
  332. package/dist/useToggleSelection-BdXW3Zg3.js.map +1 -0
  333. package/dist/{utils-pudAMGnO.js → utils-CM48ODEJ.js} +3 -13
  334. package/dist/utils-CM48ODEJ.js.map +1 -0
  335. package/dist/warnOnce-Y9PRHcU4.js +13 -0
  336. package/dist/warnOnce-Y9PRHcU4.js.map +1 -0
  337. package/package.json +10 -9
  338. package/dist/Checkbox-LPr8zpzs.js.map +0 -1
  339. package/dist/DataTable-Cau6ylNR.js.map +0 -1
  340. package/dist/DateFieldRange-B1BR8K7C.js.map +0 -1
  341. package/dist/DateFieldSingle-CaWruBBO.js.map +0 -1
  342. package/dist/FieldDialog-DaRvLS6m.js.map +0 -1
  343. package/dist/Listbox.module-XuKszT3X.js +0 -18
  344. package/dist/Listbox.module-XuKszT3X.js.map +0 -1
  345. package/dist/MultiSelectFieldSync-B6J42MpG.js.map +0 -1
  346. package/dist/Page-DgqEClR7.js.map +0 -1
  347. package/dist/Popover-ZyaN26OB.js.map +0 -1
  348. package/dist/SelectFieldSync-BQrC0j2-.js.map +0 -1
  349. package/dist/TextField-Dn6HWZoH.js.map +0 -1
  350. package/dist/Toolbar-4LHKM6ub.js.map +0 -1
  351. package/dist/YearlessDateInputWithPicker-CxfcJqro.js.map +0 -1
  352. package/dist/beta/components/MultiSelectField/internal/MultiSelectFieldList.d.ts +0 -24
  353. package/dist/beta/components/SelectField/internal/FieldListBase.d.ts +0 -27
  354. package/dist/beta/components/SelectField/internal/FieldPopover/FieldPopover.d.ts +0 -9
  355. package/dist/beta/components/SelectField/internal/SelectFieldList.d.ts +0 -26
  356. package/dist/beta/components/SelectField/internal/SelectFieldListItem.d.ts +0 -14
  357. package/dist/beta/components/SelectField/internal/VirtualizedFieldListBase.d.ts +0 -2
  358. package/dist/beta/components/SelectField/internal/buildDownshiftItems.d.ts +0 -22
  359. package/dist/beta/components/Table/DataTable/internal/cells/CellError.d.ts +0 -10
  360. package/dist/floating-ui.react-dom-DSiPHZwm.js.map +0 -1
  361. package/dist/match-sorter.esm-adzV1NDp.js.map +0 -1
  362. package/dist/utils-pudAMGnO.js.map +0 -1
  363. /package/dist/{beta/components/SelectField/internal → internal/components}/InView.d.ts +0 -0
@@ -289,8 +289,8 @@ table[data-anv=simple-table-base] ._table-body_zx1bt_2 {
289
289
  line-height: revert-layer;
290
290
  }@layer starter, reset, base, state, application;
291
291
  @layer reset {
292
- ._data-table-body-cell_1rxk3_2,
293
- ._data-table-body-cell-input_1rxk3_3 {
292
+ ._data-table-body-cell_kmr30_2,
293
+ ._data-table-body-cell-input_kmr30_3 {
294
294
  all: unset;
295
295
  font-family: var(--font-family-base, "Nunito Sans", sans-serif);
296
296
  font-size: 100%;
@@ -305,91 +305,104 @@ table[data-anv=simple-table-base] ._table-body_zx1bt_2 {
305
305
  }
306
306
  }
307
307
  @layer base {
308
- ._table-body-cell_1rxk3_18,
309
- ._table-header-cell_1rxk3_19,
310
- ._table-footer-cell_1rxk3_20 {
308
+ ._table-body-cell_kmr30_18,
309
+ ._table-header-cell_kmr30_19,
310
+ ._table-footer-cell_kmr30_20 {
311
311
  display: flex;
312
312
  align-items: center;
313
313
  }
314
- ._table-header-cell_1rxk3_19 {
314
+ ._table-header-cell_kmr30_19 {
315
315
  align-items: flex-end;
316
316
  }
317
- ._data-table-body-cell_1rxk3_2 {
317
+ ._data-table-body-cell_kmr30_2 {
318
318
  align-items: center;
319
319
  }
320
320
  }
321
321
  @layer state {
322
- ._data-table-body-cell_1rxk3_2:focus, ._data-table-body-cell_1rxk3_2:focus-within, ._data-table-body-cell_1rxk3_2._data-table-body-cell-editing_1rxk3_32,
323
- ._data-table-header-cell_1rxk3_33:focus,
324
- ._data-table-header-cell_1rxk3_33:focus-within,
325
- ._data-table-header-cell_1rxk3_33._data-table-body-cell-editing_1rxk3_32,
326
- ._data-table-footer-cell_1rxk3_36:focus,
327
- ._data-table-footer-cell_1rxk3_36:focus-within,
328
- ._data-table-footer-cell_1rxk3_36._data-table-body-cell-editing_1rxk3_32 {
322
+ ._data-table-body-cell_kmr30_2:focus, ._data-table-body-cell_kmr30_2:focus-within, ._data-table-body-cell_kmr30_2._data-table-body-cell-editing_kmr30_32,
323
+ ._data-table-header-cell_kmr30_33:focus,
324
+ ._data-table-header-cell_kmr30_33:focus-within,
325
+ ._data-table-header-cell_kmr30_33._data-table-body-cell-editing_kmr30_32,
326
+ ._data-table-footer-cell_kmr30_36:focus,
327
+ ._data-table-footer-cell_kmr30_36:focus-within,
328
+ ._data-table-footer-cell_kmr30_36._data-table-body-cell-editing_kmr30_32 {
329
329
  outline: 2px solid var(--focus-ring-color);
330
330
  outline-offset: -2px;
331
331
  position: relative;
332
332
  }
333
- ._data-table-body-cell_1rxk3_2:focus button:focus-visible, ._data-table-body-cell_1rxk3_2:focus button:focus-visible ~ *,
334
- ._data-table-body-cell_1rxk3_2:focus input:focus-visible,
335
- ._data-table-body-cell_1rxk3_2:focus input:focus-visible ~ *, ._data-table-body-cell_1rxk3_2:focus-within button:focus-visible, ._data-table-body-cell_1rxk3_2:focus-within button:focus-visible ~ *,
336
- ._data-table-body-cell_1rxk3_2:focus-within input:focus-visible,
337
- ._data-table-body-cell_1rxk3_2:focus-within input:focus-visible ~ *, ._data-table-body-cell_1rxk3_2._data-table-body-cell-editing_1rxk3_32 button:focus-visible, ._data-table-body-cell_1rxk3_2._data-table-body-cell-editing_1rxk3_32 button:focus-visible ~ *,
338
- ._data-table-body-cell_1rxk3_2._data-table-body-cell-editing_1rxk3_32 input:focus-visible,
339
- ._data-table-body-cell_1rxk3_2._data-table-body-cell-editing_1rxk3_32 input:focus-visible ~ *,
340
- ._data-table-header-cell_1rxk3_33:focus button:focus-visible,
341
- ._data-table-header-cell_1rxk3_33:focus button:focus-visible ~ *,
342
- ._data-table-header-cell_1rxk3_33:focus input:focus-visible,
343
- ._data-table-header-cell_1rxk3_33:focus input:focus-visible ~ *,
344
- ._data-table-header-cell_1rxk3_33:focus-within button:focus-visible,
345
- ._data-table-header-cell_1rxk3_33:focus-within button:focus-visible ~ *,
346
- ._data-table-header-cell_1rxk3_33:focus-within input:focus-visible,
347
- ._data-table-header-cell_1rxk3_33:focus-within input:focus-visible ~ *,
348
- ._data-table-header-cell_1rxk3_33._data-table-body-cell-editing_1rxk3_32 button:focus-visible,
349
- ._data-table-header-cell_1rxk3_33._data-table-body-cell-editing_1rxk3_32 button:focus-visible ~ *,
350
- ._data-table-header-cell_1rxk3_33._data-table-body-cell-editing_1rxk3_32 input:focus-visible,
351
- ._data-table-header-cell_1rxk3_33._data-table-body-cell-editing_1rxk3_32 input:focus-visible ~ *,
352
- ._data-table-footer-cell_1rxk3_36:focus button:focus-visible,
353
- ._data-table-footer-cell_1rxk3_36:focus button:focus-visible ~ *,
354
- ._data-table-footer-cell_1rxk3_36:focus input:focus-visible,
355
- ._data-table-footer-cell_1rxk3_36:focus input:focus-visible ~ *,
356
- ._data-table-footer-cell_1rxk3_36:focus-within button:focus-visible,
357
- ._data-table-footer-cell_1rxk3_36:focus-within button:focus-visible ~ *,
358
- ._data-table-footer-cell_1rxk3_36:focus-within input:focus-visible,
359
- ._data-table-footer-cell_1rxk3_36:focus-within input:focus-visible ~ *,
360
- ._data-table-footer-cell_1rxk3_36._data-table-body-cell-editing_1rxk3_32 button:focus-visible,
361
- ._data-table-footer-cell_1rxk3_36._data-table-body-cell-editing_1rxk3_32 button:focus-visible ~ *,
362
- ._data-table-footer-cell_1rxk3_36._data-table-body-cell-editing_1rxk3_32 input:focus-visible,
363
- ._data-table-footer-cell_1rxk3_36._data-table-body-cell-editing_1rxk3_32 input:focus-visible ~ * {
333
+ ._data-table-body-cell_kmr30_2:focus button:focus-visible, ._data-table-body-cell_kmr30_2:focus button:focus-visible ~ *,
334
+ ._data-table-body-cell_kmr30_2:focus input:focus-visible,
335
+ ._data-table-body-cell_kmr30_2:focus input:focus-visible ~ *, ._data-table-body-cell_kmr30_2:focus-within button:focus-visible, ._data-table-body-cell_kmr30_2:focus-within button:focus-visible ~ *,
336
+ ._data-table-body-cell_kmr30_2:focus-within input:focus-visible,
337
+ ._data-table-body-cell_kmr30_2:focus-within input:focus-visible ~ *, ._data-table-body-cell_kmr30_2._data-table-body-cell-editing_kmr30_32 button:focus-visible, ._data-table-body-cell_kmr30_2._data-table-body-cell-editing_kmr30_32 button:focus-visible ~ *,
338
+ ._data-table-body-cell_kmr30_2._data-table-body-cell-editing_kmr30_32 input:focus-visible,
339
+ ._data-table-body-cell_kmr30_2._data-table-body-cell-editing_kmr30_32 input:focus-visible ~ *,
340
+ ._data-table-header-cell_kmr30_33:focus button:focus-visible,
341
+ ._data-table-header-cell_kmr30_33:focus button:focus-visible ~ *,
342
+ ._data-table-header-cell_kmr30_33:focus input:focus-visible,
343
+ ._data-table-header-cell_kmr30_33:focus input:focus-visible ~ *,
344
+ ._data-table-header-cell_kmr30_33:focus-within button:focus-visible,
345
+ ._data-table-header-cell_kmr30_33:focus-within button:focus-visible ~ *,
346
+ ._data-table-header-cell_kmr30_33:focus-within input:focus-visible,
347
+ ._data-table-header-cell_kmr30_33:focus-within input:focus-visible ~ *,
348
+ ._data-table-header-cell_kmr30_33._data-table-body-cell-editing_kmr30_32 button:focus-visible,
349
+ ._data-table-header-cell_kmr30_33._data-table-body-cell-editing_kmr30_32 button:focus-visible ~ *,
350
+ ._data-table-header-cell_kmr30_33._data-table-body-cell-editing_kmr30_32 input:focus-visible,
351
+ ._data-table-header-cell_kmr30_33._data-table-body-cell-editing_kmr30_32 input:focus-visible ~ *,
352
+ ._data-table-footer-cell_kmr30_36:focus button:focus-visible,
353
+ ._data-table-footer-cell_kmr30_36:focus button:focus-visible ~ *,
354
+ ._data-table-footer-cell_kmr30_36:focus input:focus-visible,
355
+ ._data-table-footer-cell_kmr30_36:focus input:focus-visible ~ *,
356
+ ._data-table-footer-cell_kmr30_36:focus-within button:focus-visible,
357
+ ._data-table-footer-cell_kmr30_36:focus-within button:focus-visible ~ *,
358
+ ._data-table-footer-cell_kmr30_36:focus-within input:focus-visible,
359
+ ._data-table-footer-cell_kmr30_36:focus-within input:focus-visible ~ *,
360
+ ._data-table-footer-cell_kmr30_36._data-table-body-cell-editing_kmr30_32 button:focus-visible,
361
+ ._data-table-footer-cell_kmr30_36._data-table-body-cell-editing_kmr30_32 button:focus-visible ~ *,
362
+ ._data-table-footer-cell_kmr30_36._data-table-body-cell-editing_kmr30_32 input:focus-visible,
363
+ ._data-table-footer-cell_kmr30_36._data-table-body-cell-editing_kmr30_32 input:focus-visible ~ * {
364
364
  outline: none;
365
365
  }
366
- ._data-table-body-cell_1rxk3_2._data-table-body-cell-editing_1rxk3_32,
367
- ._data-table-header-cell_1rxk3_33._data-table-body-cell-editing_1rxk3_32,
368
- ._data-table-footer-cell_1rxk3_36._data-table-body-cell-editing_1rxk3_32 {
366
+ ._data-table-body-cell_kmr30_2._data-table-body-cell-editing_kmr30_32,
367
+ ._data-table-header-cell_kmr30_33._data-table-body-cell-editing_kmr30_32,
368
+ ._data-table-footer-cell_kmr30_36._data-table-body-cell-editing_kmr30_32 {
369
369
  box-shadow: inset 0px 0px 4px 1px var(--focus-ring-color);
370
370
  }
371
- ._data-table-body-cell_1rxk3_2._data-table-body-cell-hovered_1rxk3_81 {
371
+ ._data-table-body-cell_kmr30_2._data-table-body-cell-hovered_kmr30_81 {
372
372
  --a2-table-cell-background-color: var(--a2-table-background-color);
373
373
  }
374
- ._data-table-body-cell_1rxk3_2._data-table-body-cell-error_1rxk3_84 {
374
+ ._data-table-body-cell_kmr30_2._data-table-body-cell-error_kmr30_84 {
375
375
  outline: 2px solid var(--border-color-danger, #e13212);
376
376
  outline-offset: -2px;
377
377
  --a2-table-cell-font-color: var(--foreground-color-danger, #e13212);
378
378
  --a2-table-cell-empty-font-color: var(--foreground-color-danger, #e13212);
379
379
  }
380
- ._data-table-body-cell_1rxk3_2._data-table-body-cell-error_1rxk3_84 > [data-anv=flex] {
380
+ ._data-table-body-cell_kmr30_2._data-table-body-cell-error_kmr30_84 > [data-anv=flex] {
381
381
  color: inherit;
382
382
  }
383
- ._data-table-body-cell_1rxk3_2._data-table-body-cell-error_1rxk3_84:focus, ._data-table-body-cell_1rxk3_2._data-table-body-cell-error_1rxk3_84:focus-within {
383
+ ._data-table-body-cell_kmr30_2._data-table-body-cell-error_kmr30_84:focus, ._data-table-body-cell_kmr30_2._data-table-body-cell-error_kmr30_84:focus-within {
384
384
  outline: 2px solid var(--focus-ring-color);
385
385
  }
386
- ._data-table-body-cell_1rxk3_2._data-table-body-cell-error_1rxk3_84._data-table-body-cell-editing_1rxk3_32 {
386
+ ._data-table-body-cell_kmr30_2._data-table-body-cell-error_kmr30_84._data-table-body-cell-editing_kmr30_32 {
387
387
  --a2-table-cell-font-color: inherit;
388
388
  }
389
- ._cell-error-icon_1rxk3_99 {
390
- color: var(--foreground-color-danger, #e13212);
389
+ ._data-table-body-cell_kmr30_2._data-table-body-cell-warning_kmr30_99 {
390
+ outline: 2px solid var(--status-color-warning, #ffbe00);
391
+ outline-offset: -2px;
392
+ }
393
+ ._data-table-body-cell_kmr30_2._data-table-body-cell-warning_kmr30_99:focus, ._data-table-body-cell_kmr30_2._data-table-body-cell-warning_kmr30_99:focus-within {
394
+ outline: 2px solid var(--focus-ring-color);
395
+ }
396
+ ._cell-error-icon_kmr30_106,
397
+ ._cell-warning-icon_kmr30_107 {
391
398
  flex-shrink: 0;
392
399
  }
400
+ ._cell-error-icon_kmr30_106 {
401
+ color: var(--foreground-color-danger, #e13212);
402
+ }
403
+ ._cell-warning-icon_kmr30_107 {
404
+ color: var(--status-color-warning, #ffbe00);
405
+ }
393
406
  }@layer starter, reset, base, state, application;
394
407
  @layer reset {
395
408
  ._data-table-body-row_3jgem_2 {
@@ -1,17 +1,17 @@
1
1
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
2
  import { c as maskitoDateRangeOptionsGenerator, a as maskitoWithPlaceholder, u as useMaskito, b as maskitoParseDate } from './index.esm-C2ZhC_8d.js';
3
- import { T as TextField } from './TextField-Dn6HWZoH.js';
3
+ import { T as TextField } from './TextField-DeHpgPag.js';
4
4
  import { forwardRef, useState, useRef, useEffect, useMemo, useImperativeHandle, useCallback } from 'react';
5
- import { u as useMergeRefs } from './floating-ui.react-S01OoTc9.js';
6
- import { I as Icon } from './Icon-Bgkq1egx.js';
5
+ import { u as useMergeRefs } from './floating-ui.react-C_s3_nEb.js';
6
+ import { I as Icon } from './Icon-DuIlne4x.js';
7
7
  import { D as DateModeToPlaceholderMap, a as DateModeToFormatMap, S as SvgEvent, j as jsDateToUtcDateTime, c as convertStringToDate, T as TimezoneMessage, i as isoToUtcDate, v as validateDate } from './TimezoneMessage-Cnsl4cHT.js';
8
8
  import { m as makeZeroShortcutPreprocessor } from './makeZeroShortcutPreprocessor-CxsiGTRW.js';
9
9
  import { u as usePrevious } from './usePrevious-Bvq-5auG.js';
10
10
  import { D as DateTime } from './luxon-wpz4A-OQ.js';
11
- import { a as Calendar } from './Calendar-M8K2O28r.js';
11
+ import { a as Calendar } from './Calendar-SGlTt-bs.js';
12
12
  import { u as useOptionallyControlledState } from './useOptionallyControlledState-DbDuos5L.js';
13
- import { P as Popover } from './Popover-CsVesD9_.js';
14
13
  import { m as mergeRefs } from './useMergeRefs-Dfmtq9cI.js';
14
+ import { P as Popover } from './Popover-DxZF6lbJ.js';
15
15
  import { c as childrenToString } from './childrenToString-Bz9MqbHb.js';
16
16
  import { useTrackingId } from './useTrackingId.js';
17
17
  import { u as useFocusWithin } from './useFocusWithin-hi77jsrB.js';
@@ -517,57 +517,48 @@ const DateFieldRange = (props) => {
517
517
  if (disableCalendar) {
518
518
  return justTheField;
519
519
  }
520
- return /* @__PURE__ */ jsx("div", { ...wrapperProps, children: /* @__PURE__ */ jsxs(
521
- Popover,
522
- {
523
- ref: popoverRef,
524
- placement: "bottom-start",
525
- disableFlipFallback: true,
526
- disableAutoUpdate: true,
527
- children: [
528
- /* @__PURE__ */ jsx(Popover.Trigger, { children: ({ ref: iRef, onKeyDown }) => {
529
- const mergedRef = mergeRefs([
530
- inputRef,
531
- iRef
532
- ]);
533
- return /* @__PURE__ */ jsx(
534
- MaskedDateRangeInput,
535
- {
536
- ...commonFieldProps,
537
- ref: mergedRef,
538
- onKeyDown: (ev) => {
539
- onKeyDown?.(ev);
540
- handleInputKeyDown(ev);
541
- },
542
- onClick: () => popoverRef.current?.openPopover(),
543
- onFocus,
544
- onBlur
545
- }
546
- );
547
- } }),
548
- /* @__PURE__ */ jsx(Popover.Content, { ref: popoverContentRef, "data-testid": "calendar-popover", children: /* @__PURE__ */ jsx(
549
- DateFieldRangeCalendar,
550
- {
551
- startDate,
552
- endDate,
553
- onSelection: (v) => {
554
- if (v.endDate) {
555
- inputRef.current?.focus();
556
- popoverRef.current?.closePopover();
557
- }
558
- handleCalendarSelection(v);
559
- },
560
- minDate,
561
- maxDate,
562
- unavailable,
563
- timezone
520
+ return /* @__PURE__ */ jsx("div", { ...wrapperProps, children: /* @__PURE__ */ jsxs(Popover, { ref: popoverRef, placement: "bottom-start", role: "grid", children: [
521
+ /* @__PURE__ */ jsx(Popover.Trigger, { children: ({ ref: iRef, onKeyDown }) => {
522
+ const mergedRef = mergeRefs([
523
+ inputRef,
524
+ iRef
525
+ ]);
526
+ return /* @__PURE__ */ jsx(
527
+ MaskedDateRangeInput,
528
+ {
529
+ ...commonFieldProps,
530
+ ref: mergedRef,
531
+ onKeyDown: (ev) => {
532
+ onKeyDown?.(ev);
533
+ handleInputKeyDown(ev);
534
+ },
535
+ onClick: () => popoverRef.current?.openPopover(),
536
+ onFocus,
537
+ onBlur
538
+ }
539
+ );
540
+ } }),
541
+ /* @__PURE__ */ jsx(Popover.Content, { ref: popoverContentRef, "data-testid": "calendar-popover", children: /* @__PURE__ */ jsx(
542
+ DateFieldRangeCalendar,
543
+ {
544
+ startDate,
545
+ endDate,
546
+ onSelection: (v) => {
547
+ if (v.endDate) {
548
+ inputRef.current?.focus();
549
+ popoverRef.current?.closePopover();
564
550
  }
565
- ) })
566
- ]
567
- }
568
- ) });
551
+ handleCalendarSelection(v);
552
+ },
553
+ minDate,
554
+ maxDate,
555
+ unavailable,
556
+ timezone
557
+ }
558
+ ) })
559
+ ] }) });
569
560
  };
570
561
  DateFieldRange.displayName = "DateFieldRange";
571
562
 
572
563
  export { DateFieldRange as D, MaskedDateRangeInput as M, useDateFieldRangeState as a, DateFieldRangeCalendar as b, useDateFieldRangeConversion as u };
573
- //# sourceMappingURL=DateFieldRange-B1BR8K7C.js.map
564
+ //# sourceMappingURL=DateFieldRange-C8Uzrboc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateFieldRange-C8Uzrboc.js","sources":["../src/components/DateFieldRange/internal/maskito/dateRangePlaceholderMask.ts","../src/components/DateFieldRange/internal/MaskedDateRangeInput.tsx","../src/components/DateFieldRange/internal/useDateFieldRangeConversion.ts","../src/components/DateFieldRange/internal/useDateFieldRangeState.ts","../src/components/DateFieldRange/internal/DateFieldRangeCalendar.tsx","../src/components/DateFieldRange/internal/utils.ts","../src/components/DateFieldRange/DateFieldRange.tsx"],"sourcesContent":["import type { MaskitoOptions } from \"@maskito/core\";\nimport {\n MaskitoDateMode,\n maskitoDateRangeOptionsGenerator,\n maskitoWithPlaceholder,\n} from \"@maskito/kit\";\nimport { makeZeroShortcutPreprocessor } from \"../../../DateFieldSingle/internal/maskito/makeZeroShortcutPreprocessor\";\n\nexport type DateMode = Extract<\n MaskitoDateMode,\n \"dd/mm/yyyy\" | \"mm/dd/yyyy\" | \"yyyy/mm/dd\"\n>;\n\nconst datePlaceholderMask = ({\n mode,\n dateSeparator = \"/\",\n rangeSeparator = \" - \",\n placeholder,\n}: {\n mode: DateMode;\n dateSeparator?: string;\n rangeSeparator?: string;\n placeholder: string;\n}) => {\n const dateRangeOptions = maskitoDateRangeOptionsGenerator({\n mode,\n dateSeparator,\n rangeSeparator,\n });\n\n const { plugins, removePlaceholder, ...placeholderOptions } =\n maskitoWithPlaceholder(placeholder);\n\n const datePlaceholderMask = {\n ...dateRangeOptions,\n plugins: plugins.concat(dateRangeOptions.plugins || []),\n preprocessors: [\n ...placeholderOptions.preprocessors,\n ...dateRangeOptions.preprocessors,\n makeZeroShortcutPreprocessor(placeholder, dateSeparator),\n ],\n postprocessors: [\n // NOTE this is super fragile. If Maskito maintainers change the order of the post-processors, this will break.\n // The last postprocessor is the date swap postprocessor, which we don't want to run.\n // A unit test is added to ensure this doesn't break on a dependency update.\n ...dateRangeOptions.postprocessors.slice(0, -1),\n ...placeholderOptions.postprocessors,\n ],\n } satisfies Required<MaskitoOptions>;\n\n return { options: datePlaceholderMask, removePlaceholder };\n};\n\nexport default datePlaceholderMask;\n","import { maskitoParseDate } from \"@maskito/kit\";\nimport { useMaskito } from \"@maskito/react\";\nimport { TextField, TextFieldProps } from \"../../TextField/internal/TextField\";\nimport {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { useMergeRefs } from \"@floating-ui/react\";\nimport { DateTime } from \"luxon\";\nimport { Icon } from \"../../Icon\";\nimport Event from \"@servicetitan/hammer-icon/mdi/round/event.svg\";\nimport dateRangePlaceholderMask from \"./maskito/dateRangePlaceholderMask\";\nimport {\n DateModeToFormatMap,\n DateModeToPlaceholderMap,\n} from \"../../DateFieldSingle/internal/constants\";\nimport { DateMode } from \"../../DateFieldSingle/types\";\nimport { usePrevious } from \"../../../internal/hooks\";\nimport { jsDateToUtcDateTime } from \"../../DateFieldSingle/internal/utils\";\n\nconst RANGE_SEPARATOR = \" - \";\n\nexport type MaskedDateRangeInputChange = {\n startDate: DateTime | null;\n endDate: DateTime | null;\n isInputValid: boolean;\n isInputEmpty: boolean;\n};\n\nexport type MaskedDateRangeInputChangeHandler = (\n change: MaskedDateRangeInputChange,\n) => void;\n\nexport type MaskedDateRangeInputProps = Omit<\n TextFieldProps,\n \"onChange\" | \"value\" | \"ref\" | \"showCounter\" | \"hint\" | \"prefix\"\n> & {\n onChange: MaskedDateRangeInputChangeHandler;\n mode?: DateMode;\n startDate: DateTime | null;\n endDate: DateTime | null;\n disableHint?: boolean;\n};\n\nexport type MaskedDateRangeInputRef = HTMLInputElement & {\n setDateRange: (startDate: DateTime | null, endDate: DateTime | null) => void;\n};\n\n/**\n * A masked date input component that allows for the input of a date in a specific format.\n *\n * Provides a `setDates` method that can be used to set the date from outside the component (e.g from a calendar).\n *\n * @internal This component is not intended to be used directly in consumer code.\n *\n * @param props - The props for the MaskedDateRangeInput component.\n * @param props.onChange - The function to call when the date changes.\n * @param props.mode - The mode of the date input.\n * @param props.startDate - The start date.\n * @param props.endDate - The end date.\n * @param props.disableHint - Whether to disable the hint.\n */\nexport const MaskedDateRangeInput = forwardRef<\n MaskedDateRangeInputRef,\n MaskedDateRangeInputProps\n>(\n (\n {\n onChange,\n mode = \"mm/dd/yyyy\",\n startDate,\n endDate,\n disableHint = false,\n ...props\n },\n ref,\n ) => {\n const halfPlaceholder = DateModeToPlaceholderMap[mode];\n const fullPlaceholder = `${halfPlaceholder}${RANGE_SEPARATOR}${halfPlaceholder}`;\n\n // Tracks the value of the input as it is being typed.\n const [inputValue, setInputValue] = useState(fullPlaceholder);\n\n const { options, removePlaceholder } = dateRangePlaceholderMask({\n mode,\n placeholder: fullPlaceholder,\n dateSeparator: \"/\",\n rangeSeparator: RANGE_SEPARATOR,\n });\n const maskedInputRef = useMaskito({ options });\n const inputRef = useRef<HTMLInputElement>(null);\n const combinedRef = useMergeRefs([maskedInputRef, inputRef, ref]);\n const previousStartDate = usePrevious(startDate);\n const previousEndDate = usePrevious(endDate);\n const previousMode = usePrevious(mode);\n\n // Update the input value when the mode changes.\n useEffect(() => {\n if (mode !== previousMode) {\n setInputValue((previousInputValue) =>\n swapMode(previousInputValue, previousMode ?? mode, mode),\n );\n }\n }, [mode, fullPlaceholder, previousMode]);\n\n // Update the input value when the parent's start date or end date changes.\n useEffect(() => {\n if (startDate === undefined || endDate === undefined) return;\n // Return early if the values haven't actually changed.\n if (startDate === previousStartDate && endDate === previousEndDate)\n return;\n if (\n // plus one just represents a date that is guaranteed to be different.\n startDate?.equals(previousStartDate ?? startDate?.plus({ days: 1 })) &&\n (endDate?.equals(previousEndDate ?? endDate?.plus({ days: 1 })) ||\n endDate === previousEndDate)\n )\n return;\n const startDateString =\n startDate?.toFormat(DateModeToFormatMap[mode]) ?? halfPlaceholder;\n const endDateString =\n endDate?.toFormat(DateModeToFormatMap[mode]) ?? halfPlaceholder;\n const newInputValue = `${startDateString}${RANGE_SEPARATOR}${endDateString}`;\n setInputValue(newInputValue);\n }, [\n startDate,\n endDate,\n mode,\n halfPlaceholder,\n previousStartDate,\n previousEndDate,\n ]);\n\n const currentParsedData = useMemo(() => {\n return parseRangeInputValue(inputValue, mode, removePlaceholder);\n }, [inputValue, mode, removePlaceholder]);\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setInputValue(event.target.value);\n const {\n startDate: newlyParsedStartDate,\n endDate: newlyParsedEndDate,\n isInputValid,\n isInputEmpty,\n isHalfEmpty,\n } = parseRangeInputValue(event.target.value, mode, removePlaceholder);\n\n // We only want to call onChange for substantive changes.\n // This is to avoid unnecessary re-renders of upstream components.\n const isValueDifferent =\n isInputValid !== currentParsedData.isInputValid || // The input has changed validity\n isInputEmpty !== currentParsedData.isInputEmpty || // The input has changed emptiness\n (newlyParsedStartDate === null) !==\n (currentParsedData.startDate === null) || // The start date has changed from empty to non-empty or vice versa\n (newlyParsedEndDate === null) !==\n (currentParsedData.endDate === null) || // The end date has changed from empty to non-empty or vice versa\n isHalfEmpty !== currentParsedData.isHalfEmpty || // The half has changed from empty to non-empty or vice versa\n (newlyParsedStartDate !== null &&\n currentParsedData.startDate !== null &&\n !newlyParsedStartDate.equals(currentParsedData.startDate)) || // The start date has changed\n (newlyParsedEndDate !== null &&\n currentParsedData.endDate !== null &&\n !newlyParsedEndDate.equals(currentParsedData.endDate)); // The end date has changed\n\n // If the value has not changed, we do not need to call onChange.\n if (!isValueDifferent) return;\n onChange?.({\n startDate: isInputEmpty\n ? null\n : (newlyParsedStartDate ?? startDate ?? null),\n endDate:\n isInputEmpty || isHalfEmpty\n ? null\n : (newlyParsedEndDate ?? endDate ?? null),\n isInputValid,\n isInputEmpty,\n });\n };\n\n // Extend the input ref with additional methods.\n // This provides a way to set the input value from outside the component.\n useImperativeHandle(ref, () => {\n const input = inputRef.current;\n if (!input) return null as unknown as MaskedDateRangeInputRef;\n return Object.assign(input, {\n setDateRange: (\n startDate: DateTime | null,\n endDate: DateTime | null,\n ) => {\n const startDateString = startDate?.toFormat(\n DateModeToFormatMap[mode],\n );\n const endDateString = endDate?.toFormat(DateModeToFormatMap[mode]);\n const newInputValue = `${startDateString ?? halfPlaceholder}${RANGE_SEPARATOR}${endDateString ?? halfPlaceholder}`;\n setInputValue(newInputValue);\n },\n });\n }, [mode, halfPlaceholder]);\n\n return (\n <TextField\n ref={combinedRef}\n data-start-date={startDate?.toISODate() ?? \"\"}\n data-end-date={endDate?.toISODate() ?? \"\"}\n data-input-valid={currentParsedData.isInputValid}\n data-input-empty={currentParsedData.isInputEmpty}\n {...props}\n showCounter={false}\n value={inputValue}\n onChange={handleChange}\n prefix={<Icon svg={Event} />}\n hint={disableHint ? undefined : `Format: ${mode}`}\n />\n );\n },\n);\n\nMaskedDateRangeInput.displayName = \"MaskedDateRangeInput\";\n\nfunction parseRangeInputValue(\n value: string,\n mode: DateMode,\n removePlaceholder: (value: string) => string,\n) {\n const valueMinusPlaceholder = removePlaceholder(value);\n const [startDate, endDate] = valueMinusPlaceholder.split(RANGE_SEPARATOR);\n const startJsDate = maskitoParseDate(startDate, { mode });\n const endJsDate = endDate ? maskitoParseDate(endDate, { mode }) : null;\n const startLuxonDate = startJsDate ? jsDateToUtcDateTime(startJsDate) : null;\n const endLuxonDate = endJsDate ? jsDateToUtcDateTime(endJsDate) : null;\n return {\n startDate: startLuxonDate,\n endDate: endLuxonDate,\n isInputValid: !!(startLuxonDate && endLuxonDate), // input valid if both dates are filled\n isInputEmpty: valueMinusPlaceholder === \"\", // input empty if nothing is typed\n isHalfEmpty: endDate === undefined,\n };\n}\n\nfunction swapMode(inputString: string, previousMode: DateMode, mode: DateMode) {\n const halves = inputString.split(RANGE_SEPARATOR);\n const segments = halves.map((half) => half.split(\"/\"));\n\n let startDay, startMonth, startYear, endDay, endMonth, endYear;\n if (previousMode === \"mm/dd/yyyy\") {\n startDay = segments[0][1];\n startMonth = segments[0][0];\n startYear = segments[0][2];\n endDay = segments[1][1];\n endMonth = segments[1][0];\n endYear = segments[1][2];\n }\n if (previousMode === \"dd/mm/yyyy\") {\n startDay = segments[0][0];\n startMonth = segments[0][1];\n startYear = segments[0][2];\n endDay = segments[1][0];\n endMonth = segments[1][1];\n endYear = segments[1][2];\n }\n if (previousMode === \"yyyy/mm/dd\") {\n startDay = segments[0][2];\n startMonth = segments[0][1];\n startYear = segments[0][0];\n endDay = segments[1][2];\n endMonth = segments[1][1];\n endYear = segments[1][0];\n }\n\n if (mode === \"mm/dd/yyyy\") {\n return `${startMonth}/${startDay}/${startYear}${RANGE_SEPARATOR}${endMonth}/${endDay}/${endYear}`;\n }\n if (mode === \"dd/mm/yyyy\") {\n return `${startDay}/${startMonth}/${startYear}${RANGE_SEPARATOR}${endDay}/${endMonth}/${endYear}`;\n }\n if (mode === \"yyyy/mm/dd\") {\n return `${startYear}/${startMonth}/${startDay}${RANGE_SEPARATOR}${endYear}/${endMonth}/${endDay}`;\n }\n\n return inputString;\n}\n","import { useCallback, useMemo } from \"react\";\nimport { DateFieldRangeChange, DateFieldRangeProps } from \"../DateFieldRange\";\nimport { convertStringToDate } from \"../../DateFieldSingle/internal/utils\";\nimport { DateTime } from \"luxon\";\n\n/**\n * This hook is used to convert the string props of a DateFieldRange component to a DateTime format.\n *\n * @param props - The props of the DateFieldRange component.\n * @returns The normalized value, defaultValue, minDate, maxDate, and unavailable dates in DateTime format.\n * @internal This hook is not intended to be used directly in consumer code.\n */\nexport const useDateFieldRangeConversion = (props: DateFieldRangeProps) => {\n const { value, defaultValue, minDate, maxDate, unavailable, onChange } =\n props;\n\n const normalizedValue = useMemo(() => {\n if (value === null || value === undefined) return value;\n return {\n startDate: convertStringToDate(value.startDate) ?? null,\n endDate: convertStringToDate(value.endDate) ?? null,\n };\n }, [value]);\n\n const normalizedDefaultValue = useMemo(() => {\n if (defaultValue === null || defaultValue === undefined)\n return defaultValue;\n return {\n startDate: convertStringToDate(defaultValue.startDate) ?? null,\n endDate: convertStringToDate(defaultValue.endDate) ?? null,\n };\n }, [defaultValue]);\n\n const normalizedMinDate = useMemo(\n () => convertStringToDate(minDate),\n [minDate],\n );\n const normalizedMaxDate = useMemo(\n () => convertStringToDate(maxDate),\n [maxDate],\n );\n\n const normalizedUnavailableDates = useMemo(() => {\n return unavailable?.dates\n ?.map((date) => convertStringToDate(date))\n .filter((date) => date !== null && date !== undefined);\n }, [unavailable?.dates]);\n\n const handleChange = useCallback(\n (\n change: Omit<DateFieldRangeChange, \"startDate\" | \"endDate\"> & {\n startDate: DateTime | null;\n endDate: DateTime | null;\n },\n ) => {\n onChange?.({\n ...change,\n startDate: change.startDate?.toISODate() ?? null,\n endDate: change.endDate?.toISODate() ?? null,\n });\n },\n [onChange],\n );\n\n return {\n value: normalizedValue,\n defaultValue: normalizedDefaultValue,\n minDate: normalizedMinDate,\n maxDate: normalizedMaxDate,\n unavailable: {\n dates: normalizedUnavailableDates,\n daysOfWeek: unavailable?.daysOfWeek,\n },\n onChange: handleChange,\n };\n};\n","import { DateTime } from \"luxon\";\nimport { useOptionallyControlledState } from \"../../../internal/hooks\";\nimport { MaskedDateRangeInputChange } from \"./MaskedDateRangeInput\";\n\nexport type DateFieldRangeStateChange = {\n startDate: DateTime | null;\n endDate: DateTime | null;\n isInputValid: boolean;\n isInputEmpty: boolean;\n};\n\nexport type DateFieldRangeStateChangeHandler = (\n change: DateFieldRangeStateChange,\n) => void;\n\nexport type DateFieldRangeStateParam = {\n /**\n * The controlled value of the start date.\n */\n valueProp?: {\n startDate: DateTime | null;\n endDate: DateTime | null;\n } | null;\n /**\n * The default value of the start date.\n */\n defaultValueProp?: {\n startDate: DateTime | null;\n endDate: DateTime | null;\n } | null;\n /**\n * The function to call when the state changes.\n */\n onChange: DateFieldRangeStateChangeHandler;\n};\n\n/**\n * This hook is used to keep the state of a DateFieldRange component in sync with the input and calendar.\n */\nexport type DateFieldRangeState = {\n /**\n * The start date.\n */\n startDate: DateTime | null;\n /**\n * The end date.\n */\n endDate: DateTime | null;\n /**\n * The function to set the start date.\n */\n setStartDate: (date: DateTime | null) => void;\n /**\n * The function to set the end date.\n */\n setEndDate: (date: DateTime | null) => void;\n /**\n * The function to handle the input change.\n */\n handleInputChange: (change: MaskedDateRangeInputChange) => void;\n /**\n * The function to handle the calendar selection.\n */\n handleCalendarSelection: ({\n startDate,\n endDate,\n }: {\n startDate: DateTime | null;\n endDate: DateTime | null;\n }) => void;\n};\n\n/**\n * This is a hook for keeping state in sync between a date input and calendar.\n */\nexport function useDateFieldRangeState({\n valueProp,\n defaultValueProp,\n onChange,\n}: DateFieldRangeStateParam): DateFieldRangeState {\n const [startDate, setStartDate] =\n useOptionallyControlledState<DateTime | null>({\n controlledValue:\n valueProp !== undefined ? valueProp?.startDate : undefined,\n defaultValue:\n defaultValueProp !== undefined\n ? defaultValueProp?.startDate\n : undefined,\n });\n const [endDate, setEndDate] = useOptionallyControlledState<DateTime | null>({\n controlledValue: valueProp !== undefined ? valueProp?.endDate : undefined,\n defaultValue:\n defaultValueProp !== undefined ? defaultValueProp?.endDate : undefined,\n });\n\n const setSharedValue = (value: {\n startDate: DateTime | null;\n endDate: DateTime | null;\n }) => {\n setStartDate(value.startDate);\n setEndDate(value.endDate);\n };\n\n const handleInputChange = (change: MaskedDateRangeInputChange) => {\n const range = change.isInputEmpty\n ? null\n : {\n startDate: change.startDate?.startOf(\"day\") ?? null,\n endDate: change.endDate?.startOf(\"day\") ?? null,\n };\n\n onChange?.({\n startDate: range?.startDate ?? null,\n endDate: range?.endDate ?? null,\n isInputValid: change.isInputValid,\n isInputEmpty: change.isInputEmpty,\n });\n\n setStartDate(range?.startDate ?? null);\n setEndDate(range?.endDate ?? null);\n };\n\n const handleCalendarSelection = ({\n startDate,\n endDate,\n }: {\n startDate: DateTime | null;\n endDate: DateTime | null;\n }) => {\n setSharedValue({ startDate, endDate });\n onChange?.({\n startDate,\n endDate,\n isInputValid: true,\n isInputEmpty: false,\n });\n };\n\n return {\n startDate,\n endDate,\n setStartDate,\n setEndDate,\n handleInputChange,\n handleCalendarSelection,\n };\n}\n","import { DateTime, WeekdayNumbers } from \"luxon\";\nimport { Calendar, CalendarRangeValue } from \"../../Calendar/Calendar\";\nimport { useMemo } from \"react\";\nimport { usePrevious } from \"../../../internal/hooks\";\nimport { IanaZone } from \"../../../types\";\nimport { TimezoneMessage } from \"../../DateFieldSingle/internal/TimezoneMessage\";\nimport { isoToUtcDate } from \"../../DateFieldSingle/internal/utils\";\n\nexport type DateFieldRangeCalendarProps = {\n startDate: DateTime | null;\n endDate: DateTime | null;\n onKeyDown?: (event: React.KeyboardEvent<HTMLDivElement>) => void;\n onSelection: ({\n startDate,\n endDate,\n }: {\n startDate: DateTime | null;\n endDate: DateTime | null;\n }) => void;\n minDate?: DateTime | null;\n maxDate?: DateTime | null;\n unavailable?: {\n dates?: DateTime[];\n daysOfWeek?: WeekdayNumbers[];\n };\n timezone?: IanaZone;\n};\n\nexport const DateFieldRangeCalendar = ({\n startDate,\n endDate,\n onKeyDown,\n onSelection,\n minDate,\n maxDate,\n unavailable,\n timezone: timezoneProp,\n}: DateFieldRangeCalendarProps) => {\n const previousStartDate = usePrevious(startDate);\n const previousEndDate = usePrevious(endDate);\n\n const timezone: IanaZone = useMemo(() => {\n return (\n timezoneProp ??\n (Intl.DateTimeFormat().resolvedOptions().timeZone as IanaZone)\n );\n }, [timezoneProp]);\n\n const handleCalendarSelection = (data: { value: CalendarRangeValue }) => {\n if (!data.value) return;\n const calStartDate = data.value.start\n ? isoToUtcDate(data.value.start)\n : null;\n const calEndDate = data.value.end ? isoToUtcDate(data.value.end) : null;\n onSelection({\n startDate: calStartDate,\n endDate: calEndDate,\n });\n };\n\n const defaultFocusedDate = useMemo(() => {\n const todayISODate = DateTime.now().setZone(timezone).toISODate();\n // Nothing selected, focus today\n if (!startDate && !endDate) return todayISODate;\n if (!startDate) return endDate?.toISODate();\n if (!endDate) return startDate?.toISODate();\n if (endDate && !previousEndDate?.equals(endDate)) {\n return endDate.toISODate();\n } else if (startDate && !previousStartDate?.equals(startDate)) {\n return startDate.toISODate();\n }\n\n if (endDate) return endDate.toISODate();\n if (startDate) return startDate.toISODate();\n return todayISODate;\n }, [previousStartDate, previousEndDate, startDate, endDate, timezone]);\n\n return (\n <>\n <Calendar\n // Crappy hack because the Calendar does not update when the value changes.\n key={`${startDate?.toISODate()}-${endDate?.toISODate()}`}\n range={true}\n onKeyDown={onKeyDown}\n defaultFocusedDate={defaultFocusedDate}\n value={{\n start: startDate?.toISODate() || undefined,\n end: endDate?.toISODate() || undefined,\n }}\n onSelection={handleCalendarSelection}\n defaultTimeZone={timezone ?? \"UTC\"}\n minDate={minDate?.toISODate() ?? undefined}\n maxDate={maxDate?.toISODate() ?? undefined}\n unavailable={\n unavailable\n ? {\n dates: unavailable.dates?.map((d) => d.toISODate() ?? \"\"),\n daysOfWeek: unavailable.daysOfWeek,\n }\n : undefined\n }\n _disableAutofocus\n _disableFocus\n />\n <TimezoneMessage timezone={timezone} />\n </>\n );\n};\n","import { DateTime } from \"luxon\";\nimport { validateDate } from \"../../DateFieldSingle/internal/utils\";\n\ntype DateConstraints = {\n unavailable?: {\n dates?: DateTime[];\n daysOfWeek?: number[];\n };\n minDate?: DateTime;\n maxDate?: DateTime;\n};\n\nexport function validateDateRange({\n required,\n startDate,\n endDate,\n startDateConstraints,\n endDateConstraints,\n}: {\n required?: boolean;\n startDate: DateTime | null;\n endDate: DateTime | null;\n startDateConstraints: DateConstraints;\n endDateConstraints: DateConstraints;\n}) {\n if (!required && !startDate && !endDate) return true;\n return (\n validateDate({\n date: startDate,\n constraints: { ...startDateConstraints, required: true },\n }) &&\n validateDate({\n date: endDate,\n constraints: { ...endDateConstraints, required: true },\n }) &&\n (!startDate || !endDate || startDate <= endDate)\n );\n}\n","import { childrenToString } from \"../../internal/functions\";\nimport { useTrackingId } from \"../../hooks\";\nimport { DataTrackingId, IanaZone } from \"../../types\";\nimport {\n MaskedDateRangeInput,\n MaskedDateRangeInputProps,\n MaskedDateRangeInputRef,\n} from \"./internal/MaskedDateRangeInput\";\nimport { DateMode } from \"../DateFieldSingle/types\";\nimport { DateFieldRangeCalendar } from \"./internal/DateFieldRangeCalendar\";\nimport { Ref, useMemo, useRef } from \"react\";\nimport { useDateFieldRangeConversion } from \"./internal/useDateFieldRangeConversion\";\nimport {\n DateFieldRangeStateChange,\n useDateFieldRangeState,\n} from \"./internal/useDateFieldRangeState\";\nimport { useFocusWithin } from \"../../internal/hooks\";\nimport { validateDateRange } from \"./internal/utils\";\nimport Popover from \"../../internal/components/Popover\";\nimport { mergeRefs } from \"../../hooks/useMergeRefs/useMergeRefs\";\n\nexport type DateFieldRangeChange = {\n /**\n * The start date in ISO 8601 format.\n * @example \"2025-03-22\"\n */\n startDate: string | null;\n /**\n * The end date in ISO 8601 format.\n * @example \"2025-07-02\"\n */\n endDate: string | null;\n /**\n * Whether the input field contains two parsable dates.\n * This is not the same as the date range being valid.\n *\n */\n isInputValid: boolean;\n /**\n * Whether the input field is empty.\n */\n isInputEmpty: boolean;\n /**\n * Whether the start and end dates are valid according to the constraints.\n * Constraints include:\n * - Required\n * - Unavailable dates\n * - Unavailable days of the week\n * - Min date\n * - Max date\n */\n isDateRangeValid: boolean;\n};\n\nexport type DateFieldRangeChangeHandler = (\n change: DateFieldRangeChange,\n) => void;\n\nexport type DateFieldRangeValue = {\n startDate: string | null;\n endDate: string | null;\n} | null;\n\nexport type DateFieldRangeProps = Omit<\n MaskedDateRangeInputProps,\n | \"onChange\"\n | \"value\"\n | \"autoComplete\"\n | \"onClick\"\n | \"onKeyDown\"\n | \"ref\"\n | \"required\"\n | \"startDate\"\n | \"endDate\"\n | \"defaultValue\"\n | \"onFocus\"\n | \"onBlur\"\n> & {\n value?: DateFieldRangeValue;\n defaultValue?: DateFieldRangeValue;\n onChange?: DateFieldRangeChangeHandler;\n mode?: Extract<DateMode, \"mm/dd/yyyy\" | \"dd/mm/yyyy\">;\n disableHint?: boolean;\n disableCalendar?: boolean;\n unavailable?: {\n dates?: string[];\n daysOfWeek?: (1 | 2 | 3 | 4 | 5 | 6 | 7)[];\n };\n minDate?: string;\n maxDate?: string;\n required?: boolean;\n onFocus?: (event: React.FocusEvent) => void;\n onBlur?: (event: React.FocusEvent) => void;\n /**\n * The IANA timezone to use for the calendar. Controls the meaning of the \"Today\"\n * button and which month/year is initially displayed. When the timezone differs\n * from the user's locale timezone, a disambiguation message is shown below the calendar.\n * @example \"America/Los_Angeles\"\n */\n timezone?: IanaZone;\n} & DataTrackingId;\n\nexport const DateFieldRange = (props: DateFieldRangeProps) => {\n const data = {\n label: childrenToString(props.label),\n labelProps: props.labelProps,\n description: childrenToString(props.description),\n };\n\n const trackingId = useTrackingId({\n name: \"DateFieldRange\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n const {\n onFocus,\n onBlur,\n disableCalendar,\n required,\n mode,\n label,\n value: valueProp,\n defaultValue: defaultValueProp,\n minDate: minDateProp,\n maxDate: maxDateProp,\n unavailable: unavailableProp,\n onChange: onChangeProp,\n timezone,\n ...rest\n } = props;\n\n const popoverRef = useRef<{\n openPopover: () => void;\n closePopover: () => void;\n }>(null);\n\n const handleInputKeyDown = (ev: React.KeyboardEvent<HTMLInputElement>) => {\n if (ev.key === \"ArrowDown\") {\n ev.preventDefault();\n popoverRef.current?.openPopover();\n requestAnimationFrame(() => {\n popoverContentRef.current?.querySelector(\"button\")?.focus();\n });\n }\n };\n\n const { props: wrapperProps } = useFocusWithin({\n onBlur: (e) => {\n onBlur?.(e);\n popoverRef.current?.closePopover();\n },\n onFocus: onFocus,\n });\n\n const { value, defaultValue, minDate, maxDate, unavailable, onChange } =\n useDateFieldRangeConversion({\n value: valueProp,\n defaultValue: defaultValueProp,\n minDate: minDateProp,\n maxDate: maxDateProp,\n unavailable: unavailableProp,\n onChange: onChangeProp,\n });\n\n const inputRef = useRef<MaskedDateRangeInputRef>(null);\n const popoverContentRef = useRef<HTMLDivElement>(null);\n\n const handleChange = (change: DateFieldRangeStateChange) => {\n const sharedConstraints = {\n unavailable,\n minDate: minDate ?? undefined,\n maxDate: maxDate ?? undefined,\n };\n\n onChange?.({\n startDate: change.startDate?.startOf(\"day\") ?? null,\n endDate: change.endDate?.startOf(\"day\") ?? null,\n isInputValid: change.isInputValid,\n isInputEmpty: change.isInputEmpty,\n isDateRangeValid: validateDateRange({\n required: required,\n startDate: change.startDate?.startOf(\"day\") ?? null,\n endDate: change.endDate?.startOf(\"day\") ?? null,\n startDateConstraints: sharedConstraints,\n endDateConstraints: sharedConstraints,\n }),\n });\n };\n\n const { startDate, endDate, handleInputChange, handleCalendarSelection } =\n useDateFieldRangeState({\n valueProp: value,\n defaultValueProp: defaultValue,\n onChange: handleChange,\n });\n\n const currentValidity = useMemo(() => {\n return validateDateRange({\n required,\n startDate,\n endDate,\n startDateConstraints: {\n unavailable,\n minDate: minDate ?? undefined,\n maxDate: maxDate ?? undefined,\n },\n endDateConstraints: {\n unavailable,\n minDate: minDate ?? undefined,\n maxDate: maxDate ?? undefined,\n },\n });\n }, [required, startDate, endDate, minDate, maxDate, unavailable]);\n\n const commonFieldProps = {\n ...rest,\n mode,\n label,\n onChange: handleInputChange,\n startDate: startDate ?? null,\n endDate: endDate ?? null,\n required,\n autoComplete: \"off\",\n \"data-date-range-valid\": currentValidity,\n \"data-tracking-id\": trackingId,\n \"aria-label\": label ? undefined : \"Select a date range\",\n };\n\n const justTheField = (\n <MaskedDateRangeInput {...commonFieldProps} ref={inputRef} />\n );\n\n if (disableCalendar) {\n return justTheField;\n }\n\n return (\n <div {...wrapperProps}>\n <Popover ref={popoverRef} placement=\"bottom-start\" role=\"grid\">\n <Popover.Trigger>\n {({ ref: iRef, onKeyDown }) => {\n const mergedRef = mergeRefs([\n inputRef,\n iRef as Ref<HTMLInputElement>,\n ]);\n return (\n <MaskedDateRangeInput\n {...commonFieldProps}\n ref={mergedRef}\n onKeyDown={(ev) => {\n onKeyDown?.(ev);\n handleInputKeyDown(ev);\n }}\n onClick={() => popoverRef.current?.openPopover()}\n onFocus={onFocus}\n onBlur={onBlur}\n />\n );\n }}\n </Popover.Trigger>\n <Popover.Content ref={popoverContentRef} data-testid=\"calendar-popover\">\n <DateFieldRangeCalendar\n startDate={startDate}\n endDate={endDate}\n onSelection={(v) => {\n if (v.endDate) {\n inputRef.current?.focus();\n popoverRef.current?.closePopover();\n }\n handleCalendarSelection(v);\n }}\n minDate={minDate}\n maxDate={maxDate}\n unavailable={unavailable}\n timezone={timezone}\n />\n </Popover.Content>\n </Popover>\n </div>\n );\n};\n\nDateFieldRange.displayName = \"DateFieldRange\";\n"],"names":["datePlaceholderMask","dateRangePlaceholderMask","startDate","endDate","Event"],"mappings":";;;;;;;;;;;;;;;;;;AAaA,MAAM,sBAAsB,CAAC;AAAA,EAC3B,IAAA;AAAA,EACA,aAAA,GAAgB,GAAA;AAAA,EAChB,cAAA,GAAiB,KAAA;AAAA,EACjB;AACF,CAAA,KAKM;AACJ,EAAA,MAAM,mBAAmB,gCAAA,CAAiC;AAAA,IACxD,IAAA;AAAA,IACA,aAAA;AAAA,IACA;AAAA,GACD,CAAA;AAED,EAAA,MAAM,EAAE,OAAA,EAAS,iBAAA,EAAmB,GAAG,kBAAA,EAAmB,GACxD,uBAAuB,WAAW,CAAA;AAEpC,EAAA,MAAMA,oBAAAA,GAAsB;AAAA,IAC1B,GAAG,gBAAA;AAAA,IACH,SAAS,OAAA,CAAQ,MAAA,CAAO,gBAAA,CAAiB,OAAA,IAAW,EAAE,CAAA;AAAA,IACtD,aAAA,EAAe;AAAA,MACb,GAAG,kBAAA,CAAmB,aAAA;AAAA,MACtB,GAAG,gBAAA,CAAiB,aAAA;AAAA,MACpB,4BAAA,CAA6B,aAAa,aAAa;AAAA,KACzD;AAAA,IACA,cAAA,EAAgB;AAAA;AAAA;AAAA;AAAA,MAId,GAAG,gBAAA,CAAiB,cAAA,CAAe,KAAA,CAAM,GAAG,EAAE,CAAA;AAAA,MAC9C,GAAG,kBAAA,CAAmB;AAAA;AACxB,GACF;AAEA,EAAA,OAAO,EAAE,OAAA,EAASA,oBAAAA,EAAqB,iBAAA,EAAkB;AAC3D,CAAA;;AC3BA,MAAM,eAAA,GAAkB,KAAA;AA0CjB,MAAM,oBAAA,GAAuB,UAAA;AAAA,EAIlC,CACE;AAAA,IACE,QAAA;AAAA,IACA,IAAA,GAAO,YAAA;AAAA,IACP,SAAA;AAAA,IACA,OAAA;AAAA,IACA,WAAA,GAAc,KAAA;AAAA,IACd,GAAG;AAAA,KAEL,GAAA,KACG;AACH,IAAA,MAAM,eAAA,GAAkB,yBAAyB,IAAI,CAAA;AACrD,IAAA,MAAM,kBAAkB,CAAA,EAAG,eAAe,CAAA,EAAG,eAAe,GAAG,eAAe,CAAA,CAAA;AAG9E,IAAA,MAAM,CAAC,UAAA,EAAY,aAAa,CAAA,GAAI,SAAS,eAAe,CAAA;AAE5D,IAAA,MAAM,EAAE,OAAA,EAAS,iBAAA,EAAkB,GAAIC,mBAAA,CAAyB;AAAA,MAC9D,IAAA;AAAA,MACA,WAAA,EAAa,eAAA;AAAA,MACb,aAAA,EAAe,GAAA;AAAA,MACf,cAAA,EAAgB;AAAA,KACjB,CAAA;AACD,IAAA,MAAM,cAAA,GAAiB,UAAA,CAAW,EAAE,OAAA,EAAS,CAAA;AAC7C,IAAA,MAAM,QAAA,GAAW,OAAyB,IAAI,CAAA;AAC9C,IAAA,MAAM,cAAc,YAAA,CAAa,CAAC,cAAA,EAAgB,QAAA,EAAU,GAAG,CAAC,CAAA;AAChE,IAAA,MAAM,iBAAA,GAAoB,YAAY,SAAS,CAAA;AAC/C,IAAA,MAAM,eAAA,GAAkB,YAAY,OAAO,CAAA;AAC3C,IAAA,MAAM,YAAA,GAAe,YAAY,IAAI,CAAA;AAGrC,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,IAAI,SAAS,YAAA,EAAc;AACzB,QAAA,aAAA;AAAA,UAAc,CAAC,kBAAA,KACb,QAAA,CAAS,kBAAA,EAAoB,YAAA,IAAgB,MAAM,IAAI;AAAA,SACzD;AAAA,MACF;AAAA,IACF,CAAA,EAAG,CAAC,IAAA,EAAM,eAAA,EAAiB,YAAY,CAAC,CAAA;AAGxC,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,IAAI,SAAA,KAAc,MAAA,IAAa,OAAA,KAAY,MAAA,EAAW;AAEtD,MAAA,IAAI,SAAA,KAAc,qBAAqB,OAAA,KAAY,eAAA;AACjD,QAAA;AACF,MAAA;AAAA;AAAA,QAEE,SAAA,EAAW,OAAO,iBAAA,IAAqB,SAAA,EAAW,KAAK,EAAE,IAAA,EAAM,CAAA,EAAG,CAAC,CAAA,KAClE,SAAS,MAAA,CAAO,eAAA,IAAmB,SAAS,IAAA,CAAK,EAAE,MAAM,CAAA,EAAG,CAAC,CAAA,IAC5D,OAAA,KAAY,eAAA;AAAA;AAEd,QAAA;AACF,MAAA,MAAM,kBACJ,SAAA,EAAW,QAAA,CAAS,mBAAA,CAAoB,IAAI,CAAC,CAAA,IAAK,eAAA;AACpD,MAAA,MAAM,gBACJ,OAAA,EAAS,QAAA,CAAS,mBAAA,CAAoB,IAAI,CAAC,CAAA,IAAK,eAAA;AAClD,MAAA,MAAM,gBAAgB,CAAA,EAAG,eAAe,CAAA,EAAG,eAAe,GAAG,aAAa,CAAA,CAAA;AAC1E,MAAA,aAAA,CAAc,aAAa,CAAA;AAAA,IAC7B,CAAA,EAAG;AAAA,MACD,SAAA;AAAA,MACA,OAAA;AAAA,MACA,IAAA;AAAA,MACA,eAAA;AAAA,MACA,iBAAA;AAAA,MACA;AAAA,KACD,CAAA;AAED,IAAA,MAAM,iBAAA,GAAoB,QAAQ,MAAM;AACtC,MAAA,OAAO,oBAAA,CAAqB,UAAA,EAAY,IAAA,EAAM,iBAAiB,CAAA;AAAA,IACjE,CAAA,EAAG,CAAC,UAAA,EAAY,IAAA,EAAM,iBAAiB,CAAC,CAAA;AAExC,IAAA,MAAM,YAAA,GAAe,CAAC,KAAA,KAA+C;AACnE,MAAA,aAAA,CAAc,KAAA,CAAM,OAAO,KAAK,CAAA;AAChC,MAAA,MAAM;AAAA,QACJ,SAAA,EAAW,oBAAA;AAAA,QACX,OAAA,EAAS,kBAAA;AAAA,QACT,YAAA;AAAA,QACA,YAAA;AAAA,QACA;AAAA,UACE,oBAAA,CAAqB,KAAA,CAAM,MAAA,CAAO,KAAA,EAAO,MAAM,iBAAiB,CAAA;AAIpE,MAAA,MAAM,gBAAA,GACJ,iBAAiB,iBAAA,CAAkB,YAAA;AAAA,MACnC,iBAAiB,iBAAA,CAAkB,YAAA;AAAA,MAClC,oBAAA,KAAyB,IAAA,MACvB,iBAAA,CAAkB,SAAA,KAAc,IAAA,CAAA;AAAA,MAClC,kBAAA,KAAuB,IAAA,MACrB,iBAAA,CAAkB,OAAA,KAAY,IAAA,CAAA;AAAA,MACjC,gBAAgB,iBAAA,CAAkB,WAAA;AAAA,MACjC,oBAAA,KAAyB,QACxB,iBAAA,CAAkB,SAAA,KAAc,QAChC,CAAC,oBAAA,CAAqB,MAAA,CAAO,iBAAA,CAAkB,SAAS,CAAA;AAAA,MACzD,kBAAA,KAAuB,QACtB,iBAAA,CAAkB,OAAA,KAAY,QAC9B,CAAC,kBAAA,CAAmB,MAAA,CAAO,iBAAA,CAAkB,OAAO,CAAA;AAGxD,MAAA,IAAI,CAAC,gBAAA,EAAkB;AACvB,MAAA,QAAA,GAAW;AAAA,QACT,SAAA,EAAW,YAAA,GACP,IAAA,GACC,oBAAA,IAAwB,SAAA,IAAa,IAAA;AAAA,QAC1C,OAAA,EACE,YAAA,IAAgB,WAAA,GACZ,IAAA,GACC,sBAAsB,OAAA,IAAW,IAAA;AAAA,QACxC,YAAA;AAAA,QACA;AAAA,OACD,CAAA;AAAA,IACH,CAAA;AAIA,IAAA,mBAAA,CAAoB,KAAK,MAAM;AAC7B,MAAA,MAAM,QAAQ,QAAA,CAAS,OAAA;AACvB,MAAA,IAAI,CAAC,OAAO,OAAO,IAAA;AACnB,MAAA,OAAO,MAAA,CAAO,OAAO,KAAA,EAAO;AAAA,QAC1B,YAAA,EAAc,CACZC,UAAAA,EACAC,QAAAA,KACG;AACH,UAAA,MAAM,kBAAkBD,UAAAA,EAAW,QAAA;AAAA,YACjC,oBAAoB,IAAI;AAAA,WAC1B;AACA,UAAA,MAAM,aAAA,GAAgBC,QAAAA,EAAS,QAAA,CAAS,mBAAA,CAAoB,IAAI,CAAC,CAAA;AACjE,UAAA,MAAM,aAAA,GAAgB,GAAG,eAAA,IAAmB,eAAe,GAAG,eAAe,CAAA,EAAG,iBAAiB,eAAe,CAAA,CAAA;AAChH,UAAA,aAAA,CAAc,aAAa,CAAA;AAAA,QAC7B;AAAA,OACD,CAAA;AAAA,IACH,CAAA,EAAG,CAAC,IAAA,EAAM,eAAe,CAAC,CAAA;AAE1B,IAAA,uBACE,GAAA;AAAA,MAAC,SAAA;AAAA,MAAA;AAAA,QACC,GAAA,EAAK,WAAA;AAAA,QACL,iBAAA,EAAiB,SAAA,EAAW,SAAA,EAAU,IAAK,EAAA;AAAA,QAC3C,eAAA,EAAe,OAAA,EAAS,SAAA,EAAU,IAAK,EAAA;AAAA,QACvC,oBAAkB,iBAAA,CAAkB,YAAA;AAAA,QACpC,oBAAkB,iBAAA,CAAkB,YAAA;AAAA,QACnC,GAAG,KAAA;AAAA,QACJ,WAAA,EAAa,KAAA;AAAA,QACb,KAAA,EAAO,UAAA;AAAA,QACP,QAAA,EAAU,YAAA;AAAA,QACV,MAAA,kBAAQ,GAAA,CAAC,IAAA,EAAA,EAAK,GAAA,EAAKC,QAAA,EAAO,CAAA;AAAA,QAC1B,IAAA,EAAM,WAAA,GAAc,MAAA,GAAY,CAAA,QAAA,EAAW,IAAI,CAAA;AAAA;AAAA,KACjD;AAAA,EAEJ;AACF;AAEA,oBAAA,CAAqB,WAAA,GAAc,sBAAA;AAEnC,SAAS,oBAAA,CACP,KAAA,EACA,IAAA,EACA,iBAAA,EACA;AACA,EAAA,MAAM,qBAAA,GAAwB,kBAAkB,KAAK,CAAA;AACrD,EAAA,MAAM,CAAC,SAAA,EAAW,OAAO,CAAA,GAAI,qBAAA,CAAsB,MAAM,eAAe,CAAA;AACxE,EAAA,MAAM,WAAA,GAAc,gBAAA,CAAiB,SAAA,EAAW,EAAE,MAAM,CAAA;AACxD,EAAA,MAAM,YAAY,OAAA,GAAU,gBAAA,CAAiB,SAAS,EAAE,IAAA,EAAM,CAAA,GAAI,IAAA;AAClE,EAAA,MAAM,cAAA,GAAiB,WAAA,GAAc,mBAAA,CAAoB,WAAW,CAAA,GAAI,IAAA;AACxE,EAAA,MAAM,YAAA,GAAe,SAAA,GAAY,mBAAA,CAAoB,SAAS,CAAA,GAAI,IAAA;AAClE,EAAA,OAAO;AAAA,IACL,SAAA,EAAW,cAAA;AAAA,IACX,OAAA,EAAS,YAAA;AAAA,IACT,YAAA,EAAc,CAAC,EAAE,cAAA,IAAkB,YAAA,CAAA;AAAA;AAAA,IACnC,cAAc,qBAAA,KAA0B,EAAA;AAAA;AAAA,IACxC,aAAa,OAAA,KAAY;AAAA,GAC3B;AACF;AAEA,SAAS,QAAA,CAAS,WAAA,EAAqB,YAAA,EAAwB,IAAA,EAAgB;AAC7E,EAAA,MAAM,MAAA,GAAS,WAAA,CAAY,KAAA,CAAM,eAAe,CAAA;AAChD,EAAA,MAAM,QAAA,GAAW,OAAO,GAAA,CAAI,CAAC,SAAS,IAAA,CAAK,KAAA,CAAM,GAAG,CAAC,CAAA;AAErD,EAAA,IAAI,QAAA,EAAU,UAAA,EAAY,SAAA,EAAW,MAAA,EAAQ,QAAA,EAAU,OAAA;AACvD,EAAA,IAAI,iBAAiB,YAAA,EAAc;AACjC,IAAA,QAAA,GAAW,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AACxB,IAAA,UAAA,GAAa,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AAC1B,IAAA,SAAA,GAAY,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AACzB,IAAA,MAAA,GAAS,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AACtB,IAAA,QAAA,GAAW,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AACxB,IAAA,OAAA,GAAU,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AAAA,EACzB;AACA,EAAA,IAAI,iBAAiB,YAAA,EAAc;AACjC,IAAA,QAAA,GAAW,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AACxB,IAAA,UAAA,GAAa,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AAC1B,IAAA,SAAA,GAAY,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AACzB,IAAA,MAAA,GAAS,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AACtB,IAAA,QAAA,GAAW,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AACxB,IAAA,OAAA,GAAU,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AAAA,EACzB;AACA,EAAA,IAAI,iBAAiB,YAAA,EAAc;AACjC,IAAA,QAAA,GAAW,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AACxB,IAAA,UAAA,GAAa,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AAC1B,IAAA,SAAA,GAAY,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AACzB,IAAA,MAAA,GAAS,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AACtB,IAAA,QAAA,GAAW,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AACxB,IAAA,OAAA,GAAU,QAAA,CAAS,CAAC,CAAA,CAAE,CAAC,CAAA;AAAA,EACzB;AAEA,EAAA,IAAI,SAAS,YAAA,EAAc;AACzB,IAAA,OAAO,CAAA,EAAG,UAAU,CAAA,CAAA,EAAI,QAAQ,CAAA,CAAA,EAAI,SAAS,CAAA,EAAG,eAAe,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,MAAM,IAAI,OAAO,CAAA,CAAA;AAAA,EACjG;AACA,EAAA,IAAI,SAAS,YAAA,EAAc;AACzB,IAAA,OAAO,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,UAAU,CAAA,CAAA,EAAI,SAAS,CAAA,EAAG,eAAe,CAAA,EAAG,MAAM,CAAA,CAAA,EAAI,QAAQ,IAAI,OAAO,CAAA,CAAA;AAAA,EACjG;AACA,EAAA,IAAI,SAAS,YAAA,EAAc;AACzB,IAAA,OAAO,CAAA,EAAG,SAAS,CAAA,CAAA,EAAI,UAAU,CAAA,CAAA,EAAI,QAAQ,CAAA,EAAG,eAAe,CAAA,EAAG,OAAO,CAAA,CAAA,EAAI,QAAQ,IAAI,MAAM,CAAA,CAAA;AAAA,EACjG;AAEA,EAAA,OAAO,WAAA;AACT;;AChRO,MAAM,2BAAA,GAA8B,CAAC,KAAA,KAA+B;AACzE,EAAA,MAAM,EAAE,KAAA,EAAO,YAAA,EAAc,SAAS,OAAA,EAAS,WAAA,EAAa,UAAS,GACnE,KAAA;AAEF,EAAA,MAAM,eAAA,GAAkB,QAAQ,MAAM;AACpC,IAAA,IAAI,KAAA,KAAU,IAAA,IAAQ,KAAA,KAAU,MAAA,EAAW,OAAO,KAAA;AAClD,IAAA,OAAO;AAAA,MACL,SAAA,EAAW,mBAAA,CAAoB,KAAA,CAAM,SAAS,CAAA,IAAK,IAAA;AAAA,MACnD,OAAA,EAAS,mBAAA,CAAoB,KAAA,CAAM,OAAO,CAAA,IAAK;AAAA,KACjD;AAAA,EACF,CAAA,EAAG,CAAC,KAAK,CAAC,CAAA;AAEV,EAAA,MAAM,sBAAA,GAAyB,QAAQ,MAAM;AAC3C,IAAA,IAAI,YAAA,KAAiB,QAAQ,YAAA,KAAiB,MAAA;AAC5C,MAAA,OAAO,YAAA;AACT,IAAA,OAAO;AAAA,MACL,SAAA,EAAW,mBAAA,CAAoB,YAAA,CAAa,SAAS,CAAA,IAAK,IAAA;AAAA,MAC1D,OAAA,EAAS,mBAAA,CAAoB,YAAA,CAAa,OAAO,CAAA,IAAK;AAAA,KACxD;AAAA,EACF,CAAA,EAAG,CAAC,YAAY,CAAC,CAAA;AAEjB,EAAA,MAAM,iBAAA,GAAoB,OAAA;AAAA,IACxB,MAAM,oBAAoB,OAAO,CAAA;AAAA,IACjC,CAAC,OAAO;AAAA,GACV;AACA,EAAA,MAAM,iBAAA,GAAoB,OAAA;AAAA,IACxB,MAAM,oBAAoB,OAAO,CAAA;AAAA,IACjC,CAAC,OAAO;AAAA,GACV;AAEA,EAAA,MAAM,0BAAA,GAA6B,QAAQ,MAAM;AAC/C,IAAA,OAAO,WAAA,EAAa,KAAA,EAChB,GAAA,CAAI,CAAC,SAAS,mBAAA,CAAoB,IAAI,CAAC,CAAA,CACxC,OAAO,CAAC,IAAA,KAAS,IAAA,KAAS,IAAA,IAAQ,SAAS,MAAS,CAAA;AAAA,EACzD,CAAA,EAAG,CAAC,WAAA,EAAa,KAAK,CAAC,CAAA;AAEvB,EAAA,MAAM,YAAA,GAAe,WAAA;AAAA,IACnB,CACE,MAAA,KAIG;AACH,MAAA,QAAA,GAAW;AAAA,QACT,GAAG,MAAA;AAAA,QACH,SAAA,EAAW,MAAA,CAAO,SAAA,EAAW,SAAA,EAAU,IAAK,IAAA;AAAA,QAC5C,OAAA,EAAS,MAAA,CAAO,OAAA,EAAS,SAAA,EAAU,IAAK;AAAA,OACzC,CAAA;AAAA,IACH,CAAA;AAAA,IACA,CAAC,QAAQ;AAAA,GACX;AAEA,EAAA,OAAO;AAAA,IACL,KAAA,EAAO,eAAA;AAAA,IACP,YAAA,EAAc,sBAAA;AAAA,IACd,OAAA,EAAS,iBAAA;AAAA,IACT,OAAA,EAAS,iBAAA;AAAA,IACT,WAAA,EAAa;AAAA,MACX,KAAA,EAAO,0BAAA;AAAA,MACP,YAAY,WAAA,EAAa;AAAA,KAC3B;AAAA,IACA,QAAA,EAAU;AAAA,GACZ;AACF;;ACAO,SAAS,sBAAA,CAAuB;AAAA,EACrC,SAAA;AAAA,EACA,gBAAA;AAAA,EACA;AACF,CAAA,EAAkD;AAChD,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAC5B,4BAAA,CAA8C;AAAA,IAC5C,eAAA,EACE,SAAA,KAAc,MAAA,GAAY,SAAA,EAAW,SAAA,GAAY,MAAA;AAAA,IACnD,YAAA,EACE,gBAAA,KAAqB,MAAA,GACjB,gBAAA,EAAkB,SAAA,GAClB;AAAA,GACP,CAAA;AACH,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAI,4BAAA,CAA8C;AAAA,IAC1E,eAAA,EAAiB,SAAA,KAAc,MAAA,GAAY,SAAA,EAAW,OAAA,GAAU,MAAA;AAAA,IAChE,YAAA,EACE,gBAAA,KAAqB,MAAA,GAAY,gBAAA,EAAkB,OAAA,GAAU;AAAA,GAChE,CAAA;AAED,EAAA,MAAM,cAAA,GAAiB,CAAC,KAAA,KAGlB;AACJ,IAAA,YAAA,CAAa,MAAM,SAAS,CAAA;AAC5B,IAAA,UAAA,CAAW,MAAM,OAAO,CAAA;AAAA,EAC1B,CAAA;AAEA,EAAA,MAAM,iBAAA,GAAoB,CAAC,MAAA,KAAuC;AAChE,IAAA,MAAM,KAAA,GAAQ,MAAA,CAAO,YAAA,GACjB,IAAA,GACA;AAAA,MACE,SAAA,EAAW,MAAA,CAAO,SAAA,EAAW,OAAA,CAAQ,KAAK,CAAA,IAAK,IAAA;AAAA,MAC/C,OAAA,EAAS,MAAA,CAAO,OAAA,EAAS,OAAA,CAAQ,KAAK,CAAA,IAAK;AAAA,KAC7C;AAEJ,IAAA,QAAA,GAAW;AAAA,MACT,SAAA,EAAW,OAAO,SAAA,IAAa,IAAA;AAAA,MAC/B,OAAA,EAAS,OAAO,OAAA,IAAW,IAAA;AAAA,MAC3B,cAAc,MAAA,CAAO,YAAA;AAAA,MACrB,cAAc,MAAA,CAAO;AAAA,KACtB,CAAA;AAED,IAAA,YAAA,CAAa,KAAA,EAAO,aAAa,IAAI,CAAA;AACrC,IAAA,UAAA,CAAW,KAAA,EAAO,WAAW,IAAI,CAAA;AAAA,EACnC,CAAA;AAEA,EAAA,MAAM,0BAA0B,CAAC;AAAA,IAC/B,SAAA,EAAAF,UAAAA;AAAA,IACA,OAAA,EAAAC;AAAA,GACF,KAGM;AACJ,IAAA,cAAA,CAAe,EAAE,SAAA,EAAAD,UAAAA,EAAW,OAAA,EAAAC,UAAS,CAAA;AACrC,IAAA,QAAA,GAAW;AAAA,MACT,SAAA,EAAAD,UAAAA;AAAA,MACA,OAAA,EAAAC,QAAAA;AAAA,MACA,YAAA,EAAc,IAAA;AAAA,MACd,YAAA,EAAc;AAAA,KACf,CAAA;AAAA,EACH,CAAA;AAEA,EAAA,OAAO;AAAA,IACL,SAAA;AAAA,IACA,OAAA;AAAA,IACA,YAAA;AAAA,IACA,UAAA;AAAA,IACA,iBAAA;AAAA,IACA;AAAA,GACF;AACF;;ACtHO,MAAM,yBAAyB,CAAC;AAAA,EACrC,SAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,WAAA;AAAA,EACA,QAAA,EAAU;AACZ,CAAA,KAAmC;AACjC,EAAA,MAAM,iBAAA,GAAoB,YAAY,SAAS,CAAA;AAC/C,EAAA,MAAM,eAAA,GAAkB,YAAY,OAAO,CAAA;AAE3C,EAAA,MAAM,QAAA,GAAqB,QAAQ,MAAM;AACvC,IAAA,OACE,YAAA,IACC,IAAA,CAAK,cAAA,EAAe,CAAE,iBAAgB,CAAE,QAAA;AAAA,EAE7C,CAAA,EAAG,CAAC,YAAY,CAAC,CAAA;AAEjB,EAAA,MAAM,uBAAA,GAA0B,CAAC,IAAA,KAAwC;AACvE,IAAA,IAAI,CAAC,KAAK,KAAA,EAAO;AACjB,IAAA,MAAM,YAAA,GAAe,KAAK,KAAA,CAAM,KAAA,GAC5B,aAAa,IAAA,CAAK,KAAA,CAAM,KAAK,CAAA,GAC7B,IAAA;AACJ,IAAA,MAAM,UAAA,GAAa,KAAK,KAAA,CAAM,GAAA,GAAM,aAAa,IAAA,CAAK,KAAA,CAAM,GAAG,CAAA,GAAI,IAAA;AACnE,IAAA,WAAA,CAAY;AAAA,MACV,SAAA,EAAW,YAAA;AAAA,MACX,OAAA,EAAS;AAAA,KACV,CAAA;AAAA,EACH,CAAA;AAEA,EAAA,MAAM,kBAAA,GAAqB,QAAQ,MAAM;AACvC,IAAA,MAAM,eAAe,QAAA,CAAS,GAAA,GAAM,OAAA,CAAQ,QAAQ,EAAE,SAAA,EAAU;AAEhE,IAAA,IAAI,CAAC,SAAA,IAAa,CAAC,OAAA,EAAS,OAAO,YAAA;AACnC,IAAA,IAAI,CAAC,SAAA,EAAW,OAAO,OAAA,EAAS,SAAA,EAAU;AAC1C,IAAA,IAAI,CAAC,OAAA,EAAS,OAAO,SAAA,EAAW,SAAA,EAAU;AAC1C,IAAA,IAAI,OAAA,IAAW,CAAC,eAAA,EAAiB,MAAA,CAAO,OAAO,CAAA,EAAG;AAChD,MAAA,OAAO,QAAQ,SAAA,EAAU;AAAA,IAC3B,WAAW,SAAA,IAAa,CAAC,iBAAA,EAAmB,MAAA,CAAO,SAAS,CAAA,EAAG;AAC7D,MAAA,OAAO,UAAU,SAAA,EAAU;AAAA,IAC7B;AAEA,IAAA,IAAI,OAAA,EAAS,OAAO,OAAA,CAAQ,SAAA,EAAU;AACtC,IAAA,IAAI,SAAA,EAAW,OAAO,SAAA,CAAU,SAAA,EAAU;AAC1C,IAAA,OAAO,YAAA;AAAA,EACT,GAAG,CAAC,iBAAA,EAAmB,iBAAiB,SAAA,EAAW,OAAA,EAAS,QAAQ,CAAC,CAAA;AAErE,EAAA,uBACE,IAAA,CAAA,QAAA,EAAA,EACE,QAAA,EAAA;AAAA,oBAAA,GAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QAGC,KAAA,EAAO,IAAA;AAAA,QACP,SAAA;AAAA,QACA,kBAAA;AAAA,QACA,KAAA,EAAO;AAAA,UACL,KAAA,EAAO,SAAA,EAAW,SAAA,EAAU,IAAK,MAAA;AAAA,UACjC,GAAA,EAAK,OAAA,EAAS,SAAA,EAAU,IAAK;AAAA,SAC/B;AAAA,QACA,WAAA,EAAa,uBAAA;AAAA,QACb,iBAAiB,QAAA,IAAY,KAAA;AAAA,QAC7B,OAAA,EAAS,OAAA,EAAS,SAAA,EAAU,IAAK,MAAA;AAAA,QACjC,OAAA,EAAS,OAAA,EAAS,SAAA,EAAU,IAAK,MAAA;AAAA,QACjC,aACE,WAAA,GACI;AAAA,UACE,KAAA,EAAO,YAAY,KAAA,EAAO,GAAA,CAAI,CAAC,CAAA,KAAM,CAAA,CAAE,SAAA,EAAU,IAAK,EAAE,CAAA;AAAA,UACxD,YAAY,WAAA,CAAY;AAAA,SAC1B,GACA,MAAA;AAAA,QAEN,iBAAA,EAAiB,IAAA;AAAA,QACjB,aAAA,EAAa;AAAA,OAAA;AAAA,MArBR,GAAG,SAAA,EAAW,SAAA,EAAW,CAAA,CAAA,EAAI,OAAA,EAAS,WAAW,CAAA;AAAA,KAsBxD;AAAA,oBACA,GAAA,CAAC,mBAAgB,QAAA,EAAoB;AAAA,GAAA,EACvC,CAAA;AAEJ;;AC/FO,SAAS,iBAAA,CAAkB;AAAA,EAChC,QAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,oBAAA;AAAA,EACA;AACF,CAAA,EAMG;AACD,EAAA,IAAI,CAAC,QAAA,IAAY,CAAC,SAAA,IAAa,CAAC,SAAS,OAAO,IAAA;AAChD,EAAA,OACE,YAAA,CAAa;AAAA,IACX,IAAA,EAAM,SAAA;AAAA,IACN,WAAA,EAAa,EAAE,GAAG,oBAAA,EAAsB,UAAU,IAAA;AAAK,GACxD,KACD,YAAA,CAAa;AAAA,IACX,IAAA,EAAM,OAAA;AAAA,IACN,WAAA,EAAa,EAAE,GAAG,kBAAA,EAAoB,UAAU,IAAA;AAAK,GACtD,CAAA,KACA,CAAC,SAAA,IAAa,CAAC,WAAW,SAAA,IAAa,OAAA,CAAA;AAE5C;;ACiEO,MAAM,cAAA,GAAiB,CAAC,KAAA,KAA+B;AAC5D,EAAA,MAAM,IAAA,GAAO;AAAA,IACX,KAAA,EAAO,gBAAA,CAAiB,KAAA,CAAM,KAAK,CAAA;AAAA,IACnC,YAAY,KAAA,CAAM,UAAA;AAAA,IAClB,WAAA,EAAa,gBAAA,CAAiB,KAAA,CAAM,WAAW;AAAA,GACjD;AAEA,EAAA,MAAM,aAAa,aAAA,CAAc;AAAA,IAC/B,IAAA,EAAM,gBAAA;AAAA,IACN,IAAA;AAAA,IACA,WAAA,EAAa,CAAC,CAAC,KAAA,CAAM,kBAAkB;AAAA,GACxC,CAAA;AAED,EAAA,MAAM;AAAA,IACJ,OAAA;AAAA,IACA,MAAA;AAAA,IACA,eAAA;AAAA,IACA,QAAA;AAAA,IACA,IAAA;AAAA,IACA,KAAA;AAAA,IACA,KAAA,EAAO,SAAA;AAAA,IACP,YAAA,EAAc,gBAAA;AAAA,IACd,OAAA,EAAS,WAAA;AAAA,IACT,OAAA,EAAS,WAAA;AAAA,IACT,WAAA,EAAa,eAAA;AAAA,IACb,QAAA,EAAU,YAAA;AAAA,IACV,QAAA;AAAA,IACA,GAAG;AAAA,GACL,GAAI,KAAA;AAEJ,EAAA,MAAM,UAAA,GAAa,OAGhB,IAAI,CAAA;AAEP,EAAA,MAAM,kBAAA,GAAqB,CAAC,EAAA,KAA8C;AACxE,IAAA,IAAI,EAAA,CAAG,QAAQ,WAAA,EAAa;AAC1B,MAAA,EAAA,CAAG,cAAA,EAAe;AAClB,MAAA,UAAA,CAAW,SAAS,WAAA,EAAY;AAChC,MAAA,qBAAA,CAAsB,MAAM;AAC1B,QAAA,iBAAA,CAAkB,OAAA,EAAS,aAAA,CAAc,QAAQ,CAAA,EAAG,KAAA,EAAM;AAAA,MAC5D,CAAC,CAAA;AAAA,IACH;AAAA,EACF,CAAA;AAEA,EAAA,MAAM,EAAE,KAAA,EAAO,YAAA,EAAa,GAAI,cAAA,CAAe;AAAA,IAC7C,MAAA,EAAQ,CAAC,CAAA,KAAM;AACb,MAAA,MAAA,GAAS,CAAC,CAAA;AACV,MAAA,UAAA,CAAW,SAAS,YAAA,EAAa;AAAA,IACnC,CAAA;AAAA,IACA;AAAA,GACD,CAAA;AAED,EAAA,MAAM,EAAE,OAAO,YAAA,EAAc,OAAA,EAAS,SAAS,WAAA,EAAa,QAAA,KAC1D,2BAAA,CAA4B;AAAA,IAC1B,KAAA,EAAO,SAAA;AAAA,IACP,YAAA,EAAc,gBAAA;AAAA,IACd,OAAA,EAAS,WAAA;AAAA,IACT,OAAA,EAAS,WAAA;AAAA,IACT,WAAA,EAAa,eAAA;AAAA,IACb,QAAA,EAAU;AAAA,GACX,CAAA;AAEH,EAAA,MAAM,QAAA,GAAW,OAAgC,IAAI,CAAA;AACrD,EAAA,MAAM,iBAAA,GAAoB,OAAuB,IAAI,CAAA;AAErD,EAAA,MAAM,YAAA,GAAe,CAAC,MAAA,KAAsC;AAC1D,IAAA,MAAM,iBAAA,GAAoB;AAAA,MACxB,WAAA;AAAA,MACA,SAAS,OAAA,IAAW,MAAA;AAAA,MACpB,SAAS,OAAA,IAAW;AAAA,KACtB;AAEA,IAAA,QAAA,GAAW;AAAA,MACT,SAAA,EAAW,MAAA,CAAO,SAAA,EAAW,OAAA,CAAQ,KAAK,CAAA,IAAK,IAAA;AAAA,MAC/C,OAAA,EAAS,MAAA,CAAO,OAAA,EAAS,OAAA,CAAQ,KAAK,CAAA,IAAK,IAAA;AAAA,MAC3C,cAAc,MAAA,CAAO,YAAA;AAAA,MACrB,cAAc,MAAA,CAAO,YAAA;AAAA,MACrB,kBAAkB,iBAAA,CAAkB;AAAA,QAClC,QAAA;AAAA,QACA,SAAA,EAAW,MAAA,CAAO,SAAA,EAAW,OAAA,CAAQ,KAAK,CAAA,IAAK,IAAA;AAAA,QAC/C,OAAA,EAAS,MAAA,CAAO,OAAA,EAAS,OAAA,CAAQ,KAAK,CAAA,IAAK,IAAA;AAAA,QAC3C,oBAAA,EAAsB,iBAAA;AAAA,QACtB,kBAAA,EAAoB;AAAA,OACrB;AAAA,KACF,CAAA;AAAA,EACH,CAAA;AAEA,EAAA,MAAM,EAAE,SAAA,EAAW,OAAA,EAAS,iBAAA,EAAmB,uBAAA,KAC7C,sBAAA,CAAuB;AAAA,IACrB,SAAA,EAAW,KAAA;AAAA,IACX,gBAAA,EAAkB,YAAA;AAAA,IAClB,QAAA,EAAU;AAAA,GACX,CAAA;AAEH,EAAA,MAAM,eAAA,GAAkB,QAAQ,MAAM;AACpC,IAAA,OAAO,iBAAA,CAAkB;AAAA,MACvB,QAAA;AAAA,MACA,SAAA;AAAA,MACA,OAAA;AAAA,MACA,oBAAA,EAAsB;AAAA,QACpB,WAAA;AAAA,QACA,SAAS,OAAA,IAAW,MAAA;AAAA,QACpB,SAAS,OAAA,IAAW;AAAA,OACtB;AAAA,MACA,kBAAA,EAAoB;AAAA,QAClB,WAAA;AAAA,QACA,SAAS,OAAA,IAAW,MAAA;AAAA,QACpB,SAAS,OAAA,IAAW;AAAA;AACtB,KACD,CAAA;AAAA,EACH,CAAA,EAAG,CAAC,QAAA,EAAU,SAAA,EAAW,SAAS,OAAA,EAAS,OAAA,EAAS,WAAW,CAAC,CAAA;AAEhE,EAAA,MAAM,gBAAA,GAAmB;AAAA,IACvB,GAAG,IAAA;AAAA,IACH,IAAA;AAAA,IACA,KAAA;AAAA,IACA,QAAA,EAAU,iBAAA;AAAA,IACV,WAAW,SAAA,IAAa,IAAA;AAAA,IACxB,SAAS,OAAA,IAAW,IAAA;AAAA,IACpB,QAAA;AAAA,IACA,YAAA,EAAc,KAAA;AAAA,IACd,uBAAA,EAAyB,eAAA;AAAA,IACzB,kBAAA,EAAoB,UAAA;AAAA,IACpB,YAAA,EAAc,QAAQ,MAAA,GAAY;AAAA,GACpC;AAEA,EAAA,MAAM,+BACJ,GAAA,CAAC,oBAAA,EAAA,EAAsB,GAAG,gBAAA,EAAkB,KAAK,QAAA,EAAU,CAAA;AAG7D,EAAA,IAAI,eAAA,EAAiB;AACnB,IAAA,OAAO,YAAA;AAAA,EACT;AAEA,EAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAK,GAAG,YAAA,EACP,QAAA,kBAAA,IAAA,CAAC,OAAA,EAAA,EAAQ,GAAA,EAAK,UAAA,EAAY,SAAA,EAAU,cAAA,EAAe,IAAA,EAAK,MAAA,EACtD,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,OAAA,CAAQ,SAAR,EACE,QAAA,EAAA,CAAC,EAAE,GAAA,EAAK,IAAA,EAAM,WAAU,KAAM;AAC7B,MAAA,MAAM,YAAY,SAAA,CAAU;AAAA,QAC1B,QAAA;AAAA,QACA;AAAA,OACD,CAAA;AACD,MAAA,uBACE,GAAA;AAAA,QAAC,oBAAA;AAAA,QAAA;AAAA,UACE,GAAG,gBAAA;AAAA,UACJ,GAAA,EAAK,SAAA;AAAA,UACL,SAAA,EAAW,CAAC,EAAA,KAAO;AACjB,YAAA,SAAA,GAAY,EAAE,CAAA;AACd,YAAA,kBAAA,CAAmB,EAAE,CAAA;AAAA,UACvB,CAAA;AAAA,UACA,OAAA,EAAS,MAAM,UAAA,CAAW,OAAA,EAAS,WAAA,EAAY;AAAA,UAC/C,OAAA;AAAA,UACA;AAAA;AAAA,OACF;AAAA,IAEJ,CAAA,EACF,CAAA;AAAA,wBACC,OAAA,CAAQ,OAAA,EAAR,EAAgB,GAAA,EAAK,iBAAA,EAAmB,eAAY,kBAAA,EACnD,QAAA,kBAAA,GAAA;AAAA,MAAC,sBAAA;AAAA,MAAA;AAAA,QACC,SAAA;AAAA,QACA,OAAA;AAAA,QACA,WAAA,EAAa,CAAC,CAAA,KAAM;AAClB,UAAA,IAAI,EAAE,OAAA,EAAS;AACb,YAAA,QAAA,CAAS,SAAS,KAAA,EAAM;AACxB,YAAA,UAAA,CAAW,SAAS,YAAA,EAAa;AAAA,UACnC;AACA,UAAA,uBAAA,CAAwB,CAAC,CAAA;AAAA,QAC3B,CAAA;AAAA,QACA,OAAA;AAAA,QACA,OAAA;AAAA,QACA,WAAA;AAAA,QACA;AAAA;AAAA,KACF,EACF;AAAA,GAAA,EACF,CAAA,EACF,CAAA;AAEJ;AAEA,cAAA,CAAe,WAAA,GAAc,gBAAA;;;;"}
@@ -1,2 +1,2 @@
1
- export { D as DateFieldRange } from './DateFieldRange-B1BR8K7C.js';
1
+ export { D as DateFieldRange } from './DateFieldRange-C8Uzrboc.js';
2
2
  //# sourceMappingURL=DateFieldRange.js.map
@@ -1,17 +1,17 @@
1
1
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
- import { P as Popover } from './Popover-CsVesD9_.js';
3
2
  import { forwardRef, useState, useRef, useEffect, useMemo, useImperativeHandle, useCallback } from 'react';
4
3
  import { m as maskitoDateOptionsGenerator, a as maskitoWithPlaceholder, u as useMaskito, b as maskitoParseDate } from './index.esm-C2ZhC_8d.js';
5
- import { T as TextField } from './TextField-Dn6HWZoH.js';
6
- import { u as useMergeRefs } from './floating-ui.react-S01OoTc9.js';
4
+ import { T as TextField } from './TextField-DeHpgPag.js';
5
+ import { u as useMergeRefs } from './floating-ui.react-C_s3_nEb.js';
7
6
  import { D as DateTime } from './luxon-wpz4A-OQ.js';
8
7
  import { m as makeZeroShortcutPreprocessor } from './makeZeroShortcutPreprocessor-CxsiGTRW.js';
9
- import { I as Icon } from './Icon-Bgkq1egx.js';
8
+ import { I as Icon } from './Icon-DuIlne4x.js';
10
9
  import { D as DateModeToPlaceholderMap, a as DateModeToFormatMap, S as SvgEvent, j as jsDateToUtcDateTime, c as convertStringToDate, T as TimezoneMessage, i as isoToUtcDate, v as validateDate } from './TimezoneMessage-Cnsl4cHT.js';
11
10
  import { u as usePrevious } from './usePrevious-Bvq-5auG.js';
12
11
  import { u as useOptionallyControlledState } from './useOptionallyControlledState-DbDuos5L.js';
13
- import { a as Calendar } from './Calendar-M8K2O28r.js';
12
+ import { a as Calendar } from './Calendar-SGlTt-bs.js';
14
13
  import { m as mergeRefs } from './useMergeRefs-Dfmtq9cI.js';
14
+ import { P as Popover } from './Popover-DxZF6lbJ.js';
15
15
  import { c as childrenToString } from './childrenToString-Bz9MqbHb.js';
16
16
  import { useTrackingId } from './useTrackingId.js';
17
17
  import { u as useFocusWithin } from './useFocusWithin-hi77jsrB.js';
@@ -405,54 +405,45 @@ const DateFieldSingle = (props) => {
405
405
  if (disableCalendar) {
406
406
  return /* @__PURE__ */ jsx(MaskedDateInput, { ref: inputRef, ...commonFieldProps });
407
407
  }
408
- return /* @__PURE__ */ jsx("div", { ...wrapperProps, children: /* @__PURE__ */ jsxs(
409
- Popover,
410
- {
411
- ref: popoverRef,
412
- placement: "bottom-start",
413
- disableFlipFallback: true,
414
- disableAutoUpdate: true,
415
- children: [
416
- /* @__PURE__ */ jsx(Popover.Trigger, { children: ({ ref: iRef, onKeyDown }) => {
417
- const mergedRef = mergeRefs([
418
- iRef,
419
- inputRef
420
- ]);
421
- return /* @__PURE__ */ jsx(
422
- MaskedDateInput,
423
- {
424
- ...commonFieldProps,
425
- ref: mergedRef,
426
- onKeyDown: (ev) => {
427
- onKeyDown?.(ev);
428
- handleInputKeyDown(ev);
429
- },
430
- onClick: () => popoverRef.current?.openPopover(),
431
- onFocus,
432
- onBlur
433
- }
434
- );
435
- } }),
436
- /* @__PURE__ */ jsx(Popover.Content, { ref: popoverContentRef, "data-testid": "calendar-popover", children: /* @__PURE__ */ jsx(
437
- DateFieldSingleCalendar,
438
- {
439
- value,
440
- onSelection: (v) => {
441
- inputRef.current?.focus();
442
- handleCalendarSelection(v);
443
- popoverRef.current?.closePopover();
444
- },
445
- minDate,
446
- maxDate,
447
- unavailable,
448
- timezone
449
- }
450
- ) })
451
- ]
452
- }
453
- ) });
408
+ return /* @__PURE__ */ jsx("div", { ...wrapperProps, children: /* @__PURE__ */ jsxs(Popover, { ref: popoverRef, placement: "bottom-start", role: "grid", children: [
409
+ /* @__PURE__ */ jsx(Popover.Trigger, { children: ({ ref: iRef, onKeyDown }) => {
410
+ const mergedRef = mergeRefs([
411
+ iRef,
412
+ inputRef
413
+ ]);
414
+ return /* @__PURE__ */ jsx(
415
+ MaskedDateInput,
416
+ {
417
+ ...commonFieldProps,
418
+ ref: mergedRef,
419
+ onKeyDown: (ev) => {
420
+ onKeyDown?.(ev);
421
+ handleInputKeyDown(ev);
422
+ },
423
+ onClick: () => popoverRef.current?.openPopover(),
424
+ onFocus,
425
+ onBlur
426
+ }
427
+ );
428
+ } }),
429
+ /* @__PURE__ */ jsx(Popover.Content, { ref: popoverContentRef, "data-testid": "calendar-popover", children: /* @__PURE__ */ jsx(
430
+ DateFieldSingleCalendar,
431
+ {
432
+ value,
433
+ onSelection: (v) => {
434
+ inputRef.current?.focus();
435
+ handleCalendarSelection(v);
436
+ popoverRef.current?.closePopover();
437
+ },
438
+ minDate,
439
+ maxDate,
440
+ unavailable,
441
+ timezone
442
+ }
443
+ ) })
444
+ ] }) });
454
445
  };
455
446
  DateFieldSingle.displayName = "DateFieldSingle";
456
447
 
457
448
  export { DateFieldSingle as D, MaskedDateInput as M, useDateFieldSingleState as a, DateFieldSingleCalendar as b, useDateFieldSingleConversion as u };
458
- //# sourceMappingURL=DateFieldSingle-CaWruBBO.js.map
449
+ //# sourceMappingURL=DateFieldSingle-DrhLIjlK.js.map