@zengrid/core 1.0.6 → 1.1.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 (763) hide show
  1. package/README.md +3 -0
  2. package/dist/README.md +3 -0
  3. package/dist/index.cjs.js +28065 -7303
  4. package/dist/index.esm.js +27956 -7291
  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/date-range/calendar-manager.d.ts +17 -0
  66. package/dist/src/editing/date-range/calendar-manager.d.ts.map +1 -0
  67. package/dist/src/editing/date-range/event-handlers.d.ts +30 -0
  68. package/dist/src/editing/date-range/event-handlers.d.ts.map +1 -0
  69. package/dist/src/editing/date-range/formatters.d.ts +26 -0
  70. package/dist/src/editing/date-range/formatters.d.ts.map +1 -0
  71. package/dist/src/editing/date-range/positioning.d.ts +14 -0
  72. package/dist/src/editing/date-range/positioning.d.ts.map +1 -0
  73. package/dist/src/editing/date-range/types.d.ts +41 -0
  74. package/dist/src/editing/date-range/types.d.ts.map +1 -0
  75. package/dist/src/editing/date-range/ui-builder.d.ts +33 -0
  76. package/dist/src/editing/date-range/ui-builder.d.ts.map +1 -0
  77. package/dist/src/editing/date-range/validator.d.ts +7 -0
  78. package/dist/src/editing/date-range/validator.d.ts.map +1 -0
  79. package/dist/src/editing/datetime/date-editor/date-editor.d.ts +64 -0
  80. package/dist/src/editing/datetime/date-editor/date-editor.d.ts.map +1 -0
  81. package/dist/src/editing/datetime/date-editor/index.d.ts +6 -0
  82. package/dist/src/editing/datetime/date-editor/index.d.ts.map +1 -0
  83. package/dist/src/editing/datetime/date-editor/types.d.ts +58 -0
  84. package/dist/src/editing/datetime/date-editor/types.d.ts.map +1 -0
  85. package/dist/src/editing/datetime/date-range-editor/date-range-calendar.d.ts +15 -0
  86. package/dist/src/editing/datetime/date-range-editor/date-range-calendar.d.ts.map +1 -0
  87. package/dist/src/editing/datetime/date-range-editor/date-range-dom.d.ts +22 -0
  88. package/dist/src/editing/datetime/date-range-editor/date-range-dom.d.ts.map +1 -0
  89. package/dist/src/editing/datetime/date-range-editor/date-range-editor.d.ts +33 -0
  90. package/dist/src/editing/datetime/date-range-editor/date-range-editor.d.ts.map +1 -0
  91. package/dist/src/editing/datetime/date-range-editor/date-range-validation.d.ts +7 -0
  92. package/dist/src/editing/datetime/date-range-editor/date-range-validation.d.ts.map +1 -0
  93. package/dist/src/editing/datetime/date-range-editor/index.d.ts +6 -0
  94. package/dist/src/editing/datetime/date-range-editor/index.d.ts.map +1 -0
  95. package/dist/src/editing/datetime/date-range-editor/types.d.ts +61 -0
  96. package/dist/src/editing/datetime/date-range-editor/types.d.ts.map +1 -0
  97. package/dist/src/editing/datetime/datetime-editor/datetime-editor.d.ts +51 -0
  98. package/dist/src/editing/datetime/datetime-editor/datetime-editor.d.ts.map +1 -0
  99. package/dist/src/editing/datetime/datetime-editor/index.d.ts +6 -0
  100. package/dist/src/editing/datetime/datetime-editor/index.d.ts.map +1 -0
  101. package/dist/src/editing/datetime/datetime-editor/types.d.ts +58 -0
  102. package/dist/src/editing/datetime/datetime-editor/types.d.ts.map +1 -0
  103. package/dist/src/editing/datetime/index.d.ts +14 -0
  104. package/dist/src/editing/datetime/index.d.ts.map +1 -0
  105. package/dist/src/editing/datetime/time-editor/index.d.ts +6 -0
  106. package/dist/src/editing/datetime/time-editor/index.d.ts.map +1 -0
  107. package/dist/src/editing/datetime/time-editor/time-editor.d.ts +42 -0
  108. package/dist/src/editing/datetime/time-editor/time-editor.d.ts.map +1 -0
  109. package/dist/src/editing/datetime/time-editor/types.d.ts +63 -0
  110. package/dist/src/editing/datetime/time-editor/types.d.ts.map +1 -0
  111. package/dist/src/editing/dropdown/dropdown-editor.d.ts +35 -0
  112. package/dist/src/editing/dropdown/dropdown-editor.d.ts.map +1 -0
  113. package/dist/src/editing/dropdown/dropdown-manager.d.ts +26 -0
  114. package/dist/src/editing/dropdown/dropdown-manager.d.ts.map +1 -0
  115. package/dist/src/editing/dropdown/event-handlers.d.ts +24 -0
  116. package/dist/src/editing/dropdown/event-handlers.d.ts.map +1 -0
  117. package/dist/src/editing/dropdown/index.d.ts +3 -0
  118. package/dist/src/editing/dropdown/index.d.ts.map +1 -0
  119. package/dist/src/editing/dropdown/search-filter.d.ts +26 -0
  120. package/dist/src/editing/dropdown/search-filter.d.ts.map +1 -0
  121. package/dist/src/editing/dropdown/types.d.ts +51 -0
  122. package/dist/src/editing/dropdown/types.d.ts.map +1 -0
  123. package/dist/src/editing/dropdown/ui-builder.d.ts +27 -0
  124. package/dist/src/editing/dropdown/ui-builder.d.ts.map +1 -0
  125. package/dist/src/editing/dropdown/validators.d.ts +7 -0
  126. package/dist/src/editing/dropdown/validators.d.ts.map +1 -0
  127. package/dist/src/editing/{editor-manager.d.ts → editor-manager/editor-manager.d.ts} +49 -4
  128. package/dist/src/editing/editor-manager/editor-manager.d.ts.map +1 -0
  129. package/dist/src/editing/editor-manager/index.d.ts +3 -0
  130. package/dist/src/editing/editor-manager/index.d.ts.map +1 -0
  131. package/dist/src/editing/index.d.ts +11 -9
  132. package/dist/src/editing/index.d.ts.map +1 -1
  133. package/dist/src/editing/number/index.d.ts +3 -0
  134. package/dist/src/editing/number/index.d.ts.map +1 -0
  135. package/dist/src/editing/{number-editor.d.ts → number/number-editor.d.ts} +1 -1
  136. package/dist/src/editing/number/number-editor.d.ts.map +1 -0
  137. package/dist/src/editing/select/index.d.ts +3 -0
  138. package/dist/src/editing/select/index.d.ts.map +1 -0
  139. package/dist/src/editing/{select-editor.d.ts → select/select-editor.d.ts} +1 -1
  140. package/dist/src/editing/select/select-editor.d.ts.map +1 -0
  141. package/dist/src/editing/text/index.d.ts +3 -0
  142. package/dist/src/editing/text/index.d.ts.map +1 -0
  143. package/dist/src/editing/text/text-editor.d.ts +188 -0
  144. package/dist/src/editing/text/text-editor.d.ts.map +1 -0
  145. package/dist/src/events/event-emitter.d.ts.map +1 -1
  146. package/dist/src/events/grid-events.d.ts +70 -7
  147. package/dist/src/events/grid-events.d.ts.map +1 -1
  148. package/dist/src/features/autofill/autofill-manager.d.ts.map +1 -1
  149. package/dist/src/features/column-drag/column-drag-command.d.ts +60 -0
  150. package/dist/src/features/column-drag/column-drag-command.d.ts.map +1 -0
  151. package/dist/src/features/column-drag/column-drag-manager.d.ts +75 -0
  152. package/dist/src/features/column-drag/column-drag-manager.d.ts.map +1 -0
  153. package/dist/src/features/column-drag/column-drag-manager.interface.d.ts +263 -0
  154. package/dist/src/features/column-drag/column-drag-manager.interface.d.ts.map +1 -0
  155. package/dist/src/features/column-drag/column-drag.styles.css +100 -0
  156. package/dist/src/features/column-drag/drag-callbacks.d.ts +13 -0
  157. package/dist/src/features/column-drag/drag-callbacks.d.ts.map +1 -0
  158. package/dist/src/features/column-drag/drag-event-handlers.d.ts +26 -0
  159. package/dist/src/features/column-drag/drag-event-handlers.d.ts.map +1 -0
  160. package/dist/src/features/column-drag/drag-keyboard-handler.d.ts +77 -0
  161. package/dist/src/features/column-drag/drag-keyboard-handler.d.ts.map +1 -0
  162. package/dist/src/features/column-drag/drag-lifecycle.d.ts +28 -0
  163. package/dist/src/features/column-drag/drag-lifecycle.d.ts.map +1 -0
  164. package/dist/src/features/column-drag/drag-mouse-handler.d.ts +57 -0
  165. package/dist/src/features/column-drag/drag-mouse-handler.d.ts.map +1 -0
  166. package/dist/src/features/column-drag/drag-operations.d.ts +43 -0
  167. package/dist/src/features/column-drag/drag-operations.d.ts.map +1 -0
  168. package/dist/src/features/column-drag/drag-state-machine.d.ts +10 -0
  169. package/dist/src/features/column-drag/drag-state-machine.d.ts.map +1 -0
  170. package/dist/src/features/column-drag/drag-state-manager.d.ts +80 -0
  171. package/dist/src/features/column-drag/drag-state-manager.d.ts.map +1 -0
  172. package/dist/src/features/column-drag/drag-touch-handler.d.ts +90 -0
  173. package/dist/src/features/column-drag/drag-touch-handler.d.ts.map +1 -0
  174. package/dist/src/features/column-drag/drag-visual-feedback.d.ts +74 -0
  175. package/dist/src/features/column-drag/drag-visual-feedback.d.ts.map +1 -0
  176. package/dist/src/features/column-drag/drop-zone-detector.d.ts +53 -0
  177. package/dist/src/features/column-drag/drop-zone-detector.d.ts.map +1 -0
  178. package/dist/src/features/column-drag/index.d.ts +17 -0
  179. package/dist/src/features/column-drag/index.d.ts.map +1 -0
  180. package/dist/src/features/column-groups/column-group-manager.d.ts +159 -0
  181. package/dist/src/features/column-groups/column-group-manager.d.ts.map +1 -0
  182. package/dist/src/features/column-groups/column-group-model.d.ts +108 -0
  183. package/dist/src/features/column-groups/column-group-model.d.ts.map +1 -0
  184. package/dist/src/features/column-groups/column-group-renderer.d.ts +163 -0
  185. package/dist/src/features/column-groups/column-group-renderer.d.ts.map +1 -0
  186. package/dist/src/features/column-groups/event-subscription-manager.d.ts +32 -0
  187. package/dist/src/features/column-groups/event-subscription-manager.d.ts.map +1 -0
  188. package/dist/src/features/column-groups/group-operations.d.ts +54 -0
  189. package/dist/src/features/column-groups/group-operations.d.ts.map +1 -0
  190. package/dist/src/features/column-groups/group-renderer-controller.d.ts +27 -0
  191. package/dist/src/features/column-groups/group-renderer-controller.d.ts.map +1 -0
  192. package/dist/src/features/column-groups/index.d.ts +14 -0
  193. package/dist/src/features/column-groups/index.d.ts.map +1 -0
  194. package/dist/src/features/column-groups/manager-options.d.ts +56 -0
  195. package/dist/src/features/column-groups/manager-options.d.ts.map +1 -0
  196. package/dist/src/features/column-groups/model-query-adapter.d.ts +49 -0
  197. package/dist/src/features/column-groups/model-query-adapter.d.ts.map +1 -0
  198. package/dist/src/features/column-groups/renderer-registry.d.ts +197 -0
  199. package/dist/src/features/column-groups/renderer-registry.d.ts.map +1 -0
  200. package/dist/src/features/column-groups/types.d.ts +100 -0
  201. package/dist/src/features/column-groups/types.d.ts.map +1 -0
  202. package/dist/src/features/column-resize/auto-fit-calculator.d.ts +21 -2
  203. package/dist/src/features/column-resize/auto-fit-calculator.d.ts.map +1 -1
  204. package/dist/src/features/column-resize/column-resize-manager.d.ts +4 -62
  205. package/dist/src/features/column-resize/column-resize-manager.d.ts.map +1 -1
  206. package/dist/src/features/column-resize/column-resize-manager.interface.d.ts +22 -1
  207. package/dist/src/features/column-resize/column-resize-manager.interface.d.ts.map +1 -1
  208. package/dist/src/features/column-resize/data-source-adapter.d.ts +20 -0
  209. package/dist/src/features/column-resize/data-source-adapter.d.ts.map +1 -0
  210. package/dist/src/features/column-resize/event-handlers.d.ts +90 -0
  211. package/dist/src/features/column-resize/event-handlers.d.ts.map +1 -0
  212. package/dist/src/features/column-resize/handle-coordinator.d.ts +19 -0
  213. package/dist/src/features/column-resize/handle-coordinator.d.ts.map +1 -0
  214. package/dist/src/features/column-resize/index.d.ts +4 -1
  215. package/dist/src/features/column-resize/index.d.ts.map +1 -1
  216. package/dist/src/features/column-resize/initialization.d.ts +19 -0
  217. package/dist/src/features/column-resize/initialization.d.ts.map +1 -0
  218. package/dist/src/features/column-resize/lifecycle-manager.d.ts +58 -0
  219. package/dist/src/features/column-resize/lifecycle-manager.d.ts.map +1 -0
  220. package/dist/src/features/column-resize/programmatic-operations.d.ts +35 -0
  221. package/dist/src/features/column-resize/programmatic-operations.d.ts.map +1 -0
  222. package/dist/src/features/column-resize/resize-constraint-manager.d.ts +11 -0
  223. package/dist/src/features/column-resize/resize-constraint-manager.d.ts.map +1 -1
  224. package/dist/src/features/column-resize/resize-handle-renderer.d.ts +1 -1
  225. package/dist/src/features/column-resize/resize-handle-renderer.d.ts.map +1 -1
  226. package/dist/src/features/column-resize/resize-test-helper.d.ts.map +1 -1
  227. package/dist/src/features/column-resize/resize-zone-detector.d.ts.map +1 -1
  228. package/dist/src/features/column-resize/width-notifier.d.ts +15 -0
  229. package/dist/src/features/column-resize/width-notifier.d.ts.map +1 -0
  230. package/dist/src/features/columns/column-model.d.ts +107 -0
  231. package/dist/src/features/columns/column-model.d.ts.map +1 -0
  232. package/dist/src/features/columns/index.d.ts +39 -0
  233. package/dist/src/features/columns/index.d.ts.map +1 -0
  234. package/dist/src/features/columns/plugins/column-pin.d.ts +61 -0
  235. package/dist/src/features/columns/plugins/column-pin.d.ts.map +1 -0
  236. package/dist/src/features/columns/plugins/column-reorder.d.ts +44 -0
  237. package/dist/src/features/columns/plugins/column-reorder.d.ts.map +1 -0
  238. package/dist/src/features/columns/plugins/column-visibility.d.ts +103 -0
  239. package/dist/src/features/columns/plugins/column-visibility.d.ts.map +1 -0
  240. package/dist/src/features/columns/plugins/index.d.ts +34 -0
  241. package/dist/src/features/columns/plugins/index.d.ts.map +1 -0
  242. package/dist/src/features/columns/types.d.ts +189 -0
  243. package/dist/src/features/columns/types.d.ts.map +1 -0
  244. package/dist/src/features/copy-paste/clipboard-manager.d.ts.map +1 -1
  245. package/dist/src/features/export/csv-exporter.d.ts +32 -0
  246. package/dist/src/features/export/csv-exporter.d.ts.map +1 -0
  247. package/dist/src/features/export/index.d.ts +3 -0
  248. package/dist/src/features/export/index.d.ts.map +1 -0
  249. package/dist/src/features/filtering/adapters/graphql-adapter.d.ts.map +1 -1
  250. package/dist/src/features/filtering/adapters/rest-adapter.d.ts.map +1 -1
  251. package/dist/src/features/filtering/adapters/sql-adapter.d.ts.map +1 -1
  252. package/dist/src/features/filtering/filter-cache.d.ts.map +1 -1
  253. package/dist/src/features/filtering/filter-export-manager.d.ts.map +1 -1
  254. package/dist/src/features/filtering/filter-index-manager.d.ts.map +1 -1
  255. package/dist/src/features/filtering/filter-manager/filter-core.d.ts +85 -0
  256. package/dist/src/features/filtering/filter-manager/filter-core.d.ts.map +1 -0
  257. package/dist/src/features/filtering/filter-manager/filter-export.d.ts +84 -0
  258. package/dist/src/features/filtering/filter-manager/filter-export.d.ts.map +1 -0
  259. package/dist/src/features/filtering/filter-manager/filter-optimizer.d.ts +76 -0
  260. package/dist/src/features/filtering/filter-manager/filter-optimizer.d.ts.map +1 -0
  261. package/dist/src/features/filtering/filter-manager/filter-query.d.ts +79 -0
  262. package/dist/src/features/filtering/filter-manager/filter-query.d.ts.map +1 -0
  263. package/dist/src/features/filtering/filter-manager/index.d.ts +182 -0
  264. package/dist/src/features/filtering/filter-manager/index.d.ts.map +1 -0
  265. package/dist/src/features/filtering/filter-manager/types.d.ts +91 -0
  266. package/dist/src/features/filtering/filter-manager/types.d.ts.map +1 -0
  267. package/dist/src/features/filtering/filter-query-parser.d.ts.map +1 -1
  268. package/dist/src/features/filtering/range-filter-optimizer.d.ts.map +1 -1
  269. package/dist/src/features/hit-testing/spatial-hit-tester.d.ts.map +1 -1
  270. package/dist/src/features/loading/loading-indicator.d.ts.map +1 -1
  271. package/dist/src/features/pagination/paginator.d.ts.map +1 -1
  272. package/dist/src/features/row-height/index.d.ts +8 -0
  273. package/dist/src/features/row-height/index.d.ts.map +1 -0
  274. package/dist/src/features/row-height/row-height-manager.d.ts +86 -0
  275. package/dist/src/features/row-height/row-height-manager.d.ts.map +1 -0
  276. package/dist/src/features/selection/selection-manager.d.ts.map +1 -1
  277. package/dist/src/features/sorting/index.d.ts +3 -0
  278. package/dist/src/features/sorting/index.d.ts.map +1 -1
  279. package/dist/src/features/sorting/multi-column-sorter.d.ts +170 -0
  280. package/dist/src/features/sorting/multi-column-sorter.d.ts.map +1 -0
  281. package/dist/src/features/sorting/row-sorter.interface.d.ts.map +1 -1
  282. package/dist/src/features/sorting/single-column-sorter.d.ts.map +1 -1
  283. package/dist/src/features/sorting/sort-manager.d.ts.map +1 -1
  284. package/dist/src/features/sorting/sort-state-manager.d.ts +184 -0
  285. package/dist/src/features/sorting/sort-state-manager.d.ts.map +1 -0
  286. package/dist/src/features/sorting/types.d.ts +87 -0
  287. package/dist/src/features/sorting/types.d.ts.map +1 -0
  288. package/dist/src/features/undo-redo/undo-redo-manager.d.ts.map +1 -1
  289. package/dist/src/features/viewport/index.d.ts +11 -0
  290. package/dist/src/features/viewport/index.d.ts.map +1 -0
  291. package/dist/src/features/viewport/scroll-model.d.ts +57 -0
  292. package/dist/src/features/viewport/scroll-model.d.ts.map +1 -0
  293. package/dist/src/features/viewport/types.d.ts +61 -0
  294. package/dist/src/features/viewport/types.d.ts.map +1 -0
  295. package/dist/src/features/viewport/viewport-model.d.ts +64 -0
  296. package/dist/src/features/viewport/viewport-model.d.ts.map +1 -0
  297. package/dist/src/grid/data.d.ts +74 -0
  298. package/dist/src/grid/data.d.ts.map +1 -0
  299. package/dist/src/grid/dom.d.ts +37 -0
  300. package/dist/src/grid/dom.d.ts.map +1 -0
  301. package/dist/src/grid/drag.d.ts +50 -0
  302. package/dist/src/grid/drag.d.ts.map +1 -0
  303. package/dist/src/grid/filter-ui.d.ts +41 -0
  304. package/dist/src/grid/filter-ui.d.ts.map +1 -0
  305. package/dist/src/grid/grid-api.d.ts +22 -0
  306. package/dist/src/grid/grid-api.d.ts.map +1 -0
  307. package/dist/src/grid/grid-column-methods.d.ts +37 -0
  308. package/dist/src/grid/grid-column-methods.d.ts.map +1 -0
  309. package/dist/src/grid/grid-context.d.ts +47 -0
  310. package/dist/src/grid/grid-context.d.ts.map +1 -0
  311. package/dist/src/grid/grid-core.d.ts +134 -0
  312. package/dist/src/grid/grid-core.d.ts.map +1 -0
  313. package/dist/src/grid/grid-editing.d.ts +43 -0
  314. package/dist/src/grid/grid-editing.d.ts.map +1 -0
  315. package/dist/src/grid/grid-export.d.ts +18 -0
  316. package/dist/src/grid/grid-export.d.ts.map +1 -0
  317. package/dist/src/grid/grid-filter-methods.d.ts +24 -0
  318. package/dist/src/grid/grid-filter-methods.d.ts.map +1 -0
  319. package/dist/src/grid/grid-header-methods.d.ts +10 -0
  320. package/dist/src/grid/grid-header-methods.d.ts.map +1 -0
  321. package/dist/src/grid/grid-lifecycle.d.ts +10 -0
  322. package/dist/src/grid/grid-lifecycle.d.ts.map +1 -0
  323. package/dist/src/grid/grid-setup.d.ts +5 -0
  324. package/dist/src/grid/grid-setup.d.ts.map +1 -0
  325. package/dist/src/grid/grid-sort-methods.d.ts +17 -0
  326. package/dist/src/grid/grid-sort-methods.d.ts.map +1 -0
  327. package/dist/src/grid/grid-state.d.ts +17 -0
  328. package/dist/src/grid/grid-state.d.ts.map +1 -0
  329. package/dist/src/grid/grid-wiring.d.ts +11 -0
  330. package/dist/src/grid/grid-wiring.d.ts.map +1 -0
  331. package/dist/src/grid/header-dom-operations.d.ts +26 -0
  332. package/dist/src/grid/header-dom-operations.d.ts.map +1 -0
  333. package/dist/src/grid/header-event-handlers.d.ts +35 -0
  334. package/dist/src/grid/header-event-handlers.d.ts.map +1 -0
  335. package/dist/src/grid/header-manager.d.ts +119 -0
  336. package/dist/src/grid/header-manager.d.ts.map +1 -0
  337. package/dist/src/grid/header-reactive-subscription.d.ts +18 -0
  338. package/dist/src/grid/header-reactive-subscription.d.ts.map +1 -0
  339. package/dist/src/grid/header-registry-setup.d.ts +9 -0
  340. package/dist/src/grid/header-registry-setup.d.ts.map +1 -0
  341. package/dist/src/grid/header-render-params.d.ts +12 -0
  342. package/dist/src/grid/header-render-params.d.ts.map +1 -0
  343. package/dist/src/grid/header-rendering.d.ts +23 -0
  344. package/dist/src/grid/header-rendering.d.ts.map +1 -0
  345. package/dist/src/grid/header-types.d.ts +38 -0
  346. package/dist/src/grid/header-types.d.ts.map +1 -0
  347. package/dist/src/grid/index.d.ts +12 -0
  348. package/dist/src/grid/index.d.ts.map +1 -0
  349. package/dist/src/grid/init.d.ts +56 -0
  350. package/dist/src/grid/init.d.ts.map +1 -0
  351. package/dist/src/grid/pagination.d.ts +63 -0
  352. package/dist/src/grid/pagination.d.ts.map +1 -0
  353. package/dist/src/grid/plugin-host.d.ts +16 -0
  354. package/dist/src/grid/plugin-host.d.ts.map +1 -0
  355. package/dist/src/grid/resize.d.ts +87 -0
  356. package/dist/src/grid/resize.d.ts.map +1 -0
  357. package/dist/src/grid/scroll.d.ts +86 -0
  358. package/dist/src/grid/scroll.d.ts.map +1 -0
  359. package/dist/src/grid.d.ts +5 -412
  360. package/dist/src/grid.d.ts.map +1 -1
  361. package/dist/src/index.d.ts +69 -5
  362. package/dist/src/index.d.ts.map +1 -1
  363. package/dist/src/plugins/async-filter-plugin.d.ts +7 -0
  364. package/dist/src/plugins/async-filter-plugin.d.ts.map +1 -0
  365. package/dist/src/plugins/async-sort-plugin.d.ts +8 -0
  366. package/dist/src/plugins/async-sort-plugin.d.ts.map +1 -0
  367. package/dist/src/plugins/core-plugin.d.ts +6 -0
  368. package/dist/src/plugins/core-plugin.d.ts.map +1 -0
  369. package/dist/src/plugins/editing/editing-plugin.d.ts +16 -0
  370. package/dist/src/plugins/editing/editing-plugin.d.ts.map +1 -0
  371. package/dist/src/plugins/editing/index.d.ts +3 -0
  372. package/dist/src/plugins/editing/index.d.ts.map +1 -0
  373. package/dist/src/plugins/filter-plugin.d.ts +10 -0
  374. package/dist/src/plugins/filter-plugin.d.ts.map +1 -0
  375. package/dist/src/plugins/filter-ui/filter-ui-plugin.d.ts +10 -0
  376. package/dist/src/plugins/filter-ui/filter-ui-plugin.d.ts.map +1 -0
  377. package/dist/src/plugins/filter-ui/index.d.ts +3 -0
  378. package/dist/src/plugins/filter-ui/index.d.ts.map +1 -0
  379. package/dist/src/plugins/index.d.ts +29 -0
  380. package/dist/src/plugins/index.d.ts.map +1 -0
  381. package/dist/src/plugins/infinite-scroll/index.d.ts +3 -0
  382. package/dist/src/plugins/infinite-scroll/index.d.ts.map +1 -0
  383. package/dist/src/plugins/infinite-scroll/infinite-scroll-plugin.d.ts +25 -0
  384. package/dist/src/plugins/infinite-scroll/infinite-scroll-plugin.d.ts.map +1 -0
  385. package/dist/src/plugins/legacy-bridge/devtools-connector.d.ts +6 -0
  386. package/dist/src/plugins/legacy-bridge/devtools-connector.d.ts.map +1 -0
  387. package/dist/src/plugins/legacy-bridge/index.d.ts +4 -0
  388. package/dist/src/plugins/legacy-bridge/index.d.ts.map +1 -0
  389. package/dist/src/plugins/legacy-bridge/legacy-api-plugin.d.ts +3 -0
  390. package/dist/src/plugins/legacy-bridge/legacy-api-plugin.d.ts.map +1 -0
  391. package/dist/src/plugins/resize/index.d.ts +3 -0
  392. package/dist/src/plugins/resize/index.d.ts.map +1 -0
  393. package/dist/src/plugins/resize/resize-plugin.d.ts +6 -0
  394. package/dist/src/plugins/resize/resize-plugin.d.ts.map +1 -0
  395. package/dist/src/plugins/scroll/index.d.ts +3 -0
  396. package/dist/src/plugins/scroll/index.d.ts.map +1 -0
  397. package/dist/src/plugins/scroll/scroll-plugin.d.ts +5 -0
  398. package/dist/src/plugins/scroll/scroll-plugin.d.ts.map +1 -0
  399. package/dist/src/plugins/selection/index.d.ts +3 -0
  400. package/dist/src/plugins/selection/index.d.ts.map +1 -0
  401. package/dist/src/plugins/selection/selection-plugin.d.ts +26 -0
  402. package/dist/src/plugins/selection/selection-plugin.d.ts.map +1 -0
  403. package/dist/src/plugins/sort-plugin.d.ts +9 -0
  404. package/dist/src/plugins/sort-plugin.d.ts.map +1 -0
  405. package/dist/src/plugins/undo-redo/index.d.ts +3 -0
  406. package/dist/src/plugins/undo-redo/index.d.ts.map +1 -0
  407. package/dist/src/plugins/undo-redo/undo-redo-plugin.d.ts +14 -0
  408. package/dist/src/plugins/undo-redo/undo-redo-plugin.d.ts.map +1 -0
  409. package/dist/src/plugins/viewport/index.d.ts +2 -0
  410. package/dist/src/plugins/viewport/index.d.ts.map +1 -0
  411. package/dist/src/plugins/viewport/viewport-plugin.d.ts +3 -0
  412. package/dist/src/plugins/viewport/viewport-plugin.d.ts.map +1 -0
  413. package/dist/src/reactive/async-computed.d.ts +18 -0
  414. package/dist/src/reactive/async-computed.d.ts.map +1 -0
  415. package/dist/src/reactive/debug.d.ts +17 -0
  416. package/dist/src/reactive/debug.d.ts.map +1 -0
  417. package/dist/src/reactive/effect-scheduler.d.ts +7 -0
  418. package/dist/src/reactive/effect-scheduler.d.ts.map +1 -0
  419. package/dist/src/reactive/index.d.ts +9 -0
  420. package/dist/src/reactive/index.d.ts.map +1 -0
  421. package/dist/src/reactive/pipeline.d.ts +9 -0
  422. package/dist/src/reactive/pipeline.d.ts.map +1 -0
  423. package/dist/src/reactive/signal.d.ts +7 -0
  424. package/dist/src/reactive/signal.d.ts.map +1 -0
  425. package/dist/src/reactive/store.d.ts +27 -0
  426. package/dist/src/reactive/store.d.ts.map +1 -0
  427. package/dist/src/reactive/tracking.d.ts +22 -0
  428. package/dist/src/reactive/tracking.d.ts.map +1 -0
  429. package/dist/src/reactive/types.d.ts +113 -0
  430. package/dist/src/reactive/types.d.ts.map +1 -0
  431. package/dist/src/reactive/yield.d.ts +14 -0
  432. package/dist/src/reactive/yield.d.ts.map +1 -0
  433. package/dist/src/rendering/cell-pool/cell-pool.d.ts.map +1 -1
  434. package/dist/src/rendering/cell-positioner/cell-positioner.d.ts +41 -0
  435. package/dist/src/rendering/cell-positioner/cell-positioner.d.ts.map +1 -1
  436. package/dist/src/rendering/cell-positioner/cell-positioner.interface.d.ts +6 -0
  437. package/dist/src/rendering/cell-positioner/cell-positioner.interface.d.ts.map +1 -1
  438. package/dist/src/rendering/headers/header-config-resolver.d.ts +45 -0
  439. package/dist/src/rendering/headers/header-config-resolver.d.ts.map +1 -0
  440. package/dist/src/rendering/headers/header-registry.d.ts +86 -0
  441. package/dist/src/rendering/headers/header-registry.d.ts.map +1 -0
  442. package/dist/src/rendering/headers/header-renderer.interface.d.ts +106 -0
  443. package/dist/src/rendering/headers/header-renderer.interface.d.ts.map +1 -0
  444. package/dist/src/rendering/headers/index.d.ts +8 -0
  445. package/dist/src/rendering/headers/index.d.ts.map +1 -0
  446. package/dist/src/rendering/headers/renderers/checkbox-header-renderer.d.ts +25 -0
  447. package/dist/src/rendering/headers/renderers/checkbox-header-renderer.d.ts.map +1 -0
  448. package/dist/src/rendering/headers/renderers/filterable-header-renderer.d.ts +61 -0
  449. package/dist/src/rendering/headers/renderers/filterable-header-renderer.d.ts.map +1 -0
  450. package/dist/src/rendering/headers/renderers/icon-header-renderer.d.ts +25 -0
  451. package/dist/src/rendering/headers/renderers/icon-header-renderer.d.ts.map +1 -0
  452. package/dist/src/rendering/headers/renderers/index.d.ts +9 -0
  453. package/dist/src/rendering/headers/renderers/index.d.ts.map +1 -0
  454. package/dist/src/rendering/headers/renderers/sortable-header-renderer.d.ts +64 -0
  455. package/dist/src/rendering/headers/renderers/sortable-header-renderer.d.ts.map +1 -0
  456. package/dist/src/rendering/headers/renderers/text-header-renderer.d.ts +59 -0
  457. package/dist/src/rendering/headers/renderers/text-header-renderer.d.ts.map +1 -0
  458. package/dist/src/rendering/height-provider/height-provider.interface.d.ts +41 -0
  459. package/dist/src/rendering/height-provider/height-provider.interface.d.ts.map +1 -1
  460. package/dist/src/rendering/height-provider/index.d.ts +2 -1
  461. package/dist/src/rendering/height-provider/index.d.ts.map +1 -1
  462. package/dist/src/rendering/height-provider/segment-tree-height-provider.d.ts +87 -0
  463. package/dist/src/rendering/height-provider/segment-tree-height-provider.d.ts.map +1 -0
  464. package/dist/src/rendering/height-provider/uniform-height-provider.d.ts.map +1 -1
  465. package/dist/src/rendering/renderers/{advanced-cell-renderer.d.ts → advanced-cell/advanced-cell-renderer.d.ts} +1 -1
  466. package/dist/src/rendering/renderers/advanced-cell/advanced-cell-renderer.d.ts.map +1 -0
  467. package/dist/src/rendering/renderers/advanced-cell/index.d.ts +3 -0
  468. package/dist/src/rendering/renderers/advanced-cell/index.d.ts.map +1 -0
  469. package/dist/src/rendering/renderers/button/button-renderer.d.ts +148 -0
  470. package/dist/src/rendering/renderers/button/button-renderer.d.ts.map +1 -0
  471. package/dist/src/rendering/renderers/button/index.d.ts +3 -0
  472. package/dist/src/rendering/renderers/button/index.d.ts.map +1 -0
  473. package/dist/src/rendering/renderers/checkbox/checkbox-renderer.d.ts +92 -0
  474. package/dist/src/rendering/renderers/checkbox/checkbox-renderer.d.ts.map +1 -0
  475. package/dist/src/rendering/renderers/checkbox/index.d.ts +3 -0
  476. package/dist/src/rendering/renderers/checkbox/index.d.ts.map +1 -0
  477. package/dist/src/rendering/renderers/chip/chip-renderer.d.ts +213 -0
  478. package/dist/src/rendering/renderers/chip/chip-renderer.d.ts.map +1 -0
  479. package/dist/src/rendering/renderers/chip/index.d.ts +3 -0
  480. package/dist/src/rendering/renderers/chip/index.d.ts.map +1 -0
  481. package/dist/src/rendering/renderers/date/date-renderer.d.ts +156 -0
  482. package/dist/src/rendering/renderers/date/date-renderer.d.ts.map +1 -0
  483. package/dist/src/rendering/renderers/date/index.d.ts +3 -0
  484. package/dist/src/rendering/renderers/date/index.d.ts.map +1 -0
  485. package/dist/src/rendering/renderers/date-range/date-range-renderer.d.ts +128 -0
  486. package/dist/src/rendering/renderers/date-range/date-range-renderer.d.ts.map +1 -0
  487. package/dist/src/rendering/renderers/date-range/index.d.ts +3 -0
  488. package/dist/src/rendering/renderers/date-range/index.d.ts.map +1 -0
  489. package/dist/src/rendering/renderers/datetime/date-picker/date-picker-renderer.d.ts +55 -0
  490. package/dist/src/rendering/renderers/datetime/date-picker/date-picker-renderer.d.ts.map +1 -0
  491. package/dist/src/rendering/renderers/datetime/date-picker/dom.d.ts +41 -0
  492. package/dist/src/rendering/renderers/datetime/date-picker/dom.d.ts.map +1 -0
  493. package/dist/src/rendering/renderers/datetime/date-picker/index.d.ts +6 -0
  494. package/dist/src/rendering/renderers/datetime/date-picker/index.d.ts.map +1 -0
  495. package/dist/src/rendering/renderers/datetime/date-picker/types.d.ts +66 -0
  496. package/dist/src/rendering/renderers/datetime/date-picker/types.d.ts.map +1 -0
  497. package/dist/src/rendering/renderers/datetime/date-renderer.d.ts +32 -0
  498. package/dist/src/rendering/renderers/datetime/date-renderer.d.ts.map +1 -0
  499. package/dist/src/rendering/renderers/datetime/datetime-picker/datetime-picker-renderer.d.ts +37 -0
  500. package/dist/src/rendering/renderers/datetime/datetime-picker/datetime-picker-renderer.d.ts.map +1 -0
  501. package/dist/src/rendering/renderers/datetime/datetime-picker/index.d.ts +6 -0
  502. package/dist/src/rendering/renderers/datetime/datetime-picker/index.d.ts.map +1 -0
  503. package/dist/src/rendering/renderers/datetime/datetime-picker/types.d.ts +53 -0
  504. package/dist/src/rendering/renderers/datetime/datetime-picker/types.d.ts.map +1 -0
  505. package/dist/src/rendering/renderers/datetime/datetime-renderer.d.ts +39 -0
  506. package/dist/src/rendering/renderers/datetime/datetime-renderer.d.ts.map +1 -0
  507. package/dist/src/rendering/renderers/datetime/index.d.ts +18 -0
  508. package/dist/src/rendering/renderers/datetime/index.d.ts.map +1 -0
  509. package/dist/src/rendering/renderers/datetime/time-picker/index.d.ts +6 -0
  510. package/dist/src/rendering/renderers/datetime/time-picker/index.d.ts.map +1 -0
  511. package/dist/src/rendering/renderers/datetime/time-picker/time-picker-renderer.d.ts +31 -0
  512. package/dist/src/rendering/renderers/datetime/time-picker/time-picker-renderer.d.ts.map +1 -0
  513. package/dist/src/rendering/renderers/datetime/time-picker/types.d.ts +58 -0
  514. package/dist/src/rendering/renderers/datetime/time-picker/types.d.ts.map +1 -0
  515. package/dist/src/rendering/renderers/datetime/time-renderer.d.ts +38 -0
  516. package/dist/src/rendering/renderers/datetime/time-renderer.d.ts.map +1 -0
  517. package/dist/src/rendering/renderers/dropdown/dropdown-dom.d.ts +31 -0
  518. package/dist/src/rendering/renderers/dropdown/dropdown-dom.d.ts.map +1 -0
  519. package/dist/src/rendering/renderers/dropdown/dropdown-events.d.ts +43 -0
  520. package/dist/src/rendering/renderers/dropdown/dropdown-events.d.ts.map +1 -0
  521. package/dist/src/rendering/renderers/dropdown/dropdown-navigation.d.ts +30 -0
  522. package/dist/src/rendering/renderers/dropdown/dropdown-navigation.d.ts.map +1 -0
  523. package/dist/src/rendering/renderers/dropdown/dropdown-renderer.d.ts +89 -0
  524. package/dist/src/rendering/renderers/dropdown/dropdown-renderer.d.ts.map +1 -0
  525. package/dist/src/rendering/renderers/dropdown/dropdown-state.d.ts +57 -0
  526. package/dist/src/rendering/renderers/dropdown/dropdown-state.d.ts.map +1 -0
  527. package/dist/src/rendering/renderers/dropdown/dropdown-types.d.ts +44 -0
  528. package/dist/src/rendering/renderers/dropdown/dropdown-types.d.ts.map +1 -0
  529. package/dist/src/rendering/renderers/dropdown/index.d.ts +3 -0
  530. package/dist/src/rendering/renderers/dropdown/index.d.ts.map +1 -0
  531. package/dist/src/rendering/renderers/{image-renderer.d.ts → image/image-renderer.d.ts} +1 -1
  532. package/dist/src/rendering/renderers/image/image-renderer.d.ts.map +1 -0
  533. package/dist/src/rendering/renderers/image/index.d.ts +3 -0
  534. package/dist/src/rendering/renderers/image/index.d.ts.map +1 -0
  535. package/dist/src/rendering/renderers/index.d.ts +9 -7
  536. package/dist/src/rendering/renderers/index.d.ts.map +1 -1
  537. package/dist/src/rendering/renderers/link/index.d.ts +3 -0
  538. package/dist/src/rendering/renderers/link/index.d.ts.map +1 -0
  539. package/dist/src/rendering/renderers/link/link-renderer.d.ts +124 -0
  540. package/dist/src/rendering/renderers/link/link-renderer.d.ts.map +1 -0
  541. package/dist/src/rendering/renderers/number/index.d.ts +3 -0
  542. package/dist/src/rendering/renderers/number/index.d.ts.map +1 -0
  543. package/dist/src/rendering/renderers/{number-renderer.d.ts → number/number-renderer.d.ts} +1 -1
  544. package/dist/src/rendering/renderers/number/number-renderer.d.ts.map +1 -0
  545. package/dist/src/rendering/renderers/progress-bar/index.d.ts +3 -0
  546. package/dist/src/rendering/renderers/progress-bar/index.d.ts.map +1 -0
  547. package/dist/src/rendering/renderers/progress-bar/progress-bar-renderer.d.ts +134 -0
  548. package/dist/src/rendering/renderers/progress-bar/progress-bar-renderer.d.ts.map +1 -0
  549. package/dist/src/rendering/renderers/renderer-utils.d.ts +108 -0
  550. package/dist/src/rendering/renderers/renderer-utils.d.ts.map +1 -0
  551. package/dist/src/rendering/renderers/select/index.d.ts +3 -0
  552. package/dist/src/rendering/renderers/select/index.d.ts.map +1 -0
  553. package/dist/src/rendering/renderers/select/select-renderer.d.ts +150 -0
  554. package/dist/src/rendering/renderers/select/select-renderer.d.ts.map +1 -0
  555. package/dist/src/rendering/renderers/text/index.d.ts +2 -0
  556. package/dist/src/rendering/renderers/text/index.d.ts.map +1 -0
  557. package/dist/src/rendering/renderers/{text-renderer.d.ts → text/text-renderer.d.ts} +1 -1
  558. package/dist/src/rendering/renderers/text/text-renderer.d.ts.map +1 -0
  559. package/dist/src/rendering/spatial-hit-tester.d.ts.map +1 -1
  560. package/dist/src/rendering/virtual-scroller/index.d.ts +1 -1
  561. package/dist/src/rendering/virtual-scroller/index.d.ts.map +1 -1
  562. package/dist/src/rendering/virtual-scroller/virtual-scroller.d.ts +26 -2
  563. package/dist/src/rendering/virtual-scroller/virtual-scroller.d.ts.map +1 -1
  564. package/dist/src/rendering/virtual-scroller/virtual-scroller.interface.d.ts +14 -2
  565. package/dist/src/rendering/virtual-scroller/virtual-scroller.interface.d.ts.map +1 -1
  566. package/dist/src/rendering/width-provider/column-model-width-provider.d.ts +63 -0
  567. package/dist/src/rendering/width-provider/column-model-width-provider.d.ts.map +1 -0
  568. package/dist/src/rendering/width-provider/index.d.ts +1 -0
  569. package/dist/src/rendering/width-provider/index.d.ts.map +1 -1
  570. package/dist/src/rendering/width-provider/uniform-width-provider.d.ts.map +1 -1
  571. package/dist/src/selection/hit-tester.d.ts.map +1 -1
  572. package/dist/src/selection/range-utils.d.ts.map +1 -1
  573. package/dist/src/styles/grid.css +13 -7
  574. package/dist/src/styles.css +712 -12
  575. package/dist/src/touch/touch-handler.d.ts.map +1 -1
  576. package/dist/src/types/cell.d.ts +52 -0
  577. package/dist/src/types/cell.d.ts.map +1 -0
  578. package/dist/src/types/column.d.ts +74 -0
  579. package/dist/src/types/column.d.ts.map +1 -0
  580. package/dist/src/types/data.d.ts +101 -0
  581. package/dist/src/types/data.d.ts.map +1 -0
  582. package/dist/src/types/filter.d.ts +85 -0
  583. package/dist/src/types/filter.d.ts.map +1 -0
  584. package/dist/src/types/grid.d.ts +363 -0
  585. package/dist/src/types/grid.d.ts.map +1 -0
  586. package/dist/src/types/header.d.ts +129 -0
  587. package/dist/src/types/header.d.ts.map +1 -0
  588. package/dist/src/types/index.d.ts +12 -131
  589. package/dist/src/types/index.d.ts.map +1 -1
  590. package/dist/src/types/loading.d.ts +70 -0
  591. package/dist/src/types/loading.d.ts.map +1 -0
  592. package/dist/src/types/pagination.d.ts +99 -0
  593. package/dist/src/types/pagination.d.ts.map +1 -0
  594. package/dist/src/types/sort.d.ts +22 -0
  595. package/dist/src/types/sort.d.ts.map +1 -0
  596. package/dist/src/types.d.ts +2 -555
  597. package/dist/src/types.d.ts.map +1 -1
  598. package/dist/src/utils/dependency-graph.d.ts +58 -0
  599. package/dist/src/utils/dependency-graph.d.ts.map +1 -0
  600. package/dist/src/utils/event-emitter.d.ts +63 -0
  601. package/dist/src/utils/event-emitter.d.ts.map +1 -0
  602. package/dist/src/utils/index.d.ts +4 -0
  603. package/dist/src/utils/index.d.ts.map +1 -0
  604. package/package.json +48 -48
  605. package/dist/src/editing/date-editor.d.ts +0 -67
  606. package/dist/src/editing/date-editor.d.ts.map +0 -1
  607. package/dist/src/editing/editor-manager.d.ts.map +0 -1
  608. package/dist/src/editing/number-editor.d.ts.map +0 -1
  609. package/dist/src/editing/select-editor.d.ts.map +0 -1
  610. package/dist/src/editing/text-editor.d.ts +0 -69
  611. package/dist/src/editing/text-editor.d.ts.map +0 -1
  612. package/dist/src/features/filtering/filter-manager.d.ts +0 -408
  613. package/dist/src/features/filtering/filter-manager.d.ts.map +0 -1
  614. package/dist/src/rendering/renderers/advanced-cell-renderer.d.ts.map +0 -1
  615. package/dist/src/rendering/renderers/image-renderer.d.ts.map +0 -1
  616. package/dist/src/rendering/renderers/number-renderer.d.ts.map +0 -1
  617. package/dist/src/rendering/renderers/text-renderer.d.ts.map +0 -1
  618. package/dist/src/shared/algorithms/filter/bloom-filter.d.ts +0 -120
  619. package/dist/src/shared/algorithms/filter/bloom-filter.d.ts.map +0 -1
  620. package/dist/src/shared/algorithms/filter/index.d.ts +0 -7
  621. package/dist/src/shared/algorithms/filter/index.d.ts.map +0 -1
  622. package/dist/src/shared/algorithms/graph/bfs.d.ts +0 -71
  623. package/dist/src/shared/algorithms/graph/bfs.d.ts.map +0 -1
  624. package/dist/src/shared/algorithms/graph/dfs.d.ts +0 -62
  625. package/dist/src/shared/algorithms/graph/dfs.d.ts.map +0 -1
  626. package/dist/src/shared/algorithms/graph/graph.interface.d.ts +0 -63
  627. package/dist/src/shared/algorithms/graph/graph.interface.d.ts.map +0 -1
  628. package/dist/src/shared/algorithms/graph/index.d.ts +0 -9
  629. package/dist/src/shared/algorithms/graph/index.d.ts.map +0 -1
  630. package/dist/src/shared/algorithms/index.d.ts +0 -11
  631. package/dist/src/shared/algorithms/index.d.ts.map +0 -1
  632. package/dist/src/shared/algorithms/pattern/index.d.ts +0 -8
  633. package/dist/src/shared/algorithms/pattern/index.d.ts.map +0 -1
  634. package/dist/src/shared/algorithms/pattern/sequence-detector.d.ts +0 -62
  635. package/dist/src/shared/algorithms/pattern/sequence-detector.d.ts.map +0 -1
  636. package/dist/src/shared/algorithms/search/binary-search.d.ts +0 -86
  637. package/dist/src/shared/algorithms/search/binary-search.d.ts.map +0 -1
  638. package/dist/src/shared/algorithms/search/index.d.ts +0 -6
  639. package/dist/src/shared/algorithms/search/index.d.ts.map +0 -1
  640. package/dist/src/shared/algorithms/sorting/comparators.d.ts +0 -126
  641. package/dist/src/shared/algorithms/sorting/comparators.d.ts.map +0 -1
  642. package/dist/src/shared/algorithms/sorting/index.d.ts +0 -9
  643. package/dist/src/shared/algorithms/sorting/index.d.ts.map +0 -1
  644. package/dist/src/shared/algorithms/sorting/sorting.interface.d.ts +0 -38
  645. package/dist/src/shared/algorithms/sorting/sorting.interface.d.ts.map +0 -1
  646. package/dist/src/shared/algorithms/sorting/timsort.d.ts +0 -55
  647. package/dist/src/shared/algorithms/sorting/timsort.d.ts.map +0 -1
  648. package/dist/src/shared/data-structures/column-store/column-store.d.ts +0 -52
  649. package/dist/src/shared/data-structures/column-store/column-store.d.ts.map +0 -1
  650. package/dist/src/shared/data-structures/column-store/column-store.interface.d.ts +0 -155
  651. package/dist/src/shared/data-structures/column-store/column-store.interface.d.ts.map +0 -1
  652. package/dist/src/shared/data-structures/column-store/index.d.ts +0 -6
  653. package/dist/src/shared/data-structures/column-store/index.d.ts.map +0 -1
  654. package/dist/src/shared/data-structures/command-stack/command-stack.d.ts +0 -61
  655. package/dist/src/shared/data-structures/command-stack/command-stack.d.ts.map +0 -1
  656. package/dist/src/shared/data-structures/command-stack/command-stack.interface.d.ts +0 -80
  657. package/dist/src/shared/data-structures/command-stack/command-stack.interface.d.ts.map +0 -1
  658. package/dist/src/shared/data-structures/command-stack/index.d.ts +0 -3
  659. package/dist/src/shared/data-structures/command-stack/index.d.ts.map +0 -1
  660. package/dist/src/shared/data-structures/dependency-graph/dependency-graph.d.ts +0 -147
  661. package/dist/src/shared/data-structures/dependency-graph/dependency-graph.d.ts.map +0 -1
  662. package/dist/src/shared/data-structures/dependency-graph/dependency-graph.interface.d.ts +0 -161
  663. package/dist/src/shared/data-structures/dependency-graph/dependency-graph.interface.d.ts.map +0 -1
  664. package/dist/src/shared/data-structures/dependency-graph/index.d.ts +0 -8
  665. package/dist/src/shared/data-structures/dependency-graph/index.d.ts.map +0 -1
  666. package/dist/src/shared/data-structures/disjoint-set/disjoint-set.d.ts +0 -84
  667. package/dist/src/shared/data-structures/disjoint-set/disjoint-set.d.ts.map +0 -1
  668. package/dist/src/shared/data-structures/disjoint-set/disjoint-set.interface.d.ts +0 -185
  669. package/dist/src/shared/data-structures/disjoint-set/disjoint-set.interface.d.ts.map +0 -1
  670. package/dist/src/shared/data-structures/disjoint-set/index.d.ts +0 -7
  671. package/dist/src/shared/data-structures/disjoint-set/index.d.ts.map +0 -1
  672. package/dist/src/shared/data-structures/index-map/index-map.d.ts +0 -150
  673. package/dist/src/shared/data-structures/index-map/index-map.d.ts.map +0 -1
  674. package/dist/src/shared/data-structures/index-map/index-map.interface.d.ts +0 -186
  675. package/dist/src/shared/data-structures/index-map/index-map.interface.d.ts.map +0 -1
  676. package/dist/src/shared/data-structures/index-map/index.d.ts +0 -6
  677. package/dist/src/shared/data-structures/index-map/index.d.ts.map +0 -1
  678. package/dist/src/shared/data-structures/index.d.ts +0 -36
  679. package/dist/src/shared/data-structures/index.d.ts.map +0 -1
  680. package/dist/src/shared/data-structures/interval-tree/index.d.ts +0 -7
  681. package/dist/src/shared/data-structures/interval-tree/index.d.ts.map +0 -1
  682. package/dist/src/shared/data-structures/interval-tree/interval-tree.d.ts +0 -141
  683. package/dist/src/shared/data-structures/interval-tree/interval-tree.d.ts.map +0 -1
  684. package/dist/src/shared/data-structures/interval-tree/interval-tree.interface.d.ts +0 -212
  685. package/dist/src/shared/data-structures/interval-tree/interval-tree.interface.d.ts.map +0 -1
  686. package/dist/src/shared/data-structures/lru-cache/index.d.ts +0 -3
  687. package/dist/src/shared/data-structures/lru-cache/index.d.ts.map +0 -1
  688. package/dist/src/shared/data-structures/lru-cache/lru-cache.d.ts +0 -134
  689. package/dist/src/shared/data-structures/lru-cache/lru-cache.d.ts.map +0 -1
  690. package/dist/src/shared/data-structures/lru-cache/lru-cache.interface.d.ts +0 -173
  691. package/dist/src/shared/data-structures/lru-cache/lru-cache.interface.d.ts.map +0 -1
  692. package/dist/src/shared/data-structures/prefix-sum-array/index.d.ts +0 -6
  693. package/dist/src/shared/data-structures/prefix-sum-array/index.d.ts.map +0 -1
  694. package/dist/src/shared/data-structures/prefix-sum-array/prefix-sum-array.d.ts +0 -63
  695. package/dist/src/shared/data-structures/prefix-sum-array/prefix-sum-array.d.ts.map +0 -1
  696. package/dist/src/shared/data-structures/prefix-sum-array/prefix-sum-array.interface.d.ts +0 -80
  697. package/dist/src/shared/data-structures/prefix-sum-array/prefix-sum-array.interface.d.ts.map +0 -1
  698. package/dist/src/shared/data-structures/rtree/index.d.ts +0 -8
  699. package/dist/src/shared/data-structures/rtree/index.d.ts.map +0 -1
  700. package/dist/src/shared/data-structures/rtree/rtree.d.ts +0 -81
  701. package/dist/src/shared/data-structures/rtree/rtree.d.ts.map +0 -1
  702. package/dist/src/shared/data-structures/rtree/rtree.interface.d.ts +0 -143
  703. package/dist/src/shared/data-structures/rtree/rtree.interface.d.ts.map +0 -1
  704. package/dist/src/shared/data-structures/segment-tree/index.d.ts +0 -4
  705. package/dist/src/shared/data-structures/segment-tree/index.d.ts.map +0 -1
  706. package/dist/src/shared/data-structures/segment-tree/segment-tree.d.ts +0 -134
  707. package/dist/src/shared/data-structures/segment-tree/segment-tree.d.ts.map +0 -1
  708. package/dist/src/shared/data-structures/segment-tree/segment-tree.interface.d.ts +0 -202
  709. package/dist/src/shared/data-structures/segment-tree/segment-tree.interface.d.ts.map +0 -1
  710. package/dist/src/shared/data-structures/skip-list/index.d.ts +0 -4
  711. package/dist/src/shared/data-structures/skip-list/index.d.ts.map +0 -1
  712. package/dist/src/shared/data-structures/skip-list/skip-list.d.ts +0 -137
  713. package/dist/src/shared/data-structures/skip-list/skip-list.d.ts.map +0 -1
  714. package/dist/src/shared/data-structures/skip-list/skip-list.interface.d.ts +0 -223
  715. package/dist/src/shared/data-structures/skip-list/skip-list.interface.d.ts.map +0 -1
  716. package/dist/src/shared/data-structures/sparse-matrix/index.d.ts +0 -6
  717. package/dist/src/shared/data-structures/sparse-matrix/index.d.ts.map +0 -1
  718. package/dist/src/shared/data-structures/sparse-matrix/sparse-matrix.d.ts +0 -44
  719. package/dist/src/shared/data-structures/sparse-matrix/sparse-matrix.d.ts.map +0 -1
  720. package/dist/src/shared/data-structures/sparse-matrix/sparse-matrix.interface.d.ts +0 -105
  721. package/dist/src/shared/data-structures/sparse-matrix/sparse-matrix.interface.d.ts.map +0 -1
  722. package/dist/src/shared/data-structures/suffix-array/index.d.ts +0 -3
  723. package/dist/src/shared/data-structures/suffix-array/index.d.ts.map +0 -1
  724. package/dist/src/shared/data-structures/suffix-array/suffix-array.d.ts +0 -102
  725. package/dist/src/shared/data-structures/suffix-array/suffix-array.d.ts.map +0 -1
  726. package/dist/src/shared/data-structures/suffix-array/suffix-array.interface.d.ts +0 -117
  727. package/dist/src/shared/data-structures/suffix-array/suffix-array.interface.d.ts.map +0 -1
  728. package/dist/src/shared/data-structures/trie/index.d.ts +0 -8
  729. package/dist/src/shared/data-structures/trie/index.d.ts.map +0 -1
  730. package/dist/src/shared/data-structures/trie/trie.d.ts +0 -205
  731. package/dist/src/shared/data-structures/trie/trie.d.ts.map +0 -1
  732. package/dist/src/shared/data-structures/trie/trie.interface.d.ts +0 -117
  733. package/dist/src/shared/data-structures/trie/trie.interface.d.ts.map +0 -1
  734. package/dist/src/shared/index.d.ts +0 -47
  735. package/dist/src/shared/index.d.ts.map +0 -1
  736. package/dist/src/shared/patterns/coordinator.d.ts +0 -90
  737. package/dist/src/shared/patterns/coordinator.d.ts.map +0 -1
  738. package/dist/src/shared/patterns/event-emitter.d.ts +0 -106
  739. package/dist/src/shared/patterns/event-emitter.d.ts.map +0 -1
  740. package/dist/src/shared/patterns/factory.d.ts +0 -120
  741. package/dist/src/shared/patterns/factory.d.ts.map +0 -1
  742. package/dist/src/shared/patterns/index.d.ts +0 -21
  743. package/dist/src/shared/patterns/index.d.ts.map +0 -1
  744. package/dist/src/shared/patterns/mediator.d.ts +0 -116
  745. package/dist/src/shared/patterns/mediator.d.ts.map +0 -1
  746. package/dist/src/shared/patterns/object-pool.d.ts +0 -178
  747. package/dist/src/shared/patterns/object-pool.d.ts.map +0 -1
  748. package/dist/src/shared/patterns/observer.d.ts +0 -89
  749. package/dist/src/shared/patterns/observer.d.ts.map +0 -1
  750. package/dist/src/shared/patterns/operation-mode.d.ts +0 -75
  751. package/dist/src/shared/patterns/operation-mode.d.ts.map +0 -1
  752. package/dist/src/shared/patterns/state-machine.d.ts +0 -122
  753. package/dist/src/shared/patterns/state-machine.d.ts.map +0 -1
  754. package/dist/src/shared/types/common.d.ts +0 -56
  755. package/dist/src/shared/types/common.d.ts.map +0 -1
  756. package/dist/src/shared/types/index.d.ts +0 -5
  757. package/dist/src/shared/types/index.d.ts.map +0 -1
  758. package/dist/src/shared/utils/index.d.ts +0 -7
  759. package/dist/src/shared/utils/index.d.ts.map +0 -1
  760. package/dist/src/shared/utils/timing.d.ts +0 -104
  761. package/dist/src/shared/utils/timing.d.ts.map +0 -1
  762. package/dist/src/shared/utils/timing.interface.d.ts +0 -96
  763. package/dist/src/shared/utils/timing.interface.d.ts.map +0 -1
@@ -0,0 +1,363 @@
1
+ /**
2
+ * Grid configuration and state types
3
+ */
4
+ import type { RendererCacheConfig } from '../rendering/cache';
5
+ import type { OperationMode } from '@zengrid/shared';
6
+ import type { CellRef, CellRange } from './cell';
7
+ import type { ColumnDef, SortIcons } from './column';
8
+ import type { SortState } from './sort';
9
+ import type { FilterModel, FilterExpression } from './filter';
10
+ import type { DataLoadRequest, DataLoadResponse } from './data';
11
+ import type { PaginationConfig } from './pagination';
12
+ import type { LoadingConfig } from './loading';
13
+ /**
14
+ * Grid options
15
+ */
16
+ export interface GridOptions {
17
+ rowCount: number;
18
+ colCount: number;
19
+ rowHeight: number | number[];
20
+ colWidth: number | number[];
21
+ columns?: ColumnDef[];
22
+ enableSelection?: boolean;
23
+ enableMultiSelection?: boolean;
24
+ /**
25
+ * Selection type (cell, row, column, or range)
26
+ * @default 'cell'
27
+ */
28
+ selectionType?: 'cell' | 'row' | 'column' | 'range';
29
+ enableKeyboardNavigation?: boolean;
30
+ enableA11y?: boolean;
31
+ /** Number of rows to render beyond visible area (default: 10) - prevents blank areas during fast scrolling */
32
+ overscanRows?: number;
33
+ /** Number of columns to render beyond visible area (default: 5) - prevents blank areas during fast scrolling */
34
+ overscanCols?: number;
35
+ enableCellPooling?: boolean;
36
+ rendererCache?: RendererCacheConfig;
37
+ sortIcons?: SortIcons;
38
+ /**
39
+ * Data loading mode
40
+ * - 'frontend': All data loaded in memory (default)
41
+ * - 'backend': Data loaded on-demand via onDataRequest
42
+ * - 'auto': Use backend if onDataRequest provided, else frontend
43
+ */
44
+ dataMode?: OperationMode;
45
+ /**
46
+ * Sort mode
47
+ * - 'frontend': Sort in memory using IndexMap (default)
48
+ * - 'backend': Delegate sorting to server via onSortRequest
49
+ * - 'auto': Use backend if onSortRequest provided, else frontend
50
+ */
51
+ sortMode?: OperationMode;
52
+ /**
53
+ * Filter mode
54
+ * - 'frontend': Filter in memory (default)
55
+ * - 'backend': Delegate filtering to server via onFilterRequest
56
+ * - 'auto': Use backend if onFilterRequest provided, else frontend
57
+ */
58
+ filterMode?: OperationMode;
59
+ /**
60
+ * Backend data loading callback
61
+ * Called when dataMode is 'backend' or 'auto' (with callback present)
62
+ * Application should fetch data based on request parameters
63
+ */
64
+ onDataRequest?: (request: DataLoadRequest) => Promise<DataLoadResponse>;
65
+ /**
66
+ * Backend sorting callback
67
+ * Called when sortMode is 'backend' or 'auto' (with callback present)
68
+ * Application should fetch sorted data and call grid.setData()
69
+ */
70
+ onSortRequest?: (sortState: SortState[]) => Promise<void> | void;
71
+ /**
72
+ * Backend filtering callback
73
+ * Called when filterMode is 'backend' or 'auto' (with callback present)
74
+ * Application should fetch filtered data and call grid.setData()
75
+ *
76
+ * Receives FilterExpression which contains:
77
+ * - SQL query with parameters (if using SQL-like syntax)
78
+ * - Filter models (if using traditional approach)
79
+ *
80
+ * @example SQL-like filtering
81
+ * ```typescript
82
+ * onFilterRequest: async (filter) => {
83
+ * if (filter.type === 'sql') {
84
+ * // Backend receives: filter.sql = "age > ? AND status = ?"
85
+ * // Backend receives: filter.params = [18, 'active']
86
+ * const data = await api.get('/data', {
87
+ * filter: filter.sql,
88
+ * params: filter.params
89
+ * });
90
+ * grid.setData(data);
91
+ * }
92
+ * }
93
+ * ```
94
+ */
95
+ onFilterRequest?: (filterExpression: FilterExpression) => Promise<void> | void;
96
+ /**
97
+ * Pagination configuration
98
+ */
99
+ pagination?: PaginationConfig;
100
+ /**
101
+ * Loading indicator configuration
102
+ */
103
+ loading?: LoadingConfig;
104
+ /**
105
+ * Automatically update viewport when container size changes (default: true)
106
+ * Uses ResizeObserver to detect changes from:
107
+ * - Window resize
108
+ * - Dev tools open/close
109
+ * - Sidebar collapse/expand
110
+ * - Parent container size changes
111
+ *
112
+ * Set to false for manual control via grid.updateViewport()
113
+ */
114
+ autoResize?: boolean;
115
+ /**
116
+ * Enable column resize feature (default: true)
117
+ */
118
+ enableColumnResize?: boolean;
119
+ /**
120
+ * Column resize configuration
121
+ */
122
+ columnResize?: {
123
+ /** Width of resize handle detection zone in pixels (default: 6) */
124
+ resizeZoneWidth?: number;
125
+ /** Default minimum width for all columns (default: 30) */
126
+ defaultMinWidth?: number;
127
+ /** Default maximum width for all columns (default: Infinity) */
128
+ defaultMaxWidth?: number;
129
+ /** Maximum rows to sample for auto-fit (default: 100) */
130
+ autoFitSampleSize?: number;
131
+ /** Padding to add to auto-fit width (default: 16) */
132
+ autoFitPadding?: number;
133
+ /** Skip header width when auto-fitting columns (default: false - headers included) */
134
+ skipHeaderOnAutoSize?: boolean;
135
+ /** Show visual resize handles (default: true) */
136
+ showHandles?: boolean;
137
+ /** Show preview line during drag (default: true) */
138
+ showPreview?: boolean;
139
+ /** Auto-fit all columns on initial load (default: false) */
140
+ autoFitOnLoad?: boolean;
141
+ };
142
+ /**
143
+ * Enable column drag and drop reordering (default: true)
144
+ */
145
+ enableColumnDrag?: boolean;
146
+ /**
147
+ * Column drag configuration
148
+ */
149
+ columnDrag?: {
150
+ /** Drag threshold in pixels before drag starts (default: 5) */
151
+ dragThreshold?: number;
152
+ /** Show ghost element during drag (default: true) */
153
+ showGhost?: boolean;
154
+ /** Show drop indicator (default: true) */
155
+ showDropIndicator?: boolean;
156
+ /** Show adjacent column highlights (default: true) */
157
+ showAdjacentHighlights?: boolean;
158
+ /** Enable touch support (default: true) */
159
+ enableTouch?: boolean;
160
+ /** Long press duration for touch in ms (default: 500) */
161
+ touchLongPressDuration?: number;
162
+ /** Enable keyboard navigation (default: true) */
163
+ enableKeyboard?: boolean;
164
+ };
165
+ /**
166
+ * Enable infinite scrolling (dynamic data loading)
167
+ */
168
+ infiniteScrolling?: {
169
+ /** Enable infinite scrolling (default: false) */
170
+ enabled?: boolean;
171
+ /** Number of rows from the bottom to trigger data loading (default: 20) */
172
+ threshold?: number;
173
+ /** Initial row count (will grow as more data loads) */
174
+ initialRowCount?: number;
175
+ /** Enable sliding window to limit memory usage (default: false) */
176
+ enableSlidingWindow?: boolean;
177
+ /** Maximum number of rows to keep in memory (default: 1000) */
178
+ windowSize?: number;
179
+ /** Row count threshold to trigger pruning old rows (default: windowSize + 200) */
180
+ pruneThreshold?: number;
181
+ /** Callback when old rows are pruned from memory */
182
+ onDataPruned?: (prunedRowCount: number, newVirtualOffset: number) => void;
183
+ };
184
+ /**
185
+ * Infinite scrolling data loader callback
186
+ * Called when user scrolls near the bottom and more data is needed
187
+ *
188
+ * @param currentRowCount - Current total rows in the grid
189
+ * @returns Promise resolving to new rows to append
190
+ *
191
+ * @example
192
+ * ```typescript
193
+ * onLoadMoreRows: async (currentRowCount) => {
194
+ * const response = await fetch(`/api/data?offset=${currentRowCount}&limit=100`);
195
+ * const newRows = await response.json();
196
+ * return newRows;
197
+ * }
198
+ * ```
199
+ */
200
+ onLoadMoreRows?: (currentRowCount: number) => Promise<any[][]>;
201
+ /**
202
+ * Row height mode
203
+ * - 'fixed': All rows use fixed height from rowHeight option (default)
204
+ * - 'auto': Automatically measure and adjust row heights based on content
205
+ * - 'content-aware': Measure only rows with height-affecting columns
206
+ */
207
+ rowHeightMode?: 'fixed' | 'auto' | 'content-aware';
208
+ /**
209
+ * Row height configuration options
210
+ * Only applies when rowHeightMode is 'auto' or 'content-aware'
211
+ */
212
+ rowHeightConfig?: RowHeightConfig;
213
+ /**
214
+ * Global cell overflow configuration
215
+ * Can be overridden per-column via ColumnDef.overflow
216
+ */
217
+ cellOverflow?: CellOverflowConfig;
218
+ onScroll?: (scrollTop: number, scrollLeft: number) => void;
219
+ onCellClick?: (row: number, col: number) => void;
220
+ onCellDoubleClick?: (row: number, col: number) => void;
221
+ onCellContextMenu?: (row: number, col: number, event: MouseEvent) => void;
222
+ onSelectionChange?: (selection: CellRange[]) => void;
223
+ onPageChange?: (page: number, pageSize: number) => void;
224
+ onColumnWidthsChange?: (widths: number[]) => void;
225
+ }
226
+ /**
227
+ * Grid state
228
+ */
229
+ export interface GridState {
230
+ data: any[][];
231
+ selection: CellRange[];
232
+ activeCell: CellRef | null;
233
+ sortState: SortState[];
234
+ filterState: FilterModel[];
235
+ scrollPosition: {
236
+ top: number;
237
+ left: number;
238
+ };
239
+ editingCell: CellRef | null;
240
+ }
241
+ /**
242
+ * Column state snapshot for persistence
243
+ */
244
+ export interface ColumnStateSnapshot {
245
+ id?: string;
246
+ field?: string;
247
+ width?: number;
248
+ visible?: boolean;
249
+ order?: number;
250
+ }
251
+ /**
252
+ * Grid state snapshot for persistence
253
+ */
254
+ export interface GridStateSnapshot {
255
+ columns?: ColumnStateSnapshot[];
256
+ sortState?: SortState[];
257
+ filterState?: FilterModel[];
258
+ }
259
+ /**
260
+ * Grid export options
261
+ */
262
+ export interface GridExportOptions {
263
+ /** Rows to export */
264
+ rows?: 'all' | 'filtered' | 'selected' | number[];
265
+ /** Columns to export */
266
+ columns?: 'all' | 'visible' | number[];
267
+ /** Include header row */
268
+ includeHeaders?: boolean;
269
+ /** Custom delimiter (default: comma for CSV) */
270
+ delimiter?: string;
271
+ }
272
+ /**
273
+ * Row height configuration options
274
+ */
275
+ export interface RowHeightConfig {
276
+ /**
277
+ * Default row height in pixels
278
+ * Used as initial estimate and fallback
279
+ * @default 30
280
+ */
281
+ defaultHeight?: number;
282
+ /**
283
+ * Minimum row height constraint in pixels
284
+ * @default 20
285
+ */
286
+ minHeight?: number;
287
+ /**
288
+ * Maximum row height constraint in pixels
289
+ * @default 200
290
+ */
291
+ maxHeight?: number;
292
+ /**
293
+ * When to measure row heights (for 'auto' mode)
294
+ * - 'render': Measure when row enters viewport (lazy, recommended)
295
+ * - 'scroll-end': Measure after scroll stops (debounced)
296
+ * - 'on-demand': Only measure via explicit API call
297
+ * @default 'render'
298
+ */
299
+ measureTiming?: 'render' | 'scroll-end' | 'on-demand';
300
+ /**
301
+ * Number of rows to measure per animation frame
302
+ * Lower = smoother but slower, Higher = faster but may cause jank
303
+ * @default 10
304
+ */
305
+ measureBatchSize?: number;
306
+ /**
307
+ * Debounce delay for batch height updates (in milliseconds)
308
+ * Prevents layout thrashing by batching multiple height changes
309
+ * @default 16 (approx 1 frame at 60fps)
310
+ */
311
+ debounceMs?: number;
312
+ /**
313
+ * Cache measured heights for performance
314
+ * Disable if content changes frequently
315
+ * @default true
316
+ */
317
+ cacheHeights?: boolean;
318
+ /**
319
+ * Columns that can affect row height (for 'content-aware' mode)
320
+ * Only these columns will be measured
321
+ * If undefined, all columns are considered
322
+ */
323
+ heightAffectingColumns?: string[];
324
+ /**
325
+ * Custom height calculator function
326
+ * Overrides automatic measurement
327
+ * @param row - Row index
328
+ * @param rowData - Full row data
329
+ * @returns Height in pixels
330
+ */
331
+ heightCalculator?: (row: number, rowData: any) => number;
332
+ /**
333
+ * Callback when row heights change
334
+ * Useful for persistence or synchronization
335
+ * @param heights - Map of row index to height
336
+ */
337
+ onHeightsChange?: (heights: Map<number, number>) => void;
338
+ }
339
+ /**
340
+ * Cell overflow configuration
341
+ */
342
+ export interface CellOverflowConfig {
343
+ /**
344
+ * Overflow handling mode
345
+ * - 'clip': Hide overflow content (default)
346
+ * - 'ellipsis': Show ellipsis (...) for overflow
347
+ * - 'wrap': Allow text wrapping (multi-line)
348
+ * - 'expand': Expand row height to fit content (requires auto row height mode)
349
+ * - 'scroll': Enable horizontal scrolling
350
+ */
351
+ mode: 'clip' | 'ellipsis' | 'wrap' | 'expand' | 'scroll';
352
+ /**
353
+ * Maximum lines before truncation (only for 'wrap' mode)
354
+ * @default undefined (no limit)
355
+ */
356
+ maxLines?: number;
357
+ /**
358
+ * Show overflow indicator (e.g., "..." or scroll arrows)
359
+ * @default true
360
+ */
361
+ showIndicator?: boolean;
362
+ }
363
+ //# sourceMappingURL=grid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grid.d.ts","sourceRoot":"","sources":["../../../src/types/grid.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,129 @@
1
+ /**
2
+ * Header configuration types
3
+ */
4
+ /**
5
+ * Header type discriminator
6
+ */
7
+ export type HeaderType = 'text' | 'checkbox' | 'icon' | 'sortable' | 'filterable' | 'custom';
8
+ /**
9
+ * Icon position within header
10
+ */
11
+ export type IconPosition = 'leading' | 'trailing';
12
+ /**
13
+ * Header icon configuration
14
+ */
15
+ export interface HeaderIcon {
16
+ /** Icon content (HTML string, SVG, or emoji) */
17
+ content: string;
18
+ /** Icon position relative to text */
19
+ position: IconPosition;
20
+ /** Optional CSS class for the icon */
21
+ className?: string;
22
+ /** Optional click handler */
23
+ onClick?: (event: MouseEvent, columnIndex: number) => void;
24
+ }
25
+ /**
26
+ * Header tooltip configuration
27
+ */
28
+ export interface HeaderTooltip {
29
+ /** Tooltip content (can be HTML) */
30
+ content: string;
31
+ /** Tooltip position */
32
+ position?: 'top' | 'bottom' | 'left' | 'right';
33
+ /** Delay before showing (ms) */
34
+ delay?: number;
35
+ }
36
+ /**
37
+ * Header context menu item
38
+ */
39
+ export interface HeaderContextMenuItem {
40
+ /** Menu item label */
41
+ label: string;
42
+ /** Menu item icon (optional) */
43
+ icon?: string;
44
+ /** Click handler */
45
+ action: (columnIndex: number) => void;
46
+ /** Whether item is disabled */
47
+ disabled?: boolean;
48
+ /** Separator after this item */
49
+ separator?: boolean;
50
+ }
51
+ /**
52
+ * Sort indicator configuration
53
+ */
54
+ export interface SortIndicatorConfig {
55
+ /** Show sort indicator */
56
+ show: boolean;
57
+ /** Custom ascending icon */
58
+ ascIcon?: string;
59
+ /** Custom descending icon */
60
+ descIcon?: string;
61
+ /** Position of sort indicator */
62
+ position?: IconPosition;
63
+ }
64
+ /**
65
+ * Filter indicator configuration
66
+ */
67
+ export interface FilterIndicatorConfig {
68
+ /** Show filter dropdown trigger */
69
+ show: boolean;
70
+ /** Custom filter icon */
71
+ icon?: string;
72
+ /** Filter dropdown component type */
73
+ dropdownType?: 'text' | 'select' | 'date' | 'number' | 'custom';
74
+ /** Custom dropdown renderer name (when dropdownType is 'custom') */
75
+ customDropdown?: string;
76
+ }
77
+ /**
78
+ * Full header configuration
79
+ */
80
+ export interface HeaderConfig {
81
+ /** Header display text */
82
+ text: string;
83
+ /** Header type (determines default rendering behavior) */
84
+ type?: HeaderType;
85
+ /** Leading icon */
86
+ leadingIcon?: HeaderIcon;
87
+ /** Trailing icon */
88
+ trailingIcon?: HeaderIcon;
89
+ /** Tooltip configuration */
90
+ tooltip?: HeaderTooltip;
91
+ /** Additional CSS classes */
92
+ className?: string;
93
+ /** Inline styles */
94
+ style?: Partial<CSSStyleDeclaration>;
95
+ /** Click handler */
96
+ onClick?: (event: MouseEvent, columnIndex: number) => void;
97
+ /** Double-click handler */
98
+ onDoubleClick?: (event: MouseEvent, columnIndex: number) => void;
99
+ /** Context menu items */
100
+ contextMenu?: HeaderContextMenuItem[];
101
+ /** Sort indicator configuration */
102
+ sortIndicator?: SortIndicatorConfig;
103
+ /** Filter indicator configuration */
104
+ filterIndicator?: FilterIndicatorConfig;
105
+ /** Custom renderer name (for type: 'custom') */
106
+ renderer?: string;
107
+ /** Custom data passed to renderer */
108
+ rendererData?: any;
109
+ /** Whether header is interactive (enables hover/focus states) */
110
+ interactive?: boolean;
111
+ }
112
+ /**
113
+ * Resolved header config (after applying defaults)
114
+ */
115
+ export interface ResolvedHeaderConfig extends Required<Pick<HeaderConfig, 'text' | 'type' | 'interactive'>> {
116
+ leadingIcon?: HeaderIcon;
117
+ trailingIcon?: HeaderIcon;
118
+ tooltip?: HeaderTooltip;
119
+ className?: string;
120
+ style?: Partial<CSSStyleDeclaration>;
121
+ onClick?: (event: MouseEvent, columnIndex: number) => void;
122
+ onDoubleClick?: (event: MouseEvent, columnIndex: number) => void;
123
+ contextMenu?: HeaderContextMenuItem[];
124
+ sortIndicator?: SortIndicatorConfig;
125
+ filterIndicator?: FilterIndicatorConfig;
126
+ renderer?: string;
127
+ rendererData?: any;
128
+ }
129
+ //# sourceMappingURL=header.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../src/types/header.ts"],"names":[],"mappings":"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"}
@@ -1,133 +1,14 @@
1
1
  /**
2
- * Core type definitions for ZenGrid
3
- */
4
- /**
5
- * Reference to a specific cell in the grid
6
- */
7
- export interface CellRef {
8
- row: number;
9
- col: number;
10
- }
11
- /**
12
- * A rectangular range of cells
13
- */
14
- export interface CellRange {
15
- startRow: number;
16
- startCol: number;
17
- endRow: number;
18
- endCol: number;
19
- }
20
- /**
21
- * The currently visible range after virtual scrolling calculation
22
- */
23
- export interface VisibleRange {
24
- startRow: number;
25
- endRow: number;
26
- startCol: number;
27
- endCol: number;
28
- }
29
- /**
30
- * Cell position and dimensions (for absolute positioning)
31
- */
32
- export interface CellPosition {
33
- x: number;
34
- y: number;
35
- width: number;
36
- height: number;
37
- }
38
- /**
39
- * Sort direction
40
- */
41
- export type SortDirection = 'asc' | 'desc' | null;
42
- /**
43
- * Sort state for a column
44
- */
45
- export interface SortState {
46
- column: number;
47
- direction: SortDirection;
48
- sortIndex?: number;
49
- }
50
- /**
51
- * Filter operator types
52
- */
53
- export type FilterOperator = 'equals' | 'notEquals' | 'contains' | 'notContains' | 'startsWith' | 'endsWith' | 'greaterThan' | 'lessThan' | 'greaterThanOrEqual' | 'lessThanOrEqual' | 'blank' | 'notBlank';
54
- /**
55
- * Filter condition
56
- */
57
- export interface FilterCondition {
58
- operator: FilterOperator;
59
- value?: any;
60
- }
61
- /**
62
- * Filter model for a column
63
- */
64
- export interface FilterModel {
65
- column: number;
66
- conditions: FilterCondition[];
67
- logic?: 'AND' | 'OR';
68
- }
69
- /**
70
- * Column definition
71
- */
72
- export interface ColumnDef {
73
- field: string;
74
- header: string;
75
- width: number;
76
- minWidth?: number;
77
- maxWidth?: number;
78
- resizable?: boolean;
79
- sortable?: boolean;
80
- filterable?: boolean;
81
- editable?: boolean;
82
- type?: 'text' | 'number' | 'date' | 'boolean';
83
- renderer?: string;
84
- editor?: string;
85
- formatter?: (value: any) => string;
86
- parser?: (value: string) => any;
87
- }
88
- /**
89
- * Grid configuration options
90
- */
91
- export interface GridOptions {
92
- rowCount: number;
93
- colCount: number;
94
- columns?: ColumnDef[];
95
- rowHeight: number | number[];
96
- colWidth: number | number[];
97
- headerHeight?: number;
98
- enableSelection?: boolean;
99
- enableMultiSelection?: boolean;
100
- enableEditing?: boolean;
101
- enableSorting?: boolean;
102
- enableFiltering?: boolean;
103
- enableKeyboardNavigation?: boolean;
104
- enableA11y?: boolean;
105
- locale?: string;
106
- direction?: 'ltr' | 'rtl';
107
- overscanRows?: number;
108
- overscanCols?: number;
109
- enableCellPooling?: boolean;
110
- theme?: string;
111
- customCSS?: string;
112
- onCellClick?: (cell: CellRef) => void;
113
- onCellDoubleClick?: (cell: CellRef) => void;
114
- onCellChange?: (cell: CellRef, oldValue: any, newValue: any) => void;
115
- onSelectionChange?: (ranges: CellRange[]) => void;
116
- onScroll?: (scrollTop: number, scrollLeft: number) => void;
117
- }
118
- /**
119
- * Grid state (internal)
120
- */
121
- export interface GridState {
122
- data: any[][];
123
- selection: CellRange[];
124
- activeCell: CellRef | null;
125
- sortState: SortState[];
126
- filterState: FilterModel[];
127
- scrollPosition: {
128
- top: number;
129
- left: number;
130
- };
131
- editingCell: CellRef | null;
132
- }
2
+ * Core types for ZenGrid
3
+ * Re-exports all types from domain-specific modules
4
+ */
5
+ export * from './cell';
6
+ export * from './column';
7
+ export * from './header';
8
+ export * from './sort';
9
+ export * from './filter';
10
+ export * from './pagination';
11
+ export * from './loading';
12
+ export * from './data';
13
+ export * from './grid';
133
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC"}