@servicetitan/anvil2 3.14.1 → 3.15.1

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 (833) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/{AiMark-CWufA6pV.js → AiMark-BfmK30vL.js} +3 -3
  3. package/dist/AiMark-BfmK30vL.js.map +1 -0
  4. package/dist/AiMark.js +1 -1
  5. package/dist/{Alert-RkvFtmRP.js → Alert-lLo1N7Tj.js} +3 -3
  6. package/dist/Alert-lLo1N7Tj.js.map +1 -0
  7. package/dist/Alert.js +1 -1
  8. package/dist/{Announcement-CGTv6M31.js → Announcement-Cnz80WGx.js} +2 -2
  9. package/dist/Announcement-Cnz80WGx.js.map +1 -0
  10. package/dist/Announcement.js +1 -1
  11. package/dist/Avatar-Ba662b3z.js +17 -0
  12. package/dist/Avatar-Ba662b3z.js.map +1 -0
  13. package/dist/{Avatar-DZxHhMTP.js → Avatar-CwnLhw9m.js} +1 -20
  14. package/dist/Avatar-CwnLhw9m.js.map +1 -0
  15. package/dist/Avatar.js +2 -2
  16. package/dist/Badge-BNrYBFiU.js.map +1 -1
  17. package/dist/{Breadcrumbs-DbOrdao2.js → Breadcrumbs-RdL4Fvmu.js} +3 -16
  18. package/dist/Breadcrumbs-RdL4Fvmu.js.map +1 -0
  19. package/dist/Breadcrumbs.js +1 -1
  20. package/dist/{Button-Dwh_Nd4l.js → Button-Dn6-01xl.js} +230 -67
  21. package/dist/Button-Dn6-01xl.js.map +1 -0
  22. package/dist/Button.js +1 -1
  23. package/dist/ButtonCompound-D7kA0qXr.js.map +1 -1
  24. package/dist/ButtonLink-DOFAxNvC.js.map +1 -1
  25. package/dist/{ButtonToggle-DKDBD1g3.js → ButtonToggle-BSU8GBxr.js} +2 -2
  26. package/dist/ButtonToggle-BSU8GBxr.js.map +1 -0
  27. package/dist/ButtonToggle.js +1 -1
  28. package/dist/{Calendar-DLnn6dJE.js → Calendar-DoLRAWLp.js} +2 -2
  29. package/dist/Calendar-DoLRAWLp.js.map +1 -0
  30. package/dist/{Calendar-CK-AAaSG.js → Calendar-IzXG1aJw.js} +12 -80
  31. package/dist/Calendar-IzXG1aJw.js.map +1 -0
  32. package/dist/Calendar.js +2 -2
  33. package/dist/Card-Bt0F6RTq.js.map +1 -1
  34. package/dist/{Checkbox-CboZhOtU.js → Checkbox-CVxbe-iN.js} +3 -3
  35. package/dist/Checkbox-CVxbe-iN.js.map +1 -0
  36. package/dist/{Checkbox-Cn4iNLW_.js → Checkbox-U-kuWhgc.js} +3 -23
  37. package/dist/Checkbox-U-kuWhgc.js.map +1 -0
  38. package/dist/Checkbox.js +1 -1
  39. package/dist/{Chip-UbrxYEqs.js → Chip-2OydLs66.js} +3 -3
  40. package/dist/Chip-2OydLs66.js.map +1 -0
  41. package/dist/Chip.js +1 -1
  42. package/dist/Combobox.js +1 -1
  43. package/dist/{DataTable-COExZbOC.js → DataTable-DkEpJ_Op.js} +17 -42
  44. package/dist/DataTable-DkEpJ_Op.js.map +1 -0
  45. package/dist/{DateFieldRange-CpTxlASD.js → DateFieldRange-X2jdOTYY.js} +7 -15
  46. package/dist/DateFieldRange-X2jdOTYY.js.map +1 -0
  47. package/dist/DateFieldRange.js +1 -1
  48. package/dist/{DateFieldSingle-DR2kfrzh.js → DateFieldSingle-BJ16tpOz.js} +6 -9
  49. package/dist/DateFieldSingle-BJ16tpOz.js.map +1 -0
  50. package/dist/DateFieldSingle.js +1 -1
  51. package/dist/{DateFieldYearless-4mS_2Mgw.js → DateFieldYearless-CMm8vtz_.js} +4 -4
  52. package/dist/DateFieldYearless-CMm8vtz_.js.map +1 -0
  53. package/dist/DateFieldYearless.js +1 -1
  54. package/dist/{DateFieldYearlessRange-C-yvKBkJ.js → DateFieldYearlessRange-BHHs-Z1Q.js} +3 -3
  55. package/dist/DateFieldYearlessRange-BHHs-Z1Q.js.map +1 -0
  56. package/dist/DateFieldYearlessRange.js +1 -1
  57. package/dist/{DaysOfTheWeek-Bo4w8SsT.js → DaysOfTheWeek-BHXxs0Bo.js} +4 -4
  58. package/dist/DaysOfTheWeek-BHXxs0Bo.js.map +1 -0
  59. package/dist/DaysOfTheWeek.js +1 -1
  60. package/dist/{Details-CVA5zbrR.js → Details-BxqP-5vp.js} +13 -9
  61. package/dist/Details-BxqP-5vp.js.map +1 -0
  62. package/dist/Details.css +18 -14
  63. package/dist/Details.js +1 -1
  64. package/dist/{Dialog-Ds25dKQp.js → Dialog-B9llUKJz.js} +44 -102
  65. package/dist/Dialog-B9llUKJz.js.map +1 -0
  66. package/dist/Dialog.js +1 -1
  67. package/dist/{DialogCancelButton-DBL0aKTK.js → DialogCancelButton-C0r8hJ8Z.js} +2 -2
  68. package/dist/DialogCancelButton-C0r8hJ8Z.js.map +1 -0
  69. package/dist/DialogContext-DBgtApl9.js.map +1 -1
  70. package/dist/Divider-C7fp5Xb6.js.map +1 -1
  71. package/dist/Dnd.js +1 -1
  72. package/dist/DndHandleButton-BRlodkDO.js.map +1 -1
  73. package/dist/DndSort.js +4 -6
  74. package/dist/DndSort.js.map +1 -1
  75. package/dist/{Drawer-Da-bj_6o.js → Drawer-Bjd2XLUX.js} +33 -103
  76. package/dist/Drawer-Bjd2XLUX.js.map +1 -0
  77. package/dist/Drawer.js +1 -1
  78. package/dist/DrawerContext-BSpnzXVZ.js.map +1 -1
  79. package/dist/DrillDown.js +1 -1
  80. package/dist/DrillDown.module-1VBKDZRA.js.map +1 -1
  81. package/dist/{EditCard-CocV93gS.js → EditCard-B6l2vhBS.js} +3 -3
  82. package/dist/EditCard-B6l2vhBS.js.map +1 -0
  83. package/dist/EditCard.js +1 -1
  84. package/dist/{FieldLabel-6aFKQfyD.js → FieldLabel-ThEmUiAq.js} +3 -4
  85. package/dist/FieldLabel-ThEmUiAq.js.map +1 -0
  86. package/dist/FieldLabel.js +1 -1
  87. package/dist/FieldMessage-8c9yA_kw.js.map +1 -1
  88. package/dist/{FilterBar-CZT1ryz_.js → FilterBar-ecqJDraA.js} +7 -7
  89. package/dist/FilterBar-ecqJDraA.js.map +1 -0
  90. package/dist/FilterBar.js +1 -1
  91. package/dist/Flex-CRF7gj0_.js.map +1 -1
  92. package/dist/{Grid-CvGQrIhE.js → Grid-BPCDtqoT.js} +2 -20
  93. package/dist/Grid-BPCDtqoT.js.map +1 -0
  94. package/dist/Grid.js +1 -1
  95. package/dist/Icon-B5zwN7GD.js.map +1 -1
  96. package/dist/{InputMask-CNV0Ucli.js → InputMask-BQigi5oW.js} +3 -3
  97. package/dist/{InputMask-CNV0Ucli.js.map → InputMask-BQigi5oW.js.map} +1 -1
  98. package/dist/InputMask.js +1 -1
  99. package/dist/{InteractiveCard-C0g5PxB6.js → InteractiveCard-C2CYRtgQ.js} +3 -3
  100. package/dist/InteractiveCard-C2CYRtgQ.js.map +1 -0
  101. package/dist/InteractiveCard.js +1 -1
  102. package/dist/{Layout-C2Q2hyLG.js → Layout-C8fKY7Eh.js} +2 -1
  103. package/dist/Layout-C8fKY7Eh.js.map +1 -0
  104. package/dist/Layout.js +1 -1
  105. package/dist/Link-D7ycmfQ_.js.map +1 -1
  106. package/dist/LinkButton-C0wps8r1.js.map +1 -1
  107. package/dist/{List-BvzfZ9TW.js → List-CTr2fk7l.js} +2 -11
  108. package/dist/List-CTr2fk7l.js.map +1 -0
  109. package/dist/List.js +1 -1
  110. package/dist/{ListView-DFAWrwzi.js → ListView-YJscfG4x.js} +4 -26
  111. package/dist/ListView-YJscfG4x.js.map +1 -0
  112. package/dist/ListView.js +1 -1
  113. package/dist/{Listbox-BErqErNN.js → Listbox-CD9ZptSZ.js} +4 -30
  114. package/dist/Listbox-CD9ZptSZ.js.map +1 -0
  115. package/dist/Listbox.js +1 -1
  116. package/dist/{Menu-BjPE_ODh.js → Menu-Da2OEN0o.js} +3 -23
  117. package/dist/Menu-Da2OEN0o.js.map +1 -0
  118. package/dist/Menu.js +1 -1
  119. package/dist/{MenuFooter-fGSZYh8e.js → MenuFooter-D__gg92C.js} +2 -2
  120. package/dist/{MenuFooter-fGSZYh8e.js.map → MenuFooter-D__gg92C.js.map} +1 -1
  121. package/dist/MultiSelectField.js +1 -1
  122. package/dist/{MultiSelectFieldSync-CqWUidCm.js → MultiSelectFieldSync-DpPO0cya.js} +7 -14
  123. package/dist/MultiSelectFieldSync-DpPO0cya.js.map +1 -0
  124. package/dist/MultiSelectMenu.js +1 -1
  125. package/dist/{MultiSelectMenuSync-DG3rKyQc.js → MultiSelectMenuSync-BN_3moW_.js} +5 -5
  126. package/dist/MultiSelectMenuSync-BN_3moW_.js.map +1 -0
  127. package/dist/{NumberField-DRYYJHec.js → NumberField-CxmJx4gs.js} +4 -4
  128. package/dist/NumberField-CxmJx4gs.js.map +1 -0
  129. package/dist/NumberField.js +1 -1
  130. package/dist/Overflow.js +1 -1
  131. package/dist/Overflow.js.map +1 -1
  132. package/dist/{Page-pfK5iSmv.js → Page-IZ4p51iJ.js} +20 -189
  133. package/dist/Page-IZ4p51iJ.js.map +1 -0
  134. package/dist/Page.js +1 -1
  135. package/dist/{Pagination-Bc4fhdNm.js → Pagination-Su4VBAhT.js} +15 -11
  136. package/dist/Pagination-Su4VBAhT.js.map +1 -0
  137. package/dist/Pagination.js +1 -1
  138. package/dist/{Popover-BgVOsP4J.js → Popover-CIh1CsoJ.js} +6 -74
  139. package/dist/Popover-CIh1CsoJ.js.map +1 -0
  140. package/dist/Popover.js +1 -1
  141. package/dist/{ProgressBar-Chb0uKfL.js → ProgressBar-TQ0fPmn9.js} +2 -2
  142. package/dist/ProgressBar-TQ0fPmn9.js.map +1 -0
  143. package/dist/ProgressBar.js +1 -1
  144. package/dist/{Radio-DcNlFfSu.js → Radio-BYowelK2.js} +3 -3
  145. package/dist/Radio-BYowelK2.js.map +1 -0
  146. package/dist/Radio-C1VnatcL.js +31 -0
  147. package/dist/Radio-C1VnatcL.js.map +1 -0
  148. package/dist/Radio.js +1 -1
  149. package/dist/{RichTextEditor-DeO4p-S-.js → RichTextEditor-BpzUo8dB.js} +12 -17
  150. package/dist/RichTextEditor-BpzUo8dB.js.map +1 -0
  151. package/dist/RichTextEditor.js +1 -1
  152. package/dist/{SavedFiltersButton-Cvf1mJk8.js → SavedFiltersButton-D9GJbJQu.js} +10 -24
  153. package/dist/SavedFiltersButton-D9GJbJQu.js.map +1 -0
  154. package/dist/SavedFiltersButton.js +1 -1
  155. package/dist/SearchField-ChoNtw8w.js.map +1 -1
  156. package/dist/SearchField-DX8hZyo2.js.map +1 -1
  157. package/dist/{SegmentedControl-CQ6DrbDc.js → SegmentedControl-BHVJmmTH.js} +4 -19
  158. package/dist/SegmentedControl-BHVJmmTH.js.map +1 -0
  159. package/dist/SegmentedControl.js +1 -1
  160. package/dist/{SelectCard-bp5hRyHK.js → SelectCard-DrmMU_GD.js} +4 -28
  161. package/dist/SelectCard-DrmMU_GD.js.map +1 -0
  162. package/dist/SelectCard.js +1 -1
  163. package/dist/SelectField.js +1 -1
  164. package/dist/{SelectFieldLabel-DZqxaZsp.js → SelectFieldLabel-BxsKvfqo.js} +2 -2
  165. package/dist/SelectFieldLabel-BxsKvfqo.js.map +1 -0
  166. package/dist/{SelectFieldSync-Wkx6DGpg.js → SelectFieldSync-BN2ebLWT.js} +8 -7
  167. package/dist/SelectFieldSync-BN2ebLWT.js.map +1 -0
  168. package/dist/SelectMenu.js +1 -1
  169. package/dist/{SelectMenuSync-O55TODxn.js → SelectMenuSync-DuPf8KCc.js} +5 -5
  170. package/dist/SelectMenuSync-DuPf8KCc.js.map +1 -0
  171. package/dist/{SelectOptions-0A8BYx1q.js → SelectOptions-BK7kNjYM.js} +2 -2
  172. package/dist/{SelectOptions-0A8BYx1q.js.map → SelectOptions-BK7kNjYM.js.map} +1 -1
  173. package/dist/{SelectTrigger-BfJ7DWYq.js → SelectTrigger-B5h-aqhl.js} +3 -3
  174. package/dist/SelectTrigger-B5h-aqhl.js.map +1 -0
  175. package/dist/SelectTrigger.js +1 -1
  176. package/dist/{SelectTriggerBase-DvsI-kSG.js → SelectTriggerBase-SML2Mlt-.js} +4 -6
  177. package/dist/SelectTriggerBase-SML2Mlt-.js.map +1 -0
  178. package/dist/{SideNav-BLXgM918.js → SideNav-CHG7i8Dy.js} +4 -57
  179. package/dist/SideNav-CHG7i8Dy.js.map +1 -0
  180. package/dist/SideNav.js +1 -1
  181. package/dist/Skeleton.js.map +1 -1
  182. package/dist/Spinner-B7tTWcP6.js.map +1 -1
  183. package/dist/SrOnly-pnf8ajnh.js.map +1 -1
  184. package/dist/{Stepper-CCKHWlUr.js → Stepper-l_P6VPOv.js} +12 -180
  185. package/dist/Stepper-l_P6VPOv.js.map +1 -0
  186. package/dist/Stepper.js +1 -1
  187. package/dist/{Switch-CrDmBj4D.js → Switch-1iNdXTik.js} +2 -2
  188. package/dist/Switch-1iNdXTik.js.map +1 -0
  189. package/dist/Switch.js +1 -1
  190. package/dist/{Tab-Bqfvg8Ce.js → Tab-DR5YYXkq.js} +127 -76
  191. package/dist/Tab-DR5YYXkq.js.map +1 -0
  192. package/dist/Tab.js +1 -1
  193. package/dist/Table.js +1 -1
  194. package/dist/{Text-CZccJAnm.js → Text-rihxXHSe.js} +2 -2
  195. package/dist/Text-rihxXHSe.js.map +1 -0
  196. package/dist/Text.js +1 -1
  197. package/dist/{TextField-DX5qyWPo.js → TextField-Bxd-Qzoi.js} +2 -2
  198. package/dist/TextField-Bxd-Qzoi.js.map +1 -0
  199. package/dist/{TextField-D0f9LwgQ.js → TextField-vuS7xeo-.js} +3 -3
  200. package/dist/TextField-vuS7xeo-.js.map +1 -0
  201. package/dist/TextField.js +1 -1
  202. package/dist/{Textarea-CdTcekFd.js → Textarea-ppapJUwh.js} +3 -3
  203. package/dist/Textarea-ppapJUwh.js.map +1 -0
  204. package/dist/Textarea.js +1 -1
  205. package/dist/{TimeField-BxNglWQt.js → TimeField-Hwt_oRbg.js} +5 -9
  206. package/dist/TimeField-Hwt_oRbg.js.map +1 -0
  207. package/dist/TimeField.js +1 -1
  208. package/dist/TimezoneMessage-BrKB_psP.js.map +1 -1
  209. package/dist/Toast.js +2 -2
  210. package/dist/{Toaster-C-Z_FMbW.js → Toaster-BryQmKe1.js} +7 -19
  211. package/dist/Toaster-BryQmKe1.js.map +1 -0
  212. package/dist/{Toaster-nyQgF9Ki.js → Toaster-BtP_HezK.js} +3 -6
  213. package/dist/Toaster-BtP_HezK.js.map +1 -0
  214. package/dist/{Toolbar-BUbMtBVz.js → Toolbar-CMulzswf.js} +10 -79
  215. package/dist/Toolbar-CMulzswf.js.map +1 -0
  216. package/dist/{Toolbar-BxAFPvbn.js → Toolbar-DGHZpFi9.js} +12 -106
  217. package/dist/Toolbar-DGHZpFi9.js.map +1 -0
  218. package/dist/Toolbar.js +2 -2
  219. package/dist/{ToolbarButtonToggle-NSJ2XfXT.js → ToolbarButtonToggle-T8YnSJ5x.js} +3 -4
  220. package/dist/ToolbarButtonToggle-T8YnSJ5x.js.map +1 -0
  221. package/dist/{Tooltip-B4MSqIpg.js → Tooltip-C_VcYS9P.js} +3 -37
  222. package/dist/Tooltip-C_VcYS9P.js.map +1 -0
  223. package/dist/Tooltip.js +1 -1
  224. package/dist/TreeSelectField.js +1 -1
  225. package/dist/{TreeSelectFieldSync-DpvwlM7B.js → TreeSelectFieldSync-C0mXwYZL.js} +7 -7
  226. package/dist/TreeSelectFieldSync-C0mXwYZL.js.map +1 -0
  227. package/dist/TreeSelectMenu.js +1 -1
  228. package/dist/{TreeSelectMenuSync-BDitYX_k.js → TreeSelectMenuSync-D2TvKxP-.js} +4 -4
  229. package/dist/TreeSelectMenuSync-D2TvKxP-.js.map +1 -0
  230. package/dist/{TypeaheadTextField-Cj09sEji.js → TypeaheadTextField-DgazozK7.js} +10 -19
  231. package/dist/TypeaheadTextField-DgazozK7.js.map +1 -0
  232. package/dist/TypeaheadTextField.js +1 -1
  233. package/dist/{YearlessDateInputWithPicker-CoomgSEK.js → YearlessDateInputWithPicker-Bc8a33D5.js} +5 -7
  234. package/dist/YearlessDateInputWithPicker-Bc8a33D5.js.map +1 -0
  235. package/dist/assets/icons/st/gnav_analytics_active.svg +1 -0
  236. package/dist/assets/icons/st/gnav_analytics_inactive.svg +1 -0
  237. package/dist/assets/icons/st.ts +3 -1
  238. package/dist/beta.js +18 -18
  239. package/dist/{bulkActionTypes-DAo3_ECS.js → bulkActionTypes-D5y3Acn1.js} +2 -2
  240. package/dist/{bulkActionTypes-DAo3_ECS.js.map → bulkActionTypes-D5y3Acn1.js.map} +1 -1
  241. package/dist/{filter-state-CZcczj37.js → filter-state-Do862BNr.js} +56 -38
  242. package/dist/filter-state-Do862BNr.js.map +1 -0
  243. package/dist/{index-BwV_Pz7v.js → index-Bldaza5t.js} +5 -1
  244. package/dist/index-Bldaza5t.js.map +1 -0
  245. package/dist/{index-BFxzUzoz.js → index-Dt0zG4YB.js} +2 -2
  246. package/dist/{index-BFxzUzoz.js.map → index-Dt0zG4YB.js.map} +1 -1
  247. package/dist/index.js +63 -173
  248. package/dist/index.js.map +1 -1
  249. package/dist/{makeZeroShortcutPreprocessor-CxsiGTRW.js → makeZeroShortcutPreprocessor-D5KWcgUA.js} +2 -4
  250. package/dist/makeZeroShortcutPreprocessor-D5KWcgUA.js.map +1 -0
  251. package/dist/{proxy-DEehATlA.js → react-ORV84FjM.js} +6862 -5814
  252. package/dist/react-ORV84FjM.js.map +1 -0
  253. package/dist/src/beta/components/Calendar/Calendar.d.ts +8 -17
  254. package/dist/src/beta/components/Calendar/CalendarBetaPropsContext.d.ts +1 -0
  255. package/dist/src/beta/components/Calendar/useCalendarBetaProps.d.ts +1 -0
  256. package/dist/src/beta/components/FilterBar/FilterBar.d.ts +12 -53
  257. package/dist/src/beta/components/FilterBar/FilterDateList.d.ts +8 -0
  258. package/dist/src/beta/components/FilterBar/FilterDateRange.d.ts +15 -9
  259. package/dist/src/beta/components/FilterBar/FilterDateSingle.d.ts +15 -9
  260. package/dist/src/beta/components/FilterBar/FilterDrawer.d.ts +1 -14
  261. package/dist/src/beta/components/FilterBar/FilterItemWrapper.d.ts +0 -7
  262. package/dist/src/beta/components/FilterBar/FilterNumericRange.d.ts +4 -13
  263. package/dist/src/beta/components/FilterBar/FilterPopoverButton.d.ts +6 -8
  264. package/dist/src/beta/components/FilterBar/FilterSearchField.d.ts +3 -6
  265. package/dist/src/beta/components/FilterBar/FilterTextInput.d.ts +4 -13
  266. package/dist/src/beta/components/FilterBar/FilterToggleButton.d.ts +3 -14
  267. package/dist/src/beta/components/FilterBar/FilterTriggerButton.d.ts +3 -3
  268. package/dist/src/beta/components/FilterBar/internal/FilterGroupContext.d.ts +6 -20
  269. package/dist/src/beta/components/FilterBar/internal/adapters/index.d.ts +3 -8
  270. package/dist/src/beta/components/FilterBar/internal/adapters/types.d.ts +7 -19
  271. package/dist/src/beta/components/FilterBar/internal/types.d.ts +48 -57
  272. package/dist/src/beta/components/FilterBar/internal/utils/dateConstraints.d.ts +3 -3
  273. package/dist/src/beta/components/FilterBar/internal/utils/dateListLibraryOptions.d.ts +4 -7
  274. package/dist/src/beta/components/FilterBar/internal/utils/filter-state.d.ts +3 -24
  275. package/dist/src/beta/components/InteractiveCard/InteractiveCard.d.ts +2 -47
  276. package/dist/src/beta/components/InteractiveCard/types.d.ts +13 -71
  277. package/dist/src/beta/components/Page/Page.d.ts +8 -166
  278. package/dist/src/beta/components/Page/PageContent.d.ts +3 -17
  279. package/dist/src/beta/components/Page/PageContext.d.ts +9 -0
  280. package/dist/src/beta/components/Page/PageFooter.d.ts +2 -15
  281. package/dist/src/beta/components/Page/PageHeader.d.ts +38 -91
  282. package/dist/src/beta/components/Page/PagePanel.d.ts +17 -115
  283. package/dist/src/beta/components/Page/PagePanelContent.d.ts +5 -37
  284. package/dist/src/beta/components/Page/PagePanelFooter.d.ts +4 -27
  285. package/dist/src/beta/components/Page/PagePanelHeader.d.ts +3 -16
  286. package/dist/src/beta/components/Page/PageSidebar.d.ts +8 -41
  287. package/dist/src/beta/components/Page/PageSidebarHeader.d.ts +2 -20
  288. package/dist/src/beta/components/Page/internal/PagePanelContext.d.ts +1 -6
  289. package/dist/src/beta/components/Page/pageBreakpoint.d.ts +5 -18
  290. package/dist/src/beta/components/RichTextEditor/RichTextEditor.d.ts +2 -25
  291. package/dist/src/beta/components/RichTextEditor/internal/LinkPopover.d.ts +1 -0
  292. package/dist/src/beta/components/RichTextEditor/internal/MentionList.d.ts +1 -0
  293. package/dist/src/beta/components/RichTextEditor/internal/MentionPopover.d.ts +1 -0
  294. package/dist/src/beta/components/RichTextEditor/internal/RichTextEditorToolbar.d.ts +1 -0
  295. package/dist/src/beta/components/RichTextEditor/internal/YouTubeEmbedPrompt.d.ts +1 -0
  296. package/dist/src/beta/components/RichTextEditor/internal/YouTubePopover.d.ts +1 -0
  297. package/dist/src/beta/components/RichTextEditor/internal/extensions/ImageUploadExtension.d.ts +1 -0
  298. package/dist/src/beta/components/RichTextEditor/internal/extensions/LinkKeyboardShortcutExtension.d.ts +1 -0
  299. package/dist/src/beta/components/RichTextEditor/internal/extensions/MentionExtension.d.ts +5 -0
  300. package/dist/src/beta/components/RichTextEditor/internal/extensions/SafeImageExtension.d.ts +3 -10
  301. package/dist/src/beta/components/RichTextEditor/internal/extensions/YoutubeExtension.d.ts +4 -0
  302. package/dist/src/beta/components/RichTextEditor/internal/useRichTextEditor.d.ts +3 -17
  303. package/dist/src/beta/components/RichTextEditor/types.d.ts +46 -71
  304. package/dist/src/beta/components/SavedFiltersButton/SavedFiltersButton.d.ts +2 -33
  305. package/dist/src/beta/components/SavedFiltersButton/internal/AddSavedFilterDrawer.d.ts +2 -12
  306. package/dist/src/beta/components/SavedFiltersButton/internal/EditSavedFiltersDrawer.d.ts +2 -20
  307. package/dist/src/beta/components/SavedFiltersButton/parts.d.ts +0 -23
  308. package/dist/src/beta/components/SavedFiltersButton/types.d.ts +36 -85
  309. package/dist/src/beta/components/Table/DataTable/DataTable.d.ts +34 -84
  310. package/dist/src/beta/components/Table/DataTable/internal/DataTableBody.d.ts +15 -22
  311. package/dist/src/beta/components/Table/DataTable/internal/DataTableBodyRow.d.ts +47 -18
  312. package/dist/src/beta/components/Table/DataTable/internal/DataTableCellAffordance.d.ts +8 -0
  313. package/dist/src/beta/components/Table/DataTable/internal/DataTableFooter.d.ts +17 -23
  314. package/dist/src/beta/components/Table/DataTable/internal/DataTableHeader.d.ts +6 -9
  315. package/dist/src/beta/components/Table/DataTable/internal/DataTablePagination.d.ts +16 -0
  316. package/dist/src/beta/components/Table/DataTable/internal/cells/CellFocusContext.d.ts +2 -11
  317. package/dist/src/beta/components/Table/DataTable/internal/cells/CellStatus.d.ts +7 -5
  318. package/dist/src/beta/components/Table/DataTable/internal/cells/DataTableBodyCell.d.ts +4 -8
  319. package/dist/src/beta/components/Table/DataTable/internal/cells/DataTableBodyImmutableCell.d.ts +4 -17
  320. package/dist/src/beta/components/Table/DataTable/internal/cells/DataTableBodyMutableCell.d.ts +4 -18
  321. package/dist/src/beta/components/Table/DataTable/internal/cells/DataTableFooterCell.d.ts +3 -10
  322. package/dist/src/beta/components/Table/DataTable/internal/cells/DataTableHeaderCell.d.ts +3 -15
  323. package/dist/src/beta/components/Table/DataTable/internal/cells/DataTableOverflowCell.d.ts +4 -0
  324. package/dist/src/beta/components/Table/DataTable/internal/cells/useCellFocusListener.d.ts +2 -6
  325. package/dist/src/beta/components/Table/DataTable/internal/constants.d.ts +13 -30
  326. package/dist/src/beta/components/Table/DataTable/internal/context/focus/DTFocusContext.d.ts +1 -6
  327. package/dist/src/beta/components/Table/DataTable/internal/context/focus/DTFocusProvider.d.ts +3 -0
  328. package/dist/src/beta/components/Table/DataTable/internal/context/focus/useDTFocusDispatchContext.d.ts +1 -0
  329. package/dist/src/beta/components/Table/DataTable/internal/context/focus/useDTFocusStateContext.d.ts +1 -0
  330. package/dist/src/beta/components/Table/DataTable/internal/context/rowClick/DataTableRowClickContext.d.ts +2 -5
  331. package/dist/src/beta/components/Table/DataTable/internal/context/rowClick/DataTableRowClickProvider.d.ts +2 -5
  332. package/dist/src/beta/components/Table/DataTable/internal/context/rowClick/useDataTableRowClick.d.ts +1 -0
  333. package/dist/src/beta/components/Table/DataTable/internal/context/surface/DataTableSurfaceCoordinatorContext.d.ts +4 -0
  334. package/dist/src/beta/components/Table/DataTable/internal/context/surface/DataTableSurfaceCoordinatorProvider.d.ts +1 -0
  335. package/dist/src/beta/components/Table/DataTable/internal/context/surface/useDataTableSurfaceCoordinator.d.ts +1 -0
  336. package/dist/src/beta/components/Table/DataTable/internal/dataTableCellAffordanceHostClassName.d.ts +1 -0
  337. package/dist/src/beta/components/Table/DataTable/internal/editable-cells/DataTableEditableBooleanCell.d.ts +6 -0
  338. package/dist/src/beta/components/Table/DataTable/internal/editable-cells/DataTableEditableCellEditIcon.d.ts +1 -4
  339. package/dist/src/beta/components/Table/DataTable/internal/editable-cells/DataTableEditableCustomCell.d.ts +4 -0
  340. package/dist/src/beta/components/Table/DataTable/internal/editable-cells/DataTableEditableMultiselectAsyncCell.d.ts +5 -25
  341. package/dist/src/beta/components/Table/DataTable/internal/editable-cells/DataTableEditableMultiselectCell.d.ts +3 -13
  342. package/dist/src/beta/components/Table/DataTable/internal/editable-cells/DataTableEditableNumberCell.d.ts +4 -0
  343. package/dist/src/beta/components/Table/DataTable/internal/editable-cells/DataTableEditableSelectAsyncCell.d.ts +5 -0
  344. package/dist/src/beta/components/Table/DataTable/internal/editable-cells/DataTableEditableSelectCell.d.ts +4 -0
  345. package/dist/src/beta/components/Table/DataTable/internal/editable-cells/DataTableEditableTextCell.d.ts +4 -0
  346. package/dist/src/beta/components/Table/DataTable/internal/editable-cells/types.d.ts +7 -20
  347. package/dist/src/beta/components/Table/DataTable/internal/editable-cells/useCustomEditHelpers.d.ts +13 -26
  348. package/dist/src/beta/components/Table/DataTable/internal/editable-cells/useEditableMenuCell.d.ts +2 -10
  349. package/dist/src/beta/components/Table/DataTable/internal/useAsyncData.d.ts +8 -0
  350. package/dist/src/beta/components/Table/DataTable/internal/useColumnOrder.d.ts +2 -2
  351. package/dist/src/beta/components/Table/DataTable/internal/useDataTableVirtualizer.d.ts +7 -18
  352. package/dist/src/beta/components/Table/DataTable/internal/usePageDataCache.d.ts +6 -10
  353. package/dist/src/beta/components/Table/DataTable/internal/util/cellPositionHelpers.d.ts +0 -3
  354. package/dist/src/beta/components/Table/DataTable/internal/util/cellTypeHelpers.d.ts +7 -24
  355. package/dist/src/beta/components/Table/DataTable/internal/util/getCellInteractives.d.ts +4 -17
  356. package/dist/src/beta/components/Table/DataTable/internal/util/getTanStackColumnDef.d.ts +5 -29
  357. package/dist/src/beta/components/Table/DataTable/internal/util/shallowSortingEqual.d.ts +1 -0
  358. package/dist/src/beta/components/Table/DataTable/parts.d.ts +3 -17
  359. package/dist/src/beta/components/Table/DataTable/types.d.ts +41 -64
  360. package/dist/src/beta/components/Table/base/TableBase.d.ts +8 -26
  361. package/dist/src/beta/components/Table/base/TableBody.d.ts +5 -14
  362. package/dist/src/beta/components/Table/base/TableContainer.d.ts +1 -11
  363. package/dist/src/beta/components/Table/base/TableFooter.d.ts +5 -14
  364. package/dist/src/beta/components/Table/base/TableHeader.d.ts +5 -14
  365. package/dist/src/beta/components/Table/base/cells/TableBodyCell.d.ts +4 -13
  366. package/dist/src/beta/components/Table/base/cells/TableEmptyCellContent.d.ts +1 -1
  367. package/dist/src/beta/components/Table/base/cells/TableFooterCell.d.ts +5 -13
  368. package/dist/src/beta/components/Table/base/cells/TableHeaderCell.d.ts +8 -25
  369. package/dist/src/beta/components/Table/base/cells/types.d.ts +2 -6
  370. package/dist/src/beta/components/Table/columnTypeDefaults.d.ts +7 -36
  371. package/dist/src/beta/components/Table/createColumnHelper.d.ts +38 -153
  372. package/dist/src/beta/components/Table/formatters/booleanFormatter.d.ts +4 -15
  373. package/dist/src/beta/components/Table/formatters/chipsFormatter.d.ts +7 -9
  374. package/dist/src/beta/components/Table/formatters/currencyFormatter.d.ts +3 -15
  375. package/dist/src/beta/components/Table/formatters/dateFormatter.d.ts +10 -23
  376. package/dist/src/beta/components/Table/formatters/dateTimeFormatter.d.ts +23 -46
  377. package/dist/src/beta/components/Table/formatters/htmlFormatter.d.ts +2 -11
  378. package/dist/src/beta/components/Table/formatters/htmlToMarkdown.d.ts +5 -10
  379. package/dist/src/beta/components/Table/formatters/markdownFormatter.d.ts +3 -8
  380. package/dist/src/beta/components/Table/formatters/numberFormatter.d.ts +8 -27
  381. package/dist/src/beta/components/Table/formatters/percentFormatter.d.ts +4 -15
  382. package/dist/src/beta/components/Table/formatters/presets.d.ts +4 -12
  383. package/dist/src/beta/components/Table/formatters/timeFormatter.d.ts +7 -17
  384. package/dist/src/beta/components/Table/formatters/yearlessDateFormatter.d.ts +9 -21
  385. package/dist/src/beta/components/Table/internal/ResizeHandle.d.ts +5 -9
  386. package/dist/src/beta/components/Table/internal/TruncateChips.d.ts +2 -11
  387. package/dist/src/beta/components/Table/internal/getCommonPinningClasses.d.ts +2 -1
  388. package/dist/src/beta/components/Table/internal/getCommonPinningStyles.d.ts +6 -2
  389. package/dist/src/beta/components/Table/internal/scrollCellIntoView.d.ts +3 -7
  390. package/dist/src/beta/components/Table/internal/types.d.ts +2 -7
  391. package/dist/src/beta/components/Table/types.d.ts +183 -462
  392. package/dist/src/beta/components/Toolbar/Toolbar.d.ts +35 -267
  393. package/dist/src/beta/components/Toolbar/ToolbarButton.d.ts +5 -26
  394. package/dist/src/beta/components/Toolbar/ToolbarButtonLink.d.ts +5 -28
  395. package/dist/src/beta/components/Toolbar/ToolbarButtonToggle.d.ts +5 -27
  396. package/dist/src/beta/components/Toolbar/ToolbarControlGroup.d.ts +6 -8
  397. package/dist/src/beta/components/Toolbar/ToolbarSearchField.d.ts +3 -14
  398. package/dist/src/beta/components/Toolbar/ToolbarSelect.d.ts +13 -65
  399. package/dist/src/beta/components/Toolbar/internal/ToolbarContext.d.ts +0 -32
  400. package/dist/src/beta/components/Toolbar/internal/ToolbarItemOverflowContext.d.ts +0 -13
  401. package/dist/src/beta/components/Toolbar/internal/ToolbarItemWrapper.d.ts +2 -28
  402. package/dist/src/beta/components/Toolbar/internal/ToolbarOverflowMenu.d.ts +4 -21
  403. package/dist/src/beta/components/Toolbar/internal/utils/accessibility.d.ts +7 -15
  404. package/dist/src/beta/components/Toolbar/types.d.ts +7 -26
  405. package/dist/src/beta/components/TreeSelectField/TreeSelectField.d.ts +2 -23
  406. package/dist/src/beta/components/TreeSelectField/TreeSelectFieldSync.d.ts +10 -46
  407. package/dist/src/beta/components/TreeSelectField/internal/TreeContent.d.ts +5 -21
  408. package/dist/src/beta/components/TreeSelectField/internal/TreePanel.d.ts +1 -38
  409. package/dist/src/beta/components/TreeSelectField/internal/TreeRow.d.ts +6 -38
  410. package/dist/src/beta/components/TreeSelectField/internal/TreeSelectFieldInput.d.ts +2 -50
  411. package/dist/src/beta/components/TreeSelectField/internal/VirtualizedTreePanel.d.ts +2 -39
  412. package/dist/src/beta/components/TreeSelectField/internal/treeSync.d.ts +6 -21
  413. package/dist/src/beta/components/TreeSelectField/internal/treeUtils.d.ts +3 -19
  414. package/dist/src/beta/components/TreeSelectField/internal/useTree.d.ts +9 -50
  415. package/dist/src/beta/components/TreeSelectField/internal/useTreeCascade.d.ts +8 -79
  416. package/dist/src/beta/components/TreeSelectField/internal/useTreeKeyboard.d.ts +3 -29
  417. package/dist/src/beta/components/TreeSelectField/internal/useTreeLazyCascade.d.ts +8 -36
  418. package/dist/src/beta/components/TreeSelectField/internal/useTreeLoader.d.ts +10 -34
  419. package/dist/src/beta/components/TreeSelectField/parts.d.ts +3 -9
  420. package/dist/src/beta/components/TreeSelectField/types.d.ts +82 -68
  421. package/dist/src/beta/components/TreeSelectMenu/TreeSelectMenu.d.ts +4 -18
  422. package/dist/src/beta/components/TreeSelectMenu/TreeSelectMenuSync.d.ts +9 -47
  423. package/dist/src/beta/components/TreeSelectMenu/parts.d.ts +4 -4
  424. package/dist/src/beta/components/TreeSelectMenu/types.d.ts +44 -54
  425. package/dist/src/beta/components/TypeaheadTextField/TypeaheadTextField.d.ts +15 -43
  426. package/dist/src/beta/components/TypeaheadTextField/internal/SuggestionItem.d.ts +1 -18
  427. package/dist/src/beta/hooks/useAdaptiveView/useAdaptiveView.d.ts +6 -41
  428. package/dist/src/components/AiMark/AiMark.d.ts +9 -69
  429. package/dist/src/components/AiMark/internal/AiMarkIconAnimated.d.ts +2 -20
  430. package/dist/src/components/AiMark/internal/AiMarkInteractive.d.ts +4 -0
  431. package/dist/src/components/Alert/Alert.d.ts +10 -54
  432. package/dist/src/components/Announcement/Announcement.d.ts +7 -49
  433. package/dist/src/components/Avatar/Avatar.d.ts +5 -41
  434. package/dist/src/components/Avatar/AvatarGroup.d.ts +4 -25
  435. package/dist/src/components/Avatar/internal/Avatar.d.ts +1 -44
  436. package/dist/src/components/Avatar/internal/AvatarBase.d.ts +13 -53
  437. package/dist/src/components/Badge/Badge.d.ts +9 -42
  438. package/dist/src/components/Breadcrumbs/Breadcrumbs.d.ts +6 -33
  439. package/dist/src/components/Breadcrumbs/BreadcrumbsLink.d.ts +1 -15
  440. package/dist/src/components/Button/Button.d.ts +19 -41
  441. package/dist/src/components/Button/internal/buttonAiMarkUtils.d.ts +2 -5
  442. package/dist/src/components/ButtonCompound/ButtonCompound.d.ts +5 -28
  443. package/dist/src/components/ButtonLink/ButtonLink.d.ts +23 -59
  444. package/dist/src/components/ButtonToggle/ButtonToggle.d.ts +14 -51
  445. package/dist/src/components/Calendar/Calendar.d.ts +43 -239
  446. package/dist/src/components/Calendar/CalendarContext.d.ts +32 -102
  447. package/dist/src/components/Calendar/CalendarMonth.d.ts +1 -6
  448. package/dist/src/components/Calendar/CalendarMonthButton.d.ts +2 -11
  449. package/dist/src/components/Calendar/CalendarNextButton.d.ts +1 -8
  450. package/dist/src/components/Calendar/CalendarNowButton.d.ts +5 -12
  451. package/dist/src/components/Calendar/CalendarPrevButton.d.ts +1 -8
  452. package/dist/src/components/Calendar/CalendarYearButton.d.ts +2 -10
  453. package/dist/src/components/Calendar/internal/CalendarDay.d.ts +3 -13
  454. package/dist/src/components/Calendar/internal/CalendarMonthSelection.d.ts +3 -17
  455. package/dist/src/components/Calendar/internal/CalendarWeek.d.ts +5 -18
  456. package/dist/src/components/Calendar/internal/utils.d.ts +1 -0
  457. package/dist/src/components/Card/Card.d.ts +4 -21
  458. package/dist/src/components/Checkbox/Checkbox.d.ts +3 -50
  459. package/dist/src/components/Checkbox/CheckboxGroup.d.ts +21 -65
  460. package/dist/src/components/Checkbox/internal/Checkbox.d.ts +32 -90
  461. package/dist/src/components/Checkbox/internal/CheckboxGroupContext.d.ts +2 -14
  462. package/dist/src/components/Checkbox/types.d.ts +2 -0
  463. package/dist/src/components/Chip/Chip.d.ts +5 -41
  464. package/dist/src/components/Chip/internal/Chip.d.ts +13 -84
  465. package/dist/src/components/DateFieldRange/DateFieldRange.d.ts +27 -44
  466. package/dist/src/components/DateFieldRange/internal/DateFieldRangeCalendar.d.ts +7 -0
  467. package/dist/src/components/DateFieldRange/internal/MaskedDateRangeInput.d.ts +18 -11
  468. package/dist/src/components/DateFieldRange/internal/maskito/dateRangePlaceholderMask.d.ts +2 -0
  469. package/dist/src/components/DateFieldRange/internal/useDateFieldRangeConversion.d.ts +1 -7
  470. package/dist/src/components/DateFieldRange/internal/useDateFieldRangeState.d.ts +11 -33
  471. package/dist/src/components/DateFieldRange/internal/utils.d.ts +4 -0
  472. package/dist/src/components/DateFieldRange/parts.d.ts +2 -7
  473. package/dist/src/components/DateFieldSingle/DateFieldSingle.d.ts +24 -46
  474. package/dist/src/components/DateFieldSingle/internal/DateFieldSingleCalendar.d.ts +4 -0
  475. package/dist/src/components/DateFieldSingle/internal/MaskedDateInput.d.ts +15 -8
  476. package/dist/src/components/DateFieldSingle/internal/TimezoneMessage.d.ts +2 -0
  477. package/dist/src/components/DateFieldSingle/internal/maskito/datePlaceholderMask.d.ts +1 -0
  478. package/dist/src/components/DateFieldSingle/internal/maskito/makeZeroShortcutPreprocessor.d.ts +3 -5
  479. package/dist/src/components/DateFieldSingle/internal/useDateFieldSingleConversion.d.ts +3 -29
  480. package/dist/src/components/DateFieldSingle/internal/useDateFieldSingleState.d.ts +13 -22
  481. package/dist/src/components/DateFieldSingle/internal/utils.d.ts +6 -16
  482. package/dist/src/components/DateFieldSingle/parts.d.ts +2 -7
  483. package/dist/src/components/DateFieldSingle/types.d.ts +1 -0
  484. package/dist/src/components/DateFieldYearless/DateFieldYearless.d.ts +31 -96
  485. package/dist/src/components/DateFieldYearless/internal/PickerList.d.ts +12 -40
  486. package/dist/src/components/DateFieldYearless/internal/PickerListOption.d.ts +5 -22
  487. package/dist/src/components/DateFieldYearless/internal/YearlessDateInput.d.ts +23 -8
  488. package/dist/src/components/DateFieldYearless/internal/YearlessDateInputWithPicker.d.ts +31 -90
  489. package/dist/src/components/DateFieldYearless/internal/YearlessDateSelectionPopover.d.ts +6 -8
  490. package/dist/src/components/DateFieldYearless/internal/maskito/yearlessDatePlaceholderMask.d.ts +1 -0
  491. package/dist/src/components/DateFieldYearless/internal/maskito/yearlessDateSegmentsStepping.d.ts +3 -5
  492. package/dist/src/components/DateFieldYearless/internal/utils.d.ts +7 -36
  493. package/dist/src/components/DateFieldYearless/parts.d.ts +2 -4
  494. package/dist/src/components/DateFieldYearless/types.d.ts +3 -0
  495. package/dist/src/components/DateFieldYearlessRange/DateFieldYearlessRange.d.ts +32 -48
  496. package/dist/src/components/DateFieldYearlessRange/parts.d.ts +2 -4
  497. package/dist/src/components/DaysOfTheWeek/DaysOfTheWeek.d.ts +32 -93
  498. package/dist/src/components/Details/Details.d.ts +10 -38
  499. package/dist/src/components/Details/DetailsContent.d.ts +6 -30
  500. package/dist/src/components/Details/DetailsSummary.d.ts +2 -18
  501. package/dist/src/components/Details/internal/DetailsArrow.d.ts +1 -17
  502. package/dist/src/components/Dialog/Dialog.d.ts +41 -218
  503. package/dist/src/components/Dialog/DialogCancelButton.d.ts +2 -17
  504. package/dist/src/components/Dialog/DialogContent.d.ts +4 -35
  505. package/dist/src/components/Dialog/DialogFooter.d.ts +4 -26
  506. package/dist/src/components/Dialog/DialogHeader.d.ts +2 -17
  507. package/dist/src/components/Dialog/internal/DialogContext.d.ts +0 -3
  508. package/dist/src/components/Dialog/internal/useInitialFocus.d.ts +3 -14
  509. package/dist/src/components/Divider/Divider.d.ts +8 -44
  510. package/dist/src/components/Dnd/DndHandle.d.ts +1 -18
  511. package/dist/src/components/Dnd/DndHandleButton.d.ts +2 -26
  512. package/dist/src/components/Dnd/DndSortLine.d.ts +4 -31
  513. package/dist/src/components/Dnd/DndZone.d.ts +6 -43
  514. package/dist/src/components/Dnd/index.d.ts +8 -0
  515. package/dist/src/components/DndSort/DndSort.d.ts +2 -34
  516. package/dist/src/components/DndSort/DndSortCard.d.ts +7 -51
  517. package/dist/src/components/DndSort/DndSortZone.d.ts +17 -99
  518. package/dist/src/components/DndSort/index.d.ts +6 -0
  519. package/dist/src/components/DndSort/internal/DndSortContextProvider.d.ts +1 -3
  520. package/dist/src/components/DndSort/internal/DndSortItem.d.ts +0 -11
  521. package/dist/src/components/DndSort/internal/DndSortOverlay.d.ts +0 -4
  522. package/dist/src/components/DndSort/internal/DndSortZoneContextProvider.d.ts +1 -9
  523. package/dist/src/components/DndSort/internal/test-utils.d.ts +2 -9
  524. package/dist/src/components/DndSort/internal/utils.d.ts +6 -32
  525. package/dist/src/components/DndSort/types.d.ts +14 -35
  526. package/dist/src/components/Drawer/Drawer.d.ts +25 -151
  527. package/dist/src/components/Drawer/DrawerCancelButton.d.ts +2 -21
  528. package/dist/src/components/Drawer/DrawerContent.d.ts +4 -38
  529. package/dist/src/components/Drawer/DrawerFooter.d.ts +4 -30
  530. package/dist/src/components/Drawer/DrawerHeader.d.ts +9 -41
  531. package/dist/src/components/Drawer/index.d.ts +1 -1
  532. package/dist/src/components/Drawer/internal/DrawerContext.d.ts +0 -15
  533. package/dist/src/components/Drawer/internal/useDrawerContext.d.ts +1 -6
  534. package/dist/src/components/DrillDown/DrillDown.d.ts +20 -48
  535. package/dist/src/components/DrillDown/DrillDownContent.d.ts +1 -21
  536. package/dist/src/components/DrillDown/DrillDownFooter.d.ts +1 -25
  537. package/dist/src/components/DrillDown/DrillDownHeader.d.ts +3 -25
  538. package/dist/src/components/DrillDown/DrillDownNextButton.d.ts +2 -22
  539. package/dist/src/components/DrillDown/DrillDownPrevButton.d.ts +2 -22
  540. package/dist/src/components/DrillDown/internal/DrillDownContext.d.ts +3 -0
  541. package/dist/src/components/DrillDown/internal/useDrillDownContext.d.ts +1 -0
  542. package/dist/src/components/DrillDown/internal/useDrillDownContextState.d.ts +4 -0
  543. package/dist/src/components/DrillDown/useDrilldown.d.ts +4 -23
  544. package/dist/src/components/EditCard/EditCard.d.ts +21 -77
  545. package/dist/src/components/FieldLabel/FieldLabel.d.ts +13 -46
  546. package/dist/src/components/FieldLabel/internal/FieldLabelButton.d.ts +1 -20
  547. package/dist/src/components/FieldLabel/internal/FieldLabelMoreInfoIcon.d.ts +2 -5
  548. package/dist/src/components/FieldMessage/FieldMessage.d.ts +18 -56
  549. package/dist/src/components/FieldMessage/utils.d.ts +2 -3
  550. package/dist/src/components/Flex/Flex.d.ts +12 -63
  551. package/dist/src/components/Flex/internal/FlexSpecificProps.d.ts +6 -22
  552. package/dist/src/components/Grid/Grid.d.ts +15 -92
  553. package/dist/src/components/Grid/internal/GridItem.d.ts +0 -23
  554. package/dist/src/components/Grid/internal/GridSpecificProps.d.ts +5 -19
  555. package/dist/src/components/Icon/Icon.d.ts +10 -58
  556. package/dist/src/components/Layout/Layout.d.ts +60 -124
  557. package/dist/src/components/Link/Link.d.ts +12 -38
  558. package/dist/src/components/Link/internal/Link.d.ts +7 -52
  559. package/dist/src/components/Link/internal/LinkHeadless.d.ts +3 -19
  560. package/dist/src/components/Link/useLinkStyles.d.ts +3 -8
  561. package/dist/src/components/LinkButton/LinkButton.d.ts +9 -28
  562. package/dist/src/components/List/List.d.ts +10 -48
  563. package/dist/src/components/List/ListItem.d.ts +1 -4
  564. package/dist/src/components/ListView/ListView.d.ts +4 -46
  565. package/dist/src/components/ListView/ListViewOption.d.ts +9 -20
  566. package/dist/src/components/ListView/ListViewOptionCell.d.ts +1 -11
  567. package/dist/src/components/ListView/internal/ListViewContext.d.ts +2 -13
  568. package/dist/src/components/ListView/internal/types.d.ts +17 -35
  569. package/dist/src/components/Listbox/Listbox.d.ts +32 -99
  570. package/dist/src/components/Listbox/ListboxOption.d.ts +7 -28
  571. package/dist/src/components/Listbox/ListboxOptionGroup.d.ts +6 -23
  572. package/dist/src/components/Listbox/internal/ListboxContext.d.ts +2 -20
  573. package/dist/src/components/Menu/Menu.d.ts +8 -48
  574. package/dist/src/components/Menu/MenuItem.d.ts +8 -41
  575. package/dist/src/components/Menu/internal/MenuContext.d.ts +0 -9
  576. package/dist/src/components/Menu/internal/MenuNested.d.ts +2 -35
  577. package/dist/src/components/Menu/internal/menuSelectors.d.ts +0 -3
  578. package/dist/src/components/Menu/types.d.ts +32 -40
  579. package/dist/src/components/MultiSelectField/MultiSelectField.d.ts +1 -19
  580. package/dist/src/components/MultiSelectField/MultiSelectFieldSync.d.ts +10 -65
  581. package/dist/src/components/MultiSelectField/internal/MultiSelectFieldComboboxMode.d.ts +1 -3
  582. package/dist/src/components/MultiSelectField/internal/MultiSelectFieldInput.d.ts +1 -49
  583. package/dist/src/components/MultiSelectField/internal/MultiSelectFieldSelectMode.d.ts +1 -4
  584. package/dist/src/components/MultiSelectField/internal/MultiSelectFieldTrigger.d.ts +1 -4
  585. package/dist/src/components/MultiSelectField/internal/types.d.ts +0 -2
  586. package/dist/src/components/MultiSelectField/internal/useChipLayout.d.ts +1 -7
  587. package/dist/src/components/MultiSelectField/internal/useComboMultiple.d.ts +3 -20
  588. package/dist/src/components/MultiSelectField/internal/useSelectModeMultiple.d.ts +1 -6
  589. package/dist/src/components/MultiSelectField/parts.d.ts +0 -12
  590. package/dist/src/components/MultiSelectField/types.d.ts +97 -215
  591. package/dist/src/components/MultiSelectMenu/MultiSelectMenu.d.ts +1 -30
  592. package/dist/src/components/MultiSelectMenu/MultiSelectMenuSync.d.ts +10 -34
  593. package/dist/src/components/MultiSelectMenu/types.d.ts +75 -98
  594. package/dist/src/components/NumberField/NumberField.d.ts +76 -40
  595. package/dist/src/components/Overflow/Overflow.d.ts +17 -61
  596. package/dist/src/components/Overflow/OverflowText.d.ts +10 -60
  597. package/dist/src/components/Overflow/index.d.ts +4 -21
  598. package/dist/src/components/Page/Page.d.ts +8 -156
  599. package/dist/src/components/Page/PageContent.d.ts +4 -19
  600. package/dist/src/components/Page/PageContext.d.ts +9 -0
  601. package/dist/src/components/Page/PageFooter.d.ts +2 -15
  602. package/dist/src/components/Page/PageHeader.d.ts +34 -85
  603. package/dist/src/components/Page/PagePanel.d.ts +13 -52
  604. package/dist/src/components/Page/PageSidebar.d.ts +8 -41
  605. package/dist/src/components/Page/PageSidebarHeader.d.ts +2 -20
  606. package/dist/src/components/Page/pageBreakpoint.d.ts +6 -19
  607. package/dist/src/components/Pagination/Pagination.d.ts +44 -31
  608. package/dist/src/components/Pagination/internal/Pagination.d.ts +6 -23
  609. package/dist/src/components/Pagination/internal/PaginationItem.d.ts +5 -38
  610. package/dist/src/components/Pagination/internal/PaginationItemsPerPageMenu.d.ts +5 -35
  611. package/dist/src/components/Pagination/internal/PaginationOverflowMenu.d.ts +12 -52
  612. package/dist/src/components/Pagination/internal/usePaginationArray.d.ts +4 -19
  613. package/dist/src/components/Pagination/parts.d.ts +3 -14
  614. package/dist/src/components/Popover/Popover.d.ts +55 -296
  615. package/dist/src/components/Popover/PopoverButton.d.ts +2 -29
  616. package/dist/src/components/Popover/PopoverClose.d.ts +2 -28
  617. package/dist/src/components/Popover/PopoverContent.d.ts +8 -38
  618. package/dist/src/components/Popover/PopoverTrigger.d.ts +6 -32
  619. package/dist/src/components/Popover/internal/compareElements.d.ts +1 -0
  620. package/dist/src/components/Popover/internal/usePopoverContext.d.ts +1 -0
  621. package/dist/src/components/ProgressBar/ProgressBar.d.ts +17 -69
  622. package/dist/src/components/Radio/Radio.d.ts +3 -82
  623. package/dist/src/components/Radio/RadioGroup.d.ts +21 -73
  624. package/dist/src/components/Radio/internal/Radio.d.ts +22 -117
  625. package/dist/src/components/Radio/internal/RadioGroupContext.d.ts +2 -14
  626. package/dist/src/components/Radio/types.d.ts +2 -9
  627. package/dist/src/components/SearchField/SearchField.d.ts +5 -43
  628. package/dist/src/components/SearchField/internal/SearchField.d.ts +6 -53
  629. package/dist/src/components/SegmentedControl/SegmentedControl.d.ts +12 -82
  630. package/dist/src/components/SegmentedControl/SegmentedControlSegment.d.ts +12 -43
  631. package/dist/src/components/SegmentedControl/internal/SegmentedControlContext.d.ts +0 -15
  632. package/dist/src/components/SelectCard/SelectCard.d.ts +13 -78
  633. package/dist/src/components/SelectCard/SelectCardGroup.d.ts +13 -47
  634. package/dist/src/components/SelectCard/internal/SelectCardContext.d.ts +14 -51
  635. package/dist/src/components/SelectCard/internal/SelectCardProvider.d.ts +3 -29
  636. package/dist/src/components/SelectField/SelectField.d.ts +1 -21
  637. package/dist/src/components/SelectField/SelectFieldSync.d.ts +6 -44
  638. package/dist/src/components/SelectField/internal/SelectFieldComboboxMode.d.ts +1 -4
  639. package/dist/src/components/SelectField/internal/SelectFieldInput.d.ts +1 -41
  640. package/dist/src/components/SelectField/internal/SelectFieldLabel.d.ts +3 -30
  641. package/dist/src/components/SelectField/internal/SelectFieldSelectMode.d.ts +1 -4
  642. package/dist/src/components/SelectField/internal/SelectFieldTrigger.d.ts +2 -5
  643. package/dist/src/components/SelectField/internal/useCombo.d.ts +1 -3
  644. package/dist/src/components/SelectField/internal/useSelectMode.d.ts +1 -4
  645. package/dist/src/components/SelectField/types.d.ts +95 -171
  646. package/dist/src/components/SelectMenu/SelectMenu.d.ts +1 -26
  647. package/dist/src/components/SelectMenu/SelectMenuSync.d.ts +6 -30
  648. package/dist/src/components/SelectMenu/internal/useMenuInteraction.d.ts +2 -0
  649. package/dist/src/components/SelectMenu/types.d.ts +65 -64
  650. package/dist/src/components/SelectTrigger/SelectTrigger.d.ts +19 -11
  651. package/dist/src/components/SelectTrigger/internal/SelectTriggerBase.d.ts +18 -2
  652. package/dist/src/components/SideNav/SideNav.d.ts +10 -77
  653. package/dist/src/components/SideNav/SideNavCollapsible.d.ts +14 -49
  654. package/dist/src/components/SideNav/SideNavContext.d.ts +0 -18
  655. package/dist/src/components/SideNav/SideNavGroup.d.ts +2 -27
  656. package/dist/src/components/SideNav/SideNavLink.d.ts +8 -35
  657. package/dist/src/components/SideNav/internal/SideNavContext.d.ts +1 -13
  658. package/dist/src/components/SideNav/internal/SideNavLink.d.ts +14 -50
  659. package/dist/src/components/SideNav/internal/SideNavProvider.d.ts +1 -17
  660. package/dist/src/components/SideNav/internal/utils.d.ts +1 -13
  661. package/dist/src/components/SideNav/useSideNav.d.ts +2 -3
  662. package/dist/src/components/Skeleton/SkeletonCircle.d.ts +5 -39
  663. package/dist/src/components/Skeleton/SkeletonPill.d.ts +5 -39
  664. package/dist/src/components/Skeleton/SkeletonRectangle.d.ts +5 -40
  665. package/dist/src/components/Skeleton/SkeletonText.d.ts +6 -43
  666. package/dist/src/components/Skeleton/index.d.ts +5 -0
  667. package/dist/src/components/Spinner/Spinner.d.ts +5 -34
  668. package/dist/src/components/SrOnly/SrOnly.d.ts +2 -13
  669. package/dist/src/components/Stepper/Stepper.d.ts +34 -210
  670. package/dist/src/components/Stepper/StepperFinalPanel.d.ts +2 -23
  671. package/dist/src/components/Stepper/StepperList.d.ts +1 -22
  672. package/dist/src/components/Stepper/StepperNextButton.d.ts +12 -52
  673. package/dist/src/components/Stepper/StepperPanel.d.ts +6 -37
  674. package/dist/src/components/Stepper/StepperPrevButton.d.ts +6 -32
  675. package/dist/src/components/Stepper/StepperStep.d.ts +8 -43
  676. package/dist/src/components/Stepper/base/StepperBase.d.ts +18 -67
  677. package/dist/src/components/Stepper/base/StepperBaseList.d.ts +1 -15
  678. package/dist/src/components/Stepper/base/StepperBasePanel.d.ts +6 -23
  679. package/dist/src/components/Stepper/base/StepperBaseStep.d.ts +14 -37
  680. package/dist/src/components/Stepper/internal/StepperWizardBootstrap.d.ts +4 -0
  681. package/dist/src/components/Stepper/internal/countRegisteredSteps.d.ts +1 -0
  682. package/dist/src/components/Switch/Switch.d.ts +14 -61
  683. package/dist/src/components/Tab/Tab.d.ts +14 -115
  684. package/dist/src/components/Tab/TabButton.d.ts +7 -39
  685. package/dist/src/components/Tab/TabList.d.ts +1 -20
  686. package/dist/src/components/Tab/TabPanel.d.ts +3 -24
  687. package/dist/src/components/Text/Text.d.ts +3 -32
  688. package/dist/src/components/Text/types.d.ts +13 -69
  689. package/dist/src/components/TextField/TextField.d.ts +6 -14
  690. package/dist/src/components/TextField/internal/TextField.d.ts +21 -11
  691. package/dist/src/components/Textarea/Textarea.d.ts +18 -57
  692. package/dist/src/components/Textarea/types.d.ts +7 -20
  693. package/dist/src/components/TimeField/TimeField.d.ts +14 -65
  694. package/dist/src/components/TimeField/internal/MaskedTimeInput.d.ts +10 -64
  695. package/dist/src/components/TimeField/internal/constants.d.ts +2 -12
  696. package/dist/src/components/TimeField/internal/maskito/timePlaceholderMask.d.ts +1 -13
  697. package/dist/src/components/TimeField/internal/types.d.ts +9 -14
  698. package/dist/src/components/TimeField/internal/utils/timeFormatting.d.ts +1 -8
  699. package/dist/src/components/TimeField/internal/utils/timeOptions.d.ts +2 -16
  700. package/dist/src/components/TimeField/internal/utils/timeParsing.d.ts +3 -29
  701. package/dist/src/components/TimeField/internal/utils/timeRounding.d.ts +5 -47
  702. package/dist/src/components/TimeField/internal/utils/timeValidation.d.ts +4 -22
  703. package/dist/src/components/Toast/Toaster.d.ts +2 -40
  704. package/dist/src/components/Toast/internal/Toast.d.ts +14 -75
  705. package/dist/src/components/Toast/internal/ToastProvider.d.ts +2 -64
  706. package/dist/src/components/Toast/internal/ToastStack.d.ts +13 -59
  707. package/dist/src/components/Toast/internal/Toaster.d.ts +18 -61
  708. package/dist/src/components/Toast/internal/ToasterPopover.d.ts +1 -16
  709. package/dist/src/components/Toast/internal/addOrUpdateToastHeight.d.ts +1 -6
  710. package/dist/src/components/Toast/internal/constants.d.ts +0 -15
  711. package/dist/src/components/Toast/internal/types.d.ts +1 -0
  712. package/dist/src/components/Toast/internal/useCloseToast.d.ts +1 -5
  713. package/dist/src/components/Toast/internal/useHotkeyFocus.d.ts +2 -10
  714. package/dist/src/components/Toast/internal/useShowMoreButtonPositionStyles.d.ts +1 -4
  715. package/dist/src/components/Toast/internal/useToastPositionStyles.d.ts +1 -5
  716. package/dist/src/components/Toast/internal/useToasts.d.ts +1 -5
  717. package/dist/src/components/Toast/toast.d.ts +14 -63
  718. package/dist/src/components/Toolbar/Toolbar.d.ts +16 -138
  719. package/dist/src/components/Toolbar/ToolbarButton.d.ts +4 -29
  720. package/dist/src/components/Toolbar/ToolbarButtonLink.d.ts +3 -28
  721. package/dist/src/components/Toolbar/ToolbarButtonToggle.d.ts +2 -24
  722. package/dist/src/components/Toolbar/ToolbarSelect.d.ts +12 -65
  723. package/dist/src/components/Toolbar/internal/ToolbarContext.d.ts +0 -31
  724. package/dist/src/components/Toolbar/internal/ToolbarItemOverflowContext.d.ts +0 -13
  725. package/dist/src/components/Toolbar/internal/ToolbarItemWrapper.d.ts +1 -24
  726. package/dist/src/components/Toolbar/internal/ToolbarOverflowMenu.d.ts +1 -23
  727. package/dist/src/components/Toolbar/internal/utils/accessibility.d.ts +4 -15
  728. package/dist/src/components/Toolbar/types.d.ts +7 -21
  729. package/dist/src/components/Tooltip/Tooltip.d.ts +17 -96
  730. package/dist/src/components/Tooltip/TooltipContent.d.ts +1 -23
  731. package/dist/src/components/Tooltip/TooltipTrigger.d.ts +3 -22
  732. package/dist/src/components/Tooltip/internal/TooltipContext.d.ts +0 -66
  733. package/dist/src/components/Tooltip/internal/useTooltipContext.d.ts +1 -14
  734. package/dist/src/integration-testing/stepper-panel-flicker.spec.d.ts +1 -0
  735. package/dist/{stripInlineMarkdown-CosQSmBr.js → stripInlineMarkdown-BhYLEiXu.js} +2 -2
  736. package/dist/{stripInlineMarkdown-CosQSmBr.js.map → stripInlineMarkdown-BhYLEiXu.js.map} +1 -1
  737. package/dist/{syncFilterUtils-_uwyt6FD.js → syncFilterUtils-ClEj4Oeg.js} +4 -4
  738. package/dist/{syncFilterUtils-_uwyt6FD.js.map → syncFilterUtils-ClEj4Oeg.js.map} +1 -1
  739. package/dist/{treeSync-Bp80Xduj.js → treeSync-B38r1dRQ.js} +5 -11
  740. package/dist/treeSync-B38r1dRQ.js.map +1 -0
  741. package/dist/{use-reduced-motion-CqjZZ5QB.js → use-reduced-motion-yYB9Tb0D.js} +2 -2
  742. package/dist/use-reduced-motion-yYB9Tb0D.js.map +1 -0
  743. package/dist/useChipLayout-BBe6Tzyl.js.map +1 -1
  744. package/dist/useDrillDownContext-D5_NjqY4.js.map +1 -1
  745. package/dist/{useDrilldown-D5XGfAUT.js → useDrilldown-BOeeNUsy.js} +8 -3
  746. package/dist/{useDrilldown-D5XGfAUT.js.map → useDrilldown-BOeeNUsy.js.map} +1 -1
  747. package/dist/{useInfiniteCombobox-ORhH44Rp.js → useInfiniteCombobox-7oIT2Mzn.js} +5 -5
  748. package/dist/{useInfiniteCombobox-ORhH44Rp.js.map → useInfiniteCombobox-7oIT2Mzn.js.map} +1 -1
  749. package/dist/useInitialFocus-CGybEc6x.js.map +1 -1
  750. package/dist/{useInvalidateOnOptionsChange-ieSgbkwT.js → useInvalidateOnOptionsChange-BD2VBpbK.js} +5 -5
  751. package/dist/useInvalidateOnOptionsChange-BD2VBpbK.js.map +1 -0
  752. package/dist/useMenuInteraction-nNF1dsrp.js.map +1 -1
  753. package/dist/utils-CM48ODEJ.js.map +1 -1
  754. package/package.json +6 -4
  755. package/dist/AiMark-CWufA6pV.js.map +0 -1
  756. package/dist/Alert-RkvFtmRP.js.map +0 -1
  757. package/dist/Announcement-CGTv6M31.js.map +0 -1
  758. package/dist/Avatar-DZxHhMTP.js.map +0 -1
  759. package/dist/Avatar-DkWoRhJu.js +0 -35
  760. package/dist/Avatar-DkWoRhJu.js.map +0 -1
  761. package/dist/Breadcrumbs-DbOrdao2.js.map +0 -1
  762. package/dist/Button-Dwh_Nd4l.js.map +0 -1
  763. package/dist/ButtonToggle-DKDBD1g3.js.map +0 -1
  764. package/dist/Calendar-CK-AAaSG.js.map +0 -1
  765. package/dist/Calendar-DLnn6dJE.js.map +0 -1
  766. package/dist/Checkbox-CboZhOtU.js.map +0 -1
  767. package/dist/Checkbox-Cn4iNLW_.js.map +0 -1
  768. package/dist/Chip-UbrxYEqs.js.map +0 -1
  769. package/dist/DataTable-COExZbOC.js.map +0 -1
  770. package/dist/DateFieldRange-CpTxlASD.js.map +0 -1
  771. package/dist/DateFieldSingle-DR2kfrzh.js.map +0 -1
  772. package/dist/DateFieldYearless-4mS_2Mgw.js.map +0 -1
  773. package/dist/DateFieldYearlessRange-C-yvKBkJ.js.map +0 -1
  774. package/dist/DaysOfTheWeek-Bo4w8SsT.js.map +0 -1
  775. package/dist/Details-CVA5zbrR.js.map +0 -1
  776. package/dist/Dialog-Ds25dKQp.js.map +0 -1
  777. package/dist/DialogCancelButton-DBL0aKTK.js.map +0 -1
  778. package/dist/Drawer-Da-bj_6o.js.map +0 -1
  779. package/dist/EditCard-CocV93gS.js.map +0 -1
  780. package/dist/FieldLabel-6aFKQfyD.js.map +0 -1
  781. package/dist/FilterBar-CZT1ryz_.js.map +0 -1
  782. package/dist/Grid-CvGQrIhE.js.map +0 -1
  783. package/dist/InteractiveCard-C0g5PxB6.js.map +0 -1
  784. package/dist/Layout-C2Q2hyLG.js.map +0 -1
  785. package/dist/List-BvzfZ9TW.js.map +0 -1
  786. package/dist/ListView-DFAWrwzi.js.map +0 -1
  787. package/dist/Listbox-BErqErNN.js.map +0 -1
  788. package/dist/Menu-BjPE_ODh.js.map +0 -1
  789. package/dist/MultiSelectFieldSync-CqWUidCm.js.map +0 -1
  790. package/dist/MultiSelectMenuSync-DG3rKyQc.js.map +0 -1
  791. package/dist/NumberField-DRYYJHec.js.map +0 -1
  792. package/dist/Page-pfK5iSmv.js.map +0 -1
  793. package/dist/Pagination-Bc4fhdNm.js.map +0 -1
  794. package/dist/Popover-BgVOsP4J.js.map +0 -1
  795. package/dist/ProgressBar-Chb0uKfL.js.map +0 -1
  796. package/dist/Radio-DcNlFfSu.js.map +0 -1
  797. package/dist/Radio-gpMEsFss.js +0 -60
  798. package/dist/Radio-gpMEsFss.js.map +0 -1
  799. package/dist/RichTextEditor-DeO4p-S-.js.map +0 -1
  800. package/dist/SavedFiltersButton-Cvf1mJk8.js.map +0 -1
  801. package/dist/SegmentedControl-CQ6DrbDc.js.map +0 -1
  802. package/dist/SelectCard-bp5hRyHK.js.map +0 -1
  803. package/dist/SelectFieldLabel-DZqxaZsp.js.map +0 -1
  804. package/dist/SelectFieldSync-Wkx6DGpg.js.map +0 -1
  805. package/dist/SelectMenuSync-O55TODxn.js.map +0 -1
  806. package/dist/SelectTrigger-BfJ7DWYq.js.map +0 -1
  807. package/dist/SelectTriggerBase-DvsI-kSG.js.map +0 -1
  808. package/dist/SideNav-BLXgM918.js.map +0 -1
  809. package/dist/Stepper-CCKHWlUr.js.map +0 -1
  810. package/dist/Switch-CrDmBj4D.js.map +0 -1
  811. package/dist/Tab-Bqfvg8Ce.js.map +0 -1
  812. package/dist/Text-CZccJAnm.js.map +0 -1
  813. package/dist/TextField-D0f9LwgQ.js.map +0 -1
  814. package/dist/TextField-DX5qyWPo.js.map +0 -1
  815. package/dist/Textarea-CdTcekFd.js.map +0 -1
  816. package/dist/TimeField-BxNglWQt.js.map +0 -1
  817. package/dist/Toaster-C-Z_FMbW.js.map +0 -1
  818. package/dist/Toaster-nyQgF9Ki.js.map +0 -1
  819. package/dist/Toolbar-BUbMtBVz.js.map +0 -1
  820. package/dist/Toolbar-BxAFPvbn.js.map +0 -1
  821. package/dist/ToolbarButtonToggle-NSJ2XfXT.js.map +0 -1
  822. package/dist/Tooltip-B4MSqIpg.js.map +0 -1
  823. package/dist/TreeSelectFieldSync-DpvwlM7B.js.map +0 -1
  824. package/dist/TreeSelectMenuSync-BDitYX_k.js.map +0 -1
  825. package/dist/TypeaheadTextField-Cj09sEji.js.map +0 -1
  826. package/dist/YearlessDateInputWithPicker-CoomgSEK.js.map +0 -1
  827. package/dist/filter-state-CZcczj37.js.map +0 -1
  828. package/dist/index-BwV_Pz7v.js.map +0 -1
  829. package/dist/makeZeroShortcutPreprocessor-CxsiGTRW.js.map +0 -1
  830. package/dist/proxy-DEehATlA.js.map +0 -1
  831. package/dist/treeSync-Bp80Xduj.js.map +0 -1
  832. package/dist/use-reduced-motion-CqjZZ5QB.js.map +0 -1
  833. package/dist/useInvalidateOnOptionsChange-ieSgbkwT.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Grid-BPCDtqoT.js","sources":["../src/components/Grid/internal/GridItem.tsx","../src/components/Grid/Grid.tsx"],"sourcesContent":["import { type ComponentPropsWithoutRef, forwardRef } from \"react\";\nimport cx from \"classnames\";\n\nimport styles from \"../Grid.module.scss\";\nimport { useLayoutPropsUtil } from \"../../../internal/hooks\";\nimport type { LayoutUtilProps } from \"../../../types\";\n\nexport type GridItemProps = ComponentPropsWithoutRef<\"div\"> & LayoutUtilProps;\n\nexport const GridItem = forwardRef<HTMLDivElement, GridItemProps>(\n (props, ref) => {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const { className, children, style, ...rest } = componentProps;\n\n const gridItemClassNames = cx([styles[\"grid-item\"]], className, {});\n\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n return (\n <div\n className={gridItemClassNames}\n data-anv=\"grid-item\"\n ref={ref}\n style={styleCombined}\n {...rest}\n >\n {children}\n </div>\n );\n },\n);\n\nGridItem.displayName = \"GridItem\";\n","import { type ComponentPropsWithoutRef, forwardRef } from \"react\";\nimport cx from \"classnames\";\n\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\nimport styles from \"./Grid.module.scss\";\nimport type { GridSpecificProps } from \"./internal/GridSpecificProps\";\nimport { GridItem } from \"./internal/GridItem\";\n\nexport type GridProps = ComponentPropsWithoutRef<\"div\"> & {\n /** Uses `inline-grid`; defaults to block-level `grid`. */\n inline?: boolean;\n} & GridSpecificProps & {\n /** Overrides the base Grid and layout utilities from the `sm` breakpoint up. */\n sm?: GridSpecificProps;\n /** Overrides the base Grid and layout utilities from the `md` breakpoint up. */\n md?: GridSpecificProps;\n /** Overrides the base Grid and layout utilities from the `lg` breakpoint up. */\n lg?: GridSpecificProps;\n /** Overrides the base Grid and layout utilities from the `xl` breakpoint up. */\n xl?: GridSpecificProps;\n /** Overrides the base Grid and layout utilities from the `xxl` breakpoint up. */\n xxl?: GridSpecificProps;\n };\n\n/**\n * CSS Grid container with breakpoint-specific overrides for its Grid and\n * layout utilities.\n */\nexport const Grid = Object.assign(\n forwardRef<HTMLDivElement, GridProps>(function GridInner(props, ref) {\n const {\n inline,\n templateColumns,\n templateRows,\n templateAreas,\n autoColumns,\n autoRows,\n sm,\n md,\n lg,\n xl,\n xxl,\n ...nonLayoutProps\n } = props;\n const combineLayoutProps = {\n ...nonLayoutProps,\n gridTemplateColumns: props.templateColumns,\n gridTemplateRows: props.templateRows,\n gridTemplateAreas: props.templateAreas,\n gridAutoColumns: props.autoColumns,\n gridAutoRows: props.autoRows,\n sm: {\n ...sm,\n gridTemplateColumns: sm?.templateColumns,\n gridTemplateRows: sm?.templateRows,\n gridTemplateAreas: sm?.templateAreas,\n gridAutoColumns: sm?.autoColumns,\n gridAutoRows: sm?.autoRows,\n },\n md: {\n ...md,\n gridTemplateColumns: md?.templateColumns,\n gridTemplateRows: md?.templateRows,\n gridTemplateAreas: md?.templateAreas,\n gridAutoColumns: md?.autoColumns,\n gridAutoRows: md?.autoRows,\n },\n lg: {\n ...lg,\n gridTemplateColumns: lg?.templateColumns,\n gridTemplateRows: lg?.templateRows,\n gridTemplateAreas: lg?.templateAreas,\n gridAutoColumns: lg?.autoColumns,\n gridAutoRows: lg?.autoRows,\n },\n xl: {\n ...xl,\n gridTemplateColumns: xl?.templateColumns,\n gridTemplateRows: xl?.templateRows,\n gridTemplateAreas: xl?.templateAreas,\n gridAutoColumns: xl?.autoColumns,\n gridAutoRows: xl?.autoRows,\n },\n xxl: {\n ...xxl,\n gridTemplateColumns: xxl?.templateColumns,\n gridTemplateRows: xxl?.templateRows,\n gridTemplateAreas: xxl?.templateAreas,\n gridAutoColumns: xxl?.autoColumns,\n gridAutoRows: xxl?.autoRows,\n },\n };\n const { layoutStyles, componentProps } =\n useLayoutPropsUtil(combineLayoutProps);\n const { children, className, style, ...rest } = componentProps;\n\n const gridClassNames = cx(className, {\n [styles[\"grid\"]]: !inline,\n [styles[\"inline-grid\"]]: inline,\n });\n\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n return (\n <div\n className={gridClassNames}\n data-anv=\"grid\"\n style={styleCombined}\n ref={ref}\n {...rest}\n >\n {children}\n </div>\n );\n }),\n {\n /** Grid cell that accepts layout utilities for placement and sizing. */\n Item: GridItem,\n },\n);\nGrid.displayName = \"Grid\";\n"],"names":[],"mappings":"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"}
package/dist/Grid.js CHANGED
@@ -1,2 +1,2 @@
1
- export { G as Grid, G as default } from './Grid-CvGQrIhE.js';
1
+ export { G as Grid, G as default } from './Grid-BPCDtqoT.js';
2
2
  //# sourceMappingURL=Grid.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Icon-B5zwN7GD.js","sources":["../src/internal/utils/uniquifySvgDomIds.ts","../src/components/Icon/Icon.tsx"],"sourcesContent":["const URL_REF_ATTRS = [\n \"fill\",\n \"stroke\",\n \"filter\",\n \"mask\",\n \"clip-path\",\n \"clipPath\",\n] as const;\n\nconst HREF_ATTRS = [\"href\", \"xlink:href\"] as const;\n\nconst URL_REF_PATTERN = /^url\\(#(.+)\\)$/;\nconst HREF_REF_PATTERN = /^#(.+)$/;\n\n/**\n * Prefixes SVG `id` attributes and matching `url(#…)` / `#…` references under\n * `svgRoot` so multiple instances of the same SVG do not collide in the\n * document. Idempotent when called again with the same `idPrefix`.\n *\n * Walks elements and reads attributes directly instead of building attribute\n * selectors — namespaced attrs like `xlink:href` are not valid in\n * `querySelectorAll('[xlink:href]')`.\n */\nexport function uniquifySvgDomIds(svgRoot: SVGElement, idPrefix: string): void {\n const elementsWithId = svgRoot.querySelectorAll(\"[id]\");\n if (elementsWithId.length === 0) return;\n\n const prefixWithSeparator = `${idPrefix}-`;\n const elements = svgRoot.querySelectorAll(\"*\");\n\n for (const element of elements) {\n const currentId = element.getAttribute(\"id\");\n if (currentId && !currentId.startsWith(prefixWithSeparator)) {\n element.setAttribute(\"id\", `${prefixWithSeparator}${currentId}`);\n }\n\n for (const attr of URL_REF_ATTRS) {\n const value = element.getAttribute(attr);\n if (!value) continue;\n\n const match = value.match(URL_REF_PATTERN);\n if (!match) continue;\n\n const refId = match[1];\n if (refId.startsWith(prefixWithSeparator)) continue;\n\n element.setAttribute(attr, `url(#${prefixWithSeparator}${refId})`);\n }\n\n for (const attr of HREF_ATTRS) {\n const value = element.getAttribute(attr);\n if (!value) continue;\n\n const match = value.match(HREF_REF_PATTERN);\n if (!match) continue;\n\n const refId = match[1];\n if (refId.startsWith(prefixWithSeparator)) continue;\n\n element.setAttribute(attr, `#${prefixWithSeparator}${refId}`);\n }\n }\n}\n","import type { LayoutUtilProps, Size, Svg } from \"../../types\";\nimport {\n type ComponentPropsWithoutRef,\n forwardRef,\n useId,\n useLayoutEffect,\n useRef,\n} from \"react\";\nimport styles from \"./Icon.module.scss\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\nimport { uniquifySvgDomIds } from \"../../internal/utils/uniquifySvgDomIds\";\nimport { useMergeRefs } from \"../../hooks/useMergeRefs\";\nimport cx from \"classnames\";\n\n/**\n * Props for the Icon component\n * @extends Omit<ComponentPropsWithoutRef<\"span\">, \"children\">\n * @extends Omit<LayoutUtilProps, \"flex\" | \"flexBasis\" | \"flexGrow\" | \"flexShrink\">\n */\nexport type IconProps = Omit<ComponentPropsWithoutRef<\"span\">, \"children\"> &\n Omit<LayoutUtilProps, \"flex\" | \"flexBasis\" | \"flexGrow\" | \"flexShrink\"> & {\n /**\n * Apply a specific color to the icon.\n */\n color?: string;\n\n /**\n * The size of the icon.\n * @default medium\n */\n size?: Extract<Size, \"small\" | \"medium\" | \"large\" | \"xlarge\">;\n\n /**\n * Assets passed in using svgr.\n */\n svg: Svg;\n\n /**\n * Whether the icon should inherit the color from its parent element.\n * @default false\n */\n inherit?: boolean;\n };\n\n/**\n * Icon component for displaying SVG icons with consistent styling and sizing.\n *\n * Features:\n * - SVG icon rendering with consistent styling\n * - Four predefined sizes: small, medium, large, xlarge\n * - Custom color support with optional inheritance\n * - Layout utilities for positioning and spacing\n * - Support for all standard span element props\n * - Flexible color inheritance and custom color options\n * - Consistent sizing across different icon sets\n *\n * @example\n * import Close from \"@servicetitan/anvil2/assets/icons/material/round/close.svg\";\n *\n * <Icon svg={Close} size=\"medium\" />\n *\n * @example\n * import Info from \"@servicetitan/anvil2/assets/icons/material/round/info.svg\";\n *\n * <Icon\n * svg={Info}\n * size=\"large\"\n * color=\"#007bff\"\n * inherit={false}\n * />\n */\nexport const Icon = forwardRef<HTMLSpanElement, IconProps>((props, ref) => {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const {\n size = \"medium\",\n className,\n svg: Svg,\n inherit,\n style,\n color,\n ...rest\n } = componentProps;\n\n const localRef = useRef<HTMLSpanElement>(null);\n const mergedRef = useMergeRefs([localRef, ref]);\n const idPrefix = useId().replace(/:/g, \"\");\n\n useLayoutEffect(() => {\n const svg = localRef.current?.querySelector(\"svg\");\n if (!svg) return;\n uniquifySvgDomIds(svg, idPrefix);\n }, [Svg, idPrefix]);\n\n const iconClassNames = cx([styles[\"icon\"]], className, {\n [styles[\"small\"]]: size === \"small\",\n [styles[\"medium\"]]: size === \"medium\",\n [styles[\"large\"]]: size === \"large\",\n [styles[\"xlarge\"]]: size === \"xlarge\",\n });\n\n const styleCombined = {\n color: color ? color : inherit ? \"inherit\" : undefined,\n ...style,\n ...layoutStyles,\n };\n\n return (\n <span\n className={iconClassNames}\n data-anv=\"icon\"\n style={styleCombined}\n ref={mergedRef}\n {...rest}\n >\n <Svg />\n </span>\n );\n});\n\nIcon.displayName = \"Icon\";\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Icon-B5zwN7GD.js","sources":["../src/internal/utils/uniquifySvgDomIds.ts","../src/components/Icon/Icon.tsx"],"sourcesContent":["const URL_REF_ATTRS = [\n \"fill\",\n \"stroke\",\n \"filter\",\n \"mask\",\n \"clip-path\",\n \"clipPath\",\n] as const;\n\nconst HREF_ATTRS = [\"href\", \"xlink:href\"] as const;\n\nconst URL_REF_PATTERN = /^url\\(#(.+)\\)$/;\nconst HREF_REF_PATTERN = /^#(.+)$/;\n\n/**\n * Prefixes SVG `id` attributes and matching `url(#…)` / `#…` references under\n * `svgRoot` so multiple instances of the same SVG do not collide in the\n * document. Idempotent when called again with the same `idPrefix`.\n *\n * Walks elements and reads attributes directly instead of building attribute\n * selectors — namespaced attrs like `xlink:href` are not valid in\n * `querySelectorAll('[xlink:href]')`.\n */\nexport function uniquifySvgDomIds(svgRoot: SVGElement, idPrefix: string): void {\n const elementsWithId = svgRoot.querySelectorAll(\"[id]\");\n if (elementsWithId.length === 0) return;\n\n const prefixWithSeparator = `${idPrefix}-`;\n const elements = svgRoot.querySelectorAll(\"*\");\n\n for (const element of elements) {\n const currentId = element.getAttribute(\"id\");\n if (currentId && !currentId.startsWith(prefixWithSeparator)) {\n element.setAttribute(\"id\", `${prefixWithSeparator}${currentId}`);\n }\n\n for (const attr of URL_REF_ATTRS) {\n const value = element.getAttribute(attr);\n if (!value) continue;\n\n const match = value.match(URL_REF_PATTERN);\n if (!match) continue;\n\n const refId = match[1];\n if (refId.startsWith(prefixWithSeparator)) continue;\n\n element.setAttribute(attr, `url(#${prefixWithSeparator}${refId})`);\n }\n\n for (const attr of HREF_ATTRS) {\n const value = element.getAttribute(attr);\n if (!value) continue;\n\n const match = value.match(HREF_REF_PATTERN);\n if (!match) continue;\n\n const refId = match[1];\n if (refId.startsWith(prefixWithSeparator)) continue;\n\n element.setAttribute(attr, `#${prefixWithSeparator}${refId}`);\n }\n }\n}\n","import type { LayoutUtilProps, Size, Svg } from \"../../types\";\nimport {\n type ComponentPropsWithoutRef,\n forwardRef,\n useId,\n useLayoutEffect,\n useRef,\n} from \"react\";\nimport styles from \"./Icon.module.scss\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\nimport { uniquifySvgDomIds } from \"../../internal/utils/uniquifySvgDomIds\";\nimport { useMergeRefs } from \"../../hooks/useMergeRefs\";\nimport cx from \"classnames\";\n\nexport type IconProps = Omit<ComponentPropsWithoutRef<\"span\">, \"children\"> &\n Omit<LayoutUtilProps, \"flex\" | \"flexBasis\" | \"flexGrow\" | \"flexShrink\"> & {\n /** Sets the wrapper color used by the SVG. */\n color?: string;\n\n /** Icon scale. Defaults to `medium`. */\n size?: Extract<Size, \"small\" | \"medium\" | \"large\" | \"xlarge\">;\n\n /** SVGR component rendered inside the wrapper. */\n svg: Svg;\n\n /** Uses the parent text color when no explicit color is set. */\n inherit?: boolean;\n };\n\n/**\n * Renders an SVGR asset in a sized wrapper and makes SVG DOM IDs unique per\n * instance.\n */\nexport const Icon = forwardRef<HTMLSpanElement, IconProps>((props, ref) => {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const {\n size = \"medium\",\n className,\n svg: Svg,\n inherit,\n style,\n color,\n ...rest\n } = componentProps;\n\n const localRef = useRef<HTMLSpanElement>(null);\n const mergedRef = useMergeRefs([localRef, ref]);\n const idPrefix = useId().replace(/:/g, \"\");\n\n useLayoutEffect(() => {\n const svg = localRef.current?.querySelector(\"svg\");\n if (!svg) return;\n uniquifySvgDomIds(svg, idPrefix);\n }, [Svg, idPrefix]);\n\n const iconClassNames = cx([styles[\"icon\"]], className, {\n [styles[\"small\"]]: size === \"small\",\n [styles[\"medium\"]]: size === \"medium\",\n [styles[\"large\"]]: size === \"large\",\n [styles[\"xlarge\"]]: size === \"xlarge\",\n });\n\n const styleCombined = {\n color: color ? color : inherit ? \"inherit\" : undefined,\n ...style,\n ...layoutStyles,\n };\n\n return (\n <span\n className={iconClassNames}\n data-anv=\"icon\"\n style={styleCombined}\n ref={mergedRef}\n {...rest}\n >\n <Svg />\n </span>\n );\n});\n\nIcon.displayName = \"Icon\";\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
2
  import { forwardRef, useRef, useMemo, isValidElement, cloneElement } from 'react';
3
- import { u as useMergeRefs } from './AiMark-CWufA6pV.js';
4
- import { T as TextField } from './TextField-D0f9LwgQ.js';
3
+ import { u as useMergeRefs } from './AiMark-BfmK30vL.js';
4
+ import { T as TextField } from './TextField-vuS7xeo-.js';
5
5
  import { u as useOptionallyControlledState } from './useOptionallyControlledState-DbDuos5L.js';
6
6
  import { c as childrenToString } from './childrenToString-Bz9MqbHb.js';
7
7
  import { useTrackingId } from './useTrackingId.js';
@@ -261,4 +261,4 @@ const InputMask = forwardRef(
261
261
  InputMask.displayName = "InputMask";
262
262
 
263
263
  export { InputMask as I };
264
- //# sourceMappingURL=InputMask-CNV0Ucli.js.map
264
+ //# sourceMappingURL=InputMask-BQigi5oW.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InputMask-CNV0Ucli.js","sources":["../src/components/InputMask/internal/constants.ts","../src/components/InputMask/internal/utils.ts","../src/components/InputMask/InputMask.tsx"],"sourcesContent":["export const MASK_CHARS = [\"a\", \"9\", \"*\"];\n","import { MASK_CHARS } from \"./constants\";\n\n/**\n * This function applies the mask to the input value, returning a new string that matches the mask's format.\n * @param value - a string representing the raw input value (e.g., what the user typed)\n * @param mask - a string representing the desired input mask (e.g., \"99/99/9999\" for a date)\n * @param defaultMaskCharacter - a string representing the default mask character (e.g., \"_\")\n * @returns a string representing the masked value (e.g., \"12/31/2025\" for a date)\n *\n * @example\n * applyMask(\"1234567890\", \"99/99/9999\", \"_\") // \"12/31/2025\"\n * applyMask(\"1234567890\", \"999-999-9999\", \"-\") // \"123-456-7890\"\n * applyMask(\"123\", \"99/99\", \"_\") // \"12/3_\"\n */\nexport function applyMask(\n value: string,\n mask: string,\n defaultMaskCharacter: string,\n) {\n let maskedValue = \"\";\n let valueIndex = 0;\n for (let i = 0; i < mask.length; i++) {\n const maskChar = mask[i];\n if (MASK_CHARS.includes(maskChar)) {\n // Find next acceptable char in value\n while (\n valueIndex < value.length &&\n !isAcceptableChar(value[valueIndex], maskChar)\n ) {\n valueIndex++;\n }\n if (valueIndex < value.length) {\n maskedValue += value[valueIndex];\n valueIndex++;\n } else {\n maskedValue += defaultMaskCharacter;\n }\n } else {\n maskedValue += maskChar;\n }\n }\n return maskedValue;\n}\n/**\n * This function checks if a character is acceptable for a given mask character.\n * @param char - a string representing the character to check\n * @param maskChar - a string representing the mask character\n * @returns a boolean indicating if the character is acceptable\n */\nfunction isAcceptableChar(char: string, maskChar: string) {\n if (maskChar === \"9\") {\n return /\\d/.test(char);\n }\n if (maskChar === \"a\") {\n return /[a-zA-Z]/.test(char);\n }\n if (maskChar === \"*\") {\n return /[a-zA-Z0-9]/.test(char);\n }\n return false;\n}\n/**\n * This function finds the next open character in a given value.\n * @param value - a string representing the value to search\n * @param defaultMaskCharacter - a string representing the default mask character (e.g., \"_\")\n * @returns a number representing the index of the next open character\n */\nexport function getNextOpenCharacterIndex(\n value: string,\n defaultMaskCharacter: string,\n) {\n let idx = value.indexOf(defaultMaskCharacter);\n if (idx < 0) {\n idx = value.length;\n }\n return idx;\n}\n/**\n * This function finds the first non-fixed character in the value.\n * @param startingIndex - a number representing the index to start searching from\n * @param fixedCharacterIndices - an array of numbers representing the indices of the fixed characters\n * @returns a number representing the index of the first non-fixed character\n */\nexport function getFirstNonFixedCharacterIndex(\n startingIndex: number,\n fixedCharacterIndices: number[],\n) {\n let idx = startingIndex;\n while (fixedCharacterIndices.includes(idx)) {\n idx++;\n }\n return idx;\n}\n/**\n * This function finds the last filled character in a given value.\n * @param value - a string representing the value to search\n * @param mask - a string representing the mask\n * @returns a number representing the index of the last filled character\n */\nexport function getLastFilledCharacterIndex(value: string, mask: string) {\n let idx = value\n .split(\"\")\n .findLastIndex((char, i) => isAcceptableChar(char, mask[i]));\n if (idx < 0) {\n idx = 0;\n }\n return idx;\n}\n/**\n * This function finds the first filled character in a given value.\n * @param value - a string representing the value to search\n * @param mask - a string representing the mask\n * @returns a number representing the index of the first filled character\n */\nexport function getFirstFilledCharacterIndex(value: string, mask: string) {\n let idx = value\n .split(\"\")\n .findIndex((char, i) => isAcceptableChar(char, mask[i]));\n if (idx < 0) {\n idx = 0;\n }\n return idx;\n}\n","import {\n type ChangeEvent,\n type ChangeEventHandler,\n type FocusEvent,\n type KeyboardEvent,\n type InputHTMLAttributes,\n type ReactElement,\n cloneElement,\n forwardRef,\n isValidElement,\n useRef,\n useMemo,\n type MouseEvent,\n} from \"react\";\nimport { useMergeRefs } from \"@floating-ui/react\";\nimport { useOptionallyControlledState } from \"../../internal/hooks\";\nimport { useTrackingId } from \"../../hooks\";\nimport {\n TextField,\n type TextFieldProps,\n} from \"../TextField/internal/TextField\";\nimport { childrenToString } from \"../../internal/functions\";\nimport {\n applyMask,\n getLastFilledCharacterIndex,\n getFirstFilledCharacterIndex,\n getFirstNonFixedCharacterIndex,\n getNextOpenCharacterIndex,\n} from \"./internal/utils\";\nimport { MASK_CHARS } from \"./internal/constants\";\nimport type { DataTrackingId } from \"../../types\";\n\n/**\n * Props for InputMask when using with children\n */\ninterface InputMaskPropsWithChildren {\n /**\n * Custom input element to be wrapped with mask functionality.\n */\n children: ReactElement<InputHTMLAttributes<HTMLInputElement>>;\n /**\n * Additional props to pass to the input element.\n */\n inputProps?: InputHTMLAttributes<HTMLInputElement>;\n}\n\n/**\n * Props for InputMask when using without children\n */\ninterface InputMaskPropsWithoutChildren {\n /**\n * No children allowed when using default TextField.\n */\n children?: never;\n /**\n * Props to pass to the default TextField component.\n */\n inputProps?: TextFieldProps;\n}\n\n/**\n * Configuration for custom mask handler matching\n */\ninterface ICustomMaskHandlerMatch {\n /**\n * Regular expression pattern to match against input.\n */\n matchPattern: RegExp;\n /**\n * Starting position in the input string.\n */\n startPosition: number;\n /**\n * Ending position in the input string.\n */\n endPosition: number;\n}\n\n/**\n * Configuration for custom mask handler application\n */\ninterface ICustomMaskHandlerApply {\n /**\n * Pattern to apply when match is found.\n */\n applyPattern: string;\n /**\n * Offset to apply to cursor position after transformation.\n */\n caretOffset: number;\n}\n\n/**\n * Custom mask handler for advanced input transformations\n */\ninterface ICustomMaskHandler {\n /**\n * Matching configuration for the handler.\n */\n match: ICustomMaskHandlerMatch;\n /**\n * Application configuration for the handler.\n */\n apply: ICustomMaskHandlerApply;\n}\n\n/**\n * Shared props for InputMask component\n */\ninterface SharedInputMaskProps {\n /**\n * The mask pattern to apply to the input.\n * - \"9\" for digits only\n * - \"a\" for letters only\n * - \"*\" for alphanumeric\n * - Any other character is treated as a fixed character\n */\n mask: string;\n /**\n * Character to display for unfilled mask positions.\n * @default \"_\"\n */\n defaultMaskCharacter?: string;\n /**\n * Controlled value for the input.\n */\n value?: string;\n /**\n * Default value for uncontrolled input.\n */\n defaultValue?: string;\n /**\n * Callback function called when input value changes.\n */\n onChange?: ChangeEventHandler<HTMLInputElement>;\n /**\n * Array of custom mask handlers for advanced transformations.\n */\n customMaskHandler?: ICustomMaskHandler[];\n}\n\ntype SpecialChange = {\n reason: \"Backspace\" | \"Delete\" | \"Edit\";\n start: number;\n end: number;\n};\n\n/**\n * Props for the InputMask component\n * @property {string} mask - The mask pattern to apply to the input (9 for digits, a for letters, * for alphanumeric)\n * @property {string} [defaultMaskCharacter] - Character to display for unfilled mask positions\n * @property {array} [customMaskHandler] - Array of custom mask handlers for advanced transformations\n * @property {object} [inputProps] - Props to pass to the input component\n * @property {ReactElement} [children] - Custom input element to be wrapped with mask functionality\n * @property {string} [data-tracking-id] - Custom tracking ID for analytics\n */\nexport type InputMaskProps = SharedInputMaskProps &\n (InputMaskPropsWithChildren | InputMaskPropsWithoutChildren) &\n DataTrackingId;\n\n/**\n * InputMask component for applying input masks and formatting to text inputs.\n *\n * @deprecated Use the TextField component with custom masking instead. Over time, we intend to release additional components with built-in masking.\n */\nexport const InputMask = forwardRef<HTMLInputElement, InputMaskProps>(\n (\n {\n children,\n mask,\n defaultMaskCharacter = \"_\",\n value,\n defaultValue,\n onChange,\n inputProps,\n \"data-tracking-id\": dataTrackingId,\n },\n ref,\n ) => {\n const [v, setV] = useOptionallyControlledState({\n controlledValue:\n value !== undefined\n ? applyMask(value, mask, defaultMaskCharacter)\n : undefined,\n defaultValue: applyMask(defaultValue || \"\", mask, defaultMaskCharacter),\n // Omitting the onChange handler here because we want to handle it ourselves (i.e. send an event instead of just the value)\n });\n const specialChange = useRef<SpecialChange | null>(null);\n\n const inputRef = useRef<HTMLInputElement>(null);\n\n const passInRef = useMergeRefs([inputRef, ref]);\n\n const currentOpenCharacterCount = useMemo(() => {\n return v.split(\"\").filter((char) => char === defaultMaskCharacter).length;\n }, [v, defaultMaskCharacter]);\n\n const fixedCharacterIndices = useMemo(() => {\n const fixedIndices: number[] = [];\n mask.split(\"\").forEach((char, i) => {\n if (!MASK_CHARS.includes(char)) {\n fixedIndices.push(i);\n }\n });\n return fixedIndices;\n }, [mask]);\n\n const moveCursorTo = (start: number, end: number = start) => {\n requestAnimationFrame(() => {\n inputRef.current?.setSelectionRange(start, end);\n });\n };\n\n const handleChange = (e: ChangeEvent<HTMLInputElement>) => {\n let newVal = applyMask(e.target.value, mask, defaultMaskCharacter);\n if (\n // A single character was backspaced\n specialChange.current?.reason === \"Backspace\" &&\n specialChange.current.start === specialChange.current.end\n ) {\n // If the character before the backspace is a fixed character, we need to remove the filled character before the fixed character\n if (fixedCharacterIndices.includes(specialChange.current.start - 1)) {\n const removeIndex = getLastFilledCharacterIndex(\n newVal.slice(0, specialChange.current.start),\n mask,\n );\n newVal = applyMask(\n newVal.slice(0, removeIndex) + newVal.slice(removeIndex + 1),\n mask,\n defaultMaskCharacter,\n );\n moveCursorTo(removeIndex, removeIndex);\n } else {\n const idx = Math.min(\n getLastFilledCharacterIndex(newVal, mask) + 1,\n specialChange.current.start - 1,\n );\n moveCursorTo(idx, idx);\n }\n } else if (\n // A single character was deleted\n specialChange.current?.reason === \"Delete\" &&\n specialChange.current.start === specialChange.current.end\n ) {\n // If the character after the delete is a fixed character, we need to remove the filled character after the fixed character\n if (fixedCharacterIndices.includes(specialChange.current.start)) {\n const removeIndex = getFirstFilledCharacterIndex(\n newVal.slice(specialChange.current.start + 1),\n mask,\n );\n newVal = applyMask(\n newVal.slice(0, removeIndex) + newVal.slice(removeIndex + 1),\n mask,\n defaultMaskCharacter,\n );\n }\n const firstFilledIdx = getFirstFilledCharacterIndex(newVal, mask);\n const targetIdx = Math.max(firstFilledIdx, specialChange.current.start);\n moveCursorTo(targetIdx, targetIdx);\n } else if (\n specialChange.current?.reason === \"Edit\" &&\n specialChange.current.start === specialChange.current.end // A single character was edited\n ) {\n const firstNonFixedIdx = getFirstNonFixedCharacterIndex(\n specialChange.current.start + 1,\n fixedCharacterIndices,\n );\n moveCursorTo(firstNonFixedIdx, firstNonFixedIdx);\n } else {\n const newIndex = getNextOpenCharacterIndex(\n newVal,\n defaultMaskCharacter,\n );\n moveCursorTo(newIndex, newIndex);\n }\n\n setV(newVal);\n if (inputRef.current) {\n inputRef.current.value = newVal;\n }\n onChange?.({ ...e, target: { ...e.target, value: newVal } });\n };\n\n const handleFocus = (e: FocusEvent<HTMLInputElement>) => {\n requestAnimationFrame(() => {\n if (\n e.target.selectionStart === null ||\n e.target.selectionStart === undefined ||\n e.target.selectionStart >= v.length\n ) {\n const newIndex = getNextOpenCharacterIndex(v, defaultMaskCharacter);\n moveCursorTo(newIndex, newIndex);\n }\n });\n inputProps?.onFocus?.(e);\n };\n\n const handleKeyDown = (e: KeyboardEvent<HTMLInputElement>) => {\n const target = e.target as HTMLInputElement;\n if (target.selectionStart === null || target.selectionEnd === null) {\n return;\n }\n if (e.key === \"Backspace\") {\n specialChange.current = {\n reason: \"Backspace\",\n start: target.selectionStart,\n end: target.selectionEnd,\n };\n } else if (e.key === \"Delete\") {\n specialChange.current = {\n reason: \"Delete\",\n start: target.selectionStart,\n end: target.selectionEnd,\n };\n } else if (currentOpenCharacterCount === 0) {\n specialChange.current = {\n reason: \"Edit\",\n start: target.selectionStart,\n end: target.selectionEnd,\n };\n } else {\n specialChange.current = null;\n }\n inputProps?.onKeyDown?.(e);\n };\n\n const handleClick = (e: MouseEvent<HTMLInputElement>) => {\n // For future use.\n e.preventDefault();\n e.stopPropagation();\n inputProps?.onClick?.(e);\n };\n\n const handleBlur = (e: FocusEvent<HTMLInputElement>) => {\n // For future use.\n e.preventDefault();\n e.stopPropagation();\n inputProps?.onBlur?.(e);\n };\n\n const mergedInputProps = {\n ...inputProps,\n ...(children && isValidElement(children) ? children.props : {}),\n value: v,\n onChange: handleChange,\n onFocus: handleFocus,\n onKeyDown: handleKeyDown,\n onClick: handleClick,\n onBlur: handleBlur,\n ref: passInRef,\n };\n\n const isInputEmpty = useMemo(() => {\n if (v.length === 0) {\n return true;\n }\n return v === applyMask(\"\", mask, defaultMaskCharacter);\n }, [v, defaultMaskCharacter, mask]);\n\n const data = {\n label:\n \"label\" in mergedInputProps\n ? childrenToString(mergedInputProps.label)\n : null,\n labelProps:\n \"labelProps\" in mergedInputProps ? mergedInputProps.labelProps : null,\n prefix: childrenToString(mergedInputProps.prefix),\n hint:\n \"hint\" in mergedInputProps\n ? childrenToString(mergedInputProps.hint)\n : null,\n description:\n \"description\" in mergedInputProps\n ? childrenToString(mergedInputProps.description)\n : null,\n size: mergedInputProps.size,\n type: mergedInputProps.type,\n };\n\n const trackingId = useTrackingId({\n name: \"InputMask\",\n data,\n hasOverride: !!dataTrackingId,\n });\n\n return children && isValidElement(children) && children.type === \"input\" ? (\n cloneElement(children, {\n ...mergedInputProps,\n \"data-tracking-id\": trackingId,\n } as InputHTMLAttributes<HTMLInputElement> & {\n \"data-tracking-id\"?: string;\n })\n ) : (\n <TextField\n data-input-empty={isInputEmpty}\n data-tracking-id={trackingId}\n {...(mergedInputProps as TextFieldProps)}\n />\n );\n },\n);\n\nInputMask.displayName = \"InputMask\";\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InputMask-BQigi5oW.js","sources":["../src/components/InputMask/internal/constants.ts","../src/components/InputMask/internal/utils.ts","../src/components/InputMask/InputMask.tsx"],"sourcesContent":["export const MASK_CHARS = [\"a\", \"9\", \"*\"];\n","import { MASK_CHARS } from \"./constants\";\n\n/**\n * This function applies the mask to the input value, returning a new string that matches the mask's format.\n * @param value - a string representing the raw input value (e.g., what the user typed)\n * @param mask - a string representing the desired input mask (e.g., \"99/99/9999\" for a date)\n * @param defaultMaskCharacter - a string representing the default mask character (e.g., \"_\")\n * @returns a string representing the masked value (e.g., \"12/31/2025\" for a date)\n *\n * @example\n * applyMask(\"1234567890\", \"99/99/9999\", \"_\") // \"12/31/2025\"\n * applyMask(\"1234567890\", \"999-999-9999\", \"-\") // \"123-456-7890\"\n * applyMask(\"123\", \"99/99\", \"_\") // \"12/3_\"\n */\nexport function applyMask(\n value: string,\n mask: string,\n defaultMaskCharacter: string,\n) {\n let maskedValue = \"\";\n let valueIndex = 0;\n for (let i = 0; i < mask.length; i++) {\n const maskChar = mask[i];\n if (MASK_CHARS.includes(maskChar)) {\n // Find next acceptable char in value\n while (\n valueIndex < value.length &&\n !isAcceptableChar(value[valueIndex], maskChar)\n ) {\n valueIndex++;\n }\n if (valueIndex < value.length) {\n maskedValue += value[valueIndex];\n valueIndex++;\n } else {\n maskedValue += defaultMaskCharacter;\n }\n } else {\n maskedValue += maskChar;\n }\n }\n return maskedValue;\n}\n/**\n * This function checks if a character is acceptable for a given mask character.\n * @param char - a string representing the character to check\n * @param maskChar - a string representing the mask character\n * @returns a boolean indicating if the character is acceptable\n */\nfunction isAcceptableChar(char: string, maskChar: string) {\n if (maskChar === \"9\") {\n return /\\d/.test(char);\n }\n if (maskChar === \"a\") {\n return /[a-zA-Z]/.test(char);\n }\n if (maskChar === \"*\") {\n return /[a-zA-Z0-9]/.test(char);\n }\n return false;\n}\n/**\n * This function finds the next open character in a given value.\n * @param value - a string representing the value to search\n * @param defaultMaskCharacter - a string representing the default mask character (e.g., \"_\")\n * @returns a number representing the index of the next open character\n */\nexport function getNextOpenCharacterIndex(\n value: string,\n defaultMaskCharacter: string,\n) {\n let idx = value.indexOf(defaultMaskCharacter);\n if (idx < 0) {\n idx = value.length;\n }\n return idx;\n}\n/**\n * This function finds the first non-fixed character in the value.\n * @param startingIndex - a number representing the index to start searching from\n * @param fixedCharacterIndices - an array of numbers representing the indices of the fixed characters\n * @returns a number representing the index of the first non-fixed character\n */\nexport function getFirstNonFixedCharacterIndex(\n startingIndex: number,\n fixedCharacterIndices: number[],\n) {\n let idx = startingIndex;\n while (fixedCharacterIndices.includes(idx)) {\n idx++;\n }\n return idx;\n}\n/**\n * This function finds the last filled character in a given value.\n * @param value - a string representing the value to search\n * @param mask - a string representing the mask\n * @returns a number representing the index of the last filled character\n */\nexport function getLastFilledCharacterIndex(value: string, mask: string) {\n let idx = value\n .split(\"\")\n .findLastIndex((char, i) => isAcceptableChar(char, mask[i]));\n if (idx < 0) {\n idx = 0;\n }\n return idx;\n}\n/**\n * This function finds the first filled character in a given value.\n * @param value - a string representing the value to search\n * @param mask - a string representing the mask\n * @returns a number representing the index of the first filled character\n */\nexport function getFirstFilledCharacterIndex(value: string, mask: string) {\n let idx = value\n .split(\"\")\n .findIndex((char, i) => isAcceptableChar(char, mask[i]));\n if (idx < 0) {\n idx = 0;\n }\n return idx;\n}\n","import {\n type ChangeEvent,\n type ChangeEventHandler,\n type FocusEvent,\n type KeyboardEvent,\n type InputHTMLAttributes,\n type ReactElement,\n cloneElement,\n forwardRef,\n isValidElement,\n useRef,\n useMemo,\n type MouseEvent,\n} from \"react\";\nimport { useMergeRefs } from \"@floating-ui/react\";\nimport { useOptionallyControlledState } from \"../../internal/hooks\";\nimport { useTrackingId } from \"../../hooks\";\nimport {\n TextField,\n type TextFieldProps,\n} from \"../TextField/internal/TextField\";\nimport { childrenToString } from \"../../internal/functions\";\nimport {\n applyMask,\n getLastFilledCharacterIndex,\n getFirstFilledCharacterIndex,\n getFirstNonFixedCharacterIndex,\n getNextOpenCharacterIndex,\n} from \"./internal/utils\";\nimport { MASK_CHARS } from \"./internal/constants\";\nimport type { DataTrackingId } from \"../../types\";\n\n/**\n * Props for InputMask when using with children\n */\ninterface InputMaskPropsWithChildren {\n /**\n * Custom input element to be wrapped with mask functionality.\n */\n children: ReactElement<InputHTMLAttributes<HTMLInputElement>>;\n /**\n * Additional props to pass to the input element.\n */\n inputProps?: InputHTMLAttributes<HTMLInputElement>;\n}\n\n/**\n * Props for InputMask when using without children\n */\ninterface InputMaskPropsWithoutChildren {\n /**\n * No children allowed when using default TextField.\n */\n children?: never;\n /**\n * Props to pass to the default TextField component.\n */\n inputProps?: TextFieldProps;\n}\n\n/**\n * Configuration for custom mask handler matching\n */\ninterface ICustomMaskHandlerMatch {\n /**\n * Regular expression pattern to match against input.\n */\n matchPattern: RegExp;\n /**\n * Starting position in the input string.\n */\n startPosition: number;\n /**\n * Ending position in the input string.\n */\n endPosition: number;\n}\n\n/**\n * Configuration for custom mask handler application\n */\ninterface ICustomMaskHandlerApply {\n /**\n * Pattern to apply when match is found.\n */\n applyPattern: string;\n /**\n * Offset to apply to cursor position after transformation.\n */\n caretOffset: number;\n}\n\n/**\n * Custom mask handler for advanced input transformations\n */\ninterface ICustomMaskHandler {\n /**\n * Matching configuration for the handler.\n */\n match: ICustomMaskHandlerMatch;\n /**\n * Application configuration for the handler.\n */\n apply: ICustomMaskHandlerApply;\n}\n\n/**\n * Shared props for InputMask component\n */\ninterface SharedInputMaskProps {\n /**\n * The mask pattern to apply to the input.\n * - \"9\" for digits only\n * - \"a\" for letters only\n * - \"*\" for alphanumeric\n * - Any other character is treated as a fixed character\n */\n mask: string;\n /**\n * Character to display for unfilled mask positions.\n * @default \"_\"\n */\n defaultMaskCharacter?: string;\n /**\n * Controlled value for the input.\n */\n value?: string;\n /**\n * Default value for uncontrolled input.\n */\n defaultValue?: string;\n /**\n * Callback function called when input value changes.\n */\n onChange?: ChangeEventHandler<HTMLInputElement>;\n /**\n * Array of custom mask handlers for advanced transformations.\n */\n customMaskHandler?: ICustomMaskHandler[];\n}\n\ntype SpecialChange = {\n reason: \"Backspace\" | \"Delete\" | \"Edit\";\n start: number;\n end: number;\n};\n\n/**\n * Props for the InputMask component\n * @property {string} mask - The mask pattern to apply to the input (9 for digits, a for letters, * for alphanumeric)\n * @property {string} [defaultMaskCharacter] - Character to display for unfilled mask positions\n * @property {array} [customMaskHandler] - Array of custom mask handlers for advanced transformations\n * @property {object} [inputProps] - Props to pass to the input component\n * @property {ReactElement} [children] - Custom input element to be wrapped with mask functionality\n * @property {string} [data-tracking-id] - Custom tracking ID for analytics\n */\nexport type InputMaskProps = SharedInputMaskProps &\n (InputMaskPropsWithChildren | InputMaskPropsWithoutChildren) &\n DataTrackingId;\n\n/**\n * InputMask component for applying input masks and formatting to text inputs.\n *\n * @deprecated Use the TextField component with custom masking instead. Over time, we intend to release additional components with built-in masking.\n */\nexport const InputMask = forwardRef<HTMLInputElement, InputMaskProps>(\n (\n {\n children,\n mask,\n defaultMaskCharacter = \"_\",\n value,\n defaultValue,\n onChange,\n inputProps,\n \"data-tracking-id\": dataTrackingId,\n },\n ref,\n ) => {\n const [v, setV] = useOptionallyControlledState({\n controlledValue:\n value !== undefined\n ? applyMask(value, mask, defaultMaskCharacter)\n : undefined,\n defaultValue: applyMask(defaultValue || \"\", mask, defaultMaskCharacter),\n // Omitting the onChange handler here because we want to handle it ourselves (i.e. send an event instead of just the value)\n });\n const specialChange = useRef<SpecialChange | null>(null);\n\n const inputRef = useRef<HTMLInputElement>(null);\n\n const passInRef = useMergeRefs([inputRef, ref]);\n\n const currentOpenCharacterCount = useMemo(() => {\n return v.split(\"\").filter((char) => char === defaultMaskCharacter).length;\n }, [v, defaultMaskCharacter]);\n\n const fixedCharacterIndices = useMemo(() => {\n const fixedIndices: number[] = [];\n mask.split(\"\").forEach((char, i) => {\n if (!MASK_CHARS.includes(char)) {\n fixedIndices.push(i);\n }\n });\n return fixedIndices;\n }, [mask]);\n\n const moveCursorTo = (start: number, end: number = start) => {\n requestAnimationFrame(() => {\n inputRef.current?.setSelectionRange(start, end);\n });\n };\n\n const handleChange = (e: ChangeEvent<HTMLInputElement>) => {\n let newVal = applyMask(e.target.value, mask, defaultMaskCharacter);\n if (\n // A single character was backspaced\n specialChange.current?.reason === \"Backspace\" &&\n specialChange.current.start === specialChange.current.end\n ) {\n // If the character before the backspace is a fixed character, we need to remove the filled character before the fixed character\n if (fixedCharacterIndices.includes(specialChange.current.start - 1)) {\n const removeIndex = getLastFilledCharacterIndex(\n newVal.slice(0, specialChange.current.start),\n mask,\n );\n newVal = applyMask(\n newVal.slice(0, removeIndex) + newVal.slice(removeIndex + 1),\n mask,\n defaultMaskCharacter,\n );\n moveCursorTo(removeIndex, removeIndex);\n } else {\n const idx = Math.min(\n getLastFilledCharacterIndex(newVal, mask) + 1,\n specialChange.current.start - 1,\n );\n moveCursorTo(idx, idx);\n }\n } else if (\n // A single character was deleted\n specialChange.current?.reason === \"Delete\" &&\n specialChange.current.start === specialChange.current.end\n ) {\n // If the character after the delete is a fixed character, we need to remove the filled character after the fixed character\n if (fixedCharacterIndices.includes(specialChange.current.start)) {\n const removeIndex = getFirstFilledCharacterIndex(\n newVal.slice(specialChange.current.start + 1),\n mask,\n );\n newVal = applyMask(\n newVal.slice(0, removeIndex) + newVal.slice(removeIndex + 1),\n mask,\n defaultMaskCharacter,\n );\n }\n const firstFilledIdx = getFirstFilledCharacterIndex(newVal, mask);\n const targetIdx = Math.max(firstFilledIdx, specialChange.current.start);\n moveCursorTo(targetIdx, targetIdx);\n } else if (\n specialChange.current?.reason === \"Edit\" &&\n specialChange.current.start === specialChange.current.end // A single character was edited\n ) {\n const firstNonFixedIdx = getFirstNonFixedCharacterIndex(\n specialChange.current.start + 1,\n fixedCharacterIndices,\n );\n moveCursorTo(firstNonFixedIdx, firstNonFixedIdx);\n } else {\n const newIndex = getNextOpenCharacterIndex(\n newVal,\n defaultMaskCharacter,\n );\n moveCursorTo(newIndex, newIndex);\n }\n\n setV(newVal);\n if (inputRef.current) {\n inputRef.current.value = newVal;\n }\n onChange?.({ ...e, target: { ...e.target, value: newVal } });\n };\n\n const handleFocus = (e: FocusEvent<HTMLInputElement>) => {\n requestAnimationFrame(() => {\n if (\n e.target.selectionStart === null ||\n e.target.selectionStart === undefined ||\n e.target.selectionStart >= v.length\n ) {\n const newIndex = getNextOpenCharacterIndex(v, defaultMaskCharacter);\n moveCursorTo(newIndex, newIndex);\n }\n });\n inputProps?.onFocus?.(e);\n };\n\n const handleKeyDown = (e: KeyboardEvent<HTMLInputElement>) => {\n const target = e.target as HTMLInputElement;\n if (target.selectionStart === null || target.selectionEnd === null) {\n return;\n }\n if (e.key === \"Backspace\") {\n specialChange.current = {\n reason: \"Backspace\",\n start: target.selectionStart,\n end: target.selectionEnd,\n };\n } else if (e.key === \"Delete\") {\n specialChange.current = {\n reason: \"Delete\",\n start: target.selectionStart,\n end: target.selectionEnd,\n };\n } else if (currentOpenCharacterCount === 0) {\n specialChange.current = {\n reason: \"Edit\",\n start: target.selectionStart,\n end: target.selectionEnd,\n };\n } else {\n specialChange.current = null;\n }\n inputProps?.onKeyDown?.(e);\n };\n\n const handleClick = (e: MouseEvent<HTMLInputElement>) => {\n // For future use.\n e.preventDefault();\n e.stopPropagation();\n inputProps?.onClick?.(e);\n };\n\n const handleBlur = (e: FocusEvent<HTMLInputElement>) => {\n // For future use.\n e.preventDefault();\n e.stopPropagation();\n inputProps?.onBlur?.(e);\n };\n\n const mergedInputProps = {\n ...inputProps,\n ...(children && isValidElement(children) ? children.props : {}),\n value: v,\n onChange: handleChange,\n onFocus: handleFocus,\n onKeyDown: handleKeyDown,\n onClick: handleClick,\n onBlur: handleBlur,\n ref: passInRef,\n };\n\n const isInputEmpty = useMemo(() => {\n if (v.length === 0) {\n return true;\n }\n return v === applyMask(\"\", mask, defaultMaskCharacter);\n }, [v, defaultMaskCharacter, mask]);\n\n const data = {\n label:\n \"label\" in mergedInputProps\n ? childrenToString(mergedInputProps.label)\n : null,\n labelProps:\n \"labelProps\" in mergedInputProps ? mergedInputProps.labelProps : null,\n prefix: childrenToString(mergedInputProps.prefix),\n hint:\n \"hint\" in mergedInputProps\n ? childrenToString(mergedInputProps.hint)\n : null,\n description:\n \"description\" in mergedInputProps\n ? childrenToString(mergedInputProps.description)\n : null,\n size: mergedInputProps.size,\n type: mergedInputProps.type,\n };\n\n const trackingId = useTrackingId({\n name: \"InputMask\",\n data,\n hasOverride: !!dataTrackingId,\n });\n\n return children && isValidElement(children) && children.type === \"input\" ? (\n cloneElement(children, {\n ...mergedInputProps,\n \"data-tracking-id\": trackingId,\n } as InputHTMLAttributes<HTMLInputElement> & {\n \"data-tracking-id\"?: string;\n })\n ) : (\n <TextField\n data-input-empty={isInputEmpty}\n data-tracking-id={trackingId}\n {...(mergedInputProps as TextFieldProps)}\n />\n );\n },\n);\n\nInputMask.displayName = \"InputMask\";\n"],"names":[],"mappings":"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"}
package/dist/InputMask.js CHANGED
@@ -1,2 +1,2 @@
1
- export { I as InputMask, I as default } from './InputMask-CNV0Ucli.js';
1
+ export { I as InputMask, I as default } from './InputMask-BQigi5oW.js';
2
2
  //# sourceMappingURL=InputMask.js.map
@@ -66,8 +66,8 @@ const InteractiveCard = forwardRef(
66
66
  if (href) window.open(href, "_blank", "noopener,noreferrer");
67
67
  };
68
68
  return (
69
- // Mouse-only dead-space forwarder. Keyboard users tab to the inner <button>/<a> and activate it natively (Enter/Space)
70
- // The wrapper itself is never focused. Adding a keyboard listener here would double-fire the action.
69
+ // The unfocusable wrapper forwards pointer clicks only; keyboard
70
+ // activation belongs to the inner action.
71
71
  // eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-noninteractive-element-interactions
72
72
  /* @__PURE__ */ jsxs(
73
73
  "div",
@@ -119,4 +119,4 @@ const InteractiveCard = forwardRef(
119
119
  InteractiveCard.displayName = "InteractiveCard";
120
120
 
121
121
  export { InteractiveCard as I };
122
- //# sourceMappingURL=InteractiveCard-C0g5PxB6.js.map
122
+ //# sourceMappingURL=InteractiveCard-C2CYRtgQ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InteractiveCard-C2CYRtgQ.js","sources":["../src/beta/components/InteractiveCard/InteractiveCard.tsx"],"sourcesContent":["import { forwardRef, type MouseEvent, type Ref, useRef } from \"react\";\nimport type {\n InteractiveCardProps,\n ActionLinkProps,\n ActionButtonProps,\n} from \"./types\";\nimport { Card } from \"../../../components/Card\";\nimport { KEYBOARD_FOCUSABLE_SELECTOR } from \"../../../internal/functions\";\nimport { useMergeRefs } from \"../../../hooks/useMergeRefs/useMergeRefs\";\n\nimport cx from \"classnames\";\nimport styles from \"./InteractiveCard.module.scss\";\n\n/**\n * Card whose non-control surface delegates to a button or link action while\n * nested controls remain independently interactive.\n */\nexport const InteractiveCard = forwardRef<HTMLDivElement, InteractiveCardProps>(\n (props, ref) => {\n const {\n wrapperProps,\n actionProps,\n contentProps = {},\n children,\n \"data-interactive\": dataInteractive,\n } = props as InteractiveCardProps & {\n \"data-interactive\"?: string;\n };\n\n const {\n \"aria-label\": ariaLabel,\n className: wrapperClassName,\n style: wrapperStyle,\n ref: wrapperRef,\n ...restWrapperProps\n } = wrapperProps;\n\n const mergedWrapperRef = useMergeRefs([ref, wrapperRef]);\n\n const { \"aria-label\": actionAriaLabel, ...restActionProps } = actionProps;\n\n const {\n padding = \"medium\",\n background,\n className: contentClassName,\n ...restContentProps\n } = contentProps;\n\n const actionClassNames = cx(styles[\"card-action\"], {\n [styles[`bg-${background}`]]: !!background,\n });\n\n const contentClassNames = cx(styles[\"card-content\"], contentClassName);\n\n const wrapperClassNames = cx(styles[\"card-wrapper\"], wrapperClassName);\n\n const isLink = \"href\" in restActionProps;\n\n const actionRef = useRef<HTMLButtonElement | HTMLAnchorElement>(null);\n\n // Labels join focusable controls here because they delegate activation to\n // their associated form control.\n const handleWrapperClick = (e: MouseEvent<HTMLDivElement>) => {\n const target = e.target as HTMLElement;\n if (target.closest(`label, ${KEYBOARD_FOCUSABLE_SELECTOR}`)) return;\n const action = actionRef.current;\n if (!action) return;\n\n // Programmatic clicks discard modifier state, so open modified link\n // activations explicitly.\n if (isLink && (e.metaKey || e.ctrlKey || e.shiftKey)) {\n const href = action.getAttribute(\"href\");\n if (href) {\n window.open(href, \"_blank\", \"noopener,noreferrer\");\n return;\n }\n }\n action.click();\n };\n\n // Middle-click arrives as `auxclick`, outside the primary click handler.\n const handleWrapperAuxClick = (e: MouseEvent<HTMLDivElement>) => {\n if (e.button !== 1 || !isLink) return;\n const target = e.target as HTMLElement;\n if (target.closest(`label, ${KEYBOARD_FOCUSABLE_SELECTOR}`)) return;\n const href = actionRef.current?.getAttribute(\"href\");\n if (href) window.open(href, \"_blank\", \"noopener,noreferrer\");\n };\n\n return (\n // The unfocusable wrapper forwards pointer clicks only; keyboard\n // activation belongs to the inner action.\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-noninteractive-element-interactions\n <div\n {...restWrapperProps}\n role=\"group\"\n aria-label={ariaLabel}\n className={wrapperClassNames}\n style={wrapperStyle}\n ref={mergedWrapperRef}\n onClick={handleWrapperClick}\n onAuxClick={handleWrapperAuxClick}\n >\n {isLink ? (\n <a\n {...(restActionProps as ActionLinkProps)}\n aria-label={actionAriaLabel}\n className={actionClassNames}\n data-interactive={dataInteractive}\n ref={actionRef as Ref<HTMLAnchorElement>}\n />\n ) : (\n <button\n {...(restActionProps as ActionButtonProps)}\n aria-label={actionAriaLabel}\n className={actionClassNames}\n data-interactive={dataInteractive}\n type=\"button\"\n ref={actionRef as Ref<HTMLButtonElement>}\n />\n )}\n\n <Card\n padding={padding}\n className={contentClassNames}\n {...restContentProps}\n >\n {children}\n </Card>\n </div>\n );\n },\n);\n\nInteractiveCard.displayName = \"InteractiveCard\";\n"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export { I as InteractiveCard } from './InteractiveCard-C0g5PxB6.js';
1
+ export { I as InteractiveCard } from './InteractiveCard-C2CYRtgQ.js';
2
2
  //# sourceMappingURL=InteractiveCard.js.map
@@ -213,6 +213,7 @@ const Layout = Object.assign(
213
213
  ) });
214
214
  }),
215
215
  {
216
+ /** Responsive grid cell with breakpoint-specific spans. */
216
217
  Item: LayoutItem
217
218
  }
218
219
  );
@@ -220,4 +221,4 @@ Layout.displayName = "Layout";
220
221
  const LayoutElement = Layout;
221
222
 
222
223
  export { Layout as L, LayoutItem as a, LayoutElement as b };
223
- //# sourceMappingURL=Layout-C2Q2hyLG.js.map
224
+ //# sourceMappingURL=Layout-C8fKY7Eh.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Layout-C8fKY7Eh.js","sources":["../src/components/Layout/Layout.tsx"],"sourcesContent":["import { type ComponentPropsWithoutRef, forwardRef } from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./Layout.module.scss\";\n\nexport type LayoutProps = ComponentPropsWithoutRef<\"div\"> & {\n /**\n * Removes the 1280px max width so the layout fills the available width.\n * Defaults to `false`. Leave unset unless the primary content needs more\n * than 1280px; density alone is not a reason to go fluid.\n */\n fluid?: boolean;\n /** Controls the responsive grid gaps. Defaults to `default`. */\n variant?: \"default\" | \"wide\" | \"narrow\";\n};\n\nexport type LayoutItemProps = ComponentPropsWithoutRef<\"div\"> & {\n /**\n * Fallback span for breakpoints without an override. Values above 4 fill\n * the four-column grid until it expands. Defaults to `12`.\n */\n span?: number;\n /** Base span; values above 4 fill the four-column grid until it expands. */\n xs?: number;\n /**\n * Overrides the span from the `sm` container breakpoint up. Values above 4\n * fill the four-column grid until the `md` breakpoint.\n */\n sm?: number;\n /** Overrides the span from the `md` container breakpoint up. */\n md?: number;\n /** Overrides the span from the `lg` container breakpoint up. */\n lg?: number;\n /** Overrides the span from the `xl` container breakpoint up. */\n xl?: number;\n /** Overrides the span from the `xxl` container breakpoint up. */\n xxl?: number;\n};\n\n/** Responsive cell for a {@link Layout} container-query grid. */\nexport const LayoutItem = forwardRef<HTMLDivElement, LayoutItemProps>(\n (\n { children, className, span = 12, xs, sm, md, lg, xl, xxl, ...props },\n ref,\n ) => {\n return (\n <div\n ref={ref}\n {...props}\n className={cx(\n styles.cell,\n styles[`xs${xs || span}`],\n {\n [styles[`sm${sm}`]]: sm,\n [styles[`md${md}`]]: md,\n [styles[`lg${lg}`]]: lg,\n [styles[`xl${xl}`]]: xl,\n [styles[`xxl${xxl}`]]: xxl,\n },\n className,\n )}\n >\n {children}\n </div>\n );\n },\n);\n\nLayoutItem.displayName = \"LayoutItem\";\n\n/**\n * Constrained, responsive grid driven by the container's width. Use\n * `Layout.Item` to set each cell's span.\n */\nexport const Layout = Object.assign(\n forwardRef<HTMLDivElement, LayoutProps>(function LayoutInner(props, ref) {\n const {\n children,\n className,\n fluid = false,\n variant = \"default\",\n ...rest\n } = props;\n\n return (\n <div className={cx(styles.container, { [styles.fluid]: fluid })}>\n <div\n className={cx(\n styles.grid,\n {\n [styles.wide]: variant === \"wide\",\n [styles.narrow]: variant === \"narrow\",\n },\n className,\n )}\n ref={ref}\n {...rest}\n >\n {children}\n </div>\n </div>\n );\n }),\n {\n /** Responsive grid cell with breakpoint-specific spans. */\n Item: LayoutItem,\n },\n);\nLayout.displayName = \"Layout\";\nexport const LayoutElement = Layout;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuCO,MAAM,UAAA,GAAa,UAAA;AAAA,EACxB,CACE,EAAE,QAAA,EAAU,SAAA,EAAW,OAAO,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,IAAI,EAAA,EAAI,GAAA,EAAK,GAAG,KAAA,IAC9D,GAAA,KACG;AACH,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACC,GAAG,KAAA;AAAA,QACJ,SAAA,EAAW,EAAA;AAAA,UACT,MAAA,CAAO,IAAA;AAAA,UACP,MAAA,CAAO,CAAA,EAAA,EAAK,EAAA,IAAM,IAAI,CAAA,CAAE,CAAA;AAAA,UACxB;AAAA,YACE,CAAC,MAAA,CAAO,CAAA,EAAA,EAAK,EAAE,CAAA,CAAE,CAAC,GAAG,EAAA;AAAA,YACrB,CAAC,MAAA,CAAO,CAAA,EAAA,EAAK,EAAE,CAAA,CAAE,CAAC,GAAG,EAAA;AAAA,YACrB,CAAC,MAAA,CAAO,CAAA,EAAA,EAAK,EAAE,CAAA,CAAE,CAAC,GAAG,EAAA;AAAA,YACrB,CAAC,MAAA,CAAO,CAAA,EAAA,EAAK,EAAE,CAAA,CAAE,CAAC,GAAG,EAAA;AAAA,YACrB,CAAC,MAAA,CAAO,CAAA,GAAA,EAAM,GAAG,CAAA,CAAE,CAAC,GAAG;AAAA,WACzB;AAAA,UACA;AAAA,SACF;AAAA,QAEC;AAAA;AAAA,KACH;AAAA,EAEJ;AACF;AAEA,UAAA,CAAW,WAAA,GAAc,YAAA;AAMlB,MAAM,SAAS,MAAA,CAAO,MAAA;AAAA,EAC3B,UAAA,CAAwC,SAAS,WAAA,CAAY,KAAA,EAAO,GAAA,EAAK;AACvE,IAAA,MAAM;AAAA,MACJ,QAAA;AAAA,MACA,SAAA;AAAA,MACA,KAAA,GAAQ,KAAA;AAAA,MACR,OAAA,GAAU,SAAA;AAAA,MACV,GAAG;AAAA,KACL,GAAI,KAAA;AAEJ,IAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,EAAA,CAAG,MAAA,CAAO,SAAA,EAAW,EAAE,CAAC,MAAA,CAAO,KAAK,GAAG,KAAA,EAAO,CAAA,EAC5D,QAAA,kBAAA,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,EAAA;AAAA,UACT,MAAA,CAAO,IAAA;AAAA,UACP;AAAA,YACE,CAAC,MAAA,CAAO,IAAI,GAAG,OAAA,KAAY,MAAA;AAAA,YAC3B,CAAC,MAAA,CAAO,MAAM,GAAG,OAAA,KAAY;AAAA,WAC/B;AAAA,UACA;AAAA,SACF;AAAA,QACA,GAAA;AAAA,QACC,GAAG,IAAA;AAAA,QAEH;AAAA;AAAA,KACH,EACF,CAAA;AAAA,EAEJ,CAAC,CAAA;AAAA,EACD;AAAA;AAAA,IAEE,IAAA,EAAM;AAAA;AAEV;AACA,MAAA,CAAO,WAAA,GAAc,QAAA;AACd,MAAM,aAAA,GAAgB;;;;"}
package/dist/Layout.js CHANGED
@@ -1,2 +1,2 @@
1
- export { L as Layout, b as LayoutElement, a as LayoutItem, L as default } from './Layout-C2Q2hyLG.js';
1
+ export { L as Layout, b as LayoutElement, a as LayoutItem, L as default } from './Layout-C8fKY7Eh.js';
2
2
  //# sourceMappingURL=Layout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Link-D7ycmfQ_.js","sources":["../../hammer-icon/mdi/round/open_in_new.svg","../src/components/Link/internal/LinkHeadless.tsx","../src/components/Link/useLinkStyles.ts","../src/components/Link/internal/Link.tsx","../src/components/Link/Link.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgOpenInNew = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M18 19H6c-.55 0-1-.45-1-1V6c0-.55.45-1 1-1h5c.55 0 1-.45 1-1s-.45-1-1-1H5a2 2 0 0 0-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-6c0-.55-.45-1-1-1s-1 .45-1 1v5c0 .55-.45 1-1 1zM14 4c0 .55.45 1 1 1h2.59l-9.13 9.13a.996.996 0 1 0 1.41 1.41L19 6.41V9c0 .55.45 1 1 1s1-.45 1-1V4c0-.55-.45-1-1-1h-5c-.55 0-1 .45-1 1z\" }));\nexport default SvgOpenInNew;\n","import { forwardRef, type ComponentPropsWithoutRef } from \"react\";\n\nimport styles from \"./Link.module.scss\";\nimport { Icon } from \"../../Icon\";\nimport OpenInNew from \"@servicetitan/hammer-icon/mdi/round/open_in_new.svg\";\n\n/**\n * Props for the LinkHeadless component.\n * @extends ComponentPropsWithoutRef<\"a\">\n */\nexport type LinkHeadlessProps = ComponentPropsWithoutRef<\"a\">;\n\n/**\n * Headless link component for creating accessible hyperlinks.\n *\n * Features:\n * - Security attributes (rel=\"noopener noreferrer\") for external links\n *\n * @example\n * <LinkHeadless href=\"/dashboard\">\n * Go to Dashboard\n * </LinkHeadless>\n *\n * @example\n * <LinkHeadless href=\"https://example.com\" target=\"_blank\">\n * External Documentation\n * </LinkHeadless>\n *\n */\nexport const LinkHeadless = forwardRef<HTMLAnchorElement, LinkHeadlessProps>(\n ({ children, ...props }, ref) => {\n return (\n <a\n rel=\"noopener noreferrer\"\n data-anv=\"link-headless\"\n ref={ref}\n {...props}\n >\n {children}\n {props.target === \"_blank\" && (\n <Icon className={styles[\"open-in-new\"]} inherit svg={OpenInNew} />\n )}\n </a>\n );\n },\n);\n\nLinkHeadless.displayName = \"LinkHeadless\";\n","import cx from \"classnames\";\n\nimport type { LayoutUtilProps } from \"../../types\";\nimport type { LinkProps } from \"./Link\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\n\nimport styles from \"./internal/Link.module.scss\";\n\n/**\n * Props for the useLinkStyles hook.\n * @extends LayoutUtilProps\n */\nexport type UseLinkStylesProps = LayoutUtilProps &\n Pick<LinkProps, \"className\" | \"appearance\" | \"ghost\" | \"style\">;\n\n/**\n * Hook for generating link styles and class names.\n *\n * @param props - The link style properties\n * @returns Object containing linkClassNames and styleCombined\n */\nexport const useLinkStyles = (props: UseLinkStylesProps) => {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const { className, appearance = \"primary\", ghost, style } = componentProps;\n\n const linkClassNames = cx([styles[\"link\"]], className, {\n [styles[\"ghost\"]]: ghost,\n [styles[\"secondary\"]]: appearance === \"secondary\",\n });\n\n const styleCombined = Object.assign({}, style, layoutStyles);\n\n return { linkClassNames, styleCombined };\n};\n","import { forwardRef, type ComponentPropsWithoutRef } from \"react\";\n\nimport type { LayoutUtilProps } from \"../../../types\";\n\nimport { LinkHeadless } from \"./LinkHeadless\";\n\nimport { useLinkStyles } from \"../useLinkStyles\";\n\n/**\n * Props for the Link component.\n * @extends ComponentPropsWithoutRef<\"a\">\n * @extends LayoutUtilProps\n */\nexport type LinkProps = ComponentPropsWithoutRef<\"a\"> &\n LayoutUtilProps &\n (\n | {\n /**\n * The visual appearance of the link.\n * @default \"primary\"\n */\n appearance?: \"primary\";\n /**\n * Whether the link should have a quieter, less prominent appearance\n * @remarks Only available when appearance is \"primary\".\n */\n ghost?: boolean;\n }\n | {\n /**\n * The visual appearance of the LinkButton. Secondary appearance cannot be ghost.\n */\n appearance: \"secondary\";\n /**\n * Whether the LinkButton should have a quieter, less prominent appearance.\n * @remarks Must be false when appearance is \"secondary\".\n */\n ghost?: false;\n }\n );\n\n/**\n * Link component for creating accessible, styled hyperlinks.\n *\n * Features:\n * - Two visual appearances: primary (default) and secondary\n * - Ghost mode for less prominent styling\n * - Automatic external link icon for target=\"_blank\" links\n * - Security attributes (rel=\"noopener noreferrer\") for external links\n * - Full accessibility support with proper focus management\n * - Supports layout utilities for positioning and spacing\n * - Flexible content support for text and other elements\n * - Responsive design with consistent typography\n * - Hover and focus states with proper visual feedback\n * - Screen reader support for external link announcements\n *\n * @example\n * <Link href=\"/dashboard\" appearance=\"primary\">\n * Go to Dashboard\n * </Link>\n *\n * @example\n * <Link href=\"https://example.com\" target=\"_blank\" ghost>\n * External Documentation\n * </Link>\n *\n * @example\n * <Link href=\"/settings\" appearance=\"secondary\">\n * Settings\n * </Link>\n *\n * @example\n * <Link href=\"/profile\" gap=\"2\" alignItems=\"center\">\n * <Avatar name=\"John Doe\" size=\"small\" />\n * View Profile\n * </Link>\n */\nexport const Link = forwardRef<HTMLAnchorElement, LinkProps>((props, ref) => {\n const { appearance, className, ghost, style, children, ...rest } = props;\n const { linkClassNames, styleCombined } = useLinkStyles({\n appearance,\n className,\n ghost,\n style,\n });\n\n return (\n <LinkHeadless\n className={linkClassNames}\n data-anv=\"link\"\n ref={ref}\n style={styleCombined}\n {...rest}\n >\n {children}\n </LinkHeadless>\n );\n});\n\nLink.displayName = \"Link\";\n","import { type Ref, forwardRef } from \"react\";\n\nimport { childrenToString } from \"../../internal/functions\";\nimport type { DataTrackingId, DistributiveOmit } from \"../../types\";\nimport { useTrackingId } from \"../../hooks\";\n\nimport {\n type LinkProps as BaseLinkProps,\n Link as BaseLink,\n} from \"./internal/Link\";\n\n/**\n * Props for the Link component.\n * @extends Omit<BaseLinkProps, \"href\">\n * @extends DataTrackingId\n */\nexport type LinkProps = DistributiveOmit<BaseLinkProps, \"href\"> &\n DataTrackingId &\n (\n | {\n pathname?: never;\n search?: never;\n href?: BaseLinkProps[\"href\"];\n }\n | {\n pathname: string;\n search?: string;\n href?: never;\n }\n | {\n pathname?: never;\n search?: never;\n href?: never;\n }\n );\n\n/**\n * Link component for creating accessible, styled hyperlinks with tracking support.\n *\n * Features:\n * - Two visual appearances: primary (default) and secondary\n * - Quiet mode for less prominent styling\n * - Automatic external link icon for target=\"_blank\" links\n * - Security attributes (rel=\"noopener noreferrer\") for external links\n * - Full accessibility support with proper focus management\n * - Supports layout utilities for positioning and spacing\n * - Flexible content support for text and other elements\n * - Responsive design with consistent typography\n * - Hover and focus states with proper visual feedback\n * - Screen reader support for external link announcements\n * - Automatic tracking ID generation for analytics\n * - Client-side navigation support with pathname and search params\n * - History API integration for single-page application navigation\n *\n * @example\n * <Link href=\"/dashboard\" appearance=\"primary\">\n * Go to Dashboard\n * </Link>\n *\n * @example\n * <Link pathname=\"/settings\" search=\"?tab=profile\">\n * Profile Settings\n * </Link>\n *\n * @example\n * <Link href=\"https://example.com\" target=\"_blank\" ghost>\n * External Documentation\n * </Link>\n *\n * @example\n * <Link href=\"/profile\" gap=\"2\" alignItems=\"center\">\n * <Avatar name=\"John Doe\" size=\"small\" />\n * View Profile\n * </Link>\n */\nexport const Link = forwardRef(\n (props: LinkProps, ref: Ref<HTMLAnchorElement>) => {\n const { onClick, pathname, children, search, ...rest } = props;\n const data = {\n appearance: props.appearance,\n ghost: props.ghost,\n children: childrenToString(children),\n };\n\n const handleClick = (\n ...args: Parameters<NonNullable<LinkProps[\"onClick\"]>>\n ) => {\n if (pathname) {\n const to = pathname + (search ?? \"\");\n args[0].preventDefault();\n history.pushState(null, \"\", to);\n onClick?.(...args);\n } else {\n onClick?.(...args);\n }\n };\n\n const trackingId = useTrackingId({\n name: \"Link\",\n data,\n hasOverride: !!rest[\"data-tracking-id\"],\n });\n\n return (\n <BaseLink\n onClick={handleClick}\n ref={ref}\n data-tracking-id={trackingId}\n {...rest}\n >\n {children}\n </BaseLink>\n );\n },\n);\n\nLink.displayName = BaseLink.displayName;\n"],"names":["OpenInNew","Link","BaseLink"],"mappings":"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"}
1
+ {"version":3,"file":"Link-D7ycmfQ_.js","sources":["../../hammer-icon/mdi/round/open_in_new.svg","../src/components/Link/internal/LinkHeadless.tsx","../src/components/Link/useLinkStyles.ts","../src/components/Link/internal/Link.tsx","../src/components/Link/Link.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgOpenInNew = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M18 19H6c-.55 0-1-.45-1-1V6c0-.55.45-1 1-1h5c.55 0 1-.45 1-1s-.45-1-1-1H5a2 2 0 0 0-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-6c0-.55-.45-1-1-1s-1 .45-1 1v5c0 .55-.45 1-1 1zM14 4c0 .55.45 1 1 1h2.59l-9.13 9.13a.996.996 0 1 0 1.41 1.41L19 6.41V9c0 .55.45 1 1 1s1-.45 1-1V4c0-.55-.45-1-1-1h-5c-.55 0-1 .45-1 1z\" }));\nexport default SvgOpenInNew;\n","import { forwardRef, type ComponentPropsWithoutRef } from \"react\";\n\nimport styles from \"./Link.module.scss\";\nimport { Icon } from \"../../Icon\";\nimport OpenInNew from \"@servicetitan/hammer-icon/mdi/round/open_in_new.svg\";\n\n/** @extends ComponentPropsWithoutRef<\"a\"> */\nexport type LinkHeadlessProps = ComponentPropsWithoutRef<\"a\">;\n\n/**\n * Unstyled anchor. Defaults `rel` to `noopener noreferrer`. `target=\"_blank\"`\n * appends an external-link icon.\n */\nexport const LinkHeadless = forwardRef<HTMLAnchorElement, LinkHeadlessProps>(\n ({ children, ...props }, ref) => {\n return (\n <a\n rel=\"noopener noreferrer\"\n data-anv=\"link-headless\"\n ref={ref}\n {...props}\n >\n {children}\n {props.target === \"_blank\" && (\n <Icon className={styles[\"open-in-new\"]} inherit svg={OpenInNew} />\n )}\n </a>\n );\n },\n);\n\nLinkHeadless.displayName = \"LinkHeadless\";\n","import cx from \"classnames\";\n\nimport type { LayoutUtilProps } from \"../../types\";\nimport type { LinkProps } from \"./Link\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\n\nimport styles from \"./internal/Link.module.scss\";\n\n/** @extends LayoutUtilProps */\nexport type UseLinkStylesProps = LayoutUtilProps &\n Pick<LinkProps, \"className\" | \"appearance\" | \"ghost\" | \"style\">;\n\n/**\n * Class names and inline styles for Anvil2 link appearance, including layout\n * utilities. Appearance defaults to `primary`.\n */\nexport const useLinkStyles = (props: UseLinkStylesProps) => {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const { className, appearance = \"primary\", ghost, style } = componentProps;\n\n const linkClassNames = cx([styles[\"link\"]], className, {\n [styles[\"ghost\"]]: ghost,\n [styles[\"secondary\"]]: appearance === \"secondary\",\n });\n\n const styleCombined = Object.assign({}, style, layoutStyles);\n\n return { linkClassNames, styleCombined };\n};\n","import { forwardRef, type ComponentPropsWithoutRef } from \"react\";\n\nimport type { LayoutUtilProps } from \"../../../types\";\n\nimport { LinkHeadless } from \"./LinkHeadless\";\n\nimport { useLinkStyles } from \"../useLinkStyles\";\n\n/**\n * `ghost` is only valid with the default `primary` appearance.\n *\n * @extends ComponentPropsWithoutRef<\"a\">\n * @extends LayoutUtilProps\n */\nexport type LinkProps = ComponentPropsWithoutRef<\"a\"> &\n LayoutUtilProps &\n (\n | {\n /** Visual emphasis. Defaults to `primary`. */\n appearance?: \"primary\";\n /** Quieter styling. Only with `appearance=\"primary\"`. */\n ghost?: boolean;\n }\n | {\n /** Visual emphasis. Cannot be combined with `ghost`. */\n appearance: \"secondary\";\n /** Not available with `secondary`. */\n ghost?: false;\n }\n );\n\n/** Styled wrapper around {@link LinkHeadless}. */\nexport const Link = forwardRef<HTMLAnchorElement, LinkProps>((props, ref) => {\n const { appearance, className, ghost, style, children, ...rest } = props;\n const { linkClassNames, styleCombined } = useLinkStyles({\n appearance,\n className,\n ghost,\n style,\n });\n\n return (\n <LinkHeadless\n className={linkClassNames}\n data-anv=\"link\"\n ref={ref}\n style={styleCombined}\n {...rest}\n >\n {children}\n </LinkHeadless>\n );\n});\n\nLink.displayName = \"Link\";\n","import { type Ref, forwardRef } from \"react\";\n\nimport { childrenToString } from \"../../internal/functions\";\nimport type { DataTrackingId, DistributiveOmit } from \"../../types\";\nimport { useTrackingId } from \"../../hooks\";\n\nimport {\n type LinkProps as BaseLinkProps,\n Link as BaseLink,\n} from \"./internal/Link\";\n\n/**\n * `href` and `pathname` are mutually exclusive. `pathname` (plus optional\n * `search`) navigates with `history.pushState` instead of a default jump.\n *\n * @extends Omit<BaseLinkProps, \"href\">\n * @extends DataTrackingId\n */\nexport type LinkProps = DistributiveOmit<BaseLinkProps, \"href\"> &\n DataTrackingId &\n (\n | {\n pathname?: never;\n search?: never;\n /** Native href. Mutually exclusive with `pathname`. */\n href?: BaseLinkProps[\"href\"];\n }\n | {\n /**\n * Client-side path. Prevents the default jump and calls\n * `history.pushState`. Mutually exclusive with `href`.\n */\n pathname: string;\n /**\n * Suffix appended to `pathname` as-is. Include `?` or `#` when needed.\n */\n search?: string;\n href?: never;\n }\n | {\n pathname?: never;\n search?: never;\n href?: never;\n }\n );\n\n/**\n * Styled hyperlink. `target=\"_blank\"` appends an external-link icon.\n */\nexport const Link = forwardRef(\n (props: LinkProps, ref: Ref<HTMLAnchorElement>) => {\n const { onClick, pathname, children, search, ...rest } = props;\n const data = {\n appearance: props.appearance,\n ghost: props.ghost,\n children: childrenToString(children),\n };\n\n const handleClick = (\n ...args: Parameters<NonNullable<LinkProps[\"onClick\"]>>\n ) => {\n if (pathname) {\n const to = pathname + (search ?? \"\");\n args[0].preventDefault();\n history.pushState(null, \"\", to);\n onClick?.(...args);\n } else {\n onClick?.(...args);\n }\n };\n\n const trackingId = useTrackingId({\n name: \"Link\",\n data,\n hasOverride: !!rest[\"data-tracking-id\"],\n });\n\n return (\n <BaseLink\n onClick={handleClick}\n ref={ref}\n data-tracking-id={trackingId}\n {...rest}\n >\n {children}\n </BaseLink>\n );\n },\n);\n\nLink.displayName = BaseLink.displayName;\n"],"names":["OpenInNew","Link","BaseLink"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"LinkButton-C0wps8r1.js","sources":["../src/components/LinkButton/LinkButton.tsx"],"sourcesContent":["import { type ComponentPropsWithoutRef, type Ref, forwardRef } from \"react\";\nimport { useTrackingId } from \"../../hooks/useTrackingId\";\nimport type { DataTrackingId } from \"../../types/DataTrackingId\";\nimport type { LayoutUtilProps } from \"../../types\";\nimport { childrenToString } from \"../../internal/functions\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\n\nimport cx from \"classnames\";\nimport styles from \"../Link/internal/Link.module.scss\";\n\n/**\n * Props for the Link component.\n * @extends CoreLinkButtonProps\n * @extends DataTrackingId\n */\nexport type LinkButtonProps = Omit<\n ComponentPropsWithoutRef<\"button\">,\n \"type\" | \"disabled\"\n> &\n LayoutUtilProps &\n (\n | {\n /**\n * The visual appearance of the LinkButton.\n * @default \"primary\"\n */\n appearance?: \"primary\";\n /**\n * Whether the LinkButton should have a quieter, less prominent appearance.\n * @remarks Only available when appearance is \"primary\".\n */\n ghost?: boolean;\n }\n | {\n /**\n * The visual appearance of the LinkButton. Secondary appearance cannot be ghost.\n */\n appearance: \"secondary\";\n /**\n * Whether the LinkButton should have a quieter, less prominent appearance.\n * @remarks Must be false when appearance is \"secondary\".\n */\n ghost?: false;\n }\n ) &\n DataTrackingId;\n\n/**\n * LinkButton component — a `<button>` styled to look like a text link,\n * for triggering actions (not navigation; use `Link` for navigation).\n *\n * Features:\n * - Primary appearance with an optional quieter `ghost` variant\n * - Secondary appearance (cannot be combined with `ghost`)\n * - Supports layout utility props for positioning and spacing\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <LinkButton onClick={() => console.log('clicked')}>Learn more</LinkButton>\n */\nexport const LinkButton = forwardRef(\n (props: LinkButtonProps, ref: Ref<HTMLButtonElement>) => {\n const data = {\n appearance: props.appearance,\n ghost: props.ghost,\n children: childrenToString(props.children),\n };\n\n const trackingId = useTrackingId({\n name: \"Link\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const {\n children,\n className,\n appearance = \"primary\",\n ghost,\n style,\n ...rest\n } = componentProps;\n\n const linkClassNames = cx([styles[\"link\"]], className, {\n [styles[\"ghost\"]]: ghost,\n [styles[\"secondary\"]]: appearance === \"secondary\",\n });\n\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n return (\n <button\n className={linkClassNames}\n data-anv=\"link-button\"\n ref={ref}\n style={styleCombined}\n data-tracking-id={trackingId}\n {...rest}\n >\n {children}\n </button>\n );\n },\n);\n\nLinkButton.displayName = \"LinkButton\";\n"],"names":[],"mappings":";;;;;;;;AA4DO,MAAM,UAAA,GAAa,UAAA;AAAA,EACxB,CAAC,OAAwB,GAAA,KAAgC;AACvD,IAAA,MAAM,IAAA,GAAO;AAAA,MACX,YAAY,KAAA,CAAM,UAAA;AAAA,MAClB,OAAO,KAAA,CAAM,KAAA;AAAA,MACb,QAAA,EAAU,gBAAA,CAAiB,KAAA,CAAM,QAAQ;AAAA,KAC3C;AAEA,IAAA,MAAM,aAAa,aAAA,CAAc;AAAA,MAC/B,IAAA,EAAM,MAAA;AAAA,MACN,IAAA;AAAA,MACA,WAAA,EAAa,CAAC,CAAC,KAAA,CAAM,kBAAkB;AAAA,KACxC,CAAA;AAED,IAAA,MAAM,EAAE,YAAA,EAAc,cAAA,EAAe,GAAI,mBAAmB,KAAK,CAAA;AACjE,IAAA,MAAM;AAAA,MACJ,QAAA;AAAA,MACA,SAAA;AAAA,MACA,UAAA,GAAa,SAAA;AAAA,MACb,KAAA;AAAA,MACA,KAAA;AAAA,MACA,GAAG;AAAA,KACL,GAAI,cAAA;AAEJ,IAAA,MAAM,iBAAiB,EAAA,CAAG,CAAC,OAAO,MAAM,CAAC,GAAG,SAAA,EAAW;AAAA,MACrD,CAAC,MAAA,CAAO,OAAO,CAAC,GAAG,KAAA;AAAA,MACnB,CAAC,MAAA,CAAO,WAAW,CAAC,GAAG,UAAA,KAAe;AAAA,KACvC,CAAA;AAED,IAAA,MAAM,aAAA,GAAgB;AAAA,MACpB,GAAG,KAAA;AAAA,MACH,GAAG;AAAA,KACL;AAEA,IAAA,uBACE,GAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,cAAA;AAAA,QACX,UAAA,EAAS,aAAA;AAAA,QACT,GAAA;AAAA,QACA,KAAA,EAAO,aAAA;AAAA,QACP,kBAAA,EAAkB,UAAA;AAAA,QACjB,GAAG,IAAA;AAAA,QAEH;AAAA;AAAA,KACH;AAAA,EAEJ;AACF;AAEA,UAAA,CAAW,WAAA,GAAc,YAAA;;;;"}
1
+ {"version":3,"file":"LinkButton-C0wps8r1.js","sources":["../src/components/LinkButton/LinkButton.tsx"],"sourcesContent":["import { type ComponentPropsWithoutRef, type Ref, forwardRef } from \"react\";\nimport { useTrackingId } from \"../../hooks/useTrackingId\";\nimport type { DataTrackingId } from \"../../types/DataTrackingId\";\nimport type { LayoutUtilProps } from \"../../types\";\nimport { childrenToString } from \"../../internal/functions\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\n\nimport cx from \"classnames\";\nimport styles from \"../Link/internal/Link.module.scss\";\n\n/**\n * `ghost` is only valid with the default `primary` appearance.\n *\n * @extends Omit<ComponentPropsWithoutRef<\"button\">, \"type\" | \"disabled\">\n * @extends LayoutUtilProps\n * @extends DataTrackingId\n */\nexport type LinkButtonProps = Omit<\n ComponentPropsWithoutRef<\"button\">,\n \"type\" | \"disabled\"\n> &\n LayoutUtilProps &\n (\n | {\n /** Visual emphasis. Defaults to `primary`. */\n appearance?: \"primary\";\n /** Quieter styling. Only with `appearance=\"primary\"`. */\n ghost?: boolean;\n }\n | {\n /** Visual emphasis. Cannot be combined with `ghost`. */\n appearance: \"secondary\";\n /** Not available with `secondary`. */\n ghost?: false;\n }\n ) &\n DataTrackingId;\n\n/**\n * Button with text-link styling. Use {@link Link} for navigation.\n */\nexport const LinkButton = forwardRef(\n (props: LinkButtonProps, ref: Ref<HTMLButtonElement>) => {\n const data = {\n appearance: props.appearance,\n ghost: props.ghost,\n children: childrenToString(props.children),\n };\n\n const trackingId = useTrackingId({\n name: \"Link\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const {\n children,\n className,\n appearance = \"primary\",\n ghost,\n style,\n ...rest\n } = componentProps;\n\n const linkClassNames = cx([styles[\"link\"]], className, {\n [styles[\"ghost\"]]: ghost,\n [styles[\"secondary\"]]: appearance === \"secondary\",\n });\n\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n return (\n <button\n className={linkClassNames}\n data-anv=\"link-button\"\n ref={ref}\n style={styleCombined}\n data-tracking-id={trackingId}\n {...rest}\n >\n {children}\n </button>\n );\n },\n);\n\nLinkButton.displayName = \"LinkButton\";\n"],"names":[],"mappings":";;;;;;;;AAyCO,MAAM,UAAA,GAAa,UAAA;AAAA,EACxB,CAAC,OAAwB,GAAA,KAAgC;AACvD,IAAA,MAAM,IAAA,GAAO;AAAA,MACX,YAAY,KAAA,CAAM,UAAA;AAAA,MAClB,OAAO,KAAA,CAAM,KAAA;AAAA,MACb,QAAA,EAAU,gBAAA,CAAiB,KAAA,CAAM,QAAQ;AAAA,KAC3C;AAEA,IAAA,MAAM,aAAa,aAAA,CAAc;AAAA,MAC/B,IAAA,EAAM,MAAA;AAAA,MACN,IAAA;AAAA,MACA,WAAA,EAAa,CAAC,CAAC,KAAA,CAAM,kBAAkB;AAAA,KACxC,CAAA;AAED,IAAA,MAAM,EAAE,YAAA,EAAc,cAAA,EAAe,GAAI,mBAAmB,KAAK,CAAA;AACjE,IAAA,MAAM;AAAA,MACJ,QAAA;AAAA,MACA,SAAA;AAAA,MACA,UAAA,GAAa,SAAA;AAAA,MACb,KAAA;AAAA,MACA,KAAA;AAAA,MACA,GAAG;AAAA,KACL,GAAI,cAAA;AAEJ,IAAA,MAAM,iBAAiB,EAAA,CAAG,CAAC,OAAO,MAAM,CAAC,GAAG,SAAA,EAAW;AAAA,MACrD,CAAC,MAAA,CAAO,OAAO,CAAC,GAAG,KAAA;AAAA,MACnB,CAAC,MAAA,CAAO,WAAW,CAAC,GAAG,UAAA,KAAe;AAAA,KACvC,CAAA;AAED,IAAA,MAAM,aAAA,GAAgB;AAAA,MACpB,GAAG,KAAA;AAAA,MACH,GAAG;AAAA,KACL;AAEA,IAAA,uBACE,GAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,cAAA;AAAA,QACX,UAAA,EAAS,aAAA;AAAA,QACT,GAAA;AAAA,QACA,KAAA,EAAO,aAAA;AAAA,QACP,kBAAA,EAAkB,UAAA;AAAA,QACjB,GAAG,IAAA;AAAA,QAEH;AAAA;AAAA,KACH;AAAA,EAEJ;AACF;AAEA,UAAA,CAAW,WAAA,GAAc,YAAA;;;;"}
@@ -84,20 +84,11 @@ const List = Object.assign(
84
84
  }
85
85
  ),
86
86
  {
87
- /**
88
- * ListItem component for individual items within a List.
89
- *
90
- * Features:
91
- * - Renders as a semantic list item (li)
92
- * - Supports layout and styling via standard HTML attributes
93
- *
94
- * @example
95
- * <List.Item>Item content</List.Item>
96
- */
87
+ /** Semantic `li` inside a {@link List}. */
97
88
  Item: ListItem
98
89
  }
99
90
  );
100
91
  List.displayName = "List";
101
92
 
102
93
  export { List as L };
103
- //# sourceMappingURL=List-BvzfZ9TW.js.map
94
+ //# sourceMappingURL=List-CTr2fk7l.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"List-CTr2fk7l.js","sources":["../src/components/List/ListItem.tsx","../src/components/List/List.tsx"],"sourcesContent":["import { type ComponentPropsWithoutRef, forwardRef, type Ref } from \"react\";\n\nimport cx from \"classnames\";\nimport styles from \"./List.module.scss\";\n\nexport type ListItemProps = ComponentPropsWithoutRef<\"li\">;\n\n/** Semantic `li` inside a {@link List}. */\nexport const ListItem = forwardRef<HTMLLIElement, ListItemProps>(\n (props, ref: Ref<HTMLLIElement>) => {\n const { className, children, ...rest } = props;\n\n return (\n <li\n ref={ref}\n className={cx(styles[\"item\"], className)}\n data-anv=\"list-item\"\n {...rest}\n >\n {children}\n </li>\n );\n },\n);\n\nListItem.displayName = \"ListItem\";\n","import { type ComponentPropsWithoutRef, forwardRef, type Ref } from \"react\";\nimport type { LayoutUtilProps, Size } from \"../../types\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\nimport { ListItem } from \"./ListItem\";\n\nimport cx from \"classnames\";\nimport styles from \"./List.module.scss\";\n\n/** Subset of {@link Size} used by {@link List}. */\nexport type ListSize = Extract<Size, \"small\" | \"medium\" | \"large\">;\n\nexport type UnorderedListProps = ComponentPropsWithoutRef<\"ul\"> &\n LayoutUtilProps & {\n /** Renders a `ul`. Defaults to `unordered` when omitted on {@link List}. */\n variant?: \"unordered\";\n /** List typography. Defaults to `medium`. */\n size?: ListSize;\n };\n\nexport type OrderedListProps = ComponentPropsWithoutRef<\"ol\"> &\n LayoutUtilProps & {\n /** Renders an `ol`. Required to select this branch. */\n variant: \"ordered\";\n /** List typography. Defaults to `medium`. */\n size?: ListSize;\n };\n\n/**\n * Discriminated by `variant`. Omit `variant` for a `ul`; pass\n * `variant=\"ordered\"` for an `ol` (including `start` and other `ol` attributes).\n */\nexport type ListProps = UnorderedListProps | OrderedListProps;\n\n/**\n * Styled `ul` or `ol`. Use {@link List.Item} for children; nested `List`\n * instances indent as sublists.\n */\nexport const List = Object.assign(\n forwardRef<HTMLUListElement | HTMLOListElement, ListProps>(\n function ListInner(props, ref) {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const {\n className,\n children,\n variant = \"unordered\",\n size = \"medium\",\n style,\n ...rest\n } = componentProps;\n\n const listClasses = cx(styles[\"list\"], className, {\n [styles[\"unordered\"]]: variant === \"unordered\",\n [styles[\"ordered\"]]: variant === \"ordered\",\n [styles[\"small\"]]: size === \"small\",\n [styles[\"large\"]]: size === \"large\",\n });\n\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n if (variant === \"ordered\") {\n return (\n <ol\n ref={ref as Ref<HTMLOListElement>}\n className={listClasses}\n style={styleCombined}\n data-anv=\"list\"\n {...rest}\n >\n {children}\n </ol>\n );\n }\n\n return (\n <ul\n ref={ref as Ref<HTMLUListElement>}\n className={listClasses}\n style={styleCombined}\n data-anv=\"list\"\n {...rest}\n >\n {children}\n </ul>\n );\n },\n ),\n {\n /** Semantic `li` inside a {@link List}. */\n Item: ListItem,\n },\n);\nList.displayName = \"List\";\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAQO,MAAM,QAAA,GAAW,UAAA;AAAA,EACtB,CAAC,OAAO,GAAA,KAA4B;AAClC,IAAA,MAAM,EAAE,SAAA,EAAW,QAAA,EAAU,GAAG,MAAK,GAAI,KAAA;AAEzC,IAAA,uBACE,GAAA;AAAA,MAAC,IAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,SAAA,EAAW,EAAA,CAAG,MAAA,CAAO,MAAM,GAAG,SAAS,CAAA;AAAA,QACvC,UAAA,EAAS,WAAA;AAAA,QACR,GAAG,IAAA;AAAA,QAEH;AAAA;AAAA,KACH;AAAA,EAEJ;AACF,CAAA;AAEA,QAAA,CAAS,WAAA,GAAc,UAAA;;ACYhB,MAAM,OAAO,MAAA,CAAO,MAAA;AAAA,EACzB,UAAA;AAAA,IACE,SAAS,SAAA,CAAU,KAAA,EAAO,GAAA,EAAK;AAC7B,MAAA,MAAM,EAAE,YAAA,EAAc,cAAA,EAAe,GAAI,mBAAmB,KAAK,CAAA;AACjE,MAAA,MAAM;AAAA,QACJ,SAAA;AAAA,QACA,QAAA;AAAA,QACA,OAAA,GAAU,WAAA;AAAA,QACV,IAAA,GAAO,QAAA;AAAA,QACP,KAAA;AAAA,QACA,GAAG;AAAA,OACL,GAAI,cAAA;AAEJ,MAAA,MAAM,WAAA,GAAc,EAAA,CAAG,MAAA,CAAO,MAAM,GAAG,SAAA,EAAW;AAAA,QAChD,CAAC,MAAA,CAAO,WAAW,CAAC,GAAG,OAAA,KAAY,WAAA;AAAA,QACnC,CAAC,MAAA,CAAO,SAAS,CAAC,GAAG,OAAA,KAAY,SAAA;AAAA,QACjC,CAAC,MAAA,CAAO,OAAO,CAAC,GAAG,IAAA,KAAS,OAAA;AAAA,QAC5B,CAAC,MAAA,CAAO,OAAO,CAAC,GAAG,IAAA,KAAS;AAAA,OAC7B,CAAA;AAED,MAAA,MAAM,aAAA,GAAgB;AAAA,QACpB,GAAG,KAAA;AAAA,QACH,GAAG;AAAA,OACL;AAEA,MAAA,IAAI,YAAY,SAAA,EAAW;AACzB,QAAA,uBACE,GAAA;AAAA,UAAC,IAAA;AAAA,UAAA;AAAA,YACC,GAAA;AAAA,YACA,SAAA,EAAW,WAAA;AAAA,YACX,KAAA,EAAO,aAAA;AAAA,YACP,UAAA,EAAS,MAAA;AAAA,YACR,GAAG,IAAA;AAAA,YAEH;AAAA;AAAA,SACH;AAAA,MAEJ;AAEA,MAAA,uBACE,GAAA;AAAA,QAAC,IAAA;AAAA,QAAA;AAAA,UACC,GAAA;AAAA,UACA,SAAA,EAAW,WAAA;AAAA,UACX,KAAA,EAAO,aAAA;AAAA,UACP,UAAA,EAAS,MAAA;AAAA,UACR,GAAG,IAAA;AAAA,UAEH;AAAA;AAAA,OACH;AAAA,IAEJ;AAAA,GACF;AAAA,EACA;AAAA;AAAA,IAEE,IAAA,EAAM;AAAA;AAEV;AACA,IAAA,CAAK,WAAA,GAAc,MAAA;;;;"}
package/dist/List.js CHANGED
@@ -1,2 +1,2 @@
1
- export { L as List, L as default } from './List-BvzfZ9TW.js';
1
+ export { L as List, L as default } from './List-CTr2fk7l.js';
2
2
  //# sourceMappingURL=List.js.map
@@ -1,6 +1,6 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { createContext, useContext, forwardRef, useRef, useId, useEffect, useMemo, useState } from 'react';
3
- import { C as Checkbox } from './Checkbox-Cn4iNLW_.js';
3
+ import { C as Checkbox } from './Checkbox-U-kuWhgc.js';
4
4
  import { c as cx } from './index-De1g9FRV.js';
5
5
  import { s as styles } from './ListView.module-DfqtCL3Q.js';
6
6
  import { u as useMergeRefs } from './useMergeRefs-Dfmtq9cI.js';
@@ -506,34 +506,12 @@ ListViewInner.displayName = "ListView";
506
506
  const ListView = Object.assign(
507
507
  forwardRef(ListViewInner),
508
508
  {
509
- /**
510
- * ListViewOption component for individual selectable items within a listview.
511
- *
512
- * Features:
513
- * - Displays selectable options with proper ARIA attributes
514
- * - Supports disabled state for non-selectable options
515
- * - Keyboard navigation support
516
- * - Accessible with screen reader support
517
- * - Automatic tracking ID generation for analytics
518
- *
519
- * @example
520
- * <ListView.Option item={{ label: "Option 1" }} />
521
- */
509
+ /** Selectable row with a leading checkbox. */
522
510
  Option: ListViewOption,
523
- /**
524
- * ListViewOptionCell component for rendering a cell within a listview option.
525
- *
526
- * Features:
527
- * - Renders a grid cell for option content
528
- * - Supports custom content and layout
529
- * - Accessible with proper ARIA attributes
530
- *
531
- * @example
532
- * <ListView.OptionCell>Custom cell content</ListView.OptionCell>
533
- */
511
+ /** Extra grid cell inside an option row. */
534
512
  OptionCell: ListViewOptionCell
535
513
  }
536
514
  );
537
515
 
538
516
  export { ListView as L, ListViewOption as a, ListViewOptionCell as b };
539
- //# sourceMappingURL=ListView-DFAWrwzi.js.map
517
+ //# sourceMappingURL=ListView-YJscfG4x.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListView-YJscfG4x.js","sources":["../src/internal/functions/mapOrder.ts","../src/components/ListView/internal/ListViewContext.ts","../src/components/ListView/ListViewOption.tsx","../src/components/ListView/ListViewOptionCell.tsx","../src/components/ListView/internal/utils.ts","../src/components/ListView/ListView.tsx"],"sourcesContent":["/**\n * Sorts a copy of `array` by each item's `key` against `order`. Keys missing\n * from `order` sort first (`indexOf` is `-1`).\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function mapOrder(array: any[], order: any[], key: string) {\n const sortedArray = [...array];\n sortedArray.sort((a, b) => {\n const A = a[key],\n B = b[key];\n\n if (order.indexOf(A) > order.indexOf(B)) {\n return 1;\n } else {\n return -1;\n }\n });\n\n return sortedArray;\n}\n","import {\n type Dispatch,\n type SetStateAction,\n createContext,\n useContext,\n} from \"react\";\nimport type { Option } from \"./types\";\n\nexport type ListViewContextProps = {\n options?: Option[];\n onSelectionChange?: (value: unknown[]) => void;\n selectedItems: unknown[];\n indeterminateItems: unknown[];\n items?: unknown[];\n setSelectedItems: Dispatch<\n SetStateAction<ListViewContextProps[\"selectedItems\"]>\n >;\n controlled?: boolean;\n};\n\nexport const ListViewContext = createContext<ListViewContextProps | null>(null);\n\n/**\n * Reads the required listview context.\n * @throws When called outside a ListView.\n */\nexport function useListView() {\n const context = useContext(ListViewContext);\n\n if (context == null) {\n throw new Error(\"useListView must be wrapped in <ListView />\");\n }\n\n return context;\n}\n","import {\n type ChangeEvent,\n type ComponentPropsWithoutRef,\n forwardRef,\n useEffect,\n useId,\n useMemo,\n useRef,\n} from \"react\";\nimport { Checkbox, type CheckboxProps } from \"../Checkbox\";\nimport { useMergeRefs, useTrackingId } from \"../../hooks\";\n\nimport cx from \"classnames\";\nimport styles from \"./ListView.module.scss\";\nimport type { CheckboxState } from \"../Checkbox/types\";\nimport { useListView } from \"./internal/ListViewContext\";\nimport type { DataTrackingId } from \"../../types\";\n\ntype ItemType = {\n label: string;\n disabled?: boolean;\n [key: string]: unknown;\n};\n\n/** @extends ComponentPropsWithoutRef<\"div\"> */\nexport type ListViewOptionProps = Omit<\n ComponentPropsWithoutRef<\"div\">,\n \"onChange\"\n> & {\n /** Prevents focus and selection. An `item` can also disable it. */\n disabled?: boolean;\n /**\n * Checkbox change. The second argument is `{ checked }` from the current\n * selection, not the post-toggle value.\n */\n onChange?: (e: ChangeEvent<HTMLInputElement>, state?: CheckboxState) => void;\n} & (\n | {\n /** Item from the parent's `items` array, passed through to selection callbacks. */\n item: ItemType;\n }\n | {\n /** Selection identity. Visible content comes from `children`. */\n label: string;\n }\n ) &\n DataTrackingId;\n\n/** Selectable row with a leading checkbox. */\nexport const ListViewOption = forwardRef<HTMLDivElement, ListViewOptionProps>(\n (props, ref) => {\n const {\n className,\n children,\n onChange,\n style,\n disabled: disabledProp,\n ...remainingProps\n } = props;\n\n const optionRef = useRef<HTMLDivElement>(null);\n const mergedRef = useMergeRefs([ref, optionRef]);\n\n const cellRef = useRef<HTMLDivElement>(null);\n const rowId = useId();\n const {\n selectedItems,\n setSelectedItems,\n indeterminateItems,\n controlled,\n onSelectionChange,\n } = useListView();\n const disabled =\n \"item\" in remainingProps\n ? disabledProp || remainingProps.item.disabled\n : disabledProp;\n\n useEffect(() => {\n const focusables = optionRef.current?.querySelectorAll(\n \"button:not(:disabled):not([aria-disabled='true']), input:not(:disabled):not([aria-disabled='true']), [tabindex='0']:not(:disabled):not([aria-disabled='true'])\",\n );\n focusables?.forEach((item, i) => {\n item.setAttribute(\"tabindex\", \"-1\");\n if (item.hasAttribute(\"id\")) return;\n item.setAttribute(\"id\", `${rowId}-${i}`);\n });\n }, [rowId]);\n\n const label =\n \"item\" in remainingProps\n ? remainingProps.item.label\n : remainingProps.label;\n\n const isSelected = useMemo(\n () => matchInArray(label, selectedItems),\n [selectedItems, label],\n );\n\n const isIndeterminate = useMemo(\n () => matchInArray(label, indeterminateItems),\n [indeterminateItems, label],\n );\n\n const onChangeHandler: CheckboxProps[\"onChange\"] = (e) => {\n onChange?.(e, { checked: isSelected });\n };\n\n const onClickHandler: CheckboxProps[\"onClick\"] = () => {\n updateSelectedItems();\n };\n\n const removeItemFromSelectedItems = (itemLabelToRemove: string) => {\n return (selectedItems as (ItemType | string)[]).filter(\n (potentialRemove) => {\n if (typeof potentialRemove === \"string\") {\n return potentialRemove !== itemLabelToRemove;\n }\n return potentialRemove.label !== itemLabelToRemove;\n },\n );\n };\n\n const addItemFromSelectedItems = (itemToAdd: ItemType | string) => {\n return [...selectedItems, itemToAdd];\n };\n\n function updateSelectedItems() {\n const isPartOfSelectedItems = matchInArray(label, selectedItems);\n const callback = controlled ? onSelectionChange : setSelectedItems;\n if (isPartOfSelectedItems) {\n callback?.(removeItemFromSelectedItems(label));\n } else {\n callback?.(\n addItemFromSelectedItems(\n \"item\" in remainingProps\n ? remainingProps.item\n : remainingProps.label,\n ),\n );\n }\n }\n\n const data = {\n label: \"item\" in props ? props.item?.label : props.label,\n };\n\n const trackingId = useTrackingId({\n name: \"ListViewOption\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n const {\n item: _item,\n label: _label,\n ...forwardedProps\n } = remainingProps as {\n item: ItemType;\n label: string;\n };\n\n return (\n <div\n data-tracking-id={trackingId}\n className={cx([styles[\"listview-option\"]], className)}\n data-anv=\"listview-option\"\n style={style}\n ref={mergedRef}\n aria-disabled={disabled}\n aria-selected={isSelected}\n aria-label={label ?? \"Select\"}\n role=\"row\"\n {...forwardedProps}\n >\n <div className={styles[\"cell\"]} ref={cellRef} role=\"gridcell\">\n <Checkbox\n disabled={disabled}\n checked={isIndeterminate ? undefined : isSelected}\n indeterminate={isIndeterminate}\n aria-label={label ?? \"Select\"}\n onChange={onChangeHandler}\n onClick={onClickHandler}\n />\n </div>\n {children}\n </div>\n );\n },\n);\n\nListViewOption.displayName = \"ListViewOption\";\n\nfunction matchInArray(\n itemLabel: string,\n array: (ItemType | unknown)[],\n): boolean {\n return array.some(\n (i) => itemLabel === i || itemLabel === (i as ItemType).label,\n );\n}\n","import { type ComponentPropsWithoutRef, forwardRef } from \"react\";\n\n/** Extra `gridcell` inside a ListView option row. */\nexport const ListViewOptionCell = forwardRef<\n HTMLDivElement,\n ComponentPropsWithoutRef<\"div\">\n>((props, ref) => {\n const { ...rest } = props;\n return (\n <div role=\"gridcell\" data-anv=\"listview-option-cell\" {...rest} ref={ref} />\n );\n});\n\nListViewOptionCell.displayName = \"ListViewOptionCell\";\n","import type { Dispatch, KeyboardEvent, SetStateAction } from \"react\";\nimport type { FocusedItem, Option } from \"./types\";\nimport { getActiveElement } from \"../../../internal/functions\";\n\nexport const listViewKeyboardNavigation = (\n e: KeyboardEvent<HTMLDivElement>,\n options: Option[],\n focusedItem: FocusedItem,\n setFocusedItem: Dispatch<SetStateAction<FocusedItem>>,\n parent: HTMLDivElement | null,\n currentFocusId: (id: string) => void,\n) => {\n if (!options) return;\n let activeElement: HTMLElement | null;\n switch (e.code) {\n case \"Enter\":\n case \"Space\":\n (\n options[focusedItem.row].focusables[focusedItem.col] as HTMLElement\n ).click();\n activeElement = getActiveElement(document);\n if (!activeElement) break;\n activeElement.click();\n e.preventDefault();\n break;\n case \"ArrowDown\":\n parent?.focus();\n options[focusedItem.row].focusables[focusedItem.col].removeAttribute(\n \"data-interactive\",\n );\n if (focusedItem.row === options.length - 1) {\n options[0].focusables[focusedItem.col].setAttribute(\n \"data-interactive\",\n \"focus-visible\",\n );\n currentFocusId(options[0].focusables[focusedItem.col].id);\n setFocusedItem((prev) => {\n return { ...prev, row: 0 };\n });\n break;\n }\n\n options[focusedItem.row + 1].focusables[focusedItem.col].setAttribute(\n \"data-interactive\",\n \"focus-visible\",\n );\n currentFocusId(\n options[focusedItem.row + 1].focusables[focusedItem.col].id,\n );\n setFocusedItem((prev) => {\n return { ...prev, row: focusedItem.row + 1 };\n });\n break;\n case \"ArrowUp\":\n parent?.focus();\n options[focusedItem.row].focusables[focusedItem.col].removeAttribute(\n \"data-interactive\",\n );\n if (focusedItem.row === 0) {\n options[options.length - 1].focusables[focusedItem.col].setAttribute(\n \"data-interactive\",\n \"focus-visible\",\n );\n currentFocusId(\n options[options.length - 1].focusables[focusedItem.col].id,\n );\n setFocusedItem((prev) => {\n return { ...prev, row: options.length - 1 };\n });\n break;\n }\n\n options[focusedItem.row - 1].focusables[focusedItem.col].setAttribute(\n \"data-interactive\",\n \"focus-visible\",\n );\n currentFocusId(\n options[focusedItem.row - 1].focusables[focusedItem.col].id,\n );\n setFocusedItem((prev) => {\n return { ...prev, row: focusedItem.row - 1 };\n });\n break;\n case \"ArrowRight\":\n parent?.focus();\n options[focusedItem.row].focusables[focusedItem.col].removeAttribute(\n \"data-interactive\",\n );\n if (focusedItem.col === options[focusedItem.row].focusables.length - 1) {\n options[focusedItem.row].focusables[0].setAttribute(\n \"data-interactive\",\n \"focus-visible\",\n );\n currentFocusId(options[focusedItem.row].focusables[0].id);\n setFocusedItem((prev) => {\n return {\n ...prev,\n col: 0,\n };\n });\n break;\n }\n\n options[focusedItem.row].focusables[focusedItem.col + 1].setAttribute(\n \"data-interactive\",\n \"focus-visible\",\n );\n currentFocusId(\n options[focusedItem.row].focusables[focusedItem.col + 1].id,\n );\n setFocusedItem((prev) => {\n return { ...prev, col: focusedItem.col + 1 };\n });\n break;\n case \"ArrowLeft\":\n parent?.focus();\n options[focusedItem.row].focusables[focusedItem.col].removeAttribute(\n \"data-interactive\",\n );\n if (focusedItem.col === 0) {\n options[focusedItem.row].focusables[\n options[focusedItem.row].focusables.length - 1\n ].setAttribute(\"data-interactive\", \"focus-visible\");\n currentFocusId(\n options[focusedItem.row].focusables[\n options[focusedItem.row].focusables.length - 1\n ].id,\n );\n setFocusedItem((prev) => {\n return {\n ...prev,\n col: options[focusedItem.row].focusables.length - 1,\n };\n });\n break;\n }\n\n options[focusedItem.row].focusables[focusedItem.col - 1].setAttribute(\n \"data-interactive\",\n \"focus-visible\",\n );\n currentFocusId(\n options[focusedItem.row].focusables[focusedItem.col - 1].id,\n );\n setFocusedItem((prev) => {\n return { ...prev, col: focusedItem.col - 1 };\n });\n break;\n\n default:\n break;\n }\n};\n\nexport const getFocusables = (el: Element) => {\n return el.querySelectorAll(\n \"button:not(:disabled):not([aria-disabled='true']), input:not(:disabled):not([aria-disabled='true']), [tabindex='0']:not(:disabled):not([aria-disabled='true'])\",\n );\n};\n","import {\n type KeyboardEvent,\n type MouseEvent,\n type ReactNode,\n type Ref,\n forwardRef,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport type { LayoutUtilProps } from \"../../types\";\nimport type {\n FocusedItem,\n ItemType,\n ListViewWithItems,\n ListViewWithOutItems,\n Option,\n} from \"./internal/types\";\nimport { ListViewOption } from \"./ListViewOption\";\nimport { ListViewOptionCell } from \"./ListViewOptionCell\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\nimport { useMergeRefs } from \"../../hooks\";\nimport { getFocusables, listViewKeyboardNavigation } from \"./internal/utils\";\nimport { mapOrder } from \"../../internal/functions\";\nimport { ListViewContext } from \"./internal/ListViewContext\";\n\nimport cx from \"classnames\";\nimport styles from \"./ListView.module.scss\";\n\n/**\n * `items` selects the render-prop variant; omit it for static children.\n * @extends LayoutUtilProps\n */\nexport type ListViewProps<T> = LayoutUtilProps &\n (ListViewWithItems<T> | ListViewWithOutItems);\n\nfunction ListViewInner<T>(props: ListViewProps<T>, ref: Ref<HTMLDivElement>) {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const {\n indeterminate,\n onSelectionChange,\n className,\n selected,\n defaultSelected,\n style,\n onKeyDown,\n ...remainingProps\n } = componentProps;\n\n const ListViewRef = useRef<HTMLDivElement>(null);\n const isFocusVisible = useRef(true);\n const combinedRef = useMergeRefs([ref, ListViewRef]);\n const [options, setOptions] = useState<Option[]>();\n const [currentActive, setCurrentActive] = useState<string>();\n const [selectedItems, setSelectedItems] = useState<unknown[]>(\n selected ?? defaultSelected ?? [],\n );\n const [focusedItem, setFocusedItem] = useState<FocusedItem>({\n row: 0,\n col: 0,\n });\n\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n const onFocusHandler = () => {\n if (!isFocusVisible.current) return;\n if (!options) return;\n options[focusedItem.row].focusables[focusedItem.col].setAttribute(\n \"data-interactive\",\n \"focus-visible\",\n );\n return;\n };\n const onBlurHandler = () => {\n if (!options) return;\n options[focusedItem.row].focusables[focusedItem.col]?.removeAttribute(\n \"data-interactive\",\n );\n return;\n };\n\n const onKeyDownHandler = (e: KeyboardEvent<HTMLDivElement>) => {\n onKeyDown?.(e);\n if (!options) return;\n isFocusVisible.current = true;\n listViewKeyboardNavigation(\n e,\n options,\n focusedItem,\n setFocusedItem,\n ListViewRef.current,\n (id) => setCurrentActive(id),\n );\n };\n\n const onMouseDownHandler = (e: MouseEvent<HTMLDivElement>) => {\n isFocusVisible.current = false;\n if (options && ListViewRef.current) {\n options[focusedItem.row].focusables[focusedItem.col]?.removeAttribute(\n \"data-interactive\",\n );\n\n const closestFocusable = (e.target as HTMLElement).closest(\n \"button:not(:disabled):not([aria-disabled='true']), input:not(:disabled):not([aria-disabled='true']), [data-anv='checkbox']\",\n );\n\n const optionRow = (e.target as HTMLElement).closest(\n '[data-anv=\"listview-option\"]',\n );\n if (!optionRow || optionRow.ariaDisabled) return;\n const row = options.findIndex((option) => option.node === optionRow);\n if (!closestFocusable) {\n (options[row].focusables[0] as HTMLElement).click();\n return;\n }\n const col = Array.prototype.indexOf.call(\n options[row].focusables,\n closestFocusable?.getAttribute(\"data-anv\") === \"checkbox\"\n ? closestFocusable.children[0]\n : closestFocusable,\n );\n setFocusedItem({ row, col });\n }\n };\n\n useEffect(() => {\n if (!ListViewRef.current) return;\n const optionArr = ListViewRef.current.querySelectorAll<HTMLDivElement>(\n \"div[data-anv='listview-option']:not([aria-disabled='true'])\",\n );\n const makeTree = Array.from(optionArr).map((option) => {\n const childFocusables = getFocusables(option);\n return {\n node: option,\n focusables: childFocusables,\n };\n });\n setOptions(makeTree);\n }, [props.children]);\n\n const prevCallbackItems = useRef<unknown[]>([]);\n const prevControlledItems = useRef<unknown[]>(\n selected ?? defaultSelected ?? [],\n );\n\n useEffect(() => {\n if (!options) return;\n const compareArr = options.map((option) => option.node.ariaLabel);\n const orderedSelectedItems = mapOrder(selectedItems, compareArr, \"label\");\n if (\n JSON.stringify(prevCallbackItems.current) ===\n JSON.stringify(orderedSelectedItems)\n )\n return;\n\n onSelectionChange?.(orderedSelectedItems);\n prevCallbackItems.current = orderedSelectedItems;\n }, [onSelectionChange, options, selectedItems]);\n\n useEffect(() => {\n if (!selected) return;\n\n const getLabel = (item: unknown): string =>\n typeof item === \"string\" ? item : (item as ItemType<T>).label;\n\n const filterDuplicates = (selected as unknown[]).reduce<unknown[]>(\n (acc, current) => {\n const currentLabel = getLabel(current);\n const isDup = acc.find((item) => getLabel(item) === currentLabel);\n if (!isDup) {\n return [...acc, current];\n } else {\n return acc;\n }\n },\n [],\n );\n\n if (!options) return;\n const compareArr = options.map((option) => option.node.ariaLabel);\n const orderedSelected = mapOrder(filterDuplicates, compareArr, \"label\");\n if (\n JSON.stringify(prevControlledItems.current) ===\n JSON.stringify(orderedSelected)\n )\n return;\n setSelectedItems(orderedSelected);\n prevControlledItems.current = orderedSelected;\n }, [options, selected]);\n\n const ListViewClassNames = cx([styles[\"listview\"]], className);\n\n if (remainingProps.items !== undefined) {\n const { children, items, ...rest } = remainingProps as Omit<\n ListViewWithItems<T>,\n keyof LayoutUtilProps\n >;\n const renderChildren = children as\n | (({ items }: { items: ItemType<T>[] }) => ReactNode)\n | undefined;\n return (\n <ListViewContext.Provider\n value={{\n options,\n onSelectionChange: onSelectionChange as\n | ((value: unknown[]) => void)\n | undefined,\n indeterminateItems: indeterminate ?? [],\n selectedItems,\n setSelectedItems,\n items,\n controlled: !!selected,\n }}\n >\n <div\n ref={combinedRef}\n className={ListViewClassNames}\n style={styleCombined}\n data-anv=\"listview\"\n role=\"grid\"\n aria-multiselectable=\"true\"\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n onKeyDown={onKeyDownHandler}\n onMouseDown={onMouseDownHandler}\n aria-activedescendant={currentActive}\n tabIndex={0}\n {...rest}\n >\n {renderChildren?.({\n items: items.map((item: ItemType<T>) => {\n return item;\n }),\n })}\n </div>\n </ListViewContext.Provider>\n );\n }\n\n const { children, ...rest } = remainingProps;\n return (\n <ListViewContext.Provider\n value={{\n options,\n onSelectionChange: onSelectionChange as\n | ((value: unknown[]) => void)\n | undefined,\n selectedItems,\n indeterminateItems: indeterminate ?? [],\n setSelectedItems,\n controlled: !!selected || !!indeterminate,\n }}\n >\n <div\n ref={combinedRef}\n className={ListViewClassNames}\n style={styleCombined}\n data-anv=\"listview\"\n role=\"grid\"\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n onKeyDown={onKeyDownHandler}\n onMouseDown={onMouseDownHandler}\n aria-activedescendant={currentActive}\n tabIndex={0}\n {...rest}\n >\n {children}\n </div>\n </ListViewContext.Provider>\n );\n}\n\nListViewInner.displayName = \"ListView\";\n\n/** Multi-select grid of option rows. Keyboard navigates cells; selection is by label. */\nexport const ListView = Object.assign(\n forwardRef(ListViewInner) as <T>(\n props: ListViewProps<T> & { ref?: React.ForwardedRef<HTMLUListElement> },\n ) => ReturnType<typeof ListViewInner>,\n {\n /** Selectable row with a leading checkbox. */\n Option: ListViewOption,\n /** Extra grid cell inside an option row. */\n OptionCell: ListViewOptionCell,\n },\n);\n"],"names":["children","rest"],"mappings":"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"}
package/dist/ListView.js CHANGED
@@ -1,2 +1,2 @@
1
- export { L as ListView, a as ListViewOption, b as ListViewOptionCell, L as default } from './ListView-DFAWrwzi.js';
1
+ export { L as ListView, a as ListViewOption, b as ListViewOptionCell, L as default } from './ListView-YJscfG4x.js';
2
2
  //# sourceMappingURL=ListView.js.map