balala-revogrid 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (760) hide show
  1. package/LICENSE +21 -0
  2. package/dist/cjs/app-globals-D67EXhgK.js +16 -0
  3. package/dist/cjs/app-globals-D67EXhgK.js.map +1 -0
  4. package/dist/cjs/cell-renderer-B87qecTb.js +57 -0
  5. package/dist/cjs/cell-renderer-B87qecTb.js.map +1 -0
  6. package/dist/cjs/debounce-CcpHiH2p.js +498 -0
  7. package/dist/cjs/debounce-CcpHiH2p.js.map +1 -0
  8. package/dist/cjs/dimension.helpers-DA9-xqPT.js +3606 -0
  9. package/dist/cjs/dimension.helpers-DA9-xqPT.js.map +1 -0
  10. package/dist/cjs/edit.utils-CKsIiHlD.js +113 -0
  11. package/dist/cjs/edit.utils-CKsIiHlD.js.map +1 -0
  12. package/dist/cjs/events-DeLDyZlb.js +46 -0
  13. package/dist/cjs/events-DeLDyZlb.js.map +1 -0
  14. package/dist/cjs/filter.button-DSsWNs23.js +49 -0
  15. package/dist/cjs/filter.button-DSsWNs23.js.map +1 -0
  16. package/dist/cjs/grouping.row.renderer-BqR0ytMi.js +64 -0
  17. package/dist/cjs/grouping.row.renderer-BqR0ytMi.js.map +1 -0
  18. package/dist/cjs/header-cell-renderer-D-RjAVfe.js +1766 -0
  19. package/dist/cjs/header-cell-renderer-D-RjAVfe.js.map +1 -0
  20. package/dist/cjs/index-BF1c1pO3.js +2549 -0
  21. package/dist/cjs/index-BF1c1pO3.js.map +1 -0
  22. package/dist/cjs/index.cjs.js +6426 -0
  23. package/dist/cjs/index.cjs.js.map +1 -0
  24. package/dist/cjs/loader.cjs.js +19 -0
  25. package/dist/cjs/loader.cjs.js.map +1 -0
  26. package/dist/cjs/revo-grid.cjs.entry.js +3215 -0
  27. package/dist/cjs/revo-grid.cjs.entry.js.map +1 -0
  28. package/dist/cjs/revo-grid.cjs.js +31 -0
  29. package/dist/cjs/revo-grid.cjs.js.map +1 -0
  30. package/dist/cjs/revo-grid.entry.cjs.js.map +1 -0
  31. package/dist/cjs/revogr-attribution.revogr-extra.revogr-focus.revogr-grouping-overlay.revogr-header-unified.revogr-overlay-selection.revogr-row-headers.revogr-scroll-virtual.revogr-temp-range.entry.cjs.js.map +1 -0
  32. package/dist/cjs/revogr-attribution_9.cjs.entry.js +2629 -0
  33. package/dist/cjs/revogr-attribution_9.cjs.entry.js.map +1 -0
  34. package/dist/cjs/revogr-clipboard.revogr-edit.revogr-order-editor.entry.cjs.js.map +1 -0
  35. package/dist/cjs/revogr-clipboard_3.cjs.entry.js +471 -0
  36. package/dist/cjs/revogr-clipboard_3.cjs.entry.js.map +1 -0
  37. package/dist/cjs/revogr-data.revogr-header.revogr-viewport-scroll.vnode-html.entry.cjs.js.map +1 -0
  38. package/dist/cjs/revogr-data_4.cjs.entry.js +1420 -0
  39. package/dist/cjs/revogr-data_4.cjs.entry.js.map +1 -0
  40. package/dist/cjs/revogr-filter-panel.cjs.entry.js +382 -0
  41. package/dist/cjs/revogr-filter-panel.cjs.entry.js.map +1 -0
  42. package/dist/cjs/revogr-filter-panel.entry.cjs.js.map +1 -0
  43. package/dist/cjs/row-renderer-BTE7VKD9.js +49 -0
  44. package/dist/cjs/row-renderer-BTE7VKD9.js.map +1 -0
  45. package/dist/cjs/text-editor-BdhmcrkS.js +81 -0
  46. package/dist/cjs/text-editor-BdhmcrkS.js.map +1 -0
  47. package/dist/cjs/throttle-2ZxfGjEI.js +533 -0
  48. package/dist/cjs/throttle-2ZxfGjEI.js.map +1 -0
  49. package/dist/cjs/tree-data.plugin-BRjwZtxI.js +5350 -0
  50. package/dist/cjs/tree-data.plugin-BRjwZtxI.js.map +1 -0
  51. package/dist/cjs/viewport.helpers-BAovztDd.js +61 -0
  52. package/dist/cjs/viewport.helpers-BAovztDd.js.map +1 -0
  53. package/dist/cjs/viewport.store-BTbPlyF-.js +525 -0
  54. package/dist/cjs/viewport.store-BTbPlyF-.js.map +1 -0
  55. package/dist/collection/collection-manifest.json +30 -0
  56. package/dist/collection/components/attribution/revogr-attribution.js +20 -0
  57. package/dist/collection/components/attribution/revogr-attribution.js.map +1 -0
  58. package/dist/collection/components/clipboard/revogr-clipboard.js +411 -0
  59. package/dist/collection/components/clipboard/revogr-clipboard.js.map +1 -0
  60. package/dist/collection/components/data/cell-renderer.js +44 -0
  61. package/dist/collection/components/data/cell-renderer.js.map +1 -0
  62. package/dist/collection/components/data/column.service.js +333 -0
  63. package/dist/collection/components/data/column.service.js.map +1 -0
  64. package/dist/collection/components/data/revogr-data-style.css +95 -0
  65. package/dist/collection/components/data/revogr-data.js +939 -0
  66. package/dist/collection/components/data/revogr-data.js.map +1 -0
  67. package/dist/collection/components/data/row-highlight.plugin.js +51 -0
  68. package/dist/collection/components/data/row-highlight.plugin.js.map +1 -0
  69. package/dist/collection/components/data/row-renderer.js +37 -0
  70. package/dist/collection/components/data/row-renderer.js.map +1 -0
  71. package/dist/collection/components/editors/edit.utils.js +13 -0
  72. package/dist/collection/components/editors/edit.utils.js.map +1 -0
  73. package/dist/collection/components/editors/revogr-edit-style.css +16 -0
  74. package/dist/collection/components/editors/revogr-edit.js +346 -0
  75. package/dist/collection/components/editors/revogr-edit.js.map +1 -0
  76. package/dist/collection/components/editors/text-editor.js +74 -0
  77. package/dist/collection/components/editors/text-editor.js.map +1 -0
  78. package/dist/collection/components/extra/revogr-extra.js +125 -0
  79. package/dist/collection/components/extra/revogr-extra.js.map +1 -0
  80. package/dist/collection/components/grouping-overlay/revogr-grouping-overlay.css +62 -0
  81. package/dist/collection/components/grouping-overlay/revogr-grouping-overlay.js +644 -0
  82. package/dist/collection/components/grouping-overlay/revogr-grouping-overlay.js.map +1 -0
  83. package/dist/collection/components/header/header-cell-renderer.js +49 -0
  84. package/dist/collection/components/header/header-cell-renderer.js.map +1 -0
  85. package/dist/collection/components/header/header-group-renderer.js +29 -0
  86. package/dist/collection/components/header/header-group-renderer.js.map +1 -0
  87. package/dist/collection/components/header/header-renderer.js +100 -0
  88. package/dist/collection/components/header/header-renderer.js.map +1 -0
  89. package/dist/collection/components/header/resizable.directive.js +274 -0
  90. package/dist/collection/components/header/resizable.directive.js.map +1 -0
  91. package/dist/collection/components/header/resizable.element.js +36 -0
  92. package/dist/collection/components/header/resizable.element.js.map +1 -0
  93. package/dist/collection/components/header/revogr-header-style.css +164 -0
  94. package/dist/collection/components/header/revogr-header-unified-style.css +205 -0
  95. package/dist/collection/components/header/revogr-header-unified.js +1013 -0
  96. package/dist/collection/components/header/revogr-header-unified.js.map +1 -0
  97. package/dist/collection/components/header/revogr-header.js +852 -0
  98. package/dist/collection/components/header/revogr-header.js.map +1 -0
  99. package/dist/collection/components/order/order-renderer.js +50 -0
  100. package/dist/collection/components/order/order-renderer.js.map +1 -0
  101. package/dist/collection/components/order/order-row.service.js +72 -0
  102. package/dist/collection/components/order/order-row.service.js.map +1 -0
  103. package/dist/collection/components/order/revogr-order-editor.js +461 -0
  104. package/dist/collection/components/order/revogr-order-editor.js.map +1 -0
  105. package/dist/collection/components/overlay/autofill.service.js +221 -0
  106. package/dist/collection/components/overlay/autofill.service.js.map +1 -0
  107. package/dist/collection/components/overlay/keyboard.service.js +178 -0
  108. package/dist/collection/components/overlay/keyboard.service.js.map +1 -0
  109. package/dist/collection/components/overlay/revogr-overlay-selection.js +1606 -0
  110. package/dist/collection/components/overlay/revogr-overlay-selection.js.map +1 -0
  111. package/dist/collection/components/overlay/revogr-overlay-style.css +95 -0
  112. package/dist/collection/components/overlay/selection.utils.js +136 -0
  113. package/dist/collection/components/overlay/selection.utils.js.map +1 -0
  114. package/dist/collection/components/revoGrid/grid.helpers.js +33 -0
  115. package/dist/collection/components/revoGrid/grid.helpers.js.map +1 -0
  116. package/dist/collection/components/revoGrid/plugin.service.js +81 -0
  117. package/dist/collection/components/revoGrid/plugin.service.js.map +1 -0
  118. package/dist/collection/components/revoGrid/revo-grid-style.css +897 -0
  119. package/dist/collection/components/revoGrid/revo-grid.js +4717 -0
  120. package/dist/collection/components/revoGrid/revo-grid.js.map +1 -0
  121. package/dist/collection/components/revoGrid/viewport.helpers.js +51 -0
  122. package/dist/collection/components/revoGrid/viewport.helpers.js.map +1 -0
  123. package/dist/collection/components/revoGrid/viewport.resize.service.js +55 -0
  124. package/dist/collection/components/revoGrid/viewport.resize.service.js.map +1 -0
  125. package/dist/collection/components/revoGrid/viewport.scrolling.service.js +139 -0
  126. package/dist/collection/components/revoGrid/viewport.scrolling.service.js.map +1 -0
  127. package/dist/collection/components/revoGrid/viewport.service.js +253 -0
  128. package/dist/collection/components/revoGrid/viewport.service.js.map +1 -0
  129. package/dist/collection/components/rowHeaders/revogr-row-headers.js +291 -0
  130. package/dist/collection/components/rowHeaders/revogr-row-headers.js.map +1 -0
  131. package/dist/collection/components/rowHeaders/row-header-render.js +5 -0
  132. package/dist/collection/components/rowHeaders/row-header-render.js.map +1 -0
  133. package/dist/collection/components/scroll/revogr-viewport-scroll-style.css +70 -0
  134. package/dist/collection/components/scroll/revogr-viewport-scroll.js +938 -0
  135. package/dist/collection/components/scroll/revogr-viewport-scroll.js.map +1 -0
  136. package/dist/collection/components/scrollable/autohide-scroll.plugin.js +44 -0
  137. package/dist/collection/components/scrollable/autohide-scroll.plugin.js.map +1 -0
  138. package/dist/collection/components/scrollable/revogr-scroll-style.css +34 -0
  139. package/dist/collection/components/scrollable/revogr-scroll-virtual.js +346 -0
  140. package/dist/collection/components/scrollable/revogr-scroll-virtual.js.map +1 -0
  141. package/dist/collection/components/selectionFocus/revogr-focus-style.css +7 -0
  142. package/dist/collection/components/selectionFocus/revogr-focus.js +429 -0
  143. package/dist/collection/components/selectionFocus/revogr-focus.js.map +1 -0
  144. package/dist/collection/components/selectionTempRange/revogr-temp-range-style.css +28 -0
  145. package/dist/collection/components/selectionTempRange/revogr-temp-range.js +171 -0
  146. package/dist/collection/components/selectionTempRange/revogr-temp-range.js.map +1 -0
  147. package/dist/collection/components/vnode/vnode-converter.js +84 -0
  148. package/dist/collection/components/vnode/vnode-converter.js.map +1 -0
  149. package/dist/collection/components/vnode/vnode.utils.js +18 -0
  150. package/dist/collection/components/vnode/vnode.utils.js.map +1 -0
  151. package/dist/collection/global/global.js +19 -0
  152. package/dist/collection/global/global.js.map +1 -0
  153. package/dist/collection/index.js +13 -0
  154. package/dist/collection/index.js.map +1 -0
  155. package/dist/collection/plugins/add-rows-on-paste.plugin.js +40 -0
  156. package/dist/collection/plugins/add-rows-on-paste.plugin.js.map +1 -0
  157. package/dist/collection/plugins/base.plugin.js +90 -0
  158. package/dist/collection/plugins/base.plugin.js.map +1 -0
  159. package/dist/collection/plugins/column-hide.plugin.js +532 -0
  160. package/dist/collection/plugins/column-hide.plugin.js.map +1 -0
  161. package/dist/collection/plugins/column-manage.plugin.js +1218 -0
  162. package/dist/collection/plugins/column-manage.plugin.js.map +1 -0
  163. package/dist/collection/plugins/column-stretch.plugin.js +921 -0
  164. package/dist/collection/plugins/column-stretch.plugin.js.map +1 -0
  165. package/dist/collection/plugins/column.auto-size.plugin.js +308 -0
  166. package/dist/collection/plugins/column.auto-size.plugin.js.map +1 -0
  167. package/dist/collection/plugins/column.stretch.plugin.js +96 -0
  168. package/dist/collection/plugins/column.stretch.plugin.js.map +1 -0
  169. package/dist/collection/plugins/customColumnDrag/column-move.helper.js +361 -0
  170. package/dist/collection/plugins/customColumnDrag/column-move.helper.js.map +1 -0
  171. package/dist/collection/plugins/customColumnDrag/custom-column-drag.plugin.js +145 -0
  172. package/dist/collection/plugins/customColumnDrag/custom-column-drag.plugin.js.map +1 -0
  173. package/dist/collection/plugins/customColumnDrag/drag.handler.js +726 -0
  174. package/dist/collection/plugins/customColumnDrag/drag.handler.js.map +1 -0
  175. package/dist/collection/plugins/customColumnDrag/example.js +282 -0
  176. package/dist/collection/plugins/customColumnDrag/example.js.map +1 -0
  177. package/dist/collection/plugins/customColumnDrag/index.js +8 -0
  178. package/dist/collection/plugins/customColumnDrag/index.js.map +1 -0
  179. package/dist/collection/plugins/customColumnDrag/types.js +2 -0
  180. package/dist/collection/plugins/customColumnDrag/types.js.map +1 -0
  181. package/dist/collection/plugins/dispatcher.js +40 -0
  182. package/dist/collection/plugins/dispatcher.js.map +1 -0
  183. package/dist/collection/plugins/enhanced-scrollbar.plugin.js +493 -0
  184. package/dist/collection/plugins/enhanced-scrollbar.plugin.js.map +1 -0
  185. package/dist/collection/plugins/export/csv.js +72 -0
  186. package/dist/collection/plugins/export/csv.js.map +1 -0
  187. package/dist/collection/plugins/export/export.plugin.js +157 -0
  188. package/dist/collection/plugins/export/export.plugin.js.map +1 -0
  189. package/dist/collection/plugins/export/types.js +2 -0
  190. package/dist/collection/plugins/export/types.js.map +1 -0
  191. package/dist/collection/plugins/filter/conditions/equal.js +21 -0
  192. package/dist/collection/plugins/filter/conditions/equal.js.map +1 -0
  193. package/dist/collection/plugins/filter/conditions/number/greaterThan.js +14 -0
  194. package/dist/collection/plugins/filter/conditions/number/greaterThan.js.map +1 -0
  195. package/dist/collection/plugins/filter/conditions/number/greaterThanOrEqual.js +11 -0
  196. package/dist/collection/plugins/filter/conditions/number/greaterThanOrEqual.js.map +1 -0
  197. package/dist/collection/plugins/filter/conditions/number/lessThan.js +16 -0
  198. package/dist/collection/plugins/filter/conditions/number/lessThan.js.map +1 -0
  199. package/dist/collection/plugins/filter/conditions/number/lessThanOrEqual.js +11 -0
  200. package/dist/collection/plugins/filter/conditions/number/lessThanOrEqual.js.map +1 -0
  201. package/dist/collection/plugins/filter/conditions/set.js +7 -0
  202. package/dist/collection/plugins/filter/conditions/set.js.map +1 -0
  203. package/dist/collection/plugins/filter/conditions/string/beginswith.js +21 -0
  204. package/dist/collection/plugins/filter/conditions/string/beginswith.js.map +1 -0
  205. package/dist/collection/plugins/filter/conditions/string/contains.js +25 -0
  206. package/dist/collection/plugins/filter/conditions/string/contains.js.map +1 -0
  207. package/dist/collection/plugins/filter/filter.button.js +28 -0
  208. package/dist/collection/plugins/filter/filter.button.js.map +1 -0
  209. package/dist/collection/plugins/filter/filter.indexed.js +49 -0
  210. package/dist/collection/plugins/filter/filter.indexed.js.map +1 -0
  211. package/dist/collection/plugins/filter/filter.panel.js +610 -0
  212. package/dist/collection/plugins/filter/filter.panel.js.map +1 -0
  213. package/dist/collection/plugins/filter/filter.plugin.js +388 -0
  214. package/dist/collection/plugins/filter/filter.plugin.js.map +1 -0
  215. package/dist/collection/plugins/filter/filter.style.css +165 -0
  216. package/dist/collection/plugins/filter/filter.types.js +9 -0
  217. package/dist/collection/plugins/filter/filter.types.js.map +1 -0
  218. package/dist/collection/plugins/grid-setup.js +131 -0
  219. package/dist/collection/plugins/grid-setup.js.map +1 -0
  220. package/dist/collection/plugins/groupingRow/grouping.const.js +18 -0
  221. package/dist/collection/plugins/groupingRow/grouping.const.js.map +1 -0
  222. package/dist/collection/plugins/groupingRow/grouping.row.expand.service.js +122 -0
  223. package/dist/collection/plugins/groupingRow/grouping.row.expand.service.js.map +1 -0
  224. package/dist/collection/plugins/groupingRow/grouping.row.plugin.js +252 -0
  225. package/dist/collection/plugins/groupingRow/grouping.row.plugin.js.map +1 -0
  226. package/dist/collection/plugins/groupingRow/grouping.row.renderer.js +49 -0
  227. package/dist/collection/plugins/groupingRow/grouping.row.renderer.js.map +1 -0
  228. package/dist/collection/plugins/groupingRow/grouping.row.types.js +2 -0
  229. package/dist/collection/plugins/groupingRow/grouping.row.types.js.map +1 -0
  230. package/dist/collection/plugins/groupingRow/grouping.service.js +215 -0
  231. package/dist/collection/plugins/groupingRow/grouping.service.js.map +1 -0
  232. package/dist/collection/plugins/groupingRow/grouping.trimmed.service.js +61 -0
  233. package/dist/collection/plugins/groupingRow/grouping.trimmed.service.js.map +1 -0
  234. package/dist/collection/plugins/index.js +26 -0
  235. package/dist/collection/plugins/index.js.map +1 -0
  236. package/dist/collection/plugins/manual-focus.plugin.js +353 -0
  237. package/dist/collection/plugins/manual-focus.plugin.js.map +1 -0
  238. package/dist/collection/plugins/moveColumn/column.drag.plugin.js +171 -0
  239. package/dist/collection/plugins/moveColumn/column.drag.plugin.js.map +1 -0
  240. package/dist/collection/plugins/moveColumn/order-column.handler.js +69 -0
  241. package/dist/collection/plugins/moveColumn/order-column.handler.js.map +1 -0
  242. package/dist/collection/plugins/pin-shadow.plugin.js +487 -0
  243. package/dist/collection/plugins/pin-shadow.plugin.js.map +1 -0
  244. package/dist/collection/plugins/resize-indicator.plugin.js +430 -0
  245. package/dist/collection/plugins/resize-indicator.plugin.js.map +1 -0
  246. package/dist/collection/plugins/row-select-plugin-2026228.js +1803 -0
  247. package/dist/collection/plugins/row-select-plugin-2026228.js.map +1 -0
  248. package/dist/collection/plugins/row-select.plugin.js +2096 -0
  249. package/dist/collection/plugins/row-select.plugin.js.map +1 -0
  250. package/dist/collection/plugins/rtl/rtl.plugin.js +110 -0
  251. package/dist/collection/plugins/rtl/rtl.plugin.js.map +1 -0
  252. package/dist/collection/plugins/sorting/sorting.func.js +82 -0
  253. package/dist/collection/plugins/sorting/sorting.func.js.map +1 -0
  254. package/dist/collection/plugins/sorting/sorting.plugin.js +224 -0
  255. package/dist/collection/plugins/sorting/sorting.plugin.js.map +1 -0
  256. package/dist/collection/plugins/sorting/sorting.sign.js +9 -0
  257. package/dist/collection/plugins/sorting/sorting.sign.js.map +1 -0
  258. package/dist/collection/plugins/sorting/sorting.types.js +2 -0
  259. package/dist/collection/plugins/sorting/sorting.types.js.map +1 -0
  260. package/dist/collection/plugins/tree-data.plugin.js +447 -0
  261. package/dist/collection/plugins/tree-data.plugin.js.map +1 -0
  262. package/dist/collection/plugins/wcag/index.js +84 -0
  263. package/dist/collection/plugins/wcag/index.js.map +1 -0
  264. package/dist/collection/serve/controller.js +344 -0
  265. package/dist/collection/serve/data.js +201 -0
  266. package/dist/collection/serve/realData.js +4148 -0
  267. package/dist/collection/services/cell.helpers.js +12 -0
  268. package/dist/collection/services/cell.helpers.js.map +1 -0
  269. package/dist/collection/services/column.data.provider.js +122 -0
  270. package/dist/collection/services/column.data.provider.js.map +1 -0
  271. package/dist/collection/services/data.provider.js +89 -0
  272. package/dist/collection/services/data.provider.js.map +1 -0
  273. package/dist/collection/services/dimension.provider.js +257 -0
  274. package/dist/collection/services/dimension.provider.js.map +1 -0
  275. package/dist/collection/services/local.scroll.service.js +136 -0
  276. package/dist/collection/services/local.scroll.service.js.map +1 -0
  277. package/dist/collection/services/local.scroll.timer.js +84 -0
  278. package/dist/collection/services/local.scroll.timer.js.map +1 -0
  279. package/dist/collection/services/selection.store.connector.js +274 -0
  280. package/dist/collection/services/selection.store.connector.js.map +1 -0
  281. package/dist/collection/services/viewport.provider.js +17 -0
  282. package/dist/collection/services/viewport.provider.js.map +1 -0
  283. package/dist/collection/store/dataSource/data.proxy.js +45 -0
  284. package/dist/collection/store/dataSource/data.proxy.js.map +1 -0
  285. package/dist/collection/store/dataSource/data.store.js +146 -0
  286. package/dist/collection/store/dataSource/data.store.js.map +1 -0
  287. package/dist/collection/store/dataSource/index.js +7 -0
  288. package/dist/collection/store/dataSource/index.js.map +1 -0
  289. package/dist/collection/store/dataSource/trimmed.plugin.js +34 -0
  290. package/dist/collection/store/dataSource/trimmed.plugin.js.map +1 -0
  291. package/dist/collection/store/dimension/dimension.helpers.js +101 -0
  292. package/dist/collection/store/dimension/dimension.helpers.js.map +1 -0
  293. package/dist/collection/store/dimension/dimension.recalculate.plugin.js +29 -0
  294. package/dist/collection/store/dimension/dimension.recalculate.plugin.js.map +1 -0
  295. package/dist/collection/store/dimension/dimension.store.js +124 -0
  296. package/dist/collection/store/dimension/dimension.store.js.map +1 -0
  297. package/dist/collection/store/dimension/dimension.trim.plugin.js +61 -0
  298. package/dist/collection/store/dimension/dimension.trim.plugin.js.map +1 -0
  299. package/dist/collection/store/dimension/index.js +6 -0
  300. package/dist/collection/store/dimension/index.js.map +1 -0
  301. package/dist/collection/store/index.js +17 -0
  302. package/dist/collection/store/index.js.map +1 -0
  303. package/dist/collection/store/selection/index.js +6 -0
  304. package/dist/collection/store/selection/index.js.map +1 -0
  305. package/dist/collection/store/selection/selection.helpers.js +49 -0
  306. package/dist/collection/store/selection/selection.helpers.js.map +1 -0
  307. package/dist/collection/store/selection/selection.store.js +85 -0
  308. package/dist/collection/store/selection/selection.store.js.map +1 -0
  309. package/dist/collection/store/vp/index.js +6 -0
  310. package/dist/collection/store/vp/index.js.map +1 -0
  311. package/dist/collection/store/vp/viewport.helpers.js +251 -0
  312. package/dist/collection/store/vp/viewport.helpers.js.map +1 -0
  313. package/dist/collection/store/vp/viewport.store.js +256 -0
  314. package/dist/collection/store/vp/viewport.store.js.map +1 -0
  315. package/dist/collection/themeManager/theme.compact.js +9 -0
  316. package/dist/collection/themeManager/theme.compact.js.map +1 -0
  317. package/dist/collection/themeManager/theme.default.js +9 -0
  318. package/dist/collection/themeManager/theme.default.js.map +1 -0
  319. package/dist/collection/themeManager/theme.material.js +9 -0
  320. package/dist/collection/themeManager/theme.material.js.map +1 -0
  321. package/dist/collection/themeManager/theme.service.js +53 -0
  322. package/dist/collection/themeManager/theme.service.js.map +1 -0
  323. package/dist/collection/types/dimension.js +2 -0
  324. package/dist/collection/types/dimension.js.map +1 -0
  325. package/dist/collection/types/events.js +124 -0
  326. package/dist/collection/types/events.js.map +1 -0
  327. package/dist/collection/types/index.js +12 -0
  328. package/dist/collection/types/index.js.map +1 -0
  329. package/dist/collection/types/interfaces.js +6 -0
  330. package/dist/collection/types/interfaces.js.map +1 -0
  331. package/dist/collection/types/plugin.js +2 -0
  332. package/dist/collection/types/plugin.js.map +1 -0
  333. package/dist/collection/types/plugin.types.js +2 -0
  334. package/dist/collection/types/plugin.types.js.map +1 -0
  335. package/dist/collection/types/selection.js +2 -0
  336. package/dist/collection/types/selection.js.map +1 -0
  337. package/dist/collection/types/theme.js +2 -0
  338. package/dist/collection/types/theme.js.map +1 -0
  339. package/dist/collection/types/viewport.interfaces.js +2 -0
  340. package/dist/collection/types/viewport.interfaces.js.map +1 -0
  341. package/dist/collection/utils/batchGroupCollapse.js +190 -0
  342. package/dist/collection/utils/batchGroupCollapse.js.map +1 -0
  343. package/dist/collection/utils/browser.js +7 -0
  344. package/dist/collection/utils/browser.js.map +1 -0
  345. package/dist/collection/utils/cell-template-helper.js +181 -0
  346. package/dist/collection/utils/cell-template-helper.js.map +1 -0
  347. package/dist/collection/utils/closest.polifill.js +22 -0
  348. package/dist/collection/utils/closest.polifill.js.map +1 -0
  349. package/dist/collection/utils/column.utils.js +448 -0
  350. package/dist/collection/utils/column.utils.js.map +1 -0
  351. package/dist/collection/utils/consts.js +26 -0
  352. package/dist/collection/utils/consts.js.map +1 -0
  353. package/dist/collection/utils/events.js +39 -0
  354. package/dist/collection/utils/events.js.map +1 -0
  355. package/dist/collection/utils/header.utils.js +24 -0
  356. package/dist/collection/utils/header.utils.js.map +1 -0
  357. package/dist/collection/utils/index.js +133 -0
  358. package/dist/collection/utils/index.js.map +1 -0
  359. package/dist/collection/utils/key.codes.js +80 -0
  360. package/dist/collection/utils/key.codes.js.map +1 -0
  361. package/dist/collection/utils/key.utils.js +86 -0
  362. package/dist/collection/utils/key.utils.js.map +1 -0
  363. package/dist/collection/utils/mobile.js +7 -0
  364. package/dist/collection/utils/mobile.js.map +1 -0
  365. package/dist/collection/utils/platform.js +9 -0
  366. package/dist/collection/utils/platform.js.map +1 -0
  367. package/dist/collection/utils/row-header-utils.js +9 -0
  368. package/dist/collection/utils/row-header-utils.js.map +1 -0
  369. package/dist/collection/utils/store.types.js +2 -0
  370. package/dist/collection/utils/store.types.js.map +1 -0
  371. package/dist/collection/utils/store.utils.js +15 -0
  372. package/dist/collection/utils/store.utils.js.map +1 -0
  373. package/dist/esm/app-globals-C3ZHKjnB.js +14 -0
  374. package/dist/esm/app-globals-C3ZHKjnB.js.map +1 -0
  375. package/dist/esm/cell-renderer-C2Td6LKY.js +54 -0
  376. package/dist/esm/cell-renderer-C2Td6LKY.js.map +1 -0
  377. package/dist/esm/debounce-BfO9dz9v.js +488 -0
  378. package/dist/esm/debounce-BfO9dz9v.js.map +1 -0
  379. package/dist/esm/dimension.helpers-DDil7Dg0.js +3546 -0
  380. package/dist/esm/dimension.helpers-DDil7Dg0.js.map +1 -0
  381. package/dist/esm/edit.utils-ClxXX_x9.js +99 -0
  382. package/dist/esm/edit.utils-ClxXX_x9.js.map +1 -0
  383. package/dist/esm/events-BvSmBueA.js +43 -0
  384. package/dist/esm/events-BvSmBueA.js.map +1 -0
  385. package/dist/esm/filter.button-DmOE7VCJ.js +39 -0
  386. package/dist/esm/filter.button-DmOE7VCJ.js.map +1 -0
  387. package/dist/esm/grouping.row.renderer-6NYszUJA.js +60 -0
  388. package/dist/esm/grouping.row.renderer-6NYszUJA.js.map +1 -0
  389. package/dist/esm/header-cell-renderer-BVHTuFGE.js +1715 -0
  390. package/dist/esm/header-cell-renderer-BVHTuFGE.js.map +1 -0
  391. package/dist/esm/index-Dyptvvxf.js +2519 -0
  392. package/dist/esm/index-Dyptvvxf.js.map +1 -0
  393. package/dist/esm/index.js +6232 -0
  394. package/dist/esm/index.js.map +1 -0
  395. package/dist/esm/loader.js +17 -0
  396. package/dist/esm/loader.js.map +1 -0
  397. package/dist/esm/revo-grid.entry.js +3213 -0
  398. package/dist/esm/revo-grid.entry.js.map +1 -0
  399. package/dist/esm/revo-grid.js +27 -0
  400. package/dist/esm/revo-grid.js.map +1 -0
  401. package/dist/esm/revogr-attribution.revogr-extra.revogr-focus.revogr-grouping-overlay.revogr-header-unified.revogr-overlay-selection.revogr-row-headers.revogr-scroll-virtual.revogr-temp-range.entry.js.map +1 -0
  402. package/dist/esm/revogr-attribution_9.entry.js +2619 -0
  403. package/dist/esm/revogr-attribution_9.entry.js.map +1 -0
  404. package/dist/esm/revogr-clipboard.revogr-edit.revogr-order-editor.entry.js.map +1 -0
  405. package/dist/esm/revogr-clipboard_3.entry.js +467 -0
  406. package/dist/esm/revogr-clipboard_3.entry.js.map +1 -0
  407. package/dist/esm/revogr-data.revogr-header.revogr-viewport-scroll.vnode-html.entry.js.map +1 -0
  408. package/dist/esm/revogr-data_4.entry.js +1415 -0
  409. package/dist/esm/revogr-data_4.entry.js.map +1 -0
  410. package/dist/esm/revogr-filter-panel.entry.js +380 -0
  411. package/dist/esm/revogr-filter-panel.entry.js.map +1 -0
  412. package/dist/esm/row-renderer-sb6QTqH-.js +46 -0
  413. package/dist/esm/row-renderer-sb6QTqH-.js.map +1 -0
  414. package/dist/esm/text-editor-CxXqoicM.js +79 -0
  415. package/dist/esm/text-editor-CxXqoicM.js.map +1 -0
  416. package/dist/esm/throttle-DXYrmEeb.js +525 -0
  417. package/dist/esm/throttle-DXYrmEeb.js.map +1 -0
  418. package/dist/esm/tree-data.plugin-C2eXkf9_.js +5319 -0
  419. package/dist/esm/tree-data.plugin-C2eXkf9_.js.map +1 -0
  420. package/dist/esm/viewport.helpers-VXhsJZtn.js +55 -0
  421. package/dist/esm/viewport.helpers-VXhsJZtn.js.map +1 -0
  422. package/dist/esm/viewport.store-C-GnV31k.js +512 -0
  423. package/dist/esm/viewport.store-C-GnV31k.js.map +1 -0
  424. package/dist/index.cjs.js +1 -0
  425. package/dist/index.js +1 -0
  426. package/dist/revo-grid/app-globals-C3ZHKjnB.js +14 -0
  427. package/dist/revo-grid/app-globals-C3ZHKjnB.js.map +1 -0
  428. package/dist/revo-grid/cell-renderer-C2Td6LKY.js +54 -0
  429. package/dist/revo-grid/cell-renderer-C2Td6LKY.js.map +1 -0
  430. package/dist/revo-grid/debounce-BfO9dz9v.js +488 -0
  431. package/dist/revo-grid/debounce-BfO9dz9v.js.map +1 -0
  432. package/dist/revo-grid/dimension.helpers-DDil7Dg0.js +3546 -0
  433. package/dist/revo-grid/dimension.helpers-DDil7Dg0.js.map +1 -0
  434. package/dist/revo-grid/edit.utils-ClxXX_x9.js +99 -0
  435. package/dist/revo-grid/edit.utils-ClxXX_x9.js.map +1 -0
  436. package/dist/revo-grid/events-BvSmBueA.js +43 -0
  437. package/dist/revo-grid/events-BvSmBueA.js.map +1 -0
  438. package/dist/revo-grid/filter.button-DmOE7VCJ.js +39 -0
  439. package/dist/revo-grid/filter.button-DmOE7VCJ.js.map +1 -0
  440. package/dist/revo-grid/grouping.row.renderer-6NYszUJA.js +60 -0
  441. package/dist/revo-grid/grouping.row.renderer-6NYszUJA.js.map +1 -0
  442. package/dist/revo-grid/header-cell-renderer-BVHTuFGE.js +1715 -0
  443. package/dist/revo-grid/header-cell-renderer-BVHTuFGE.js.map +1 -0
  444. package/dist/revo-grid/index-Dyptvvxf.js +2490 -0
  445. package/dist/revo-grid/index-Dyptvvxf.js.map +1 -0
  446. package/dist/revo-grid/index.esm.js +6232 -0
  447. package/dist/revo-grid/index.esm.js.map +1 -0
  448. package/dist/revo-grid/loader.esm.js.map +1 -0
  449. package/dist/revo-grid/revo-grid.entry.esm.js.map +1 -0
  450. package/dist/revo-grid/revo-grid.entry.js +3213 -0
  451. package/dist/revo-grid/revo-grid.entry.js.map +1 -0
  452. package/dist/revo-grid/revo-grid.esm.js +27 -0
  453. package/dist/revo-grid/revo-grid.esm.js.map +1 -0
  454. package/dist/revo-grid/revogr-attribution.revogr-extra.revogr-focus.revogr-grouping-overlay.revogr-header-unified.revogr-overlay-selection.revogr-row-headers.revogr-scroll-virtual.revogr-temp-range.entry.esm.js.map +1 -0
  455. package/dist/revo-grid/revogr-attribution_9.entry.js +2619 -0
  456. package/dist/revo-grid/revogr-attribution_9.entry.js.map +1 -0
  457. package/dist/revo-grid/revogr-clipboard.revogr-edit.revogr-order-editor.entry.esm.js.map +1 -0
  458. package/dist/revo-grid/revogr-clipboard_3.entry.js +467 -0
  459. package/dist/revo-grid/revogr-clipboard_3.entry.js.map +1 -0
  460. package/dist/revo-grid/revogr-data.revogr-header.revogr-viewport-scroll.vnode-html.entry.esm.js.map +1 -0
  461. package/dist/revo-grid/revogr-data_4.entry.js +1415 -0
  462. package/dist/revo-grid/revogr-data_4.entry.js.map +1 -0
  463. package/dist/revo-grid/revogr-filter-panel.entry.esm.js.map +1 -0
  464. package/dist/revo-grid/revogr-filter-panel.entry.js +380 -0
  465. package/dist/revo-grid/revogr-filter-panel.entry.js.map +1 -0
  466. package/dist/revo-grid/row-renderer-sb6QTqH-.js +46 -0
  467. package/dist/revo-grid/row-renderer-sb6QTqH-.js.map +1 -0
  468. package/dist/revo-grid/text-editor-CxXqoicM.js +79 -0
  469. package/dist/revo-grid/text-editor-CxXqoicM.js.map +1 -0
  470. package/dist/revo-grid/throttle-DXYrmEeb.js +525 -0
  471. package/dist/revo-grid/throttle-DXYrmEeb.js.map +1 -0
  472. package/dist/revo-grid/tree-data.plugin-C2eXkf9_.js +5319 -0
  473. package/dist/revo-grid/tree-data.plugin-C2eXkf9_.js.map +1 -0
  474. package/dist/revo-grid/viewport.helpers-VXhsJZtn.js +55 -0
  475. package/dist/revo-grid/viewport.helpers-VXhsJZtn.js.map +1 -0
  476. package/dist/revo-grid/viewport.store-C-GnV31k.js +512 -0
  477. package/dist/revo-grid/viewport.store-C-GnV31k.js.map +1 -0
  478. package/dist/types/components/attribution/revogr-attribution.d.ts +12 -0
  479. package/dist/types/components/clipboard/revogr-clipboard.d.ts +89 -0
  480. package/dist/types/components/data/cell-renderer.d.ts +12 -0
  481. package/dist/types/components/data/column.service.d.ts +65 -0
  482. package/dist/types/components/data/revogr-data.d.ts +132 -0
  483. package/dist/types/components/data/row-highlight.plugin.d.ts +10 -0
  484. package/dist/types/components/data/row-renderer.d.ts +13 -0
  485. package/dist/types/components/editors/edit.utils.d.ts +3 -0
  486. package/dist/types/components/editors/revogr-edit.d.ts +63 -0
  487. package/dist/types/components/editors/text-editor.d.ts +43 -0
  488. package/dist/types/components/extra/revogr-extra.d.ts +38 -0
  489. package/dist/types/components/grouping-overlay/revogr-grouping-overlay.d.ts +71 -0
  490. package/dist/types/components/header/header-cell-renderer.d.ts +10 -0
  491. package/dist/types/components/header/header-group-renderer.d.ts +17 -0
  492. package/dist/types/components/header/header-renderer.d.ts +24 -0
  493. package/dist/types/components/header/resizable.directive.d.ts +60 -0
  494. package/dist/types/components/header/resizable.element.d.ts +5 -0
  495. package/dist/types/components/header/revogr-header-unified.d.ts +168 -0
  496. package/dist/types/components/header/revogr-header.d.ts +131 -0
  497. package/dist/types/components/order/order-renderer.d.ts +29 -0
  498. package/dist/types/components/order/order-row.service.d.ts +27 -0
  499. package/dist/types/components/order/revogr-order-editor.d.ts +56 -0
  500. package/dist/types/components/overlay/autofill.service.d.ts +80 -0
  501. package/dist/types/components/overlay/keyboard.service.d.ts +29 -0
  502. package/dist/types/components/overlay/revogr-overlay-selection.d.ts +295 -0
  503. package/dist/types/components/overlay/selection.utils.d.ts +47 -0
  504. package/dist/types/components/revoGrid/grid.helpers.d.ts +17 -0
  505. package/dist/types/components/revoGrid/plugin.service.d.ts +37 -0
  506. package/dist/types/components/revoGrid/revo-grid.d.ts +801 -0
  507. package/dist/types/components/revoGrid/viewport.helpers.d.ts +42 -0
  508. package/dist/types/components/revoGrid/viewport.resize.service.d.ts +17 -0
  509. package/dist/types/components/revoGrid/viewport.scrolling.service.d.ts +24 -0
  510. package/dist/types/components/revoGrid/viewport.service.d.ts +59 -0
  511. package/dist/types/components/rowHeaders/revogr-row-headers.d.ts +51 -0
  512. package/dist/types/components/rowHeaders/row-header-render.d.ts +9 -0
  513. package/dist/types/components/scroll/revogr-viewport-scroll.d.ts +159 -0
  514. package/dist/types/components/scrollable/autohide-scroll.plugin.d.ts +22 -0
  515. package/dist/types/components/scrollable/revogr-scroll-virtual.d.ts +49 -0
  516. package/dist/types/components/selectionFocus/revogr-focus.d.ts +63 -0
  517. package/dist/types/components/selectionTempRange/revogr-temp-range.d.ts +28 -0
  518. package/dist/types/components/vnode/vnode-converter.d.ts +19 -0
  519. package/dist/types/components/vnode/vnode.utils.d.ts +9 -0
  520. package/dist/types/components.d.ts +2928 -0
  521. package/dist/types/global/global.d.ts +1 -0
  522. package/dist/types/index.d.ts +9 -0
  523. package/dist/types/plugins/add-rows-on-paste.plugin.d.ts +14 -0
  524. package/dist/types/plugins/base.plugin.d.ts +51 -0
  525. package/dist/types/plugins/column-hide.plugin.d.ts +110 -0
  526. package/dist/types/plugins/column-manage.plugin.d.ts +225 -0
  527. package/dist/types/plugins/column-stretch.plugin.d.ts +159 -0
  528. package/dist/types/plugins/column.auto-size.plugin.d.ts +69 -0
  529. package/dist/types/plugins/column.stretch.plugin.d.ts +20 -0
  530. package/dist/types/plugins/customColumnDrag/column-move.helper.d.ts +71 -0
  531. package/dist/types/plugins/customColumnDrag/custom-column-drag.plugin.d.ts +35 -0
  532. package/dist/types/plugins/customColumnDrag/drag.handler.d.ts +112 -0
  533. package/dist/types/plugins/customColumnDrag/example.d.ts +31 -0
  534. package/dist/types/plugins/customColumnDrag/index.d.ts +5 -0
  535. package/dist/types/plugins/customColumnDrag/types.d.ts +46 -0
  536. package/dist/types/plugins/dispatcher.d.ts +20 -0
  537. package/dist/types/plugins/enhanced-scrollbar.plugin.d.ts +76 -0
  538. package/dist/types/plugins/export/csv.d.ts +9 -0
  539. package/dist/types/plugins/export/export.plugin.d.ts +24 -0
  540. package/dist/types/plugins/export/types.d.ts +23 -0
  541. package/dist/types/plugins/filter/conditions/equal.d.ts +4 -0
  542. package/dist/types/plugins/filter/conditions/number/greaterThan.d.ts +3 -0
  543. package/dist/types/plugins/filter/conditions/number/greaterThanOrEqual.d.ts +3 -0
  544. package/dist/types/plugins/filter/conditions/number/lessThan.d.ts +3 -0
  545. package/dist/types/plugins/filter/conditions/number/lessThanOrEqual.d.ts +3 -0
  546. package/dist/types/plugins/filter/conditions/set.d.ts +4 -0
  547. package/dist/types/plugins/filter/conditions/string/beginswith.d.ts +3 -0
  548. package/dist/types/plugins/filter/conditions/string/contains.d.ts +4 -0
  549. package/dist/types/plugins/filter/filter.button.d.ts +14 -0
  550. package/dist/types/plugins/filter/filter.indexed.d.ts +20 -0
  551. package/dist/types/plugins/filter/filter.panel.d.ts +53 -0
  552. package/dist/types/plugins/filter/filter.plugin.d.ts +73 -0
  553. package/dist/types/plugins/filter/filter.types.d.ts +129 -0
  554. package/dist/types/plugins/grid-setup.d.ts +65 -0
  555. package/dist/types/plugins/groupingRow/grouping.const.d.ts +14 -0
  556. package/dist/types/plugins/groupingRow/grouping.row.expand.service.d.ts +15 -0
  557. package/dist/types/plugins/groupingRow/grouping.row.plugin.d.ts +39 -0
  558. package/dist/types/plugins/groupingRow/grouping.row.renderer.d.ts +6 -0
  559. package/dist/types/plugins/groupingRow/grouping.row.types.d.ts +144 -0
  560. package/dist/types/plugins/groupingRow/grouping.service.d.ts +36 -0
  561. package/dist/types/plugins/groupingRow/grouping.trimmed.service.d.ts +10 -0
  562. package/dist/types/plugins/index.d.ts +22 -0
  563. package/dist/types/plugins/manual-focus.plugin.d.ts +113 -0
  564. package/dist/types/plugins/moveColumn/column.drag.plugin.d.ts +50 -0
  565. package/dist/types/plugins/moveColumn/order-column.handler.d.ts +16 -0
  566. package/dist/types/plugins/pin-shadow.plugin.d.ts +73 -0
  567. package/dist/types/plugins/resize-indicator.plugin.d.ts +71 -0
  568. package/dist/types/plugins/row-select-plugin-2026228.d.ts +367 -0
  569. package/dist/types/plugins/row-select.plugin.d.ts +378 -0
  570. package/dist/types/plugins/rtl/rtl.plugin.d.ts +37 -0
  571. package/dist/types/plugins/sorting/sorting.func.d.ts +9 -0
  572. package/dist/types/plugins/sorting/sorting.plugin.d.ts +48 -0
  573. package/dist/types/plugins/sorting/sorting.sign.d.ts +6 -0
  574. package/dist/types/plugins/sorting/sorting.types.d.ts +14 -0
  575. package/dist/types/plugins/tree-data.plugin.d.ts +56 -0
  576. package/dist/types/plugins/wcag/index.d.ts +26 -0
  577. package/dist/types/services/cell.helpers.d.ts +2 -0
  578. package/dist/types/services/column.data.provider.d.ts +27 -0
  579. package/dist/types/services/data.provider.d.ts +36 -0
  580. package/dist/types/services/dimension.provider.d.ts +71 -0
  581. package/dist/types/services/local.scroll.service.d.ts +36 -0
  582. package/dist/types/services/local.scroll.timer.d.ts +32 -0
  583. package/dist/types/services/selection.store.connector.d.ts +74 -0
  584. package/dist/types/services/viewport.provider.d.ts +9 -0
  585. package/dist/types/stencil-public-runtime.d.ts +1709 -0
  586. package/dist/types/store/dataSource/data.proxy.d.ts +14 -0
  587. package/dist/types/store/dataSource/data.store.d.ts +77 -0
  588. package/dist/types/store/dataSource/index.d.ts +3 -0
  589. package/dist/types/store/dataSource/trimmed.plugin.d.ts +12 -0
  590. package/dist/types/store/dimension/dimension.helpers.d.ts +24 -0
  591. package/dist/types/store/dimension/dimension.recalculate.plugin.d.ts +15 -0
  592. package/dist/types/store/dimension/dimension.store.d.ts +34 -0
  593. package/dist/types/store/dimension/dimension.trim.plugin.d.ts +13 -0
  594. package/dist/types/store/dimension/index.d.ts +2 -0
  595. package/dist/types/store/index.d.ts +8 -0
  596. package/dist/types/store/selection/index.d.ts +2 -0
  597. package/dist/types/store/selection/selection.helpers.d.ts +5 -0
  598. package/dist/types/store/selection/selection.store.d.ts +22 -0
  599. package/dist/types/store/vp/index.d.ts +7 -0
  600. package/dist/types/store/vp/viewport.helpers.d.ts +54 -0
  601. package/dist/types/store/vp/viewport.store.d.ts +38 -0
  602. package/dist/types/themeManager/theme.compact.d.ts +4 -0
  603. package/dist/types/themeManager/theme.default.d.ts +4 -0
  604. package/dist/types/themeManager/theme.material.d.ts +4 -0
  605. package/dist/types/themeManager/theme.service.d.ts +13 -0
  606. package/dist/types/types/dimension.d.ts +8 -0
  607. package/dist/types/types/events.d.ts +2 -0
  608. package/dist/types/types/index.d.ts +8 -0
  609. package/dist/types/types/interfaces.d.ts +795 -0
  610. package/dist/types/types/plugin.d.ts +9 -0
  611. package/dist/types/types/plugin.types.d.ts +48 -0
  612. package/dist/types/types/selection.d.ts +178 -0
  613. package/dist/types/types/theme.d.ts +7 -0
  614. package/dist/types/types/viewport.interfaces.d.ts +45 -0
  615. package/dist/types/utils/batchGroupCollapse.d.ts +77 -0
  616. package/dist/types/utils/browser.d.ts +1 -0
  617. package/dist/types/utils/cell-template-helper.d.ts +74 -0
  618. package/dist/types/utils/closest.polifill.d.ts +0 -0
  619. package/dist/types/utils/column.utils.d.ts +110 -0
  620. package/dist/types/utils/consts.d.ts +22 -0
  621. package/dist/types/utils/events.d.ts +5 -0
  622. package/dist/types/utils/header.utils.d.ts +2 -0
  623. package/dist/types/utils/index.d.ts +32 -0
  624. package/dist/types/utils/key.codes.d.ts +73 -0
  625. package/dist/types/utils/key.utils.d.ts +12 -0
  626. package/dist/types/utils/mobile.d.ts +1 -0
  627. package/dist/types/utils/platform.d.ts +4 -0
  628. package/dist/types/utils/row-header-utils.d.ts +2 -0
  629. package/dist/types/utils/store.types.d.ts +97 -0
  630. package/dist/types/utils/store.utils.d.ts +10 -0
  631. package/hydrate/index.d.ts +273 -0
  632. package/hydrate/index.js +39851 -0
  633. package/hydrate/index.mjs +39843 -0
  634. package/hydrate/package.json +12 -0
  635. package/loader/cdn.js +4 -0
  636. package/loader/index.cjs.js +4 -0
  637. package/loader/index.d.ts +24 -0
  638. package/loader/index.es2017.js +4 -0
  639. package/loader/index.js +5 -0
  640. package/package.json +149 -0
  641. package/readme.md +303 -0
  642. package/standalone/column.service.js +1110 -0
  643. package/standalone/column.service.js.map +1 -0
  644. package/standalone/consts.js +30 -0
  645. package/standalone/consts.js.map +1 -0
  646. package/standalone/data.store.js +3101 -0
  647. package/standalone/data.store.js.map +1 -0
  648. package/standalone/debounce.js +215 -0
  649. package/standalone/debounce.js.map +1 -0
  650. package/standalone/dimension.helpers.js +229 -0
  651. package/standalone/dimension.helpers.js.map +1 -0
  652. package/standalone/filter.button.js +39 -0
  653. package/standalone/filter.button.js.map +1 -0
  654. package/standalone/grouping.service.js +234 -0
  655. package/standalone/grouping.service.js.map +1 -0
  656. package/standalone/header-group-renderer.js +634 -0
  657. package/standalone/header-group-renderer.js.map +1 -0
  658. package/standalone/index.d.ts +72 -0
  659. package/standalone/index.js +6272 -0
  660. package/standalone/index.js.map +1 -0
  661. package/standalone/index2.js +131 -0
  662. package/standalone/index2.js.map +1 -0
  663. package/standalone/local.scroll.timer.js +222 -0
  664. package/standalone/local.scroll.timer.js.map +1 -0
  665. package/standalone/platform.js +90 -0
  666. package/standalone/platform.js.map +1 -0
  667. package/standalone/revo-grid.d.ts +11 -0
  668. package/standalone/revo-grid.js +8734 -0
  669. package/standalone/revo-grid.js.map +1 -0
  670. package/standalone/revogr-attribution.d.ts +11 -0
  671. package/standalone/revogr-attribution.js +12 -0
  672. package/standalone/revogr-attribution.js.map +1 -0
  673. package/standalone/revogr-attribution2.js +32 -0
  674. package/standalone/revogr-attribution2.js.map +1 -0
  675. package/standalone/revogr-clipboard.d.ts +11 -0
  676. package/standalone/revogr-clipboard.js +12 -0
  677. package/standalone/revogr-clipboard.js.map +1 -0
  678. package/standalone/revogr-clipboard2.js +179 -0
  679. package/standalone/revogr-clipboard2.js.map +1 -0
  680. package/standalone/revogr-data.d.ts +11 -0
  681. package/standalone/revogr-data.js +12 -0
  682. package/standalone/revogr-data.js.map +1 -0
  683. package/standalone/revogr-data2.js +503 -0
  684. package/standalone/revogr-data2.js.map +1 -0
  685. package/standalone/revogr-edit.d.ts +11 -0
  686. package/standalone/revogr-edit.js +12 -0
  687. package/standalone/revogr-edit.js.map +1 -0
  688. package/standalone/revogr-edit2.js +330 -0
  689. package/standalone/revogr-edit2.js.map +1 -0
  690. package/standalone/revogr-extra.d.ts +11 -0
  691. package/standalone/revogr-extra.js +12 -0
  692. package/standalone/revogr-extra.js.map +1 -0
  693. package/standalone/revogr-extra2.js +73 -0
  694. package/standalone/revogr-extra2.js.map +1 -0
  695. package/standalone/revogr-filter-panel.d.ts +11 -0
  696. package/standalone/revogr-filter-panel.js +411 -0
  697. package/standalone/revogr-filter-panel.js.map +1 -0
  698. package/standalone/revogr-focus.d.ts +11 -0
  699. package/standalone/revogr-focus.js +12 -0
  700. package/standalone/revogr-focus.js.map +1 -0
  701. package/standalone/revogr-focus2.js +119 -0
  702. package/standalone/revogr-focus2.js.map +1 -0
  703. package/standalone/revogr-grouping-overlay.d.ts +11 -0
  704. package/standalone/revogr-grouping-overlay.js +12 -0
  705. package/standalone/revogr-grouping-overlay.js.map +1 -0
  706. package/standalone/revogr-grouping-overlay2.js +356 -0
  707. package/standalone/revogr-grouping-overlay2.js.map +1 -0
  708. package/standalone/revogr-header-unified.d.ts +11 -0
  709. package/standalone/revogr-header-unified.js +12 -0
  710. package/standalone/revogr-header-unified.js.map +1 -0
  711. package/standalone/revogr-header-unified2.js +781 -0
  712. package/standalone/revogr-header-unified2.js.map +1 -0
  713. package/standalone/revogr-header.d.ts +11 -0
  714. package/standalone/revogr-header.js +12 -0
  715. package/standalone/revogr-header.js.map +1 -0
  716. package/standalone/revogr-header2.js +343 -0
  717. package/standalone/revogr-header2.js.map +1 -0
  718. package/standalone/revogr-order-editor.d.ts +11 -0
  719. package/standalone/revogr-order-editor.js +12 -0
  720. package/standalone/revogr-order-editor.js.map +1 -0
  721. package/standalone/revogr-order-editor2.js +201 -0
  722. package/standalone/revogr-order-editor2.js.map +1 -0
  723. package/standalone/revogr-overlay-selection.d.ts +11 -0
  724. package/standalone/revogr-overlay-selection.js +12 -0
  725. package/standalone/revogr-overlay-selection.js.map +1 -0
  726. package/standalone/revogr-overlay-selection2.js +1068 -0
  727. package/standalone/revogr-overlay-selection2.js.map +1 -0
  728. package/standalone/revogr-row-headers.d.ts +11 -0
  729. package/standalone/revogr-row-headers.js +12 -0
  730. package/standalone/revogr-row-headers.js.map +1 -0
  731. package/standalone/revogr-row-headers2.js +625 -0
  732. package/standalone/revogr-row-headers2.js.map +1 -0
  733. package/standalone/revogr-scroll-virtual.d.ts +11 -0
  734. package/standalone/revogr-scroll-virtual.js +12 -0
  735. package/standalone/revogr-scroll-virtual.js.map +1 -0
  736. package/standalone/revogr-scroll-virtual2.js +235 -0
  737. package/standalone/revogr-scroll-virtual2.js.map +1 -0
  738. package/standalone/revogr-temp-range.d.ts +11 -0
  739. package/standalone/revogr-temp-range.js +12 -0
  740. package/standalone/revogr-temp-range.js.map +1 -0
  741. package/standalone/revogr-temp-range2.js +93 -0
  742. package/standalone/revogr-temp-range2.js.map +1 -0
  743. package/standalone/revogr-viewport-scroll.d.ts +11 -0
  744. package/standalone/revogr-viewport-scroll.js +12 -0
  745. package/standalone/revogr-viewport-scroll.js.map +1 -0
  746. package/standalone/revogr-viewport-scroll2.js +761 -0
  747. package/standalone/revogr-viewport-scroll2.js.map +1 -0
  748. package/standalone/row-renderer.js +41 -0
  749. package/standalone/row-renderer.js.map +1 -0
  750. package/standalone/selection.utils.js +179 -0
  751. package/standalone/selection.utils.js.map +1 -0
  752. package/standalone/throttle.js +75 -0
  753. package/standalone/throttle.js.map +1 -0
  754. package/standalone/toNumber.js +282 -0
  755. package/standalone/toNumber.js.map +1 -0
  756. package/standalone/vnode-converter.js +46 -0
  757. package/standalone/vnode-converter.js.map +1 -0
  758. package/standalone/vnode-html.d.ts +11 -0
  759. package/standalone/vnode-html.js +12 -0
  760. package/standalone/vnode-html.js.map +1 -0
@@ -0,0 +1,761 @@
1
+ /*!
2
+ * Built by Revolist OU ❤️
3
+ */
4
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
5
+ import { t as throttle } from './throttle.js';
6
+ import { L as LocalScrollTimer, a as LocalScrollService } from './local.scroll.timer.js';
7
+
8
+ function isSafariDesktop() {
9
+ return /Safari/i.test(navigator.userAgent) && !/Chrome/i.test(navigator.userAgent) && !navigator.userAgent.match(/(iPad|iPhone|iPod)/g);
10
+ }
11
+
12
+ /**
13
+ * Collects data for pinned columns in the required @ViewportProps format.
14
+ */
15
+ /**
16
+ * Represents the slot names for the viewport slots.
17
+ */
18
+ const HEADER_SLOT = 'header'; // Slot name for the header slot
19
+ const FOOTER_SLOT = 'footer'; // Slot name for the footer slot
20
+ const CONTENT_SLOT = 'content'; // Slot name for the content slot
21
+ const DATA_SLOT = 'data'; // Slot name for the data slot
22
+ /**
23
+ * Returns the last visible cell in the viewport for a given row type.
24
+ * Coordinates are not zero-based and are relative to the viewport.
25
+ * If needed to be zero-based they can be adjusted by subtracting 1.
26
+ */
27
+ function getLastCell(data, rowType) {
28
+ // Get the last visible column count from the viewport column data.
29
+ const lastVisibleColumnCount = data.viewports[data.colType].store.get('realCount');
30
+ // Get the last visible row count for the given row type from the viewport column data.
31
+ const lastVisibleRowCount = data.viewports[rowType].store.get('realCount');
32
+ // Return the last visible cell with the last visible column count and row count.
33
+ return {
34
+ x: lastVisibleColumnCount,
35
+ y: lastVisibleRowCount,
36
+ };
37
+ }
38
+ function viewportDataPartition(data, type, slot, fixed) {
39
+ return {
40
+ colData: data.colStore,
41
+ viewportCol: data.viewports[data.colType].store,
42
+ viewportRow: data.viewports[type].store,
43
+ /**
44
+ * lastCell is the last real coordinate + 1, saved to selection store
45
+ */
46
+ lastCell: getLastCell(data, type),
47
+ slot,
48
+ type,
49
+ canDrag: !fixed,
50
+ position: data.position,
51
+ dataStore: data.rowStores[type].store,
52
+ dimensionCol: data.dimensions[data.colType].store,
53
+ dimensionRow: data.dimensions[type].store,
54
+ style: fixed
55
+ ? { height: `${data.dimensions[type].store.get('realSize')}px` }
56
+ : undefined,
57
+ };
58
+ }
59
+
60
+ class GridResizeService {
61
+ constructor(el, resize, elements) {
62
+ this.resize = resize;
63
+ this.resizeObserver = null;
64
+ this.previousSize = {
65
+ width: 0,
66
+ height: 0,
67
+ };
68
+ this.apply = throttle((e) => {
69
+ var _a;
70
+ const entry = {
71
+ width: e.width,
72
+ height: e.height,
73
+ };
74
+ (_a = this.resize) === null || _a === void 0 ? void 0 : _a.call(this, entry, this.previousSize);
75
+ this.previousSize = entry;
76
+ }, 40, {
77
+ leading: false,
78
+ trailing: true,
79
+ });
80
+ const extras = [];
81
+ elements.forEach((element) => {
82
+ if (element) {
83
+ extras.push(element);
84
+ }
85
+ });
86
+ this.init(el, extras);
87
+ }
88
+ init(el, extras = []) {
89
+ const observer = this.resizeObserver = new ResizeObserver((e) => {
90
+ if (e.length) {
91
+ if (e[0].target === el) {
92
+ this.apply(e[0].contentRect);
93
+ }
94
+ else {
95
+ this.apply(el.getBoundingClientRect());
96
+ }
97
+ }
98
+ });
99
+ observer.observe(el);
100
+ extras.forEach((extra) => {
101
+ observer.observe(extra);
102
+ });
103
+ }
104
+ destroy() {
105
+ var _a;
106
+ (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
107
+ this.resizeObserver = null;
108
+ }
109
+ }
110
+
111
+ const revogrViewportScrollStyleCss = ".rowHeaders{z-index:2;font-size:10px;display:flex;height:100%}.rowHeaders revogr-data .rgCell{text-align:center}.rowHeaders .rgCell{padding:0 1em !important;min-width:100%}revogr-viewport-scroll{-ms-overflow-style:none;scrollbar-width:none;overflow-x:auto;overflow-y:hidden;position:relative;z-index:1;height:100%}revogr-viewport-scroll::-webkit-scrollbar{display:none;-webkit-appearance:none}revogr-viewport-scroll.colPinStart,revogr-viewport-scroll.colPinEnd{z-index:2;overflow:visible}revogr-viewport-scroll.colPinStart:has(.resizable-r:hover),revogr-viewport-scroll.colPinStart:has(.resizable-l:hover),revogr-viewport-scroll.colPinEnd:has(.resizable-r:hover),revogr-viewport-scroll.colPinEnd:has(.resizable-l:hover){z-index:93}revogr-viewport-scroll.colPinEnd:has(.active){overflow:visible}revogr-viewport-scroll .content-wrapper{overflow:hidden}revogr-viewport-scroll .inner-content-table{display:flex;flex-direction:column;max-height:100%;width:100%;min-width:100%;position:relative;z-index:0}revogr-viewport-scroll .vertical-inner{overflow-y:auto;position:relative;width:100%;flex-grow:1;outline:none;-ms-overflow-style:none;scrollbar-width:none;}revogr-viewport-scroll .vertical-inner::-webkit-scrollbar{display:none;-webkit-appearance:none}revogr-viewport-scroll .vertical-inner revogr-data,revogr-viewport-scroll .vertical-inner revogr-overlay-selection{height:100%}";
112
+
113
+ const RevogrViewportScroll = /*@__PURE__*/ proxyCustomElement(class RevogrViewportScroll extends HTMLElement {
114
+ constructor() {
115
+ super();
116
+ this.__registerHost();
117
+ this.scrollViewport = createEvent(this, "scrollviewport", 7);
118
+ this.resizeViewport = createEvent(this, "resizeviewport", 7);
119
+ this.scrollchange = createEvent(this, "scrollchange", 7);
120
+ this.silentScroll = createEvent(this, "scrollviewportsilent", 7);
121
+ /**
122
+ * Width of inner content
123
+ */
124
+ this.contentWidth = 0;
125
+ this.lastHorizontalScrollLeft = RevogrViewportScroll.UNKNOWN_SCROLL_COORDINATE;
126
+ this.lastVerticalScrollTop = RevogrViewportScroll.UNKNOWN_SCROLL_COORDINATE;
127
+ /**
128
+ * Height of inner content
129
+ */
130
+ this.contentHeight = 0;
131
+ this.setVerticalScrollRef = (el) => {
132
+ if (this.verticalScroll !== el) {
133
+ this.verticalScroll = el;
134
+ this.lastVerticalScrollTop = RevogrViewportScroll.UNKNOWN_SCROLL_COORDINATE;
135
+ }
136
+ };
137
+ // 用于防抖的定时器
138
+ this.scrollVisibilityTimer = null;
139
+ // 待处理的滚动可见性更新
140
+ this.pendingScrollVisibility = new Map();
141
+ }
142
+ isLayoutUpdating() {
143
+ var _a;
144
+ const grid = (_a = this.horizontalScroll) === null || _a === void 0 ? void 0 : _a.closest('revo-grid');
145
+ return !!(grid === null || grid === void 0 ? void 0 : grid.hasAttribute('data-columns-updating'));
146
+ }
147
+ syncHorizontalScrollCacheFromDom() {
148
+ var _a, _b;
149
+ const value = (_b = (_a = this.horizontalScroll) === null || _a === void 0 ? void 0 : _a.scrollLeft) !== null && _b !== void 0 ? _b : 0;
150
+ this.lastHorizontalScrollLeft = value;
151
+ return value;
152
+ }
153
+ syncVerticalScrollCacheFromDom() {
154
+ var _a, _b;
155
+ const value = (_b = (_a = this.verticalScroll) === null || _a === void 0 ? void 0 : _a.scrollTop) !== null && _b !== void 0 ? _b : 0;
156
+ this.lastVerticalScrollTop = value;
157
+ return value;
158
+ }
159
+ getKnownHorizontalScrollLeft() {
160
+ return Number.isNaN(this.lastHorizontalScrollLeft)
161
+ ? this.syncHorizontalScrollCacheFromDom()
162
+ : this.lastHorizontalScrollLeft;
163
+ }
164
+ getKnownVerticalScrollTop() {
165
+ return Number.isNaN(this.lastVerticalScrollTop)
166
+ ? this.syncVerticalScrollCacheFromDom()
167
+ : this.lastVerticalScrollTop;
168
+ }
169
+ setHorizontalScrollIfNeeded(next) {
170
+ if (!this.horizontalScroll) {
171
+ return false;
172
+ }
173
+ const current = this.getKnownHorizontalScrollLeft();
174
+ if (Math.abs(current - next) < RevogrViewportScroll.SCROLL_WRITE_EPSILON) {
175
+ return false;
176
+ }
177
+ this.horizontalScroll.scrollLeft = next;
178
+ this.lastHorizontalScrollLeft = next;
179
+ return true;
180
+ }
181
+ setVerticalScrollIfNeeded(next) {
182
+ if (!this.verticalScroll) {
183
+ return false;
184
+ }
185
+ const current = this.getKnownVerticalScrollTop();
186
+ if (Math.abs(current - next) < RevogrViewportScroll.SCROLL_WRITE_EPSILON) {
187
+ return false;
188
+ }
189
+ this.verticalScroll.scrollTop = next;
190
+ this.lastVerticalScrollTop = next;
191
+ return true;
192
+ }
193
+ /**
194
+ * 监听 contentWidth 变化,在渲染前调整滚动位置
195
+ * 这样可以避免空白闪烁
196
+ */
197
+ contentWidthChanged(newValue, oldValue) {
198
+ // 宽度变化时都需要检查和调整滚动位置
199
+ if (this.horizontalScroll && newValue !== oldValue) {
200
+ // 使用 requestAnimationFrame 确保在 DOM 更新后执行
201
+ requestAnimationFrame(() => {
202
+ var _a;
203
+ if (!this.horizontalScroll)
204
+ return;
205
+ if (this.isLayoutUpdating()) {
206
+ return;
207
+ }
208
+ const clientWidth = this.horizontalScroll.clientWidth;
209
+ const maxScrollLeft = Math.max(0, newValue - clientWidth);
210
+ const currentScrollLeft = this.syncHorizontalScrollCacheFromDom();
211
+ // 如果当前滚动位置超过最大可滚动位置,调整到最大位置
212
+ if (currentScrollLeft > maxScrollLeft && maxScrollLeft >= 0) {
213
+ this.setHorizontalScrollIfNeeded(maxScrollLeft);
214
+ if (this.colType === 'rgCol') {
215
+ (_a = this.localScrollService) === null || _a === void 0 ? void 0 : _a.scroll(maxScrollLeft, 'rgCol', true);
216
+ }
217
+ }
218
+ });
219
+ }
220
+ }
221
+ /**
222
+ * 监听内容高度变化,处理折叠后滚动条超出导致的空白闪烁
223
+ */
224
+ contentHeightChanged(newValue, oldValue) {
225
+ var _a;
226
+ if (!this.verticalScroll || newValue === oldValue) {
227
+ return;
228
+ }
229
+ if (newValue >= oldValue) {
230
+ return;
231
+ }
232
+ // 在高度变小时,当前 scrollTop 可能超过最大值,需回退到可滚范围
233
+ const previousScrollTop = this.syncVerticalScrollCacheFromDom();
234
+ const clientHeight = this.verticalScroll.clientHeight;
235
+ const maxScrollTop = Math.max(0, newValue - clientHeight);
236
+ const nextScrollTop = Math.min(previousScrollTop, maxScrollTop);
237
+ const didAdjust = nextScrollTop !== previousScrollTop;
238
+ if (didAdjust) {
239
+ this.setVerticalScrollIfNeeded(nextScrollTop);
240
+ }
241
+ // 仅主视口在实际发生校正时广播垂直坐标,避免固定列/空视口把 scrollTop 错误回写为 0
242
+ if (didAdjust && this.colType === 'rgCol') {
243
+ (_a = this.localScrollService) === null || _a === void 0 ? void 0 : _a.scroll(nextScrollTop, 'rgRow', true);
244
+ }
245
+ }
246
+ /**
247
+ * 保证当前垂直滚动位置不超过内容高度
248
+ * 用于内容高度变化后的一致性校正(例如树形折叠导致行数骤减)
249
+ */
250
+ normalizeVerticalScrollPosition() {
251
+ var _a;
252
+ if (!this.verticalScroll)
253
+ return;
254
+ const clientHeight = this.verticalScroll.clientHeight;
255
+ const maxScrollTop = Math.max(0, this.contentHeight - clientHeight);
256
+ const currentScrollTop = this.syncVerticalScrollCacheFromDom();
257
+ if (currentScrollTop > maxScrollTop) {
258
+ this.setVerticalScrollIfNeeded(maxScrollTop);
259
+ // 仅主视口广播,避免非主视口坐标污染
260
+ if (this.colType === 'rgCol') {
261
+ (_a = this.localScrollService) === null || _a === void 0 ? void 0 : _a.scroll(maxScrollTop, 'rgRow', true);
262
+ }
263
+ }
264
+ }
265
+ async setScroll(e) {
266
+ var _a, _b;
267
+ this.localScrollTimer.latestScrollUpdate(e.dimension);
268
+ const coordinate = e.coordinate;
269
+ // 目标坐标已一致时,跳过本地滚动服务,避免进入无效的 RAF + scrollTop 回写链路
270
+ if (typeof coordinate === 'number') {
271
+ if (e.dimension === 'rgCol') {
272
+ if (Math.abs(this.getKnownHorizontalScrollLeft() - coordinate) <
273
+ RevogrViewportScroll.SCROLL_WRITE_EPSILON) {
274
+ return;
275
+ }
276
+ }
277
+ else if (e.dimension === 'rgRow') {
278
+ const shouldKeepTransformReset = !!((_a = this.verticalScroll) === null || _a === void 0 ? void 0 : _a.style.transform);
279
+ if (!shouldKeepTransformReset &&
280
+ Math.abs(this.getKnownVerticalScrollTop() - coordinate) <
281
+ RevogrViewportScroll.SCROLL_WRITE_EPSILON) {
282
+ return;
283
+ }
284
+ }
285
+ }
286
+ (_b = this.localScrollService) === null || _b === void 0 ? void 0 : _b.setScroll(e);
287
+ }
288
+ /**
289
+ * update on delta in case we don't know existing position or external change
290
+ * @param e
291
+ */
292
+ async changeScroll(e, silent = false) {
293
+ var _a, _b, _c, _d;
294
+ if (silent) {
295
+ if (e.coordinate && this.verticalScroll) {
296
+ switch (e.dimension) {
297
+ // for mobile devices to skip negative scroll loop. only on vertical scroll
298
+ case 'rgRow':
299
+ this.verticalScroll.style.transform = `translateY(${ -1 * e.coordinate}px)`;
300
+ break;
301
+ }
302
+ }
303
+ return;
304
+ }
305
+ if (e.delta) {
306
+ // 滚动阈值:小于此值认为没有实际滚动空间
307
+ const SCROLL_THRESHOLD = 10;
308
+ // 检查是否有滚动空间
309
+ if (e.dimension === 'rgCol') {
310
+ const maxScrollLeft = Math.max(0, this.contentWidth - this.horizontalScroll.clientWidth);
311
+ // 如果没有滚动空间,不处理滚动
312
+ if (maxScrollLeft <= SCROLL_THRESHOLD) {
313
+ e.coordinate = 0;
314
+ return e;
315
+ }
316
+ e.coordinate = this.horizontalScroll.scrollLeft + e.delta;
317
+ }
318
+ else if (e.dimension === 'rgRow') {
319
+ const maxScrollTop = Math.max(0, this.contentHeight - ((_b = (_a = this.verticalScroll) === null || _a === void 0 ? void 0 : _a.clientHeight) !== null && _b !== void 0 ? _b : 0));
320
+ // 如果没有滚动空间,不处理滚动
321
+ if (maxScrollTop <= SCROLL_THRESHOLD) {
322
+ e.coordinate = 0;
323
+ return e;
324
+ }
325
+ e.coordinate = ((_d = (_c = this.verticalScroll) === null || _c === void 0 ? void 0 : _c.scrollTop) !== null && _d !== void 0 ? _d : 0) + e.delta;
326
+ }
327
+ this.setScroll(e);
328
+ }
329
+ return e;
330
+ }
331
+ /**
332
+ * Dispatch this event to trigger vertical mouse wheel from plugins
333
+ */
334
+ mousewheelVertical({ detail: e, }) {
335
+ this.verticalMouseWheel(e);
336
+ }
337
+ /**
338
+ * Dispatch this event to trigger horizontal mouse wheel from plugins
339
+ */
340
+ mousewheelHorizontal({ detail: e, }) {
341
+ this.horizontalMouseWheel(e);
342
+ }
343
+ /**
344
+ * Allows to use outside listener
345
+ */
346
+ scrollApply({ detail: { type, coordinate }, }) {
347
+ this.applyOnScroll(type, coordinate, true);
348
+ }
349
+ connectedCallback() {
350
+ /**
351
+ * Bind scroll functions for farther usage
352
+ */
353
+ // allow mousewheel for all devices including mobile
354
+ this.verticalMouseWheel = this.onVerticalMouseWheel.bind(this, 'rgRow', 'deltaY');
355
+ this.horizontalMouseWheel = this.onHorizontalMouseWheel.bind(this, 'rgCol');
356
+ this.localScrollTimer = new LocalScrollTimer('ontouchstart' in document.documentElement ? 0 : 10);
357
+ /**
358
+ * Create local scroll service
359
+ */
360
+ this.localScrollService = new LocalScrollService({
361
+ // to improve safari smoothnes on scroll
362
+ skipAnimationFrame: isSafariDesktop(),
363
+ runScroll: e => this.scrollViewport.emit(e),
364
+ applyScroll: e => {
365
+ this.localScrollTimer.setCoordinate(e);
366
+ switch (e.dimension) {
367
+ case 'rgCol':
368
+ // this will trigger on scroll event
369
+ this.setHorizontalScrollIfNeeded(e.coordinate);
370
+ break;
371
+ case 'rgRow':
372
+ if (this.verticalScroll) {
373
+ // this will trigger on scroll event
374
+ this.setVerticalScrollIfNeeded(e.coordinate);
375
+ // for mobile devices to skip negative scroll loop. only on vertical scroll
376
+ if (this.verticalScroll.style.transform) {
377
+ this.verticalScroll.style.transform = '';
378
+ }
379
+ }
380
+ break;
381
+ }
382
+ },
383
+ });
384
+ }
385
+ componentDidLoad() {
386
+ // track viewport resize
387
+ this.resizeService = new GridResizeService(this.horizontalScroll, (entry) => {
388
+ var _a, _b, _c, _d, _e, _f, _g, _h;
389
+ const els = {};
390
+ let calculatedHeight = entry.height || 0;
391
+ if (calculatedHeight) {
392
+ calculatedHeight -=
393
+ ((_b = (_a = this.header) === null || _a === void 0 ? void 0 : _a.clientHeight) !== null && _b !== void 0 ? _b : 0) +
394
+ ((_d = (_c = this.footer) === null || _c === void 0 ? void 0 : _c.clientHeight) !== null && _d !== void 0 ? _d : 0);
395
+ }
396
+ els.rgRow = {
397
+ size: calculatedHeight,
398
+ contentSize: this.contentHeight,
399
+ scroll: (_f = (_e = this.verticalScroll) === null || _e === void 0 ? void 0 : _e.scrollTop) !== null && _f !== void 0 ? _f : 0,
400
+ noScroll: false,
401
+ };
402
+ const calculatedWidth = entry.width || 0;
403
+ els.rgCol = {
404
+ size: calculatedWidth,
405
+ contentSize: this.contentWidth,
406
+ scroll: this.horizontalScroll.scrollLeft,
407
+ noScroll: this.colType !== 'rgCol',
408
+ };
409
+ // Process changes in order: width first, then height
410
+ const dimensions = ['rgCol', 'rgRow'];
411
+ for (const dimension of dimensions) {
412
+ const item = els[dimension];
413
+ if (!item)
414
+ continue;
415
+ this.resizeViewport.emit({
416
+ dimension,
417
+ size: item.size,
418
+ rowHeader: this.rowHeader,
419
+ });
420
+ if (item.noScroll) {
421
+ continue;
422
+ }
423
+ if (dimension === 'rgCol' || this.colType === 'rgCol') {
424
+ (_g = this.localScrollService) === null || _g === void 0 ? void 0 : _g.scroll((_h = item.scroll) !== null && _h !== void 0 ? _h : 0, dimension, true);
425
+ }
426
+ // track scroll visibility on outer element change
427
+ this.setScrollVisibility(dimension, item.size, item.contentSize);
428
+ }
429
+ }, [this.footer, this.header]);
430
+ }
431
+ /**
432
+ * Check if scroll present or not per type
433
+ * Trigger this method on inner content size change or on outer element size change
434
+ * If inner content bigger then outer size then scroll is present and mousewheel binding required
435
+ * @param type - dimension type 'rgRow/y' or 'rgCol/x'
436
+ * @param size - outer content size
437
+ * @param innerContentSize - inner content size
438
+ */
439
+ setScrollVisibility(type, size, innerContentSize) {
440
+ // 保存待处理的更新
441
+ this.pendingScrollVisibility.set(type, { size, contentSize: innerContentSize });
442
+ // 清除之前的定时器
443
+ if (this.scrollVisibilityTimer) {
444
+ clearTimeout(this.scrollVisibilityTimer);
445
+ }
446
+ // 延迟执行,等待所有更新稳定
447
+ this.scrollVisibilityTimer = setTimeout(() => {
448
+ this.scrollVisibilityTimer = null;
449
+ this.applyScrollVisibility();
450
+ }, RevogrViewportScroll.SCROLL_VISIBILITY_DELAY);
451
+ }
452
+ /**
453
+ * 实际应用滚动可见性更新
454
+ */
455
+ applyScrollVisibility() {
456
+ var _a, _b, _c, _d, _e, _f;
457
+ // 滚动阈值:小于此值认为没有实际滚动空间
458
+ const SCROLL_THRESHOLD = 10;
459
+ // 重新获取最新的尺寸值,而不是使用之前保存的值
460
+ const rgColData = {
461
+ size: this.horizontalScroll.clientWidth,
462
+ contentSize: this.contentWidth,
463
+ };
464
+ const rgRowData = {
465
+ size: (_b = (_a = this.verticalScroll) === null || _a === void 0 ? void 0 : _a.clientHeight) !== null && _b !== void 0 ? _b : 0,
466
+ contentSize: this.contentHeight,
467
+ };
468
+ // 处理水平滚动
469
+ const rgColDiff = rgColData.contentSize - rgColData.size;
470
+ const hasHorizontalScroll = rgColDiff > SCROLL_THRESHOLD;
471
+ if (hasHorizontalScroll) {
472
+ (_c = this.horizontalScroll) === null || _c === void 0 ? void 0 : _c.classList.add('scroll-rgCol');
473
+ }
474
+ else {
475
+ (_d = this.horizontalScroll) === null || _d === void 0 ? void 0 : _d.classList.remove('scroll-rgCol');
476
+ }
477
+ this.scrollchange.emit({ type: 'rgCol', hasScroll: hasHorizontalScroll });
478
+ // 处理垂直滚动
479
+ const rgRowDiff = rgRowData.contentSize - rgRowData.size;
480
+ const hasVerticalScroll = rgRowDiff > SCROLL_THRESHOLD;
481
+ if (hasVerticalScroll) {
482
+ (_e = this.verticalScroll) === null || _e === void 0 ? void 0 : _e.classList.add('scroll-rgRow');
483
+ }
484
+ else {
485
+ (_f = this.verticalScroll) === null || _f === void 0 ? void 0 : _f.classList.remove('scroll-rgRow');
486
+ }
487
+ this.scrollchange.emit({ type: 'rgRow', hasScroll: hasVerticalScroll });
488
+ this.pendingScrollVisibility.clear();
489
+ }
490
+ disconnectedCallback() {
491
+ var _a;
492
+ (_a = this.resizeService) === null || _a === void 0 ? void 0 : _a.destroy();
493
+ if (this.scrollVisibilityTimer) {
494
+ clearTimeout(this.scrollVisibilityTimer);
495
+ }
496
+ }
497
+ async componentDidRender() {
498
+ var _a, _b, _c, _d;
499
+ this.localScrollService.setParams({
500
+ contentSize: this.contentHeight,
501
+ clientSize: (_b = (_a = this.verticalScroll) === null || _a === void 0 ? void 0 : _a.clientHeight) !== null && _b !== void 0 ? _b : 0,
502
+ virtualSize: 0,
503
+ }, 'rgRow');
504
+ this.localScrollService.setParams({
505
+ contentSize: this.contentWidth,
506
+ clientSize: this.horizontalScroll.clientWidth,
507
+ virtualSize: 0,
508
+ }, 'rgCol');
509
+ // 检查并调整水平滚动位置,避免内容宽度变化后出现空白
510
+ this.adjustScrollPosition();
511
+ // 使用防抖的 setScrollVisibility,避免 resize 过程中的闪烁
512
+ this.setScrollVisibility('rgRow', (_d = (_c = this.verticalScroll) === null || _c === void 0 ? void 0 : _c.clientHeight) !== null && _d !== void 0 ? _d : 0, this.contentHeight);
513
+ this.setScrollVisibility('rgCol', this.horizontalScroll.clientWidth, this.contentWidth);
514
+ // 统一在渲染后再校正一次垂直滚动位置,避免高度骤降时的空白闪烁
515
+ this.normalizeVerticalScrollPosition();
516
+ }
517
+ /**
518
+ * 调整滚动位置,确保不会超出内容边界
519
+ * 当内容宽度变化(如列宽调整)后,如果当前滚动位置超过最大可滚动位置,需要调整
520
+ */
521
+ adjustScrollPosition() {
522
+ var _a, _b;
523
+ if (!this.horizontalScroll)
524
+ return;
525
+ if (this.isLayoutUpdating()) {
526
+ return;
527
+ }
528
+ const clientWidth = this.horizontalScroll.clientWidth;
529
+ const maxScrollLeft = Math.max(0, this.contentWidth - clientWidth);
530
+ const currentScrollLeft = this.syncHorizontalScrollCacheFromDom();
531
+ // 滚动阈值:小于此值认为没有实际滚动空间
532
+ const SCROLL_THRESHOLD = 10;
533
+ // 如果没有滚动空间,确保滚动位置为0
534
+ if (maxScrollLeft <= SCROLL_THRESHOLD) {
535
+ if (currentScrollLeft > 0) {
536
+ this.setHorizontalScrollIfNeeded(0);
537
+ if (this.colType === 'rgCol') {
538
+ (_a = this.localScrollService) === null || _a === void 0 ? void 0 : _a.scroll(0, 'rgCol', true);
539
+ }
540
+ }
541
+ return;
542
+ }
543
+ // 如果当前滚动位置超过最大可滚动位置,调整到最大位置
544
+ if (currentScrollLeft > maxScrollLeft) {
545
+ this.setHorizontalScrollIfNeeded(maxScrollLeft);
546
+ if (this.colType === 'rgCol') {
547
+ (_b = this.localScrollService) === null || _b === void 0 ? void 0 : _b.scroll(maxScrollLeft, 'rgCol', true);
548
+ }
549
+ }
550
+ }
551
+ /**
552
+ * Prevent space key from scrolling the viewport
553
+ */
554
+ onKeyDown(e) {
555
+ if (e.code === 'Space') {
556
+ e.preventDefault();
557
+ }
558
+ }
559
+ render() {
560
+ return (h(Host, { key: '41ec47ece0eb1435281917856b3d22e258558ae8', onWheel: this.horizontalMouseWheel, onScroll: (e) => this.applyScroll('rgCol', e), onKeyDown: (e) => this.onKeyDown(e) }, h("div", { key: 'ec49cdf9206ac64b31b1f7d6f0960b8e8ab831db', class: "inner-content-table", style: { width: `${this.contentWidth}px` } }, h("div", { key: '0dd1aa5e6a4f2b347a0d851f5f45782d0ca56b0b', class: "header-wrapper", ref: e => (this.header = e) }, h("slot", { key: 'f3a9f2f4c2607014ce908f940bdc67ecc7e5e93b', name: HEADER_SLOT })), h("div", { key: '3ff9e141bc2524ed859580d1ef10ad5c37ad70b3', class: "vertical-inner", ref: this.setVerticalScrollRef, onWheel: this.verticalMouseWheel, onScroll: (e) => this.applyScroll('rgRow', e), onKeyDown: (e) => this.onKeyDown(e) }, h("div", { key: '8fb922c1be861574713af4494a543ed0cbc48681', class: "content-wrapper", style: { height: `${this.contentHeight}px` } }, h("slot", { key: 'bbd7ed2ee26584e67ca101a1fe341d6a9e4ab670', name: CONTENT_SLOT }))), h("div", { key: '917dfc764edd4cc51b3d0bdda926afa5d1335268', class: "footer-wrapper", ref: e => (this.footer = e) }, h("slot", { key: '3173f6c8ec90e220024ebead9a721f1291f93df9', name: FOOTER_SLOT })))));
561
+ }
562
+ /**
563
+ * Extra layer for scroll event monitoring, where MouseWheel event is not passing
564
+ * We need to trigger scroll event in case there is no mousewheel event
565
+ */
566
+ async applyScroll(type, e) {
567
+ var _a, _b, _c;
568
+ if (!(e.target instanceof HTMLElement)) {
569
+ return;
570
+ }
571
+ let scroll = 0;
572
+ switch (type) {
573
+ case 'rgCol':
574
+ scroll = e.target.scrollLeft;
575
+ this.lastHorizontalScrollLeft = scroll;
576
+ break;
577
+ case 'rgRow':
578
+ scroll = e.target.scrollTop;
579
+ this.lastVerticalScrollTop = scroll;
580
+ break;
581
+ }
582
+ // for mobile devices to skip negative scroll loop
583
+ if (scroll < 0) {
584
+ this.silentScroll.emit({ dimension: type, coordinate: scroll });
585
+ return;
586
+ }
587
+ if (type === 'rgCol' && this.colType !== 'rgCol') {
588
+ return;
589
+ }
590
+ if (type === 'rgRow' && this.colType !== 'rgCol') {
591
+ return;
592
+ }
593
+ if (this.isLayoutUpdating()) {
594
+ return;
595
+ }
596
+ // 滚动阈值:小于此值认为没有实际滚动空间
597
+ const SCROLL_THRESHOLD = 10;
598
+ // 检查是否有滚动空间
599
+ if (type === 'rgCol') {
600
+ const maxScrollLeft = Math.max(0, this.contentWidth - this.horizontalScroll.clientWidth);
601
+ // 如果没有滚动空间,重置滚动位置并返回
602
+ if (maxScrollLeft <= SCROLL_THRESHOLD) {
603
+ if (scroll > 0) {
604
+ if (Math.abs(e.target.scrollLeft) >= RevogrViewportScroll.SCROLL_WRITE_EPSILON) {
605
+ e.target.scrollLeft = 0;
606
+ this.lastHorizontalScrollLeft = 0;
607
+ }
608
+ }
609
+ return;
610
+ }
611
+ // 限制滚动位置不超过最大值(防止过度滚动导致空白)
612
+ if (scroll > maxScrollLeft) {
613
+ if (Math.abs(e.target.scrollLeft - maxScrollLeft) >= RevogrViewportScroll.SCROLL_WRITE_EPSILON) {
614
+ e.target.scrollLeft = maxScrollLeft;
615
+ this.lastHorizontalScrollLeft = maxScrollLeft;
616
+ }
617
+ scroll = maxScrollLeft;
618
+ }
619
+ }
620
+ else if (type === 'rgRow') {
621
+ const maxScrollTop = Math.max(0, this.contentHeight - ((_b = (_a = this.verticalScroll) === null || _a === void 0 ? void 0 : _a.clientHeight) !== null && _b !== void 0 ? _b : 0));
622
+ // 如果没有滚动空间,重置滚动位置并返回
623
+ if (maxScrollTop <= SCROLL_THRESHOLD) {
624
+ if (scroll > 0 && this.verticalScroll) {
625
+ this.setVerticalScrollIfNeeded(0);
626
+ }
627
+ return;
628
+ }
629
+ // 限制滚动位置不超过最大值(防止过度滚动导致空白)
630
+ if (scroll > maxScrollTop) {
631
+ this.setVerticalScrollIfNeeded(maxScrollTop);
632
+ scroll = maxScrollTop;
633
+ }
634
+ }
635
+ // 水平滚动在 Shift + 滚轮快速往返场景下更容易出现节流导致的坐标滞后,
636
+ // 这里直接同步一次,避免 viewport 坐标与 DOM scrollLeft 不一致造成空白。
637
+ if (type === 'rgCol') {
638
+ (_c = this.localScrollService) === null || _c === void 0 ? void 0 : _c.scroll(scroll, type);
639
+ return;
640
+ }
641
+ this.applyOnScroll(type, scroll);
642
+ }
643
+ /**
644
+ * Applies change on scroll event only if mousewheel event happened some time ago
645
+ */
646
+ applyOnScroll(type, coordinate, outside = false) {
647
+ const lastScrollUpdate = () => {
648
+ var _a;
649
+ (_a = this.localScrollService) === null || _a === void 0 ? void 0 : _a.scroll(coordinate, type, undefined, undefined, outside);
650
+ };
651
+ // apply after throttling
652
+ if (this.localScrollTimer.isReady(type, coordinate)) {
653
+ lastScrollUpdate();
654
+ }
655
+ else {
656
+ this.localScrollTimer.throttleLastScrollUpdate(type, coordinate, () => lastScrollUpdate());
657
+ }
658
+ }
659
+ /**
660
+ * On vertical mousewheel event
661
+ * @param type
662
+ * @param delta
663
+ * @param e
664
+ */
665
+ onVerticalMouseWheel(type, delta, e) {
666
+ var _a, _b, _c, _d, _e, _f, _g, _h;
667
+ // Shift + 滚轮用于水平滚动,不应触发垂直滚动链路
668
+ if (e.shiftKey) {
669
+ return;
670
+ }
671
+ const scrollTop = (_b = (_a = this.verticalScroll) === null || _a === void 0 ? void 0 : _a.scrollTop) !== null && _b !== void 0 ? _b : 0;
672
+ const clientHeight = (_d = (_c = this.verticalScroll) === null || _c === void 0 ? void 0 : _c.clientHeight) !== null && _d !== void 0 ? _d : 0;
673
+ const scrollHeight = (_f = (_e = this.verticalScroll) === null || _e === void 0 ? void 0 : _e.scrollHeight) !== null && _f !== void 0 ? _f : 0;
674
+ // Detect if the user has reached the bottom
675
+ const atBottom = scrollTop + clientHeight >= scrollHeight && e.deltaY > 0;
676
+ const atTop = scrollTop === 0 && e.deltaY < 0;
677
+ if (!atBottom && !atTop) {
678
+ (_g = e.preventDefault) === null || _g === void 0 ? void 0 : _g.call(e);
679
+ }
680
+ const pos = scrollTop + e[delta];
681
+ (_h = this.localScrollService) === null || _h === void 0 ? void 0 : _h.scroll(pos, type, undefined, e[delta]);
682
+ this.localScrollTimer.latestScrollUpdate(type);
683
+ }
684
+ /**
685
+ * On horizontal mousewheel event
686
+ * @param type
687
+ * @param e
688
+ */
689
+ onHorizontalMouseWheel(type, e) {
690
+ var _a, _b, _c;
691
+ const deltaX = e.deltaX || 0;
692
+ const deltaY = e.deltaY || 0;
693
+ // 只有当水平滚动是主要意图时才处理
694
+ // 触摸板垂直滚动时可能会有微小的 deltaX,需要过滤掉
695
+ const absX = Math.abs(deltaX);
696
+ const absY = Math.abs(deltaY);
697
+ // Shift + 滚轮(常见于鼠标)通常只有 deltaY,需要映射为水平滚动
698
+ const normalizedDelta = deltaX || (e.shiftKey ? deltaY : 0);
699
+ const isShiftHorizontalScroll = !!e.shiftKey && !deltaX && !!deltaY;
700
+ // 如果没有水平滚动,或者垂直滚动更明显,不处理
701
+ if (!normalizedDelta || (!isShiftHorizontalScroll && absY > absX)) {
702
+ return;
703
+ }
704
+ const { scrollLeft, scrollWidth, clientWidth } = this.horizontalScroll;
705
+ // 滚动阈值:小于此值认为没有实际滚动空间
706
+ const SCROLL_THRESHOLD = 10;
707
+ const maxScrollLeft = Math.max(0, scrollWidth - clientWidth);
708
+ // 如果没有滚动空间(内容宽度小于等于可见宽度),阻止默认行为并直接返回
709
+ if (maxScrollLeft <= SCROLL_THRESHOLD) {
710
+ (_a = e.preventDefault) === null || _a === void 0 ? void 0 : _a.call(e);
711
+ return;
712
+ }
713
+ // 统一阻止默认横向滚动,避免浏览器原生滚动与组件逻辑叠加
714
+ (_b = e.preventDefault) === null || _b === void 0 ? void 0 : _b.call(e);
715
+ const pos = Math.max(0, Math.min(maxScrollLeft, scrollLeft + normalizedDelta));
716
+ if (pos === scrollLeft) {
717
+ return;
718
+ }
719
+ (_c = this.localScrollService) === null || _c === void 0 ? void 0 : _c.scroll(pos, type, true, normalizedDelta);
720
+ this.localScrollTimer.latestScrollUpdate(type);
721
+ }
722
+ get horizontalScroll() { return this; }
723
+ static get watchers() { return {
724
+ "contentWidth": ["contentWidthChanged"],
725
+ "contentHeight": ["contentHeightChanged"]
726
+ }; }
727
+ static get style() { return revogrViewportScrollStyleCss; }
728
+ }, [260, "revogr-viewport-scroll", {
729
+ "rowHeader": [4, "row-header"],
730
+ "contentWidth": [2, "content-width"],
731
+ "contentHeight": [2, "content-height"],
732
+ "colType": [1, "col-type"],
733
+ "setScroll": [64],
734
+ "changeScroll": [64],
735
+ "applyScroll": [64]
736
+ }, [[0, "mousewheel-vertical", "mousewheelVertical"], [0, "mousewheel-horizontal", "mousewheelHorizontal"], [0, "scroll-coordinate", "scrollApply"]], {
737
+ "contentWidth": ["contentWidthChanged"],
738
+ "contentHeight": ["contentHeightChanged"]
739
+ }]);
740
+ RevogrViewportScroll.SCROLL_WRITE_EPSILON = 0.5;
741
+ RevogrViewportScroll.UNKNOWN_SCROLL_COORDINATE = Number.NaN;
742
+ // 防抖延迟时间
743
+ RevogrViewportScroll.SCROLL_VISIBILITY_DELAY = 200;
744
+ function defineCustomElement() {
745
+ if (typeof customElements === "undefined") {
746
+ return;
747
+ }
748
+ const components = ["revogr-viewport-scroll"];
749
+ components.forEach(tagName => { switch (tagName) {
750
+ case "revogr-viewport-scroll":
751
+ if (!customElements.get(tagName)) {
752
+ customElements.define(tagName, RevogrViewportScroll);
753
+ }
754
+ break;
755
+ } });
756
+ }
757
+
758
+ export { CONTENT_SLOT as C, DATA_SLOT as D, FOOTER_SLOT as F, HEADER_SLOT as H, RevogrViewportScroll as R, defineCustomElement as d, isSafariDesktop as i, viewportDataPartition as v };
759
+ //# sourceMappingURL=revogr-viewport-scroll2.js.map
760
+
761
+ //# sourceMappingURL=revogr-viewport-scroll2.js.map