@affino/datagrid-vue 0.3.2 → 0.3.4

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 (544) hide show
  1. package/README.md +170 -195
  2. package/dist/advanced/clipboard.d.ts +5 -0
  3. package/dist/advanced/clipboard.d.ts.map +1 -0
  4. package/dist/advanced/clipboard.js +4 -0
  5. package/dist/advanced/editing.d.ts +22 -0
  6. package/dist/advanced/editing.d.ts.map +1 -0
  7. package/dist/advanced/editing.js +20 -0
  8. package/dist/advanced/filtering.d.ts +16 -0
  9. package/dist/advanced/filtering.d.ts.map +1 -0
  10. package/dist/advanced/filtering.js +15 -0
  11. package/dist/advanced/history.d.ts +3 -0
  12. package/dist/advanced/history.d.ts.map +1 -0
  13. package/dist/advanced/history.js +2 -0
  14. package/dist/advanced/index.d.ts +8 -0
  15. package/dist/advanced/index.d.ts.map +1 -0
  16. package/dist/advanced/index.js +7 -0
  17. package/dist/advanced/layout.d.ts +16 -0
  18. package/dist/advanced/layout.d.ts.map +1 -0
  19. package/dist/advanced/layout.js +14 -0
  20. package/dist/advanced/pointer.d.ts +12 -0
  21. package/dist/advanced/pointer.d.ts.map +1 -0
  22. package/dist/advanced/pointer.js +11 -0
  23. package/dist/advanced/selection.d.ts +13 -0
  24. package/dist/advanced/selection.d.ts.map +1 -0
  25. package/dist/advanced/selection.js +12 -0
  26. package/dist/advanced.d.ts +2 -136
  27. package/dist/advanced.d.ts.map +1 -1
  28. package/dist/advanced.js +2 -206
  29. package/dist/app/advancedFilterPanel.types.d.ts +18 -0
  30. package/dist/app/advancedFilterPanel.types.d.ts.map +1 -0
  31. package/dist/app/columnLayoutPanel.types.d.ts +18 -0
  32. package/dist/app/columnLayoutPanel.types.d.ts.map +1 -0
  33. package/dist/app/dataGridRowHeightMetrics.d.ts +19 -0
  34. package/dist/app/dataGridRowHeightMetrics.d.ts.map +1 -0
  35. package/dist/app/dataGridRowHeightMetrics.js +119 -0
  36. package/dist/app/index.d.ts +24 -0
  37. package/dist/app/index.d.ts.map +1 -0
  38. package/dist/app/index.js +21 -0
  39. package/dist/app/useDataGridAppActiveCellViewport.d.ts +19 -0
  40. package/dist/app/useDataGridAppActiveCellViewport.d.ts.map +1 -0
  41. package/dist/app/useDataGridAppActiveCellViewport.js +139 -0
  42. package/dist/app/useDataGridAppAdvancedFilterBuilder.d.ts +24 -0
  43. package/dist/app/useDataGridAppAdvancedFilterBuilder.d.ts.map +1 -0
  44. package/dist/app/useDataGridAppAdvancedFilterBuilder.js +139 -0
  45. package/dist/app/useDataGridAppCellSelection.d.ts +40 -0
  46. package/dist/app/useDataGridAppCellSelection.d.ts.map +1 -0
  47. package/dist/app/useDataGridAppCellSelection.js +290 -0
  48. package/dist/app/useDataGridAppClipboard.d.ts +49 -0
  49. package/dist/app/useDataGridAppClipboard.d.ts.map +1 -0
  50. package/dist/app/useDataGridAppClipboard.js +258 -0
  51. package/dist/app/useDataGridAppColumnLayoutPanel.d.ts +19 -0
  52. package/dist/app/useDataGridAppColumnLayoutPanel.d.ts.map +1 -0
  53. package/dist/app/useDataGridAppColumnLayoutPanel.js +75 -0
  54. package/dist/app/useDataGridAppControls.d.ts +88 -0
  55. package/dist/app/useDataGridAppControls.d.ts.map +1 -0
  56. package/dist/app/useDataGridAppControls.js +396 -0
  57. package/dist/app/useDataGridAppDiagnosticsPanel.d.ts +14 -0
  58. package/dist/app/useDataGridAppDiagnosticsPanel.d.ts.map +1 -0
  59. package/dist/app/useDataGridAppDiagnosticsPanel.js +23 -0
  60. package/dist/app/useDataGridAppFill.d.ts +33 -0
  61. package/dist/app/useDataGridAppFill.d.ts.map +1 -0
  62. package/dist/app/useDataGridAppFill.js +97 -0
  63. package/dist/app/useDataGridAppHeaderResize.d.ts +29 -0
  64. package/dist/app/useDataGridAppHeaderResize.d.ts.map +1 -0
  65. package/dist/app/useDataGridAppHeaderResize.js +57 -0
  66. package/dist/app/useDataGridAppInlineEditing.d.ts +47 -0
  67. package/dist/app/useDataGridAppInlineEditing.d.ts.map +1 -0
  68. package/dist/app/useDataGridAppInlineEditing.js +301 -0
  69. package/dist/app/useDataGridAppIntentHistory.d.ts +23 -0
  70. package/dist/app/useDataGridAppIntentHistory.d.ts.map +1 -0
  71. package/dist/app/useDataGridAppIntentHistory.js +37 -0
  72. package/dist/app/useDataGridAppInteractionController.d.ts +96 -0
  73. package/dist/app/useDataGridAppInteractionController.d.ts.map +1 -0
  74. package/dist/app/useDataGridAppInteractionController.js +1448 -0
  75. package/dist/app/useDataGridAppModeMeta.d.ts +11 -0
  76. package/dist/app/useDataGridAppModeMeta.d.ts.map +1 -0
  77. package/dist/app/useDataGridAppModeMeta.js +31 -0
  78. package/dist/app/useDataGridAppRowPresentation.d.ts +19 -0
  79. package/dist/app/useDataGridAppRowPresentation.d.ts.map +1 -0
  80. package/dist/app/useDataGridAppRowPresentation.js +106 -0
  81. package/dist/app/useDataGridAppRowSelection.d.ts +17 -0
  82. package/dist/app/useDataGridAppRowSelection.d.ts.map +1 -0
  83. package/dist/app/useDataGridAppRowSelection.js +85 -0
  84. package/dist/app/useDataGridAppRowSizing.d.ts +24 -0
  85. package/dist/app/useDataGridAppRowSizing.d.ts.map +1 -0
  86. package/dist/app/useDataGridAppRowSizing.js +215 -0
  87. package/dist/app/useDataGridAppRuntime.d.ts +32 -0
  88. package/dist/app/useDataGridAppRuntime.d.ts.map +1 -0
  89. package/dist/app/useDataGridAppRuntime.js +137 -0
  90. package/dist/app/useDataGridAppRuntimeSync.d.ts +21 -0
  91. package/dist/app/useDataGridAppRuntimeSync.d.ts.map +1 -0
  92. package/dist/app/useDataGridAppRuntimeSync.js +30 -0
  93. package/dist/app/useDataGridAppSelection.d.ts +24 -0
  94. package/dist/app/useDataGridAppSelection.d.ts.map +1 -0
  95. package/dist/app/useDataGridAppSelection.js +191 -0
  96. package/dist/app/useDataGridAppViewport.d.ts +57 -0
  97. package/dist/app/useDataGridAppViewport.d.ts.map +1 -0
  98. package/dist/app/useDataGridAppViewport.js +387 -0
  99. package/dist/app/useDataGridAppViewportLifecycle.d.ts +12 -0
  100. package/dist/app/useDataGridAppViewportLifecycle.d.ts.map +1 -0
  101. package/dist/app/useDataGridAppViewportLifecycle.js +33 -0
  102. package/dist/app/worker.d.ts +2 -0
  103. package/dist/app/worker.d.ts.map +1 -0
  104. package/dist/app/worker.js +1 -0
  105. package/dist/composables/dataGridFillBehavior.d.ts +2 -0
  106. package/dist/composables/dataGridFillBehavior.d.ts.map +1 -0
  107. package/dist/composables/dataGridFillBehavior.js +1 -0
  108. package/dist/composables/useAffinoGrid.d.ts +20 -0
  109. package/dist/composables/useAffinoGrid.d.ts.map +1 -0
  110. package/dist/composables/useAffinoGrid.js +17 -0
  111. package/dist/composables/useDataGridContext.d.ts +9 -0
  112. package/dist/composables/useDataGridContext.d.ts.map +1 -0
  113. package/dist/composables/useDataGridContext.js +12 -0
  114. package/dist/composables/useDataGridEngine.d.ts +18 -0
  115. package/dist/composables/useDataGridEngine.d.ts.map +1 -0
  116. package/dist/composables/useDataGridEngine.js +12 -0
  117. package/dist/composables/useDataGridEngineContext.d.ts +8 -0
  118. package/dist/composables/useDataGridEngineContext.d.ts.map +1 -0
  119. package/dist/composables/useDataGridEngineContext.js +15 -0
  120. package/dist/composables/useDataGridEventBridge.d.ts +27 -0
  121. package/dist/composables/useDataGridEventBridge.d.ts.map +1 -0
  122. package/dist/composables/useDataGridEventBridge.js +24 -0
  123. package/dist/composables/useDataGridManagedWheelScroll.d.ts +1 -1
  124. package/dist/composables/useDataGridManagedWheelScroll.d.ts.map +1 -1
  125. package/dist/composables/useDataGridManagedWheelScroll.js +1 -1
  126. package/dist/composables/useDataGridOverlayScrollState.d.ts +2 -2
  127. package/dist/composables/useDataGridRuntime.d.ts +74 -3
  128. package/dist/composables/useDataGridRuntime.d.ts.map +1 -1
  129. package/dist/composables/useDataGridRuntime.js +337 -21
  130. package/dist/composables/useDataGridTheme.d.ts +7 -0
  131. package/dist/composables/useDataGridTheme.d.ts.map +1 -0
  132. package/dist/composables/useDataGridTheme.js +10 -0
  133. package/dist/composables/useDataGridViewContext.d.ts +11 -0
  134. package/dist/composables/useDataGridViewContext.d.ts.map +1 -0
  135. package/dist/composables/useDataGridViewContext.js +12 -0
  136. package/dist/composables/useDataGridViewModel.d.ts +48 -0
  137. package/dist/composables/useDataGridViewModel.d.ts.map +1 -0
  138. package/dist/composables/useDataGridViewModel.js +40 -0
  139. package/dist/grid/createGrid.d.ts +3 -0
  140. package/dist/grid/createGrid.d.ts.map +1 -0
  141. package/dist/grid/createGrid.js +92 -0
  142. package/dist/grid/eventBus.d.ts +9 -0
  143. package/dist/grid/eventBus.d.ts.map +1 -0
  144. package/dist/grid/eventBus.js +39 -0
  145. package/dist/grid/types.d.ts +45 -0
  146. package/dist/grid/types.d.ts.map +1 -0
  147. package/dist/public.d.ts +12 -7
  148. package/dist/public.d.ts.map +1 -1
  149. package/dist/public.js +8 -5
  150. package/dist/worker.d.ts +3 -0
  151. package/dist/worker.d.ts.map +1 -0
  152. package/dist/worker.js +1 -0
  153. package/package.json +50 -15
  154. package/dist/adapters/adapterLifecycle.d.ts +0 -12
  155. package/dist/adapters/adapterLifecycle.d.ts.map +0 -1
  156. package/dist/adapters/clipboardAdapter.d.ts +0 -3
  157. package/dist/adapters/clipboardAdapter.d.ts.map +0 -1
  158. package/dist/adapters/clipboardAdapter.js +0 -38
  159. package/dist/adapters/columnPinNormalization.d.ts +0 -14
  160. package/dist/adapters/columnPinNormalization.d.ts.map +0 -1
  161. package/dist/adapters/columnPinNormalization.js +0 -55
  162. package/dist/adapters/hoverEnvironment.d.ts +0 -3
  163. package/dist/adapters/hoverEnvironment.d.ts.map +0 -1
  164. package/dist/adapters/hoverEnvironment.js +0 -24
  165. package/dist/adapters/selectionControllerAdapter.d.ts +0 -30
  166. package/dist/adapters/selectionControllerAdapter.d.ts.map +0 -1
  167. package/dist/adapters/selectionControllerAdapter.js +0 -77
  168. package/dist/adapters/selectionEnvironment.d.ts +0 -41
  169. package/dist/adapters/selectionEnvironment.d.ts.map +0 -1
  170. package/dist/adapters/selectionEnvironment.js +0 -188
  171. package/dist/adapters/selectionHeadlessAdapter.d.ts +0 -48
  172. package/dist/adapters/selectionHeadlessAdapter.d.ts.map +0 -1
  173. package/dist/adapters/selectionHeadlessAdapter.js +0 -160
  174. package/dist/adapters/sharedState.d.ts +0 -4
  175. package/dist/adapters/sharedState.d.ts.map +0 -1
  176. package/dist/adapters/sharedState.js +0 -27
  177. package/dist/adapters/viewportHostEnvironment.d.ts +0 -3
  178. package/dist/adapters/viewportHostEnvironment.d.ts.map +0 -1
  179. package/dist/adapters/viewportHostEnvironment.js +0 -46
  180. package/dist/cells/cellUtils.d.ts +0 -95
  181. package/dist/cells/cellUtils.d.ts.map +0 -1
  182. package/dist/cells/cellUtils.js +0 -20
  183. package/dist/cells/index.d.ts +0 -5
  184. package/dist/cells/index.d.ts.map +0 -1
  185. package/dist/cells/index.js +0 -4
  186. package/dist/cells/useCellEditing.d.ts +0 -42
  187. package/dist/cells/useCellEditing.d.ts.map +0 -1
  188. package/dist/cells/useCellEditing.js +0 -194
  189. package/dist/cells/useCellSelection.d.ts +0 -7
  190. package/dist/cells/useCellSelection.d.ts.map +0 -1
  191. package/dist/cells/useCellSelection.js +0 -48
  192. package/dist/cells/useCellStyle.d.ts +0 -22
  193. package/dist/cells/useCellStyle.d.ts.map +0 -1
  194. package/dist/cells/useCellStyle.js +0 -128
  195. package/dist/components/AffinoDataGridSimple.d.ts +0 -107
  196. package/dist/components/AffinoDataGridSimple.d.ts.map +0 -1
  197. package/dist/components/AffinoDataGridSimple.js +0 -349
  198. package/dist/components/DataGrid.d.ts +0 -57
  199. package/dist/components/DataGrid.d.ts.map +0 -1
  200. package/dist/components/DataGrid.js +0 -68
  201. package/dist/components/index.d.ts +0 -3
  202. package/dist/components/index.d.ts.map +0 -1
  203. package/dist/components/index.js +0 -2
  204. package/dist/components/overlayRenderer.d.ts +0 -36
  205. package/dist/components/overlayRenderer.d.ts.map +0 -1
  206. package/dist/components/overlayRenderer.js +0 -169
  207. package/dist/components/ui/VirtualList.types.d.ts +0 -5
  208. package/dist/components/ui/VirtualList.types.d.ts.map +0 -1
  209. package/dist/composables/internal/useAffinoDataGrid/index.d.ts +0 -16
  210. package/dist/composables/internal/useAffinoDataGrid/index.d.ts.map +0 -1
  211. package/dist/composables/internal/useAffinoDataGrid/index.js +0 -15
  212. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridActionRunner.d.ts +0 -34
  213. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridActionRunner.d.ts.map +0 -1
  214. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridActionRunner.js +0 -181
  215. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridBaseBindings.d.ts +0 -99
  216. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridBaseBindings.d.ts.map +0 -1
  217. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridBaseBindings.js +0 -316
  218. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridBindingSuite.d.ts +0 -40
  219. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridBindingSuite.d.ts.map +0 -1
  220. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridBindingSuite.js +0 -68
  221. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridClipboardFeature.d.ts +0 -37
  222. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridClipboardFeature.d.ts.map +0 -1
  223. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridClipboardFeature.js +0 -148
  224. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridContextMenuFeature.d.ts +0 -92
  225. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridContextMenuFeature.d.ts.map +0 -1
  226. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridContextMenuFeature.js +0 -91
  227. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridEditingFeature.d.ts +0 -81
  228. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridEditingFeature.d.ts.map +0 -1
  229. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridEditingFeature.js +0 -144
  230. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridEventHub.d.ts +0 -16
  231. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridEventHub.d.ts.map +0 -1
  232. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridEventHub.js +0 -105
  233. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFeatureNormalization.d.ts +0 -74
  234. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFeatureNormalization.d.ts.map +0 -1
  235. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFeatureNormalization.js +0 -123
  236. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFeatureSuite.d.ts +0 -32
  237. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFeatureSuite.d.ts.map +0 -1
  238. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFeatureSuite.js +0 -196
  239. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFilteringFeature.d.ts +0 -25
  240. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFilteringFeature.d.ts.map +0 -1
  241. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFilteringFeature.js +0 -51
  242. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridHeaderFilters.d.ts +0 -65
  243. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridHeaderFilters.d.ts.map +0 -1
  244. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridHeaderFilters.js +0 -251
  245. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridIdentity.d.ts +0 -5
  246. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridIdentity.d.ts.map +0 -1
  247. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridIdentity.js +0 -30
  248. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridKeyboardDispatcher.d.ts +0 -22
  249. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridKeyboardDispatcher.d.ts.map +0 -1
  250. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridKeyboardDispatcher.js +0 -74
  251. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridLayoutProfiles.d.ts +0 -31
  252. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridLayoutProfiles.d.ts.map +0 -1
  253. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridLayoutProfiles.js +0 -64
  254. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridPointerLifecycle.d.ts +0 -9
  255. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridPointerLifecycle.d.ts.map +0 -1
  256. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridPointerLifecycle.js +0 -15
  257. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRangeClipboard.d.ts +0 -61
  258. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRangeClipboard.d.ts.map +0 -1
  259. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRangeClipboard.js +0 -470
  260. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridResultAssembly.d.ts +0 -23
  261. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridResultAssembly.d.ts.map +0 -1
  262. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridResultAssembly.js +0 -131
  263. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRowHeightFeature.d.ts +0 -30
  264. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRowHeightFeature.d.ts.map +0 -1
  265. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRowHeightFeature.js +0 -82
  266. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRuntimeBootstrap.d.ts +0 -20
  267. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRuntimeBootstrap.d.ts.map +0 -1
  268. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRuntimeBootstrap.js +0 -66
  269. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSelectionEngine.d.ts +0 -56
  270. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSelectionEngine.d.ts.map +0 -1
  271. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSelectionEngine.js +0 -365
  272. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSelectionFeature.d.ts +0 -38
  273. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSelectionFeature.d.ts.map +0 -1
  274. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSelectionFeature.js +0 -170
  275. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSortActionSuite.d.ts +0 -30
  276. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSortActionSuite.d.ts.map +0 -1
  277. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSortActionSuite.js +0 -36
  278. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSortingFeature.d.ts +0 -15
  279. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSortingFeature.d.ts.map +0 -1
  280. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSortingFeature.js +0 -42
  281. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridStatusBar.d.ts +0 -32
  282. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridStatusBar.d.ts.map +0 -1
  283. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridStatusBar.js +0 -73
  284. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSummaryFeature.d.ts +0 -27
  285. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSummaryFeature.d.ts.map +0 -1
  286. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSummaryFeature.js +0 -39
  287. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridTreeFeature.d.ts +0 -35
  288. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridTreeFeature.d.ts.map +0 -1
  289. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridTreeFeature.js +0 -220
  290. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridVisibilityFeature.d.ts +0 -28
  291. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridVisibilityFeature.d.ts.map +0 -1
  292. package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridVisibilityFeature.js +0 -59
  293. package/dist/composables/selection/selectionControllerStateScheduler.d.ts +0 -13
  294. package/dist/composables/selection/selectionControllerStateScheduler.d.ts.map +0 -1
  295. package/dist/composables/selection/selectionControllerStateScheduler.js +0 -48
  296. package/dist/composables/selection/selectionGeometry.d.ts +0 -47
  297. package/dist/composables/selection/selectionGeometry.d.ts.map +0 -1
  298. package/dist/composables/selection/selectionGeometry.js +0 -84
  299. package/dist/composables/selection/selectionInput.d.ts +0 -6
  300. package/dist/composables/selection/selectionInput.d.ts.map +0 -1
  301. package/dist/composables/selection/selectionInput.js +0 -6
  302. package/dist/composables/selection/selectionOverlayUpdateScheduler.d.ts +0 -21
  303. package/dist/composables/selection/selectionOverlayUpdateScheduler.d.ts.map +0 -1
  304. package/dist/composables/selection/selectionOverlayUpdateScheduler.js +0 -65
  305. package/dist/composables/selection/selectionStateSync.d.ts +0 -55
  306. package/dist/composables/selection/selectionStateSync.d.ts.map +0 -1
  307. package/dist/composables/selection/selectionStateSync.js +0 -30
  308. package/dist/composables/useAffinoDataGrid.d.ts +0 -4
  309. package/dist/composables/useAffinoDataGrid.d.ts.map +0 -1
  310. package/dist/composables/useAffinoDataGrid.js +0 -1556
  311. package/dist/composables/useAffinoDataGrid.types.d.ts +0 -706
  312. package/dist/composables/useAffinoDataGrid.types.d.ts.map +0 -1
  313. package/dist/composables/useAffinoDataGridClipboardFeature.d.ts +0 -37
  314. package/dist/composables/useAffinoDataGridClipboardFeature.d.ts.map +0 -1
  315. package/dist/composables/useAffinoDataGridClipboardFeature.js +0 -135
  316. package/dist/composables/useAffinoDataGridEditingFeature.d.ts +0 -50
  317. package/dist/composables/useAffinoDataGridEditingFeature.d.ts.map +0 -1
  318. package/dist/composables/useAffinoDataGridEditingFeature.js +0 -94
  319. package/dist/composables/useAffinoDataGridFilteringFeature.d.ts +0 -25
  320. package/dist/composables/useAffinoDataGridFilteringFeature.d.ts.map +0 -1
  321. package/dist/composables/useAffinoDataGridFilteringFeature.js +0 -51
  322. package/dist/composables/useAffinoDataGridMinimal.d.ts +0 -3
  323. package/dist/composables/useAffinoDataGridMinimal.d.ts.map +0 -1
  324. package/dist/composables/useAffinoDataGridMinimal.js +0 -6
  325. package/dist/composables/useAffinoDataGridSelectionFeature.d.ts +0 -38
  326. package/dist/composables/useAffinoDataGridSelectionFeature.d.ts.map +0 -1
  327. package/dist/composables/useAffinoDataGridSelectionFeature.js +0 -160
  328. package/dist/composables/useAffinoDataGridSummaryFeature.d.ts +0 -27
  329. package/dist/composables/useAffinoDataGridSummaryFeature.d.ts.map +0 -1
  330. package/dist/composables/useAffinoDataGridSummaryFeature.js +0 -39
  331. package/dist/composables/useAffinoDataGridTreeFeature.d.ts +0 -31
  332. package/dist/composables/useAffinoDataGridTreeFeature.d.ts.map +0 -1
  333. package/dist/composables/useAffinoDataGridTreeFeature.js +0 -183
  334. package/dist/composables/useAffinoDataGridUi.d.ts +0 -36
  335. package/dist/composables/useAffinoDataGridUi.d.ts.map +0 -1
  336. package/dist/composables/useAffinoDataGridUi.js +0 -81
  337. package/dist/composables/useAffinoDataGridVisibilityFeature.d.ts +0 -28
  338. package/dist/composables/useAffinoDataGridVisibilityFeature.d.ts.map +0 -1
  339. package/dist/composables/useAffinoDataGridVisibilityFeature.js +0 -59
  340. package/dist/composables/useAutoResizeColumn.d.ts +0 -14
  341. package/dist/composables/useAutoResizeColumn.d.ts.map +0 -1
  342. package/dist/composables/useAutoResizeColumn.js +0 -64
  343. package/dist/composables/useAxisVirtualizer.d.ts +0 -25
  344. package/dist/composables/useAxisVirtualizer.d.ts.map +0 -1
  345. package/dist/composables/useAxisVirtualizer.js +0 -41
  346. package/dist/composables/useColumnGroups.d.ts +0 -15
  347. package/dist/composables/useColumnGroups.d.ts.map +0 -1
  348. package/dist/composables/useColumnGroups.js +0 -35
  349. package/dist/composables/useColumnHeaderInteractions.d.ts +0 -38
  350. package/dist/composables/useColumnHeaderInteractions.d.ts.map +0 -1
  351. package/dist/composables/useColumnHeaderInteractions.js +0 -471
  352. package/dist/composables/useColumnVisibility.d.ts +0 -31
  353. package/dist/composables/useColumnVisibility.d.ts.map +0 -1
  354. package/dist/composables/useColumnVisibility.js +0 -124
  355. package/dist/composables/useDomSampling.d.ts +0 -17
  356. package/dist/composables/useDomSampling.d.ts.map +0 -1
  357. package/dist/composables/useDomSampling.js +0 -66
  358. package/dist/composables/useHorizontalViewport.d.ts +0 -35
  359. package/dist/composables/useHorizontalViewport.d.ts.map +0 -1
  360. package/dist/composables/useHorizontalViewport.js +0 -167
  361. package/dist/composables/useSelectableRows.d.ts +0 -24
  362. package/dist/composables/useSelectableRows.d.ts.map +0 -1
  363. package/dist/composables/useSelectableRows.js +0 -108
  364. package/dist/composables/useSelectionOverlayAdapter.d.ts +0 -34
  365. package/dist/composables/useSelectionOverlayAdapter.d.ts.map +0 -1
  366. package/dist/composables/useSelectionOverlayAdapter.js +0 -159
  367. package/dist/composables/useServerRowModel.d.ts +0 -30
  368. package/dist/composables/useServerRowModel.d.ts.map +0 -1
  369. package/dist/composables/useServerRowModel.js +0 -44
  370. package/dist/composables/useTableAdvancedFilterModal.d.ts +0 -30
  371. package/dist/composables/useTableAdvancedFilterModal.d.ts.map +0 -1
  372. package/dist/composables/useTableAdvancedFilterModal.js +0 -78
  373. package/dist/composables/useTableAutoColumnScheduler.d.ts +0 -26
  374. package/dist/composables/useTableAutoColumnScheduler.d.ts.map +0 -1
  375. package/dist/composables/useTableAutoColumnScheduler.js +0 -59
  376. package/dist/composables/useTableAutoScroll.d.ts +0 -18
  377. package/dist/composables/useTableAutoScroll.d.ts.map +0 -1
  378. package/dist/composables/useTableAutoScroll.js +0 -167
  379. package/dist/composables/useTableClipboardBridge.d.ts +0 -45
  380. package/dist/composables/useTableClipboardBridge.d.ts.map +0 -1
  381. package/dist/composables/useTableClipboardBridge.js +0 -185
  382. package/dist/composables/useTableColumnBindings.d.ts +0 -25
  383. package/dist/composables/useTableColumnBindings.d.ts.map +0 -1
  384. package/dist/composables/useTableColumnBindings.js +0 -72
  385. package/dist/composables/useTableColumnPinning.d.ts +0 -17
  386. package/dist/composables/useTableColumnPinning.d.ts.map +0 -1
  387. package/dist/composables/useTableColumnPinning.js +0 -49
  388. package/dist/composables/useTableDataModel.d.ts +0 -46
  389. package/dist/composables/useTableDataModel.d.ts.map +0 -1
  390. package/dist/composables/useTableDataModel.js +0 -411
  391. package/dist/composables/useTableEditing.d.ts +0 -67
  392. package/dist/composables/useTableEditing.d.ts.map +0 -1
  393. package/dist/composables/useTableEditing.js +0 -321
  394. package/dist/composables/useTableFilters.d.ts +0 -55
  395. package/dist/composables/useTableFilters.d.ts.map +0 -1
  396. package/dist/composables/useTableFilters.js +0 -723
  397. package/dist/composables/useTableFindReplaceBridge.d.ts +0 -27
  398. package/dist/composables/useTableFindReplaceBridge.d.ts.map +0 -1
  399. package/dist/composables/useTableFindReplaceBridge.js +0 -84
  400. package/dist/composables/useTableFocusManagement.d.ts +0 -35
  401. package/dist/composables/useTableFocusManagement.d.ts.map +0 -1
  402. package/dist/composables/useTableFocusManagement.js +0 -106
  403. package/dist/composables/useTableGridLayout.d.ts +0 -17
  404. package/dist/composables/useTableGridLayout.d.ts.map +0 -1
  405. package/dist/composables/useTableGridLayout.js +0 -47
  406. package/dist/composables/useTableGrouping.d.ts +0 -54
  407. package/dist/composables/useTableGrouping.d.ts.map +0 -1
  408. package/dist/composables/useTableGrouping.js +0 -255
  409. package/dist/composables/useTableHeaderLayout.d.ts +0 -33
  410. package/dist/composables/useTableHeaderLayout.d.ts.map +0 -1
  411. package/dist/composables/useTableHeaderLayout.js +0 -84
  412. package/dist/composables/useTableHistory.d.ts +0 -16
  413. package/dist/composables/useTableHistory.d.ts.map +0 -1
  414. package/dist/composables/useTableHistory.js +0 -37
  415. package/dist/composables/useTableHoverOverlay.d.ts +0 -36
  416. package/dist/composables/useTableHoverOverlay.d.ts.map +0 -1
  417. package/dist/composables/useTableHoverOverlay.js +0 -323
  418. package/dist/composables/useTableImperativeRendering.d.ts +0 -44
  419. package/dist/composables/useTableImperativeRendering.d.ts.map +0 -1
  420. package/dist/composables/useTableImperativeRendering.js +0 -82
  421. package/dist/composables/useTableLocalColumns.d.ts +0 -23
  422. package/dist/composables/useTableLocalColumns.d.ts.map +0 -1
  423. package/dist/composables/useTableLocalColumns.js +0 -40
  424. package/dist/composables/useTableOverlayController.d.ts +0 -14
  425. package/dist/composables/useTableOverlayController.d.ts.map +0 -1
  426. package/dist/composables/useTableOverlayController.js +0 -97
  427. package/dist/composables/useTableOverlayScrollState.d.ts +0 -17
  428. package/dist/composables/useTableOverlayScrollState.d.ts.map +0 -1
  429. package/dist/composables/useTableOverlayScrollState.js +0 -26
  430. package/dist/composables/useTablePanels.d.ts +0 -17
  431. package/dist/composables/useTablePanels.d.ts.map +0 -1
  432. package/dist/composables/useTablePanels.js +0 -60
  433. package/dist/composables/useTableRecalcWatcher.d.ts +0 -24
  434. package/dist/composables/useTableRecalcWatcher.d.ts.map +0 -1
  435. package/dist/composables/useTableRecalcWatcher.js +0 -30
  436. package/dist/composables/useTableRuntime.d.ts +0 -18
  437. package/dist/composables/useTableRuntime.d.ts.map +0 -1
  438. package/dist/composables/useTableRuntime.js +0 -43
  439. package/dist/composables/useTableSearchHighlights.d.ts +0 -18
  440. package/dist/composables/useTableSearchHighlights.d.ts.map +0 -1
  441. package/dist/composables/useTableSearchHighlights.js +0 -45
  442. package/dist/composables/useTableSelection.d.ts +0 -204
  443. package/dist/composables/useTableSelection.d.ts.map +0 -1
  444. package/dist/composables/useTableSelection.js +0 -3080
  445. package/dist/composables/useTableServerSync.d.ts +0 -35
  446. package/dist/composables/useTableServerSync.d.ts.map +0 -1
  447. package/dist/composables/useTableServerSync.js +0 -130
  448. package/dist/composables/useTableSorting.d.ts +0 -29
  449. package/dist/composables/useTableSorting.d.ts.map +0 -1
  450. package/dist/composables/useTableSorting.js +0 -84
  451. package/dist/composables/useTableStatusMetrics.d.ts +0 -22
  452. package/dist/composables/useTableStatusMetrics.d.ts.map +0 -1
  453. package/dist/composables/useTableStatusMetrics.js +0 -25
  454. package/dist/composables/useTableStickyColumns.d.ts +0 -39
  455. package/dist/composables/useTableStickyColumns.d.ts.map +0 -1
  456. package/dist/composables/useTableStickyColumns.js +0 -244
  457. package/dist/composables/useTableTheme.d.ts +0 -30
  458. package/dist/composables/useTableTheme.d.ts.map +0 -1
  459. package/dist/composables/useTableTheme.js +0 -207
  460. package/dist/composables/useTableViewport.d.ts +0 -103
  461. package/dist/composables/useTableViewport.d.ts.map +0 -1
  462. package/dist/composables/useTableViewport.js +0 -298
  463. package/dist/composables/useTableViewportMetrics.d.ts +0 -12
  464. package/dist/composables/useTableViewportMetrics.d.ts.map +0 -1
  465. package/dist/composables/useTableViewportMetrics.js +0 -179
  466. package/dist/composables/useTableZoom.d.ts +0 -16
  467. package/dist/composables/useTableZoom.d.ts.map +0 -1
  468. package/dist/composables/useTableZoom.js +0 -68
  469. package/dist/composables/useVerticalViewport.d.ts +0 -34
  470. package/dist/composables/useVerticalViewport.d.ts.map +0 -1
  471. package/dist/composables/useVerticalViewport.js +0 -210
  472. package/dist/composables/useVirtualDebug.d.ts +0 -169
  473. package/dist/composables/useVirtualDebug.d.ts.map +0 -1
  474. package/dist/composables/useVirtualDebug.js +0 -206
  475. package/dist/composables/useVirtualList.d.ts +0 -25
  476. package/dist/composables/useVirtualList.d.ts.map +0 -1
  477. package/dist/composables/useVirtualList.js +0 -54
  478. package/dist/context.d.ts +0 -463
  479. package/dist/context.d.ts.map +0 -1
  480. package/dist/context.js +0 -5
  481. package/dist/core/api/useUiTableApi.d.ts +0 -51
  482. package/dist/core/api/useUiTableApi.d.ts.map +0 -1
  483. package/dist/core/api/useUiTableApi.js +0 -103
  484. package/dist/core/columns/columnGroup.d.ts +0 -2
  485. package/dist/core/columns/columnGroup.d.ts.map +0 -1
  486. package/dist/core/columns/columnGroup.js +0 -1
  487. package/dist/core/columns/measurement.d.ts +0 -3
  488. package/dist/core/columns/measurement.d.ts.map +0 -1
  489. package/dist/core/columns/measurement.js +0 -132
  490. package/dist/core/virtualization/types.d.ts +0 -8
  491. package/dist/core/virtualization/types.d.ts.map +0 -1
  492. package/dist/core/virtualization/types.js +0 -4
  493. package/dist/core/virtualization/viewportConfig.d.ts +0 -6
  494. package/dist/core/virtualization/viewportConfig.d.ts.map +0 -1
  495. package/dist/core/virtualization/viewportConfig.js +0 -20
  496. package/dist/imperative/createDomControllerSuite.d.ts +0 -3
  497. package/dist/imperative/createDomControllerSuite.d.ts.map +0 -1
  498. package/dist/imperative/createDomControllerSuite.js +0 -24
  499. package/dist/imperative/selectionDomAdapter.d.ts +0 -54
  500. package/dist/imperative/selectionDomAdapter.d.ts.map +0 -1
  501. package/dist/imperative/selectionDomAdapter.js +0 -466
  502. package/dist/imperative/useImperativeTableAdapter.d.ts +0 -12
  503. package/dist/imperative/useImperativeTableAdapter.d.ts.map +0 -1
  504. package/dist/imperative/useImperativeTableAdapter.js +0 -80
  505. package/dist/piniaTableSettingsAdapter.d.ts +0 -5
  506. package/dist/piniaTableSettingsAdapter.d.ts.map +0 -1
  507. package/dist/piniaTableSettingsAdapter.js +0 -45
  508. package/dist/src/index.d.ts +0 -2
  509. package/dist/src/index.d.ts.map +0 -1
  510. package/dist/src/index.js +0 -1
  511. package/dist/src/piniaTableSettingsAdapter.d.ts +0 -4
  512. package/dist/src/piniaTableSettingsAdapter.d.ts.map +0 -1
  513. package/dist/src/piniaTableSettingsAdapter.js +0 -37
  514. package/dist/src/public.d.ts +0 -7
  515. package/dist/src/public.d.ts.map +0 -1
  516. package/dist/src/public.js +0 -6
  517. package/dist/src/tableSettingsStore.d.ts +0 -13
  518. package/dist/src/tableSettingsStore.d.ts.map +0 -1
  519. package/dist/src/tableSettingsStore.js +0 -134
  520. package/dist/stores/useFindReplaceStore.d.ts +0 -52
  521. package/dist/stores/useFindReplaceStore.d.ts.map +0 -1
  522. package/dist/stores/useFindReplaceStore.js +0 -237
  523. package/dist/tableSettingsStore.d.ts +0 -27
  524. package/dist/tableSettingsStore.d.ts.map +0 -1
  525. package/dist/tableSettingsStore.js +0 -154
  526. package/dist/tsconfig.public.tsbuildinfo +0 -1
  527. package/dist/types/overlay.d.ts +0 -26
  528. package/dist/types/overlay.d.ts.map +0 -1
  529. package/dist/types/overlay.js +0 -1
  530. package/dist/types/piniaPersist.d.ts +0 -11
  531. package/dist/types/piniaPersist.d.ts.map +0 -1
  532. package/dist/types/piniaPersist.js +0 -2
  533. package/dist/utils/columnStorage.d.ts +0 -9
  534. package/dist/utils/columnStorage.d.ts.map +0 -1
  535. package/dist/utils/columnStorage.js +0 -136
  536. package/dist/utils/createWheelAccumulator.d.ts +0 -22
  537. package/dist/utils/createWheelAccumulator.d.ts.map +0 -1
  538. package/dist/utils/createWheelAccumulator.js +0 -70
  539. package/dist/utils/sortStateAdapter.d.ts +0 -5
  540. package/dist/utils/sortStateAdapter.d.ts.map +0 -1
  541. package/dist/utils/sortStateAdapter.js +0 -24
  542. /package/dist/{adapters/adapterLifecycle.js → app/advancedFilterPanel.types.js} +0 -0
  543. /package/dist/{components/ui/VirtualList.types.js → app/columnLayoutPanel.types.js} +0 -0
  544. /package/dist/{composables/useAffinoDataGrid.types.js → grid/types.js} +0 -0
@@ -0,0 +1,11 @@
1
+ import { type Ref } from "vue";
2
+ import type { DataGridAppMode } from "./index";
3
+ export interface UseDataGridAppModeMetaOptions {
4
+ mode: Ref<DataGridAppMode>;
5
+ }
6
+ export interface UseDataGridAppModeMetaResult {
7
+ modeBadge: Ref<string>;
8
+ modeHint: Ref<string>;
9
+ }
10
+ export declare function useDataGridAppModeMeta(options: UseDataGridAppModeMetaOptions): UseDataGridAppModeMetaResult;
11
+ //# sourceMappingURL=useDataGridAppModeMeta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDataGridAppModeMeta.d.ts","sourceRoot":"","sources":["../../src/app/useDataGridAppModeMeta.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AACxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,GAAG,CAAC,eAAe,CAAC,CAAA;CAC3B;AAED,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACtB,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CACtB;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,6BAA6B,GACrC,4BAA4B,CA+B9B"}
@@ -0,0 +1,31 @@
1
+ import { computed } from "vue";
2
+ export function useDataGridAppModeMeta(options) {
3
+ const modeBadge = computed(() => {
4
+ if (options.mode.value === "tree") {
5
+ return "Tree";
6
+ }
7
+ if (options.mode.value === "pivot") {
8
+ return "Pivot";
9
+ }
10
+ if (options.mode.value === "worker") {
11
+ return "Worker";
12
+ }
13
+ return "Base";
14
+ });
15
+ const modeHint = computed(() => {
16
+ if (options.mode.value === "tree") {
17
+ return "Tree mode: grouped path rows are highlighted.";
18
+ }
19
+ if (options.mode.value === "pivot") {
20
+ return "Pivot mode: aggregate/group rows are highlighted.";
21
+ }
22
+ if (options.mode.value === "worker") {
23
+ return "Worker mode: row-model updates are served through worker host.";
24
+ }
25
+ return "Base mode: flat client row model.";
26
+ });
27
+ return {
28
+ modeBadge,
29
+ modeHint,
30
+ };
31
+ }
@@ -0,0 +1,19 @@
1
+ import type { Ref } from "vue";
2
+ import { type DataGridRowNode } from "@affino/datagrid-core";
3
+ import type { UseDataGridRuntimeResult } from "../composables/useDataGridRuntime";
4
+ import type { DataGridAppMode } from "./index";
5
+ export interface UseDataGridAppRowPresentationOptions<TRow extends Record<string, unknown>> {
6
+ mode: Ref<DataGridAppMode>;
7
+ runtime: Pick<UseDataGridRuntimeResult<TRow>, "api" | "columnSnapshot">;
8
+ viewportRowStart: Ref<number>;
9
+ firstColumnKey: Ref<string>;
10
+ }
11
+ export interface UseDataGridAppRowPresentationResult<TRow extends Record<string, unknown>> {
12
+ rowIndexLabel: (row: DataGridRowNode<TRow>, rowOffset: number) => string;
13
+ readCell: (row: DataGridRowNode<TRow>, key: string) => string;
14
+ readDisplayCell: (row: DataGridRowNode<TRow>, key: string) => string;
15
+ rowClass: (row: DataGridRowNode<TRow>) => string;
16
+ toggleGroupRow: (row: DataGridRowNode<TRow>) => void;
17
+ }
18
+ export declare function useDataGridAppRowPresentation<TRow extends Record<string, unknown>>(options: UseDataGridAppRowPresentationOptions<TRow>): UseDataGridAppRowPresentationResult<TRow>;
19
+ //# sourceMappingURL=useDataGridAppRowPresentation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDataGridAppRowPresentation.d.ts","sourceRoot":"","sources":["../../src/app/useDataGridAppRowPresentation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAC9B,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAA;AACjF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,MAAM,WAAW,oCAAoC,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACxF,IAAI,EAAE,GAAG,CAAC,eAAe,CAAC,CAAA;IAC1B,OAAO,EAAE,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,gBAAgB,CAAC,CAAA;IACvE,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC7B,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAC5B;AAED,MAAM,WAAW,mCAAmC,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACvF,aAAa,EAAE,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,MAAM,KAAK,MAAM,CAAA;IACxE,QAAQ,EAAE,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;IAC7D,eAAe,EAAE,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;IACpE,QAAQ,EAAE,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,KAAK,MAAM,CAAA;IAChD,cAAc,EAAE,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,KAAK,IAAI,CAAA;CACrD;AAED,wBAAgB,6BAA6B,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChF,OAAO,EAAE,oCAAoC,CAAC,IAAI,CAAC,GAClD,mCAAmC,CAAC,IAAI,CAAC,CA8G3C"}
@@ -0,0 +1,106 @@
1
+ import { buildDataGridCellRenderModel, } from "@affino/datagrid-core";
2
+ export function useDataGridAppRowPresentation(options) {
3
+ const rowIndexLabel = (row, rowOffset) => {
4
+ if (row.kind === "group") {
5
+ return "";
6
+ }
7
+ const sourceId = row.data.id;
8
+ if (typeof sourceId === "number" && Number.isFinite(sourceId)) {
9
+ return String(sourceId);
10
+ }
11
+ return String(options.viewportRowStart.value + rowOffset + 1);
12
+ };
13
+ const resolveColumnDef = (key) => {
14
+ return options.runtime.columnSnapshot.value.byKey[key]?.column;
15
+ };
16
+ const readCell = (row, key) => {
17
+ if (row.kind === "group") {
18
+ const level = Math.max(0, row.groupMeta?.level ?? 0);
19
+ const indent = "· ".repeat(level);
20
+ const caret = row.state.expanded ? "▾" : "▸";
21
+ const isGroupLabelColumn = options.mode.value === "tree"
22
+ ? key === "name"
23
+ : key === options.firstColumnKey.value;
24
+ if (isGroupLabelColumn) {
25
+ return `${indent}${caret} ${String(row.groupMeta?.groupField ?? "group")}: ${String(row.groupMeta?.groupValue ?? row.rowId)} (${row.groupMeta?.childrenCount ?? 0})`;
26
+ }
27
+ if (options.mode.value === "tree") {
28
+ return "";
29
+ }
30
+ const groupValue = row.data[key]
31
+ ?? row.groupMeta?.aggregates?.[key];
32
+ return groupValue == null ? "" : String(groupValue);
33
+ }
34
+ const value = row.data[key];
35
+ return value == null ? "" : String(value);
36
+ };
37
+ const readDisplayCell = (row, key) => {
38
+ if (row.kind === "group") {
39
+ const level = Math.max(0, row.groupMeta?.level ?? 0);
40
+ const indent = "· ".repeat(level);
41
+ const caret = row.state.expanded ? "▾" : "▸";
42
+ const isGroupLabelColumn = options.mode.value === "tree"
43
+ ? key === "name"
44
+ : key === options.firstColumnKey.value;
45
+ if (isGroupLabelColumn) {
46
+ return `${indent}${caret} ${String(row.groupMeta?.groupField ?? "group")}: ${String(row.groupMeta?.groupValue ?? row.rowId)} (${row.groupMeta?.childrenCount ?? 0})`;
47
+ }
48
+ if (options.mode.value === "tree") {
49
+ return "";
50
+ }
51
+ const groupValue = row.data[key]
52
+ ?? row.groupMeta?.aggregates?.[key];
53
+ const column = resolveColumnDef(key);
54
+ if (!column) {
55
+ return groupValue == null ? "" : String(groupValue);
56
+ }
57
+ return buildDataGridCellRenderModel({
58
+ column,
59
+ value: groupValue,
60
+ }).displayValue;
61
+ }
62
+ const value = row.data[key];
63
+ const column = resolveColumnDef(key);
64
+ if (!column) {
65
+ return value == null ? "" : String(value);
66
+ }
67
+ return buildDataGridCellRenderModel({
68
+ column,
69
+ row: row.data,
70
+ value,
71
+ }).displayValue;
72
+ };
73
+ const rowClass = (row) => {
74
+ if (options.mode.value === "pivot") {
75
+ return row.kind === "group" ? "row--group row--pivot" : "row--pivot";
76
+ }
77
+ if (row.kind !== "group") {
78
+ return "";
79
+ }
80
+ if (options.mode.value === "tree") {
81
+ return "row--group row--tree";
82
+ }
83
+ return "row--group";
84
+ };
85
+ const toggleGroupRow = (row) => {
86
+ if (row.kind !== "group") {
87
+ return;
88
+ }
89
+ const groupKey = row.groupMeta?.groupKey;
90
+ if (!groupKey) {
91
+ return;
92
+ }
93
+ if (row.state.expanded) {
94
+ options.runtime.api.rows.collapseGroup(groupKey);
95
+ return;
96
+ }
97
+ options.runtime.api.rows.expandGroup(groupKey);
98
+ };
99
+ return {
100
+ rowIndexLabel,
101
+ readCell,
102
+ readDisplayCell,
103
+ rowClass,
104
+ toggleGroupRow,
105
+ };
106
+ }
@@ -0,0 +1,17 @@
1
+ import { type Ref } from "vue";
2
+ import type { DataGridRowId, DataGridRowSelectionSnapshot } from "@affino/datagrid-core";
3
+ import type { UseDataGridRuntimeOptions, UseDataGridRuntimeResult } from "../composables/useDataGridRuntime";
4
+ export interface UseDataGridAppRowSelectionOptions<TRow> {
5
+ resolveRuntime?: () => Pick<UseDataGridRuntimeResult<TRow>, "api"> | null;
6
+ }
7
+ export interface UseDataGridAppRowSelectionResult<TRow> {
8
+ rowSelectionSnapshot: Ref<DataGridRowSelectionSnapshot | null>;
9
+ focusedRow: Ref<DataGridRowId | null>;
10
+ selectedRows: Ref<Set<DataGridRowId>>;
11
+ selectionService: NonNullable<NonNullable<UseDataGridRuntimeOptions<TRow>["services"]>["selection"]>;
12
+ runtimeServices: Pick<NonNullable<UseDataGridRuntimeOptions<TRow>["services"]>, "selection">;
13
+ syncRowSelectionSnapshotFromRuntime: () => void;
14
+ reconcileRowSelectionFromRuntime: () => void;
15
+ }
16
+ export declare function useDataGridAppRowSelection<TRow>(options: UseDataGridAppRowSelectionOptions<TRow>): UseDataGridAppRowSelectionResult<TRow>;
17
+ //# sourceMappingURL=useDataGridAppRowSelection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDataGridAppRowSelection.d.ts","sourceRoot":"","sources":["../../src/app/useDataGridAppRowSelection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AACnC,OAAO,KAAK,EAAE,aAAa,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAA;AAWxF,OAAO,KAAK,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAA;AAE5G,MAAM,WAAW,iCAAiC,CAAC,IAAI;IACrD,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,GAAG,IAAI,CAAA;CAC1E;AAED,MAAM,WAAW,gCAAgC,CAAC,IAAI;IACpD,oBAAoB,EAAE,GAAG,CAAC,4BAA4B,GAAG,IAAI,CAAC,CAAA;IAC9D,UAAU,EAAE,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;IACrC,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAA;IACrC,gBAAgB,EAAE,WAAW,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAA;IACpG,eAAe,EAAE,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,WAAW,CAAC,CAAA;IAC5F,mCAAmC,EAAE,MAAM,IAAI,CAAA;IAC/C,gCAAgC,EAAE,MAAM,IAAI,CAAA;CAC7C;AAQD,wBAAgB,0BAA0B,CAAC,IAAI,EAC7C,OAAO,EAAE,iCAAiC,CAAC,IAAI,CAAC,GAC/C,gCAAgC,CAAC,IAAI,CAAC,CAqFxC"}
@@ -0,0 +1,85 @@
1
+ import { ref } from "vue";
2
+ import { clearDataGridSelectedRows, dataGridRowSelectionSnapshotsEqual, deselectDataGridRows, normalizeDataGridRowSelectionSnapshot, reconcileDataGridRowSelectionSnapshot, selectDataGridRows, setDataGridRowFocused, setDataGridRowSelected, } from "@affino/datagrid-core";
3
+ function toNullableSnapshot(snapshot) {
4
+ return snapshot.focusedRow == null && snapshot.selectedRows.length === 0
5
+ ? null
6
+ : snapshot;
7
+ }
8
+ export function useDataGridAppRowSelection(options) {
9
+ const rowSelectionSnapshot = ref(null);
10
+ const focusedRow = ref(null);
11
+ const selectedRows = ref(new Set());
12
+ const syncSnapshot = (snapshot) => {
13
+ const normalized = normalizeDataGridRowSelectionSnapshot(snapshot);
14
+ const nextSnapshot = toNullableSnapshot(normalized);
15
+ if (dataGridRowSelectionSnapshotsEqual(rowSelectionSnapshot.value, nextSnapshot)) {
16
+ return;
17
+ }
18
+ rowSelectionSnapshot.value = nextSnapshot;
19
+ focusedRow.value = normalized.focusedRow;
20
+ selectedRows.value = new Set(normalized.selectedRows);
21
+ };
22
+ const selectionService = {
23
+ name: "selection",
24
+ getRowSelectionSnapshot: () => rowSelectionSnapshot.value,
25
+ setRowSelectionSnapshot: snapshot => {
26
+ syncSnapshot(snapshot);
27
+ },
28
+ clearRowSelection: () => {
29
+ syncSnapshot(null);
30
+ },
31
+ getFocusedRow: () => focusedRow.value,
32
+ setFocusedRow: rowId => {
33
+ syncSnapshot(toNullableSnapshot(setDataGridRowFocused(rowSelectionSnapshot.value, rowId)));
34
+ },
35
+ getSelectedRows: () => [...selectedRows.value],
36
+ isRowSelected: rowId => selectedRows.value.has(rowId),
37
+ setRowSelected: (rowId, selected) => {
38
+ syncSnapshot(toNullableSnapshot(setDataGridRowSelected(rowSelectionSnapshot.value, rowId, selected)));
39
+ },
40
+ selectRows: rowIds => {
41
+ syncSnapshot(toNullableSnapshot(selectDataGridRows(rowSelectionSnapshot.value, rowIds)));
42
+ },
43
+ deselectRows: rowIds => {
44
+ syncSnapshot(toNullableSnapshot(deselectDataGridRows(rowSelectionSnapshot.value, rowIds)));
45
+ },
46
+ clearSelectedRows: () => {
47
+ syncSnapshot(toNullableSnapshot(clearDataGridSelectedRows(rowSelectionSnapshot.value)));
48
+ },
49
+ };
50
+ const runtimeServices = {
51
+ selection: selectionService,
52
+ };
53
+ const syncRowSelectionSnapshotFromRuntime = () => {
54
+ const runtime = options.resolveRuntime?.() ?? null;
55
+ syncSnapshot(runtime?.api.rowSelection.hasSupport()
56
+ ? runtime.api.rowSelection.getSnapshot()
57
+ : null);
58
+ };
59
+ const reconcileRowSelectionFromRuntime = () => {
60
+ const runtime = options.resolveRuntime?.() ?? null;
61
+ if (!runtime?.api.rowSelection.hasSupport()) {
62
+ syncSnapshot(null);
63
+ return;
64
+ }
65
+ const rowCount = runtime.api.rows.getCount();
66
+ const allowedRowIds = [];
67
+ for (let rowIndex = 0; rowIndex < rowCount; rowIndex += 1) {
68
+ const rowId = runtime.api.rows.get(rowIndex)?.rowId;
69
+ if (rowId == null) {
70
+ continue;
71
+ }
72
+ allowedRowIds.push(rowId);
73
+ }
74
+ syncSnapshot(toNullableSnapshot(reconcileDataGridRowSelectionSnapshot(rowSelectionSnapshot.value, allowedRowIds)));
75
+ };
76
+ return {
77
+ rowSelectionSnapshot,
78
+ focusedRow,
79
+ selectedRows,
80
+ selectionService,
81
+ runtimeServices,
82
+ syncRowSelectionSnapshotFromRuntime,
83
+ reconcileRowSelectionFromRuntime,
84
+ };
85
+ }
@@ -0,0 +1,24 @@
1
+ import { type Ref } from "vue";
2
+ import type { DataGridRowNode } from "@affino/datagrid-core";
3
+ import type { UseDataGridRuntimeResult } from "../composables/useDataGridRuntime";
4
+ import type { DataGridAppMode, DataGridAppRowHeightMode } from "./useDataGridAppControls";
5
+ export interface UseDataGridAppRowSizingOptions<TRow> {
6
+ mode: Ref<DataGridAppMode>;
7
+ rowHeightMode: Ref<DataGridAppRowHeightMode>;
8
+ normalizedBaseRowHeight: Ref<number>;
9
+ viewportRowStart: Ref<number>;
10
+ bodyViewportRef?: Ref<HTMLElement | null>;
11
+ runtime: Pick<UseDataGridRuntimeResult<TRow>, "api">;
12
+ minRowHeight?: number;
13
+ syncViewport?: () => void;
14
+ }
15
+ export interface UseDataGridAppRowSizingResult<TRow> {
16
+ rowStyle: (row: DataGridRowNode<TRow>, rowOffset: number) => Record<string, string>;
17
+ isRowAutosizeProbe: (row: DataGridRowNode<TRow>, rowOffset: number) => boolean;
18
+ measureVisibleRowHeights: () => void;
19
+ startRowResize: (event: MouseEvent, row: DataGridRowNode<TRow>, rowOffset: number) => void;
20
+ autosizeRow: (event: MouseEvent, row: DataGridRowNode<TRow>, rowOffset: number) => void;
21
+ dispose: () => void;
22
+ }
23
+ export declare function useDataGridAppRowSizing<TRow>(options: UseDataGridAppRowSizingOptions<TRow>): UseDataGridAppRowSizingResult<TRow>;
24
+ //# sourceMappingURL=useDataGridAppRowSizing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDataGridAppRowSizing.d.ts","sourceRoot":"","sources":["../../src/app/useDataGridAppRowSizing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAA;AACjF,OAAO,KAAK,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAA;AAEzF,MAAM,WAAW,8BAA8B,CAAC,IAAI;IAClD,IAAI,EAAE,GAAG,CAAC,eAAe,CAAC,CAAA;IAC1B,aAAa,EAAE,GAAG,CAAC,wBAAwB,CAAC,CAAA;IAC5C,uBAAuB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACpC,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC7B,eAAe,CAAC,EAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IACzC,OAAO,EAAE,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAA;IACpD,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CAC1B;AAED,MAAM,WAAW,6BAA6B,CAAC,IAAI;IACjD,QAAQ,EAAE,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACnF,kBAAkB,EAAE,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAA;IAC9E,wBAAwB,EAAE,MAAM,IAAI,CAAA;IACpC,cAAc,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;IAC1F,WAAW,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;IACvF,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAC1C,OAAO,EAAE,8BAA8B,CAAC,IAAI,CAAC,GAC5C,6BAA6B,CAAC,IAAI,CAAC,CA8OrC"}
@@ -0,0 +1,215 @@
1
+ import { nextTick, ref, watch } from "vue";
2
+ export function useDataGridAppRowSizing(options) {
3
+ const minRowHeight = options.minRowHeight ?? 24;
4
+ const rowHeightRenderRevision = ref(0);
5
+ const measuringRowKey = ref(null);
6
+ const rowResizeState = ref(null);
7
+ const autoMeasuredRowIndexes = new Set();
8
+ const manualAutoRowHeightFloors = new Map();
9
+ const shouldUseFixedRowHeight = () => {
10
+ return options.rowHeightMode.value === "fixed";
11
+ };
12
+ const resolveRenderedRowKey = (row, rowOffset) => {
13
+ if (row.rowId != null) {
14
+ return String(row.rowId);
15
+ }
16
+ return `row-${options.viewportRowStart.value + rowOffset}`;
17
+ };
18
+ const resolveFixedRowHeightPx = (rowIndex) => {
19
+ const override = options.runtime.api.view.getRowHeightOverride(rowIndex);
20
+ return override ?? options.normalizedBaseRowHeight.value;
21
+ };
22
+ const resolveAutoRowHeightFloorPx = (rowIndex) => {
23
+ return Math.max(minRowHeight, options.normalizedBaseRowHeight.value, manualAutoRowHeightFloors.get(rowIndex) ?? 0);
24
+ };
25
+ const resolveRowHeightPx = (rowIndex) => {
26
+ if (shouldUseFixedRowHeight()) {
27
+ return resolveFixedRowHeightPx(rowIndex);
28
+ }
29
+ const override = options.runtime.api.view.getRowHeightOverride(rowIndex);
30
+ return Math.max(resolveAutoRowHeightFloorPx(rowIndex), override ?? 0);
31
+ };
32
+ const rowStyle = (row, rowOffset) => {
33
+ void rowHeightRenderRevision.value;
34
+ const rowIndex = options.viewportRowStart.value + rowOffset;
35
+ if (!shouldUseFixedRowHeight()) {
36
+ return {
37
+ minHeight: `${resolveRowHeightPx(rowIndex)}px`,
38
+ };
39
+ }
40
+ const rowKey = resolveRenderedRowKey(row, rowOffset);
41
+ if (measuringRowKey.value === rowKey) {
42
+ return {};
43
+ }
44
+ const px = `${resolveRowHeightPx(rowIndex)}px`;
45
+ return {
46
+ height: px,
47
+ minHeight: px,
48
+ };
49
+ };
50
+ const isRowAutosizeProbe = (row, rowOffset) => {
51
+ return measuringRowKey.value === resolveRenderedRowKey(row, rowOffset);
52
+ };
53
+ const clearAutoMeasuredRowHeights = () => {
54
+ if (autoMeasuredRowIndexes.size === 0) {
55
+ return false;
56
+ }
57
+ for (const rowIndex of autoMeasuredRowIndexes) {
58
+ if (manualAutoRowHeightFloors.has(rowIndex)) {
59
+ continue;
60
+ }
61
+ options.runtime.api.view.setRowHeightOverride(rowIndex, null);
62
+ }
63
+ autoMeasuredRowIndexes.clear();
64
+ rowHeightRenderRevision.value += 1;
65
+ return true;
66
+ };
67
+ const measureVisibleRowHeights = () => {
68
+ if (options.mode.value !== "base" || options.rowHeightMode.value !== "auto") {
69
+ return;
70
+ }
71
+ const viewport = options.bodyViewportRef?.value;
72
+ const measurementRoot = viewport?.closest(".grid-body-shell");
73
+ const rowElements = measurementRoot
74
+ ? Array.from(measurementRoot.querySelectorAll(".grid-row[data-row-index]"))
75
+ : viewport
76
+ ? Array.from(viewport.querySelectorAll(".grid-body-content > .grid-row[data-row-index]"))
77
+ : [];
78
+ if (rowElements.length === 0) {
79
+ options.runtime.api.view.measureRowHeight();
80
+ return;
81
+ }
82
+ const measuredHeightByRowIndex = new Map();
83
+ for (const rowElement of rowElements) {
84
+ const indexRaw = rowElement.getAttribute("data-row-index");
85
+ if (!indexRaw) {
86
+ continue;
87
+ }
88
+ const rowIndex = Number.parseInt(indexRaw, 10);
89
+ if (!Number.isFinite(rowIndex) || rowIndex < 0) {
90
+ continue;
91
+ }
92
+ const measuredHeight = Math.max(minRowHeight, Math.round(rowElement.getBoundingClientRect().height || rowElement.offsetHeight || options.normalizedBaseRowHeight.value));
93
+ const previous = measuredHeightByRowIndex.get(rowIndex) ?? 0;
94
+ measuredHeightByRowIndex.set(rowIndex, Math.max(previous, measuredHeight));
95
+ }
96
+ let changed = false;
97
+ for (const [rowIndex, measuredHeight] of measuredHeightByRowIndex) {
98
+ const nextHeight = Math.max(measuredHeight, resolveAutoRowHeightFloorPx(rowIndex));
99
+ const nextOverride = nextHeight === options.normalizedBaseRowHeight.value && !manualAutoRowHeightFloors.has(rowIndex)
100
+ ? null
101
+ : nextHeight;
102
+ const previousOverride = options.runtime.api.view.getRowHeightOverride(rowIndex);
103
+ if (previousOverride === nextOverride) {
104
+ if (nextOverride == null) {
105
+ autoMeasuredRowIndexes.delete(rowIndex);
106
+ }
107
+ else {
108
+ autoMeasuredRowIndexes.add(rowIndex);
109
+ }
110
+ continue;
111
+ }
112
+ options.runtime.api.view.setRowHeightOverride(rowIndex, nextOverride);
113
+ if (nextOverride == null) {
114
+ autoMeasuredRowIndexes.delete(rowIndex);
115
+ }
116
+ else {
117
+ autoMeasuredRowIndexes.add(rowIndex);
118
+ }
119
+ changed = true;
120
+ }
121
+ if (changed) {
122
+ rowHeightRenderRevision.value += 1;
123
+ options.syncViewport?.();
124
+ }
125
+ };
126
+ watch(options.rowHeightMode, (nextMode, previousMode) => {
127
+ if (previousMode === "auto" && nextMode !== "auto") {
128
+ if (clearAutoMeasuredRowHeights()) {
129
+ options.syncViewport?.();
130
+ }
131
+ }
132
+ });
133
+ const stopRowResize = () => {
134
+ rowResizeState.value = null;
135
+ if (typeof window !== "undefined") {
136
+ window.removeEventListener("mousemove", onRowResizeMove);
137
+ window.removeEventListener("mouseup", onRowResizeEnd);
138
+ }
139
+ };
140
+ const onRowResizeMove = (event) => {
141
+ const state = rowResizeState.value;
142
+ if (!state || options.mode.value !== "base") {
143
+ return;
144
+ }
145
+ const delta = event.clientY - state.startY;
146
+ const nextHeight = Math.max(minRowHeight, Math.round(state.startBase + delta));
147
+ const rowIndex = Number.parseInt(state.rowKey, 10);
148
+ if (Number.isFinite(rowIndex)) {
149
+ if (options.rowHeightMode.value === "auto") {
150
+ manualAutoRowHeightFloors.set(rowIndex, nextHeight);
151
+ autoMeasuredRowIndexes.add(rowIndex);
152
+ }
153
+ options.runtime.api.view.setRowHeightOverride(rowIndex, nextHeight);
154
+ rowHeightRenderRevision.value += 1;
155
+ options.syncViewport?.();
156
+ }
157
+ };
158
+ const onRowResizeEnd = () => {
159
+ if (!rowResizeState.value) {
160
+ return;
161
+ }
162
+ stopRowResize();
163
+ };
164
+ const startRowResize = (event, _row, rowOffset) => {
165
+ if (options.mode.value !== "base") {
166
+ return;
167
+ }
168
+ const rowIndex = options.viewportRowStart.value + rowOffset;
169
+ const rowKey = String(rowIndex);
170
+ rowResizeState.value = {
171
+ rowKey,
172
+ startY: event.clientY,
173
+ startBase: resolveRowHeightPx(rowIndex),
174
+ };
175
+ if (typeof window !== "undefined") {
176
+ window.addEventListener("mousemove", onRowResizeMove);
177
+ window.addEventListener("mouseup", onRowResizeEnd);
178
+ }
179
+ };
180
+ const autosizeRow = (event, row, rowOffset) => {
181
+ if (options.mode.value !== "base") {
182
+ return;
183
+ }
184
+ const rowIndex = options.viewportRowStart.value + rowOffset;
185
+ if (options.rowHeightMode.value === "auto") {
186
+ manualAutoRowHeightFloors.delete(rowIndex);
187
+ void nextTick(() => {
188
+ measureVisibleRowHeights();
189
+ options.syncViewport?.();
190
+ });
191
+ return;
192
+ }
193
+ const rowKey = resolveRenderedRowKey(row, rowOffset);
194
+ measuringRowKey.value = rowKey;
195
+ const rowElement = event.currentTarget?.closest(".grid-row");
196
+ void nextTick(() => {
197
+ const measured = rowElement ? Math.round(rowElement.getBoundingClientRect().height) : options.normalizedBaseRowHeight.value;
198
+ options.runtime.api.view.setRowHeightOverride(rowIndex, Math.max(minRowHeight, measured));
199
+ rowHeightRenderRevision.value += 1;
200
+ measuringRowKey.value = null;
201
+ options.syncViewport?.();
202
+ });
203
+ };
204
+ return {
205
+ rowStyle,
206
+ isRowAutosizeProbe,
207
+ measureVisibleRowHeights,
208
+ startRowResize,
209
+ autosizeRow,
210
+ dispose: () => {
211
+ stopRowResize();
212
+ clearAutoMeasuredRowHeights();
213
+ },
214
+ };
215
+ }
@@ -0,0 +1,32 @@
1
+ import { type Ref } from "vue";
2
+ import type { DataGridColumnInput, CreateClientRowModelOptions, DataGridRowNodeInput, DataGridTreeDataFilterMode } from "@affino/datagrid-core";
3
+ import type { DataGridPivotSpec } from "@affino/datagrid-pivot";
4
+ import { type UseDataGridRuntimeOptions, type UseDataGridRuntimeResult } from "../composables/useDataGridRuntime";
5
+ type MaybeRef<T> = T | Ref<T>;
6
+ export type DataGridAppRuntimeMode = "base" | "tree" | "pivot" | "worker";
7
+ export interface UseDataGridAppRuntimeOptions<TRow> {
8
+ mode: MaybeRef<DataGridAppRuntimeMode>;
9
+ rows: Ref<readonly TRow[]>;
10
+ columns: Ref<readonly DataGridColumnInput[]>;
11
+ clientRowModelOptions?: Omit<CreateClientRowModelOptions<TRow>, "rows">;
12
+ services?: UseDataGridRuntimeOptions<TRow>["services"];
13
+ treeData?: {
14
+ getDataPath: (row: TRow) => readonly string[];
15
+ filterMode?: DataGridTreeDataFilterMode;
16
+ };
17
+ initialPivotModel?: DataGridPivotSpec | null;
18
+ worker?: {
19
+ rowInputs?: MaybeRef<readonly DataGridRowNodeInput<TRow>[]>;
20
+ resolveRowInputs?: (rows: readonly TRow[]) => readonly DataGridRowNodeInput<TRow>[];
21
+ resolveRowInputsOnDemand?: () => readonly DataGridRowNodeInput<TRow>[];
22
+ rowInputsUpdateKey?: MaybeRef<unknown>;
23
+ createHostWorker?: () => Worker;
24
+ };
25
+ }
26
+ export interface UseDataGridAppRuntimeResult<TRow> {
27
+ runtime: UseDataGridRuntimeResult<TRow>;
28
+ rowVersion: Ref<number>;
29
+ }
30
+ export declare function useDataGridAppRuntime<TRow>(options: UseDataGridAppRuntimeOptions<TRow>): UseDataGridAppRuntimeResult<TRow>;
31
+ export {};
32
+ //# sourceMappingURL=useDataGridAppRuntime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDataGridAppRuntime.d.ts","sourceRoot":"","sources":["../../src/app/useDataGridAppRuntime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsC,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,2BAA2B,EAE3B,oBAAoB,EACpB,0BAA0B,EAC3B,MAAM,uBAAuB,CAAA;AAC9B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC/D,OAAO,EAAsB,KAAK,yBAAyB,EAAE,KAAK,wBAAwB,EAAE,MAAM,mCAAmC,CAAA;AAQrI,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;AAS7B,MAAM,MAAM,sBAAsB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAA;AAEzE,MAAM,WAAW,4BAA4B,CAAC,IAAI;IAChD,IAAI,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAA;IACtC,IAAI,EAAE,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAA;IAC1B,OAAO,EAAE,GAAG,CAAC,SAAS,mBAAmB,EAAE,CAAC,CAAA;IAC5C,qBAAqB,CAAC,EAAE,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAA;IACvE,QAAQ,CAAC,EAAE,yBAAyB,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAA;IACtD,QAAQ,CAAC,EAAE;QACT,WAAW,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,SAAS,MAAM,EAAE,CAAA;QAC7C,UAAU,CAAC,EAAE,0BAA0B,CAAA;KACxC,CAAA;IACD,iBAAiB,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAA;IAC5C,MAAM,CAAC,EAAE;QACP,SAAS,CAAC,EAAE,QAAQ,CAAC,SAAS,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC3D,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,IAAI,EAAE,KAAK,SAAS,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAA;QACnF,wBAAwB,CAAC,EAAE,MAAM,SAAS,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAA;QACtE,kBAAkB,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;QACtC,gBAAgB,CAAC,EAAE,MAAM,MAAM,CAAA;KAChC,CAAA;CACF;AAkBD,MAAM,WAAW,2BAA2B,CAAC,IAAI;IAC/C,OAAO,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAA;IACvC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CACxB;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EACxC,OAAO,EAAE,4BAA4B,CAAC,IAAI,CAAC,GAC1C,2BAA2B,CAAC,IAAI,CAAC,CA4HnC"}