@zengrid/core 1.0.7 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (790) hide show
  1. package/README.md +3 -0
  2. package/dist/README.md +3 -0
  3. package/dist/index.cjs.js +28845 -7272
  4. package/dist/index.esm.js +28724 -7274
  5. package/dist/package.json +5 -5
  6. package/dist/src/a11y/aria-manager.d.ts +1 -1
  7. package/dist/src/a11y/focus-manager.d.ts.map +1 -1
  8. package/dist/src/data/data-accessor/array-accessor.d.ts.map +1 -1
  9. package/dist/src/data/data-accessor/column-store-accessor.d.ts.map +1 -1
  10. package/dist/src/data/data-accessor/index.d.ts +2 -2
  11. package/dist/src/data/data-accessor/index.d.ts.map +1 -1
  12. package/dist/src/data/data-accessor/sparse-matrix-accessor.d.ts.map +1 -1
  13. package/dist/src/data/data-manager.d.ts.map +1 -1
  14. package/dist/src/data/data-source.interface.d.ts +4 -4
  15. package/dist/src/data/data-source.interface.d.ts.map +1 -1
  16. package/dist/src/datetime-core/calendar/index.d.ts +6 -0
  17. package/dist/src/datetime-core/calendar/index.d.ts.map +1 -0
  18. package/dist/src/datetime-core/calendar/vanilla-calendar-adapter.d.ts +114 -0
  19. package/dist/src/datetime-core/calendar/vanilla-calendar-adapter.d.ts.map +1 -0
  20. package/dist/src/datetime-core/formatting/date-formatter.d.ts +52 -0
  21. package/dist/src/datetime-core/formatting/date-formatter.d.ts.map +1 -0
  22. package/dist/src/datetime-core/formatting/index.d.ts +5 -0
  23. package/dist/src/datetime-core/formatting/index.d.ts.map +1 -0
  24. package/dist/src/datetime-core/index.d.ts +28 -0
  25. package/dist/src/datetime-core/index.d.ts.map +1 -0
  26. package/dist/src/datetime-core/keyboard/index.d.ts +6 -0
  27. package/dist/src/datetime-core/keyboard/index.d.ts.map +1 -0
  28. package/dist/src/datetime-core/keyboard/keyboard-nav.d.ts +48 -0
  29. package/dist/src/datetime-core/keyboard/keyboard-nav.d.ts.map +1 -0
  30. package/dist/src/datetime-core/parsing/date-parser.d.ts +30 -0
  31. package/dist/src/datetime-core/parsing/date-parser.d.ts.map +1 -0
  32. package/dist/src/datetime-core/parsing/index.d.ts +5 -0
  33. package/dist/src/datetime-core/parsing/index.d.ts.map +1 -0
  34. package/dist/src/datetime-core/popup/click-outside.d.ts +49 -0
  35. package/dist/src/datetime-core/popup/click-outside.d.ts.map +1 -0
  36. package/dist/src/datetime-core/popup/index.d.ts +10 -0
  37. package/dist/src/datetime-core/popup/index.d.ts.map +1 -0
  38. package/dist/src/datetime-core/popup/popup-manager.d.ts +78 -0
  39. package/dist/src/datetime-core/popup/popup-manager.d.ts.map +1 -0
  40. package/dist/src/datetime-core/popup/popup-positioner.d.ts +43 -0
  41. package/dist/src/datetime-core/popup/popup-positioner.d.ts.map +1 -0
  42. package/dist/src/datetime-core/scroll/index.d.ts +6 -0
  43. package/dist/src/datetime-core/scroll/index.d.ts.map +1 -0
  44. package/dist/src/datetime-core/scroll/scroll-handler.d.ts +63 -0
  45. package/dist/src/datetime-core/scroll/scroll-handler.d.ts.map +1 -0
  46. package/dist/src/datetime-core/theming/datetime.css +407 -0
  47. package/dist/src/datetime-core/theming/index.d.ts +7 -0
  48. package/dist/src/datetime-core/theming/index.d.ts.map +1 -0
  49. package/dist/src/datetime-core/theming/theme-manager.d.ts +104 -0
  50. package/dist/src/datetime-core/theming/theme-manager.d.ts.map +1 -0
  51. package/dist/src/editing/cell-editor.interface.d.ts +12 -0
  52. package/dist/src/editing/cell-editor.interface.d.ts.map +1 -1
  53. package/dist/src/editing/checkbox/checkbox-dom.d.ts +33 -0
  54. package/dist/src/editing/checkbox/checkbox-dom.d.ts.map +1 -0
  55. package/dist/src/editing/checkbox/checkbox-editor.d.ts +18 -0
  56. package/dist/src/editing/checkbox/checkbox-editor.d.ts.map +1 -0
  57. package/dist/src/editing/checkbox/checkbox-events.d.ts +54 -0
  58. package/dist/src/editing/checkbox/checkbox-events.d.ts.map +1 -0
  59. package/dist/src/editing/checkbox/checkbox-state.d.ts +34 -0
  60. package/dist/src/editing/checkbox/checkbox-state.d.ts.map +1 -0
  61. package/dist/src/editing/checkbox/checkbox-types.d.ts +37 -0
  62. package/dist/src/editing/checkbox/checkbox-types.d.ts.map +1 -0
  63. package/dist/src/editing/checkbox/index.d.ts +3 -0
  64. package/dist/src/editing/checkbox/index.d.ts.map +1 -0
  65. package/dist/src/editing/datetime/date-editor/date-editor.d.ts +65 -0
  66. package/dist/src/editing/datetime/date-editor/date-editor.d.ts.map +1 -0
  67. package/dist/src/editing/datetime/date-editor/index.d.ts +6 -0
  68. package/dist/src/editing/datetime/date-editor/index.d.ts.map +1 -0
  69. package/dist/src/editing/datetime/date-editor/types.d.ts +58 -0
  70. package/dist/src/editing/datetime/date-editor/types.d.ts.map +1 -0
  71. package/dist/src/editing/datetime/date-range-editor/date-range-calendar.d.ts +15 -0
  72. package/dist/src/editing/datetime/date-range-editor/date-range-calendar.d.ts.map +1 -0
  73. package/dist/src/editing/datetime/date-range-editor/date-range-dom.d.ts +22 -0
  74. package/dist/src/editing/datetime/date-range-editor/date-range-dom.d.ts.map +1 -0
  75. package/dist/src/editing/datetime/date-range-editor/date-range-editor.d.ts +33 -0
  76. package/dist/src/editing/datetime/date-range-editor/date-range-editor.d.ts.map +1 -0
  77. package/dist/src/editing/datetime/date-range-editor/date-range-validation.d.ts +7 -0
  78. package/dist/src/editing/datetime/date-range-editor/date-range-validation.d.ts.map +1 -0
  79. package/dist/src/editing/datetime/date-range-editor/index.d.ts +6 -0
  80. package/dist/src/editing/datetime/date-range-editor/index.d.ts.map +1 -0
  81. package/dist/src/editing/datetime/date-range-editor/types.d.ts +58 -0
  82. package/dist/src/editing/datetime/date-range-editor/types.d.ts.map +1 -0
  83. package/dist/src/editing/datetime/datetime-editor/datetime-editor.d.ts +51 -0
  84. package/dist/src/editing/datetime/datetime-editor/datetime-editor.d.ts.map +1 -0
  85. package/dist/src/editing/datetime/datetime-editor/index.d.ts +6 -0
  86. package/dist/src/editing/datetime/datetime-editor/index.d.ts.map +1 -0
  87. package/dist/src/editing/datetime/datetime-editor/types.d.ts +58 -0
  88. package/dist/src/editing/datetime/datetime-editor/types.d.ts.map +1 -0
  89. package/dist/src/editing/datetime/index.d.ts +14 -0
  90. package/dist/src/editing/datetime/index.d.ts.map +1 -0
  91. package/dist/src/editing/datetime/time-editor/index.d.ts +6 -0
  92. package/dist/src/editing/datetime/time-editor/index.d.ts.map +1 -0
  93. package/dist/src/editing/datetime/time-editor/time-editor.d.ts +42 -0
  94. package/dist/src/editing/datetime/time-editor/time-editor.d.ts.map +1 -0
  95. package/dist/src/editing/datetime/time-editor/types.d.ts +63 -0
  96. package/dist/src/editing/datetime/time-editor/types.d.ts.map +1 -0
  97. package/dist/src/editing/dropdown/dropdown-editor.d.ts +35 -0
  98. package/dist/src/editing/dropdown/dropdown-editor.d.ts.map +1 -0
  99. package/dist/src/editing/dropdown/dropdown-manager.d.ts +26 -0
  100. package/dist/src/editing/dropdown/dropdown-manager.d.ts.map +1 -0
  101. package/dist/src/editing/dropdown/event-handlers.d.ts +24 -0
  102. package/dist/src/editing/dropdown/event-handlers.d.ts.map +1 -0
  103. package/dist/src/editing/dropdown/index.d.ts +3 -0
  104. package/dist/src/editing/dropdown/index.d.ts.map +1 -0
  105. package/dist/src/editing/dropdown/search-filter.d.ts +26 -0
  106. package/dist/src/editing/dropdown/search-filter.d.ts.map +1 -0
  107. package/dist/src/editing/dropdown/types.d.ts +51 -0
  108. package/dist/src/editing/dropdown/types.d.ts.map +1 -0
  109. package/dist/src/editing/dropdown/ui-builder.d.ts +27 -0
  110. package/dist/src/editing/dropdown/ui-builder.d.ts.map +1 -0
  111. package/dist/src/editing/dropdown/validators.d.ts +7 -0
  112. package/dist/src/editing/dropdown/validators.d.ts.map +1 -0
  113. package/dist/src/editing/{editor-manager.d.ts → editor-manager/editor-manager.d.ts} +49 -4
  114. package/dist/src/editing/editor-manager/editor-manager.d.ts.map +1 -0
  115. package/dist/src/editing/editor-manager/index.d.ts +3 -0
  116. package/dist/src/editing/editor-manager/index.d.ts.map +1 -0
  117. package/dist/src/editing/index.d.ts +11 -9
  118. package/dist/src/editing/index.d.ts.map +1 -1
  119. package/dist/src/editing/number/index.d.ts +3 -0
  120. package/dist/src/editing/number/index.d.ts.map +1 -0
  121. package/dist/src/editing/{number-editor.d.ts → number/number-editor.d.ts} +1 -1
  122. package/dist/src/editing/number/number-editor.d.ts.map +1 -0
  123. package/dist/src/editing/select/index.d.ts +3 -0
  124. package/dist/src/editing/select/index.d.ts.map +1 -0
  125. package/dist/src/editing/{select-editor.d.ts → select/select-editor.d.ts} +1 -1
  126. package/dist/src/editing/select/select-editor.d.ts.map +1 -0
  127. package/dist/src/editing/text/index.d.ts +3 -0
  128. package/dist/src/editing/text/index.d.ts.map +1 -0
  129. package/dist/src/editing/text/text-editor.d.ts +188 -0
  130. package/dist/src/editing/text/text-editor.d.ts.map +1 -0
  131. package/dist/src/events/event-emitter.d.ts.map +1 -1
  132. package/dist/src/events/grid-events.d.ts +71 -7
  133. package/dist/src/events/grid-events.d.ts.map +1 -1
  134. package/dist/src/features/autofill/autofill-manager.d.ts.map +1 -1
  135. package/dist/src/features/column-drag/column-drag-command.d.ts +60 -0
  136. package/dist/src/features/column-drag/column-drag-command.d.ts.map +1 -0
  137. package/dist/src/features/column-drag/column-drag-manager.d.ts +75 -0
  138. package/dist/src/features/column-drag/column-drag-manager.d.ts.map +1 -0
  139. package/dist/src/features/column-drag/column-drag-manager.interface.d.ts +263 -0
  140. package/dist/src/features/column-drag/column-drag-manager.interface.d.ts.map +1 -0
  141. package/dist/src/features/column-drag/column-drag.styles.css +90 -0
  142. package/dist/src/features/column-drag/drag-callbacks.d.ts +13 -0
  143. package/dist/src/features/column-drag/drag-callbacks.d.ts.map +1 -0
  144. package/dist/src/features/column-drag/drag-event-handlers.d.ts +26 -0
  145. package/dist/src/features/column-drag/drag-event-handlers.d.ts.map +1 -0
  146. package/dist/src/features/column-drag/drag-keyboard-handler.d.ts +77 -0
  147. package/dist/src/features/column-drag/drag-keyboard-handler.d.ts.map +1 -0
  148. package/dist/src/features/column-drag/drag-lifecycle.d.ts +28 -0
  149. package/dist/src/features/column-drag/drag-lifecycle.d.ts.map +1 -0
  150. package/dist/src/features/column-drag/drag-mouse-handler.d.ts +57 -0
  151. package/dist/src/features/column-drag/drag-mouse-handler.d.ts.map +1 -0
  152. package/dist/src/features/column-drag/drag-operations.d.ts +43 -0
  153. package/dist/src/features/column-drag/drag-operations.d.ts.map +1 -0
  154. package/dist/src/features/column-drag/drag-state-machine.d.ts +10 -0
  155. package/dist/src/features/column-drag/drag-state-machine.d.ts.map +1 -0
  156. package/dist/src/features/column-drag/drag-state-manager.d.ts +80 -0
  157. package/dist/src/features/column-drag/drag-state-manager.d.ts.map +1 -0
  158. package/dist/src/features/column-drag/drag-touch-handler.d.ts +90 -0
  159. package/dist/src/features/column-drag/drag-touch-handler.d.ts.map +1 -0
  160. package/dist/src/features/column-drag/drag-visual-feedback.d.ts +74 -0
  161. package/dist/src/features/column-drag/drag-visual-feedback.d.ts.map +1 -0
  162. package/dist/src/features/column-drag/drop-zone-detector.d.ts +53 -0
  163. package/dist/src/features/column-drag/drop-zone-detector.d.ts.map +1 -0
  164. package/dist/src/features/column-drag/index.d.ts +17 -0
  165. package/dist/src/features/column-drag/index.d.ts.map +1 -0
  166. package/dist/src/features/column-groups/column-group-manager.d.ts +159 -0
  167. package/dist/src/features/column-groups/column-group-manager.d.ts.map +1 -0
  168. package/dist/src/features/column-groups/column-group-model.d.ts +108 -0
  169. package/dist/src/features/column-groups/column-group-model.d.ts.map +1 -0
  170. package/dist/src/features/column-groups/column-group-renderer.d.ts +163 -0
  171. package/dist/src/features/column-groups/column-group-renderer.d.ts.map +1 -0
  172. package/dist/src/features/column-groups/event-subscription-manager.d.ts +32 -0
  173. package/dist/src/features/column-groups/event-subscription-manager.d.ts.map +1 -0
  174. package/dist/src/features/column-groups/group-operations.d.ts +54 -0
  175. package/dist/src/features/column-groups/group-operations.d.ts.map +1 -0
  176. package/dist/src/features/column-groups/group-renderer-controller.d.ts +27 -0
  177. package/dist/src/features/column-groups/group-renderer-controller.d.ts.map +1 -0
  178. package/dist/src/features/column-groups/index.d.ts +14 -0
  179. package/dist/src/features/column-groups/index.d.ts.map +1 -0
  180. package/dist/src/features/column-groups/manager-options.d.ts +56 -0
  181. package/dist/src/features/column-groups/manager-options.d.ts.map +1 -0
  182. package/dist/src/features/column-groups/model-query-adapter.d.ts +49 -0
  183. package/dist/src/features/column-groups/model-query-adapter.d.ts.map +1 -0
  184. package/dist/src/features/column-groups/renderer-registry.d.ts +197 -0
  185. package/dist/src/features/column-groups/renderer-registry.d.ts.map +1 -0
  186. package/dist/src/features/column-groups/types.d.ts +100 -0
  187. package/dist/src/features/column-groups/types.d.ts.map +1 -0
  188. package/dist/src/features/column-resize/auto-fit-calculator.d.ts +21 -2
  189. package/dist/src/features/column-resize/auto-fit-calculator.d.ts.map +1 -1
  190. package/dist/src/features/column-resize/column-resize-manager.d.ts +4 -62
  191. package/dist/src/features/column-resize/column-resize-manager.d.ts.map +1 -1
  192. package/dist/src/features/column-resize/column-resize-manager.interface.d.ts +22 -1
  193. package/dist/src/features/column-resize/column-resize-manager.interface.d.ts.map +1 -1
  194. package/dist/src/features/column-resize/column-resize.styles.css +5 -4
  195. package/dist/src/features/column-resize/data-source-adapter.d.ts +20 -0
  196. package/dist/src/features/column-resize/data-source-adapter.d.ts.map +1 -0
  197. package/dist/src/features/column-resize/event-handlers.d.ts +90 -0
  198. package/dist/src/features/column-resize/event-handlers.d.ts.map +1 -0
  199. package/dist/src/features/column-resize/handle-coordinator.d.ts +19 -0
  200. package/dist/src/features/column-resize/handle-coordinator.d.ts.map +1 -0
  201. package/dist/src/features/column-resize/index.d.ts +4 -1
  202. package/dist/src/features/column-resize/index.d.ts.map +1 -1
  203. package/dist/src/features/column-resize/initialization.d.ts +19 -0
  204. package/dist/src/features/column-resize/initialization.d.ts.map +1 -0
  205. package/dist/src/features/column-resize/lifecycle-manager.d.ts +58 -0
  206. package/dist/src/features/column-resize/lifecycle-manager.d.ts.map +1 -0
  207. package/dist/src/features/column-resize/programmatic-operations.d.ts +35 -0
  208. package/dist/src/features/column-resize/programmatic-operations.d.ts.map +1 -0
  209. package/dist/src/features/column-resize/resize-constraint-manager.d.ts +11 -0
  210. package/dist/src/features/column-resize/resize-constraint-manager.d.ts.map +1 -1
  211. package/dist/src/features/column-resize/resize-handle-renderer.d.ts +1 -1
  212. package/dist/src/features/column-resize/resize-handle-renderer.d.ts.map +1 -1
  213. package/dist/src/features/column-resize/resize-test-helper.d.ts.map +1 -1
  214. package/dist/src/features/column-resize/resize-zone-detector.d.ts.map +1 -1
  215. package/dist/src/features/column-resize/width-notifier.d.ts +15 -0
  216. package/dist/src/features/column-resize/width-notifier.d.ts.map +1 -0
  217. package/dist/src/features/columns/column-model.d.ts +107 -0
  218. package/dist/src/features/columns/column-model.d.ts.map +1 -0
  219. package/dist/src/features/columns/index.d.ts +39 -0
  220. package/dist/src/features/columns/index.d.ts.map +1 -0
  221. package/dist/src/features/columns/plugins/column-pin.d.ts +61 -0
  222. package/dist/src/features/columns/plugins/column-pin.d.ts.map +1 -0
  223. package/dist/src/features/columns/plugins/column-reorder.d.ts +44 -0
  224. package/dist/src/features/columns/plugins/column-reorder.d.ts.map +1 -0
  225. package/dist/src/features/columns/plugins/column-visibility.d.ts +103 -0
  226. package/dist/src/features/columns/plugins/column-visibility.d.ts.map +1 -0
  227. package/dist/src/features/columns/plugins/index.d.ts +34 -0
  228. package/dist/src/features/columns/plugins/index.d.ts.map +1 -0
  229. package/dist/src/features/columns/types.d.ts +189 -0
  230. package/dist/src/features/columns/types.d.ts.map +1 -0
  231. package/dist/src/features/copy-paste/clipboard-manager.d.ts.map +1 -1
  232. package/dist/src/features/export/csv-exporter.d.ts +32 -0
  233. package/dist/src/features/export/csv-exporter.d.ts.map +1 -0
  234. package/dist/src/features/export/index.d.ts +3 -0
  235. package/dist/src/features/export/index.d.ts.map +1 -0
  236. package/dist/src/features/filtering/adapters/graphql-adapter.d.ts.map +1 -1
  237. package/dist/src/features/filtering/adapters/rest-adapter.d.ts.map +1 -1
  238. package/dist/src/features/filtering/adapters/sql-adapter.d.ts.map +1 -1
  239. package/dist/src/features/filtering/filter-cache.d.ts.map +1 -1
  240. package/dist/src/features/filtering/filter-export-manager.d.ts.map +1 -1
  241. package/dist/src/features/filtering/filter-index-manager.d.ts.map +1 -1
  242. package/dist/src/features/filtering/filter-manager/filter-core.d.ts +85 -0
  243. package/dist/src/features/filtering/filter-manager/filter-core.d.ts.map +1 -0
  244. package/dist/src/features/filtering/filter-manager/filter-export.d.ts +84 -0
  245. package/dist/src/features/filtering/filter-manager/filter-export.d.ts.map +1 -0
  246. package/dist/src/features/filtering/filter-manager/filter-optimizer.d.ts +76 -0
  247. package/dist/src/features/filtering/filter-manager/filter-optimizer.d.ts.map +1 -0
  248. package/dist/src/features/filtering/filter-manager/filter-query.d.ts +79 -0
  249. package/dist/src/features/filtering/filter-manager/filter-query.d.ts.map +1 -0
  250. package/dist/src/features/filtering/filter-manager/index.d.ts +182 -0
  251. package/dist/src/features/filtering/filter-manager/index.d.ts.map +1 -0
  252. package/dist/src/features/filtering/filter-manager/types.d.ts +91 -0
  253. package/dist/src/features/filtering/filter-manager/types.d.ts.map +1 -0
  254. package/dist/src/features/filtering/filter-query-parser.d.ts.map +1 -1
  255. package/dist/src/features/filtering/range-filter-optimizer.d.ts.map +1 -1
  256. package/dist/src/features/hit-testing/spatial-hit-tester.d.ts.map +1 -1
  257. package/dist/src/features/loading/loading-indicator.d.ts.map +1 -1
  258. package/dist/src/features/loading/loading.styles.css +19 -90
  259. package/dist/src/features/pagination/pagination.styles.css +34 -74
  260. package/dist/src/features/pagination/paginator.d.ts.map +1 -1
  261. package/dist/src/features/row-height/index.d.ts +8 -0
  262. package/dist/src/features/row-height/index.d.ts.map +1 -0
  263. package/dist/src/features/row-height/row-height-manager.d.ts +86 -0
  264. package/dist/src/features/row-height/row-height-manager.d.ts.map +1 -0
  265. package/dist/src/features/selection/selection-manager.d.ts.map +1 -1
  266. package/dist/src/features/sorting/index.d.ts +3 -0
  267. package/dist/src/features/sorting/index.d.ts.map +1 -1
  268. package/dist/src/features/sorting/multi-column-sorter.d.ts +170 -0
  269. package/dist/src/features/sorting/multi-column-sorter.d.ts.map +1 -0
  270. package/dist/src/features/sorting/row-sorter.interface.d.ts.map +1 -1
  271. package/dist/src/features/sorting/single-column-sorter.d.ts.map +1 -1
  272. package/dist/src/features/sorting/sort-manager.d.ts.map +1 -1
  273. package/dist/src/features/sorting/sort-state-manager.d.ts +184 -0
  274. package/dist/src/features/sorting/sort-state-manager.d.ts.map +1 -0
  275. package/dist/src/features/sorting/types.d.ts +87 -0
  276. package/dist/src/features/sorting/types.d.ts.map +1 -0
  277. package/dist/src/features/undo-redo/undo-redo-manager.d.ts.map +1 -1
  278. package/dist/src/features/viewport/index.d.ts +11 -0
  279. package/dist/src/features/viewport/index.d.ts.map +1 -0
  280. package/dist/src/features/viewport/scroll-model.d.ts +57 -0
  281. package/dist/src/features/viewport/scroll-model.d.ts.map +1 -0
  282. package/dist/src/features/viewport/types.d.ts +61 -0
  283. package/dist/src/features/viewport/types.d.ts.map +1 -0
  284. package/dist/src/features/viewport/viewport-model.d.ts +64 -0
  285. package/dist/src/features/viewport/viewport-model.d.ts.map +1 -0
  286. package/dist/src/grid/api/column-api.d.ts +23 -0
  287. package/dist/src/grid/api/column-api.d.ts.map +1 -0
  288. package/dist/src/grid/api/export-api.d.ts +9 -0
  289. package/dist/src/grid/api/export-api.d.ts.map +1 -0
  290. package/dist/src/grid/api/filter-api.d.ts +24 -0
  291. package/dist/src/grid/api/filter-api.d.ts.map +1 -0
  292. package/dist/src/grid/api/index.d.ts +15 -0
  293. package/dist/src/grid/api/index.d.ts.map +1 -0
  294. package/dist/src/grid/api/pagination-api.d.ts +14 -0
  295. package/dist/src/grid/api/pagination-api.d.ts.map +1 -0
  296. package/dist/src/grid/api/scroll-api.d.ts +26 -0
  297. package/dist/src/grid/api/scroll-api.d.ts.map +1 -0
  298. package/dist/src/grid/api/sort-api.d.ts +17 -0
  299. package/dist/src/grid/api/sort-api.d.ts.map +1 -0
  300. package/dist/src/grid/api/state-api.d.ts +10 -0
  301. package/dist/src/grid/api/state-api.d.ts.map +1 -0
  302. package/dist/src/grid/filter-ui.d.ts +41 -0
  303. package/dist/src/grid/filter-ui.d.ts.map +1 -0
  304. package/dist/src/grid/grid-api.d.ts +19 -0
  305. package/dist/src/grid/grid-api.d.ts.map +1 -0
  306. package/dist/src/grid/grid-context.d.ts +23 -0
  307. package/dist/src/grid/grid-context.d.ts.map +1 -0
  308. package/dist/src/grid/grid-core.d.ts +122 -0
  309. package/dist/src/grid/grid-core.d.ts.map +1 -0
  310. package/dist/src/grid/grid-export.d.ts +18 -0
  311. package/dist/src/grid/grid-export.d.ts.map +1 -0
  312. package/dist/src/grid/grid-setup.d.ts +5 -0
  313. package/dist/src/grid/grid-setup.d.ts.map +1 -0
  314. package/dist/src/grid/grid-theme-methods.d.ts +17 -0
  315. package/dist/src/grid/grid-theme-methods.d.ts.map +1 -0
  316. package/dist/src/grid/index.d.ts +7 -0
  317. package/dist/src/grid/index.d.ts.map +1 -0
  318. package/dist/src/grid/plugin-host.d.ts +16 -0
  319. package/dist/src/grid/plugin-host.d.ts.map +1 -0
  320. package/dist/src/grid.d.ts +5 -412
  321. package/dist/src/grid.d.ts.map +1 -1
  322. package/dist/src/index.d.ts +87 -5
  323. package/dist/src/index.d.ts.map +1 -1
  324. package/dist/src/plugins/async-filter-plugin.d.ts +7 -0
  325. package/dist/src/plugins/async-filter-plugin.d.ts.map +1 -0
  326. package/dist/src/plugins/async-sort-plugin.d.ts +8 -0
  327. package/dist/src/plugins/async-sort-plugin.d.ts.map +1 -0
  328. package/dist/src/plugins/column/column-plugin.d.ts +18 -0
  329. package/dist/src/plugins/column/column-plugin.d.ts.map +1 -0
  330. package/dist/src/plugins/column/grid-state.d.ts +17 -0
  331. package/dist/src/plugins/column/grid-state.d.ts.map +1 -0
  332. package/dist/src/plugins/column/index.d.ts +3 -0
  333. package/dist/src/plugins/column/index.d.ts.map +1 -0
  334. package/dist/src/plugins/core-plugin.d.ts +6 -0
  335. package/dist/src/plugins/core-plugin.d.ts.map +1 -0
  336. package/dist/src/plugins/dom/dom-plugin.d.ts +14 -0
  337. package/dist/src/plugins/dom/dom-plugin.d.ts.map +1 -0
  338. package/dist/src/plugins/dom/index.d.ts +3 -0
  339. package/dist/src/plugins/dom/index.d.ts.map +1 -0
  340. package/dist/src/plugins/editing/editing-plugin.d.ts +15 -0
  341. package/dist/src/plugins/editing/editing-plugin.d.ts.map +1 -0
  342. package/dist/src/plugins/editing/index.d.ts +3 -0
  343. package/dist/src/plugins/editing/index.d.ts.map +1 -0
  344. package/dist/src/plugins/filter-plugin.d.ts +10 -0
  345. package/dist/src/plugins/filter-plugin.d.ts.map +1 -0
  346. package/dist/src/plugins/filter-ui/filter-ui-plugin.d.ts +10 -0
  347. package/dist/src/plugins/filter-ui/filter-ui-plugin.d.ts.map +1 -0
  348. package/dist/src/plugins/filter-ui/index.d.ts +3 -0
  349. package/dist/src/plugins/filter-ui/index.d.ts.map +1 -0
  350. package/dist/src/plugins/header/header-dom-operations.d.ts +26 -0
  351. package/dist/src/plugins/header/header-dom-operations.d.ts.map +1 -0
  352. package/dist/src/plugins/header/header-event-handlers.d.ts +35 -0
  353. package/dist/src/plugins/header/header-event-handlers.d.ts.map +1 -0
  354. package/dist/src/plugins/header/header-plugin.d.ts +18 -0
  355. package/dist/src/plugins/header/header-plugin.d.ts.map +1 -0
  356. package/dist/src/plugins/header/header-reactive-subscription.d.ts +18 -0
  357. package/dist/src/plugins/header/header-reactive-subscription.d.ts.map +1 -0
  358. package/dist/src/plugins/header/header-registry-setup.d.ts +9 -0
  359. package/dist/src/plugins/header/header-registry-setup.d.ts.map +1 -0
  360. package/dist/src/plugins/header/header-render-params.d.ts +12 -0
  361. package/dist/src/plugins/header/header-render-params.d.ts.map +1 -0
  362. package/dist/src/plugins/header/header-rendering.d.ts +23 -0
  363. package/dist/src/plugins/header/header-rendering.d.ts.map +1 -0
  364. package/dist/src/plugins/header/header-types.d.ts +38 -0
  365. package/dist/src/plugins/header/header-types.d.ts.map +1 -0
  366. package/dist/src/plugins/header/index.d.ts +3 -0
  367. package/dist/src/plugins/header/index.d.ts.map +1 -0
  368. package/dist/src/plugins/index.d.ts +40 -0
  369. package/dist/src/plugins/index.d.ts.map +1 -0
  370. package/dist/src/plugins/infinite-scroll/index.d.ts +3 -0
  371. package/dist/src/plugins/infinite-scroll/index.d.ts.map +1 -0
  372. package/dist/src/plugins/infinite-scroll/infinite-scroll-plugin.d.ts +27 -0
  373. package/dist/src/plugins/infinite-scroll/infinite-scroll-plugin.d.ts.map +1 -0
  374. package/dist/src/plugins/legacy-bridge/devtools-connector.d.ts +6 -0
  375. package/dist/src/plugins/legacy-bridge/devtools-connector.d.ts.map +1 -0
  376. package/dist/src/plugins/legacy-bridge/index.d.ts +3 -0
  377. package/dist/src/plugins/legacy-bridge/index.d.ts.map +1 -0
  378. package/dist/src/plugins/lifecycle/index.d.ts +3 -0
  379. package/dist/src/plugins/lifecycle/index.d.ts.map +1 -0
  380. package/dist/src/plugins/lifecycle/lifecycle-plugin.d.ts +16 -0
  381. package/dist/src/plugins/lifecycle/lifecycle-plugin.d.ts.map +1 -0
  382. package/dist/src/plugins/pagination/index.d.ts +3 -0
  383. package/dist/src/plugins/pagination/index.d.ts.map +1 -0
  384. package/dist/src/plugins/pagination/pagination-plugin.d.ts +13 -0
  385. package/dist/src/plugins/pagination/pagination-plugin.d.ts.map +1 -0
  386. package/dist/src/plugins/rendering/index.d.ts +3 -0
  387. package/dist/src/plugins/rendering/index.d.ts.map +1 -0
  388. package/dist/src/plugins/rendering/rendering-plugin.d.ts +22 -0
  389. package/dist/src/plugins/rendering/rendering-plugin.d.ts.map +1 -0
  390. package/dist/src/plugins/resize/index.d.ts +3 -0
  391. package/dist/src/plugins/resize/index.d.ts.map +1 -0
  392. package/dist/src/plugins/resize/resize-plugin.d.ts +6 -0
  393. package/dist/src/plugins/resize/resize-plugin.d.ts.map +1 -0
  394. package/dist/src/plugins/scroll/index.d.ts +3 -0
  395. package/dist/src/plugins/scroll/index.d.ts.map +1 -0
  396. package/dist/src/plugins/scroll/scroll-plugin.d.ts +5 -0
  397. package/dist/src/plugins/scroll/scroll-plugin.d.ts.map +1 -0
  398. package/dist/src/plugins/selection/index.d.ts +3 -0
  399. package/dist/src/plugins/selection/index.d.ts.map +1 -0
  400. package/dist/src/plugins/selection/selection-plugin.d.ts +26 -0
  401. package/dist/src/plugins/selection/selection-plugin.d.ts.map +1 -0
  402. package/dist/src/plugins/sort-plugin.d.ts +9 -0
  403. package/dist/src/plugins/sort-plugin.d.ts.map +1 -0
  404. package/dist/src/plugins/undo-redo/index.d.ts +3 -0
  405. package/dist/src/plugins/undo-redo/index.d.ts.map +1 -0
  406. package/dist/src/plugins/undo-redo/undo-redo-plugin.d.ts +14 -0
  407. package/dist/src/plugins/undo-redo/undo-redo-plugin.d.ts.map +1 -0
  408. package/dist/src/plugins/viewport/index.d.ts +2 -0
  409. package/dist/src/plugins/viewport/index.d.ts.map +1 -0
  410. package/dist/src/plugins/viewport/viewport-plugin.d.ts +3 -0
  411. package/dist/src/plugins/viewport/viewport-plugin.d.ts.map +1 -0
  412. package/dist/src/reactive/async-computed.d.ts +18 -0
  413. package/dist/src/reactive/async-computed.d.ts.map +1 -0
  414. package/dist/src/reactive/debug.d.ts +20 -0
  415. package/dist/src/reactive/debug.d.ts.map +1 -0
  416. package/dist/src/reactive/effect-scheduler.d.ts +7 -0
  417. package/dist/src/reactive/effect-scheduler.d.ts.map +1 -0
  418. package/dist/src/reactive/index.d.ts +9 -0
  419. package/dist/src/reactive/index.d.ts.map +1 -0
  420. package/dist/src/reactive/pipeline.d.ts +9 -0
  421. package/dist/src/reactive/pipeline.d.ts.map +1 -0
  422. package/dist/src/reactive/signal.d.ts +7 -0
  423. package/dist/src/reactive/signal.d.ts.map +1 -0
  424. package/dist/src/reactive/store.d.ts +29 -0
  425. package/dist/src/reactive/store.d.ts.map +1 -0
  426. package/dist/src/reactive/tracking.d.ts +22 -0
  427. package/dist/src/reactive/tracking.d.ts.map +1 -0
  428. package/dist/src/reactive/types.d.ts +116 -0
  429. package/dist/src/reactive/types.d.ts.map +1 -0
  430. package/dist/src/reactive/yield.d.ts +14 -0
  431. package/dist/src/reactive/yield.d.ts.map +1 -0
  432. package/dist/src/rendering/cache/renderer-cache.d.ts +4 -0
  433. package/dist/src/rendering/cache/renderer-cache.d.ts.map +1 -1
  434. package/dist/src/rendering/cell-pool/cell-pool.d.ts.map +1 -1
  435. package/dist/src/rendering/cell-positioner/cell-positioner.d.ts +46 -0
  436. package/dist/src/rendering/cell-positioner/cell-positioner.d.ts.map +1 -1
  437. package/dist/src/rendering/cell-positioner/cell-positioner.interface.d.ts +15 -0
  438. package/dist/src/rendering/cell-positioner/cell-positioner.interface.d.ts.map +1 -1
  439. package/dist/src/rendering/headers/header-config-resolver.d.ts +45 -0
  440. package/dist/src/rendering/headers/header-config-resolver.d.ts.map +1 -0
  441. package/dist/src/rendering/headers/header-registry.d.ts +86 -0
  442. package/dist/src/rendering/headers/header-registry.d.ts.map +1 -0
  443. package/dist/src/rendering/headers/header-renderer.interface.d.ts +106 -0
  444. package/dist/src/rendering/headers/header-renderer.interface.d.ts.map +1 -0
  445. package/dist/src/rendering/headers/index.d.ts +8 -0
  446. package/dist/src/rendering/headers/index.d.ts.map +1 -0
  447. package/dist/src/rendering/headers/renderers/checkbox-header-renderer.d.ts +25 -0
  448. package/dist/src/rendering/headers/renderers/checkbox-header-renderer.d.ts.map +1 -0
  449. package/dist/src/rendering/headers/renderers/filterable-header-renderer.d.ts +61 -0
  450. package/dist/src/rendering/headers/renderers/filterable-header-renderer.d.ts.map +1 -0
  451. package/dist/src/rendering/headers/renderers/icon-header-renderer.d.ts +25 -0
  452. package/dist/src/rendering/headers/renderers/icon-header-renderer.d.ts.map +1 -0
  453. package/dist/src/rendering/headers/renderers/index.d.ts +9 -0
  454. package/dist/src/rendering/headers/renderers/index.d.ts.map +1 -0
  455. package/dist/src/rendering/headers/renderers/sortable-header-renderer.d.ts +64 -0
  456. package/dist/src/rendering/headers/renderers/sortable-header-renderer.d.ts.map +1 -0
  457. package/dist/src/rendering/headers/renderers/text-header-renderer.d.ts +59 -0
  458. package/dist/src/rendering/headers/renderers/text-header-renderer.d.ts.map +1 -0
  459. package/dist/src/rendering/height-provider/height-provider.interface.d.ts +41 -0
  460. package/dist/src/rendering/height-provider/height-provider.interface.d.ts.map +1 -1
  461. package/dist/src/rendering/height-provider/index.d.ts +2 -1
  462. package/dist/src/rendering/height-provider/index.d.ts.map +1 -1
  463. package/dist/src/rendering/height-provider/segment-tree-height-provider.d.ts +87 -0
  464. package/dist/src/rendering/height-provider/segment-tree-height-provider.d.ts.map +1 -0
  465. package/dist/src/rendering/height-provider/uniform-height-provider.d.ts.map +1 -1
  466. package/dist/src/rendering/renderers/{advanced-cell-renderer.d.ts → advanced-cell/advanced-cell-renderer.d.ts} +1 -1
  467. package/dist/src/rendering/renderers/advanced-cell/advanced-cell-renderer.d.ts.map +1 -0
  468. package/dist/src/rendering/renderers/advanced-cell/index.d.ts +3 -0
  469. package/dist/src/rendering/renderers/advanced-cell/index.d.ts.map +1 -0
  470. package/dist/src/rendering/renderers/button/button-renderer.d.ts +148 -0
  471. package/dist/src/rendering/renderers/button/button-renderer.d.ts.map +1 -0
  472. package/dist/src/rendering/renderers/button/index.d.ts +3 -0
  473. package/dist/src/rendering/renderers/button/index.d.ts.map +1 -0
  474. package/dist/src/rendering/renderers/checkbox/checkbox-renderer.d.ts +92 -0
  475. package/dist/src/rendering/renderers/checkbox/checkbox-renderer.d.ts.map +1 -0
  476. package/dist/src/rendering/renderers/checkbox/index.d.ts +3 -0
  477. package/dist/src/rendering/renderers/checkbox/index.d.ts.map +1 -0
  478. package/dist/src/rendering/renderers/chip/chip-renderer.d.ts +213 -0
  479. package/dist/src/rendering/renderers/chip/chip-renderer.d.ts.map +1 -0
  480. package/dist/src/rendering/renderers/chip/index.d.ts +3 -0
  481. package/dist/src/rendering/renderers/chip/index.d.ts.map +1 -0
  482. package/dist/src/rendering/renderers/date-range/date-range-renderer.d.ts +128 -0
  483. package/dist/src/rendering/renderers/date-range/date-range-renderer.d.ts.map +1 -0
  484. package/dist/src/rendering/renderers/date-range/index.d.ts +3 -0
  485. package/dist/src/rendering/renderers/date-range/index.d.ts.map +1 -0
  486. package/dist/src/rendering/renderers/datetime/date-picker/date-picker-renderer.d.ts +55 -0
  487. package/dist/src/rendering/renderers/datetime/date-picker/date-picker-renderer.d.ts.map +1 -0
  488. package/dist/src/rendering/renderers/datetime/date-picker/dom.d.ts +41 -0
  489. package/dist/src/rendering/renderers/datetime/date-picker/dom.d.ts.map +1 -0
  490. package/dist/src/rendering/renderers/datetime/date-picker/index.d.ts +6 -0
  491. package/dist/src/rendering/renderers/datetime/date-picker/index.d.ts.map +1 -0
  492. package/dist/src/rendering/renderers/datetime/date-picker/types.d.ts +66 -0
  493. package/dist/src/rendering/renderers/datetime/date-picker/types.d.ts.map +1 -0
  494. package/dist/src/rendering/renderers/datetime/date-renderer.d.ts +32 -0
  495. package/dist/src/rendering/renderers/datetime/date-renderer.d.ts.map +1 -0
  496. package/dist/src/rendering/renderers/datetime/datetime-picker/datetime-picker-renderer.d.ts +37 -0
  497. package/dist/src/rendering/renderers/datetime/datetime-picker/datetime-picker-renderer.d.ts.map +1 -0
  498. package/dist/src/rendering/renderers/datetime/datetime-picker/index.d.ts +6 -0
  499. package/dist/src/rendering/renderers/datetime/datetime-picker/index.d.ts.map +1 -0
  500. package/dist/src/rendering/renderers/datetime/datetime-picker/types.d.ts +53 -0
  501. package/dist/src/rendering/renderers/datetime/datetime-picker/types.d.ts.map +1 -0
  502. package/dist/src/rendering/renderers/datetime/datetime-renderer.d.ts +39 -0
  503. package/dist/src/rendering/renderers/datetime/datetime-renderer.d.ts.map +1 -0
  504. package/dist/src/rendering/renderers/datetime/index.d.ts +18 -0
  505. package/dist/src/rendering/renderers/datetime/index.d.ts.map +1 -0
  506. package/dist/src/rendering/renderers/datetime/time-picker/index.d.ts +6 -0
  507. package/dist/src/rendering/renderers/datetime/time-picker/index.d.ts.map +1 -0
  508. package/dist/src/rendering/renderers/datetime/time-picker/time-picker-renderer.d.ts +31 -0
  509. package/dist/src/rendering/renderers/datetime/time-picker/time-picker-renderer.d.ts.map +1 -0
  510. package/dist/src/rendering/renderers/datetime/time-picker/types.d.ts +58 -0
  511. package/dist/src/rendering/renderers/datetime/time-picker/types.d.ts.map +1 -0
  512. package/dist/src/rendering/renderers/datetime/time-renderer.d.ts +38 -0
  513. package/dist/src/rendering/renderers/datetime/time-renderer.d.ts.map +1 -0
  514. package/dist/src/rendering/renderers/dropdown/dropdown-dom.d.ts +31 -0
  515. package/dist/src/rendering/renderers/dropdown/dropdown-dom.d.ts.map +1 -0
  516. package/dist/src/rendering/renderers/dropdown/dropdown-events.d.ts +43 -0
  517. package/dist/src/rendering/renderers/dropdown/dropdown-events.d.ts.map +1 -0
  518. package/dist/src/rendering/renderers/dropdown/dropdown-navigation.d.ts +30 -0
  519. package/dist/src/rendering/renderers/dropdown/dropdown-navigation.d.ts.map +1 -0
  520. package/dist/src/rendering/renderers/dropdown/dropdown-renderer.d.ts +89 -0
  521. package/dist/src/rendering/renderers/dropdown/dropdown-renderer.d.ts.map +1 -0
  522. package/dist/src/rendering/renderers/dropdown/dropdown-state.d.ts +57 -0
  523. package/dist/src/rendering/renderers/dropdown/dropdown-state.d.ts.map +1 -0
  524. package/dist/src/rendering/renderers/dropdown/dropdown-types.d.ts +44 -0
  525. package/dist/src/rendering/renderers/dropdown/dropdown-types.d.ts.map +1 -0
  526. package/dist/src/rendering/renderers/dropdown/index.d.ts +3 -0
  527. package/dist/src/rendering/renderers/dropdown/index.d.ts.map +1 -0
  528. package/dist/src/rendering/renderers/{image-renderer.d.ts → image/image-renderer.d.ts} +1 -1
  529. package/dist/src/rendering/renderers/image/image-renderer.d.ts.map +1 -0
  530. package/dist/src/rendering/renderers/image/index.d.ts +3 -0
  531. package/dist/src/rendering/renderers/image/index.d.ts.map +1 -0
  532. package/dist/src/rendering/renderers/index.d.ts +9 -7
  533. package/dist/src/rendering/renderers/index.d.ts.map +1 -1
  534. package/dist/src/rendering/renderers/link/index.d.ts +3 -0
  535. package/dist/src/rendering/renderers/link/index.d.ts.map +1 -0
  536. package/dist/src/rendering/renderers/link/link-renderer.d.ts +124 -0
  537. package/dist/src/rendering/renderers/link/link-renderer.d.ts.map +1 -0
  538. package/dist/src/rendering/renderers/number/index.d.ts +3 -0
  539. package/dist/src/rendering/renderers/number/index.d.ts.map +1 -0
  540. package/dist/src/rendering/renderers/{number-renderer.d.ts → number/number-renderer.d.ts} +1 -1
  541. package/dist/src/rendering/renderers/number/number-renderer.d.ts.map +1 -0
  542. package/dist/src/rendering/renderers/progress-bar/index.d.ts +3 -0
  543. package/dist/src/rendering/renderers/progress-bar/index.d.ts.map +1 -0
  544. package/dist/src/rendering/renderers/progress-bar/progress-bar-renderer.d.ts +134 -0
  545. package/dist/src/rendering/renderers/progress-bar/progress-bar-renderer.d.ts.map +1 -0
  546. package/dist/src/rendering/renderers/renderer-utils.d.ts +108 -0
  547. package/dist/src/rendering/renderers/renderer-utils.d.ts.map +1 -0
  548. package/dist/src/rendering/renderers/select/index.d.ts +3 -0
  549. package/dist/src/rendering/renderers/select/index.d.ts.map +1 -0
  550. package/dist/src/rendering/renderers/select/select-renderer.d.ts +150 -0
  551. package/dist/src/rendering/renderers/select/select-renderer.d.ts.map +1 -0
  552. package/dist/src/rendering/renderers/text/index.d.ts +2 -0
  553. package/dist/src/rendering/renderers/text/index.d.ts.map +1 -0
  554. package/dist/src/rendering/renderers/{text-renderer.d.ts → text/text-renderer.d.ts} +1 -1
  555. package/dist/src/rendering/renderers/text/text-renderer.d.ts.map +1 -0
  556. package/dist/src/rendering/spatial-hit-tester.d.ts.map +1 -1
  557. package/dist/src/rendering/virtual-scroller/index.d.ts +1 -1
  558. package/dist/src/rendering/virtual-scroller/index.d.ts.map +1 -1
  559. package/dist/src/rendering/virtual-scroller/virtual-scroller.d.ts +30 -2
  560. package/dist/src/rendering/virtual-scroller/virtual-scroller.d.ts.map +1 -1
  561. package/dist/src/rendering/virtual-scroller/virtual-scroller.interface.d.ts +14 -2
  562. package/dist/src/rendering/virtual-scroller/virtual-scroller.interface.d.ts.map +1 -1
  563. package/dist/src/rendering/width-provider/column-model-width-provider.d.ts +62 -0
  564. package/dist/src/rendering/width-provider/column-model-width-provider.d.ts.map +1 -0
  565. package/dist/src/rendering/width-provider/index.d.ts +1 -0
  566. package/dist/src/rendering/width-provider/index.d.ts.map +1 -1
  567. package/dist/src/rendering/width-provider/uniform-width-provider.d.ts.map +1 -1
  568. package/dist/src/selection/hit-tester.d.ts.map +1 -1
  569. package/dist/src/selection/range-utils.d.ts.map +1 -1
  570. package/dist/src/styles/grid.css +362 -356
  571. package/dist/src/styles.css +783 -34
  572. package/dist/src/theming/color-utils.d.ts +10 -0
  573. package/dist/src/theming/color-utils.d.ts.map +1 -0
  574. package/dist/src/theming/index.d.ts +10 -0
  575. package/dist/src/theming/index.d.ts.map +1 -0
  576. package/dist/src/theming/theme-builder.d.ts +46 -0
  577. package/dist/src/theming/theme-builder.d.ts.map +1 -0
  578. package/dist/src/theming/theme-manager.d.ts +11 -0
  579. package/dist/src/theming/theme-manager.d.ts.map +1 -0
  580. package/dist/src/theming/theme-registry.d.ts +17 -0
  581. package/dist/src/theming/theme-registry.d.ts.map +1 -0
  582. package/dist/src/theming/theme.interface.d.ts +88 -0
  583. package/dist/src/theming/theme.interface.d.ts.map +1 -0
  584. package/dist/src/theming/themes/dark.d.ts +3 -0
  585. package/dist/src/theming/themes/dark.d.ts.map +1 -0
  586. package/dist/src/theming/themes/dracula.d.ts +3 -0
  587. package/dist/src/theming/themes/dracula.d.ts.map +1 -0
  588. package/dist/src/theming/themes/github.d.ts +3 -0
  589. package/dist/src/theming/themes/github.d.ts.map +1 -0
  590. package/dist/src/theming/themes/index.d.ts +14 -0
  591. package/dist/src/theming/themes/index.d.ts.map +1 -0
  592. package/dist/src/theming/themes/light.d.ts +3 -0
  593. package/dist/src/theming/themes/light.d.ts.map +1 -0
  594. package/dist/src/theming/themes/material.d.ts +3 -0
  595. package/dist/src/theming/themes/material.d.ts.map +1 -0
  596. package/dist/src/theming/themes/nord.d.ts +3 -0
  597. package/dist/src/theming/themes/nord.d.ts.map +1 -0
  598. package/dist/src/theming/themes/one-dark.d.ts +3 -0
  599. package/dist/src/theming/themes/one-dark.d.ts.map +1 -0
  600. package/dist/src/theming/themes/solarized.d.ts +3 -0
  601. package/dist/src/theming/themes/solarized.d.ts.map +1 -0
  602. package/dist/src/touch/touch-handler.d.ts.map +1 -1
  603. package/dist/src/types/cell.d.ts +52 -0
  604. package/dist/src/types/cell.d.ts.map +1 -0
  605. package/dist/src/types/column.d.ts +74 -0
  606. package/dist/src/types/column.d.ts.map +1 -0
  607. package/dist/src/types/data.d.ts +101 -0
  608. package/dist/src/types/data.d.ts.map +1 -0
  609. package/dist/src/types/filter.d.ts +85 -0
  610. package/dist/src/types/filter.d.ts.map +1 -0
  611. package/dist/src/types/grid.d.ts +373 -0
  612. package/dist/src/types/grid.d.ts.map +1 -0
  613. package/dist/src/types/header.d.ts +129 -0
  614. package/dist/src/types/header.d.ts.map +1 -0
  615. package/dist/src/types/index.d.ts +12 -131
  616. package/dist/src/types/index.d.ts.map +1 -1
  617. package/dist/src/types/loading.d.ts +70 -0
  618. package/dist/src/types/loading.d.ts.map +1 -0
  619. package/dist/src/types/pagination.d.ts +99 -0
  620. package/dist/src/types/pagination.d.ts.map +1 -0
  621. package/dist/src/types/sort.d.ts +22 -0
  622. package/dist/src/types/sort.d.ts.map +1 -0
  623. package/dist/src/types.d.ts +2 -555
  624. package/dist/src/types.d.ts.map +1 -1
  625. package/dist/src/utils/dependency-graph.d.ts +58 -0
  626. package/dist/src/utils/dependency-graph.d.ts.map +1 -0
  627. package/dist/src/utils/event-emitter.d.ts +63 -0
  628. package/dist/src/utils/event-emitter.d.ts.map +1 -0
  629. package/dist/src/utils/index.d.ts +4 -0
  630. package/dist/src/utils/index.d.ts.map +1 -0
  631. package/package.json +48 -48
  632. package/dist/src/editing/date-editor.d.ts +0 -67
  633. package/dist/src/editing/date-editor.d.ts.map +0 -1
  634. package/dist/src/editing/editor-manager.d.ts.map +0 -1
  635. package/dist/src/editing/number-editor.d.ts.map +0 -1
  636. package/dist/src/editing/select-editor.d.ts.map +0 -1
  637. package/dist/src/editing/text-editor.d.ts +0 -69
  638. package/dist/src/editing/text-editor.d.ts.map +0 -1
  639. package/dist/src/features/filtering/filter-manager.d.ts +0 -408
  640. package/dist/src/features/filtering/filter-manager.d.ts.map +0 -1
  641. package/dist/src/rendering/renderers/advanced-cell-renderer.d.ts.map +0 -1
  642. package/dist/src/rendering/renderers/image-renderer.d.ts.map +0 -1
  643. package/dist/src/rendering/renderers/number-renderer.d.ts.map +0 -1
  644. package/dist/src/rendering/renderers/text-renderer.d.ts.map +0 -1
  645. package/dist/src/shared/algorithms/filter/bloom-filter.d.ts +0 -120
  646. package/dist/src/shared/algorithms/filter/bloom-filter.d.ts.map +0 -1
  647. package/dist/src/shared/algorithms/filter/index.d.ts +0 -7
  648. package/dist/src/shared/algorithms/filter/index.d.ts.map +0 -1
  649. package/dist/src/shared/algorithms/graph/bfs.d.ts +0 -71
  650. package/dist/src/shared/algorithms/graph/bfs.d.ts.map +0 -1
  651. package/dist/src/shared/algorithms/graph/dfs.d.ts +0 -62
  652. package/dist/src/shared/algorithms/graph/dfs.d.ts.map +0 -1
  653. package/dist/src/shared/algorithms/graph/graph.interface.d.ts +0 -63
  654. package/dist/src/shared/algorithms/graph/graph.interface.d.ts.map +0 -1
  655. package/dist/src/shared/algorithms/graph/index.d.ts +0 -9
  656. package/dist/src/shared/algorithms/graph/index.d.ts.map +0 -1
  657. package/dist/src/shared/algorithms/index.d.ts +0 -11
  658. package/dist/src/shared/algorithms/index.d.ts.map +0 -1
  659. package/dist/src/shared/algorithms/pattern/index.d.ts +0 -8
  660. package/dist/src/shared/algorithms/pattern/index.d.ts.map +0 -1
  661. package/dist/src/shared/algorithms/pattern/sequence-detector.d.ts +0 -62
  662. package/dist/src/shared/algorithms/pattern/sequence-detector.d.ts.map +0 -1
  663. package/dist/src/shared/algorithms/search/binary-search.d.ts +0 -86
  664. package/dist/src/shared/algorithms/search/binary-search.d.ts.map +0 -1
  665. package/dist/src/shared/algorithms/search/index.d.ts +0 -6
  666. package/dist/src/shared/algorithms/search/index.d.ts.map +0 -1
  667. package/dist/src/shared/algorithms/sorting/comparators.d.ts +0 -126
  668. package/dist/src/shared/algorithms/sorting/comparators.d.ts.map +0 -1
  669. package/dist/src/shared/algorithms/sorting/index.d.ts +0 -9
  670. package/dist/src/shared/algorithms/sorting/index.d.ts.map +0 -1
  671. package/dist/src/shared/algorithms/sorting/sorting.interface.d.ts +0 -38
  672. package/dist/src/shared/algorithms/sorting/sorting.interface.d.ts.map +0 -1
  673. package/dist/src/shared/algorithms/sorting/timsort.d.ts +0 -55
  674. package/dist/src/shared/algorithms/sorting/timsort.d.ts.map +0 -1
  675. package/dist/src/shared/data-structures/column-store/column-store.d.ts +0 -52
  676. package/dist/src/shared/data-structures/column-store/column-store.d.ts.map +0 -1
  677. package/dist/src/shared/data-structures/column-store/column-store.interface.d.ts +0 -155
  678. package/dist/src/shared/data-structures/column-store/column-store.interface.d.ts.map +0 -1
  679. package/dist/src/shared/data-structures/column-store/index.d.ts +0 -6
  680. package/dist/src/shared/data-structures/column-store/index.d.ts.map +0 -1
  681. package/dist/src/shared/data-structures/command-stack/command-stack.d.ts +0 -61
  682. package/dist/src/shared/data-structures/command-stack/command-stack.d.ts.map +0 -1
  683. package/dist/src/shared/data-structures/command-stack/command-stack.interface.d.ts +0 -80
  684. package/dist/src/shared/data-structures/command-stack/command-stack.interface.d.ts.map +0 -1
  685. package/dist/src/shared/data-structures/command-stack/index.d.ts +0 -3
  686. package/dist/src/shared/data-structures/command-stack/index.d.ts.map +0 -1
  687. package/dist/src/shared/data-structures/dependency-graph/dependency-graph.d.ts +0 -147
  688. package/dist/src/shared/data-structures/dependency-graph/dependency-graph.d.ts.map +0 -1
  689. package/dist/src/shared/data-structures/dependency-graph/dependency-graph.interface.d.ts +0 -161
  690. package/dist/src/shared/data-structures/dependency-graph/dependency-graph.interface.d.ts.map +0 -1
  691. package/dist/src/shared/data-structures/dependency-graph/index.d.ts +0 -8
  692. package/dist/src/shared/data-structures/dependency-graph/index.d.ts.map +0 -1
  693. package/dist/src/shared/data-structures/disjoint-set/disjoint-set.d.ts +0 -84
  694. package/dist/src/shared/data-structures/disjoint-set/disjoint-set.d.ts.map +0 -1
  695. package/dist/src/shared/data-structures/disjoint-set/disjoint-set.interface.d.ts +0 -185
  696. package/dist/src/shared/data-structures/disjoint-set/disjoint-set.interface.d.ts.map +0 -1
  697. package/dist/src/shared/data-structures/disjoint-set/index.d.ts +0 -7
  698. package/dist/src/shared/data-structures/disjoint-set/index.d.ts.map +0 -1
  699. package/dist/src/shared/data-structures/index-map/index-map.d.ts +0 -150
  700. package/dist/src/shared/data-structures/index-map/index-map.d.ts.map +0 -1
  701. package/dist/src/shared/data-structures/index-map/index-map.interface.d.ts +0 -186
  702. package/dist/src/shared/data-structures/index-map/index-map.interface.d.ts.map +0 -1
  703. package/dist/src/shared/data-structures/index-map/index.d.ts +0 -6
  704. package/dist/src/shared/data-structures/index-map/index.d.ts.map +0 -1
  705. package/dist/src/shared/data-structures/index.d.ts +0 -36
  706. package/dist/src/shared/data-structures/index.d.ts.map +0 -1
  707. package/dist/src/shared/data-structures/interval-tree/index.d.ts +0 -7
  708. package/dist/src/shared/data-structures/interval-tree/index.d.ts.map +0 -1
  709. package/dist/src/shared/data-structures/interval-tree/interval-tree.d.ts +0 -141
  710. package/dist/src/shared/data-structures/interval-tree/interval-tree.d.ts.map +0 -1
  711. package/dist/src/shared/data-structures/interval-tree/interval-tree.interface.d.ts +0 -212
  712. package/dist/src/shared/data-structures/interval-tree/interval-tree.interface.d.ts.map +0 -1
  713. package/dist/src/shared/data-structures/lru-cache/index.d.ts +0 -3
  714. package/dist/src/shared/data-structures/lru-cache/index.d.ts.map +0 -1
  715. package/dist/src/shared/data-structures/lru-cache/lru-cache.d.ts +0 -134
  716. package/dist/src/shared/data-structures/lru-cache/lru-cache.d.ts.map +0 -1
  717. package/dist/src/shared/data-structures/lru-cache/lru-cache.interface.d.ts +0 -173
  718. package/dist/src/shared/data-structures/lru-cache/lru-cache.interface.d.ts.map +0 -1
  719. package/dist/src/shared/data-structures/prefix-sum-array/index.d.ts +0 -6
  720. package/dist/src/shared/data-structures/prefix-sum-array/index.d.ts.map +0 -1
  721. package/dist/src/shared/data-structures/prefix-sum-array/prefix-sum-array.d.ts +0 -63
  722. package/dist/src/shared/data-structures/prefix-sum-array/prefix-sum-array.d.ts.map +0 -1
  723. package/dist/src/shared/data-structures/prefix-sum-array/prefix-sum-array.interface.d.ts +0 -80
  724. package/dist/src/shared/data-structures/prefix-sum-array/prefix-sum-array.interface.d.ts.map +0 -1
  725. package/dist/src/shared/data-structures/rtree/index.d.ts +0 -8
  726. package/dist/src/shared/data-structures/rtree/index.d.ts.map +0 -1
  727. package/dist/src/shared/data-structures/rtree/rtree.d.ts +0 -81
  728. package/dist/src/shared/data-structures/rtree/rtree.d.ts.map +0 -1
  729. package/dist/src/shared/data-structures/rtree/rtree.interface.d.ts +0 -143
  730. package/dist/src/shared/data-structures/rtree/rtree.interface.d.ts.map +0 -1
  731. package/dist/src/shared/data-structures/segment-tree/index.d.ts +0 -4
  732. package/dist/src/shared/data-structures/segment-tree/index.d.ts.map +0 -1
  733. package/dist/src/shared/data-structures/segment-tree/segment-tree.d.ts +0 -134
  734. package/dist/src/shared/data-structures/segment-tree/segment-tree.d.ts.map +0 -1
  735. package/dist/src/shared/data-structures/segment-tree/segment-tree.interface.d.ts +0 -202
  736. package/dist/src/shared/data-structures/segment-tree/segment-tree.interface.d.ts.map +0 -1
  737. package/dist/src/shared/data-structures/skip-list/index.d.ts +0 -4
  738. package/dist/src/shared/data-structures/skip-list/index.d.ts.map +0 -1
  739. package/dist/src/shared/data-structures/skip-list/skip-list.d.ts +0 -137
  740. package/dist/src/shared/data-structures/skip-list/skip-list.d.ts.map +0 -1
  741. package/dist/src/shared/data-structures/skip-list/skip-list.interface.d.ts +0 -223
  742. package/dist/src/shared/data-structures/skip-list/skip-list.interface.d.ts.map +0 -1
  743. package/dist/src/shared/data-structures/sparse-matrix/index.d.ts +0 -6
  744. package/dist/src/shared/data-structures/sparse-matrix/index.d.ts.map +0 -1
  745. package/dist/src/shared/data-structures/sparse-matrix/sparse-matrix.d.ts +0 -44
  746. package/dist/src/shared/data-structures/sparse-matrix/sparse-matrix.d.ts.map +0 -1
  747. package/dist/src/shared/data-structures/sparse-matrix/sparse-matrix.interface.d.ts +0 -105
  748. package/dist/src/shared/data-structures/sparse-matrix/sparse-matrix.interface.d.ts.map +0 -1
  749. package/dist/src/shared/data-structures/suffix-array/index.d.ts +0 -3
  750. package/dist/src/shared/data-structures/suffix-array/index.d.ts.map +0 -1
  751. package/dist/src/shared/data-structures/suffix-array/suffix-array.d.ts +0 -102
  752. package/dist/src/shared/data-structures/suffix-array/suffix-array.d.ts.map +0 -1
  753. package/dist/src/shared/data-structures/suffix-array/suffix-array.interface.d.ts +0 -117
  754. package/dist/src/shared/data-structures/suffix-array/suffix-array.interface.d.ts.map +0 -1
  755. package/dist/src/shared/data-structures/trie/index.d.ts +0 -8
  756. package/dist/src/shared/data-structures/trie/index.d.ts.map +0 -1
  757. package/dist/src/shared/data-structures/trie/trie.d.ts +0 -205
  758. package/dist/src/shared/data-structures/trie/trie.d.ts.map +0 -1
  759. package/dist/src/shared/data-structures/trie/trie.interface.d.ts +0 -117
  760. package/dist/src/shared/data-structures/trie/trie.interface.d.ts.map +0 -1
  761. package/dist/src/shared/index.d.ts +0 -47
  762. package/dist/src/shared/index.d.ts.map +0 -1
  763. package/dist/src/shared/patterns/coordinator.d.ts +0 -90
  764. package/dist/src/shared/patterns/coordinator.d.ts.map +0 -1
  765. package/dist/src/shared/patterns/event-emitter.d.ts +0 -106
  766. package/dist/src/shared/patterns/event-emitter.d.ts.map +0 -1
  767. package/dist/src/shared/patterns/factory.d.ts +0 -120
  768. package/dist/src/shared/patterns/factory.d.ts.map +0 -1
  769. package/dist/src/shared/patterns/index.d.ts +0 -21
  770. package/dist/src/shared/patterns/index.d.ts.map +0 -1
  771. package/dist/src/shared/patterns/mediator.d.ts +0 -116
  772. package/dist/src/shared/patterns/mediator.d.ts.map +0 -1
  773. package/dist/src/shared/patterns/object-pool.d.ts +0 -178
  774. package/dist/src/shared/patterns/object-pool.d.ts.map +0 -1
  775. package/dist/src/shared/patterns/observer.d.ts +0 -89
  776. package/dist/src/shared/patterns/observer.d.ts.map +0 -1
  777. package/dist/src/shared/patterns/operation-mode.d.ts +0 -75
  778. package/dist/src/shared/patterns/operation-mode.d.ts.map +0 -1
  779. package/dist/src/shared/patterns/state-machine.d.ts +0 -122
  780. package/dist/src/shared/patterns/state-machine.d.ts.map +0 -1
  781. package/dist/src/shared/types/common.d.ts +0 -56
  782. package/dist/src/shared/types/common.d.ts.map +0 -1
  783. package/dist/src/shared/types/index.d.ts +0 -5
  784. package/dist/src/shared/types/index.d.ts.map +0 -1
  785. package/dist/src/shared/utils/index.d.ts +0 -7
  786. package/dist/src/shared/utils/index.d.ts.map +0 -1
  787. package/dist/src/shared/utils/timing.d.ts +0 -104
  788. package/dist/src/shared/utils/timing.d.ts.map +0 -1
  789. package/dist/src/shared/utils/timing.interface.d.ts +0 -96
  790. package/dist/src/shared/utils/timing.interface.d.ts.map +0 -1
@@ -0,0 +1,86 @@
1
+ import type { HeaderRenderer } from './header-renderer.interface';
2
+ /**
3
+ * HeaderRendererRegistry - Named header renderer lookup
4
+ *
5
+ * Manages a collection of header renderers by name for dynamic lookup.
6
+ * Uses SingletonFactory from @zengrid/shared for efficient instance management.
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * const registry = new HeaderRendererRegistry();
11
+ * registry.register('sortable', () => new SortableHeaderRenderer());
12
+ * registry.register('filterable', () => new FilterableHeaderRenderer());
13
+ *
14
+ * const renderer = registry.get('sortable'); // Returns SortableHeaderRenderer (cached)
15
+ * const fallback = registry.get('unknown'); // Returns TextHeaderRenderer (default)
16
+ * ```
17
+ */
18
+ export declare class HeaderRendererRegistry {
19
+ private factory;
20
+ private defaultRenderer;
21
+ constructor();
22
+ /**
23
+ * Set the default renderer (typically TextHeaderRenderer)
24
+ * This should be called once during initialization
25
+ *
26
+ * @param renderer - Default header renderer instance
27
+ */
28
+ setDefaultRenderer(renderer: HeaderRenderer): void;
29
+ /**
30
+ * Register a header renderer with a name
31
+ *
32
+ * @param name - Unique renderer name (e.g., 'text', 'sortable', 'filterable')
33
+ * @param creator - Function that creates the renderer instance
34
+ *
35
+ * @example
36
+ * ```typescript
37
+ * registry.register('sortable', () => new SortableHeaderRenderer());
38
+ * ```
39
+ */
40
+ register(name: string, creator: () => HeaderRenderer): void;
41
+ /**
42
+ * Get a header renderer by name
43
+ *
44
+ * @param name - Renderer name (undefined returns default)
45
+ * @returns Renderer instance or default if not found
46
+ *
47
+ * @example
48
+ * ```typescript
49
+ * const renderer = registry.get('sortable'); // Get sortable renderer
50
+ * const defaultRenderer = registry.get(); // Get default renderer
51
+ * ```
52
+ */
53
+ get(name?: string): HeaderRenderer;
54
+ /**
55
+ * Check if a renderer is registered
56
+ *
57
+ * @param name - Renderer name
58
+ * @returns True if registered
59
+ */
60
+ has(name: string): boolean;
61
+ /**
62
+ * Unregister a renderer
63
+ *
64
+ * @param name - Renderer name
65
+ * @returns True if unregistered, false if not found or is default
66
+ */
67
+ unregister(name: string): boolean;
68
+ /**
69
+ * Get all registered renderer names
70
+ *
71
+ * @returns Array of registered renderer names
72
+ */
73
+ get names(): string[];
74
+ /**
75
+ * Clear all renderers except default
76
+ */
77
+ clear(): void;
78
+ /**
79
+ * Get the default renderer
80
+ * Throws error if default renderer is not set
81
+ *
82
+ * @returns Default header renderer
83
+ */
84
+ private getDefaultRenderer;
85
+ }
86
+ //# sourceMappingURL=header-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header-registry.d.ts","sourceRoot":"","sources":["../../../../src/rendering/headers/header-registry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAElE;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,OAAO,CAAmC;IAClD,OAAO,CAAC,eAAe,CAA+B;;IAMtD;;;;;OAKG;IACH,kBAAkB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IAIlD;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,cAAc,GAAG,IAAI;IAI3D;;;;;;;;;;;OAWG;IACH,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,cAAc;IASlC;;;;;OAKG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B;;;;;OAKG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAKjC;;;;OAIG;IACH,IAAI,KAAK,IAAI,MAAM,EAAE,CAEpB;IAED;;OAEG;IACH,KAAK,IAAI,IAAI;IASb;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;CAQ3B"}
@@ -0,0 +1,106 @@
1
+ import type { ColumnDef, ResolvedHeaderConfig } from '../../types';
2
+ /**
3
+ * Sort direction for header rendering
4
+ */
5
+ export type SortDirection = 'asc' | 'desc' | null;
6
+ /**
7
+ * Parameters passed to header renderers for rendering a header cell
8
+ */
9
+ export interface HeaderRenderParams {
10
+ /**
11
+ * Column index
12
+ */
13
+ columnIndex: number;
14
+ /**
15
+ * Column definition
16
+ */
17
+ column: ColumnDef;
18
+ /**
19
+ * Resolved header configuration
20
+ */
21
+ config: ResolvedHeaderConfig;
22
+ /**
23
+ * Column width in pixels
24
+ */
25
+ width: number;
26
+ /**
27
+ * Header height in pixels
28
+ */
29
+ height: number;
30
+ /**
31
+ * Current sort direction (if sortable)
32
+ */
33
+ sortDirection?: SortDirection;
34
+ /**
35
+ * Sort priority for multi-column sort (0 = primary sort)
36
+ */
37
+ sortPriority?: number;
38
+ /**
39
+ * Whether column has active filter
40
+ */
41
+ hasFilter?: boolean;
42
+ /**
43
+ * Whether column is being resized
44
+ */
45
+ isResizing?: boolean;
46
+ /**
47
+ * Whether header is hovered
48
+ */
49
+ isHovered?: boolean;
50
+ /**
51
+ * Whether header is focused
52
+ */
53
+ isFocused?: boolean;
54
+ /**
55
+ * Event emitter function for emitting grid events
56
+ */
57
+ emit?: (event: string, payload: any) => void;
58
+ }
59
+ /**
60
+ * Header renderer interface
61
+ *
62
+ * Follows the same pattern as CellRenderer for consistency.
63
+ * Renderers are responsible for creating and updating header content.
64
+ */
65
+ export interface HeaderRenderer {
66
+ /**
67
+ * Initial render into a DOM element
68
+ * Called when header is first created
69
+ *
70
+ * @param element - DOM element to render into
71
+ * @param params - Rendering parameters
72
+ */
73
+ render(element: HTMLElement, params: HeaderRenderParams): void;
74
+ /**
75
+ * Update an existing rendered element
76
+ * Called when header state changes (sort, filter, hover, etc.)
77
+ * Should be optimized for frequent calls
78
+ *
79
+ * @param element - DOM element to update
80
+ * @param params - Updated rendering parameters
81
+ */
82
+ update(element: HTMLElement, params: HeaderRenderParams): void;
83
+ /**
84
+ * Cleanup before element is removed
85
+ * Called when column is removed or grid is destroyed
86
+ *
87
+ * @param element - DOM element to cleanup
88
+ */
89
+ destroy(element: HTMLElement): void;
90
+ /**
91
+ * Optional: Get CSS class to apply to header cell based on state
92
+ * Useful for conditional styling
93
+ *
94
+ * @param params - Rendering parameters
95
+ * @returns CSS class name or undefined
96
+ */
97
+ getHeaderClass?(params: HeaderRenderParams): string | undefined;
98
+ /**
99
+ * Optional: Get inline styles to apply to header cell
100
+ *
101
+ * @param params - Rendering parameters
102
+ * @returns Style object or undefined
103
+ */
104
+ getHeaderStyle?(params: HeaderRenderParams): Partial<CSSStyleDeclaration> | undefined;
105
+ }
106
+ //# sourceMappingURL=header-renderer.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header-renderer.interface.d.ts","sourceRoot":"","sources":["../../../../src/rendering/headers/header-renderer.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,MAAM,EAAE,SAAS,CAAC;IAElB;;OAEG;IACH,MAAM,EAAE,oBAAoB,CAAC;IAE7B;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAE9B;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,IAAI,CAAC;CAC9C;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAE/D;;;;;;;OAOG;IACH,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAE/D;;;;;OAKG;IACH,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IAEpC;;;;;;OAMG;IACH,cAAc,CAAC,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,GAAG,SAAS,CAAC;IAEhE;;;;;OAKG;IACH,cAAc,CAAC,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAC;CACvF"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Header rendering module barrel export
3
+ */
4
+ export * from './header-renderer.interface';
5
+ export * from './header-config-resolver';
6
+ export * from './header-registry';
7
+ export * from './renderers';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/rendering/headers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC"}
@@ -0,0 +1,25 @@
1
+ import type { HeaderRenderer, HeaderRenderParams } from '../header-renderer.interface';
2
+ /**
3
+ * CheckboxHeaderRenderer - Header renderer for select-all checkbox
4
+ *
5
+ * Displays a checkbox in the header that can be used for row selection.
6
+ * Typically used in the first column for bulk selection.
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * const renderer = new CheckboxHeaderRenderer();
11
+ * renderer.render(element, {
12
+ * columnIndex: 0,
13
+ * column: { field: 'select', header: { text: '', type: 'checkbox' } },
14
+ * config: { text: '', type: 'checkbox', interactive: true },
15
+ * width: 40,
16
+ * height: 40,
17
+ * });
18
+ * ```
19
+ */
20
+ export declare class CheckboxHeaderRenderer implements HeaderRenderer {
21
+ render(element: HTMLElement, params: HeaderRenderParams): void;
22
+ update(element: HTMLElement, params: HeaderRenderParams): void;
23
+ destroy(element: HTMLElement): void;
24
+ }
25
+ //# sourceMappingURL=checkbox-header-renderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox-header-renderer.d.ts","sourceRoot":"","sources":["../../../../../src/rendering/headers/renderers/checkbox-header-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAEvF;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,sBAAuB,YAAW,cAAc;IAC3D,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IA0C9D,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAe9D,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;CAUpC"}
@@ -0,0 +1,61 @@
1
+ import { SortableHeaderRenderer } from './sortable-header-renderer';
2
+ import type { HeaderRenderParams } from '../header-renderer.interface';
3
+ /**
4
+ * FilterableHeaderRenderer - Header renderer with filter dropdown trigger
5
+ *
6
+ * Extends SortableHeaderRenderer and adds:
7
+ * - Filter dropdown trigger button
8
+ * - Active filter indicator
9
+ * - Filter icon/button with click handler
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * const renderer = new FilterableHeaderRenderer();
14
+ * renderer.render(element, {
15
+ * columnIndex: 0,
16
+ * column: { field: 'status', header: 'Status', filterable: true, sortable: true },
17
+ * config: {
18
+ * text: 'Status',
19
+ * type: 'filterable',
20
+ * interactive: true,
21
+ * filterIndicator: { show: true, icon: '▼' }
22
+ * },
23
+ * hasFilter: true,
24
+ * width: 200,
25
+ * height: 40,
26
+ * });
27
+ * ```
28
+ */
29
+ export declare class FilterableHeaderRenderer extends SortableHeaderRenderer {
30
+ /**
31
+ * Default filter icon
32
+ */
33
+ private static readonly DEFAULT_FILTER_ICON;
34
+ private static setFilterMeta;
35
+ private static getFilterMeta;
36
+ /**
37
+ * Initial render of filterable header
38
+ */
39
+ render(element: HTMLElement, params: HeaderRenderParams): void;
40
+ /**
41
+ * Update filterable header
42
+ */
43
+ update(element: HTMLElement, params: HeaderRenderParams): void;
44
+ /**
45
+ * Render filter trigger button
46
+ */
47
+ protected renderFilterTrigger(element: HTMLElement, params: HeaderRenderParams): void;
48
+ /**
49
+ * Update filter trigger button state
50
+ */
51
+ protected updateFilterTrigger(element: HTMLElement, params: HeaderRenderParams): void;
52
+ /**
53
+ * Get additional CSS class for filter state
54
+ */
55
+ getHeaderClass?(params: HeaderRenderParams): string | undefined;
56
+ /**
57
+ * Cleanup - remove filter button listeners
58
+ */
59
+ destroy(element: HTMLElement): void;
60
+ }
61
+ //# sourceMappingURL=filterable-header-renderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterable-header-renderer.d.ts","sourceRoot":"","sources":["../../../../../src/rendering/headers/renderers/filterable-header-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAEvE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,wBAAyB,SAAQ,sBAAsB;IAClE;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAO;IAElD,OAAO,CAAC,MAAM,CAAC,aAAa;IAW5B,OAAO,CAAC,MAAM,CAAC,aAAa;IAU5B;;OAEG;IACM,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAWvE;;OAEG;IACM,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAevE;;OAEG;IACH,SAAS,CAAC,mBAAmB,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IA0ErF;;OAEG;IACH,SAAS,CAAC,mBAAmB,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAkBrF;;OAEG;IACM,cAAc,CAAC,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,GAAG,SAAS;IAWxE;;OAEG;IACM,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;CAW7C"}
@@ -0,0 +1,25 @@
1
+ import type { HeaderRenderer, HeaderRenderParams } from '../header-renderer.interface';
2
+ /**
3
+ * IconHeaderRenderer - Header renderer for icon-only headers
4
+ *
5
+ * Displays only an icon without text, useful for action columns or narrow columns.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * const renderer = new IconHeaderRenderer();
10
+ * renderer.render(element, {
11
+ * columnIndex: 5,
12
+ * column: { field: 'actions', header: { text: '', type: 'icon', leadingIcon: { content: '⋮' } } },
13
+ * config: { text: '', type: 'icon', leadingIcon: { content: '⋮' }, interactive: true },
14
+ * width: 50,
15
+ * height: 40,
16
+ * });
17
+ * ```
18
+ */
19
+ export declare class IconHeaderRenderer implements HeaderRenderer {
20
+ render(element: HTMLElement, params: HeaderRenderParams): void;
21
+ update(element: HTMLElement, params: HeaderRenderParams): void;
22
+ destroy(element: HTMLElement): void;
23
+ getHeaderClass?(params: HeaderRenderParams): string | undefined;
24
+ }
25
+ //# sourceMappingURL=icon-header-renderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon-header-renderer.d.ts","sourceRoot":"","sources":["../../../../../src/rendering/headers/renderers/icon-header-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAEvF;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,kBAAmB,YAAW,cAAc;IACvD,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAoE9D,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAmB9D,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAOnC,cAAc,CAAC,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,GAAG,SAAS;CAQhE"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Header renderers barrel export
3
+ */
4
+ export { TextHeaderRenderer } from './text-header-renderer';
5
+ export { SortableHeaderRenderer } from './sortable-header-renderer';
6
+ export { FilterableHeaderRenderer } from './filterable-header-renderer';
7
+ export { CheckboxHeaderRenderer } from './checkbox-header-renderer';
8
+ export { IconHeaderRenderer } from './icon-header-renderer';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/rendering/headers/renderers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,64 @@
1
+ import { TextHeaderRenderer } from './text-header-renderer';
2
+ import type { HeaderRenderParams } from '../header-renderer.interface';
3
+ /**
4
+ * SortableHeaderRenderer - Header renderer with sort indicators
5
+ *
6
+ * Extends TextHeaderRenderer and adds:
7
+ * - Sort direction indicators (ascending/descending arrows)
8
+ * - Click-to-sort functionality
9
+ * - Visual feedback for sorted state
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * const renderer = new SortableHeaderRenderer();
14
+ * renderer.render(element, {
15
+ * columnIndex: 0,
16
+ * column: { field: 'name', header: 'Name', sortable: true },
17
+ * config: {
18
+ * text: 'Name',
19
+ * type: 'sortable',
20
+ * interactive: true,
21
+ * sortIndicator: { show: true, ascIcon: '▲', descIcon: '▼' }
22
+ * },
23
+ * sortDirection: 'asc',
24
+ * width: 200,
25
+ * height: 40,
26
+ * });
27
+ * ```
28
+ */
29
+ export declare class SortableHeaderRenderer extends TextHeaderRenderer {
30
+ /**
31
+ * Default sort icons
32
+ */
33
+ private static readonly DEFAULT_ASC_ICON;
34
+ private static readonly DEFAULT_DESC_ICON;
35
+ /**
36
+ * Initial render of sortable header
37
+ */
38
+ render(element: HTMLElement, params: HeaderRenderParams): void;
39
+ /**
40
+ * Update sortable header
41
+ */
42
+ update(element: HTMLElement, params: HeaderRenderParams): void;
43
+ /**
44
+ * Render sort indicator element
45
+ */
46
+ protected renderSortIndicator(element: HTMLElement, params: HeaderRenderParams): void;
47
+ /**
48
+ * Update sort indicator
49
+ */
50
+ protected updateSortIndicator(element: HTMLElement, params: HeaderRenderParams): void;
51
+ /**
52
+ * Update sort icon based on sort direction
53
+ */
54
+ protected updateSortIcon(sortEl: HTMLElement, params: HeaderRenderParams): void;
55
+ /**
56
+ * Setup sort click handler
57
+ */
58
+ protected setupSortClickHandler(element: HTMLElement, params: HeaderRenderParams): void;
59
+ /**
60
+ * Get additional CSS class for sorted state
61
+ */
62
+ getHeaderClass?(params: HeaderRenderParams): string | undefined;
63
+ }
64
+ //# sourceMappingURL=sortable-header-renderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sortable-header-renderer.d.ts","sourceRoot":"","sources":["../../../../../src/rendering/headers/renderers/sortable-header-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAEvE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,sBAAuB,SAAQ,kBAAkB;IAC5D;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAO;IAC/C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAO;IAEhD;;OAEG;IACM,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAiBvE;;OAEG;IACM,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAgBvE;;OAEG;IACH,SAAS,CAAC,mBAAmB,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAqCrF;;OAEG;IACH,SAAS,CAAC,mBAAmB,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAOrF;;OAEG;IACH,SAAS,CAAC,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IA+C/E;;OAEG;IACH,SAAS,CAAC,qBAAqB,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAmDvF;;OAEG;IACM,cAAc,CAAC,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,GAAG,SAAS;CAWzE"}
@@ -0,0 +1,59 @@
1
+ import type { HeaderRenderer, HeaderRenderParams } from '../header-renderer.interface';
2
+ import type { HeaderIcon } from '../../../types';
3
+ /**
4
+ * TextHeaderRenderer - Default header renderer for simple text headers
5
+ *
6
+ * Supports:
7
+ * - Text content
8
+ * - Leading and trailing icons
9
+ * - Tooltips
10
+ * - Custom CSS classes and styles
11
+ * - Click handlers
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * const renderer = new TextHeaderRenderer();
16
+ * renderer.render(element, {
17
+ * columnIndex: 0,
18
+ * column: { field: 'name', header: 'Name' },
19
+ * config: { text: 'Name', type: 'text', interactive: false },
20
+ * width: 200,
21
+ * height: 40,
22
+ * });
23
+ * ```
24
+ */
25
+ export declare class TextHeaderRenderer implements HeaderRenderer {
26
+ /**
27
+ * Initial render of header content
28
+ */
29
+ render(element: HTMLElement, params: HeaderRenderParams): void;
30
+ /**
31
+ * Update existing header content
32
+ */
33
+ update(element: HTMLElement, params: HeaderRenderParams): void;
34
+ /**
35
+ * Cleanup before removal
36
+ */
37
+ destroy(element: HTMLElement): void;
38
+ /**
39
+ * Get additional CSS class for header cell
40
+ */
41
+ getHeaderClass?(params: HeaderRenderParams): string | undefined;
42
+ /**
43
+ * Create icon element
44
+ */
45
+ protected createIconElement(icon: HeaderIcon, columnIndex: number): HTMLElement;
46
+ /**
47
+ * Setup event handlers for header element
48
+ */
49
+ protected setupEventHandlers(element: HTMLElement, params: HeaderRenderParams): void;
50
+ /**
51
+ * Setup tooltip for header element
52
+ */
53
+ protected setupTooltip(element: HTMLElement, tooltip: any): void;
54
+ /**
55
+ * Show context menu
56
+ */
57
+ protected showContextMenu(_event: MouseEvent, params: HeaderRenderParams): void;
58
+ }
59
+ //# sourceMappingURL=text-header-renderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-header-renderer.d.ts","sourceRoot":"","sources":["../../../../../src/rendering/headers/renderers/text-header-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACvF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,kBAAmB,YAAW,cAAc;IACvD;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IA+E9D;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IA6B9D;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAcnC;;OAEG;IACH,cAAc,CAAC,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,GAAG,SAAS;IAU/D;;OAEG;IACH,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,GAAG,WAAW;IA4B/E;;OAEG;IACH,SAAS,CAAC,kBAAkB,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAyDpF;;OAEG;IACH,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,GAAG,IAAI;IAKhE;;OAEG;IACH,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;CAMhF"}
@@ -39,11 +39,52 @@ export interface HeightProvider {
39
39
  * @complexity Varies by implementation
40
40
  */
41
41
  setHeight?(index: number, height: number): void;
42
+ /**
43
+ * Batch update multiple row heights efficiently (optional)
44
+ * More efficient than calling setHeight multiple times
45
+ * @param updates - Map of row index to new height
46
+ * @complexity Varies by implementation
47
+ */
48
+ batchSetHeight?(updates: Map<number, number>): void;
49
+ /**
50
+ * Subscribe to height changes (optional)
51
+ * @param callback - Function called when any height changes
52
+ * @returns Unsubscribe function
53
+ */
54
+ subscribe?(callback: (row: number, height: number) => void): () => void;
42
55
  /**
43
56
  * Total number of rows
44
57
  */
45
58
  readonly length: number;
46
59
  }
60
+ /**
61
+ * Callback for height changes
62
+ */
63
+ export type HeightChangeCallback = (row: number, height: number) => void;
64
+ /**
65
+ * Extended interface for dynamic height providers
66
+ * Supports invalidation and measurement status
67
+ */
68
+ export interface DynamicHeightProvider extends HeightProvider {
69
+ /**
70
+ * Mark a row for re-measurement
71
+ * @param row - Row index to invalidate
72
+ */
73
+ invalidate(row: number): void;
74
+ /**
75
+ * Mark all rows for re-measurement
76
+ */
77
+ invalidateAll(): void;
78
+ /**
79
+ * Get current measurement status
80
+ * @returns Object with measured, pending, and total counts
81
+ */
82
+ getMeasurementStatus(): {
83
+ measured: number;
84
+ pending: number;
85
+ total: number;
86
+ };
87
+ }
47
88
  /**
48
89
  * Options for creating a height provider
49
90
  */
@@ -1 +1 @@
1
- {"version":3,"file":"height-provider.interface.d.ts","sourceRoot":"","sources":["../../../../src/rendering/height-provider/height-provider.interface.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAEjC;;;;;OAKG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAEjC;;;;OAIG;IACH,cAAc,IAAI,MAAM,CAAC;IAEzB;;;;;OAKG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IAE1C;;;;;OAKG;IACH,SAAS,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhD;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC3B"}
1
+ {"version":3,"file":"height-provider.interface.d.ts","sourceRoot":"","sources":["../../../../src/rendering/height-provider/height-provider.interface.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAEjC;;;;;OAKG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAEjC;;;;OAIG;IACH,cAAc,IAAI,MAAM,CAAC;IAEzB;;;;;OAKG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IAE1C;;;;;OAKG;IACH,SAAS,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhD;;;;;OAKG;IACH,cAAc,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAEpD;;;;OAIG;IACH,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAExE;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;AAEzE;;;GAGG;AACH,MAAM,WAAW,qBAAsB,SAAQ,cAAc;IAC3D;;;OAGG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9B;;OAEG;IACH,aAAa,IAAI,IAAI,CAAC;IAEtB;;;OAGG;IACH,oBAAoB,IAAI;QACtB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC3B"}
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * HeightProvider - Strategy pattern for row height calculation
3
3
  */
4
- export type { HeightProvider, HeightProviderOptions } from './height-provider.interface';
4
+ export type { HeightProvider, HeightProviderOptions, HeightChangeCallback, DynamicHeightProvider, } from './height-provider.interface';
5
5
  export { UniformHeightProvider } from './uniform-height-provider';
6
6
  export { VariableHeightProvider } from './variable-height-provider';
7
+ export { SegmentTreeHeightProvider } from './segment-tree-height-provider';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/rendering/height-provider/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/rendering/height-provider/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EACV,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * SegmentTreeHeightProvider - O(log n) height updates using Segment Tree
3
+ *
4
+ * Uses SegmentTree from @zengrid/shared for efficient height management:
5
+ * - O(log n) single height updates (vs O(n) with PrefixSumArray)
6
+ * - O(log n) batch updates for k rows
7
+ * - O(log n) offset-to-index lookups
8
+ * - O(1) total height queries
9
+ *
10
+ * Performance comparison (100,000 rows):
11
+ * - Single update: PrefixSumArray O(n) = ~100k operations, SegmentTree O(log n) = ~17 operations
12
+ * - Batch 100 updates: PrefixSumArray O(k*n) = ~10M operations, SegmentTree O(k log n) = ~1700 operations
13
+ *
14
+ * Ideal for auto row height mode where frequent height updates occur during scrolling.
15
+ */
16
+ import type { HeightProvider, HeightChangeCallback } from './height-provider.interface';
17
+ export declare class SegmentTreeHeightProvider implements HeightProvider {
18
+ private tree;
19
+ private heights;
20
+ private subscribers;
21
+ private rowCount;
22
+ /**
23
+ * Creates a new SegmentTreeHeightProvider
24
+ * @param rowCount - Total number of rows
25
+ * @param defaultHeight - Initial height for all rows
26
+ */
27
+ constructor(rowCount: number, defaultHeight: number);
28
+ /**
29
+ * Get the height of a specific row
30
+ * @param index - Row index
31
+ * @returns Height in pixels
32
+ * @complexity O(1)
33
+ */
34
+ getHeight(index: number): number;
35
+ /**
36
+ * Get the Y offset where a row starts
37
+ * Uses segment tree range query for prefix sum
38
+ * @param index - Row index
39
+ * @returns Offset in pixels from top
40
+ * @complexity O(log n)
41
+ */
42
+ getOffset(index: number): number;
43
+ /**
44
+ * Get the total height of all rows
45
+ * @returns Total height in pixels
46
+ * @complexity O(log n)
47
+ */
48
+ getTotalHeight(): number;
49
+ /**
50
+ * Find which row contains a given Y offset
51
+ * Uses binary search on cumulative offsets
52
+ * @param offset - Y position in pixels
53
+ * @returns Row index at that offset
54
+ * @complexity O(log n) - binary search with O(log n) getOffset queries
55
+ */
56
+ findIndexAtOffset(offset: number): number;
57
+ /**
58
+ * Update the height of a specific row
59
+ * @param index - Row index
60
+ * @param height - New height in pixels
61
+ * @complexity O(log n)
62
+ */
63
+ setHeight(index: number, height: number): void;
64
+ /**
65
+ * Batch update multiple row heights efficiently
66
+ * @param updates - Map of row index to new height
67
+ * @complexity O(k log n) for k updates
68
+ */
69
+ batchSetHeight(updates: Map<number, number>): void;
70
+ /**
71
+ * Subscribe to height changes
72
+ * @param callback - Function called when any height changes
73
+ * @returns Unsubscribe function
74
+ */
75
+ subscribe(callback: HeightChangeCallback): () => void;
76
+ /**
77
+ * Notify all subscribers of a height change
78
+ * @param row - Row that changed
79
+ * @param height - New height
80
+ */
81
+ private notifySubscribers;
82
+ /**
83
+ * Total number of rows
84
+ */
85
+ get length(): number;
86
+ }
87
+ //# sourceMappingURL=segment-tree-height-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"segment-tree-height-provider.d.ts","sourceRoot":"","sources":["../../../../src/rendering/height-provider/segment-tree-height-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAExF,qBAAa,yBAA0B,YAAW,cAAc;IAC9D,OAAO,CAAC,IAAI,CAAsB;IAClC,OAAO,CAAC,OAAO,CAAW;IAC1B,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,QAAQ,CAAS;IAEzB;;;;OAIG;gBACS,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;IAmBnD;;;;;OAKG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAOhC;;;;;;OAMG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAWhC;;;;OAIG;IACH,cAAc,IAAI,MAAM;IAOxB;;;;;;OAMG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IA4BzC;;;;;OAKG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAoB9C;;;;OAIG;IACH,cAAc,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IA8BlD;;;;OAIG;IACH,SAAS,CAAC,QAAQ,EAAE,oBAAoB,GAAG,MAAM,IAAI;IAOrD;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAUzB;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;CACF"}