@servicetitan/anvil2 3.0.7 → 3.0.9

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 (305) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/dist/{AiMark-BXL0sWIV.js → AiMark-CS6MvraM.js} +5 -4
  3. package/dist/{AiMark-BXL0sWIV.js.map → AiMark-CS6MvraM.js.map} +1 -1
  4. package/dist/AiMark.js +1 -1
  5. package/dist/{Alert-BNH0UD2s.js → Alert-CNDLoh6b.js} +2 -2
  6. package/dist/{Alert-BNH0UD2s.js.map → Alert-CNDLoh6b.js.map} +1 -1
  7. package/dist/Alert.js +1 -1
  8. package/dist/{AnvilProvider-J9DjoJiB.js → AnvilProvider-BFK29dL5.js} +3 -2
  9. package/dist/{AnvilProvider-J9DjoJiB.js.map → AnvilProvider-BFK29dL5.js.map} +1 -1
  10. package/dist/AnvilProvider.js +1 -1
  11. package/dist/{Avatar-FDHyqiCy.js → Avatar-Bl-Dxbhf.js} +7 -2
  12. package/dist/Avatar-Bl-Dxbhf.js.map +1 -0
  13. package/dist/{Avatar-B_cRQqKR.js → Avatar-CdAIJ5VK.js} +2 -2
  14. package/dist/{Avatar-B_cRQqKR.js.map → Avatar-CdAIJ5VK.js.map} +1 -1
  15. package/dist/Avatar.js +2 -2
  16. package/dist/{Breadcrumbs-Bzxbdu-S.js → Breadcrumbs--Xt6l_2L.js} +2 -2
  17. package/dist/{Breadcrumbs-Bzxbdu-S.js.map → Breadcrumbs--Xt6l_2L.js.map} +1 -1
  18. package/dist/Breadcrumbs.js +1 -1
  19. package/dist/{Calendar-DS5eWpGF.js → Calendar-5mAxtdNh.js} +2 -2
  20. package/dist/{Calendar-DS5eWpGF.js.map → Calendar-5mAxtdNh.js.map} +1 -1
  21. package/dist/{Calendar-BYNFAWpZ.js → Calendar-rITorBvD.js} +5 -3
  22. package/dist/{Calendar-BYNFAWpZ.js.map → Calendar-rITorBvD.js.map} +1 -1
  23. package/dist/Calendar.js +2 -2
  24. package/dist/{Checkbox-BeIzx_ZX.js → Checkbox-BYWhkYoK.js} +2 -2
  25. package/dist/{Checkbox-BeIzx_ZX.js.map → Checkbox-BYWhkYoK.js.map} +1 -1
  26. package/dist/{Checkbox-BB3BDJsK.js → Checkbox-DTzoDcJl.js} +3 -3
  27. package/dist/{Checkbox-BB3BDJsK.js.map → Checkbox-DTzoDcJl.js.map} +1 -1
  28. package/dist/Checkbox.js +1 -1
  29. package/dist/{Chip-D2k5X_wX.js → Chip-CyMNyEPR.js} +3 -3
  30. package/dist/{Chip-D2k5X_wX.js.map → Chip-CyMNyEPR.js.map} +1 -1
  31. package/dist/Chip.js +1 -1
  32. package/dist/Combobox.js +1 -1
  33. package/dist/{DataTable-E8z0H8c7.js → DataTable-FG0Kjx0d.js} +1206 -445
  34. package/dist/DataTable-FG0Kjx0d.js.map +1 -0
  35. package/dist/DataTable.css +301 -233
  36. package/dist/{DateFieldRange-BN_uIvHI.js → DateFieldRange-BUug1tUy.js} +4 -4
  37. package/dist/{DateFieldRange-BN_uIvHI.js.map → DateFieldRange-BUug1tUy.js.map} +1 -1
  38. package/dist/DateFieldRange.js +1 -1
  39. package/dist/{DateFieldSingle-h3YkdwPo.js → DateFieldSingle-DR7faQGD.js} +4 -4
  40. package/dist/{DateFieldSingle-h3YkdwPo.js.map → DateFieldSingle-DR7faQGD.js.map} +1 -1
  41. package/dist/DateFieldSingle.js +1 -1
  42. package/dist/{DateFieldYearless-m_Hl2gMY.js → DateFieldYearless-7MFcR7L6.js} +4 -4
  43. package/dist/{DateFieldYearless-m_Hl2gMY.js.map → DateFieldYearless-7MFcR7L6.js.map} +1 -1
  44. package/dist/DateFieldYearless.js +1 -1
  45. package/dist/{DateFieldYearlessRange-DNqSTBDr.js → DateFieldYearlessRange-DGtdyISH.js} +3 -3
  46. package/dist/{DateFieldYearlessRange-DNqSTBDr.js.map → DateFieldYearlessRange-DGtdyISH.js.map} +1 -1
  47. package/dist/DateFieldYearlessRange.js +1 -1
  48. package/dist/{DaysOfTheWeek-D58z_eF3.js → DaysOfTheWeek-C7oN9nIe.js} +3 -3
  49. package/dist/{DaysOfTheWeek-D58z_eF3.js.map → DaysOfTheWeek-C7oN9nIe.js.map} +1 -1
  50. package/dist/DaysOfTheWeek.js +1 -1
  51. package/dist/{Dialog-CvYSMvfD.js → Dialog-dE9c90iR.js} +3 -3
  52. package/dist/{Dialog-CvYSMvfD.js.map → Dialog-dE9c90iR.js.map} +1 -1
  53. package/dist/Dialog.js +1 -1
  54. package/dist/{Divider-CxtTyw8_.js → Divider-Dz27DFuE.js} +17 -17
  55. package/dist/{Divider-CxtTyw8_.js.map → Divider-Dz27DFuE.js.map} +1 -1
  56. package/dist/Divider.css +21 -24
  57. package/dist/Divider.js +1 -1
  58. package/dist/Dnd.js +2 -2
  59. package/dist/{DndHandleButton-CHTOYRlq.js → DndHandleButton-BW9xLWQm.js} +2 -4
  60. package/dist/DndHandleButton-BW9xLWQm.js.map +1 -0
  61. package/dist/DndSort.js +2 -2
  62. package/dist/{Drawer-s2y0xcgV.js → Drawer-Dk0MsaOU.js} +3 -3
  63. package/dist/{Drawer-s2y0xcgV.js.map → Drawer-Dk0MsaOU.js.map} +1 -1
  64. package/dist/Drawer.js +1 -1
  65. package/dist/DrillDown.js +1 -1
  66. package/dist/{EditCard-B25pj0Jx.js → EditCard-DV2N7zWr.js} +2 -2
  67. package/dist/{EditCard-B25pj0Jx.js.map → EditCard-DV2N7zWr.js.map} +1 -1
  68. package/dist/EditCard.js +1 -1
  69. package/dist/{FieldLabel-D1qPAGtB.js → FieldLabel-VVn8GR64.js} +3 -3
  70. package/dist/{FieldLabel-D1qPAGtB.js.map → FieldLabel-VVn8GR64.js.map} +1 -1
  71. package/dist/FieldLabel.js +1 -1
  72. package/dist/{FilterBar-B4ZAs73g.js → FilterBar-B3c_VGDk.js} +6 -5
  73. package/dist/{FilterBar-B4ZAs73g.js.map → FilterBar-B3c_VGDk.js.map} +1 -1
  74. package/dist/FilterBar.js +1 -1
  75. package/dist/{InputMask-BDl09V4u.js → InputMask-VBHWGZGN.js} +3 -3
  76. package/dist/{InputMask-BDl09V4u.js.map → InputMask-VBHWGZGN.js.map} +1 -1
  77. package/dist/InputMask.js +1 -1
  78. package/dist/{ListView-DO5psxd4.js → ListView-BUrfz75g.js} +2 -2
  79. package/dist/{ListView-DO5psxd4.js.map → ListView-BUrfz75g.js.map} +1 -1
  80. package/dist/ListView.js +1 -1
  81. package/dist/{Listbox-CvQHBFWb.js → Listbox-CRY-0BkS.js} +2 -2
  82. package/dist/{Listbox-CvQHBFWb.js.map → Listbox-CRY-0BkS.js.map} +1 -1
  83. package/dist/Listbox.js +1 -1
  84. package/dist/{Menu-W0c-xKdX.js → Menu-DNJ0YqjA.js} +11 -7
  85. package/dist/Menu-DNJ0YqjA.js.map +1 -0
  86. package/dist/Menu.js +1 -1
  87. package/dist/MenuFooter-CrsZdXvN.js +115 -0
  88. package/dist/MenuFooter-CrsZdXvN.js.map +1 -0
  89. package/dist/MultiSelectField.js +1 -1
  90. package/dist/{MultiSelectFieldSync-CXX2F0ru.js → MultiSelectFieldSync-CzHj9Qvy.js} +8 -53
  91. package/dist/MultiSelectFieldSync-CzHj9Qvy.js.map +1 -0
  92. package/dist/MultiSelectMenu.js +1 -1
  93. package/dist/{MultiSelectMenuSync-EKtvlL62.js → MultiSelectMenuSync-BGcrYjby.js} +9 -76
  94. package/dist/MultiSelectMenuSync-BGcrYjby.js.map +1 -0
  95. package/dist/{NumberField-BymFZhIJ.js → NumberField-bgYX7JGs.js} +3 -3
  96. package/dist/{NumberField-BymFZhIJ.js.map → NumberField-bgYX7JGs.js.map} +1 -1
  97. package/dist/NumberField.js +1 -1
  98. package/dist/{Page-C2_Hm27h.js → Page-BSHydn4p.js} +9 -9
  99. package/dist/{Page-C2_Hm27h.js.map → Page-BSHydn4p.js.map} +1 -1
  100. package/dist/Page.js +1 -1
  101. package/dist/{Pagination-Bmd4JORe.js → Pagination-CAeyJ7Pl.js} +192 -26
  102. package/dist/Pagination-CAeyJ7Pl.js.map +1 -0
  103. package/dist/Pagination.css +4 -2
  104. package/dist/Pagination.js +1 -1
  105. package/dist/{Popover-8mTJoMy7.js → Popover-Cq5tirFz.js} +11 -5
  106. package/dist/Popover-Cq5tirFz.js.map +1 -0
  107. package/dist/Popover.js +1 -1
  108. package/dist/{ProgressBar-C1CkQHV5.js → ProgressBar-ByR50ln7.js} +2 -2
  109. package/dist/{ProgressBar-C1CkQHV5.js.map → ProgressBar-ByR50ln7.js.map} +1 -1
  110. package/dist/ProgressBar.js +1 -1
  111. package/dist/{Radio-BcHMk8dD.js → Radio-CPuctRpl.js} +2 -2
  112. package/dist/{Radio-BcHMk8dD.js.map → Radio-CPuctRpl.js.map} +1 -1
  113. package/dist/{Radio-D5WyQN2i.js → Radio-WlsZFRzX.js} +3 -3
  114. package/dist/{Radio-D5WyQN2i.js.map → Radio-WlsZFRzX.js.map} +1 -1
  115. package/dist/Radio.js +1 -1
  116. package/dist/{RichTextEditor-DstVbYch.js → RichTextEditor-FSWAVmTe.js} +80 -44
  117. package/dist/RichTextEditor-FSWAVmTe.js.map +1 -0
  118. package/dist/RichTextEditor.js +1 -1
  119. package/dist/{SavedFiltersButton-2qba2Cgu.js → SavedFiltersButton-Cr829guv.js} +12 -11
  120. package/dist/SavedFiltersButton-Cr829guv.js.map +1 -0
  121. package/dist/SavedFiltersButton.js +1 -1
  122. package/dist/{SelectCard-BN-LI14f.js → SelectCard-DLWLHi_i.js} +3 -3
  123. package/dist/{SelectCard-BN-LI14f.js.map → SelectCard-DLWLHi_i.js.map} +1 -1
  124. package/dist/SelectCard.js +1 -1
  125. package/dist/SelectField.js +1 -1
  126. package/dist/{SelectFieldLabel-UbQT7fDD.js → SelectFieldLabel-vemffdmu.js} +2 -2
  127. package/dist/{SelectFieldLabel-UbQT7fDD.js.map → SelectFieldLabel-vemffdmu.js.map} +1 -1
  128. package/dist/{SelectFieldSync-DykGkR_w.js → SelectFieldSync-C65VFWGm.js} +5 -4
  129. package/dist/{SelectFieldSync-DykGkR_w.js.map → SelectFieldSync-C65VFWGm.js.map} +1 -1
  130. package/dist/SelectMenu.js +1 -1
  131. package/dist/{SelectMenuSync-DTQ8Ofoz.js → SelectMenuSync-CF49L12-.js} +6 -4
  132. package/dist/{SelectMenuSync-DTQ8Ofoz.js.map → SelectMenuSync-CF49L12-.js.map} +1 -1
  133. package/dist/{SelectOptions-DVSOJwRy.js → SelectOptions-C7skDFj2.js} +2 -2
  134. package/dist/{SelectOptions-DVSOJwRy.js.map → SelectOptions-C7skDFj2.js.map} +1 -1
  135. package/dist/{SelectTrigger-CHk0KO-P.js → SelectTrigger-BbneVXMz.js} +3 -3
  136. package/dist/{SelectTrigger-CHk0KO-P.js.map → SelectTrigger-BbneVXMz.js.map} +1 -1
  137. package/dist/SelectTrigger.js +1 -1
  138. package/dist/{SelectTriggerBase-B2S5SOZr.js → SelectTriggerBase-BjIOERXr.js} +3 -3
  139. package/dist/{SelectTriggerBase-B2S5SOZr.js.map → SelectTriggerBase-BjIOERXr.js.map} +1 -1
  140. package/dist/{Switch-onmiKoRd.js → Switch-B6bKmpwN.js} +3 -3
  141. package/dist/{Switch-onmiKoRd.js.map → Switch-B6bKmpwN.js.map} +1 -1
  142. package/dist/Switch.js +1 -1
  143. package/dist/Table.js +1 -1
  144. package/dist/{Text-BTzgTpqu.js → Text-w2gWn4K6.js} +2 -2
  145. package/dist/{Text-BTzgTpqu.js.map → Text-w2gWn4K6.js.map} +1 -1
  146. package/dist/Text.js +1 -1
  147. package/dist/{TextField-WTYZJlX3.js → TextField-BQsCh5Nb.js} +2 -2
  148. package/dist/{TextField-WTYZJlX3.js.map → TextField-BQsCh5Nb.js.map} +1 -1
  149. package/dist/{TextField-rVfctM1E.js → TextField-DJ3gEIP6.js} +3 -3
  150. package/dist/{TextField-rVfctM1E.js.map → TextField-DJ3gEIP6.js.map} +1 -1
  151. package/dist/TextField.js +1 -1
  152. package/dist/{Textarea-PXjppEQ6.js → Textarea-BK4Vf84K.js} +3 -3
  153. package/dist/{Textarea-PXjppEQ6.js.map → Textarea-BK4Vf84K.js.map} +1 -1
  154. package/dist/Textarea.js +1 -1
  155. package/dist/{ThemeProvider-D4KdGCaP.js → ThemeProvider-BC6wbuLU.js} +4 -9
  156. package/dist/{ThemeProvider-D4KdGCaP.js.map → ThemeProvider-BC6wbuLU.js.map} +1 -1
  157. package/dist/ThemeProvider.js +1 -1
  158. package/dist/ThemeProvider.module-D9pNGYjP.js +8 -0
  159. package/dist/ThemeProvider.module-D9pNGYjP.js.map +1 -0
  160. package/dist/{TimeField-BJPXIv6W.js → TimeField-B4IW2B_o.js} +4 -4
  161. package/dist/{TimeField-BJPXIv6W.js.map → TimeField-B4IW2B_o.js.map} +1 -1
  162. package/dist/TimeField.js +1 -1
  163. package/dist/Toast.js +2 -2
  164. package/dist/{Toaster-CoChsMD0.js → Toaster-BGY2IzF5.js} +53 -48
  165. package/dist/Toaster-BGY2IzF5.js.map +1 -0
  166. package/dist/{Toaster-DXLc86VD.js → Toaster-DTF9qnTy.js} +2 -2
  167. package/dist/{Toaster-DXLc86VD.js.map → Toaster-DTF9qnTy.js.map} +1 -1
  168. package/dist/{Toolbar-Bt3kShho.js → Toolbar-DObrJ_S5.js} +5 -4
  169. package/dist/{Toolbar-Bt3kShho.js.map → Toolbar-DObrJ_S5.js.map} +1 -1
  170. package/dist/{Toolbar-DaUKbbsL.js → Toolbar-DRJGKk8D.js} +6 -5
  171. package/dist/{Toolbar-DaUKbbsL.js.map → Toolbar-DRJGKk8D.js.map} +1 -1
  172. package/dist/Toolbar.js +2 -2
  173. package/dist/{ToolbarButtonToggle-BPu81Wuv.js → ToolbarButtonToggle-BCKgA8FE.js} +2 -2
  174. package/dist/{ToolbarButtonToggle-BPu81Wuv.js.map → ToolbarButtonToggle-BCKgA8FE.js.map} +1 -1
  175. package/dist/{Tooltip-yr1D06BE.js → Tooltip-DqS6xDUf.js} +27 -25
  176. package/dist/Tooltip-DqS6xDUf.js.map +1 -0
  177. package/dist/Tooltip.js +1 -1
  178. package/dist/TreeSelectField.d.ts +1 -0
  179. package/dist/TreeSelectField.js +2 -0
  180. package/dist/TreeSelectField.js.map +1 -0
  181. package/dist/TreeSelectFieldSync-Do5ffU0b.js +609 -0
  182. package/dist/TreeSelectFieldSync-Do5ffU0b.js.map +1 -0
  183. package/dist/TreeSelectFieldSync.css +173 -0
  184. package/dist/TreeSelectMenu.d.ts +1 -0
  185. package/dist/TreeSelectMenu.js +2 -0
  186. package/dist/TreeSelectMenu.js.map +1 -0
  187. package/dist/TreeSelectMenuSync-s05Ly6lj.js +413 -0
  188. package/dist/TreeSelectMenuSync-s05Ly6lj.js.map +1 -0
  189. package/dist/{YearlessDateInputWithPicker-BIcVgz-J.js → YearlessDateInputWithPicker-BHfFjCqE.js} +2 -2
  190. package/dist/{YearlessDateInputWithPicker-BIcVgz-J.js.map → YearlessDateInputWithPicker-BHfFjCqE.js.map} +1 -1
  191. package/dist/beta.js +15 -13
  192. package/dist/beta.js.map +1 -1
  193. package/dist/confirmationTypes-CG7xl50f.js +75 -0
  194. package/dist/confirmationTypes-CG7xl50f.js.map +1 -0
  195. package/dist/drag_indicator-BRHAPLSJ.js +6 -0
  196. package/dist/drag_indicator-BRHAPLSJ.js.map +1 -0
  197. package/dist/{filter-state-Bx3aYS1r.js → filter-state-CE8t3-Q7.js} +324 -84
  198. package/dist/filter-state-CE8t3-Q7.js.map +1 -0
  199. package/dist/{floating-ui.react-dom-CHrYz13o.js → floating-ui.react-dom-BIKT960u.js} +2 -2
  200. package/dist/{floating-ui.react-dom-CHrYz13o.js.map → floating-ui.react-dom-BIKT960u.js.map} +1 -1
  201. package/dist/{index-CukEaIHB.js → index-CKdC7x1S.js} +2 -2
  202. package/dist/{index-CukEaIHB.js.map → index-CKdC7x1S.js.map} +1 -1
  203. package/dist/{index-DVYRUKtW.js → index-DN_iqxhF.js} +79 -109
  204. package/dist/{index-DVYRUKtW.js.map → index-DN_iqxhF.js.map} +1 -1
  205. package/dist/index.js +44 -44
  206. package/dist/keyboard_arrow_left-CiE1n99w.js +6 -0
  207. package/dist/keyboard_arrow_left-CiE1n99w.js.map +1 -0
  208. package/dist/keyboard_arrow_right-DMloHg_F.js +6 -0
  209. package/dist/keyboard_arrow_right-DMloHg_F.js.map +1 -0
  210. package/dist/portalScopeClassNames-jlZkdug_.js +7 -0
  211. package/dist/portalScopeClassNames-jlZkdug_.js.map +1 -0
  212. package/dist/src/beta/components/FilterBar/FilterTextInput.d.ts +29 -0
  213. package/dist/src/beta/components/FilterBar/index.d.ts +1 -1
  214. package/dist/src/beta/components/FilterBar/internal/adapters/asyncTree.d.ts +6 -0
  215. package/dist/src/beta/components/FilterBar/internal/adapters/textInput.d.ts +3 -0
  216. package/dist/src/beta/components/FilterBar/internal/adapters/tree.d.ts +6 -0
  217. package/dist/src/beta/components/FilterBar/internal/adapters/types.d.ts +4 -1
  218. package/dist/src/beta/components/FilterBar/internal/types.d.ts +69 -12
  219. package/dist/src/beta/components/FilterBar/internal/utils/test.d.ts +4 -1
  220. package/dist/src/beta/components/Table/DataTable/DataTable.d.ts +8 -31
  221. package/dist/src/beta/components/Table/DataTable/internal/DataTableBody.d.ts +2 -19
  222. package/dist/src/beta/components/Table/DataTable/internal/DataTableBodyRow.d.ts +17 -13
  223. package/dist/src/beta/components/Table/DataTable/internal/context/focus/DTFocusContext.d.ts +1 -11
  224. package/dist/src/beta/components/Table/DataTable/internal/context/focus/useDTFocusDispatchContext.d.ts +0 -2
  225. package/dist/src/beta/components/Table/DataTable/internal/context/surface/DataTableSurfaceCoordinatorContext.d.ts +13 -0
  226. package/dist/src/beta/components/Table/DataTable/internal/context/surface/DataTableSurfaceCoordinatorProvider.d.ts +7 -0
  227. package/dist/src/beta/components/Table/DataTable/internal/context/surface/useDataTableSurfaceCoordinator.d.ts +1 -0
  228. package/dist/src/beta/components/Table/DataTable/internal/editable-cells/useCustomEditHelpers.d.ts +8 -6
  229. package/dist/src/beta/components/Table/DataTable/internal/useColumnOrder.d.ts +1 -0
  230. package/dist/src/beta/components/Table/createColumnHelper.d.ts +4 -2
  231. package/dist/src/beta/components/Table/formatters/htmlFormatter.d.ts +4 -2
  232. package/dist/src/beta/components/Table/formatters/htmlToMarkdown.d.ts +5 -2
  233. package/dist/src/beta/components/Table/formatters/markdownFormatter.d.ts +3 -2
  234. package/dist/src/beta/components/Table/types.d.ts +47 -30
  235. package/dist/src/beta/components/TreeSelectField/TreeSelectField.d.ts +68 -0
  236. package/dist/src/beta/components/TreeSelectField/TreeSelectFieldSync.d.ts +64 -0
  237. package/dist/src/beta/components/TreeSelectField/index.d.ts +3 -0
  238. package/dist/src/beta/components/TreeSelectField/internal/TreeContent.d.ts +31 -0
  239. package/dist/src/beta/components/TreeSelectField/internal/TreePanel.d.ts +56 -0
  240. package/dist/src/beta/components/TreeSelectField/internal/TreeRow.d.ts +56 -0
  241. package/dist/src/beta/components/TreeSelectField/internal/TreeSelectFieldInput.d.ts +82 -0
  242. package/dist/src/beta/components/TreeSelectField/internal/VirtualizedTreePanel.d.ts +57 -0
  243. package/dist/src/beta/components/TreeSelectField/internal/treeSync.d.ts +33 -0
  244. package/dist/src/beta/components/TreeSelectField/internal/treeUtils.d.ts +25 -0
  245. package/dist/src/beta/components/TreeSelectField/internal/types.d.ts +12 -0
  246. package/dist/src/beta/components/TreeSelectField/internal/useTree.d.ts +99 -0
  247. package/dist/src/beta/components/TreeSelectField/internal/useTreeCascade.d.ts +93 -0
  248. package/dist/src/beta/components/TreeSelectField/internal/useTreeKeyboard.d.ts +42 -0
  249. package/dist/src/beta/components/TreeSelectField/internal/useTreeLazyCascade.d.ts +56 -0
  250. package/dist/src/beta/components/TreeSelectField/internal/useTreeLoader.d.ts +58 -0
  251. package/dist/src/beta/components/TreeSelectField/stories/TreeSelectField.stories.data.d.ts +21 -0
  252. package/dist/src/beta/components/TreeSelectField/types.d.ts +124 -0
  253. package/dist/src/beta/components/TreeSelectMenu/TreeSelectMenu.d.ts +29 -0
  254. package/dist/src/beta/components/TreeSelectMenu/TreeSelectMenuSync.d.ts +65 -0
  255. package/dist/src/beta/components/TreeSelectMenu/index.d.ts +4 -0
  256. package/dist/src/beta/components/TreeSelectMenu/types.d.ts +103 -0
  257. package/dist/src/beta/components/index.d.ts +2 -0
  258. package/dist/src/components/Pagination/internal/Pagination.d.ts +1 -0
  259. package/dist/src/components/Pagination/internal/PaginationOverflowMenu.d.ts +12 -1
  260. package/dist/src/internal/components/Surface/Surface.d.ts +4 -0
  261. package/dist/src/internal/components/Surface/surfaceGeometry.d.ts +31 -0
  262. package/dist/src/internal/functions/portalScopeClassNames.d.ts +14 -0
  263. package/dist/src/internal/utils/arrayIdsEqual.d.ts +10 -0
  264. package/dist/src/internal/utils/index.d.ts +1 -0
  265. package/dist/{stripInlineMarkdown-C5DNxxwf.js → stripInlineMarkdown-C0bVmYgG.js} +2 -2
  266. package/dist/{stripInlineMarkdown-C5DNxxwf.js.map → stripInlineMarkdown-C0bVmYgG.js.map} +1 -1
  267. package/dist/{syncFilterUtils-BEKek64h.js → syncFilterUtils-CgHB-l6A.js} +35 -410
  268. package/dist/syncFilterUtils-CgHB-l6A.js.map +1 -0
  269. package/dist/syncFilterUtils.css +0 -180
  270. package/dist/treeSync-Cz3H08cr.js +1453 -0
  271. package/dist/treeSync-Cz3H08cr.js.map +1 -0
  272. package/dist/treeSync.css +40 -0
  273. package/dist/useAdaptiveView-CeYKH0Me.js +386 -0
  274. package/dist/useAdaptiveView-CeYKH0Me.js.map +1 -0
  275. package/dist/useAdaptiveView.css +181 -0
  276. package/dist/useChipLayout-BWZfKDgd.js +51 -0
  277. package/dist/useChipLayout-BWZfKDgd.js.map +1 -0
  278. package/dist/{useDrilldown-KZ9rRsXQ.js → useDrilldown-BJ2dHHKV.js} +2 -2
  279. package/dist/{useDrilldown-KZ9rRsXQ.js.map → useDrilldown-BJ2dHHKV.js.map} +1 -1
  280. package/dist/{useInfiniteCombobox-CknXmqlQ.js → useInfiniteCombobox-BqJm-CdN.js} +24 -24
  281. package/dist/useInfiniteCombobox-BqJm-CdN.js.map +1 -0
  282. package/dist/{useMenuInteraction-CpAOHSJu.js → useMenuInteraction-NEJXUD4I.js} +2 -114
  283. package/dist/useMenuInteraction-NEJXUD4I.js.map +1 -0
  284. package/dist/{useToggleSelection-B-Z80gy2.js → useToggleSelection-BGc5OiZF.js} +2 -2
  285. package/dist/{useToggleSelection-B-Z80gy2.js.map → useToggleSelection-BGc5OiZF.js.map} +1 -1
  286. package/package.json +5 -7
  287. package/dist/Avatar-FDHyqiCy.js.map +0 -1
  288. package/dist/DataTable-E8z0H8c7.js.map +0 -1
  289. package/dist/DndHandleButton-CHTOYRlq.js.map +0 -1
  290. package/dist/Menu-W0c-xKdX.js.map +0 -1
  291. package/dist/MultiSelectFieldSync-CXX2F0ru.js.map +0 -1
  292. package/dist/MultiSelectMenuSync-EKtvlL62.js.map +0 -1
  293. package/dist/Pagination-Bmd4JORe.js.map +0 -1
  294. package/dist/Popover-8mTJoMy7.js.map +0 -1
  295. package/dist/RichTextEditor-DstVbYch.js.map +0 -1
  296. package/dist/SavedFiltersButton-2qba2Cgu.js.map +0 -1
  297. package/dist/Toaster-CoChsMD0.js.map +0 -1
  298. package/dist/Tooltip-yr1D06BE.js.map +0 -1
  299. package/dist/filter-state-Bx3aYS1r.js.map +0 -1
  300. package/dist/keyboard_arrow_right-DZWNVytH.js +0 -8
  301. package/dist/keyboard_arrow_right-DZWNVytH.js.map +0 -1
  302. package/dist/syncFilterUtils-BEKek64h.js.map +0 -1
  303. package/dist/useInfiniteCombobox-CknXmqlQ.js.map +0 -1
  304. package/dist/useMenuInteraction-CpAOHSJu.js.map +0 -1
  305. /package/dist/{useMenuInteraction.css → MenuFooter.css} +0 -0
package/dist/index.js CHANGED
@@ -1,72 +1,72 @@
1
1
  export { DndSort, DndSortCard, DndSortZone } from './DndSort.js';
2
- export { A as Alert } from './Alert-BNH0UD2s.js';
3
- export { A as AiMark } from './AiMark-BXL0sWIV.js';
2
+ export { A as Alert } from './Alert-CNDLoh6b.js';
3
+ export { A as AiMark } from './AiMark-CS6MvraM.js';
4
4
  export { A as Announcement } from './Announcement-CgTqDU8A.js';
5
- export { A as Avatar } from './Avatar-B_cRQqKR.js';
6
- export { A as AvatarGroup } from './Avatar-FDHyqiCy.js';
5
+ export { A as Avatar } from './Avatar-CdAIJ5VK.js';
6
+ export { A as AvatarGroup } from './Avatar-Bl-Dxbhf.js';
7
7
  export { B as Badge } from './Badge-DtUI2AEk.js';
8
- export { B as Breadcrumbs } from './Breadcrumbs-Bzxbdu-S.js';
8
+ export { B as Breadcrumbs } from './Breadcrumbs--Xt6l_2L.js';
9
9
  export { B as Button } from './Button-C_V2xQAs.js';
10
10
  export { B as ButtonCompound } from './ButtonCompound-BQb2gfAl.js';
11
11
  export { B as ButtonLink } from './ButtonLink-UhLks0vM.js';
12
12
  export { B as ButtonToggle } from './ButtonToggle-jnDMPSyK.js';
13
- export { a as Calendar, g as CalendarMonth, f as CalendarMonthButton, e as CalendarNext, b as CalendarNow, d as CalendarPrev, c as CalendarYearButton } from './Calendar-BYNFAWpZ.js';
13
+ export { a as Calendar, g as CalendarMonth, f as CalendarMonthButton, e as CalendarNext, b as CalendarNow, d as CalendarPrev, c as CalendarYearButton } from './Calendar-rITorBvD.js';
14
14
  export { C as Card } from './Card-fBqg853U.js';
15
- export { C as Checkbox } from './Checkbox-BeIzx_ZX.js';
16
- export { C as Chip } from './Chip-D2k5X_wX.js';
17
- export { C as Combobox, a as ComboboxElement, c as ComboboxList, b as ComboboxSelect, u as useInfiniteCombobox } from './useInfiniteCombobox-CknXmqlQ.js';
18
- export { D as DateFieldRange } from './DateFieldRange-BN_uIvHI.js';
19
- export { D as DateFieldSingle } from './DateFieldSingle-h3YkdwPo.js';
20
- export { D as DateFieldYearless } from './DateFieldYearless-m_Hl2gMY.js';
21
- export { D as DateFieldYearlessRange } from './DateFieldYearlessRange-DNqSTBDr.js';
22
- export { D as DaysOfTheWeek } from './DaysOfTheWeek-D58z_eF3.js';
15
+ export { C as Checkbox } from './Checkbox-BYWhkYoK.js';
16
+ export { C as Chip } from './Chip-CyMNyEPR.js';
17
+ export { C as Combobox, a as ComboboxElement, c as ComboboxList, b as ComboboxSelect, u as useInfiniteCombobox } from './useInfiniteCombobox-BqJm-CdN.js';
18
+ export { D as DateFieldRange } from './DateFieldRange-BUug1tUy.js';
19
+ export { D as DateFieldSingle } from './DateFieldSingle-DR7faQGD.js';
20
+ export { D as DateFieldYearless } from './DateFieldYearless-7MFcR7L6.js';
21
+ export { D as DateFieldYearlessRange } from './DateFieldYearlessRange-DGtdyISH.js';
22
+ export { D as DaysOfTheWeek } from './DaysOfTheWeek-C7oN9nIe.js';
23
23
  export { D as Details } from './Details-s2pVu-YL.js';
24
- export { D as Dialog } from './Dialog-CvYSMvfD.js';
25
- export { D as Divider } from './Divider-CxtTyw8_.js';
26
- export { D as Dnd } from './index-CukEaIHB.js';
27
- export { D as Drawer } from './Drawer-s2y0xcgV.js';
28
- export { D as DrillDown, b as DrillDownContent, c as DrillDownFooter, a as DrillDownHeader, d as DrillDownNextButton, e as DrillDownPrevButton, u as useDrillDown } from './useDrilldown-KZ9rRsXQ.js';
29
- export { E as EditCard } from './EditCard-B25pj0Jx.js';
30
- export { F as FieldLabel } from './FieldLabel-D1qPAGtB.js';
24
+ export { D as Dialog } from './Dialog-dE9c90iR.js';
25
+ export { D as Divider } from './Divider-Dz27DFuE.js';
26
+ export { D as Dnd } from './index-CKdC7x1S.js';
27
+ export { D as Drawer } from './Drawer-Dk0MsaOU.js';
28
+ export { D as DrillDown, b as DrillDownContent, c as DrillDownFooter, a as DrillDownHeader, d as DrillDownNextButton, e as DrillDownPrevButton, u as useDrillDown } from './useDrilldown-BJ2dHHKV.js';
29
+ export { E as EditCard } from './EditCard-DV2N7zWr.js';
30
+ export { F as FieldLabel } from './FieldLabel-VVn8GR64.js';
31
31
  export { w as warnDeprecatedErrorUsage } from './utils-CM48ODEJ.js';
32
32
  export { F as FieldMessage } from './FieldMessage-mTGdycSA.js';
33
33
  export { F as Flex } from './Flex-_orhvoxS.js';
34
34
  export { G as Grid } from './Grid-BAN8WD_V.js';
35
35
  export { I as Icon } from './Icon-feeG7gXA.js';
36
- export { I as InputMask } from './InputMask-BDl09V4u.js';
36
+ export { I as InputMask } from './InputMask-VBHWGZGN.js';
37
37
  export { L as Layout, b as LayoutElement, a as LayoutItem } from './Layout-C2Q2hyLG.js';
38
38
  export { L as Link, u as useLinkStyles } from './Link-D8A_WT94.js';
39
39
  export { L as LinkButton } from './LinkButton-DxYsWiXB.js';
40
40
  export { L as List } from './List-GPS-GqH7.js';
41
- export { L as Listbox } from './Listbox-CvQHBFWb.js';
42
- export { L as ListView, a as ListViewOption, b as ListViewOptionCell } from './ListView-DO5psxd4.js';
43
- export { M as Menu } from './Menu-W0c-xKdX.js';
44
- export { N as NumberField } from './NumberField-BymFZhIJ.js';
41
+ export { L as Listbox } from './Listbox-CRY-0BkS.js';
42
+ export { L as ListView, a as ListViewOption, b as ListViewOptionCell } from './ListView-BUrfz75g.js';
43
+ export { M as Menu } from './Menu-DNJ0YqjA.js';
44
+ export { N as NumberField } from './NumberField-bgYX7JGs.js';
45
45
  export { Overflow, OverflowText } from './Overflow.js';
46
- export { P as Page } from './Page-C2_Hm27h.js';
47
- export { P as Pagination } from './Pagination-Bmd4JORe.js';
48
- export { P as Popover } from './Popover-8mTJoMy7.js';
49
- export { P as ProgressBar } from './ProgressBar-C1CkQHV5.js';
50
- export { R as Radio } from './Radio-BcHMk8dD.js';
46
+ export { P as Page } from './Page-BSHydn4p.js';
47
+ export { P as Pagination } from './Pagination-CAeyJ7Pl.js';
48
+ export { P as Popover } from './Popover-Cq5tirFz.js';
49
+ export { P as ProgressBar } from './ProgressBar-ByR50ln7.js';
50
+ export { R as Radio } from './Radio-CPuctRpl.js';
51
51
  export { S as SearchField } from './SearchField-BMHJCVFu.js';
52
52
  export { S as SegmentedControl, a as SegmentedControlSegment } from './SegmentedControl-PwLdTdrd.js';
53
- export { S as SelectCard } from './SelectCard-BN-LI14f.js';
54
- export { S as SelectTrigger } from './SelectTrigger-CHk0KO-P.js';
53
+ export { S as SelectCard } from './SelectCard-DLWLHi_i.js';
54
+ export { S as SelectTrigger } from './SelectTrigger-BbneVXMz.js';
55
55
  export { S as SideNav } from './SideNav-JzIIZSK_.js';
56
56
  export { Skeleton, SkeletonCircle, SkeletonPill, SkeletonRectangle, SkeletonText } from './Skeleton.js';
57
57
  export { S as Spinner } from './Spinner-B7tTWcP6.js';
58
58
  export { S as SrOnly } from './SrOnly-pnf8ajnh.js';
59
59
  export { S as Stepper } from './Stepper-lYywxPU5.js';
60
- export { S as Switch } from './Switch-onmiKoRd.js';
60
+ export { S as Switch } from './Switch-B6bKmpwN.js';
61
61
  export { T as Tab } from './Tab-CIY6BO2e.js';
62
- export { T as Text } from './Text-BTzgTpqu.js';
63
- export { T as Textarea } from './Textarea-PXjppEQ6.js';
64
- export { T as TextField } from './TextField-WTYZJlX3.js';
65
- export { T as TimeField } from './TimeField-BJPXIv6W.js';
66
- export { T as Toaster } from './Toaster-DXLc86VD.js';
67
- export { t as toast } from './Toaster-CoChsMD0.js';
68
- export { T as Toolbar } from './Toolbar-Bt3kShho.js';
69
- export { T as Tooltip } from './Tooltip-yr1D06BE.js';
62
+ export { T as Text } from './Text-w2gWn4K6.js';
63
+ export { T as Textarea } from './Textarea-BK4Vf84K.js';
64
+ export { T as TextField } from './TextField-BQsCh5Nb.js';
65
+ export { T as TimeField } from './TimeField-B4IW2B_o.js';
66
+ export { T as Toaster } from './Toaster-DTF9qnTy.js';
67
+ export { t as toast } from './Toaster-BGY2IzF5.js';
68
+ export { T as Toolbar } from './Toolbar-DObrJ_S5.js';
69
+ export { T as Tooltip } from './Tooltip-DqS6xDUf.js';
70
70
  export { u as useAccessibleColor } from './useAccessibleColor-BYKjkGRg.js';
71
71
  export { u as useBreakpoint } from './useBreakpoint-CeaUyHxh.js';
72
72
  export { u as useMergeRefs } from './useMergeRefs-Dfmtq9cI.js';
@@ -74,11 +74,11 @@ export { u as usePrefersColorScheme } from './usePrefersColorScheme-_hT7dK7_.js'
74
74
  export { u as usePrefersReducedMotion } from './usePrefersReducedMotion-DR9B_D6w.js';
75
75
  export { u as useSwipe } from './useSwipe-Cp-CJxLU.js';
76
76
  export { useTrackingId } from './useTrackingId.js';
77
- export { A as AnvilProvider, a as AnvilProviderContext } from './AnvilProvider-J9DjoJiB.js';
77
+ export { A as AnvilProvider, a as AnvilProviderContext } from './AnvilProvider-BFK29dL5.js';
78
78
  export { L as LocalizationProvider } from './LocalizationProvider-CO8fQGqs.js';
79
79
  export { L as LocalizationContext, u as useLocalizationContext } from './LocalizationContext-UsmB5mnR.js';
80
80
  export { P as PortalProvider, a as PortalProviderContext } from './PortalProvider-Cj_y3gbC.js';
81
- export { T as ThemeProvider } from './ThemeProvider-D4KdGCaP.js';
81
+ export { T as ThemeProvider } from './ThemeProvider-BC6wbuLU.js';
82
82
  export { u as useTheme } from './useTheme-B4i6a3bM.js';
83
83
  export { T as TrackingProvider } from './TrackingProvider-Co4lyoI9.js';
84
84
  export { u as useTrackingContext } from './useTrackingContext-C522P4sv.js';
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+
3
+ const SvgKeyboardArrowLeft = (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: "M14.71 15.88 10.83 12l3.88-3.88a.996.996 0 1 0-1.41-1.41L8.71 11.3a.996.996 0 0 0 0 1.41l4.59 4.59c.39.39 1.02.39 1.41 0 .38-.39.39-1.03 0-1.42z" }));
4
+
5
+ export { SvgKeyboardArrowLeft as S };
6
+ //# sourceMappingURL=keyboard_arrow_left-CiE1n99w.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keyboard_arrow_left-CiE1n99w.js","sources":["../../hammer-icon/mdi/round/keyboard_arrow_left.svg"],"sourcesContent":["import * as React from \"react\";\nconst SvgKeyboardArrowLeft = (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: \"M14.71 15.88 10.83 12l3.88-3.88a.996.996 0 1 0-1.41-1.41L8.71 11.3a.996.996 0 0 0 0 1.41l4.59 4.59c.39.39 1.02.39 1.41 0 .38-.39.39-1.03 0-1.42z\" }));\nexport default SvgKeyboardArrowLeft;\n"],"names":[],"mappings":";;AACK,MAAC,oBAAoB,GAAG,CAAC,KAAK,qBAAqB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,kBAAkB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,kJAAkJ,EAAE,CAAC;;;;"}
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+
3
+ const SvgKeyboardArrowRight = (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: "M9.29 15.88 13.17 12 9.29 8.12a.996.996 0 1 1 1.41-1.41l4.59 4.59c.39.39.39 1.02 0 1.41L10.7 17.3a.996.996 0 0 1-1.41 0c-.38-.39-.39-1.03 0-1.42z" }));
4
+
5
+ export { SvgKeyboardArrowRight as S };
6
+ //# sourceMappingURL=keyboard_arrow_right-DMloHg_F.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keyboard_arrow_right-DMloHg_F.js","sources":["../../hammer-icon/mdi/round/keyboard_arrow_right.svg"],"sourcesContent":["import * as React from \"react\";\nconst SvgKeyboardArrowRight = (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: \"M9.29 15.88 13.17 12 9.29 8.12a.996.996 0 1 1 1.41-1.41l4.59 4.59c.39.39.39 1.02 0 1.41L10.7 17.3a.996.996 0 0 1-1.41 0c-.38-.39-.39-1.03 0-1.42z\" }));\nexport default SvgKeyboardArrowRight;\n"],"names":[],"mappings":";;AACK,MAAC,qBAAqB,GAAG,CAAC,KAAK,qBAAqB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,kBAAkB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,mJAAmJ,EAAE,CAAC;;;;"}
@@ -0,0 +1,7 @@
1
+ import { c as cx } from './index-De1g9FRV.js';
2
+ import { t as themeStyles } from './ThemeProvider.module-D9pNGYjP.js';
3
+
4
+ const portalScopeClassNames = cx("anvil2", themeStyles["theme-core"]);
5
+
6
+ export { portalScopeClassNames as p };
7
+ //# sourceMappingURL=portalScopeClassNames-jlZkdug_.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portalScopeClassNames-jlZkdug_.js","sources":["../src/internal/functions/portalScopeClassNames.ts"],"sourcesContent":["import cx from \"classnames\";\n\nimport themeStyles from \"../../providers/ThemeProvider/ThemeProvider.module.scss\";\n\n/**\n * Class names that re-establish the Anvil2 styling scope on a container.\n *\n * Native `popover` / top-layer elements (toasts, popovers, tooltips, surfaces)\n * are promoted to the top layer and live high in the DOM, escaping any ancestor\n * `AnvilProvider`'s `.anvil2` scope. Without the scope, descendants resolve none\n * of the `--a2-*` design tokens (defined on `.anvil2.theme-core`) and miss the\n * scoped component rules, so they render unstyled.\n *\n * Spread/append these class names onto such containers so they self-scope and\n * render correctly in any host context (including outside an `AnvilProvider`,\n * e.g. when an Anvil2 component is used from a legacy host).\n */\nexport const portalScopeClassNames = cx(\"anvil2\", themeStyles[\"theme-core\"]);\n"],"names":[],"mappings":";;;AAiBO,MAAM,qBAAA,GAAwB,EAAA,CAAG,QAAA,EAAU,WAAA,CAAY,YAAY,CAAC;;;;"}
@@ -0,0 +1,29 @@
1
+ import { TextInputFilter } from './internal/types';
2
+ /**
3
+ * Props for the FilterTextInput component.
4
+ */
5
+ interface FilterTextInputProps {
6
+ /** The text input filter — drives label, placeholder, and max length. */
7
+ filter: TextInputFilter;
8
+ /** Current text value. */
9
+ value: string;
10
+ /** Callback to update the value. Receives the truncated string. */
11
+ onChange: (value: string) => void;
12
+ /**
13
+ * `compact` hides the field's own label (toolbar popover — the filter
14
+ * button doubles as the label); `grid` shows it (drawer cell).
15
+ */
16
+ layout: "compact" | "grid";
17
+ }
18
+ /**
19
+ * Single-line TextField for the textInput filter. Used as the popover body in
20
+ * the toolbar (`layout="compact"`) and as the cell in the drawer
21
+ * (`layout="grid"`).
22
+ *
23
+ * Features:
24
+ * - Truncates entered text to `filter.maxLength` before emitting
25
+ * - Optional `current/max` character counter (`showCounter`)
26
+ * - Hides its own label in `compact` (the filter button doubles as the label)
27
+ */
28
+ export declare const FilterTextInput: ({ filter, value, onChange, layout, }: FilterTextInputProps) => import("react/jsx-runtime").JSX.Element;
29
+ export {};
@@ -1,3 +1,3 @@
1
1
  export * from './FilterBar';
2
2
  export { FilterBar as default, type FilterBarProps } from './FilterBar';
3
- export { type Filter, type BooleanFilter, type CustomFilter, type SingleSelectFilter, type MultiSelectFilter, type DateFilter, type DateRangeFilter, type DateListFilter, type DateListOption, type DateListLibraryOptionId, type AsyncSelectFilter, type AsyncMultiSelectFilter, type NumericRangeFilter, type NumericRangeValue, type FilterValue, type FilterRenderProps, type BaseFilter, } from './internal/types';
3
+ export { type Filter, type BooleanFilter, type CustomFilter, type SingleSelectFilter, type MultiSelectFilter, type DateFilter, type DateRangeFilter, type DateListFilter, type DateListOption, type DateListLibraryOptionId, type AsyncSelectFilter, type AsyncMultiSelectFilter, type TreeFilter, type AsyncTreeFilter, type NumericRangeFilter, type NumericRangeValue, type TextInputFilter, type FilterValue, type FilterRenderProps, type BaseFilter, } from './internal/types';
@@ -0,0 +1,6 @@
1
+ import { TreeSelectMenuValue } from '../../../TreeSelectMenu';
2
+ import { AsyncTreeFilter } from '../types';
3
+ import { FilterTypeAdapter } from './types';
4
+ type Value = TreeSelectMenuValue[];
5
+ export declare const asyncTreeAdapter: FilterTypeAdapter<AsyncTreeFilter, Value>;
6
+ export {};
@@ -0,0 +1,3 @@
1
+ import { TextInputFilter } from '../types';
2
+ import { FilterTypeAdapter } from './types';
3
+ export declare const textInputAdapter: FilterTypeAdapter<TextInputFilter, string>;
@@ -0,0 +1,6 @@
1
+ import { TreeSelectMenuValue } from '../../../TreeSelectMenu';
2
+ import { TreeFilter } from '../types';
3
+ import { FilterTypeAdapter } from './types';
4
+ type Value = TreeSelectMenuValue[];
5
+ export declare const treeAdapter: FilterTypeAdapter<TreeFilter, Value>;
6
+ export {};
@@ -1,5 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
- import { AsyncMultiSelectFilter, AsyncSelectFilter, BooleanFilter, CustomFilter, DateFilter, DateListFilter, DateListLibraryOptionId, DateRangeFilter, Filter, MultiSelectFilter, NumericRangeFilter, SingleSelectFilter } from '../types';
2
+ import { AsyncMultiSelectFilter, AsyncSelectFilter, BooleanFilter, CustomFilter, DateFilter, DateListFilter, DateListLibraryOptionId, DateRangeFilter, Filter, MultiSelectFilter, NumericRangeFilter, SingleSelectFilter, TextInputFilter, TreeFilter, AsyncTreeFilter } from '../types';
3
3
  /**
4
4
  * Context passed to renderBarControl — the inline FilterBar control for a filter.
5
5
  *
@@ -67,7 +67,10 @@ export type FilterVariantMap = {
67
67
  dateList: DateListFilter;
68
68
  asyncSelect: AsyncSelectFilter;
69
69
  asyncMultiSelect: AsyncMultiSelectFilter;
70
+ tree: TreeFilter;
71
+ asyncTree: AsyncTreeFilter;
70
72
  numericRange: NumericRangeFilter;
73
+ textInput: TextInputFilter;
71
74
  };
72
75
  /**
73
76
  * Exhaustive map from Filter["type"] to its adapter. Forces compile-time
@@ -3,6 +3,7 @@ import { DateFieldSingleProps } from '../../../../components/DateFieldSingle';
3
3
  import { DateFieldRangeProps } from '../../../../components/DateFieldRange';
4
4
  import { SelectMenuOption, SelectMenuProps, SelectMenuSyncProps } from '../../SelectMenu';
5
5
  import { MultiSelectMenuOption, MultiSelectMenuProps, MultiSelectMenuSyncProps } from '../../MultiSelectMenu';
6
+ import { TreeSelectMenuProps, TreeSelectMenuSyncProps, TreeSelectMenuValue } from '../../TreeSelectMenu';
6
7
  import { DistributiveOmit } from '../../../../types';
7
8
  /**
8
9
  * Base properties shared by all filter types
@@ -245,29 +246,85 @@ export type NumericRangeFilter = BaseFilter & {
245
246
  */
246
247
  hideControls?: boolean;
247
248
  };
249
+ type TextInputFilterShared = BaseFilter & {
250
+ /** Identifies this as a text input filter */
251
+ type: "textInput";
252
+ /** Current text value (undefined or empty means inactive) */
253
+ value?: string;
254
+ /** Placeholder shown when the field is empty */
255
+ placeholder?: string;
256
+ };
248
257
  /**
249
258
  * Single text input filter. Renders a TextField — the field's own label is
250
259
  * hidden inline in the toolbar (the filter button doubles as the label) and
251
260
  * shown in the drawer cell.
252
261
  *
253
262
  * `placeholder` is shown when the field is empty; `maxLength` clamps entered
254
- * text to that many characters.
263
+ * text to that many characters. Set `showCounter: true` to render a
264
+ * `current/max` character counter under the input — `maxLength` is required
265
+ * (and must be a concrete `number`, not `undefined`) in that case, otherwise
266
+ * the counter renders with an empty denominator.
255
267
  */
256
- export type TextInputFilter = BaseFilter & {
257
- /** Identifies this as a text input filter */
258
- type: "textInput";
259
- /** Current text value (undefined or empty means inactive) */
260
- value?: string;
261
- /** Placeholder shown when the field is empty */
262
- placeholder?: string;
263
- /** Optional max character length; entered text is truncated to this length */
268
+ export type TextInputFilter = (TextInputFilterShared & {
269
+ /** Show a `current/max` character counter under the input. */
270
+ showCounter: true;
271
+ /** Max character length; required when `showCounter` is true. */
272
+ maxLength: number;
273
+ }) | (TextInputFilterShared & {
274
+ /** Show a `current/max` character counter under the input. */
275
+ showCounter?: false;
276
+ /** Optional max character length; entered text is truncated to this length. */
264
277
  maxLength?: number;
265
- };
278
+ });
279
+ /**
280
+ * Sync tree filter type. Backed by TreeSelectMenuSync in the toolbar and
281
+ * TreeSelectFieldSync in the drawer, so the consumer supplies a static
282
+ * `options` tree (with optional client-side `filter` override) instead of a
283
+ * `loadOptions` function. Selection is always an array of node values, even in
284
+ * `selectionMode: "single"`.
285
+ *
286
+ * Uses DistributiveOmit so variant-specific fields survive the omit, matching
287
+ * the select-family filters.
288
+ *
289
+ * Filter-runtime concerns (`label`, `id`, `selectedNodes`, `trigger`,
290
+ * `value`/`onSelectedOptionsChange`, focus-lifecycle callbacks) are owned by
291
+ * FilterBar and the tree adapter — consumers don't pass them. Like the
292
+ * select-family filters, the inline menu honors `controlledFiltering`: when it
293
+ * is on, selections are buffered as a draft and commit only on Apply; when off,
294
+ * they commit immediately.
295
+ */
296
+ export type TreeFilter = BaseFilter & {
297
+ /** Identifies this as a tree filter */
298
+ type: "tree";
299
+ /** Currently selected tree node values */
300
+ selectedNodes?: TreeSelectMenuValue[];
301
+ } & DistributiveOmit<TreeSelectMenuSyncProps, "id" | "label" | "value" | "onSelectedOptionsChange" | "trigger" | "onMenuKeyDown" | "onImplicitClose" | "onExplicitClose">;
302
+ /**
303
+ * Async tree filter type. The async counterpart of TreeFilter — backed by
304
+ * TreeSelectMenu in the toolbar and TreeSelectField in the drawer, so the
305
+ * consumer supplies a `loadOptions` function (with `parentNode` for lazy branch
306
+ * loading) instead of a static `options` tree. Carries the full TreeSelectMenu
307
+ * pass-through configuration (cache, virtualize, displayMenuAs, initialLoad,
308
+ * selectionMode, valueConsistsOf, etc.).
309
+ *
310
+ * Filter-runtime concerns (`label`, `id`, `selectedNodes`, `trigger`,
311
+ * `value`/`onSelectedOptionsChange`, focus-lifecycle callbacks) are owned by
312
+ * FilterBar and the asyncTree adapter — consumers don't pass them. Like
313
+ * TreeFilter, the inline menu honors `controlledFiltering`: when it is on,
314
+ * selections are buffered as a draft and commit only on Apply; when off, they
315
+ * commit immediately.
316
+ */
317
+ export type AsyncTreeFilter = BaseFilter & {
318
+ /** Identifies this as an async tree filter */
319
+ type: "asyncTree";
320
+ /** Currently selected tree node values */
321
+ selectedNodes?: TreeSelectMenuValue[];
322
+ } & DistributiveOmit<TreeSelectMenuProps, "id" | "label" | "value" | "onSelectedOptionsChange" | "trigger" | "onMenuKeyDown" | "onImplicitClose" | "onExplicitClose">;
266
323
  /**
267
324
  * Union type of all available filter types
268
325
  * Uses unknown instead of any for better type safety
269
326
  */
270
- export type Filter = BooleanFilter | CustomFilter<any> | SingleSelectFilter | MultiSelectFilter | DateFilter | DateRangeFilter | DateListFilter | AsyncSelectFilter | AsyncMultiSelectFilter | NumericRangeFilter;
327
+ export type Filter = BooleanFilter | CustomFilter<any> | SingleSelectFilter | MultiSelectFilter | DateFilter | DateRangeFilter | DateListFilter | AsyncSelectFilter | AsyncMultiSelectFilter | TreeFilter | AsyncTreeFilter | NumericRangeFilter | TextInputFilter;
271
328
  /** Type representing all possible filter values */
272
- export type FilterValue = boolean | CustomFilter["value"] | SingleSelectFilter["selectedOption"] | MultiSelectFilter["selectedOptions"] | DateFilter["value"] | DateRangeFilter["value"] | DateListFilter["selectedOption"] | AsyncSelectFilter["selectedOption"] | AsyncMultiSelectFilter["selectedOptions"] | NumericRangeFilter["value"];
329
+ export type FilterValue = boolean | CustomFilter["value"] | SingleSelectFilter["selectedOption"] | MultiSelectFilter["selectedOptions"] | DateFilter["value"] | DateRangeFilter["value"] | DateListFilter["selectedOption"] | AsyncSelectFilter["selectedOption"] | AsyncMultiSelectFilter["selectedOptions"] | TreeFilter["selectedNodes"] | AsyncTreeFilter["selectedNodes"] | NumericRangeFilter["value"] | TextInputFilter["value"];
273
330
  export {};
@@ -1,4 +1,4 @@
1
- import { AsyncMultiSelectFilter, AsyncSelectFilter, Filter, BooleanFilter, CustomFilter, SingleSelectFilter, MultiSelectFilter, DateFilter, DateListFilter, DateRangeFilter, NumericRangeFilter } from '../types';
1
+ import { AsyncMultiSelectFilter, AsyncSelectFilter, Filter, BooleanFilter, CustomFilter, SingleSelectFilter, MultiSelectFilter, DateFilter, DateListFilter, DateRangeFilter, NumericRangeFilter, TextInputFilter, TreeFilter, AsyncTreeFilter } from '../types';
2
2
  export type TestValue = {
3
3
  id: number;
4
4
  label: string;
@@ -38,7 +38,10 @@ export declare function createMockDateRangeFilter(overrides?: Partial<DateRangeF
38
38
  export declare function createMockDateListFilter(overrides?: Partial<DateListFilter>): DateListFilter;
39
39
  export declare function createMockAsyncSelectFilter(overrides?: Partial<AsyncSelectFilter>): AsyncSelectFilter;
40
40
  export declare function createMockAsyncMultiSelectFilter(overrides?: Partial<AsyncMultiSelectFilter>): AsyncMultiSelectFilter;
41
+ export declare function createMockTreeFilter(overrides?: Partial<TreeFilter>): TreeFilter;
42
+ export declare function createMockAsyncTreeFilter(overrides?: Partial<AsyncTreeFilter>): AsyncTreeFilter;
41
43
  export declare function createMockNumericRangeFilter(overrides?: Partial<NumericRangeFilter>): NumericRangeFilter;
44
+ export declare function createMockTextInputFilter(overrides?: Partial<TextInputFilter>): TextInputFilter;
42
45
  export declare const setupDesktopContainer: () => void;
43
46
  export declare const setupMobileContainer: () => void;
44
47
  export declare const setupSmContainer: () => void;
@@ -1,10 +1,9 @@
1
- import { ComponentPropsWithoutRef, Ref, ReactNode } from 'react';
1
+ import { ComponentPropsWithoutRef, forwardRef, Ref, ReactNode } from 'react';
2
2
  import { LayoutUtilProps } from '../../../../types';
3
3
  import { ColumnDef, CustomTableFooterCellProps, TableRow } from '../types';
4
4
  import { DataTableCacheOptions, DataTableEmptyState, DataTablePaginationConfig, DataTableRef, SortedColumn } from './types';
5
5
  export type { DataTableCacheOptions, DataTableRef, DataTableEmptyState, SortedColumn, };
6
- type DataTableCellValue = object | string | number | boolean | bigint | symbol | null | undefined;
7
- export type DataTableRowData = Record<PropertyKey, DataTableCellValue>;
6
+ export type DataTableRowData = object;
8
7
  /**
9
8
  * Props for the DataTable component
10
9
  * @extends LayoutUtilProps
@@ -33,10 +32,6 @@ export type DataTableProps<T extends DataTableRowData> = LayoutUtilProps & Compo
33
32
  * @default false
34
33
  */
35
34
  disableExpandAll?: boolean;
36
- /**
37
- * The default active row ids.
38
- */
39
- defaultActiveRowIds?: TableRow<T>["id"][];
40
35
  /**
41
36
  * The default selected row ids.
42
37
  */
@@ -55,23 +50,11 @@ export type DataTableProps<T extends DataTableRowData> = LayoutUtilProps & Compo
55
50
  * @default false
56
51
  */
57
52
  disableSelectAll?: boolean;
58
- /**
59
- * Whether rows can be activated by clicking. When enabled, rows receive
60
- * a pointer cursor and hover background, and clicking a row toggles it
61
- * into the active set. Can be a boolean to apply to all rows, or a
62
- * function to opt specific rows in.
63
- * @default false
64
- */
65
- isActivatable?: boolean | ((row: T) => boolean);
66
53
  /**
67
54
  * Whether the table is selectable. Can be a boolean or a function to customize the selection logic.
68
55
  * @default false
69
56
  */
70
57
  isSelectable?: boolean | ((row: T) => boolean);
71
- /**
72
- * Called when the row activation state changes. Passes the active row ids.
73
- */
74
- onActivateRow?: (activeRowIds: TableRow<T>["id"][]) => void;
75
58
  /**
76
59
  * Called when the row expansion state changes. Passes the expanded row ids.
77
60
  */
@@ -90,18 +73,13 @@ export type DataTableProps<T extends DataTableRowData> = LayoutUtilProps & Compo
90
73
  * When `false` or `undefined`, no pagination is applied and all data is shown.
91
74
  */
92
75
  pagination?: boolean | DataTablePaginationConfig<T>;
93
- /**
94
- * The active row ids.
95
- */
96
- activeRowIds?: TableRow<T>["id"][];
97
76
  /**
98
77
  * Row ids that should render as read-only. Read-only rows gray their
99
- * plain text content, show a `not-allowed` cursor when they would
100
- * otherwise be activatable, and disable the selection checkbox.
101
- * Links, chips, and custom cell content are unaffected.
78
+ * plain-text cell content and render their selection checkbox as disabled
79
+ * and read-only. Links, chips, and custom cell content are unaffected.
102
80
  *
103
- * Pre-seeded `selectedRowIds` / `activeRowIds` are still accepted
104
- * read-only only gates user interaction, not the visual state.
81
+ * Pre-seeded `selectedRowIds` is still honored `readOnlyRowIds` only
82
+ * gates user interaction (checkbox toggling), not the visual state.
105
83
  */
106
84
  readOnlyRowIds?: TableRow<T>["id"][];
107
85
  /**
@@ -205,7 +183,6 @@ declare function DataTableInner<T extends DataTableRowData>(props: DataTableProp
205
183
  * }}
206
184
  * />
207
185
  */
208
- type DataTableComponent = <T extends DataTableRowData>(props: DataTableProps<T> & {
186
+ export declare const DataTable: (<T extends DataTableRowData>(props: DataTableProps<T> & {
209
187
  ref?: Ref<DataTableRef>;
210
- }) => ReturnType<typeof DataTableInner>;
211
- export declare const DataTable: DataTableComponent;
188
+ }) => ReturnType<typeof DataTableInner>) & Pick<ReturnType<typeof forwardRef<DataTableRef, DataTableProps<DataTableRowData>>>, "$$typeof">;
@@ -1,7 +1,6 @@
1
1
  import { ComponentPropsWithoutRef } from 'react';
2
2
  import { Table as TanstackTable } from '@tanstack/react-table';
3
3
  import { DataTableVirtualizer } from './useDataTableVirtualizer';
4
- import { TableRow } from '../../types';
5
4
  /**
6
5
  * Props for the DataTableBody component
7
6
  * @property {TanstackTable<T>} table - The table instance from @tanstack/react-table to render
@@ -34,25 +33,9 @@ export type DataTableBodyProps<T> = {
34
33
  */
35
34
  getRowVersion?: (row: T) => unknown;
36
35
  /**
37
- * Whether rows can be activated. Mirrors the DataTable `isActivatable`
38
- * prop a boolean applies to every row, a function opts specific rows in.
39
- */
40
- isActivatable?: boolean | ((row: T) => boolean);
41
- /**
42
- * Map of currently active row ids keyed by id. An entry set to `true`
43
- * marks the row as active.
44
- */
45
- activeRowMap: Record<string, boolean>;
46
- /**
47
- * Map of read-only row ids keyed by id. Read-only rows gray their text
48
- * and ignore activation clicks; their selection checkbox is disabled.
36
+ * Map of read-only row ids keyed by id. Read-only rows gray their plain
37
+ * text content and render disabled, read-only selection checkboxes.
49
38
  */
50
39
  readOnlyRowMap: Record<string, boolean>;
51
- /**
52
- * Called when an activatable row is clicked. Receives the row id and the
53
- * ids of all descendant rows (flattened, any depth) so the parent's state
54
- * can cascade to its sub-rows.
55
- */
56
- onToggleActive: (rowId: TableRow<T>["id"], descendantIds: TableRow<T>["id"][]) => void;
57
40
  } & ComponentPropsWithoutRef<"div">;
58
41
  export declare function DataTableBody<T>(props: DataTableBodyProps<T>): import("react/jsx-runtime").JSX.Element;
@@ -1,8 +1,12 @@
1
1
  import { Row } from '@tanstack/react-table';
2
- import { TableRow } from '../../types';
3
2
  import { useColumnOrder } from './useColumnOrder';
4
3
  export type DataTableBodyRowProps<T> = {
5
4
  columnOrder: ReturnType<typeof useColumnOrder>["columnOrder"];
5
+ /**
6
+ * O(1) lookup of leaf-column-index → visual position. Replaces
7
+ * `columnOrder.indexOf(...)` per cell to keep large-table renders cheap.
8
+ */
9
+ columnIndexMap: ReturnType<typeof useColumnOrder>["columnIndexMap"];
6
10
  row: Row<T>;
7
11
  rowIndex: number;
8
12
  tableHasSubRows: boolean;
@@ -12,22 +16,22 @@ export type DataTableBodyRowProps<T> = {
12
16
  parentRowCanExpand: boolean;
13
17
  isSelected: boolean;
14
18
  isSomeSelected: boolean;
15
- isActivatable: boolean;
16
- isActive: boolean;
17
19
  /**
18
- * True when the row is the topmost active ancestor in its active chain
19
- * (itself active, has sub-rows, and no ancestor row is active). Drives
20
- * the darker blue/100 background; non-topmost active rows use blue/50.
20
+ * True when any ancestor row (parent, grandparent, etc.) is currently
21
+ * selected. Combined with `isSelected` to drive the row's
22
+ * `data-anv-is-selected-row` attribute so descendants visually adopt
23
+ * an ancestor's selection state without painting the ancestor itself.
24
+ * Computed at the parent level (`DataTableBody.tsx`) so the prop
25
+ * remains a serializable boolean — preserving `React.memo`
26
+ * comparator semantics in `areRowPropsEqual`.
21
27
  */
22
- isTopMostActive: boolean;
28
+ isAncestorSelected: boolean;
23
29
  /**
24
- * True when the row is flagged read-only via `readOnlyRowIds`. Grays
25
- * plain text, shows `not-allowed` cursor on activatable rows, and
26
- * disables the activation click (checkbox disabling is gated at the
27
- * DataTable level via `enableRowSelection`).
30
+ * True when the row is flagged read-only via `readOnlyRowIds`. Grays the
31
+ * row's plain-text cell content. Checkbox disabling is gated separately
32
+ * at the DataTable level via `enableRowSelection`.
28
33
  */
29
34
  isReadOnly: boolean;
30
- onToggleActive: (rowId: TableRow<T>["id"], descendantIds: TableRow<T>["id"][]) => void;
31
35
  /**
32
36
  * Optional consumer-provided function that returns a value expressing
33
37
  * "this row has changed." When supplied, the row is memoized: a row will
@@ -38,6 +42,6 @@ export type DataTableBodyRowProps<T> = {
38
42
  */
39
43
  getRowVersion?: (row: T) => unknown;
40
44
  };
41
- declare function DataTableBodyRowInner<T>({ columnOrder, row, rowIndex, tableHasSubRows, isExpanded, canExpand, depth, parentRowCanExpand, isActivatable, isActive, isTopMostActive, isReadOnly, onToggleActive, }: DataTableBodyRowProps<T>): import("react/jsx-runtime").JSX.Element;
45
+ declare function DataTableBodyRowInner<T>({ columnOrder: _columnOrder, columnIndexMap, row, rowIndex, tableHasSubRows, isExpanded, canExpand, depth, parentRowCanExpand, isSelected, isSomeSelected, isAncestorSelected, isReadOnly, }: DataTableBodyRowProps<T>): import("react/jsx-runtime").JSX.Element;
42
46
  export declare const DataTableBodyRow: typeof DataTableBodyRowInner;
43
47
  export {};
@@ -8,10 +8,6 @@ export type DTFocusState = {
8
8
  * The last focused cell when the table was blurred or { rowIndex: 0, columnIndex: 0 } if never focused
9
9
  */
10
10
  focusRestorePoint: CellPosition;
11
- /**
12
- * Whether the focus has been disrupted by a sub component
13
- */
14
- hasFocusBeenDisrupted: boolean;
15
11
  };
16
12
  export type DTFocusStateContextValue = {
17
13
  getFocusedCell: () => CellPosition | null;
@@ -46,12 +42,6 @@ export type DTFocusCellManuallyAction = {
46
42
  export type DTBlurAction = {
47
43
  type: "BLUR";
48
44
  };
49
- export type DTFocusSubComponentAction = {
50
- type: "FOCUS_SUB_COMPONENT";
51
- };
52
- export type DTFocusSubComponentBlurAction = {
53
- type: "BLUR_SUB_COMPONENT";
54
- };
55
- export type DTFocusAction = DTFocusCellAction | DTFocusTableAction | DTFocusMoveAction | DTFocusJumpAction | DTBlurAction | DTFocusSubComponentAction | DTFocusSubComponentBlurAction | DTFocusCellManuallyAction;
45
+ export type DTFocusAction = DTFocusCellAction | DTFocusTableAction | DTFocusMoveAction | DTFocusJumpAction | DTBlurAction | DTFocusCellManuallyAction;
56
46
  export declare const DTFocusStateContext: import('react').Context<DTFocusStateContextValue>;
57
47
  export declare const DTFocusDispatchContext: import('react').Context<import('react').Dispatch<DTFocusAction>>;
@@ -5,7 +5,5 @@ export declare function useDTFocusDispatchContext(): {
5
5
  moveFocus: (direction: "up" | "down" | "left" | "right") => void;
6
6
  jumpFocus: (direction: "up" | "down" | "left" | "right") => void;
7
7
  blur: () => void;
8
- focusSubComponent: () => void;
9
- blurSubComponent: () => void;
10
8
  dispatch: import('react').Dispatch<import('./DTFocusContext').DTFocusAction>;
11
9
  };
@@ -0,0 +1,13 @@
1
+ import { RefObject } from 'react';
2
+ export type DataTableSurfaceRegistration = {
3
+ id: string;
4
+ close: (options?: {
5
+ restoreFocus?: boolean;
6
+ }) => void;
7
+ };
8
+ export type DataTableSurfaceCoordinator = {
9
+ requestOpen: (registration: DataTableSurfaceRegistration) => void;
10
+ clear: (id: string) => void;
11
+ intersectionBoundaryRef?: RefObject<HTMLElement | null>;
12
+ };
13
+ export declare const DataTableSurfaceCoordinatorContext: import('react').Context<DataTableSurfaceCoordinator | null>;
@@ -0,0 +1,7 @@
1
+ import { RefObject } from 'react';
2
+ type DataTableSurfaceCoordinatorProviderProps = {
3
+ children: React.ReactNode;
4
+ intersectionBoundaryRef?: RefObject<HTMLElement | null>;
5
+ };
6
+ export declare function DataTableSurfaceCoordinatorProvider({ children, intersectionBoundaryRef, }: DataTableSurfaceCoordinatorProviderProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1 @@
1
+ export declare function useDataTableSurfaceCoordinator(): import('./DataTableSurfaceCoordinatorContext').DataTableSurfaceCoordinator | null;