@servicetitan/anvil2 2.9.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (488) hide show
  1. package/CHANGELOG.md +87 -0
  2. package/dist/{AiMark-DR-w6Nbm.js → AiMark-B1-M3ZgP.js} +26 -25
  3. package/dist/{AiMark-DR-w6Nbm.js.map → AiMark-B1-M3ZgP.js.map} +1 -1
  4. package/dist/AiMark.css +246 -256
  5. package/dist/AiMark.js +1 -1
  6. package/dist/{Alert-Dj61Bq8h.js → Alert-DmbqtMg_.js} +20 -31
  7. package/dist/Alert-DmbqtMg_.js.map +1 -0
  8. package/dist/Alert.css +72 -90
  9. package/dist/Alert.js +1 -1
  10. package/dist/{Announcement-B9zm-_1S.js → Announcement-_C5g2Lzm.js} +14 -14
  11. package/dist/{Announcement-B9zm-_1S.js.map → Announcement-_C5g2Lzm.js.map} +1 -1
  12. package/dist/Announcement.css +108 -97
  13. package/dist/Announcement.js +1 -1
  14. package/dist/{AnvilProvider-DUPYyMc7.js → AnvilProvider-JXEbeQjR.js} +13 -8
  15. package/dist/AnvilProvider-JXEbeQjR.js.map +1 -0
  16. package/dist/AnvilProvider.js +1 -1
  17. package/dist/{Avatar-BckUfs1N.js → Avatar-B4hRHku9.js} +23 -23
  18. package/dist/Avatar-B4hRHku9.js.map +1 -0
  19. package/dist/{Avatar-ChybzixS.js → Avatar-NbFc4Ovc.js} +2 -2
  20. package/dist/{Avatar-ChybzixS.js.map → Avatar-NbFc4Ovc.js.map} +1 -1
  21. package/dist/Avatar.css +116 -177
  22. package/dist/Avatar.js +2 -2
  23. package/dist/{Badge-C2W7Dls9.js → Badge-C_wTvtnB.js} +7 -7
  24. package/dist/{Badge-C2W7Dls9.js.map → Badge-C_wTvtnB.js.map} +1 -1
  25. package/dist/Badge.css +42 -50
  26. package/dist/Badge.js +1 -1
  27. package/dist/{Breadcrumbs-ojgYVZwe.js → Breadcrumbs-CYmciJ1D.js} +7 -7
  28. package/dist/{Breadcrumbs-ojgYVZwe.js.map → Breadcrumbs-CYmciJ1D.js.map} +1 -1
  29. package/dist/Breadcrumbs.css +37 -45
  30. package/dist/Breadcrumbs.js +1 -1
  31. package/dist/{Button-BdrrhBTI.js → Button-Bnt8XUI7.js} +13 -10
  32. package/dist/{Button-BdrrhBTI.js.map → Button-Bnt8XUI7.js.map} +1 -1
  33. package/dist/Button.css +274 -335
  34. package/dist/Button.js +1 -1
  35. package/dist/Button.module-DsGhJYRw.js +23 -0
  36. package/dist/Button.module-DsGhJYRw.js.map +1 -0
  37. package/dist/{ButtonCompound-Cmw3cgMY.js → ButtonCompound-DsrK7G3q.js} +11 -4
  38. package/dist/ButtonCompound-DsrK7G3q.js.map +1 -0
  39. package/dist/ButtonCompound.css +25 -0
  40. package/dist/ButtonCompound.js +1 -1
  41. package/dist/{ButtonLink-BJKTJER8.js → ButtonLink-j3h_wRNi.js} +9 -6
  42. package/dist/ButtonLink-j3h_wRNi.js.map +1 -0
  43. package/dist/ButtonLink.js +1 -1
  44. package/dist/{ButtonToggle-DaFQ3DBG.js → ButtonToggle-Ct9_5bhC.js} +7 -4
  45. package/dist/ButtonToggle-Ct9_5bhC.js.map +1 -0
  46. package/dist/ButtonToggle.css +109 -0
  47. package/dist/ButtonToggle.js +1 -1
  48. package/dist/{Calendar-Cka4unyi.js → Calendar-BAbAagIx.js} +2 -2
  49. package/dist/{Calendar-Cka4unyi.js.map → Calendar-BAbAagIx.js.map} +1 -1
  50. package/dist/{Calendar-Dxl9QnfP.js → Calendar-CaCMa_jq.js} +38 -35
  51. package/dist/Calendar-CaCMa_jq.js.map +1 -0
  52. package/dist/Calendar.css +250 -301
  53. package/dist/Calendar.js +2 -2
  54. package/dist/{Card-wz71dEVA.js → Card-DSFuXUGk.js} +11 -11
  55. package/dist/{Card-wz71dEVA.js.map → Card-DSFuXUGk.js.map} +1 -1
  56. package/dist/Card.css +51 -65
  57. package/dist/Card.js +1 -1
  58. package/dist/{Checkbox-B-XTVPbX.js → Checkbox-BSAS8-DM.js} +28 -39
  59. package/dist/Checkbox-BSAS8-DM.js.map +1 -0
  60. package/dist/{Checkbox-Cw1-KFvq.js → Checkbox-Ckl8EFpF.js} +2 -2
  61. package/dist/{Checkbox-Cw1-KFvq.js.map → Checkbox-Ckl8EFpF.js.map} +1 -1
  62. package/dist/Checkbox.css +237 -271
  63. package/dist/Checkbox.js +1 -1
  64. package/dist/Checkbox.module-TYMeYIxw.js +28 -0
  65. package/dist/Checkbox.module-TYMeYIxw.js.map +1 -0
  66. package/dist/{Chip-Ce0WGKAc.js → Chip-CR5i8mQW.js} +31 -23
  67. package/dist/Chip-CR5i8mQW.js.map +1 -0
  68. package/dist/Chip.css +191 -206
  69. package/dist/Chip.js +1 -1
  70. package/dist/{Combobox-CNQUROyr.js → Combobox-BffGTugd.js} +59 -72
  71. package/dist/Combobox-BffGTugd.js.map +1 -0
  72. package/dist/Combobox.css +158 -176
  73. package/dist/Combobox.js +1 -1
  74. package/dist/{DataTable-BCV_mtSy.js → DataTable-D9Xj1nq5.js} +437 -479
  75. package/dist/DataTable-D9Xj1nq5.js.map +1 -0
  76. package/dist/DataTable.css +593 -739
  77. package/dist/{DateFieldRange-D2hnF50O.js → DateFieldRange-DPTC3EZz.js} +6 -6
  78. package/dist/{DateFieldRange-D2hnF50O.js.map → DateFieldRange-DPTC3EZz.js.map} +1 -1
  79. package/dist/DateFieldRange.js +1 -1
  80. package/dist/{DateFieldSingle-BuaB7RDr.js → DateFieldSingle-w1G-zd9G.js} +6 -6
  81. package/dist/{DateFieldSingle-BuaB7RDr.js.map → DateFieldSingle-w1G-zd9G.js.map} +1 -1
  82. package/dist/DateFieldSingle.js +1 -1
  83. package/dist/{DateFieldYearless-DLeMEutt.js → DateFieldYearless-DHNVc7Sd.js} +7 -7
  84. package/dist/{DateFieldYearless-DLeMEutt.js.map → DateFieldYearless-DHNVc7Sd.js.map} +1 -1
  85. package/dist/DateFieldYearless.js +1 -1
  86. package/dist/{DateFieldYearlessRange-BfPuYKKC.js → DateFieldYearlessRange-C5ktVUgG.js} +10 -10
  87. package/dist/{DateFieldYearlessRange-BfPuYKKC.js.map → DateFieldYearlessRange-C5ktVUgG.js.map} +1 -1
  88. package/dist/DateFieldYearlessRange.css +11 -19
  89. package/dist/DateFieldYearlessRange.js +1 -1
  90. package/dist/{DaysOfTheWeek-BW1T8sTU.js → DaysOfTheWeek-BubWkBZ0.js} +10 -10
  91. package/dist/{DaysOfTheWeek-BW1T8sTU.js.map → DaysOfTheWeek-BubWkBZ0.js.map} +1 -1
  92. package/dist/DaysOfTheWeek.css +19 -27
  93. package/dist/DaysOfTheWeek.js +1 -1
  94. package/dist/{Details-CZOIpNP_.js → Details-DYRJcLWL.js} +10 -10
  95. package/dist/{Details-CZOIpNP_.js.map → Details-DYRJcLWL.js.map} +1 -1
  96. package/dist/Details.css +134 -138
  97. package/dist/Details.js +1 -1
  98. package/dist/{Dialog-Cewu2pd_.js → Dialog-DGmF6qx3.js} +27 -26
  99. package/dist/Dialog-DGmF6qx3.js.map +1 -0
  100. package/dist/Dialog.css +108 -143
  101. package/dist/Dialog.js +1 -1
  102. package/dist/{DialogCancelButton-Czz4Wpse.js → DialogCancelButton-CbtQcf2J.js} +2 -2
  103. package/dist/{DialogCancelButton-Czz4Wpse.js.map → DialogCancelButton-CbtQcf2J.js.map} +1 -1
  104. package/dist/{Divider-B1UoK8ho.js → Divider-Ds3WKsKa.js} +19 -19
  105. package/dist/{Divider-B1UoK8ho.js.map → Divider-Ds3WKsKa.js.map} +1 -1
  106. package/dist/Divider.css +93 -169
  107. package/dist/Divider.js +1 -1
  108. package/dist/Dnd.js +1 -1
  109. package/dist/DndSort.css +18 -34
  110. package/dist/DndSort.js +10 -10
  111. package/dist/{Drawer-Cb5asXWf.js → Drawer-iewBy1DW.js} +24 -25
  112. package/dist/{Drawer-Cb5asXWf.js.map → Drawer-iewBy1DW.js.map} +1 -1
  113. package/dist/Drawer.css +109 -144
  114. package/dist/Drawer.js +1 -1
  115. package/dist/DrillDown.css +117 -131
  116. package/dist/DrillDown.js +1 -1
  117. package/dist/DrillDown.module-D1Bf9_yP.js +27 -0
  118. package/dist/{DrillDown.module-C8VOhzaF.js.map → DrillDown.module-D1Bf9_yP.js.map} +1 -1
  119. package/dist/{EditCard-DlJE3LXN.js → EditCard-D7-Ye7R0.js} +21 -20
  120. package/dist/{EditCard-DlJE3LXN.js.map → EditCard-D7-Ye7R0.js.map} +1 -1
  121. package/dist/EditCard.css +71 -65
  122. package/dist/EditCard.js +1 -1
  123. package/dist/{FieldLabel-HO2VP-4B.js → FieldLabel-DZWu5dMp.js} +17 -17
  124. package/dist/{FieldLabel-HO2VP-4B.js.map → FieldLabel-DZWu5dMp.js.map} +1 -1
  125. package/dist/FieldLabel.css +66 -102
  126. package/dist/FieldLabel.js +1 -1
  127. package/dist/FieldMessage-DzxfodaI.js +81 -0
  128. package/dist/FieldMessage-DzxfodaI.js.map +1 -0
  129. package/dist/FieldMessage.css +20 -29
  130. package/dist/FieldMessage.js +1 -1
  131. package/dist/{Flex-WyyZm1bf.js → Flex-DOUtHiPi.js} +4 -4
  132. package/dist/{Flex-WyyZm1bf.js.map → Flex-DOUtHiPi.js.map} +1 -1
  133. package/dist/Flex.css +25 -28
  134. package/dist/Flex.js +1 -1
  135. package/dist/{Grid-DeYIx5k4.js → Grid-B1VVssDD.js} +5 -5
  136. package/dist/{Grid-DeYIx5k4.js.map → Grid-B1VVssDD.js.map} +1 -1
  137. package/dist/Grid.css +37 -54
  138. package/dist/Grid.js +1 -1
  139. package/dist/{Helper-B_FIOlhy.js → Helper-DtDeaYTn.js} +8 -10
  140. package/dist/Helper-DtDeaYTn.js.map +1 -0
  141. package/dist/Helper.css +4 -16
  142. package/dist/{Icon-DuIlne4x.js → Icon-BMMbp40n.js} +7 -7
  143. package/dist/{Icon-DuIlne4x.js.map → Icon-BMMbp40n.js.map} +1 -1
  144. package/dist/Icon.css +42 -48
  145. package/dist/Icon.js +1 -1
  146. package/dist/{InputMask-CLLTehFI.js → InputMask-EwEJlW-t.js} +3 -3
  147. package/dist/{InputMask-CLLTehFI.js.map → InputMask-EwEJlW-t.js.map} +1 -1
  148. package/dist/InputMask.js +1 -1
  149. package/dist/{InteractiveCard-GTYbR6Xy.js → InteractiveCard-CnW0m_F-.js} +7 -7
  150. package/dist/{InteractiveCard-GTYbR6Xy.js.map → InteractiveCard-CnW0m_F-.js.map} +1 -1
  151. package/dist/InteractiveCard.css +56 -57
  152. package/dist/InteractiveCard.js +1 -1
  153. package/dist/{Layout-CISAxILX.js → Layout-C2Q2hyLG.js} +80 -80
  154. package/dist/{Layout-CISAxILX.js.map → Layout-C2Q2hyLG.js.map} +1 -1
  155. package/dist/Layout.css +260 -324
  156. package/dist/Layout.js +1 -1
  157. package/dist/{Link-jTvzyXca.js → Link-BUgivkGS.js} +8 -8
  158. package/dist/{Link-jTvzyXca.js.map → Link-BUgivkGS.js.map} +1 -1
  159. package/dist/Link.css +48 -65
  160. package/dist/Link.js +1 -1
  161. package/dist/Link.module-DJc0cOlg.js +12 -0
  162. package/dist/Link.module-DJc0cOlg.js.map +1 -0
  163. package/dist/{LinkButton-DGyHR1E7.js → LinkButton-CuHSdGdj.js} +7 -16
  164. package/dist/LinkButton-CuHSdGdj.js.map +1 -0
  165. package/dist/LinkButton.js +1 -1
  166. package/dist/{List--KhCpjZn.js → List-BXyHWQ9e.js} +8 -8
  167. package/dist/{List--KhCpjZn.js.map → List-BXyHWQ9e.js.map} +1 -1
  168. package/dist/List.css +39 -58
  169. package/dist/List.js +1 -1
  170. package/dist/{ListView-CPi-qG2w.js → ListView-DBO9Bl1H.js} +4 -4
  171. package/dist/{ListView-CPi-qG2w.js.map → ListView-DBO9Bl1H.js.map} +1 -1
  172. package/dist/ListView.css +108 -120
  173. package/dist/ListView.js +1 -1
  174. package/dist/ListView.module-CRk9NfLG.js +9 -0
  175. package/dist/ListView.module-CRk9NfLG.js.map +1 -0
  176. package/dist/{Listbox-Bp4hqIpH.js → Listbox-DDlxpVu9.js} +7 -7
  177. package/dist/{Listbox-Bp4hqIpH.js.map → Listbox-DDlxpVu9.js.map} +1 -1
  178. package/dist/Listbox.css +102 -143
  179. package/dist/Listbox.js +1 -1
  180. package/dist/Listbox.module-CfpLm9pS.js +18 -0
  181. package/dist/Listbox.module-CfpLm9pS.js.map +1 -0
  182. package/dist/{LocalizationProvider-DWCyga_d.js → LocalizationProvider-CO8fQGqs.js} +2 -2
  183. package/dist/{LocalizationProvider-DWCyga_d.js.map → LocalizationProvider-CO8fQGqs.js.map} +1 -1
  184. package/dist/LocalizationProvider.js +1 -1
  185. package/dist/{Menu-CCavGohP.js → Menu-wpTyUDac.js} +10 -10
  186. package/dist/{Menu-CCavGohP.js.map → Menu-wpTyUDac.js.map} +1 -1
  187. package/dist/Menu.css +135 -137
  188. package/dist/Menu.js +1 -1
  189. package/dist/MultiSelectField.js +1 -1
  190. package/dist/{MultiSelectFieldSync-ChZCW4M9.js → MultiSelectFieldSync-DZ3tm7zt.js} +34 -33
  191. package/dist/MultiSelectFieldSync-DZ3tm7zt.js.map +1 -0
  192. package/dist/MultiSelectFieldSync.css +263 -257
  193. package/dist/MultiSelectMenu.js +1 -1
  194. package/dist/{MultiSelectMenuSync-7C1wW4oO.js → MultiSelectMenuSync-dgO9SmHi.js} +4 -4
  195. package/dist/{MultiSelectMenuSync-7C1wW4oO.js.map → MultiSelectMenuSync-dgO9SmHi.js.map} +1 -1
  196. package/dist/{NumberField-CZSTHBeO.js → NumberField-DJbdyatF.js} +15 -12
  197. package/dist/{NumberField-CZSTHBeO.js.map → NumberField-DJbdyatF.js.map} +1 -1
  198. package/dist/NumberField.css +34 -49
  199. package/dist/NumberField.js +1 -1
  200. package/dist/Overflow.css +143 -164
  201. package/dist/Overflow.js +44 -42
  202. package/dist/Overflow.js.map +1 -1
  203. package/dist/{Page-BHdvTlfE.js → Page-Be1Blwme.js} +65 -65
  204. package/dist/Page-Be1Blwme.js.map +1 -0
  205. package/dist/Page.css +384 -404
  206. package/dist/Page.js +1 -1
  207. package/dist/{Pagination-DecGSuW4.js → Pagination-USDJM5vi.js} +29 -34
  208. package/dist/{Pagination-DecGSuW4.js.map → Pagination-USDJM5vi.js.map} +1 -1
  209. package/dist/Pagination.css +63 -116
  210. package/dist/Pagination.js +1 -1
  211. package/dist/{Popover-BbqTZw-1.js → Popover-CyB7yzSf.js} +7 -7
  212. package/dist/{Popover-BbqTZw-1.js.map → Popover-CyB7yzSf.js.map} +1 -1
  213. package/dist/Popover.css +84 -97
  214. package/dist/Popover.js +1 -1
  215. package/dist/{ProgressBar-CZcxkdX6.js → ProgressBar-DSrjgLTx.js} +15 -15
  216. package/dist/{ProgressBar-CZcxkdX6.js.map → ProgressBar-DSrjgLTx.js.map} +1 -1
  217. package/dist/ProgressBar.css +59 -81
  218. package/dist/ProgressBar.js +1 -1
  219. package/dist/{Radio-BFr8AdHc.js → Radio-CQaXJ72d.js} +2 -2
  220. package/dist/{Radio-BFr8AdHc.js.map → Radio-CQaXJ72d.js.map} +1 -1
  221. package/dist/{Radio-DJZVMCv0.js → Radio-DO4UhbBE.js} +45 -48
  222. package/dist/Radio-DO4UhbBE.js.map +1 -0
  223. package/dist/Radio.css +233 -229
  224. package/dist/Radio.js +1 -1
  225. package/dist/{SearchField-im7AHGYo.js → SearchField-CsRGYZx3.js} +9 -11
  226. package/dist/{SearchField-im7AHGYo.js.map → SearchField-CsRGYZx3.js.map} +1 -1
  227. package/dist/SearchField.css +22 -39
  228. package/dist/SearchField.js +1 -1
  229. package/dist/{SegmentedControl-B9NWUF7s.js → SegmentedControl-Chhqyyra.js} +15 -16
  230. package/dist/SegmentedControl-Chhqyyra.js.map +1 -0
  231. package/dist/SegmentedControl.css +103 -122
  232. package/dist/SegmentedControl.js +1 -1
  233. package/dist/SelectCard-CtXwY8FZ.js +351 -0
  234. package/dist/SelectCard-CtXwY8FZ.js.map +1 -0
  235. package/dist/SelectCard.css +135 -82
  236. package/dist/SelectCard.js +1 -1
  237. package/dist/SelectField.js +1 -1
  238. package/dist/{SelectFieldLabel-kEBS8L4l.js → SelectFieldLabel-DLT5dKbx.js} +3 -3
  239. package/dist/{SelectFieldLabel-kEBS8L4l.js.map → SelectFieldLabel-DLT5dKbx.js.map} +1 -1
  240. package/dist/{SelectFieldSync-o1Cp9UYC.js → SelectFieldSync-C44hPeeS.js} +9 -8
  241. package/dist/SelectFieldSync-C44hPeeS.js.map +1 -0
  242. package/dist/SelectMenu.js +1 -1
  243. package/dist/{SelectMenuSync-DXrwecFt.js → SelectMenuSync-V97oN85V.js} +4 -4
  244. package/dist/{SelectMenuSync-DXrwecFt.js.map → SelectMenuSync-V97oN85V.js.map} +1 -1
  245. package/dist/{SelectOptions-Dy2OWqxn.js → SelectOptions-CDoo4AUu.js} +2 -2
  246. package/dist/{SelectOptions-Dy2OWqxn.js.map → SelectOptions-CDoo4AUu.js.map} +1 -1
  247. package/dist/{SelectTrigger-DhKYzEAr.js → SelectTrigger-BWN3Tx43.js} +5 -5
  248. package/dist/{SelectTrigger-DhKYzEAr.js.map → SelectTrigger-BWN3Tx43.js.map} +1 -1
  249. package/dist/SelectTrigger.js +1 -1
  250. package/dist/{SelectTriggerBase-Ni8WqeUx.js → SelectTriggerBase-Do7lQ5rw.js} +8 -7
  251. package/dist/{SelectTriggerBase-Ni8WqeUx.js.map → SelectTriggerBase-Do7lQ5rw.js.map} +1 -1
  252. package/dist/SelectTriggerBase.css +231 -305
  253. package/dist/SelectTriggerBase.module-DKF1FQnc.js +37 -0
  254. package/dist/SelectTriggerBase.module-DKF1FQnc.js.map +1 -0
  255. package/dist/{SideNav-CrxYExjh.js → SideNav-CZRVOSbt.js} +19 -14
  256. package/dist/SideNav-CZRVOSbt.js.map +1 -0
  257. package/dist/SideNav.css +126 -294
  258. package/dist/SideNav.js +1 -1
  259. package/dist/Skeleton.css +57 -65
  260. package/dist/Skeleton.js +16 -16
  261. package/dist/Skeleton.js.map +1 -1
  262. package/dist/{Spinner-BqmcE2pb.js → Spinner-lPMo68yW.js} +16 -17
  263. package/dist/Spinner-lPMo68yW.js.map +1 -0
  264. package/dist/Spinner.css +33 -43
  265. package/dist/Spinner.js +1 -1
  266. package/dist/{SrOnly-eUpYGpAT.js → SrOnly-pnf8ajnh.js} +2 -2
  267. package/dist/{SrOnly-eUpYGpAT.js.map → SrOnly-pnf8ajnh.js.map} +1 -1
  268. package/dist/SrOnly.css +12 -14
  269. package/dist/SrOnly.js +1 -1
  270. package/dist/StatusIcon-BwULopyH.js +57 -0
  271. package/dist/StatusIcon-BwULopyH.js.map +1 -0
  272. package/dist/StatusIcon.css +32 -0
  273. package/dist/{Stepper-Dt2xAXth.js → Stepper-CYY64NU1.js} +16 -16
  274. package/dist/{Stepper-Dt2xAXth.js.map → Stepper-CYY64NU1.js.map} +1 -1
  275. package/dist/Stepper.css +180 -239
  276. package/dist/Stepper.js +1 -1
  277. package/dist/{Switch-C84MBChG.js → Switch-DeBu4Ucg.js} +17 -13
  278. package/dist/{Switch-C84MBChG.js.map → Switch-DeBu4Ucg.js.map} +1 -1
  279. package/dist/Switch.css +109 -125
  280. package/dist/Switch.js +1 -1
  281. package/dist/{Tab-BZpTCG0i.js → Tab-CewPzmuK.js} +20 -34
  282. package/dist/Tab-CewPzmuK.js.map +1 -0
  283. package/dist/Tab.css +232 -194
  284. package/dist/Tab.js +1 -1
  285. package/dist/Table.js +1 -1
  286. package/dist/{Text-WiS8UZkY.js → Text-J5YtSSXY.js} +15 -38
  287. package/dist/Text-J5YtSSXY.js.map +1 -0
  288. package/dist/Text.css +101 -142
  289. package/dist/Text.js +1 -1
  290. package/dist/Text.module-BXrY87ui.js +23 -0
  291. package/dist/Text.module-BXrY87ui.js.map +1 -0
  292. package/dist/{TextField-Bul_uln5.js → TextField-CRDTnuUN.js} +7 -7
  293. package/dist/{TextField-Bul_uln5.js.map → TextField-CRDTnuUN.js.map} +1 -1
  294. package/dist/{TextField-OznkTx4e.js → TextField-YlMkDHp-.js} +2 -2
  295. package/dist/{TextField-OznkTx4e.js.map → TextField-YlMkDHp-.js.map} +1 -1
  296. package/dist/TextField.css +156 -148
  297. package/dist/TextField.js +1 -1
  298. package/dist/TextField.module-MRVo1X9H.js +23 -0
  299. package/dist/TextField.module-MRVo1X9H.js.map +1 -0
  300. package/dist/{Textarea-CCYLsJ1x.js → Textarea-CxXmr_Gx.js} +16 -13
  301. package/dist/{Textarea-CCYLsJ1x.js.map → Textarea-CxXmr_Gx.js.map} +1 -1
  302. package/dist/Textarea.css +71 -81
  303. package/dist/Textarea.js +1 -1
  304. package/dist/{ThemeProvider-CaYW3RuA.js → ThemeProvider-D4KdGCaP.js} +11 -9
  305. package/dist/ThemeProvider-D4KdGCaP.js.map +1 -0
  306. package/dist/ThemeProvider.css +586 -516
  307. package/dist/ThemeProvider.js +1 -1
  308. package/dist/{TimeField-BPvPbD8H.js → TimeField-DTg0CE5L.js} +7 -7
  309. package/dist/{TimeField-BPvPbD8H.js.map → TimeField-DTg0CE5L.js.map} +1 -1
  310. package/dist/TimeField.css +5 -8
  311. package/dist/TimeField.js +1 -1
  312. package/dist/{TimezoneMessage-Cnsl4cHT.js → TimezoneMessage-BrKB_psP.js} +2 -2
  313. package/dist/{TimezoneMessage-Cnsl4cHT.js.map → TimezoneMessage-BrKB_psP.js.map} +1 -1
  314. package/dist/TimezoneMessage.css +5 -5
  315. package/dist/Toast.js +2 -2
  316. package/dist/{Toaster-DYJm06Vb.js → Toaster-Bq42x6Gx.js} +35 -34
  317. package/dist/Toaster-Bq42x6Gx.js.map +1 -0
  318. package/dist/{Toaster-CIaIvwH6.js → Toaster-Dly3rfva.js} +2 -2
  319. package/dist/{Toaster-CIaIvwH6.js.map → Toaster-Dly3rfva.js.map} +1 -1
  320. package/dist/Toaster.css +210 -242
  321. package/dist/{Toolbar-ByyI7SqG.js → Toolbar-C1_etxss.js} +42 -42
  322. package/dist/{Toolbar-ByyI7SqG.js.map → Toolbar-C1_etxss.js.map} +1 -1
  323. package/dist/Toolbar.css +121 -202
  324. package/dist/Toolbar.js +1 -1
  325. package/dist/{Tooltip-C1PBRnJv.js → Tooltip-BlStOXN3.js} +8 -8
  326. package/dist/{Tooltip-C1PBRnJv.js.map → Tooltip-BlStOXN3.js.map} +1 -1
  327. package/dist/Tooltip.css +46 -58
  328. package/dist/Tooltip.js +1 -1
  329. package/dist/{YearlessDateInputWithPicker-C_twiQW5.js → YearlessDateInputWithPicker-DyytWt0x.js} +14 -16
  330. package/dist/{YearlessDateInputWithPicker-C_twiQW5.js.map → YearlessDateInputWithPicker-DyytWt0x.js.map} +1 -1
  331. package/dist/YearlessDateInputWithPicker.css +110 -196
  332. package/dist/assets/css-utils/a2-border.css +47 -45
  333. package/dist/assets/css-utils/a2-color.css +443 -227
  334. package/dist/assets/css-utils/a2-font.css +0 -2
  335. package/dist/assets/css-utils/a2-spacing.css +476 -478
  336. package/dist/assets/css-utils/a2-utils.css +992 -772
  337. package/dist/assets/css-utils/border.css +47 -45
  338. package/dist/assets/css-utils/color.css +443 -227
  339. package/dist/assets/css-utils/font.css +0 -2
  340. package/dist/assets/css-utils/spacing.css +476 -478
  341. package/dist/assets/css-utils/utils.css +992 -772
  342. package/dist/assets/icons/st/unsorted.svg +1 -0
  343. package/dist/assets/icons/st.ts +1 -0
  344. package/dist/beta/components/Table/DataTable/DataTable.d.ts +22 -0
  345. package/dist/beta/components/Table/DataTable/internal/DataTableBody.d.ts +19 -4
  346. package/dist/beta/components/Table/DataTable/internal/DataTableBodyRow.d.ts +18 -1
  347. package/dist/beta/components/Table/DataTable/internal/DataTableHeader.d.ts +4 -2
  348. package/dist/beta/components/Table/DataTable/internal/cells/DataTableBodyCell.d.ts +0 -2
  349. package/dist/beta/components/Table/DataTable/internal/cells/DataTableBodyImmutableCell.d.ts +0 -5
  350. package/dist/beta/components/Table/DataTable/internal/cells/DataTableBodyMutableCell.d.ts +0 -5
  351. package/dist/beta/components/Table/DataTable/internal/cells/useCellFocusListener.d.ts +10 -0
  352. package/dist/beta/components/Table/DataTable/internal/context/focus/DTFocusProvider.d.ts +4 -1
  353. package/dist/beta/components/Table/DataTable/internal/editable-cells/DataTableEditableMultiselectAsyncCell.d.ts +0 -1
  354. package/dist/beta/components/Table/DataTable/internal/editable-cells/DataTableEditableMultiselectCell.d.ts +0 -1
  355. package/dist/beta/components/Table/DataTable/internal/editable-cells/types.d.ts +0 -4
  356. package/dist/beta/components/Table/DataTable/internal/editable-cells/useEditableMenuCell.d.ts +3 -6
  357. package/dist/beta/components/Table/DataTable/internal/useDataTableVirtualizer.d.ts +29 -0
  358. package/dist/beta/components/Table/DataTable/internal/util/shallowSortingEqual.d.ts +2 -0
  359. package/dist/beta/components/Table/DataTable/stories/DataTable.story-data.d.ts +1 -0
  360. package/dist/beta/components/Table/createColumnHelper.d.ts +19 -2
  361. package/dist/beta/components/Table/types.d.ts +23 -2
  362. package/dist/beta.js +10 -10
  363. package/dist/{indeterminate_check_box-B4zobNlt.js → check_box-0U1tbEAd.js} +2 -4
  364. package/dist/check_box-0U1tbEAd.js.map +1 -0
  365. package/dist/components/DateFieldRange/internal/MaskedDateRangeInput.d.ts +1 -1
  366. package/dist/components/DateFieldRange/internal/useDateFieldRangeConversion.d.ts +1 -1
  367. package/dist/components/DateFieldSingle/internal/MaskedDateInput.d.ts +1 -1
  368. package/dist/components/DateFieldYearless/internal/YearlessDateInput.d.ts +1 -1
  369. package/dist/components/DateFieldYearless/internal/YearlessDateInputWithPicker.d.ts +1 -1
  370. package/dist/components/NumberField/NumberField.d.ts +1 -1
  371. package/dist/components/Page/Page.d.ts +2 -2
  372. package/dist/components/SearchField/internal/SearchField.d.ts +1 -1
  373. package/dist/components/Stepper/Stepper.d.ts +1 -1
  374. package/dist/components/Stepper/StepperStep.d.ts +1 -1
  375. package/dist/components/Tab/Tab.d.ts +1 -1
  376. package/dist/components/Tab/TabButton.d.ts +1 -1
  377. package/dist/indeterminate_check_box-jjLG4UY6.js +6 -0
  378. package/dist/indeterminate_check_box-jjLG4UY6.js.map +1 -0
  379. package/dist/{index-D6ag_WQW.js → index-ByMdotWU.js} +18 -18
  380. package/dist/{index-D6ag_WQW.js.map → index-ByMdotWU.js.map} +1 -1
  381. package/dist/index.css +98 -126
  382. package/dist/index.js +85 -82
  383. package/dist/index.js.map +1 -1
  384. package/dist/index2.css +57 -74
  385. package/dist/internal/components/StatusIcon/StatusIcon.d.ts +5 -5
  386. package/dist/internal/hooks/useSelectOrchestration.d.ts +1 -1
  387. package/dist/primitive-DXlHdTFb.js +1056 -0
  388. package/dist/primitive-DXlHdTFb.js.map +1 -0
  389. package/dist/providers/ThemeProvider/ThemeProvider.d.ts +1 -0
  390. package/dist/{stripInlineMarkdown-Cg1qlNwL.js → stripInlineMarkdown-BWbMy7r_.js} +2 -2
  391. package/dist/{stripInlineMarkdown-Cg1qlNwL.js.map → stripInlineMarkdown-BWbMy7r_.js.map} +1 -1
  392. package/dist/{syncFilterUtils-UR5Vgqkh.js → syncFilterUtils-BLcRXQfd.js} +49 -49
  393. package/dist/syncFilterUtils-BLcRXQfd.js.map +1 -0
  394. package/dist/syncFilterUtils.css +189 -217
  395. package/dist/token/core/component-variables.scss +1088 -131
  396. package/dist/token/core/component.d.ts +558 -0
  397. package/dist/token/core/component.js +6685 -249
  398. package/dist/token/core/component.scss +557 -69
  399. package/dist/token/core/css-utils/a2-border.css +47 -45
  400. package/dist/token/core/css-utils/a2-color.css +443 -227
  401. package/dist/token/core/css-utils/a2-font.css +0 -2
  402. package/dist/token/core/css-utils/a2-spacing.css +476 -478
  403. package/dist/token/core/css-utils/a2-utils.css +992 -772
  404. package/dist/token/core/css-utils/border.css +47 -45
  405. package/dist/token/core/css-utils/color.css +443 -227
  406. package/dist/token/core/css-utils/font.css +0 -2
  407. package/dist/token/core/css-utils/spacing.css +476 -478
  408. package/dist/token/core/css-utils/utils.css +992 -772
  409. package/dist/token/core/index.d.ts +6 -0
  410. package/dist/token/core/index.js +1 -1
  411. package/dist/token/core/primitive-variables.scss +148 -65
  412. package/dist/token/core/primitive.d.ts +209 -0
  413. package/dist/token/core/primitive.js +779 -61
  414. package/dist/token/core/primitive.scss +207 -124
  415. package/dist/token/core/semantic-variables.scss +363 -245
  416. package/dist/token/core/semantic.d.ts +221 -0
  417. package/dist/token/core/semantic.js +1592 -347
  418. package/dist/token/core/semantic.scss +219 -140
  419. package/dist/token.js +9076 -833
  420. package/dist/token.js.map +1 -1
  421. package/dist/{useBreakpoint-okJ64T1D.js → useBreakpoint-CeaUyHxh.js} +2 -2
  422. package/dist/{useBreakpoint-okJ64T1D.js.map → useBreakpoint-CeaUyHxh.js.map} +1 -1
  423. package/dist/useBreakpoint.js +1 -1
  424. package/dist/{useDrillDownContext-BssSasVB.js → useDrillDownContext-iUvoTget.js} +2 -2
  425. package/dist/{useDrillDownContext-BssSasVB.js.map → useDrillDownContext-iUvoTget.js.map} +1 -1
  426. package/dist/{useDrilldown-D6VZNSCX.js → useDrilldown-D5WWJRU2.js} +7 -7
  427. package/dist/{useDrilldown-D6VZNSCX.js.map → useDrilldown-D5WWJRU2.js.map} +1 -1
  428. package/dist/{useLayoutPropsUtil-DMDdfIah.js → useLayoutPropsUtil-CB_zHDbW.js} +3 -3
  429. package/dist/{useLayoutPropsUtil-DMDdfIah.js.map → useLayoutPropsUtil-CB_zHDbW.js.map} +1 -1
  430. package/dist/{useToggleSelection-BBdrIVWs.js → useToggleSelection-D_2qS0P1.js} +2 -2
  431. package/dist/{useToggleSelection-BBdrIVWs.js.map → useToggleSelection-D_2qS0P1.js.map} +1 -1
  432. package/package.json +3 -3
  433. package/dist/Alert-Dj61Bq8h.js.map +0 -1
  434. package/dist/AnvilProvider-DUPYyMc7.js.map +0 -1
  435. package/dist/Avatar-BckUfs1N.js.map +0 -1
  436. package/dist/Button.module-wCtFYGVD.js +0 -26
  437. package/dist/Button.module-wCtFYGVD.js.map +0 -1
  438. package/dist/ButtonCompound-Cmw3cgMY.js.map +0 -1
  439. package/dist/ButtonLink-BJKTJER8.js.map +0 -1
  440. package/dist/ButtonToggle-DaFQ3DBG.js.map +0 -1
  441. package/dist/Calendar-Dxl9QnfP.js.map +0 -1
  442. package/dist/Checkbox-B-XTVPbX.js.map +0 -1
  443. package/dist/Checkbox.module-EkRZO48Y.js +0 -28
  444. package/dist/Checkbox.module-EkRZO48Y.js.map +0 -1
  445. package/dist/Chip-Ce0WGKAc.js.map +0 -1
  446. package/dist/Combobox-CNQUROyr.js.map +0 -1
  447. package/dist/DataTable-BCV_mtSy.js.map +0 -1
  448. package/dist/Dialog-Cewu2pd_.js.map +0 -1
  449. package/dist/DrillDown.module-C8VOhzaF.js +0 -27
  450. package/dist/FieldMessage-COHqUdj5.js +0 -132
  451. package/dist/FieldMessage-COHqUdj5.js.map +0 -1
  452. package/dist/Helper-B_FIOlhy.js.map +0 -1
  453. package/dist/Link.module-CZt9wvuD.js +0 -12
  454. package/dist/Link.module-CZt9wvuD.js.map +0 -1
  455. package/dist/LinkButton-DGyHR1E7.js.map +0 -1
  456. package/dist/LinkButton.css +0 -5
  457. package/dist/ListView.module-BilDg12y.js +0 -9
  458. package/dist/ListView.module-BilDg12y.js.map +0 -1
  459. package/dist/Listbox.module-HAXMOKvC.js +0 -18
  460. package/dist/Listbox.module-HAXMOKvC.js.map +0 -1
  461. package/dist/MultiSelectFieldSync-ChZCW4M9.js.map +0 -1
  462. package/dist/Page-BHdvTlfE.js.map +0 -1
  463. package/dist/Radio-DJZVMCv0.js.map +0 -1
  464. package/dist/SegmentedControl-B9NWUF7s.js.map +0 -1
  465. package/dist/SelectCard-DVcWJRbX.js +0 -352
  466. package/dist/SelectCard-DVcWJRbX.js.map +0 -1
  467. package/dist/SelectFieldSync-o1Cp9UYC.js.map +0 -1
  468. package/dist/SelectTriggerBase.module-CKoq6qzX.js +0 -38
  469. package/dist/SelectTriggerBase.module-CKoq6qzX.js.map +0 -1
  470. package/dist/SideNav-CrxYExjh.js.map +0 -1
  471. package/dist/Spinner-BqmcE2pb.js.map +0 -1
  472. package/dist/Tab-BZpTCG0i.js.map +0 -1
  473. package/dist/Text-WiS8UZkY.js.map +0 -1
  474. package/dist/TextField.module-BP-hDP5m.js +0 -22
  475. package/dist/TextField.module-BP-hDP5m.js.map +0 -1
  476. package/dist/ThemeProvider-CaYW3RuA.js.map +0 -1
  477. package/dist/Toaster-DYJm06Vb.js.map +0 -1
  478. package/dist/beta/components/Table/DataTable/internal/cells/CellFocusContext.d.ts +0 -16
  479. package/dist/beta/components/Table/DataTable/internal/context/hover/DTHoverContext.d.ts +0 -31
  480. package/dist/beta/components/Table/DataTable/internal/context/hover/DTHoverProvider.d.ts +0 -3
  481. package/dist/beta/components/Table/DataTable/internal/context/hover/useDTHoverDispatchContext.d.ts +0 -1
  482. package/dist/beta/components/Table/DataTable/internal/context/hover/useDTHoverStateContext.d.ts +0 -4
  483. package/dist/beta/components/Table/internal/getColSpanWidth.d.ts +0 -7
  484. package/dist/indeterminate_check_box-B4zobNlt.js.map +0 -1
  485. package/dist/primitive-C3RFDRA8.js +0 -255
  486. package/dist/primitive-C3RFDRA8.js.map +0 -1
  487. package/dist/syncFilterUtils-UR5Vgqkh.js.map +0 -1
  488. package/dist/token/core/raw.js +0 -234
@@ -1,29 +1,30 @@
1
1
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
- import { C as Chip } from './Chip-Ce0WGKAc.js';
3
- import { F as Flex } from './Flex-WyyZm1bf.js';
2
+ import { C as Chip } from './Chip-CR5i8mQW.js';
3
+ import { F as Flex } from './Flex-DOUtHiPi.js';
4
4
  import * as React from 'react';
5
- import { useRef, useState, useLayoutEffect, createContext, useContext, useCallback, forwardRef, useMemo, useImperativeHandle, useEffect, useId, Fragment as Fragment$1, isValidElement, useReducer } from 'react';
5
+ import { useRef, useState, useLayoutEffect, createContext, useContext, useCallback, forwardRef, useMemo, useImperativeHandle, useEffect, useId, memo as memo$1, Fragment as Fragment$1, isValidElement } from 'react';
6
6
  import { c as cx } from './index-De1g9FRV.js';
7
7
  import { D as DateTime } from './luxon-wpz4A-OQ.js';
8
- import { C as Checkbox } from './Checkbox-Cw1-KFvq.js';
9
- import { B as Button } from './Button-BdrrhBTI.js';
8
+ import { C as Checkbox } from './Checkbox-Ckl8EFpF.js';
9
+ import { B as Button } from './Button-Bnt8XUI7.js';
10
10
  import { S as SvgChevronRight } from './chevron_right-BdpsxX7x.js';
11
11
  import { S as SvgEdit } from './edit-DQOiktcu.js';
12
- import { I as Icon } from './Icon-DuIlne4x.js';
13
- import { S as SrOnly } from './SrOnly-eUpYGpAT.js';
12
+ import { I as Icon } from './Icon-BMMbp40n.js';
13
+ import { S as SrOnly } from './SrOnly-pnf8ajnh.js';
14
14
  import { u as useNumberField } from './useNumberField-eMyk7MB8.js';
15
15
  import { u as useMergeRefs, m as mergeRefs } from './useMergeRefs-Dfmtq9cI.js';
16
- import { a as SelectMenuSync, S as SelectMenu } from './SelectMenuSync-DXrwecFt.js';
17
- import { a as MultiSelectMenuSync, M as MultiSelectMenu } from './MultiSelectMenuSync-7C1wW4oO.js';
18
- import { F as FieldLabel } from './FieldLabel-HO2VP-4B.js';
16
+ import { a as SelectMenuSync, S as SelectMenu } from './SelectMenuSync-V97oN85V.js';
17
+ import { a as MultiSelectMenuSync, M as MultiSelectMenu } from './MultiSelectMenuSync-dgO9SmHi.js';
18
+ import { F as FieldLabel } from './FieldLabel-DZWu5dMp.js';
19
19
  import { S as SvgError } from './error-DR_wWdYY.js';
20
20
  import { S as SvgWarning } from './warning-c4Wj1rI4.js';
21
- import { T as Tooltip } from './Tooltip-C1PBRnJv.js';
21
+ import { T as Tooltip } from './Tooltip-BlStOXN3.js';
22
22
  import { flushSync } from 'react-dom';
23
- import { u as useLayoutPropsUtil } from './useLayoutPropsUtil-DMDdfIah.js';
24
- import { P as Pagination } from './Pagination-DecGSuW4.js';
23
+ import { u as useLayoutPropsUtil } from './useLayoutPropsUtil-CB_zHDbW.js';
24
+ import { P as Pagination } from './Pagination-USDJM5vi.js';
25
25
  import { T as ThemeProviderContext } from './ThemeProviderContext-l52GohYT.js';
26
- import { S as Spinner } from './Spinner-BqmcE2pb.js';
26
+ import { u as useVirtualizer } from './index-DXeGMe23.js';
27
+ import { S as Spinner } from './Spinner-lPMo68yW.js';
27
28
  import { u as useOptionallyControlledState } from './useOptionallyControlledState-DbDuos5L.js';
28
29
  import { u as usePrefersColorScheme } from './usePrefersColorScheme-_hT7dK7_.js';
29
30
 
@@ -35,24 +36,25 @@ import './DataTable.css';const booleanFormatter = (value, { trueLabel = "True",
35
36
  };
36
37
 
37
38
  const styles$f = {
38
- "table-header-cell": "_table-header-cell_nfkc_2",
39
- "table-body-cell": "_table-body-cell_nfkc_3",
40
- "table-footer-cell": "_table-footer-cell_nfkc_4",
41
- "last-pinned-left-column": "_last-pinned-left-column_nfkc_33",
42
- "first-pinned-right-column": "_first-pinned-right-column_nfkc_33",
43
- "empty-cell": "_empty-cell_nfkc_54",
44
- "table-cell-internal-select": "_table-cell-internal-select_nfkc_71",
45
- "table-cell-internal-expand": "_table-cell-internal-expand_nfkc_72",
46
- "table-header-cell-group": "_table-header-cell-group_nfkc_91",
47
- "table-header-cell-sortable": "_table-header-cell-sortable_nfkc_100",
48
- "table-header-cell-interactive": "_table-header-cell-interactive_nfkc_101"};
39
+ "table-header-cell": "_table-header-cell_ofjhm_4",
40
+ "table-body-cell": "_table-body-cell_ofjhm_5",
41
+ "table-footer-cell": "_table-footer-cell_ofjhm_6",
42
+ "last-pinned-left-column": "_last-pinned-left-column_ofjhm_31",
43
+ "first-pinned-right-column": "_first-pinned-right-column_ofjhm_31",
44
+ "empty-cell": "_empty-cell_ofjhm_56",
45
+ "table-cell-internal-select": "_table-cell-internal-select_ofjhm_73",
46
+ "table-cell-internal-expand": "_table-cell-internal-expand_ofjhm_77",
47
+ "table-header-cell-sortable": "_table-header-cell-sortable_ofjhm_82",
48
+ "table-header-cell-interactive": "_table-header-cell-interactive_ofjhm_83",
49
+ "table-header-cell-group": "_table-header-cell-group_ofjhm_87"
50
+ };
49
51
 
50
52
  const TableEmptyCellContent = () => {
51
53
  return /* @__PURE__ */ jsx("span", { "aria-label": "empty table cell", className: styles$f["empty-cell"], children: "—" });
52
54
  };
53
55
 
54
56
  const styles$e = {
55
- "truncate-chips": "_truncate-chips_1lgyk_2"
57
+ "truncate-chips": "_truncate-chips_19u8s_4"
56
58
  };
57
59
 
58
60
  const TruncateChips = ({
@@ -368,13 +370,13 @@ function htmlToMarkdown(value) {
368
370
  return result;
369
371
  }
370
372
 
371
- const code = "_code_1u8e7_1";
372
- const highlight = "_highlight_1u8e7_2";
373
- const list = "_list_1u8e7_3";
374
- const container = "_container_1u8e7_4";
373
+ const highlight = "_highlight_1t8gj_1";
374
+ const code = "_code_1t8gj_7";
375
+ const list = "_list_1t8gj_15";
376
+ const container = "_container_1t8gj_23";
375
377
  const styles$d = {
376
- code: code,
377
378
  highlight: highlight,
379
+ code: code,
378
380
  list: list,
379
381
  container: container
380
382
  };
@@ -1192,7 +1194,7 @@ const createRow = (table, id, original, rowIndex, depth, subRows, parentId) => {
1192
1194
  var _row$getValue;
1193
1195
  return (_row$getValue = row.getValue(columnId)) != null ? _row$getValue : table.options.renderFallbackValue;
1194
1196
  },
1195
- subRows: subRows != null ? subRows : [],
1197
+ subRows: [],
1196
1198
  getLeafRows: () => flattenBy(row.subRows, d => d.subRows),
1197
1199
  getParentRow: () => row.parentId ? table.getRow(row.parentId, true) : undefined,
1198
1200
  getParentRows: () => {
@@ -3657,146 +3659,6 @@ function expandRows(rowModel) {
3657
3659
  };
3658
3660
  }
3659
3661
 
3660
- function getGroupedRowModel() {
3661
- return table => memo(() => [table.getState().grouping, table.getPreGroupedRowModel()], (grouping, rowModel) => {
3662
- if (!rowModel.rows.length || !grouping.length) {
3663
- rowModel.rows.forEach(row => {
3664
- row.depth = 0;
3665
- row.parentId = undefined;
3666
- });
3667
- return rowModel;
3668
- }
3669
-
3670
- // Filter the grouping list down to columns that exist
3671
- const existingGrouping = grouping.filter(columnId => table.getColumn(columnId));
3672
- const groupedFlatRows = [];
3673
- const groupedRowsById = {};
3674
- // const onlyGroupedFlatRows: Row[] = [];
3675
- // const onlyGroupedRowsById: Record<RowId, Row> = {};
3676
- // const nonGroupedFlatRows: Row[] = [];
3677
- // const nonGroupedRowsById: Record<RowId, Row> = {};
3678
-
3679
- // Recursively group the data
3680
- const groupUpRecursively = function (rows, depth, parentId) {
3681
- if (depth === void 0) {
3682
- depth = 0;
3683
- }
3684
- // Grouping depth has been been met
3685
- // Stop grouping and simply rewrite thd depth and row relationships
3686
- if (depth >= existingGrouping.length) {
3687
- return rows.map(row => {
3688
- row.depth = depth;
3689
- groupedFlatRows.push(row);
3690
- groupedRowsById[row.id] = row;
3691
- if (row.subRows) {
3692
- row.subRows = groupUpRecursively(row.subRows, depth + 1, row.id);
3693
- }
3694
- return row;
3695
- });
3696
- }
3697
- const columnId = existingGrouping[depth];
3698
-
3699
- // Group the rows together for this level
3700
- const rowGroupsMap = groupBy(rows, columnId);
3701
-
3702
- // Perform aggregations for each group
3703
- const aggregatedGroupedRows = Array.from(rowGroupsMap.entries()).map((_ref, index) => {
3704
- let [groupingValue, groupedRows] = _ref;
3705
- let id = `${columnId}:${groupingValue}`;
3706
- id = parentId ? `${parentId}>${id}` : id;
3707
-
3708
- // First, Recurse to group sub rows before aggregation
3709
- const subRows = groupUpRecursively(groupedRows, depth + 1, id);
3710
- subRows.forEach(subRow => {
3711
- subRow.parentId = id;
3712
- });
3713
-
3714
- // Flatten the leaf rows of the rows in this group
3715
- const leafRows = depth ? flattenBy(groupedRows, row => row.subRows) : groupedRows;
3716
- const row = createRow(table, id, leafRows[0].original, index, depth, undefined, parentId);
3717
- Object.assign(row, {
3718
- groupingColumnId: columnId,
3719
- groupingValue,
3720
- subRows,
3721
- leafRows,
3722
- getValue: columnId => {
3723
- // Don't aggregate columns that are in the grouping
3724
- if (existingGrouping.includes(columnId)) {
3725
- if (row._valuesCache.hasOwnProperty(columnId)) {
3726
- return row._valuesCache[columnId];
3727
- }
3728
- if (groupedRows[0]) {
3729
- var _groupedRows$0$getVal;
3730
- row._valuesCache[columnId] = (_groupedRows$0$getVal = groupedRows[0].getValue(columnId)) != null ? _groupedRows$0$getVal : undefined;
3731
- }
3732
- return row._valuesCache[columnId];
3733
- }
3734
- if (row._groupingValuesCache.hasOwnProperty(columnId)) {
3735
- return row._groupingValuesCache[columnId];
3736
- }
3737
-
3738
- // Aggregate the values
3739
- const column = table.getColumn(columnId);
3740
- const aggregateFn = column == null ? void 0 : column.getAggregationFn();
3741
- if (aggregateFn) {
3742
- row._groupingValuesCache[columnId] = aggregateFn(columnId, leafRows, groupedRows);
3743
- return row._groupingValuesCache[columnId];
3744
- }
3745
- }
3746
- });
3747
- subRows.forEach(subRow => {
3748
- groupedFlatRows.push(subRow);
3749
- groupedRowsById[subRow.id] = subRow;
3750
- // if (subRow.getIsGrouped?.()) {
3751
- // onlyGroupedFlatRows.push(subRow);
3752
- // onlyGroupedRowsById[subRow.id] = subRow;
3753
- // } else {
3754
- // nonGroupedFlatRows.push(subRow);
3755
- // nonGroupedRowsById[subRow.id] = subRow;
3756
- // }
3757
- });
3758
- return row;
3759
- });
3760
- return aggregatedGroupedRows;
3761
- };
3762
- const groupedRows = groupUpRecursively(rowModel.rows, 0);
3763
- groupedRows.forEach(subRow => {
3764
- groupedFlatRows.push(subRow);
3765
- groupedRowsById[subRow.id] = subRow;
3766
- // if (subRow.getIsGrouped?.()) {
3767
- // onlyGroupedFlatRows.push(subRow);
3768
- // onlyGroupedRowsById[subRow.id] = subRow;
3769
- // } else {
3770
- // nonGroupedFlatRows.push(subRow);
3771
- // nonGroupedRowsById[subRow.id] = subRow;
3772
- // }
3773
- });
3774
- return {
3775
- rows: groupedRows,
3776
- flatRows: groupedFlatRows,
3777
- rowsById: groupedRowsById
3778
- };
3779
- }, getMemoOptions(table.options, 'debugTable', 'getGroupedRowModel', () => {
3780
- table._queue(() => {
3781
- table._autoResetExpanded();
3782
- table._autoResetPageIndex();
3783
- });
3784
- }));
3785
- }
3786
- function groupBy(rows, columnId) {
3787
- const groupMap = new Map();
3788
- return rows.reduce((map, row) => {
3789
- const resKey = `${row.getGroupingValue(columnId)}`;
3790
- const previous = map.get(resKey);
3791
- if (!previous) {
3792
- map.set(resKey, [row]);
3793
- } else {
3794
- previous.push(row);
3795
- }
3796
- return map;
3797
- }, groupMap);
3798
- }
3799
-
3800
3662
  function getPaginationRowModel(opts) {
3801
3663
  return table => memo(() => [table.getState().pagination, table.getPrePaginationRowModel(), table.options.paginateExpandedRows ? undefined : table.getState().expanded], (pagination, rowModel) => {
3802
3664
  if (!rowModel.rows.length) {
@@ -4059,8 +3921,8 @@ function useDTFocusDispatchContext() {
4059
3921
  }
4060
3922
 
4061
3923
  const styles$c = {
4062
- "table-base": "_table-base_11xh7_2",
4063
- "data-table-base": "_data-table-base_11xh7_15"
3924
+ "table-base": "_table-base_qvkwx_4",
3925
+ "data-table-base": "_data-table-base_qvkwx_22"
4064
3926
  };
4065
3927
 
4066
3928
  const SimpleTableBase = ({
@@ -4088,7 +3950,7 @@ const DataTableBase = ({
4088
3950
  ...rest
4089
3951
  }) => {
4090
3952
  const tableBaseClassNames = cx(className, styles$c["data-table-base"]);
4091
- const { focusTableGenerally, blur } = useDTFocusDispatchContext();
3953
+ const { focusTableGenerally, blur, moveFocusToCell } = useDTFocusDispatchContext();
4092
3954
  const handleBlur = (event) => {
4093
3955
  if (!event.currentTarget.contains(event.relatedTarget)) {
4094
3956
  blur();
@@ -4097,6 +3959,16 @@ const DataTableBase = ({
4097
3959
  const handleFocus = (event) => {
4098
3960
  if (event.target === event.currentTarget) {
4099
3961
  focusTableGenerally();
3962
+ return;
3963
+ }
3964
+ const targetEl = event.target;
3965
+ const cellEl = targetEl.closest("[data-cell-pos]");
3966
+ const cellPosAttr = cellEl?.getAttribute("data-cell-pos");
3967
+ if (cellPosAttr) {
3968
+ const [rowIndex, columnIndex] = cellPosAttr.split(",").map(Number);
3969
+ if (!Number.isNaN(rowIndex) && !Number.isNaN(columnIndex)) {
3970
+ moveFocusToCell({ rowIndex, columnIndex });
3971
+ }
4100
3972
  }
4101
3973
  };
4102
3974
  return /* @__PURE__ */ jsx(
@@ -4132,7 +4004,7 @@ const TableBase = ({ type, ...rest }) => {
4132
4004
  };
4133
4005
 
4134
4006
  const styles$b = {
4135
- "table-body": "_table-body_zx1bt_2"
4007
+ "table-body": "_table-body_1crpq_4"
4136
4008
  };
4137
4009
 
4138
4010
  function TableBody({ type, children, ...rest }) {
@@ -4162,9 +4034,9 @@ const getCommonPinningClasses = (column) => {
4162
4034
  };
4163
4035
 
4164
4036
  const styles$a = {
4165
- "data-table-body-cell-input": "_data-table-body-cell-input_wnkkd_2",
4166
- "data-table-body-cell-editable": "_data-table-body-cell-editable_wnkkd_36",
4167
- "data-table-body-cell-edit-icon-container": "_data-table-body-cell-edit-icon-container_wnkkd_36"
4037
+ "data-table-body-cell-input": "_data-table-body-cell-input_i8xxd_4",
4038
+ "data-table-body-cell-editable": "_data-table-body-cell-editable_i8xxd_39",
4039
+ "data-table-body-cell-edit-icon-container": "_data-table-body-cell-edit-icon-container_i8xxd_39"
4168
4040
  };
4169
4041
 
4170
4042
  const DataTableEditableCellEditIcon = () => {
@@ -4200,19 +4072,19 @@ const TableBodyCell = forwardRef(({ type, children, className, isExpandCell, isS
4200
4072
  TableBodyCell.displayName = "TableBodyCell";
4201
4073
 
4202
4074
  const styles$9 = {
4203
- "data-table-body-cell": "_data-table-body-cell_l8lyo_2",
4204
- "data-table-body-cell-input": "_data-table-body-cell-input_l8lyo_3",
4205
- "table-body-cell": "_table-body-cell_l8lyo_18",
4206
- "table-header-cell": "_table-header-cell_l8lyo_19",
4207
- "table-footer-cell": "_table-footer-cell_l8lyo_20",
4208
- "data-table-body-cell-editing": "_data-table-body-cell-editing_l8lyo_32",
4209
- "data-table-header-cell": "_data-table-header-cell_l8lyo_33",
4210
- "data-table-footer-cell": "_data-table-footer-cell_l8lyo_36",
4211
- "data-table-body-cell-hovered": "_data-table-body-cell-hovered_l8lyo_82",
4212
- "data-table-body-cell-error": "_data-table-body-cell-error_l8lyo_85",
4213
- "data-table-body-cell-warning": "_data-table-body-cell-warning_l8lyo_102",
4214
- "cell-error-icon": "_cell-error-icon_l8lyo_111",
4215
- "cell-warning-icon": "_cell-warning-icon_l8lyo_112"
4075
+ "data-table-body-cell": "_data-table-body-cell_12iyq_4",
4076
+ "data-table-body-cell-input": "_data-table-body-cell-input_12iyq_5",
4077
+ "table-body-cell": "_table-body-cell_12iyq_10",
4078
+ "table-header-cell": "_table-header-cell_12iyq_11",
4079
+ "table-footer-cell": "_table-footer-cell_12iyq_12",
4080
+ "data-table-cell-content": "_data-table-cell-content_12iyq_24",
4081
+ "data-table-body-cell-editing": "_data-table-body-cell-editing_12iyq_47",
4082
+ "data-table-header-cell": "_data-table-header-cell_12iyq_48",
4083
+ "data-table-footer-cell": "_data-table-footer-cell_12iyq_51",
4084
+ "data-table-body-cell-error": "_data-table-body-cell-error_12iyq_101",
4085
+ "data-table-body-cell-warning": "_data-table-body-cell-warning_12iyq_116",
4086
+ "cell-error-icon": "_cell-error-icon_12iyq_126",
4087
+ "cell-warning-icon": "_cell-warning-icon_12iyq_131"
4216
4088
  };
4217
4089
 
4218
4090
  function formatCellPositionString(cellPosition) {
@@ -4259,37 +4131,33 @@ const getCommonPinningStyles = (column) => {
4259
4131
  zIndex: isPinned ? 1 : 0
4260
4132
  };
4261
4133
  };
4134
+ const EMPTY_PINNING_STYLES = Object.freeze({
4135
+ left: void 0,
4136
+ right: void 0,
4137
+ position: "relative",
4138
+ zIndex: 0
4139
+ });
4262
4140
  const useCommonPinningStyles = (column) => {
4141
+ const isPinned = column.getIsPinned();
4263
4142
  const left = column.getStart("left");
4264
4143
  const right = column.getAfter("right");
4265
- const isPinned = column.getIsPinned();
4266
- return useMemo(
4267
- () => ({
4144
+ return useMemo(() => {
4145
+ if (!isPinned) return EMPTY_PINNING_STYLES;
4146
+ return {
4268
4147
  left: isPinned === "left" ? `${left}px` : void 0,
4269
4148
  right: isPinned === "right" ? `${right}px` : void 0,
4270
- position: isPinned ? "sticky" : "relative",
4271
- zIndex: isPinned ? 1 : 0
4272
- }),
4273
- [left, right, isPinned]
4274
- );
4149
+ position: "sticky",
4150
+ zIndex: 1
4151
+ };
4152
+ }, [left, right, isPinned]);
4275
4153
  };
4276
4154
 
4277
4155
  const INTERNAL_ROW_ACTION_PRIMARY_COLUMN_ID = "a2-table-internal-row-action-primary";
4278
4156
  const INTERNAL_ROW_ACTION_SECONDARY_COLUMN_ID = "a2-table-internal-row-action-secondary";
4279
4157
 
4280
- const CellFocusContext = createContext(
4281
- null
4282
- );
4283
- function useCellFocusContext() {
4284
- return useContext(CellFocusContext);
4285
- }
4286
-
4287
4158
  function DataTableBodyImmutableCell(props) {
4288
- const { cell, cellPosition, children, isHovered, ...rest } = props;
4159
+ const { cell, cellPosition, children, ...rest } = props;
4289
4160
  const cellRef = useRef(null);
4290
- const [tabIndex, setTabIndex] = useState(-1);
4291
- const [isFocused, setIsFocused] = useState(false);
4292
- const { moveFocusToCell } = useDTFocusDispatchContext();
4293
4161
  const column = cell.column;
4294
4162
  const rowCanExpand = cell.row.getCanExpand();
4295
4163
  const rowIsExpanded = cell.row.getIsExpanded();
@@ -4304,7 +4172,6 @@ function DataTableBodyImmutableCell(props) {
4304
4172
  const cellError = meta?.errors?.[column.id];
4305
4173
  const cellWarning = meta?.warnings?.[column.id];
4306
4174
  const classes = cx(styles$9["data-table-body-cell"], rest.className, {
4307
- [styles$9["data-table-body-cell-hovered"]]: isHovered,
4308
4175
  [styles$9["data-table-body-cell-error"]]: !!cellError,
4309
4176
  [styles$9["data-table-body-cell-warning"]]: !cellError && !!cellWarning,
4310
4177
  [styles$f["table-cell-internal-expand"]]: isExpandCell,
@@ -4376,19 +4243,6 @@ function DataTableBodyImmutableCell(props) {
4376
4243
  toggleRowExpanded
4377
4244
  ]
4378
4245
  );
4379
- const handleFocus = useCallback(() => {
4380
- setTabIndex(0);
4381
- setIsFocused(true);
4382
- moveFocusToCell(cellPosition);
4383
- }, [moveFocusToCell, cellPosition]);
4384
- const handleBlur = useCallback(() => {
4385
- setTabIndex(-1);
4386
- setIsFocused(false);
4387
- }, []);
4388
- const cellFocusContextValue = useMemo(
4389
- () => ({ isCellFocused: isFocused }),
4390
- [isFocused]
4391
- );
4392
4246
  return /* @__PURE__ */ jsx(
4393
4247
  TableBodyCell,
4394
4248
  {
@@ -4396,13 +4250,11 @@ function DataTableBodyImmutableCell(props) {
4396
4250
  ...rest,
4397
4251
  className: classes,
4398
4252
  ref: cellRef,
4399
- tabIndex,
4400
- onFocus: handleFocus,
4401
- onBlur: handleBlur,
4253
+ tabIndex: -1,
4402
4254
  style: commonPinningStyles,
4403
4255
  onKeyDown: handleKeyDown,
4404
4256
  "data-cell-pos": formatCellPositionString(cellPosition),
4405
- children: /* @__PURE__ */ jsx(CellFocusContext.Provider, { value: cellFocusContextValue, children })
4257
+ children
4406
4258
  }
4407
4259
  );
4408
4260
  }
@@ -4531,10 +4383,6 @@ function DataTableEditableTextCellInner(props, ref) {
4531
4383
  },
4532
4384
  [beginEditing, cellPosition, moveFocusToCell]
4533
4385
  );
4534
- const cellFocusContextValue = useMemo(
4535
- () => ({ isCellFocused: tabIndex === 0 && !isEditing }),
4536
- [tabIndex, isEditing]
4537
- );
4538
4386
  useEffect(() => {
4539
4387
  if (isEditing) {
4540
4388
  inputRef.current?.focus();
@@ -4570,7 +4418,7 @@ function DataTableEditableTextCellInner(props, ref) {
4570
4418
  onBlur: handleInputBlur,
4571
4419
  onKeyDown: handleInputKeyDown
4572
4420
  }
4573
- ) }) : /* @__PURE__ */ jsxs(CellFocusContext.Provider, { value: cellFocusContextValue, children: [
4421
+ ) }) : /* @__PURE__ */ jsxs(Fragment, { children: [
4574
4422
  children,
4575
4423
  !isEditing && /* @__PURE__ */ jsx(DataTableEditableCellEditIcon, {})
4576
4424
  ] }),
@@ -4729,10 +4577,6 @@ function DataTableEditableNumberCellInner(props, ref) {
4729
4577
  },
4730
4578
  [beginEditing, cellPosition, moveFocusToCell]
4731
4579
  );
4732
- const cellFocusContextValue = useMemo(
4733
- () => ({ isCellFocused: tabIndex === 0 && !isEditing }),
4734
- [tabIndex, isEditing]
4735
- );
4736
4580
  useEffect(() => {
4737
4581
  if (isEditing) {
4738
4582
  localInputRef.current?.focus();
@@ -4768,7 +4612,7 @@ function DataTableEditableNumberCellInner(props, ref) {
4768
4612
  onBlur: handleInputBlur,
4769
4613
  onKeyDown: handleInputKeyDown
4770
4614
  }
4771
- ) }) : /* @__PURE__ */ jsxs(CellFocusContext.Provider, { value: cellFocusContextValue, children: [
4615
+ ) }) : /* @__PURE__ */ jsxs(Fragment, { children: [
4772
4616
  children,
4773
4617
  !isEditing && /* @__PURE__ */ jsx(DataTableEditableCellEditIcon, {})
4774
4618
  ] }),
@@ -4846,10 +4690,6 @@ function useEditableMenuCell({
4846
4690
  },
4847
4691
  []
4848
4692
  );
4849
- const cellFocusContextValue = useMemo(
4850
- () => ({ isCellFocused: tabIndex === 0 }),
4851
- [tabIndex]
4852
- );
4853
4693
  return {
4854
4694
  tabIndex,
4855
4695
  cellRef,
@@ -4859,8 +4699,7 @@ function useEditableMenuCell({
4859
4699
  handleImplicitClose,
4860
4700
  handleCellMouseDown,
4861
4701
  handleCellBlur,
4862
- handleCellFocus,
4863
- cellFocusContextValue
4702
+ handleCellFocus
4864
4703
  };
4865
4704
  }
4866
4705
 
@@ -4897,8 +4736,7 @@ function DataTableEditableSelectCellInner(props, ref) {
4897
4736
  handleImplicitClose,
4898
4737
  handleCellMouseDown,
4899
4738
  handleCellBlur,
4900
- handleCellFocus,
4901
- cellFocusContextValue
4739
+ handleCellFocus
4902
4740
  } = useEditableMenuCell({ cellPosition, onCellKeyDown, ref });
4903
4741
  const selectedOption = useMemo(() => {
4904
4742
  if (cellValue === void 0 || cellValue === null) return null;
@@ -4944,10 +4782,8 @@ function DataTableEditableSelectCellInner(props, ref) {
4944
4782
  "data-state": dataState,
4945
4783
  onKeyDown: (e) => handleCellKeyDown(e, menuKeyDown, isOpen),
4946
4784
  children: [
4947
- /* @__PURE__ */ jsxs(CellFocusContext.Provider, { value: cellFocusContextValue, children: [
4948
- children,
4949
- !isOpen && /* @__PURE__ */ jsx(DataTableEditableCellEditIcon, {})
4950
- ] }),
4785
+ children,
4786
+ !isOpen && /* @__PURE__ */ jsx(DataTableEditableCellEditIcon, {}),
4951
4787
  /* @__PURE__ */ jsx(SrOnly, { children: isOpen ? "Press Enter or Space to select a cell value. Press Escape or F2 to cancel." : "Press Enter or F2 to edit cell value." })
4952
4788
  ]
4953
4789
  }
@@ -5041,8 +4877,7 @@ function DataTableEditableSelectAsyncCellInner(props, ref) {
5041
4877
  handleImplicitClose,
5042
4878
  handleCellMouseDown,
5043
4879
  handleCellBlur,
5044
- handleCellFocus,
5045
- cellFocusContextValue
4880
+ handleCellFocus
5046
4881
  } = useEditableMenuCell({ cellPosition, onCellKeyDown, ref });
5047
4882
  const selectedOption = useMemo(() => {
5048
4883
  if (cellValue === void 0 || cellValue === null) return null;
@@ -5093,10 +4928,8 @@ function DataTableEditableSelectAsyncCellInner(props, ref) {
5093
4928
  "data-state": dataState,
5094
4929
  onKeyDown: (e) => handleCellKeyDown(e, menuKeyDown, isOpen),
5095
4930
  children: [
5096
- /* @__PURE__ */ jsxs(CellFocusContext.Provider, { value: cellFocusContextValue, children: [
5097
- children,
5098
- !isOpen && /* @__PURE__ */ jsx(DataTableEditableCellEditIcon, {})
5099
- ] }),
4931
+ children,
4932
+ !isOpen && /* @__PURE__ */ jsx(DataTableEditableCellEditIcon, {}),
5100
4933
  /* @__PURE__ */ jsx(SrOnly, { children: isOpen ? "Press Enter or Space to select a cell value. Press Escape or F2 to cancel." : "Press Enter or F2 to edit cell value." })
5101
4934
  ]
5102
4935
  }
@@ -5159,8 +4992,7 @@ function DataTableEditableMultiselectCellInner(props, ref) {
5159
4992
  handleImplicitClose,
5160
4993
  handleCellMouseDown,
5161
4994
  handleCellBlur,
5162
- handleCellFocus,
5163
- cellFocusContextValue
4995
+ handleCellFocus
5164
4996
  } = useEditableMenuCell({ cellPosition, onCellKeyDown, ref });
5165
4997
  const selectedOptions = useMemo(() => {
5166
4998
  if (!Array.isArray(cellValue)) return [];
@@ -5207,10 +5039,8 @@ function DataTableEditableMultiselectCellInner(props, ref) {
5207
5039
  "data-state": dataState,
5208
5040
  onKeyDown: (e) => handleCellKeyDown(e, menuKeyDown, isOpen),
5209
5041
  children: [
5210
- /* @__PURE__ */ jsxs(CellFocusContext.Provider, { value: cellFocusContextValue, children: [
5211
- children,
5212
- !isOpen && /* @__PURE__ */ jsx(DataTableEditableCellEditIcon, {})
5213
- ] }),
5042
+ children,
5043
+ !isOpen && /* @__PURE__ */ jsx(DataTableEditableCellEditIcon, {}),
5214
5044
  /* @__PURE__ */ jsx(SrOnly, { children: isOpen ? "Press Enter or Space to select cell values. Press Escape or F2 to close." : "Press Enter or F2 to edit cell value." })
5215
5045
  ]
5216
5046
  }
@@ -5305,8 +5135,7 @@ function DataTableEditableMultiselectAsyncCellInner(props, ref) {
5305
5135
  handleImplicitClose,
5306
5136
  handleCellMouseDown,
5307
5137
  handleCellBlur,
5308
- handleCellFocus,
5309
- cellFocusContextValue
5138
+ handleCellFocus
5310
5139
  } = useEditableMenuCell({ cellPosition, onCellKeyDown, ref });
5311
5140
  const selectedOptions = useMemo(() => {
5312
5141
  if (!Array.isArray(cellValue)) return [];
@@ -5356,10 +5185,8 @@ function DataTableEditableMultiselectAsyncCellInner(props, ref) {
5356
5185
  "data-state": dataState,
5357
5186
  onKeyDown: (e) => handleCellKeyDown(e, menuKeyDown, isOpen),
5358
5187
  children: [
5359
- /* @__PURE__ */ jsxs(CellFocusContext.Provider, { value: cellFocusContextValue, children: [
5360
- children,
5361
- !isOpen && /* @__PURE__ */ jsx(DataTableEditableCellEditIcon, {})
5362
- ] }),
5188
+ children,
5189
+ !isOpen && /* @__PURE__ */ jsx(DataTableEditableCellEditIcon, {}),
5363
5190
  /* @__PURE__ */ jsx(SrOnly, { children: isOpen ? "Press Enter or Space to select cell values. Press Escape or F2 to close." : "Press Enter or F2 to edit cell value." })
5364
5191
  ]
5365
5192
  }
@@ -5450,8 +5277,7 @@ function DataTableEditableBooleanCellInner(props, ref) {
5450
5277
  handleImplicitClose,
5451
5278
  handleCellMouseDown,
5452
5279
  handleCellBlur,
5453
- handleCellFocus,
5454
- cellFocusContextValue
5280
+ handleCellFocus
5455
5281
  } = useEditableMenuCell({ cellPosition, onCellKeyDown, ref });
5456
5282
  const selectedOption = useMemo(() => {
5457
5283
  if (cellValue === void 0) return null;
@@ -5496,10 +5322,8 @@ function DataTableEditableBooleanCellInner(props, ref) {
5496
5322
  "data-state": dataState,
5497
5323
  onKeyDown: (e) => handleCellKeyDown(e, menuKeyDown, isOpen),
5498
5324
  children: [
5499
- /* @__PURE__ */ jsxs(CellFocusContext.Provider, { value: cellFocusContextValue, children: [
5500
- children,
5501
- !isOpen && /* @__PURE__ */ jsx(DataTableEditableCellEditIcon, {})
5502
- ] }),
5325
+ children,
5326
+ !isOpen && /* @__PURE__ */ jsx(DataTableEditableCellEditIcon, {}),
5503
5327
  /* @__PURE__ */ jsx(SrOnly, { children: isOpen ? "Press Enter or Space to select a cell value. Press Escape or F2 to cancel." : "Press Enter or F2 to edit cell value." })
5504
5328
  ]
5505
5329
  }
@@ -5529,7 +5353,7 @@ const DataTableEditableBooleanCell = Object.assign(
5529
5353
  );
5530
5354
 
5531
5355
  function DataTableBodyMutableCell(props) {
5532
- const { cell, cellPosition, children, isHovered, ...rest } = props;
5356
+ const { cell, cellPosition, children, ...rest } = props;
5533
5357
  const editableCellRef = useRef(null);
5534
5358
  const column = cell.column;
5535
5359
  const rowCanExpand = cell.row.getCanExpand();
@@ -5539,7 +5363,6 @@ function DataTableBodyMutableCell(props) {
5539
5363
  const cellError = meta?.errors?.[column.id];
5540
5364
  const cellWarning = meta?.warnings?.[column.id];
5541
5365
  const classes = cx(styles$9["data-table-body-cell"], rest.className, {
5542
- [styles$9["data-table-body-cell-hovered"]]: isHovered,
5543
5366
  [styles$9["data-table-body-cell-error"]]: !!cellError,
5544
5367
  [styles$9["data-table-body-cell-warning"]]: !cellError && !!cellWarning
5545
5368
  });
@@ -5632,14 +5455,13 @@ function DataTableBodyMutableCell(props) {
5632
5455
  onKeyDown: handleKeyDown,
5633
5456
  style: commonPinningStyles
5634
5457
  },
5635
- isHovered,
5636
5458
  children
5637
5459
  }
5638
5460
  );
5639
5461
  }
5640
5462
 
5641
5463
  function DataTableBodyCell(props) {
5642
- const { cell, cellPosition, children, isHovered, ...rest } = props;
5464
+ const { cell, cellPosition, children, ...rest } = props;
5643
5465
  const column = cell.column;
5644
5466
  const editMode = column.columnDef.meta?.editMode;
5645
5467
  const Component = editMode ? DataTableBodyMutableCell : DataTableBodyImmutableCell;
@@ -5650,51 +5472,34 @@ function DataTableBodyCell(props) {
5650
5472
  cellPosition,
5651
5473
  ...rest,
5652
5474
  "data-cell-pos": formatCellPositionString(cellPosition),
5653
- isHovered,
5654
5475
  children
5655
5476
  }
5656
5477
  );
5657
5478
  }
5658
5479
 
5659
5480
  const styles$8 = {
5660
- "data-table-body-row": "_data-table-body-row_3jgem_2",
5661
- "data-table-body-sub-component-row": "_data-table-body-sub-component-row_3jgem_22",
5662
- "data-table-body-sub-component-container": "_data-table-body-sub-component-container_3jgem_26",
5663
- "data-table-body-sub-component-content": "_data-table-body-sub-component-content_3jgem_31",
5664
- "data-table-body-cell-group": "_data-table-body-cell-group_3jgem_37"
5481
+ "data-table-body-row": "_data-table-body-row_8akvx_4",
5482
+ "data-table-body-sub-component-row": "_data-table-body-sub-component-row_8akvx_24",
5483
+ "data-table-body-virtualized": "_data-table-body-virtualized_8akvx_32",
5484
+ "data-table-body-row-virtualized": "_data-table-body-row-virtualized_8akvx_38",
5485
+ "data-table-body-sub-component-container": "_data-table-body-sub-component-container_8akvx_47",
5486
+ "data-table-body-sub-component-content": "_data-table-body-sub-component-content_8akvx_53",
5487
+ "data-table-body-cell-group": "_data-table-body-cell-group_8akvx_61"
5665
5488
  };
5666
5489
 
5667
- const DTHoverStateContext = createContext({
5668
- hoveredColumnId: null,
5669
- resizingColumnId: null
5670
- });
5671
- const DTHoverDispatchContext = createContext(() => {
5672
- });
5673
-
5674
- function useDTHoverStateContext() {
5675
- const state = useContext(DTHoverStateContext);
5676
- return {
5677
- getIsHovered: (columnId) => {
5678
- return state.hoveredColumnId === columnId && !state.resizingColumnId;
5679
- },
5680
- hoveredColumnId: state.hoveredColumnId
5681
- };
5682
- }
5683
-
5684
- function DataTableBodyRow({
5490
+ function DataTableBodyRowInner({
5685
5491
  columnOrder,
5686
5492
  row,
5687
5493
  rowIndex,
5688
- tableHasSubRows
5494
+ tableHasSubRows,
5495
+ isExpanded,
5496
+ canExpand,
5497
+ depth,
5498
+ parentRowCanExpand
5689
5499
  }) {
5690
5500
  const visibleCells = row.getVisibleCells();
5691
- const canExpand = row.getCanExpand();
5692
- const isExpanded = row.getIsExpanded();
5693
- const depth = row.depth;
5694
5501
  const id = row.id;
5695
5502
  const original = row.original;
5696
- const parentRowCanExpand = row.getParentRow()?.getCanExpand() ?? false;
5697
- const { hoveredColumnId } = useDTHoverStateContext();
5698
5503
  const { focusSubComponent, blurSubComponent } = useDTFocusDispatchContext();
5699
5504
  return /* @__PURE__ */ jsxs(Fragment$1, { children: [
5700
5505
  /* @__PURE__ */ jsx(
@@ -5718,7 +5523,7 @@ function DataTableBodyRow({
5718
5523
  cellPosition: { rowIndex, columnIndex },
5719
5524
  "aria-colindex": columnIndex + 1,
5720
5525
  className: cellClasses,
5721
- isHovered: hoveredColumnId === cell.column.id,
5526
+ "data-anv-column-id": cell.column.id,
5722
5527
  children: flexRender(cell.column.columnDef.cell, cell.getContext())
5723
5528
  },
5724
5529
  cell.id
@@ -5743,6 +5548,17 @@ function DataTableBodyRow({
5743
5548
  )
5744
5549
  ] }, row.id);
5745
5550
  }
5551
+ function areRowPropsEqual(prev, next) {
5552
+ const getRowVersion = next.getRowVersion;
5553
+ if (!getRowVersion) {
5554
+ return false;
5555
+ }
5556
+ return prev.row.id === next.row.id && getRowVersion(prev.row.original) === getRowVersion(next.row.original) && prev.rowIndex === next.rowIndex && prev.isExpanded === next.isExpanded && prev.canExpand === next.canExpand && prev.depth === next.depth && prev.parentRowCanExpand === next.parentRowCanExpand && prev.tableHasSubRows === next.tableHasSubRows && prev.columnOrder === next.columnOrder && prev.isSelected === next.isSelected && prev.isSomeSelected === next.isSomeSelected;
5557
+ }
5558
+ const DataTableBodyRow = memo$1(
5559
+ DataTableBodyRowInner,
5560
+ areRowPropsEqual
5561
+ );
5746
5562
 
5747
5563
  const useColumnOrder = ({ table }) => {
5748
5564
  const getColumnIndexes = useCallback((column) => {
@@ -5771,29 +5587,108 @@ const useColumnOrder = ({ table }) => {
5771
5587
  };
5772
5588
  };
5773
5589
 
5774
- const DataTableBodyContent = ({
5590
+ function NonVirtualizedContent({
5775
5591
  table,
5776
- hasSubRows
5777
- }) => {
5592
+ hasSubRows,
5593
+ getRowVersion
5594
+ }) {
5778
5595
  const { columnOrder } = useColumnOrder({ table });
5779
- return table.getRowModel().rows.map((row, rowIndex) => /* @__PURE__ */ jsx(
5596
+ const headerCount = table.getHeaderGroups().length;
5597
+ return /* @__PURE__ */ jsx(Fragment, { children: table.getRowModel().rows.map((row, rowIndex) => /* @__PURE__ */ jsx(
5780
5598
  DataTableBodyRow,
5781
5599
  {
5782
5600
  columnOrder,
5783
5601
  row,
5784
- rowIndex: rowIndex + table.getHeaderGroups().length,
5785
- tableHasSubRows: hasSubRows
5602
+ rowIndex: rowIndex + headerCount,
5603
+ tableHasSubRows: hasSubRows,
5604
+ isExpanded: row.getIsExpanded(),
5605
+ canExpand: row.getCanExpand(),
5606
+ depth: row.depth,
5607
+ parentRowCanExpand: row.getParentRow()?.getCanExpand() ?? false,
5608
+ isSelected: row.getIsSelected(),
5609
+ isSomeSelected: row.getIsSomeSelected(),
5610
+ getRowVersion
5786
5611
  },
5787
5612
  row.id
5788
- ));
5789
- };
5613
+ )) });
5614
+ }
5615
+ function VirtualizedContent({
5616
+ table,
5617
+ hasSubRows,
5618
+ virtualizer,
5619
+ getRowVersion
5620
+ }) {
5621
+ const { columnOrder } = useColumnOrder({ table });
5622
+ const headerCount = table.getHeaderGroups().length;
5623
+ const rows = table.getRowModel().rows;
5624
+ const virtualItems = virtualizer.getVirtualItems();
5625
+ const totalSize = virtualizer.getTotalSize();
5626
+ const measureRef = useMemo(
5627
+ () => (el) => {
5628
+ if (el) virtualizer.measureElement(el);
5629
+ },
5630
+ [virtualizer]
5631
+ );
5632
+ return /* @__PURE__ */ jsx(
5633
+ "div",
5634
+ {
5635
+ className: styles$8["data-table-body-virtualized"],
5636
+ "data-virtualized-body": "true",
5637
+ style: { height: `${totalSize}px` },
5638
+ children: virtualItems.map((virtualRow) => {
5639
+ const row = rows[virtualRow.index];
5640
+ return /* @__PURE__ */ jsx(
5641
+ "div",
5642
+ {
5643
+ ref: measureRef,
5644
+ "data-index": virtualRow.index,
5645
+ className: styles$8["data-table-body-row-virtualized"],
5646
+ style: { transform: `translateY(${virtualRow.start}px)` },
5647
+ children: /* @__PURE__ */ jsx(
5648
+ DataTableBodyRow,
5649
+ {
5650
+ columnOrder,
5651
+ row,
5652
+ rowIndex: virtualRow.index + headerCount,
5653
+ tableHasSubRows: hasSubRows,
5654
+ isExpanded: row.getIsExpanded(),
5655
+ canExpand: row.getCanExpand(),
5656
+ depth: row.depth,
5657
+ parentRowCanExpand: row.getParentRow()?.getCanExpand() ?? false,
5658
+ isSelected: row.getIsSelected(),
5659
+ isSomeSelected: row.getIsSomeSelected(),
5660
+ getRowVersion
5661
+ }
5662
+ )
5663
+ },
5664
+ row.id
5665
+ );
5666
+ })
5667
+ }
5668
+ );
5669
+ }
5790
5670
  function DataTableBody(props) {
5791
- const { table, hasSubRows, ...rest } = props;
5792
- return /* @__PURE__ */ jsx(TableBody, { type: "data-table", ...rest, children: /* @__PURE__ */ jsx(DataTableBodyContent, { table, hasSubRows }) });
5671
+ const { table, hasSubRows, virtualizer, getRowVersion, ...rest } = props;
5672
+ return /* @__PURE__ */ jsx(TableBody, { type: "data-table", ...rest, children: virtualizer ? /* @__PURE__ */ jsx(
5673
+ VirtualizedContent,
5674
+ {
5675
+ table,
5676
+ hasSubRows,
5677
+ virtualizer,
5678
+ getRowVersion
5679
+ }
5680
+ ) : /* @__PURE__ */ jsx(
5681
+ NonVirtualizedContent,
5682
+ {
5683
+ table,
5684
+ hasSubRows,
5685
+ getRowVersion
5686
+ }
5687
+ ) });
5793
5688
  }
5794
5689
 
5795
5690
  const styles$7 = {
5796
- "table-footer": "_table-footer_9bv2z_2"};
5691
+ "table-footer": "_table-footer_1d2jp_4"};
5797
5692
 
5798
5693
  function TableFooter({ type, children, ...rest }) {
5799
5694
  const classes = cx(styles$7["table-footer"], rest.className);
@@ -5829,16 +5724,7 @@ TableFooterCell.displayName = "TableFooterCell";
5829
5724
 
5830
5725
  function DataTableFooterCell(props) {
5831
5726
  const { cellPosition, children, className, ...rest } = props;
5832
- const [tabIndex, setTabIndex] = useState(-1);
5833
5727
  const footerCellRef = useRef(null);
5834
- const { moveFocusToCell } = useDTFocusDispatchContext();
5835
- const handleFocus = useCallback(() => {
5836
- moveFocusToCell(cellPosition);
5837
- setTabIndex(0);
5838
- }, [moveFocusToCell, cellPosition, setTabIndex]);
5839
- const handleBlur = useCallback(() => {
5840
- setTabIndex(-1);
5841
- }, [setTabIndex]);
5842
5728
  const { jumpFocus, moveFocus } = useDTFocusDispatchContext();
5843
5729
  const handleKeyDown = useCallback(
5844
5730
  (event) => {
@@ -5879,9 +5765,7 @@ function DataTableFooterCell(props) {
5879
5765
  type: "data-table",
5880
5766
  ...rest,
5881
5767
  ref: footerCellRef,
5882
- tabIndex,
5883
- onFocus: handleFocus,
5884
- onBlur: handleBlur,
5768
+ tabIndex: -1,
5885
5769
  onKeyDown: handleKeyDown,
5886
5770
  className: cx(styles$9["data-table-footer-cell"], className),
5887
5771
  "data-cell-pos": formatCellPositionString(cellPosition),
@@ -5891,8 +5775,8 @@ function DataTableFooterCell(props) {
5891
5775
  }
5892
5776
 
5893
5777
  const styles$6 = {
5894
- "data-table-footer-row": "_data-table-footer-row_13en8_2",
5895
- "data-table-footer": "_data-table-footer_13en8_2"
5778
+ "data-table-footer": "_data-table-footer_98moz_4",
5779
+ "data-table-footer-row": "_data-table-footer-row_98moz_8"
5896
5780
  };
5897
5781
 
5898
5782
  function DefaultTableFooterRows({
@@ -6036,6 +5920,27 @@ function DataTableFooter({
6036
5920
  ) : /* @__PURE__ */ jsx(DefaultTableFooterRows, { table, columns }) });
6037
5921
  }
6038
5922
 
5923
+ function useCellFocusListener(elementRef) {
5924
+ const [isFocused, setIsFocused] = useState(false);
5925
+ useEffect(() => {
5926
+ const el = elementRef.current;
5927
+ if (!el) return;
5928
+ const cell = el.closest('[data-anv="table-body-cell"]');
5929
+ if (!cell) return;
5930
+ const onFocusIn = () => setIsFocused(true);
5931
+ const onFocusOut = (e) => {
5932
+ if (!cell.contains(e.relatedTarget)) setIsFocused(false);
5933
+ };
5934
+ cell.addEventListener("focusin", onFocusIn);
5935
+ cell.addEventListener("focusout", onFocusOut);
5936
+ return () => {
5937
+ cell.removeEventListener("focusin", onFocusIn);
5938
+ cell.removeEventListener("focusout", onFocusOut);
5939
+ };
5940
+ }, [elementRef]);
5941
+ return isFocused;
5942
+ }
5943
+
6039
5944
  const variantConfig = {
6040
5945
  error: {
6041
5946
  icon: SvgError,
@@ -6050,7 +5955,8 @@ const variantConfig = {
6050
5955
  };
6051
5956
  function CellStatus({ status, variant }) {
6052
5957
  const message = typeof status === "string" ? status : void 0;
6053
- const cellFocusContext = useCellFocusContext();
5958
+ const ref = useRef(null);
5959
+ const isCellFocused = useCellFocusListener(ref);
6054
5960
  const [isHovered, setIsHovered] = useState(false);
6055
5961
  const config = variantConfig[variant];
6056
5962
  const icon = /* @__PURE__ */ jsx(
@@ -6062,13 +5968,14 @@ function CellStatus({ status, variant }) {
6062
5968
  }
6063
5969
  );
6064
5970
  if (!message) {
6065
- return icon;
5971
+ return /* @__PURE__ */ jsx("span", { ref, children: icon });
6066
5972
  }
6067
- const isTooltipOpen = cellFocusContext?.isCellFocused || isHovered;
5973
+ const isTooltipOpen = isCellFocused || isHovered;
6068
5974
  return /* @__PURE__ */ jsxs(Tooltip, { open: isTooltipOpen, children: [
6069
5975
  /* @__PURE__ */ jsx(
6070
5976
  Tooltip.Trigger,
6071
5977
  {
5978
+ ref,
6072
5979
  onMouseEnter: () => setIsHovered(true),
6073
5980
  onMouseLeave: () => setIsHovered(false),
6074
5981
  children: icon
@@ -6078,6 +5985,7 @@ function CellStatus({ status, variant }) {
6078
5985
  ] });
6079
5986
  }
6080
5987
 
5988
+ const sharedColumnHelper = createColumnHelper();
6081
5989
  function resolveHeaderAlign(align, isGroup = false) {
6082
5990
  if (isGroup) {
6083
5991
  return "start";
@@ -6168,10 +6076,9 @@ function getTanStackColumnDef({
6168
6076
  columnDef,
6169
6077
  emptyCellContent
6170
6078
  }) {
6171
- const columnHelper = createColumnHelper();
6172
6079
  const normalizedHeader = normalizeColumnHeader(columnDef);
6173
6080
  if (columnDef.columns && columnDef.columns.length > 0) {
6174
- return columnHelper.group({
6081
+ return sharedColumnHelper.group({
6175
6082
  id: columnDef.id,
6176
6083
  header: () => renderColumnHeader(normalizedHeader, {
6177
6084
  align: columnDef.align,
@@ -6213,7 +6120,7 @@ function getTanStackColumnDef({
6213
6120
  ...columnDef,
6214
6121
  headerLabel: normalizedHeader.label
6215
6122
  };
6216
- return columnHelper.accessor((row) => row[columnDef.id], {
6123
+ return sharedColumnHelper.accessor((row) => row[columnDef.id], {
6217
6124
  id: columnDef.id,
6218
6125
  cell: (info) => {
6219
6126
  const rawCellValue = info.row.original[columnDef.id];
@@ -6233,16 +6140,10 @@ function getTanStackColumnDef({
6233
6140
  const cellError = meta?.errors?.[columnDef.id];
6234
6141
  const cellWarning = meta?.warnings?.[columnDef.id];
6235
6142
  return /* @__PURE__ */ jsxs(
6236
- Flex,
6143
+ "div",
6237
6144
  {
6238
- justifyContent: resolvedAlign,
6239
- alignItems: "center",
6240
- wrap: "wrap",
6241
- gap: "1",
6242
- style: {
6243
- width: "100%",
6244
- textAlign: resolvedAlign
6245
- },
6145
+ className: styles$9["data-table-cell-content"],
6146
+ "data-align": resolvedAlign ?? "start",
6246
6147
  children: [
6247
6148
  cellError ? /* @__PURE__ */ jsx(CellStatus, { status: cellError, variant: "error" }) : cellWarning ? /* @__PURE__ */ jsx(CellStatus, { status: cellWarning, variant: "warning" }) : null,
6248
6149
  cellContent ?? resolvedEmptyContent
@@ -6256,6 +6157,10 @@ function getTanStackColumnDef({
6256
6157
  footer: columnDef.footerContent ? () => columnDef.footerContent : void 0,
6257
6158
  minSize: columnDef.minWidth,
6258
6159
  maxSize: columnDef.maxWidth,
6160
+ // TanStack's `size` is the column's starting width — we use `defaultWidth`
6161
+ // when provided and fall back to `minWidth` so the auto-sizing basis
6162
+ // matches the manual-resize floor by default.
6163
+ size: columnDef.defaultWidth ?? columnDef.minWidth,
6259
6164
  enableResizing: columnDef.resizable,
6260
6165
  enableSorting: !!columnDef.sortable,
6261
6166
  meta: {
@@ -6281,12 +6186,20 @@ function getTanStackColumnDef({
6281
6186
  });
6282
6187
  }
6283
6188
 
6189
+ function shallowSortingEqual(a, b) {
6190
+ if (a.length !== b.length) return false;
6191
+ for (let i = 0; i < a.length; i++) {
6192
+ if (a[i].id !== b[i].id || a[i].desc !== b[i].desc) return false;
6193
+ }
6194
+ return true;
6195
+ }
6196
+
6284
6197
  const SvgArrowUpward = (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: "M13 19V7.83l4.88 4.88c.39.39 1.03.39 1.42 0a.996.996 0 0 0 0-1.41l-6.59-6.59a.996.996 0 0 0-1.41 0l-6.6 6.58a.996.996 0 1 0 1.41 1.41L11 7.83V19c0 .55.45 1 1 1s1-.45 1-1z" }));
6285
6198
 
6286
6199
  const SvgArrowDownward = (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: "M11 5v11.17l-4.88-4.88c-.39-.39-1.03-.39-1.42 0a.996.996 0 0 0 0 1.41l6.59 6.59c.39.39 1.02.39 1.41 0l6.59-6.59a.996.996 0 1 0-1.41-1.41L13 16.17V5c0-.55-.45-1-1-1s-1 .45-1 1z" }));
6287
6200
 
6288
6201
  const styles$5 = {
6289
- "table-header": "_table-header_y7cb1_2"
6202
+ "table-header": "_table-header_1s8lb_4"
6290
6203
  };
6291
6204
 
6292
6205
  function TableHeader({ type, children, ...rest }) {
@@ -6369,15 +6282,6 @@ function DataTableHeaderCellInner(props, forwardedRef) {
6369
6282
  },
6370
6283
  [forwardedRef]
6371
6284
  );
6372
- const { moveFocusToCell } = useDTFocusDispatchContext();
6373
- const [tabIndex, setTabIndex] = useState(-1);
6374
- const handleFocus = useCallback(() => {
6375
- moveFocusToCell(cellPosition);
6376
- setTabIndex(0);
6377
- }, [moveFocusToCell, cellPosition, setTabIndex]);
6378
- const handleBlur = useCallback(() => {
6379
- setTabIndex(-1);
6380
- }, [setTabIndex]);
6381
6285
  const { jumpFocus, moveFocus } = useDTFocusDispatchContext();
6382
6286
  const columnId = header.column.id;
6383
6287
  const isExpandCell = columnId === INTERNAL_ROW_ACTION_PRIMARY_COLUMN_ID;
@@ -6470,10 +6374,8 @@ function DataTableHeaderCellInner(props, forwardedRef) {
6470
6374
  type: "data-table",
6471
6375
  ...rest,
6472
6376
  ref: setRefs,
6473
- tabIndex,
6474
- onFocus: handleFocus,
6377
+ tabIndex: -1,
6475
6378
  onClick: handleClick,
6476
- onBlur: handleBlur,
6477
6379
  onKeyDown: handleKeyDown,
6478
6380
  className: cx(styles$9["data-table-header-cell"], className),
6479
6381
  "data-cell-pos": formatCellPositionString(cellPosition),
@@ -6491,9 +6393,9 @@ function DataTableHeaderCellInner(props, forwardedRef) {
6491
6393
  }
6492
6394
  const DataTableHeaderCell = forwardRef(DataTableHeaderCellInner);
6493
6395
 
6494
- const resizing = "_resizing_spw3o_35";
6396
+ const resizing = "_resizing_sv3kd_36";
6495
6397
  const styles$4 = {
6496
- "resize-handle": "_resize-handle_spw3o_2",
6398
+ "resize-handle": "_resize-handle_sv3kd_4",
6497
6399
  resizing: resizing
6498
6400
  };
6499
6401
 
@@ -6528,13 +6430,9 @@ function ResizeHandle({
6528
6430
  }
6529
6431
 
6530
6432
  const styles$3 = {
6531
- "data-table-header-row": "_data-table-header-row_6qs0u_17"
6433
+ "data-table-header-row": "_data-table-header-row_1n8uq_4"
6532
6434
  };
6533
6435
 
6534
- function useDTHoverDispatchContext() {
6535
- return useContext(DTHoverDispatchContext);
6536
- }
6537
-
6538
6436
  function getHeaderContentAlign(align) {
6539
6437
  if (align === "center") {
6540
6438
  return "center";
@@ -6544,25 +6442,36 @@ function getHeaderContentAlign(align) {
6544
6442
  }
6545
6443
  return "flex-start";
6546
6444
  }
6547
- function DataTableHeader({ table }) {
6548
- const dispatch = useDTHoverDispatchContext();
6445
+ function DataTableHeader({
6446
+ table,
6447
+ tableRef
6448
+ }) {
6449
+ const getTableBase = useCallback(
6450
+ () => tableRef.current?.querySelector(
6451
+ '[data-anv="data-table-base"]'
6452
+ ) ?? null,
6453
+ [tableRef]
6454
+ );
6549
6455
  const handleHoverColumn = useCallback(
6550
6456
  (columnId) => {
6551
- dispatch({
6552
- type: "HOVER_START",
6553
- payload: { columnId }
6554
- });
6457
+ const base = getTableBase();
6458
+ if (!base) return;
6459
+ base.setAttribute("data-anv-hover-col", columnId);
6460
+ base.querySelectorAll(`[data-anv-column-id="${CSS.escape(columnId)}"]`).forEach((el) => el.setAttribute("data-anv-is-hovered-col", "true"));
6555
6461
  },
6556
- [dispatch]
6462
+ [getTableBase]
6557
6463
  );
6558
6464
  const handleHoverColumnLeave = useCallback(
6559
6465
  (columnId) => {
6560
- dispatch({
6561
- type: "HOVER_END",
6562
- payload: { columnId }
6563
- });
6466
+ const base = getTableBase();
6467
+ if (!base) return;
6468
+ if (base.getAttribute("data-anv-hover-col") !== columnId) return;
6469
+ base.removeAttribute("data-anv-hover-col");
6470
+ base.querySelectorAll(
6471
+ `[data-anv-column-id="${CSS.escape(columnId)}"][data-anv-is-hovered-col="true"]`
6472
+ ).forEach((el) => el.removeAttribute("data-anv-is-hovered-col"));
6564
6473
  },
6565
- [dispatch]
6474
+ [getTableBase]
6566
6475
  );
6567
6476
  const cellRefs = useRef(/* @__PURE__ */ new Map());
6568
6477
  const createResizeStartHandler = useCallback(
@@ -6580,15 +6489,6 @@ function DataTableHeader({ table }) {
6580
6489
  },
6581
6490
  [table]
6582
6491
  );
6583
- const handleResizeEnd = useCallback(
6584
- (columnId) => {
6585
- dispatch({
6586
- type: "RESIZE_END",
6587
- payload: { columnId }
6588
- });
6589
- },
6590
- [dispatch]
6591
- );
6592
6492
  const { columnOrder } = useColumnOrder({ table });
6593
6493
  return /* @__PURE__ */ jsx(TableHeader, { type: "data-table", children: table.getHeaderGroups().map((headerGroup, index) => /* @__PURE__ */ jsx(
6594
6494
  "div",
@@ -6620,6 +6520,7 @@ function DataTableHeader({ table }) {
6620
6520
  }
6621
6521
  },
6622
6522
  className: getCommonPinningClasses(header.column),
6523
+ "data-anv-column-id": header.column.id,
6623
6524
  style: {
6624
6525
  gridColumn,
6625
6526
  ...getCommonPinningStyles(header.column)
@@ -6686,8 +6587,7 @@ function DataTableHeader({ table }) {
6686
6587
  header,
6687
6588
  onResizeStart: createResizeStartHandler(
6688
6589
  header.column.id
6689
- ),
6690
- onResizeEnd: () => handleResizeEnd(header.column.id)
6590
+ )
6691
6591
  }
6692
6592
  )
6693
6593
  ]
@@ -6703,8 +6603,8 @@ function DataTableHeader({ table }) {
6703
6603
  }
6704
6604
 
6705
6605
  const styles$2 = {
6706
- "table-container": "_table-container_z7onx_2",
6707
- "table-scroll-container": "_table-scroll-container_z7onx_57"
6606
+ "table-container": "_table-container_qokgc_4",
6607
+ "table-scroll-container": "_table-scroll-container_qokgc_56"
6708
6608
  };
6709
6609
 
6710
6610
  const TableContainer = forwardRef(
@@ -6738,7 +6638,7 @@ const TableContainer = forwardRef(
6738
6638
  );
6739
6639
  TableContainer.displayName = "TableContainer";
6740
6640
 
6741
- const pagination = "_pagination_d700v_2";
6641
+ const pagination = "_pagination_13hzr_4";
6742
6642
  const styles$1 = {
6743
6643
  pagination: pagination
6744
6644
  };
@@ -6757,12 +6657,12 @@ const DataTablePagination = ({
6757
6657
  );
6758
6658
  };
6759
6659
 
6760
- const expanded = "_expanded_1shcm_21";
6660
+ const expanded = "_expanded_1pd1e_27";
6761
6661
  const styles = {
6762
- "container-with-pagination": "_container-with-pagination_1shcm_2",
6763
- "footer-with-pagination": "_footer-with-pagination_1shcm_5",
6764
- "empty-state-container": "_empty-state-container_1shcm_8",
6765
- "expand-button": "_expand-button_1shcm_12",
6662
+ "container-with-pagination": "_container-with-pagination_1pd1e_4",
6663
+ "footer-with-pagination": "_footer-with-pagination_1pd1e_8",
6664
+ "empty-state-container": "_empty-state-container_1pd1e_12",
6665
+ "expand-button": "_expand-button_1pd1e_17",
6766
6666
  expanded: expanded
6767
6667
  };
6768
6668
 
@@ -6857,49 +6757,6 @@ function usePageDataCache(config) {
6857
6757
  return { getOrLoad, clearCache };
6858
6758
  }
6859
6759
 
6860
- function DTHoverProvider({ children }) {
6861
- const [state, dispatch] = useReducer(reducer$1, initialState$1);
6862
- return /* @__PURE__ */ jsx(DTHoverStateContext.Provider, { value: state, children: /* @__PURE__ */ jsx(DTHoverDispatchContext.Provider, { value: dispatch, children }) });
6863
- }
6864
- function reducer$1(state, action) {
6865
- switch (action.type) {
6866
- case "HOVER_START": {
6867
- return {
6868
- ...state,
6869
- hoveredColumnId: action.payload.columnId
6870
- };
6871
- }
6872
- case "HOVER_END": {
6873
- if (state.hoveredColumnId !== action.payload.columnId) {
6874
- return state;
6875
- }
6876
- return {
6877
- ...state,
6878
- hoveredColumnId: null
6879
- };
6880
- }
6881
- case "RESIZE_START": {
6882
- return {
6883
- ...state,
6884
- resizingColumnId: action.payload.columnId
6885
- };
6886
- }
6887
- case "RESIZE_END": {
6888
- return {
6889
- ...state,
6890
- resizingColumnId: null
6891
- };
6892
- }
6893
- default: {
6894
- throw new Error("Unknown action");
6895
- }
6896
- }
6897
- }
6898
- const initialState$1 = {
6899
- hoveredColumnId: null,
6900
- resizingColumnId: null
6901
- };
6902
-
6903
6760
  function scrollCellIntoView(element, stickyDimensions) {
6904
6761
  const isBodyCell = element.getAttribute("data-anv") === "table-body-cell";
6905
6762
  const scrollContainer = element.closest(
@@ -7085,9 +6942,32 @@ function DTFocusProvider({
7085
6942
  columnCount,
7086
6943
  tableRef,
7087
6944
  leftPinnedWidth,
7088
- rightPinnedWidth
6945
+ rightPinnedWidth,
6946
+ virtualizer,
6947
+ headerRowCount
7089
6948
  }) {
7090
6949
  const stateRef = useRef(initialState);
6950
+ const lastTabbablePosRef = useRef(null);
6951
+ const syncRovingTabindex = useCallback(() => {
6952
+ const restorePoint = stateRef.current.focusRestorePoint;
6953
+ const prev = lastTabbablePosRef.current;
6954
+ const nextEl = tableRef.current?.querySelector(
6955
+ `[data-cell-pos="${formatCellPositionString(restorePoint)}"]`
6956
+ );
6957
+ const restorePointUnchanged = prev && prev.rowIndex === restorePoint.rowIndex && prev.columnIndex === restorePoint.columnIndex;
6958
+ if (restorePointUnchanged && nextEl?.tabIndex === 0) {
6959
+ return;
6960
+ }
6961
+ const prevEl = prev && !restorePointUnchanged ? tableRef.current?.querySelector(
6962
+ `[data-cell-pos="${formatCellPositionString(prev)}"]`
6963
+ ) : null;
6964
+ if (prevEl) prevEl.tabIndex = -1;
6965
+ if (nextEl) nextEl.tabIndex = 0;
6966
+ lastTabbablePosRef.current = restorePoint;
6967
+ }, [tableRef]);
6968
+ useLayoutEffect(() => {
6969
+ syncRovingTabindex();
6970
+ }, [syncRovingTabindex, rowCount, columnCount]);
7091
6971
  const dispatch = useCallback(
7092
6972
  (action) => {
7093
6973
  const newState = reducer(stateRef.current, action, rowCount, columnCount);
@@ -7102,26 +6982,55 @@ function DTFocusProvider({
7102
6982
  }
7103
6983
  }
7104
6984
  stateRef.current = newState;
6985
+ syncRovingTabindex();
7105
6986
  if (!newState.focusedCell || shouldSkipFocusUpdate) {
7106
6987
  return;
7107
6988
  }
7108
- const element = tableRef.current?.querySelector(
7109
- `[data-cell-pos="${formatCellPositionString(newState.focusedCell)}"]`
7110
- );
7111
- if (element) {
7112
- element.focus();
7113
- scrollCellIntoView(element, {
7114
- leftWidth: leftPinnedWidth,
7115
- rightWidth: rightPinnedWidth
7116
- });
7117
- } else {
7118
- dispatch({
7119
- type: "FOCUS_CELL_MANUALLY",
7120
- payload: { cellPosition: { rowIndex: 0, columnIndex: 0 } }
7121
- });
6989
+ const focusTargetCell = () => {
6990
+ if (!newState.focusedCell) return;
6991
+ if (!areCellPositionsEqual(
6992
+ newState.focusedCell,
6993
+ stateRef.current.focusedCell
6994
+ )) {
6995
+ return;
6996
+ }
6997
+ const element = tableRef.current?.querySelector(
6998
+ `[data-cell-pos="${formatCellPositionString(newState.focusedCell)}"]`
6999
+ );
7000
+ if (element) {
7001
+ element.focus();
7002
+ scrollCellIntoView(element, {
7003
+ leftWidth: leftPinnedWidth,
7004
+ rightWidth: rightPinnedWidth
7005
+ });
7006
+ } else {
7007
+ dispatch({
7008
+ type: "FOCUS_CELL_MANUALLY",
7009
+ payload: { cellPosition: { rowIndex: 0, columnIndex: 0 } }
7010
+ });
7011
+ }
7012
+ };
7013
+ if (virtualizer && newState.focusedCell) {
7014
+ const virtualRowIndex = newState.focusedCell.rowIndex - headerRowCount;
7015
+ const bodyRowCount = virtualizer.options.count;
7016
+ if (virtualRowIndex >= 0 && virtualRowIndex < bodyRowCount) {
7017
+ virtualizer.scrollToIndex(virtualRowIndex, { align: "auto" });
7018
+ requestAnimationFrame(focusTargetCell);
7019
+ return;
7020
+ }
7122
7021
  }
7022
+ focusTargetCell();
7123
7023
  },
7124
- [rowCount, columnCount, tableRef, leftPinnedWidth, rightPinnedWidth]
7024
+ [
7025
+ rowCount,
7026
+ columnCount,
7027
+ tableRef,
7028
+ leftPinnedWidth,
7029
+ rightPinnedWidth,
7030
+ syncRovingTabindex,
7031
+ virtualizer,
7032
+ headerRowCount
7033
+ ]
7125
7034
  );
7126
7035
  const state = useMemo(
7127
7036
  () => ({ getFocusedCell: () => stateRef.current.focusedCell }),
@@ -7130,6 +7039,38 @@ function DTFocusProvider({
7130
7039
  return /* @__PURE__ */ jsx(DTFocusStateContext.Provider, { value: state, children: /* @__PURE__ */ jsx(DTFocusDispatchContext.Provider, { value: dispatch, children }) });
7131
7040
  }
7132
7041
 
7042
+ const VIRTUALIZATION_THRESHOLD = 101;
7043
+ const DEFAULT_ESTIMATED_ROW_HEIGHT = 35;
7044
+ function useDataTableVirtualizer({
7045
+ rowCount,
7046
+ scrollRef,
7047
+ disabled
7048
+ }) {
7049
+ const shouldVirtualize = !disabled && rowCount >= VIRTUALIZATION_THRESHOLD;
7050
+ const virtualizer = useVirtualizer({
7051
+ count: shouldVirtualize ? rowCount : 0,
7052
+ // `scrollRef` points at the outer TableContainer div, which does not
7053
+ // itself scroll — the nested [data-anv="table-scroll-container"] child
7054
+ // owns `overflow-y: auto`. Descend to that child so the virtualizer
7055
+ // tracks the right element. Fall back to `scrollRef.current` for
7056
+ // containers that one day collapse the scroll wrapper.
7057
+ getScrollElement: () => {
7058
+ const outer = scrollRef.current;
7059
+ if (!outer) return null;
7060
+ return outer.querySelector(
7061
+ '[data-anv="table-scroll-container"]'
7062
+ ) ?? outer;
7063
+ },
7064
+ estimateSize: () => DEFAULT_ESTIMATED_ROW_HEIGHT,
7065
+ overscan: 5,
7066
+ measureElement: typeof window !== "undefined" && typeof navigator !== "undefined" && navigator.userAgent.indexOf("jsdom") === -1 ? (el) => el?.getBoundingClientRect().height ?? DEFAULT_ESTIMATED_ROW_HEIGHT : void 0
7067
+ });
7068
+ return useMemo(
7069
+ () => shouldVirtualize ? virtualizer : void 0,
7070
+ [shouldVirtualize, virtualizer]
7071
+ );
7072
+ }
7073
+
7133
7074
  const EMPTY_DATA = [];
7134
7075
  function DataTableInner(props, ref) {
7135
7076
  const { layoutStyles, componentProps } = useLayoutPropsUtil(props);
@@ -7152,6 +7093,8 @@ function DataTableInner(props, ref) {
7152
7093
  sortedColumn,
7153
7094
  emptyState,
7154
7095
  emptyCellContent,
7096
+ disableVirtualization,
7097
+ getRowVersion,
7155
7098
  className,
7156
7099
  style,
7157
7100
  ...rest
@@ -7240,11 +7183,13 @@ function DataTableInner(props, ref) {
7240
7183
  isLoading
7241
7184
  } = useAsyncData(dataSource);
7242
7185
  const totalItemCount = paginationObject?.totalRowCount ?? resolvedData?.length ?? 0;
7243
- const hasSubRows = !!resolvedData?.some(
7244
- (row) => row?.subRows?.length ?? 0 > 0
7186
+ const hasSubRows = useMemo(
7187
+ () => !!resolvedData?.some((row) => (row?.subRows?.length ?? 0) > 0),
7188
+ [resolvedData]
7245
7189
  );
7246
- const hasSubComponent = !!resolvedData?.some(
7247
- (row) => row?.subComponent != null
7190
+ const hasSubComponent = useMemo(
7191
+ () => !!resolvedData?.some((row) => row?.subComponent != null),
7192
+ [resolvedData]
7248
7193
  );
7249
7194
  const isExpandable = hasSubRows || hasSubComponent;
7250
7195
  const [expanded, setExpanded] = useOptionallyControlledState({
@@ -7428,9 +7373,9 @@ function DataTableInner(props, ref) {
7428
7373
  columns,
7429
7374
  getCoreRowModel: getCoreRowModel(),
7430
7375
  getSortedRowModel: getSortedRowModel(),
7431
- getPaginationRowModel: getPaginationRowModel(),
7432
- getExpandedRowModel: getExpandedRowModel(),
7433
- getGroupedRowModel: getGroupedRowModel(),
7376
+ ...isPaginated && { getPaginationRowModel: getPaginationRowModel() },
7377
+ ...isExpandable && { getExpandedRowModel: getExpandedRowModel() },
7378
+ // Grouping row model is retained for future use; cheap to exclude now.
7434
7379
  getRowId: (row) => row.id.toString(),
7435
7380
  getSubRows: (row) => row.subRows ?? void 0,
7436
7381
  getRowCanExpand: (row) => {
@@ -7463,8 +7408,7 @@ function DataTableInner(props, ref) {
7463
7408
  },
7464
7409
  onSortingChange: (updaterOrValue) => {
7465
7410
  const newSorting = typeof updaterOrValue === "function" ? updaterOrValue(sorting) : updaterOrValue;
7466
- const sortingChanged = JSON.stringify(newSorting) !== JSON.stringify(sorting);
7467
- if (!sortingChanged) {
7411
+ if (shallowSortingEqual(newSorting, sorting ?? [])) {
7468
7412
  return;
7469
7413
  }
7470
7414
  setSorting(newSorting);
@@ -7473,6 +7417,11 @@ function DataTableInner(props, ref) {
7473
7417
  }
7474
7418
  }
7475
7419
  });
7420
+ const rowVirtualizer = useDataTableVirtualizer({
7421
+ rowCount: table.getRowModel().rows.length,
7422
+ scrollRef: tableRef,
7423
+ disabled: disableVirtualization
7424
+ });
7476
7425
  const headers = table.getFlatHeaders();
7477
7426
  const headerRowCount = table.getHeaderGroups().length;
7478
7427
  const bodyRowCount = table.getRowModel().rows.length;
@@ -7529,15 +7478,14 @@ function DataTableInner(props, ref) {
7529
7478
  if (hasBeenResized) {
7530
7479
  return `${currentSize}px`;
7531
7480
  }
7532
- const minSize = header.column.columnDef.minSize ?? currentSize;
7481
+ if (header.column.getIsPinned()) {
7482
+ return `${currentSize}px`;
7483
+ }
7533
7484
  const maxSize = header.column.columnDef.maxSize;
7534
- return `minmax(${minSize}px, ${maxSize ? `${maxSize}px` : "1fr"})`;
7485
+ return `minmax(${currentSize}px, ${maxSize ? `${maxSize}px` : "1fr"})`;
7535
7486
  }).join(" ");
7536
7487
  vars["--a2-grid-template-columns"] = gridColumns;
7537
7488
  vars["--a2-table-width"] = allHaveMaxWidth ? "max-content" : "100%";
7538
- for (const header of headers) {
7539
- vars[`--a2-table-col-${header.column.getIndex()}-size`] = header.column.getSize();
7540
- }
7541
7489
  return vars;
7542
7490
  }, [headers, columnSizing]);
7543
7491
  const columnCount = useMemo(() => {
@@ -7551,7 +7499,9 @@ function DataTableInner(props, ref) {
7551
7499
  tableRef,
7552
7500
  leftPinnedWidth: table.getLeftTotalSize(),
7553
7501
  rightPinnedWidth: table.getRightTotalSize(),
7554
- children: /* @__PURE__ */ jsx(DTHoverProvider, { children: /* @__PURE__ */ jsxs(
7502
+ virtualizer: rowVirtualizer,
7503
+ headerRowCount,
7504
+ children: /* @__PURE__ */ jsxs(
7555
7505
  TableContainer,
7556
7506
  {
7557
7507
  ...rest,
@@ -7573,8 +7523,16 @@ function DataTableInner(props, ref) {
7573
7523
  colCount: columnCount,
7574
7524
  hasSubRows,
7575
7525
  children: [
7576
- /* @__PURE__ */ jsx(DataTableHeader, { table }),
7577
- /* @__PURE__ */ jsx(DataTableBody, { table, hasSubRows }),
7526
+ /* @__PURE__ */ jsx(DataTableHeader, { table, tableRef }),
7527
+ /* @__PURE__ */ jsx(
7528
+ DataTableBody,
7529
+ {
7530
+ table,
7531
+ hasSubRows,
7532
+ virtualizer: rowVirtualizer,
7533
+ getRowVersion
7534
+ }
7535
+ ),
7578
7536
  isEmpty && emptyState && /* @__PURE__ */ jsxs(Fragment, { children: [
7579
7537
  /* @__PURE__ */ jsx(SrOnly, { children: "No data to display." }),
7580
7538
  /* @__PURE__ */ jsx("div", { className: styles["empty-state-container"], children: /* @__PURE__ */ jsxs(
@@ -7651,11 +7609,11 @@ function DataTableInner(props, ref) {
7651
7609
  )
7652
7610
  ]
7653
7611
  }
7654
- ) })
7612
+ )
7655
7613
  }
7656
7614
  );
7657
7615
  }
7658
7616
  const DataTable = forwardRef(DataTableInner);
7659
7617
 
7660
7618
  export { COLUMN_TYPE_DEFAULTS as C, DataTable as D, chipsFormatter as a, booleanFormatter as b, createColumnHelper$1 as c, currencyFormatter as d, dateFormatter as e, dateTimeFormatter as f, getColumnTypeDefaults as g, htmlFormatter as h, dateFormatPresets as i, timeFormatter as j, markdownFormatter as m, numberFormatter as n, percentFormatter as p, resolveColumnTypeConfig as r, timeFormatPresets as t, yearlessDateFormatter as y };
7661
- //# sourceMappingURL=DataTable-BCV_mtSy.js.map
7619
+ //# sourceMappingURL=DataTable-D9Xj1nq5.js.map