@persona/design-system 0.10.10 → 0.10.11

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 (447) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/dist/{Action-CHWYwpYR.d.mts → Action-sLO73eKq.d.mts} +2 -2
  3. package/dist/Action.d.mts +1 -1
  4. package/dist/AdvancedFilterRuleRow.d.mts +2 -2
  5. package/dist/AdvancedFilterRulesPopover.d.mts +2 -2
  6. package/dist/ArrayValueControl.d.mts +1 -1
  7. package/dist/Attribute.d.mts +2 -2
  8. package/dist/{Badge-BCdsVKuj.mjs → Badge-DZq6ByIU.mjs} +2 -2
  9. package/dist/{Badge-BCdsVKuj.mjs.map → Badge-DZq6ByIU.mjs.map} +1 -1
  10. package/dist/BooleanValueControl.d.mts +1 -1
  11. package/dist/{Breadcrumbs-CMf3Uvow.mjs → Breadcrumbs-DpsNZWF9.mjs} +9 -9
  12. package/dist/Breadcrumbs-DpsNZWF9.mjs.map +1 -0
  13. package/dist/{Button-DjD8QxcY.d.mts → Button-C4a4BTjL.d.mts} +2 -2
  14. package/dist/Button.d.mts +1 -1
  15. package/dist/CalendarBase.d.mts +1 -1
  16. package/dist/{Card-DiUHtYg_.d.mts → Card-CPV4_mHk.d.mts} +4 -4
  17. package/dist/Card.d.mts +1 -1
  18. package/dist/Card2.d.mts +1 -1
  19. package/dist/CardGrouping.d.mts +1 -1
  20. package/dist/{CardV2-CrV6eEQb.mjs → CardV2-DCoDfEvr.mjs} +16 -13
  21. package/dist/CardV2-DCoDfEvr.mjs.map +1 -0
  22. package/dist/ChartFrame.d.mts +61 -0
  23. package/dist/ChartLegend.d.mts +60 -0
  24. package/dist/ChartPopover.d.mts +155 -0
  25. package/dist/{Checkbox-Dr4LMKHV.mjs → Checkbox-C3z7UUSC.mjs} +8 -8
  26. package/dist/Checkbox-C3z7UUSC.mjs.map +1 -0
  27. package/dist/{CheckboxGroupField-Bpu2j6G2.d.mts → CheckboxGroupField-BT87OVOF.d.mts} +2 -2
  28. package/dist/CheckboxGroupField.d.mts +1 -1
  29. package/dist/ChoicesValueControl.d.mts +1 -1
  30. package/dist/{Combobox-Gb_j1dg6.mjs → Combobox-BkK_tosd.mjs} +300 -116
  31. package/dist/Combobox-BkK_tosd.mjs.map +1 -0
  32. package/dist/Combobox-aOJDTjzC.d.mts +12 -0
  33. package/dist/Combobox.d.mts +3 -3
  34. package/dist/{ComboboxBase-BPXqJHaQ.d.mts → ComboboxBase-Brgv5nxk.d.mts} +65 -25
  35. package/dist/ComboboxBase.d.mts +2 -2
  36. package/dist/{ComboboxMultiSelect-BwkkSymj.d.mts → ComboboxMultiSelect-DJyAv0Eg.d.mts} +10 -6
  37. package/dist/ComboboxMultiSelect.d.mts +2 -2
  38. package/dist/{ComboboxSingleSelect-CdNNJNkp.d.mts → ComboboxSingleSelect-CP8-HLKl.d.mts} +8 -6
  39. package/dist/ComboboxSingleSelect.d.mts +2 -2
  40. package/dist/{CompactBar-BLZZWtIE.d.mts → CompactBar-B0LhjrYV.d.mts} +2 -2
  41. package/dist/CompactBar.d.mts +1 -1
  42. package/dist/{ConfigFormGroup-BCTWCws5.mjs → ConfigFormGroup-DAUqAhJW.mjs} +2 -2
  43. package/dist/{ConfigFormGroup-BCTWCws5.mjs.map → ConfigFormGroup-DAUqAhJW.mjs.map} +1 -1
  44. package/dist/{DataTable-BE9inUi-.d.mts → DataTable-CSl5Jn3E.d.mts} +18 -8
  45. package/dist/{DataTable-CIZJ1vO8.mjs → DataTable-DiwzhNMt.mjs} +41 -28
  46. package/dist/DataTable-DiwzhNMt.mjs.map +1 -0
  47. package/dist/DataTable.d.mts +1 -1
  48. package/dist/{DatePicker-C9redLBr.mjs → DatePicker-BK7ioKBm.mjs} +410 -410
  49. package/dist/DatePicker-BK7ioKBm.mjs.map +1 -0
  50. package/dist/DateRangeValueControl.d.mts +1 -1
  51. package/dist/DateValueControl.d.mts +1 -1
  52. package/dist/{DropdownButton-DpLG-cIj.mjs → DropdownButton-Dp-MZ5tA.mjs} +3 -3
  53. package/dist/{DropdownButton-DpLG-cIj.mjs.map → DropdownButton-Dp-MZ5tA.mjs.map} +1 -1
  54. package/dist/DropdownButton.d.mts +2 -2
  55. package/dist/{DropdownMenu-B6D4stkF.d.mts → DropdownMenu-BnHPeHOm.d.mts} +3 -3
  56. package/dist/{DropdownMenu-c8XK2Lr4.mjs → DropdownMenu-jJSHQaih.mjs} +4 -2
  57. package/dist/DropdownMenu-jJSHQaih.mjs.map +1 -0
  58. package/dist/DropdownMenu.d.mts +1 -1
  59. package/dist/{FieldRegistry-C2NVPhMO.d.mts → FieldRegistry-CJwGpUVK.d.mts} +2 -2
  60. package/dist/FieldRegistry.d.mts +1 -1
  61. package/dist/{FilterBar-BE_gBM0H.d.mts → FilterBar-DDyk14sx.d.mts} +4 -4
  62. package/dist/FilterBar.d.mts +1 -1
  63. package/dist/FilterPickerMenu.d.mts +2 -2
  64. package/dist/FilterPill.d.mts +1 -1
  65. package/dist/FilterPopover.d.mts +1 -1
  66. package/dist/FloatValueControl.d.mts +3 -2
  67. package/dist/{FloatingToolbar-DLRaE0o7.mjs → FloatingToolbar-rfKurDs8.mjs} +36 -39
  68. package/dist/FloatingToolbar-rfKurDs8.mjs.map +1 -0
  69. package/dist/{FormControl-BztNXLn6.mjs → FormControl--pbTH3bY.mjs} +3 -3
  70. package/dist/{FormControl-BztNXLn6.mjs.map → FormControl--pbTH3bY.mjs.map} +1 -1
  71. package/dist/{FormControl-BQe3GRhi.d.mts → FormControl-DPYbLcBK.d.mts} +2 -2
  72. package/dist/FormControl.d.mts +1 -1
  73. package/dist/FormControlLabel.d.mts +2 -2
  74. package/dist/{FormField-BW5uMzId.d.mts → FormField-CYNGm2bJ.d.mts} +2 -2
  75. package/dist/{FormField-Cf1VMvoa.mjs → FormField-DMxjftFw.mjs} +14 -14
  76. package/dist/{FormField-Cf1VMvoa.mjs.map → FormField-DMxjftFw.mjs.map} +1 -1
  77. package/dist/FormField.d.mts +1 -1
  78. package/dist/{Grid-CYpOqTUu.mjs → Grid-DVC0SSEZ.mjs} +2 -2
  79. package/dist/{Grid-CYpOqTUu.mjs.map → Grid-DVC0SSEZ.mjs.map} +1 -1
  80. package/dist/{Header-CV0Lcf0C.d.mts → Header-DaaUprCL.d.mts} +2 -2
  81. package/dist/Header.d.mts +1 -1
  82. package/dist/{HelperTooltip-BNM3pTM-.d.mts → HelperTooltip-C5BDdJSI.d.mts} +2 -2
  83. package/dist/HelperTooltip.d.mts +1 -1
  84. package/dist/HighlightedText.d.mts +1 -1
  85. package/dist/{HoverCopyableField-XHC_n9tp.mjs → HoverCopyableField-B2-xlwUt.mjs} +12 -7
  86. package/dist/HoverCopyableField-B2-xlwUt.mjs.map +1 -0
  87. package/dist/{IconButton-C_ReZm8v.d.mts → IconButton-7k-wjvH3.d.mts} +2 -2
  88. package/dist/{IconButton-DxHB2g80.mjs → IconButton-kSjnfhWt.mjs} +11 -10
  89. package/dist/IconButton-kSjnfhWt.mjs.map +1 -0
  90. package/dist/IconButton.d.mts +1 -1
  91. package/dist/ImageTile.d.mts +1 -1
  92. package/dist/IndexTableLayout.d.mts +4 -4
  93. package/dist/InlineCombobox.d.mts +1 -1
  94. package/dist/InlineInput.d.mts +1 -1
  95. package/dist/{Input-DH-5dKor.d.mts → Input-CwvrBsiS.d.mts} +3 -3
  96. package/dist/{Input-RHXujO9u.mjs → Input-TRmTBEav.mjs} +5 -5
  97. package/dist/{Input-RHXujO9u.mjs.map → Input-TRmTBEav.mjs.map} +1 -1
  98. package/dist/Input.d.mts +1 -1
  99. package/dist/IntegerValueControl.d.mts +3 -2
  100. package/dist/{Link-D_kCyLYX.mjs → Link-XvzUN8sY.mjs} +6 -6
  101. package/dist/Link-XvzUN8sY.mjs.map +1 -0
  102. package/dist/{ListBox-DpFcM-dM.d.mts → ListBox-BePQBYR7.d.mts} +3 -3
  103. package/dist/{ListBox-BZp6exb8.mjs → ListBox-DahM1PgU.mjs} +12 -12
  104. package/dist/{ListBox-BZp6exb8.mjs.map → ListBox-DahM1PgU.mjs.map} +1 -1
  105. package/dist/ListBox.d.mts +1 -1
  106. package/dist/{ListBoxField-DL6Zk8TU.d.mts → ListBoxField-lj7JN1BX.d.mts} +4 -4
  107. package/dist/ListBoxField.d.mts +1 -1
  108. package/dist/{LoadingShimmer-oPIv2ESr.mjs → LoadingShimmer-CpfKTSUs.mjs} +4 -3
  109. package/dist/LoadingShimmer-CpfKTSUs.mjs.map +1 -0
  110. package/dist/LoadingShimmer.d.mts +1 -1
  111. package/dist/{LogicRow-BakOUtzx.d.mts → LogicRow-Do7t7Suf.d.mts} +2 -2
  112. package/dist/LogicRow.d.mts +1 -1
  113. package/dist/MaskedInput.d.mts +2 -2
  114. package/dist/MatchHighlight.d.mts +1 -1
  115. package/dist/{Menu-BVn1jh46.mjs → Menu-BvMzSH2I.mjs} +5 -5
  116. package/dist/{Menu-BVn1jh46.mjs.map → Menu-BvMzSH2I.mjs.map} +1 -1
  117. package/dist/{Menu-D6OrKCTC.d.mts → Menu-Ca5ftvo6.d.mts} +4 -4
  118. package/dist/Menu.d.mts +1 -1
  119. package/dist/{MiddleTruncatedText-DicQsLDG.mjs → MiddleTruncatedText--jzGTD00.mjs} +2 -2
  120. package/dist/{MiddleTruncatedText-DicQsLDG.mjs.map → MiddleTruncatedText--jzGTD00.mjs.map} +1 -1
  121. package/dist/{Modal-De5_bPJ_.mjs → Modal-B6X5AgWj.mjs} +54 -25
  122. package/dist/{Modal-De5_bPJ_.mjs.map → Modal-B6X5AgWj.mjs.map} +1 -1
  123. package/dist/{Modal-CujB7DuB.d.mts → Modal-BPfFyzkw.d.mts} +3 -3
  124. package/dist/Modal.d.mts +1 -1
  125. package/dist/{PageHeader-UPiqJpIF.d.mts → PageHeader-BeBmYmUX.d.mts} +2 -2
  126. package/dist/{PageHeader-7_Hf6rHl.mjs → PageHeader-bhQTjuZF.mjs} +2 -2
  127. package/dist/{PageHeader-7_Hf6rHl.mjs.map → PageHeader-bhQTjuZF.mjs.map} +1 -1
  128. package/dist/PageHeader.d.mts +1 -1
  129. package/dist/{PageLayout-BdVM37bV.d.mts → PageLayout-BXM_pyrU.d.mts} +2 -2
  130. package/dist/{PageLayout-DjtGrvJa.mjs → PageLayout-DgEGcZgB.mjs} +3 -3
  131. package/dist/{PageLayout-DjtGrvJa.mjs.map → PageLayout-DgEGcZgB.mjs.map} +1 -1
  132. package/dist/PageLayout.d.mts +1 -1
  133. package/dist/{PageSelector-B5CcAzss.d.mts → PageSelector-C14ABZVL.d.mts} +2 -2
  134. package/dist/PageSelector.d.mts +1 -1
  135. package/dist/{Pagination-DMH2IaV0.mjs → Pagination-DE8wT55m.mjs} +5 -5
  136. package/dist/{Pagination-DMH2IaV0.mjs.map → Pagination-DE8wT55m.mjs.map} +1 -1
  137. package/dist/{Pii-24D_nSRQ.mjs → Pii-C42ZY88Y.mjs} +2 -2
  138. package/dist/{Pii-24D_nSRQ.mjs.map → Pii-C42ZY88Y.mjs.map} +1 -1
  139. package/dist/{PillShell-B7Bm-dsE.d.mts → PillShell-Bkyu5FXB.d.mts} +2 -2
  140. package/dist/PillShell.d.mts +1 -1
  141. package/dist/{Popover-DordjYNM.mjs → Popover-DuFjaSoq.mjs} +4 -2
  142. package/dist/Popover-DuFjaSoq.mjs.map +1 -0
  143. package/dist/Popover.d.mts +1 -1
  144. package/dist/ProgressBar.d.mts +1 -1
  145. package/dist/{ProgressIndicator-zt3ndT9U.mjs → ProgressIndicator-hy1P-RG1.mjs} +3 -3
  146. package/dist/{ProgressIndicator-zt3ndT9U.mjs.map → ProgressIndicator-hy1P-RG1.mjs.map} +1 -1
  147. package/dist/{Radio-BlEtetrr.mjs → Radio-B4TBAho6.mjs} +5 -5
  148. package/dist/Radio-B4TBAho6.mjs.map +1 -0
  149. package/dist/{RadioGroup-CMrXmmn4.mjs → RadioGroup-Bf24GKOb.mjs} +3 -3
  150. package/dist/{RadioGroup-CMrXmmn4.mjs.map → RadioGroup-Bf24GKOb.mjs.map} +1 -1
  151. package/dist/RichTextEditor.d.mts +1 -1
  152. package/dist/RuleEditorFields.d.mts +2 -2
  153. package/dist/RulesPill.d.mts +1 -1
  154. package/dist/SectionHeading.d.mts +1 -1
  155. package/dist/{SegmentedControl-D_DA-MU1.mjs → SegmentedControl-BpR7sUWO.mjs} +6 -3
  156. package/dist/SegmentedControl-BpR7sUWO.mjs.map +1 -0
  157. package/dist/{Select-CR9TjFfo.d.mts → Select-DYdn73Nh.d.mts} +2 -2
  158. package/dist/{Select-DOlw_LPR.mjs → Select-RdTT2KoH.mjs} +10 -8
  159. package/dist/Select-RdTT2KoH.mjs.map +1 -0
  160. package/dist/Select.d.mts +1 -1
  161. package/dist/SmartTextInput.d.mts +1 -1
  162. package/dist/SmartTextInputField.d.mts +2 -2
  163. package/dist/SmartTextInputFunctionDialog.d.mts +1 -1
  164. package/dist/SmartTextInputPopover.d.mts +1 -1
  165. package/dist/{Spinner-CXb-KUs1.mjs → Spinner-vcApnJzv.mjs} +2 -2
  166. package/dist/{Spinner-CXb-KUs1.mjs.map → Spinner-vcApnJzv.mjs.map} +1 -1
  167. package/dist/{Stack-CODxfzhl.d.mts → Stack-B6MrjJeW.d.mts} +2 -2
  168. package/dist/Stack.d.mts +1 -1
  169. package/dist/{StatusIndicator-CzRaEFSz.mjs → StatusIndicator-lwt35J6B.mjs} +3 -3
  170. package/dist/{StatusIndicator-CzRaEFSz.mjs.map → StatusIndicator-lwt35J6B.mjs.map} +1 -1
  171. package/dist/{Sticker-CLvRB8V5.d.mts → Sticker-C7Wv3Obx.d.mts} +4 -4
  172. package/dist/{Sticker-C1_6I08u.mjs → Sticker-jfOM4Yi6.mjs} +5 -5
  173. package/dist/{Sticker-C1_6I08u.mjs.map → Sticker-jfOM4Yi6.mjs.map} +1 -1
  174. package/dist/Sticker.d.mts +1 -1
  175. package/dist/StringValueControl.d.mts +2 -1
  176. package/dist/Tab.d.mts +2 -2
  177. package/dist/{TabBar-BCFO38E0.mjs → TabBar-DwHgbIQ6.mjs} +8 -8
  178. package/dist/TabBar-DwHgbIQ6.mjs.map +1 -0
  179. package/dist/{Table-DPi4Dt5H.mjs → Table-SMJAWqoe.mjs} +21 -13
  180. package/dist/Table-SMJAWqoe.mjs.map +1 -0
  181. package/dist/{TableBox-DNQsgQ8x.mjs → TableBox-DS8mpN3-.mjs} +21 -17
  182. package/dist/TableBox-DS8mpN3-.mjs.map +1 -0
  183. package/dist/TableBox.d.mts +1 -1
  184. package/dist/{TableBoxCell-CsRt_5gP.d.mts → TableBoxCell-Bo5xYEmR.d.mts} +6 -6
  185. package/dist/TableBoxCell.d.mts +1 -1
  186. package/dist/{TableBoxField-Db0Vjo6Z.d.mts → TableBoxField-CdgjSGLK.d.mts} +5 -5
  187. package/dist/TableBoxField.d.mts +1 -1
  188. package/dist/{TableBoxRow-exMlZyc4.d.mts → TableBoxRow-DuWS2iRC.d.mts} +2 -2
  189. package/dist/TableBoxRow.d.mts +1 -1
  190. package/dist/{TableBoxRowActions-UO9YN34k.d.mts → TableBoxRowActions-zW74DkXt.d.mts} +2 -2
  191. package/dist/TableBoxRowActions.d.mts +1 -1
  192. package/dist/{TableCell-CQsF7t4e.d.mts → TableCell-uv_jqT5e.d.mts} +2 -2
  193. package/dist/TableCell.d.mts +1 -1
  194. package/dist/{TableControls-Clo_0Mty.d.mts → TableControls-9vz-HfDu.d.mts} +4 -4
  195. package/dist/{TableControls-BrP_BqnF.mjs → TableControls-CX7BvgD2.mjs} +107 -43
  196. package/dist/TableControls-CX7BvgD2.mjs.map +1 -0
  197. package/dist/TableControls.d.mts +1 -1
  198. package/dist/{TableControlsContext-BNd6z9mD.d.mts → TableControlsContext-D0Hn3rwL.d.mts} +2 -2
  199. package/dist/TableControlsContext.d.mts +1 -1
  200. package/dist/{TableViewConfigurationDropdown-Cp7ausV_.d.mts → TableViewConfigurationDropdown-CZcLH8uR.d.mts} +2 -2
  201. package/dist/TableViewConfigurationDropdown.d.mts +1 -1
  202. package/dist/{TechnicalSticker-Cq5jzYKQ.mjs → TechnicalSticker-DrN45Vut.mjs} +9 -7
  203. package/dist/TechnicalSticker-DrN45Vut.mjs.map +1 -0
  204. package/dist/{Text-CvaqognH.d.mts → Text-CdHeSHCc.d.mts} +2 -2
  205. package/dist/Text.d.mts +1 -1
  206. package/dist/{TextArea-Dro-HH8O.mjs → TextArea-CQ1YNi2b.mjs} +4 -5
  207. package/dist/TextArea-CQ1YNi2b.mjs.map +1 -0
  208. package/dist/{TextUnderlineTooltip-Bd5e8KH3.d.mts → TextUnderlineTooltip-By1VVsSs.d.mts} +3 -3
  209. package/dist/TextUnderlineTooltip.d.mts +1 -1
  210. package/dist/Tile.d.mts +1 -1
  211. package/dist/{Toggle-D9MzTIZs.mjs → Toggle-DjmkjJlw.mjs} +13 -9
  212. package/dist/Toggle-DjmkjJlw.mjs.map +1 -0
  213. package/dist/{Tooltip-YViXzMdm.mjs → Tooltip-C2VB8I6y.mjs} +18 -5
  214. package/dist/Tooltip-C2VB8I6y.mjs.map +1 -0
  215. package/dist/{Tooltip-Ddy2Jq0K.d.mts → Tooltip-OxVvOfn8.d.mts} +3 -3
  216. package/dist/Tooltip.d.mts +1 -1
  217. package/dist/{TruncatedText-sr9Fhm3N.d.mts → TruncatedText-Dqj94BFK.d.mts} +2 -2
  218. package/dist/WizardModal.d.mts +1 -1
  219. package/dist/chartColors.d.mts +92 -0
  220. package/dist/chartFrameLayout.d.mts +46 -0
  221. package/dist/{clientFilterUtils-CGHYF5NE.d.mts → clientFilterUtils-CMLuN8kK.d.mts} +2 -2
  222. package/dist/clientFilterUtils.d.mts +1 -1
  223. package/dist/components/Accordion/index.mjs +25 -16
  224. package/dist/components/Accordion/index.mjs.map +1 -1
  225. package/dist/components/Attribute/index.mjs +8 -6
  226. package/dist/components/Attribute/index.mjs.map +1 -1
  227. package/dist/components/Badge/index.mjs +1 -1
  228. package/dist/components/Banner/index.mjs +3 -3
  229. package/dist/components/BottomPanel/index.mjs +10 -8
  230. package/dist/components/BottomPanel/index.mjs.map +1 -1
  231. package/dist/components/Breadcrumbs/index.mjs +1 -1
  232. package/dist/components/Button/index.d.mts +2 -2
  233. package/dist/components/Button/index.mjs +1 -1
  234. package/dist/components/ButtonGroup/index.mjs +2 -2
  235. package/dist/components/Card/index.d.mts +2 -2
  236. package/dist/components/CardV2/index.d.mts +1 -1
  237. package/dist/components/CardV2/index.mjs +1 -1
  238. package/dist/components/Chart/index.d.mts +9 -0
  239. package/dist/components/Chart/index.mjs +680 -0
  240. package/dist/components/Chart/index.mjs.map +1 -0
  241. package/dist/components/Checkbox/index.mjs +1 -1
  242. package/dist/components/CodeHighlight/index.mjs +4 -4
  243. package/dist/components/Combobox/index.d.mts +5 -3
  244. package/dist/components/Combobox/index.mjs +1 -1
  245. package/dist/components/ConfigFormGroup/index.mjs +1 -1
  246. package/dist/components/DataTable/TableControls/index.d.mts +20 -20
  247. package/dist/components/DataTable/TableControls/index.mjs +2 -2
  248. package/dist/components/DataTable/index.d.mts +5 -5
  249. package/dist/components/DataTable/index.mjs +1 -1
  250. package/dist/components/DataTable/types.d.mts +1 -1
  251. package/dist/components/DatePicker/index.mjs +1 -1
  252. package/dist/components/DropdownButton/index.mjs +1 -1
  253. package/dist/components/DropdownMenu/index.d.mts +1 -1
  254. package/dist/components/DropdownMenu/index.mjs +1 -1
  255. package/dist/components/FloatingPanel/index.mjs +20 -18
  256. package/dist/components/FloatingPanel/index.mjs.map +1 -1
  257. package/dist/components/FloatingToolbar/index.mjs +1 -1
  258. package/dist/components/FormControl/index.d.mts +1 -1
  259. package/dist/components/FormControl/index.mjs +1 -1
  260. package/dist/components/FormField/index.d.mts +5 -5
  261. package/dist/components/FormField/index.mjs +1 -1
  262. package/dist/components/Grid/index.mjs +1 -1
  263. package/dist/components/HoverCopyableField/index.mjs +1 -1
  264. package/dist/components/ImageTile/index.mjs +10 -10
  265. package/dist/components/ImageTile/index.mjs.map +1 -1
  266. package/dist/components/Input/index.d.mts +1 -1
  267. package/dist/components/Input/index.mjs +1 -1
  268. package/dist/components/Link/index.mjs +1 -1
  269. package/dist/components/ListBox/index.d.mts +3 -3
  270. package/dist/components/ListBox/index.mjs +1 -1
  271. package/dist/components/LoadingShimmer/index.mjs +1 -1
  272. package/dist/components/MaskedInput/index.mjs +1 -1
  273. package/dist/components/Menu/index.d.mts +1 -1
  274. package/dist/components/Menu/index.mjs +1 -1
  275. package/dist/components/Modal/index.d.mts +1 -1
  276. package/dist/components/Modal/index.mjs +1 -1
  277. package/dist/components/PageHeader/index.d.mts +1 -1
  278. package/dist/components/PageHeader/index.mjs +1 -1
  279. package/dist/components/Pagination/index.d.mts +1 -1
  280. package/dist/components/Pagination/index.mjs +1 -1
  281. package/dist/components/Pii/index.mjs +1 -1
  282. package/dist/components/Popover/index.mjs +1 -1
  283. package/dist/components/ProgressBar/index.mjs +20 -3
  284. package/dist/components/ProgressBar/index.mjs.map +1 -1
  285. package/dist/components/ProgressIndicator/index.mjs +1 -1
  286. package/dist/components/Radio/index.mjs +1 -1
  287. package/dist/components/RadioGroup/index.mjs +1 -1
  288. package/dist/components/RichTextEditor/index.mjs +9 -9
  289. package/dist/components/RightPanel/index.mjs +30 -15
  290. package/dist/components/RightPanel/index.mjs.map +1 -1
  291. package/dist/components/SegmentedControl/index.mjs +1 -1
  292. package/dist/components/Select/index.d.mts +1 -1
  293. package/dist/components/Select/index.mjs +1 -1
  294. package/dist/components/SelectionCard/index.mjs +5 -5
  295. package/dist/components/Slider/index.mjs +5 -4
  296. package/dist/components/Slider/index.mjs.map +1 -1
  297. package/dist/components/SmartTextInput/index.mjs +11 -18
  298. package/dist/components/SmartTextInput/index.mjs.map +1 -1
  299. package/dist/components/Spinner/index.mjs +1 -1
  300. package/dist/components/Stack/index.d.mts +1 -1
  301. package/dist/components/StatusIndicator/index.mjs +1 -1
  302. package/dist/components/Sticker/index.d.mts +1 -1
  303. package/dist/components/Sticker/index.mjs +1 -1
  304. package/dist/components/SwatchPicker/index.mjs +2 -1
  305. package/dist/components/SwatchPicker/index.mjs.map +1 -1
  306. package/dist/components/TabBar/index.mjs +1 -1
  307. package/dist/components/Table/index.d.mts +1 -1
  308. package/dist/components/Table/index.mjs +1 -1
  309. package/dist/components/TableBox/index.d.mts +1 -1
  310. package/dist/components/TableBox/index.mjs +1 -1
  311. package/dist/components/TechnicalSticker/index.mjs +1 -1
  312. package/dist/components/Text/index.d.mts +1 -1
  313. package/dist/components/TextArea/index.mjs +1 -1
  314. package/dist/components/Tile/index.mjs +2 -2
  315. package/dist/components/Toast/index.mjs +19 -13
  316. package/dist/components/Toast/index.mjs.map +1 -1
  317. package/dist/components/Toggle/index.mjs +1 -1
  318. package/dist/components/Tooltip/index.d.mts +3 -3
  319. package/dist/components/Tooltip/index.mjs +1 -1
  320. package/dist/components/VersionHistory/index.mjs +8 -8
  321. package/dist/compound-expression.d.mts +1 -1
  322. package/dist/{date-range-rule-value-ASr06ClE.d.mts → date-range-rule-value-DyLlMtjr.d.mts} +2 -2
  323. package/dist/date-range-rule-value.d.mts +1 -1
  324. package/dist/display.d.mts +1 -1
  325. package/dist/duration-token.d.mts +11 -0
  326. package/dist/exit-motion.d.mts +7 -0
  327. package/dist/fieldPickerOptions.d.mts +2 -2
  328. package/dist/{filter-size-context-CmFyIPCm.d.mts → filter-size-context-DVnjmuhk.d.mts} +2 -2
  329. package/dist/filter-size-context.d.mts +1 -1
  330. package/dist/{filters-DTBc0mE7.d.mts → filters-By_TYKAZ.d.mts} +3 -3
  331. package/dist/filters.d.mts +1 -1
  332. package/dist/{helpers-CBJ2AqGZ.d.mts → helpers-BIHsqdyX.d.mts} +2 -2
  333. package/dist/helpers.d.mts +1 -1
  334. package/dist/{index-kIon1vPp.d.mts → index-BozzRwby.d.mts} +2 -2
  335. package/dist/{index-OkdnW-u5.d.mts → index-CZJp4Af6.d.mts} +3 -3
  336. package/dist/index2.d.mts +1 -1
  337. package/dist/index4.d.mts +3 -3
  338. package/dist/index5.d.mts +1 -1
  339. package/dist/index6.d.mts +14 -14
  340. package/dist/{inputFields-DpHeZiFX.d.mts → inputFields-BqO2H-Kj.d.mts} +6 -6
  341. package/dist/inputFields.d.mts +1 -1
  342. package/dist/lib/MiddleTruncatedText.mjs +1 -1
  343. package/dist/lib/TruncatedText.d.mts +1 -1
  344. package/dist/lib/TruncatedTextWithTooltip.d.mts +1 -1
  345. package/dist/lib/TruncatedTextWithTooltip.mjs +1 -1
  346. package/dist/lib/colorMode.d.mts +1 -1
  347. package/dist/lib/useChain.d.mts +1 -1
  348. package/dist/lib/useModalInsetRight.d.mts +4 -3
  349. package/dist/lib/useModalInsetRight.mjs +7 -5
  350. package/dist/lib/useModalInsetRight.mjs.map +1 -1
  351. package/dist/lint/THIRD_PARTY_NOTICES.md +30 -0
  352. package/dist/lint/index.mjs +696 -11
  353. package/dist/lint/index.mjs.map +1 -1
  354. package/dist/lint/recommended.json +7 -1
  355. package/dist/mixins/focus.mjs +1 -1
  356. package/dist/mixins/hoverable.mjs +2 -2
  357. package/dist/mixins/hoverable.mjs.map +1 -1
  358. package/dist/mixins/input.mjs +3 -2
  359. package/dist/mixins/input.mjs.map +1 -1
  360. package/dist/mixins/menuItem.mjs +2 -0
  361. package/dist/mixins/menuItem.mjs.map +1 -1
  362. package/dist/mixins/motion.d.mts +24 -0
  363. package/dist/mixins/motion.mjs +44 -0
  364. package/dist/mixins/motion.mjs.map +1 -0
  365. package/dist/motion-origin.d.mts +7 -0
  366. package/dist/motion.d.mts +63 -0
  367. package/dist/no-layout-motion.d.mts +7 -0
  368. package/dist/no-transition-all.d.mts +7 -0
  369. package/dist/{operators-BHxKZcpD.d.mts → operators-B8_k3r69.d.mts} +10 -3
  370. package/dist/operators.d.mts +2 -2
  371. package/dist/overlay-motion.d.mts +7 -0
  372. package/dist/patterns/CardGrouping/index.mjs +9 -9
  373. package/dist/patterns/CardGrouping/index.mjs.map +1 -1
  374. package/dist/patterns/IndexTableLayout/index.mjs +3 -3
  375. package/dist/patterns/LayoutLoadingShimmer/index.mjs +4 -4
  376. package/dist/patterns/LayoutLoadingSpinner/index.mjs +3 -1
  377. package/dist/patterns/LayoutLoadingSpinner/index.mjs.map +1 -1
  378. package/dist/patterns/PageLayout/index.d.mts +1 -1
  379. package/dist/patterns/PageLayout/index.mjs +1 -1
  380. package/dist/patterns/WizardModal/index.mjs +4 -4
  381. package/dist/relative-date-label.d.mts +1 -1
  382. package/dist/tone.d.mts +1 -1
  383. package/dist/{types-DLnCkvTt.d.mts → types-BJqmRXFV.d.mts} +15 -1
  384. package/dist/{types-CqcbWyUY.d.mts → types-BOsCi-kZ.d.mts} +8 -2
  385. package/dist/{types-BEdERA4v.d.mts → types-C_CncajO.d.mts} +2 -2
  386. package/dist/{types-BiqzeNsa.d.mts → types-D5txFacG.d.mts} +3 -3
  387. package/dist/types4.d.mts +1 -1
  388. package/dist/types5.d.mts +1 -1
  389. package/dist/types6.d.mts +1 -1
  390. package/dist/{url-state-CXUuK3_r.d.mts → url-state-CXPmXzIZ.d.mts} +2 -2
  391. package/dist/url-state.d.mts +1 -1
  392. package/dist/{useChain-B--KAtdN.d.mts → useChain-x9fd9Fyq.d.mts} +2 -2
  393. package/dist/useChainAtCursor.d.mts +1 -1
  394. package/dist/useChartColors.d.mts +30 -0
  395. package/dist/useChartSeriesVisibility.d.mts +22 -0
  396. package/dist/useChartStyles.d.mts +108 -0
  397. package/dist/useColumnConfiguration.d.mts +2 -2
  398. package/dist/useComboboxFooterAction.d.mts +1 -1
  399. package/dist/{useFilterStateV2-DBpbxAEC.d.mts → useFilterStateV2-DiTS9DTg.d.mts} +3 -3
  400. package/dist/useFilterStateV2.d.mts +1 -1
  401. package/dist/{useTableColumns-Xd14vx_h.d.mts → useTableColumns-BEKJNrb1.d.mts} +2 -2
  402. package/dist/useTableColumns.d.mts +1 -1
  403. package/dist/useTruncation.d.mts +1 -1
  404. package/dist/useValueControlError.d.mts +26 -0
  405. package/dist/utils.d.mts +1 -1
  406. package/dist/{validation-Tgg3AhuP.d.mts → validation-BDQdQ1cY.d.mts} +3 -3
  407. package/dist/validation.d.mts +1 -1
  408. package/dist/{value-control-resolver-XQbGCdsP.d.mts → value-control-resolver-BFJZEWDn.d.mts} +9 -3
  409. package/dist/value-control-resolver.d.mts +1 -1
  410. package/dist/variables/keyframes.d.mts +2 -1
  411. package/dist/variables/keyframes.mjs +9 -1
  412. package/dist/variables/keyframes.mjs.map +1 -1
  413. package/dist/variables/transitions.d.mts +31 -1
  414. package/dist/variables/transitions.mjs +50 -1
  415. package/dist/variables/transitions.mjs.map +1 -1
  416. package/llms.txt +1 -0
  417. package/package.json +14 -4
  418. package/skills/new-screen/SKILL.md +33 -0
  419. package/skills/ui-authoring/COMPONENTS.md +18 -0
  420. package/skills/ui-authoring/PATTERNS.md +51 -34
  421. package/skills/ui-authoring/STANDARD.md +68 -4
  422. package/skills/ui-authoring/TOKENS.md +27 -24
  423. package/dist/Breadcrumbs-CMf3Uvow.mjs.map +0 -1
  424. package/dist/CardV2-CrV6eEQb.mjs.map +0 -1
  425. package/dist/Checkbox-Dr4LMKHV.mjs.map +0 -1
  426. package/dist/Combobox-CIKqTYZt.d.mts +0 -11
  427. package/dist/Combobox-Gb_j1dg6.mjs.map +0 -1
  428. package/dist/DataTable-CIZJ1vO8.mjs.map +0 -1
  429. package/dist/DatePicker-C9redLBr.mjs.map +0 -1
  430. package/dist/DropdownMenu-c8XK2Lr4.mjs.map +0 -1
  431. package/dist/FloatingToolbar-DLRaE0o7.mjs.map +0 -1
  432. package/dist/HoverCopyableField-XHC_n9tp.mjs.map +0 -1
  433. package/dist/IconButton-DxHB2g80.mjs.map +0 -1
  434. package/dist/Link-D_kCyLYX.mjs.map +0 -1
  435. package/dist/LoadingShimmer-oPIv2ESr.mjs.map +0 -1
  436. package/dist/Popover-DordjYNM.mjs.map +0 -1
  437. package/dist/Radio-BlEtetrr.mjs.map +0 -1
  438. package/dist/SegmentedControl-D_DA-MU1.mjs.map +0 -1
  439. package/dist/Select-DOlw_LPR.mjs.map +0 -1
  440. package/dist/TabBar-BCFO38E0.mjs.map +0 -1
  441. package/dist/Table-DPi4Dt5H.mjs.map +0 -1
  442. package/dist/TableBox-DNQsgQ8x.mjs.map +0 -1
  443. package/dist/TableControls-BrP_BqnF.mjs.map +0 -1
  444. package/dist/TechnicalSticker-Cq5jzYKQ.mjs.map +0 -1
  445. package/dist/TextArea-Dro-HH8O.mjs.map +0 -1
  446. package/dist/Toggle-D9MzTIZs.mjs.map +0 -1
  447. package/dist/Tooltip-YViXzMdm.mjs.map +0 -1
@@ -1,18 +1,18 @@
1
1
  import { a as styled, r as css } from "./styledComponentsInterop-Cs5CCPRy.mjs";
2
- import { semanticColor, semanticOnly, semanticTokens } from "./lib/semanticColor.mjs";
3
- import { t as Card_default } from "./Card-DuQHyroh.mjs";
4
- import { withAlpha } from "./lib/color.mjs";
5
2
  import { isDisabled, isFocused, isFocusedVisible, isHovered, isNotDisabled } from "./lib/pseudoClass.mjs";
6
- import { Z_INDICES } from "./lib/zindex.mjs";
3
+ import { semanticColor, semanticOnly, semanticTokens } from "./lib/semanticColor.mjs";
7
4
  import { focusWithinOutline } from "./mixins/focus.mjs";
5
+ import { withAlpha } from "./lib/color.mjs";
8
6
  import inputMixin from "./mixins/input.mjs";
9
- import { t as IconButton } from "./IconButton-DxHB2g80.mjs";
10
- import { t as ClearButton } from "./Input-RHXujO9u.mjs";
11
- import { c as MenuList, s as MenuItem } from "./Menu-BVn1jh46.mjs";
12
- import { s as Popover_default } from "./Popover-DordjYNM.mjs";
13
- import { a as FormLabel } from "./FormControl-BztNXLn6.mjs";
14
- import { forwardRef, memo, useCallback, useEffect, useRef, useState } from "react";
7
+ import { t as Card_default } from "./Card-DuQHyroh.mjs";
8
+ import { Z_INDICES } from "./lib/zindex.mjs";
9
+ import { t as IconButton } from "./IconButton-kSjnfhWt.mjs";
10
+ import { t as ClearButton } from "./Input-TRmTBEav.mjs";
11
+ import { c as MenuList, s as MenuItem } from "./Menu-BvMzSH2I.mjs";
12
+ import { s as Popover_default } from "./Popover-DuFjaSoq.mjs";
13
+ import { a as FormLabel } from "./FormControl--pbTH3bY.mjs";
15
14
  import { BorderRadius, Color, Spacing, Typography } from "@persona/design-tokens";
15
+ import { forwardRef, memo, useCallback, useEffect, useRef, useState } from "react";
16
16
  import { jsx, jsxs } from "react/jsx-runtime";
17
17
  import { DateTime, Settings } from "luxon";
18
18
  import { ArrowLeftIcon, ArrowRightIcon, CircleXInverseIcon } from "@persona/icons";
@@ -172,274 +172,32 @@ const CalendarGrid = ({ state, offset = {}, skipFromTabOrder = false }) => {
172
172
  });
173
173
  };
174
174
  //#endregion
175
- //#region src/components/DatePicker/Calendar/RangeCalendarPresets.tsx
176
- /** The preset windows the picker offers; the codec resolves the same ids on read. */
177
- const getDefaultPresets = (tz) => {
178
- const now = today(tz);
179
- return [
180
- {
181
- id: "last_7_days",
182
- label: "Last 7 days",
183
- range: {
184
- start: now.subtract({ days: 7 }),
185
- end: now
186
- }
187
- },
188
- {
189
- id: "last_14_days",
190
- label: "Last 14 days",
191
- range: {
192
- start: now.subtract({ days: 14 }),
193
- end: now
194
- }
195
- },
196
- {
197
- id: "last_30_days",
198
- label: "Last 30 days",
199
- range: {
200
- start: now.subtract({ days: 30 }),
201
- end: now
202
- }
203
- },
204
- {
205
- id: "this_month",
206
- label: "This month",
207
- range: {
208
- start: startOfMonth(now),
209
- end: now
210
- }
211
- },
212
- {
213
- id: "last_month",
214
- label: "Last month",
215
- range: {
216
- start: startOfMonth(now.subtract({ months: 1 })),
217
- end: endOfMonth(now.subtract({ months: 1 }))
218
- }
219
- },
220
- {
221
- id: "this_year",
222
- label: "This year",
223
- range: {
224
- start: startOfYear(now),
225
- end: now
226
- }
227
- },
228
- {
229
- id: "last_year",
230
- label: "Last year",
231
- range: {
232
- start: startOfYear(now.subtract({ years: 1 })),
233
- end: endOfYear(now.subtract({ years: 1 }))
234
- }
235
- }
236
- ];
237
- };
238
- /**
239
- * Compare two date values by year/month/day only, ignoring time components.
240
- */
241
- const datesMatchByDay = (a, b) => a.year === b.year && a.month === b.month && a.day === b.day;
242
- const Container = styled.div`
243
- display: flex;
244
- flex-direction: column;
245
- `;
246
- const StyledPresetButton = styled(MenuItem)`
247
- ${({ selected }) => !selected && css`
248
- &${isNotDisabled}${isHovered}, &${isNotDisabled}${isFocused} {
249
- background-color: transparent;
250
- }
251
- `}
252
-
253
- &:focus-visible {
254
- // MenuItems default to outline: none, so we need to override it here.
255
- outline: 2px solid ${({ theme }) => semanticColor(theme, "BorderFocus", Color.BorderFocus)} !important;
256
- outline-offset: 1px;
257
- }
258
- `;
259
- const PresetButton = ({ commitRange, state, preset, isSelected, setDateMode, onPresetSelect, ...props }) => {
260
- const ref = useRef();
261
- const { buttonProps } = useButton({ onPress: () => {
262
- const commit = () => commitRange(preset.range);
263
- if (onPresetSelect) onPresetSelect(preset.id, commit);
264
- else commit();
265
- setDateMode(null);
266
- } }, ref);
267
- const { "aria-current": _ariaCurrent, ...mergedProps } = mergeProps(props, buttonProps);
268
- return /* @__PURE__ */ jsx(StyledPresetButton, {
269
- selected: isSelected,
270
- ...mergedProps,
271
- ref,
272
- children: preset.label
273
- });
274
- };
275
- const DateRangePickerPresets = ({ presetsFn = getDefaultPresets, commitRange, state, setDateMode, onPresetSelect, selectedPreset, ...props }) => {
276
- const presets = presetsFn(Settings.defaultZone.name);
277
- const { value } = state;
278
- const selectedPresetIndex = value ? presets.findIndex((preset) => datesMatchByDay(preset.range.start, value.start) && datesMatchByDay(preset.range.end, value.end)) : -1;
279
- const infersSelection = typeof selectedPreset === "undefined";
280
- return /* @__PURE__ */ jsx(Container, {
281
- ...props,
282
- children: /* @__PURE__ */ jsx(MenuList, {
283
- "aria-label": "Date range presets",
284
- children: presets.map((preset, i) => /* @__PURE__ */ jsx(PresetButton, {
285
- preset,
286
- commitRange,
287
- state,
288
- setDateMode,
289
- onPresetSelect,
290
- isSelected: infersSelection ? i === selectedPresetIndex : preset.id === selectedPreset
291
- }, i))
292
- })
293
- });
294
- };
295
- const arePropsEqual = (prevProps, nextProps) => {
296
- if (prevProps.selectedPreset !== nextProps.selectedPreset || prevProps.onPresetSelect !== nextProps.onPresetSelect || prevProps.commitRange !== nextProps.commitRange || prevProps.setDateMode !== nextProps.setDateMode || prevProps.presetsFn !== nextProps.presetsFn) return false;
297
- const prevValue = prevProps.state.value;
298
- const nextValue = nextProps.state.value;
299
- if (!prevValue && !nextValue) return true;
300
- if (!prevValue || !nextValue) return false;
301
- return prevValue.start.compare(nextValue.start) === 0 && prevValue.end.compare(nextValue.end) === 0;
302
- };
303
- var RangeCalendarPresets_default = memo(DateRangePickerPresets, arePropsEqual);
304
- //#endregion
305
175
  //#region src/components/DatePicker/common.ts
306
176
  const createCalendar = () => new GregorianCalendar();
307
177
  //#endregion
308
- //#region src/components/DatePicker/time-range.ts
309
- const earliest = (a, b) => a.compare(b) <= 0 ? a : b;
310
- const presetEnd = (end) => earliest(end.set({
311
- hour: 23,
312
- minute: 59,
313
- second: 59,
314
- millisecond: 999
315
- }), toCalendarDateTime(now(Settings.defaultZone.name)).set({
316
- second: 0,
317
- millisecond: 0
318
- }));
319
- //#endregion
320
- //#region src/components/DatePicker/Calendar/RangeCalendar.tsx
321
- const RangeCalendarHeader = styled(CalendarHeader)`
322
- gap: ${Spacing[5]};
323
- `;
324
- const CalendarHeaderMonth = styled.div`
325
- display: grid;
326
- grid-template-columns: minmax(auto, 1fr) auto minmax(auto, 1fr);
327
- grid-template-areas: 'prev title next';
328
- width: 266px;
329
- align-items: center;
330
- `;
331
- const CalendarGrids = styled.div`
332
- display: flex;
333
- gap: ${Spacing[5]};
334
- align-items: start;
335
- `;
336
- const PrevButton = styled(CalendarButton)`
337
- grid-area: prev;
338
- justify-self: start;
339
- border-radius: ${BorderRadius.Sm};
340
- `;
341
- const NextButton = styled(CalendarButton)`
342
- grid-area: next;
343
- justify-self: end;
344
- border-radius: ${BorderRadius.Sm};
345
- `;
346
- const RangeCalendarHeading = styled(CalendarHeading)`
347
- grid-area: title;
348
- `;
349
- const RangeCalendarContainer = styled.div`
350
- display: flex;
351
- `;
352
- const PresetsContainer = styled(Card_default.Body)`
353
- border-right: 1px solid ${({ theme }) => semanticColor(theme, "BorderDivider", Color.BorderHairline)};
354
- `;
355
- const hasTimeComponent = (date) => "hour" in date;
356
- const RangeCalendar = ({ calendarRef, onSelectDate, minDate, maxDate, hidePresets, visibleMonths = 2, setDateMode, onPresetSelect, selectedPreset, setValue, granularity, ...props }) => {
178
+ //#region src/components/DatePicker/Calendar/Calendar.tsx
179
+ const Calendar = (props) => {
357
180
  const { locale } = useLocale();
358
- const timezoneName = Settings.defaultZone.name;
359
- const rangeCalendarState = useRangeCalendarState({
181
+ const state = useCalendarState({
360
182
  ...props,
361
- minValue: minDate,
362
- maxValue: maxDate,
363
- visibleDuration: { months: visibleMonths },
364
183
  locale,
365
184
  createCalendar
366
185
  });
367
- const state = {
368
- ...rangeCalendarState,
369
- setValue: (value) => {
370
- if (!value || granularity === "day") {
371
- rangeCalendarState.setValue(value);
372
- return;
373
- }
374
- setValue({
375
- start: toZoned(toCalendarDateTime(value.start), timezoneName),
376
- end: toZoned(hasTimeComponent(value.end) ? toCalendarDateTime(value.end) : presetEnd(toCalendarDateTime(value.end)), timezoneName)
377
- });
378
- },
379
- selectDate: (date) => {
380
- if (onSelectDate) {
381
- onSelectDate(date);
382
- rangeCalendarState.setAnchorDate(null);
383
- } else rangeCalendarState.selectDate(date);
384
- }
385
- };
386
- const commitRef = useRef(state.setValue);
387
- useEffect(() => {
388
- commitRef.current = state.setValue;
389
- });
390
- const commitRange = useCallback((value) => commitRef.current(value), []);
391
- const ref = useRef();
392
- const { calendarProps, prevButtonProps, nextButtonProps } = useRangeCalendar(props, state, ref);
393
- const monthDateFormatter = useDateFormatter({
394
- month: "long",
395
- year: "numeric",
396
- timeZone: timezoneName
397
- });
398
- const monthHeaders = range(0, visibleMonths).map((i) => {
399
- return /* @__PURE__ */ jsxs(CalendarHeaderMonth, { children: [
400
- i === 0 && /* @__PURE__ */ jsx(PrevButton, {
186
+ const { calendarProps, prevButtonProps, nextButtonProps, title } = useCalendar(props, state);
187
+ return /* @__PURE__ */ jsxs(CalendarContainer, {
188
+ ...calendarProps,
189
+ ref: props.calendarRef,
190
+ children: [/* @__PURE__ */ jsxs(CalendarHeader, { children: [
191
+ /* @__PURE__ */ jsx(CalendarButton, {
401
192
  ...prevButtonProps,
402
193
  children: /* @__PURE__ */ jsx(ArrowLeftIcon, {})
403
194
  }),
404
- /* @__PURE__ */ jsx(RangeCalendarHeading, {
405
- "aria-hidden": true,
406
- children: monthDateFormatter.format(state.visibleRange.start.add({ months: i }).toDate(timezoneName))
407
- }),
408
- i === visibleMonths - 1 && /* @__PURE__ */ jsx(NextButton, {
195
+ /* @__PURE__ */ jsx(CalendarHeading, { children: title }),
196
+ /* @__PURE__ */ jsx(CalendarButton, {
409
197
  ...nextButtonProps,
410
198
  children: /* @__PURE__ */ jsx(ArrowRightIcon, {})
411
199
  })
412
- ] }, `calendar-month-${i}`);
413
- });
414
- const monthGrids = range(0, visibleMonths).map((i) => {
415
- return /* @__PURE__ */ jsx(CalendarGrid, {
416
- state,
417
- offset: { months: i },
418
- skipFromTabOrder: i > 0
419
- }, `calendar-grid-${i}`);
420
- });
421
- return /* @__PURE__ */ jsxs(RangeCalendarContainer, {
422
- ref: calendarRef,
423
- children: [!hidePresets && /* @__PURE__ */ jsx(PresetsContainer, {
424
- padding: Spacing[3],
425
- children: /* @__PURE__ */ jsx(RangeCalendarPresets_default, {
426
- state,
427
- commitRange,
428
- setDateMode,
429
- onPresetSelect,
430
- selectedPreset
431
- })
432
- }), /* @__PURE__ */ jsx(Card_default.Body, {
433
- padding: Spacing[3],
434
- children: /* @__PURE__ */ jsxs(CalendarContainer, {
435
- ...calendarProps,
436
- ref,
437
- children: [/* @__PURE__ */ jsxs(RangeCalendarHeader, { children: [/* @__PURE__ */ jsx(VisuallyHidden, {
438
- isFocusable: false,
439
- children: calendarProps["aria-label"]
440
- }), monthHeaders] }), /* @__PURE__ */ jsx(CalendarGrids, { children: monthGrids })]
441
- })
442
- })]
200
+ ] }), /* @__PURE__ */ jsx(CalendarGrid, { state })]
443
201
  });
444
202
  };
445
203
  //#endregion
@@ -568,32 +326,396 @@ const InputBox = styled.div`
568
326
  }
569
327
  }}
570
328
  `;
571
- const DateField = forwardRef(function DateField(props, forwardedRef) {
572
- const { locale } = useLocale$1();
573
- const state = useDateFieldState({
329
+ const DateField = forwardRef(function DateField(props, forwardedRef) {
330
+ const { locale } = useLocale$1();
331
+ const state = useDateFieldState({
332
+ ...props,
333
+ locale,
334
+ createCalendar
335
+ });
336
+ const ref = useRef();
337
+ const { fieldProps } = useDateField(props, state, ref);
338
+ return /* @__PURE__ */ jsx(InputBox, {
339
+ ...fieldProps,
340
+ ...props.dateFieldProps || {},
341
+ ref: mergeRefs(ref, forwardedRef),
342
+ focused: props.focused,
343
+ disabled: props.disabled,
344
+ "aria-label": props["aria-label"],
345
+ $size: props.size ?? "md",
346
+ $inputPosition: props.inputPosition,
347
+ $hasTimeZone: state.segments.some((segment) => segment.type === "timeZoneName"),
348
+ hasError: props.hasError,
349
+ children: state.segments.map((segment, i) => /* @__PURE__ */ jsx(DateSegment, {
350
+ segment,
351
+ state
352
+ }, i))
353
+ });
354
+ });
355
+ //#endregion
356
+ //#region src/components/DatePicker/DatePicker.tsx
357
+ const OpenButton$1 = ({ calendarRef }) => {
358
+ const openCalBtnRef = useRef(null);
359
+ const { buttonProps } = useButton({ onPress: () => {
360
+ if (calendarRef.current) calendarRef.current.querySelector("button[aria-label=\"Previous\"]").focus();
361
+ } }, openCalBtnRef);
362
+ return /* @__PURE__ */ jsx("button", {
363
+ ...buttonProps,
364
+ ref: openCalBtnRef,
365
+ "aria-label": "Open calendar"
366
+ });
367
+ };
368
+ const DatePicker = (props) => {
369
+ const state = useDatePickerState(props);
370
+ const ref = useRef(null);
371
+ const fieldRef = useRef(null);
372
+ const { groupProps, fieldProps, calendarProps } = useDatePicker(props, state, ref);
373
+ const calendarRef = useRef(null);
374
+ const isClosingRef = useRef(false);
375
+ const { focusWithinProps } = useFocusWithin({
376
+ onFocusWithin: () => {
377
+ if (!state.isOpen && !isClosingRef.current) state.setOpen(true);
378
+ },
379
+ onBlurWithin: (e) => {
380
+ if (e.relatedTarget && !calendarRef?.current?.contains(e.relatedTarget) && state.isOpen) state.setOpen(false);
381
+ }
382
+ });
383
+ const handleOutsideClick = (e) => {
384
+ const target = e.target;
385
+ if (ref.current?.contains(target)) return;
386
+ if (state.isOpen) state.setOpen(false);
387
+ };
388
+ const handleKeyDown = useCallback((event) => {
389
+ if (event.key === "Enter" && !state.isOpen) {
390
+ event.preventDefault();
391
+ state.setOpen(true);
392
+ }
393
+ }, [state]);
394
+ return /* @__PURE__ */ jsx("div", {
395
+ style: {
396
+ display: "flex",
397
+ flexDirection: "column"
398
+ },
399
+ children: /* @__PURE__ */ jsxs(Popover_default, {
400
+ open: state.isOpen,
401
+ modal: false,
402
+ contentProps: {
403
+ style: { zIndex: props.useModalZIndex ? Z_INDICES.modalDropdown : Z_INDICES.dropdown },
404
+ align: "start",
405
+ "aria-modal": true,
406
+ onInteractOutside: handleOutsideClick,
407
+ onEscapeKeyDown: () => {
408
+ state.setOpen(false);
409
+ },
410
+ onCloseAutoFocus: (e) => {
411
+ e.preventDefault();
412
+ isClosingRef.current = true;
413
+ if (fieldRef.current) {
414
+ const firstEditableSegment = fieldRef.current.querySelector("[tabindex=\"0\"]");
415
+ if (firstEditableSegment instanceof HTMLElement) firstEditableSegment.focus();
416
+ }
417
+ requestAnimationFrame(() => {
418
+ isClosingRef.current = false;
419
+ });
420
+ },
421
+ noPadding: true
422
+ },
423
+ children: [/* @__PURE__ */ jsx(Popover_default.Trigger, {
424
+ asChild: true,
425
+ children: /* @__PURE__ */ jsxs("div", {
426
+ ...mergeProps(groupProps, focusWithinProps),
427
+ ref,
428
+ style: {
429
+ display: "flex",
430
+ position: "relative"
431
+ },
432
+ children: [/* @__PURE__ */ jsx(DateField, {
433
+ ref: fieldRef,
434
+ id: props.id,
435
+ dateFieldProps: props.dateFieldProps,
436
+ disabled: props.disabled,
437
+ size: props.size,
438
+ ...mergeProps(fieldProps, { onKeyDown: handleKeyDown }),
439
+ value: fieldProps.value ?? void 0
440
+ }), /* @__PURE__ */ jsx(VisuallyHidden, { children: /* @__PURE__ */ jsx(OpenButton$1, { calendarRef }) })]
441
+ })
442
+ }), /* @__PURE__ */ jsx(Calendar, {
443
+ ...calendarProps,
444
+ autoFocus: void 0,
445
+ calendarRef,
446
+ id: "calendar-popover"
447
+ })]
448
+ })
449
+ });
450
+ };
451
+ //#endregion
452
+ //#region src/components/DatePicker/Calendar/RangeCalendarPresets.tsx
453
+ /** The preset windows the picker offers; the codec resolves the same ids on read. */
454
+ const getDefaultPresets = (tz) => {
455
+ const now = today(tz);
456
+ return [
457
+ {
458
+ id: "last_7_days",
459
+ label: "Last 7 days",
460
+ range: {
461
+ start: now.subtract({ days: 7 }),
462
+ end: now
463
+ }
464
+ },
465
+ {
466
+ id: "last_14_days",
467
+ label: "Last 14 days",
468
+ range: {
469
+ start: now.subtract({ days: 14 }),
470
+ end: now
471
+ }
472
+ },
473
+ {
474
+ id: "last_30_days",
475
+ label: "Last 30 days",
476
+ range: {
477
+ start: now.subtract({ days: 30 }),
478
+ end: now
479
+ }
480
+ },
481
+ {
482
+ id: "this_month",
483
+ label: "This month",
484
+ range: {
485
+ start: startOfMonth(now),
486
+ end: now
487
+ }
488
+ },
489
+ {
490
+ id: "last_month",
491
+ label: "Last month",
492
+ range: {
493
+ start: startOfMonth(now.subtract({ months: 1 })),
494
+ end: endOfMonth(now.subtract({ months: 1 }))
495
+ }
496
+ },
497
+ {
498
+ id: "this_year",
499
+ label: "This year",
500
+ range: {
501
+ start: startOfYear(now),
502
+ end: now
503
+ }
504
+ },
505
+ {
506
+ id: "last_year",
507
+ label: "Last year",
508
+ range: {
509
+ start: startOfYear(now.subtract({ years: 1 })),
510
+ end: endOfYear(now.subtract({ years: 1 }))
511
+ }
512
+ }
513
+ ];
514
+ };
515
+ /**
516
+ * Compare two date values by year/month/day only, ignoring time components.
517
+ */
518
+ const datesMatchByDay = (a, b) => a.year === b.year && a.month === b.month && a.day === b.day;
519
+ const Container = styled.div`
520
+ display: flex;
521
+ flex-direction: column;
522
+ `;
523
+ const StyledPresetButton = styled(MenuItem)`
524
+ ${({ selected }) => !selected && css`
525
+ &${isNotDisabled}${isHovered}, &${isNotDisabled}${isFocused} {
526
+ background-color: transparent;
527
+ }
528
+ `}
529
+
530
+ &:focus-visible {
531
+ // MenuItems default to outline: none, so we need to override it here.
532
+ outline: 2px solid ${({ theme }) => semanticColor(theme, "BorderFocus", Color.BorderFocus)} !important;
533
+ outline-offset: 1px;
534
+ }
535
+ `;
536
+ const PresetButton = ({ commitRange, state, preset, isSelected, setDateMode, onPresetSelect, ...props }) => {
537
+ const ref = useRef();
538
+ const { buttonProps } = useButton({ onPress: () => {
539
+ const commit = () => commitRange(preset.range);
540
+ if (onPresetSelect) onPresetSelect(preset.id, commit);
541
+ else commit();
542
+ setDateMode(null);
543
+ } }, ref);
544
+ const { "aria-current": _ariaCurrent, ...mergedProps } = mergeProps(props, buttonProps);
545
+ return /* @__PURE__ */ jsx(StyledPresetButton, {
546
+ selected: isSelected,
547
+ ...mergedProps,
548
+ ref,
549
+ children: preset.label
550
+ });
551
+ };
552
+ const DateRangePickerPresets = ({ presetsFn = getDefaultPresets, commitRange, state, setDateMode, onPresetSelect, selectedPreset, ...props }) => {
553
+ const presets = presetsFn(Settings.defaultZone.name);
554
+ const { value } = state;
555
+ const selectedPresetIndex = value ? presets.findIndex((preset) => datesMatchByDay(preset.range.start, value.start) && datesMatchByDay(preset.range.end, value.end)) : -1;
556
+ const infersSelection = typeof selectedPreset === "undefined";
557
+ return /* @__PURE__ */ jsx(Container, {
558
+ ...props,
559
+ children: /* @__PURE__ */ jsx(MenuList, {
560
+ "aria-label": "Date range presets",
561
+ children: presets.map((preset, i) => /* @__PURE__ */ jsx(PresetButton, {
562
+ preset,
563
+ commitRange,
564
+ state,
565
+ setDateMode,
566
+ onPresetSelect,
567
+ isSelected: infersSelection ? i === selectedPresetIndex : preset.id === selectedPreset
568
+ }, i))
569
+ })
570
+ });
571
+ };
572
+ const arePropsEqual = (prevProps, nextProps) => {
573
+ if (prevProps.selectedPreset !== nextProps.selectedPreset || prevProps.onPresetSelect !== nextProps.onPresetSelect || prevProps.commitRange !== nextProps.commitRange || prevProps.setDateMode !== nextProps.setDateMode || prevProps.presetsFn !== nextProps.presetsFn) return false;
574
+ const prevValue = prevProps.state.value;
575
+ const nextValue = nextProps.state.value;
576
+ if (!prevValue && !nextValue) return true;
577
+ if (!prevValue || !nextValue) return false;
578
+ return prevValue.start.compare(nextValue.start) === 0 && prevValue.end.compare(nextValue.end) === 0;
579
+ };
580
+ var RangeCalendarPresets_default = memo(DateRangePickerPresets, arePropsEqual);
581
+ //#endregion
582
+ //#region src/components/DatePicker/time-range.ts
583
+ const earliest = (a, b) => a.compare(b) <= 0 ? a : b;
584
+ const presetEnd = (end) => earliest(end.set({
585
+ hour: 23,
586
+ minute: 59,
587
+ second: 59,
588
+ millisecond: 999
589
+ }), toCalendarDateTime(now(Settings.defaultZone.name)).set({
590
+ second: 0,
591
+ millisecond: 0
592
+ }));
593
+ //#endregion
594
+ //#region src/components/DatePicker/Calendar/RangeCalendar.tsx
595
+ const RangeCalendarHeader = styled(CalendarHeader)`
596
+ gap: ${Spacing[5]};
597
+ `;
598
+ const CalendarHeaderMonth = styled.div`
599
+ display: grid;
600
+ grid-template-columns: minmax(auto, 1fr) auto minmax(auto, 1fr);
601
+ grid-template-areas: 'prev title next';
602
+ width: 266px;
603
+ align-items: center;
604
+ `;
605
+ const CalendarGrids = styled.div`
606
+ display: flex;
607
+ gap: ${Spacing[5]};
608
+ align-items: start;
609
+ `;
610
+ const PrevButton = styled(CalendarButton)`
611
+ grid-area: prev;
612
+ justify-self: start;
613
+ border-radius: ${BorderRadius.Sm};
614
+ `;
615
+ const NextButton = styled(CalendarButton)`
616
+ grid-area: next;
617
+ justify-self: end;
618
+ border-radius: ${BorderRadius.Sm};
619
+ `;
620
+ const RangeCalendarHeading = styled(CalendarHeading)`
621
+ grid-area: title;
622
+ `;
623
+ const RangeCalendarContainer = styled.div`
624
+ display: flex;
625
+ `;
626
+ const PresetsContainer = styled(Card_default.Body)`
627
+ border-right: 1px solid ${({ theme }) => semanticColor(theme, "BorderDivider", Color.BorderHairline)};
628
+ `;
629
+ const hasTimeComponent = (date) => "hour" in date;
630
+ const RangeCalendar = ({ calendarRef, onSelectDate, minDate, maxDate, hidePresets, visibleMonths = 2, setDateMode, onPresetSelect, selectedPreset, setValue, granularity, ...props }) => {
631
+ const { locale } = useLocale();
632
+ const timezoneName = Settings.defaultZone.name;
633
+ const rangeCalendarState = useRangeCalendarState({
574
634
  ...props,
635
+ minValue: minDate,
636
+ maxValue: maxDate,
637
+ visibleDuration: { months: visibleMonths },
575
638
  locale,
576
639
  createCalendar
577
640
  });
641
+ const state = {
642
+ ...rangeCalendarState,
643
+ setValue: (value) => {
644
+ if (!value || granularity === "day") {
645
+ rangeCalendarState.setValue(value);
646
+ return;
647
+ }
648
+ setValue({
649
+ start: toZoned(toCalendarDateTime(value.start), timezoneName),
650
+ end: toZoned(hasTimeComponent(value.end) ? toCalendarDateTime(value.end) : presetEnd(toCalendarDateTime(value.end)), timezoneName)
651
+ });
652
+ },
653
+ selectDate: (date) => {
654
+ if (onSelectDate) {
655
+ onSelectDate(date);
656
+ rangeCalendarState.setAnchorDate(null);
657
+ } else rangeCalendarState.selectDate(date);
658
+ }
659
+ };
660
+ const commitRef = useRef(state.setValue);
661
+ useEffect(() => {
662
+ commitRef.current = state.setValue;
663
+ });
664
+ const commitRange = useCallback((value) => commitRef.current(value), []);
578
665
  const ref = useRef();
579
- const { fieldProps } = useDateField(props, state, ref);
580
- return /* @__PURE__ */ jsx(InputBox, {
581
- ...fieldProps,
582
- ...props.dateFieldProps || {},
583
- ref: mergeRefs(ref, forwardedRef),
584
- focused: props.focused,
585
- disabled: props.disabled,
586
- "aria-label": props["aria-label"],
587
- $size: props.size ?? "md",
588
- $inputPosition: props.inputPosition,
589
- $hasTimeZone: state.segments.some((segment) => segment.type === "timeZoneName"),
590
- hasError: props.hasError,
591
- children: state.segments.map((segment, i) => /* @__PURE__ */ jsx(DateSegment, {
592
- segment,
593
- state
594
- }, i))
666
+ const { calendarProps, prevButtonProps, nextButtonProps } = useRangeCalendar(props, state, ref);
667
+ const monthDateFormatter = useDateFormatter({
668
+ month: "long",
669
+ year: "numeric",
670
+ timeZone: timezoneName
595
671
  });
596
- });
672
+ const monthHeaders = range(0, visibleMonths).map((i) => {
673
+ return /* @__PURE__ */ jsxs(CalendarHeaderMonth, { children: [
674
+ i === 0 && /* @__PURE__ */ jsx(PrevButton, {
675
+ ...prevButtonProps,
676
+ children: /* @__PURE__ */ jsx(ArrowLeftIcon, {})
677
+ }),
678
+ /* @__PURE__ */ jsx(RangeCalendarHeading, {
679
+ "aria-hidden": true,
680
+ children: monthDateFormatter.format(state.visibleRange.start.add({ months: i }).toDate(timezoneName))
681
+ }),
682
+ i === visibleMonths - 1 && /* @__PURE__ */ jsx(NextButton, {
683
+ ...nextButtonProps,
684
+ children: /* @__PURE__ */ jsx(ArrowRightIcon, {})
685
+ })
686
+ ] }, `calendar-month-${i}`);
687
+ });
688
+ const monthGrids = range(0, visibleMonths).map((i) => {
689
+ return /* @__PURE__ */ jsx(CalendarGrid, {
690
+ state,
691
+ offset: { months: i },
692
+ skipFromTabOrder: i > 0
693
+ }, `calendar-grid-${i}`);
694
+ });
695
+ return /* @__PURE__ */ jsxs(RangeCalendarContainer, {
696
+ ref: calendarRef,
697
+ children: [!hidePresets && /* @__PURE__ */ jsx(PresetsContainer, {
698
+ padding: Spacing[3],
699
+ children: /* @__PURE__ */ jsx(RangeCalendarPresets_default, {
700
+ state,
701
+ commitRange,
702
+ setDateMode,
703
+ onPresetSelect,
704
+ selectedPreset
705
+ })
706
+ }), /* @__PURE__ */ jsx(Card_default.Body, {
707
+ padding: Spacing[3],
708
+ children: /* @__PURE__ */ jsxs(CalendarContainer, {
709
+ ...calendarProps,
710
+ ref,
711
+ children: [/* @__PURE__ */ jsxs(RangeCalendarHeader, { children: [/* @__PURE__ */ jsx(VisuallyHidden, {
712
+ isFocusable: false,
713
+ children: calendarProps["aria-label"]
714
+ }), monthHeaders] }), /* @__PURE__ */ jsx(CalendarGrids, { children: monthGrids })]
715
+ })
716
+ })]
717
+ });
718
+ };
597
719
  //#endregion
598
720
  //#region src/components/DatePicker/DateRangePicker.tsx
599
721
  const DateRangeContainer = styled.div`
@@ -632,7 +754,7 @@ const CustomFormLabel = styled(FormLabel)`
632
754
  margin-bottom: ${Spacing[2]};
633
755
  ${Typography.TextMediumBold};
634
756
  `;
635
- const OpenButton$1 = ({ onOpen, disabled }) => {
757
+ const OpenButton = ({ onOpen, disabled }) => {
636
758
  const openCalBtnRef = useRef(null);
637
759
  const { buttonProps } = useButton({
638
760
  isDisabled: disabled,
@@ -851,7 +973,7 @@ const DateRangePicker = ({ granularity = "day", hideTimeZone = true, className,
851
973
  "aria-label": "Clear date range",
852
974
  children: /* @__PURE__ */ jsx(CircleXInverseIcon, {})
853
975
  }),
854
- /* @__PURE__ */ jsx(VisuallyHidden, { children: /* @__PURE__ */ jsx(OpenButton$1, {
976
+ /* @__PURE__ */ jsx(VisuallyHidden, { children: /* @__PURE__ */ jsx(OpenButton, {
855
977
  onOpen: openCalendarWithFocus,
856
978
  disabled: props.disabled
857
979
  }) })
@@ -946,128 +1068,6 @@ const DateRangePicker = ({ granularity = "day", hideTimeZone = true, className,
946
1068
  });
947
1069
  };
948
1070
  //#endregion
949
- //#region src/components/DatePicker/Calendar/Calendar.tsx
950
- const Calendar = (props) => {
951
- const { locale } = useLocale();
952
- const state = useCalendarState({
953
- ...props,
954
- locale,
955
- createCalendar
956
- });
957
- const { calendarProps, prevButtonProps, nextButtonProps, title } = useCalendar(props, state);
958
- return /* @__PURE__ */ jsxs(CalendarContainer, {
959
- ...calendarProps,
960
- ref: props.calendarRef,
961
- children: [/* @__PURE__ */ jsxs(CalendarHeader, { children: [
962
- /* @__PURE__ */ jsx(CalendarButton, {
963
- ...prevButtonProps,
964
- children: /* @__PURE__ */ jsx(ArrowLeftIcon, {})
965
- }),
966
- /* @__PURE__ */ jsx(CalendarHeading, { children: title }),
967
- /* @__PURE__ */ jsx(CalendarButton, {
968
- ...nextButtonProps,
969
- children: /* @__PURE__ */ jsx(ArrowRightIcon, {})
970
- })
971
- ] }), /* @__PURE__ */ jsx(CalendarGrid, { state })]
972
- });
973
- };
974
- //#endregion
975
- //#region src/components/DatePicker/DatePicker.tsx
976
- const OpenButton = ({ calendarRef }) => {
977
- const openCalBtnRef = useRef(null);
978
- const { buttonProps } = useButton({ onPress: () => {
979
- if (calendarRef.current) calendarRef.current.querySelector("button[aria-label=\"Previous\"]").focus();
980
- } }, openCalBtnRef);
981
- return /* @__PURE__ */ jsx("button", {
982
- ...buttonProps,
983
- ref: openCalBtnRef,
984
- "aria-label": "Open calendar"
985
- });
986
- };
987
- const DatePicker = (props) => {
988
- const state = useDatePickerState(props);
989
- const ref = useRef(null);
990
- const fieldRef = useRef(null);
991
- const { groupProps, fieldProps, calendarProps } = useDatePicker(props, state, ref);
992
- const calendarRef = useRef(null);
993
- const isClosingRef = useRef(false);
994
- const { focusWithinProps } = useFocusWithin({
995
- onFocusWithin: () => {
996
- if (!state.isOpen && !isClosingRef.current) state.setOpen(true);
997
- },
998
- onBlurWithin: (e) => {
999
- if (e.relatedTarget && !calendarRef?.current?.contains(e.relatedTarget) && state.isOpen) state.setOpen(false);
1000
- }
1001
- });
1002
- const handleOutsideClick = (e) => {
1003
- const target = e.target;
1004
- if (ref.current?.contains(target)) return;
1005
- if (state.isOpen) state.setOpen(false);
1006
- };
1007
- const handleKeyDown = useCallback((event) => {
1008
- if (event.key === "Enter" && !state.isOpen) {
1009
- event.preventDefault();
1010
- state.setOpen(true);
1011
- }
1012
- }, [state]);
1013
- return /* @__PURE__ */ jsx("div", {
1014
- style: {
1015
- display: "flex",
1016
- flexDirection: "column"
1017
- },
1018
- children: /* @__PURE__ */ jsxs(Popover_default, {
1019
- open: state.isOpen,
1020
- modal: false,
1021
- contentProps: {
1022
- style: { zIndex: props.useModalZIndex ? Z_INDICES.modalDropdown : Z_INDICES.dropdown },
1023
- align: "start",
1024
- "aria-modal": true,
1025
- onInteractOutside: handleOutsideClick,
1026
- onEscapeKeyDown: () => {
1027
- state.setOpen(false);
1028
- },
1029
- onCloseAutoFocus: (e) => {
1030
- e.preventDefault();
1031
- isClosingRef.current = true;
1032
- if (fieldRef.current) {
1033
- const firstEditableSegment = fieldRef.current.querySelector("[tabindex=\"0\"]");
1034
- if (firstEditableSegment instanceof HTMLElement) firstEditableSegment.focus();
1035
- }
1036
- requestAnimationFrame(() => {
1037
- isClosingRef.current = false;
1038
- });
1039
- },
1040
- noPadding: true
1041
- },
1042
- children: [/* @__PURE__ */ jsx(Popover_default.Trigger, {
1043
- asChild: true,
1044
- children: /* @__PURE__ */ jsxs("div", {
1045
- ...mergeProps(groupProps, focusWithinProps),
1046
- ref,
1047
- style: {
1048
- display: "flex",
1049
- position: "relative"
1050
- },
1051
- children: [/* @__PURE__ */ jsx(DateField, {
1052
- ref: fieldRef,
1053
- id: props.id,
1054
- dateFieldProps: props.dateFieldProps,
1055
- disabled: props.disabled,
1056
- size: props.size,
1057
- ...mergeProps(fieldProps, { onKeyDown: handleKeyDown }),
1058
- value: fieldProps.value ?? void 0
1059
- }), /* @__PURE__ */ jsx(VisuallyHidden, { children: /* @__PURE__ */ jsx(OpenButton, { calendarRef }) })]
1060
- })
1061
- }), /* @__PURE__ */ jsx(Calendar, {
1062
- ...calendarProps,
1063
- autoFocus: void 0,
1064
- calendarRef,
1065
- id: "calendar-popover"
1066
- })]
1067
- })
1068
- });
1069
- };
1070
- //#endregion
1071
- export { RangeCalendar as a, DateField as i, Calendar as n, DateRangePicker as r, DatePicker as t };
1071
+ export { Calendar as a, DateField as i, RangeCalendar as n, DatePicker as r, DateRangePicker as t };
1072
1072
 
1073
- //# sourceMappingURL=DatePicker-C9redLBr.mjs.map
1073
+ //# sourceMappingURL=DatePicker-BK7ioKBm.mjs.map