lsp-grid 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 (675) hide show
  1. package/README.md +34 -0
  2. package/dist/cjs/app-globals-Bfsg1bDt.js +16 -0
  3. package/dist/cjs/app-globals-Bfsg1bDt.js.map +1 -0
  4. package/dist/cjs/cell-renderer-DtuYp7tj.js +106 -0
  5. package/dist/cjs/cell-renderer-DtuYp7tj.js.map +1 -0
  6. package/dist/cjs/column.drag.plugin-BIptTmfz.js +2554 -0
  7. package/dist/cjs/column.drag.plugin-BIptTmfz.js.map +1 -0
  8. package/dist/cjs/column.service-BnVSAfcu.js +1391 -0
  9. package/dist/cjs/column.service-BnVSAfcu.js.map +1 -0
  10. package/dist/cjs/data.store-CrF4Nf9q.js +3615 -0
  11. package/dist/cjs/data.store-CrF4Nf9q.js.map +1 -0
  12. package/dist/cjs/debounce-DgeyTQM0.js +498 -0
  13. package/dist/cjs/debounce-DgeyTQM0.js.map +1 -0
  14. package/dist/cjs/edit.utils-Bw-E3Fj6.js +118 -0
  15. package/dist/cjs/edit.utils-Bw-E3Fj6.js.map +1 -0
  16. package/dist/cjs/events-D0Syn6ut.js +46 -0
  17. package/dist/cjs/events-D0Syn6ut.js.map +1 -0
  18. package/dist/cjs/filter.button-CaAAXq-6.js +49 -0
  19. package/dist/cjs/filter.button-CaAAXq-6.js.map +1 -0
  20. package/dist/cjs/header-cell-renderer-DhRJqZ-w.js +356 -0
  21. package/dist/cjs/header-cell-renderer-DhRJqZ-w.js.map +1 -0
  22. package/dist/cjs/index-VM40U6Gh.js +2549 -0
  23. package/dist/cjs/index-VM40U6Gh.js.map +1 -0
  24. package/dist/cjs/index.cjs.js +346 -0
  25. package/dist/cjs/index.cjs.js.map +1 -0
  26. package/dist/cjs/loader.cjs.js +19 -0
  27. package/dist/cjs/loader.cjs.js.map +1 -0
  28. package/dist/cjs/revo-grid.cjs.entry.js +2187 -0
  29. package/dist/cjs/revo-grid.cjs.entry.js.map +1 -0
  30. package/dist/cjs/revo-grid.cjs.js +31 -0
  31. package/dist/cjs/revo-grid.cjs.js.map +1 -0
  32. package/dist/cjs/revo-grid.entry.cjs.js.map +1 -0
  33. package/dist/cjs/revogr-attribution.revogr-extra.revogr-focus.revogr-overlay-selection.revogr-row-headers.revogr-scroll-virtual.revogr-temp-range.entry.cjs.js.map +1 -0
  34. package/dist/cjs/revogr-attribution_7.cjs.entry.js +1463 -0
  35. package/dist/cjs/revogr-attribution_7.cjs.entry.js.map +1 -0
  36. package/dist/cjs/revogr-clipboard.revogr-edit.revogr-order-editor.entry.cjs.js.map +1 -0
  37. package/dist/cjs/revogr-clipboard_3.cjs.entry.js +456 -0
  38. package/dist/cjs/revogr-clipboard_3.cjs.entry.js.map +1 -0
  39. package/dist/cjs/revogr-data.revogr-header.revogr-viewport-scroll.vnode-html.entry.cjs.js.map +1 -0
  40. package/dist/cjs/revogr-data_4.cjs.entry.js +948 -0
  41. package/dist/cjs/revogr-data_4.cjs.entry.js.map +1 -0
  42. package/dist/cjs/revogr-filter-panel.cjs.entry.js +382 -0
  43. package/dist/cjs/revogr-filter-panel.cjs.entry.js.map +1 -0
  44. package/dist/cjs/revogr-filter-panel.entry.cjs.js.map +1 -0
  45. package/dist/cjs/row-header-utils-DL640c7x.js +420 -0
  46. package/dist/cjs/row-header-utils-DL640c7x.js.map +1 -0
  47. package/dist/cjs/text-editor-DWChyeVV.js +81 -0
  48. package/dist/cjs/text-editor-DWChyeVV.js.map +1 -0
  49. package/dist/cjs/throttle-Bb1Bbfd1.js +278 -0
  50. package/dist/cjs/throttle-Bb1Bbfd1.js.map +1 -0
  51. package/dist/cjs/viewport.helpers-CI6uB8tu.js +59 -0
  52. package/dist/cjs/viewport.helpers-CI6uB8tu.js.map +1 -0
  53. package/dist/collection/collection-manifest.json +28 -0
  54. package/dist/collection/components/attribution/revogr-attribution.js +20 -0
  55. package/dist/collection/components/attribution/revogr-attribution.js.map +1 -0
  56. package/dist/collection/components/clipboard/revogr-clipboard.js +396 -0
  57. package/dist/collection/components/clipboard/revogr-clipboard.js.map +1 -0
  58. package/dist/collection/components/data/cell-renderer.js +44 -0
  59. package/dist/collection/components/data/cell-renderer.js.map +1 -0
  60. package/dist/collection/components/data/column.service.js +293 -0
  61. package/dist/collection/components/data/column.service.js.map +1 -0
  62. package/dist/collection/components/data/revogr-data-style.css +75 -0
  63. package/dist/collection/components/data/revogr-data.js +697 -0
  64. package/dist/collection/components/data/revogr-data.js.map +1 -0
  65. package/dist/collection/components/data/row-highlight.plugin.js +51 -0
  66. package/dist/collection/components/data/row-highlight.plugin.js.map +1 -0
  67. package/dist/collection/components/data/row-renderer.js +16 -0
  68. package/dist/collection/components/data/row-renderer.js.map +1 -0
  69. package/dist/collection/components/editors/edit.utils.js +13 -0
  70. package/dist/collection/components/editors/edit.utils.js.map +1 -0
  71. package/dist/collection/components/editors/revogr-edit-style.css +16 -0
  72. package/dist/collection/components/editors/revogr-edit.js +346 -0
  73. package/dist/collection/components/editors/revogr-edit.js.map +1 -0
  74. package/dist/collection/components/editors/text-editor.js +74 -0
  75. package/dist/collection/components/editors/text-editor.js.map +1 -0
  76. package/dist/collection/components/extra/revogr-extra.js +125 -0
  77. package/dist/collection/components/extra/revogr-extra.js.map +1 -0
  78. package/dist/collection/components/header/header-cell-renderer.js +34 -0
  79. package/dist/collection/components/header/header-cell-renderer.js.map +1 -0
  80. package/dist/collection/components/header/header-group-renderer.js +25 -0
  81. package/dist/collection/components/header/header-group-renderer.js.map +1 -0
  82. package/dist/collection/components/header/header-renderer.js +61 -0
  83. package/dist/collection/components/header/header-renderer.js.map +1 -0
  84. package/dist/collection/components/header/resizable.directive.js +237 -0
  85. package/dist/collection/components/header/resizable.directive.js.map +1 -0
  86. package/dist/collection/components/header/resizable.element.js +38 -0
  87. package/dist/collection/components/header/resizable.element.js.map +1 -0
  88. package/dist/collection/components/header/revogr-header-style.css +144 -0
  89. package/dist/collection/components/header/revogr-header.js +573 -0
  90. package/dist/collection/components/header/revogr-header.js.map +1 -0
  91. package/dist/collection/components/order/order-renderer.js +50 -0
  92. package/dist/collection/components/order/order-renderer.js.map +1 -0
  93. package/dist/collection/components/order/order-row.service.js +72 -0
  94. package/dist/collection/components/order/order-row.service.js.map +1 -0
  95. package/dist/collection/components/order/revogr-order-editor.js +461 -0
  96. package/dist/collection/components/order/revogr-order-editor.js.map +1 -0
  97. package/dist/collection/components/overlay/autofill.service.js +224 -0
  98. package/dist/collection/components/overlay/autofill.service.js.map +1 -0
  99. package/dist/collection/components/overlay/keyboard.service.js +158 -0
  100. package/dist/collection/components/overlay/keyboard.service.js.map +1 -0
  101. package/dist/collection/components/overlay/revogr-overlay-selection.js +1515 -0
  102. package/dist/collection/components/overlay/revogr-overlay-selection.js.map +1 -0
  103. package/dist/collection/components/overlay/revogr-overlay-style.css +95 -0
  104. package/dist/collection/components/overlay/selection.utils.js +136 -0
  105. package/dist/collection/components/overlay/selection.utils.js.map +1 -0
  106. package/dist/collection/components/revoGrid/grid.helpers.js +33 -0
  107. package/dist/collection/components/revoGrid/grid.helpers.js.map +1 -0
  108. package/dist/collection/components/revoGrid/plugin.service.js +81 -0
  109. package/dist/collection/components/revoGrid/plugin.service.js.map +1 -0
  110. package/dist/collection/components/revoGrid/revo-grid-style.css +567 -0
  111. package/dist/collection/components/revoGrid/revo-grid.js +3671 -0
  112. package/dist/collection/components/revoGrid/revo-grid.js.map +1 -0
  113. package/dist/collection/components/revoGrid/viewport.helpers.js +49 -0
  114. package/dist/collection/components/revoGrid/viewport.helpers.js.map +1 -0
  115. package/dist/collection/components/revoGrid/viewport.resize.service.js +55 -0
  116. package/dist/collection/components/revoGrid/viewport.resize.service.js.map +1 -0
  117. package/dist/collection/components/revoGrid/viewport.scrolling.service.js +90 -0
  118. package/dist/collection/components/revoGrid/viewport.scrolling.service.js.map +1 -0
  119. package/dist/collection/components/revoGrid/viewport.service.js +237 -0
  120. package/dist/collection/components/revoGrid/viewport.service.js.map +1 -0
  121. package/dist/collection/components/rowHeaders/revogr-row-headers.js +291 -0
  122. package/dist/collection/components/rowHeaders/revogr-row-headers.js.map +1 -0
  123. package/dist/collection/components/rowHeaders/row-header-render.js +5 -0
  124. package/dist/collection/components/rowHeaders/row-header-render.js.map +1 -0
  125. package/dist/collection/components/scroll/revogr-viewport-scroll-style.css +69 -0
  126. package/dist/collection/components/scroll/revogr-viewport-scroll.js +601 -0
  127. package/dist/collection/components/scroll/revogr-viewport-scroll.js.map +1 -0
  128. package/dist/collection/components/scrollable/autohide-scroll.plugin.js +44 -0
  129. package/dist/collection/components/scrollable/autohide-scroll.plugin.js.map +1 -0
  130. package/dist/collection/components/scrollable/revogr-scroll-style.css +34 -0
  131. package/dist/collection/components/scrollable/revogr-scroll-virtual.js +295 -0
  132. package/dist/collection/components/scrollable/revogr-scroll-virtual.js.map +1 -0
  133. package/dist/collection/components/selectionFocus/revogr-focus-style.css +7 -0
  134. package/dist/collection/components/selectionFocus/revogr-focus.js +400 -0
  135. package/dist/collection/components/selectionFocus/revogr-focus.js.map +1 -0
  136. package/dist/collection/components/selectionTempRange/revogr-temp-range-style.css +28 -0
  137. package/dist/collection/components/selectionTempRange/revogr-temp-range.js +171 -0
  138. package/dist/collection/components/selectionTempRange/revogr-temp-range.js.map +1 -0
  139. package/dist/collection/components/vnode/vnode-converter.js +84 -0
  140. package/dist/collection/components/vnode/vnode-converter.js.map +1 -0
  141. package/dist/collection/components/vnode/vnode.utils.js +18 -0
  142. package/dist/collection/components/vnode/vnode.utils.js.map +1 -0
  143. package/dist/collection/global/global.js +19 -0
  144. package/dist/collection/global/global.js.map +1 -0
  145. package/dist/collection/index.js +13 -0
  146. package/dist/collection/index.js.map +1 -0
  147. package/dist/collection/plugins/add-rows-on-paste.plugin.js +40 -0
  148. package/dist/collection/plugins/add-rows-on-paste.plugin.js.map +1 -0
  149. package/dist/collection/plugins/base.plugin.js +90 -0
  150. package/dist/collection/plugins/base.plugin.js.map +1 -0
  151. package/dist/collection/plugins/column.auto-size.plugin.js +225 -0
  152. package/dist/collection/plugins/column.auto-size.plugin.js.map +1 -0
  153. package/dist/collection/plugins/column.stretch.plugin.js +96 -0
  154. package/dist/collection/plugins/column.stretch.plugin.js.map +1 -0
  155. package/dist/collection/plugins/dispatcher.js +40 -0
  156. package/dist/collection/plugins/dispatcher.js.map +1 -0
  157. package/dist/collection/plugins/export/csv.js +72 -0
  158. package/dist/collection/plugins/export/csv.js.map +1 -0
  159. package/dist/collection/plugins/export/export.plugin.js +157 -0
  160. package/dist/collection/plugins/export/export.plugin.js.map +1 -0
  161. package/dist/collection/plugins/export/types.js +2 -0
  162. package/dist/collection/plugins/export/types.js.map +1 -0
  163. package/dist/collection/plugins/filter/conditions/equal.js +21 -0
  164. package/dist/collection/plugins/filter/conditions/equal.js.map +1 -0
  165. package/dist/collection/plugins/filter/conditions/number/greaterThan.js +14 -0
  166. package/dist/collection/plugins/filter/conditions/number/greaterThan.js.map +1 -0
  167. package/dist/collection/plugins/filter/conditions/number/greaterThanOrEqual.js +11 -0
  168. package/dist/collection/plugins/filter/conditions/number/greaterThanOrEqual.js.map +1 -0
  169. package/dist/collection/plugins/filter/conditions/number/lessThan.js +16 -0
  170. package/dist/collection/plugins/filter/conditions/number/lessThan.js.map +1 -0
  171. package/dist/collection/plugins/filter/conditions/number/lessThanOrEqual.js +11 -0
  172. package/dist/collection/plugins/filter/conditions/number/lessThanOrEqual.js.map +1 -0
  173. package/dist/collection/plugins/filter/conditions/set.js +7 -0
  174. package/dist/collection/plugins/filter/conditions/set.js.map +1 -0
  175. package/dist/collection/plugins/filter/conditions/string/beginswith.js +21 -0
  176. package/dist/collection/plugins/filter/conditions/string/beginswith.js.map +1 -0
  177. package/dist/collection/plugins/filter/conditions/string/contains.js +25 -0
  178. package/dist/collection/plugins/filter/conditions/string/contains.js.map +1 -0
  179. package/dist/collection/plugins/filter/filter.button.js +28 -0
  180. package/dist/collection/plugins/filter/filter.button.js.map +1 -0
  181. package/dist/collection/plugins/filter/filter.indexed.js +49 -0
  182. package/dist/collection/plugins/filter/filter.indexed.js.map +1 -0
  183. package/dist/collection/plugins/filter/filter.panel.js +610 -0
  184. package/dist/collection/plugins/filter/filter.panel.js.map +1 -0
  185. package/dist/collection/plugins/filter/filter.plugin.js +388 -0
  186. package/dist/collection/plugins/filter/filter.plugin.js.map +1 -0
  187. package/dist/collection/plugins/filter/filter.style.css +165 -0
  188. package/dist/collection/plugins/filter/filter.types.js +9 -0
  189. package/dist/collection/plugins/filter/filter.types.js.map +1 -0
  190. package/dist/collection/plugins/groupingRow/grouping.const.js +16 -0
  191. package/dist/collection/plugins/groupingRow/grouping.const.js.map +1 -0
  192. package/dist/collection/plugins/groupingRow/grouping.row.expand.service.js +79 -0
  193. package/dist/collection/plugins/groupingRow/grouping.row.expand.service.js.map +1 -0
  194. package/dist/collection/plugins/groupingRow/grouping.row.plugin.js +245 -0
  195. package/dist/collection/plugins/groupingRow/grouping.row.plugin.js.map +1 -0
  196. package/dist/collection/plugins/groupingRow/grouping.row.renderer.js +38 -0
  197. package/dist/collection/plugins/groupingRow/grouping.row.renderer.js.map +1 -0
  198. package/dist/collection/plugins/groupingRow/grouping.row.types.js +2 -0
  199. package/dist/collection/plugins/groupingRow/grouping.row.types.js.map +1 -0
  200. package/dist/collection/plugins/groupingRow/grouping.service.js +178 -0
  201. package/dist/collection/plugins/groupingRow/grouping.service.js.map +1 -0
  202. package/dist/collection/plugins/groupingRow/grouping.trimmed.service.js +61 -0
  203. package/dist/collection/plugins/groupingRow/grouping.trimmed.service.js.map +1 -0
  204. package/dist/collection/plugins/index.js +15 -0
  205. package/dist/collection/plugins/index.js.map +1 -0
  206. package/dist/collection/plugins/moveColumn/column.drag.plugin.js +175 -0
  207. package/dist/collection/plugins/moveColumn/column.drag.plugin.js.map +1 -0
  208. package/dist/collection/plugins/moveColumn/order-column.handler.js +71 -0
  209. package/dist/collection/plugins/moveColumn/order-column.handler.js.map +1 -0
  210. package/dist/collection/plugins/rtl/rtl.plugin.js +110 -0
  211. package/dist/collection/plugins/rtl/rtl.plugin.js.map +1 -0
  212. package/dist/collection/plugins/sorting/sorting.func.js +82 -0
  213. package/dist/collection/plugins/sorting/sorting.func.js.map +1 -0
  214. package/dist/collection/plugins/sorting/sorting.plugin.js +224 -0
  215. package/dist/collection/plugins/sorting/sorting.plugin.js.map +1 -0
  216. package/dist/collection/plugins/sorting/sorting.sign.js +9 -0
  217. package/dist/collection/plugins/sorting/sorting.sign.js.map +1 -0
  218. package/dist/collection/plugins/sorting/sorting.types.js +2 -0
  219. package/dist/collection/plugins/sorting/sorting.types.js.map +1 -0
  220. package/dist/collection/plugins/wcag/index.js +84 -0
  221. package/dist/collection/plugins/wcag/index.js.map +1 -0
  222. package/dist/collection/serve/controller.js +344 -0
  223. package/dist/collection/serve/data.js +201 -0
  224. package/dist/collection/services/cell.helpers.js +12 -0
  225. package/dist/collection/services/cell.helpers.js.map +1 -0
  226. package/dist/collection/services/column.data.provider.js +119 -0
  227. package/dist/collection/services/column.data.provider.js.map +1 -0
  228. package/dist/collection/services/data.provider.js +89 -0
  229. package/dist/collection/services/data.provider.js.map +1 -0
  230. package/dist/collection/services/dimension.provider.js +176 -0
  231. package/dist/collection/services/dimension.provider.js.map +1 -0
  232. package/dist/collection/services/local.scroll.service.js +124 -0
  233. package/dist/collection/services/local.scroll.service.js.map +1 -0
  234. package/dist/collection/services/local.scroll.timer.js +81 -0
  235. package/dist/collection/services/local.scroll.timer.js.map +1 -0
  236. package/dist/collection/services/selection.store.connector.js +307 -0
  237. package/dist/collection/services/selection.store.connector.js.map +1 -0
  238. package/dist/collection/services/viewport.provider.js +17 -0
  239. package/dist/collection/services/viewport.provider.js.map +1 -0
  240. package/dist/collection/store/dataSource/data.proxy.js +45 -0
  241. package/dist/collection/store/dataSource/data.proxy.js.map +1 -0
  242. package/dist/collection/store/dataSource/data.store.js +144 -0
  243. package/dist/collection/store/dataSource/data.store.js.map +1 -0
  244. package/dist/collection/store/dataSource/index.js +7 -0
  245. package/dist/collection/store/dataSource/index.js.map +1 -0
  246. package/dist/collection/store/dataSource/trimmed.plugin.js +34 -0
  247. package/dist/collection/store/dataSource/trimmed.plugin.js.map +1 -0
  248. package/dist/collection/store/dimension/dimension.helpers.js +101 -0
  249. package/dist/collection/store/dimension/dimension.helpers.js.map +1 -0
  250. package/dist/collection/store/dimension/dimension.recalculate.plugin.js +35 -0
  251. package/dist/collection/store/dimension/dimension.recalculate.plugin.js.map +1 -0
  252. package/dist/collection/store/dimension/dimension.store.js +109 -0
  253. package/dist/collection/store/dimension/dimension.store.js.map +1 -0
  254. package/dist/collection/store/dimension/dimension.trim.plugin.js +61 -0
  255. package/dist/collection/store/dimension/dimension.trim.plugin.js.map +1 -0
  256. package/dist/collection/store/dimension/index.js +6 -0
  257. package/dist/collection/store/dimension/index.js.map +1 -0
  258. package/dist/collection/store/index.js +17 -0
  259. package/dist/collection/store/index.js.map +1 -0
  260. package/dist/collection/store/selection/index.js +6 -0
  261. package/dist/collection/store/selection/index.js.map +1 -0
  262. package/dist/collection/store/selection/selection.helpers.js +53 -0
  263. package/dist/collection/store/selection/selection.helpers.js.map +1 -0
  264. package/dist/collection/store/selection/selection.store.js +85 -0
  265. package/dist/collection/store/selection/selection.store.js.map +1 -0
  266. package/dist/collection/store/vp/index.js +6 -0
  267. package/dist/collection/store/vp/index.js.map +1 -0
  268. package/dist/collection/store/vp/viewport.helpers.js +251 -0
  269. package/dist/collection/store/vp/viewport.helpers.js.map +1 -0
  270. package/dist/collection/store/vp/viewport.store.js +151 -0
  271. package/dist/collection/store/vp/viewport.store.js.map +1 -0
  272. package/dist/collection/themeManager/theme.compact.js +9 -0
  273. package/dist/collection/themeManager/theme.compact.js.map +1 -0
  274. package/dist/collection/themeManager/theme.default.js +9 -0
  275. package/dist/collection/themeManager/theme.default.js.map +1 -0
  276. package/dist/collection/themeManager/theme.material.js +9 -0
  277. package/dist/collection/themeManager/theme.material.js.map +1 -0
  278. package/dist/collection/themeManager/theme.service.js +53 -0
  279. package/dist/collection/themeManager/theme.service.js.map +1 -0
  280. package/dist/collection/types/dimension.js +2 -0
  281. package/dist/collection/types/dimension.js.map +1 -0
  282. package/dist/collection/types/events.js +118 -0
  283. package/dist/collection/types/events.js.map +1 -0
  284. package/dist/collection/types/index.js +12 -0
  285. package/dist/collection/types/index.js.map +1 -0
  286. package/dist/collection/types/interfaces.js +2 -0
  287. package/dist/collection/types/interfaces.js.map +1 -0
  288. package/dist/collection/types/plugin.js +2 -0
  289. package/dist/collection/types/plugin.js.map +1 -0
  290. package/dist/collection/types/plugin.types.js +2 -0
  291. package/dist/collection/types/plugin.types.js.map +1 -0
  292. package/dist/collection/types/selection.js +2 -0
  293. package/dist/collection/types/selection.js.map +1 -0
  294. package/dist/collection/types/theme.js +2 -0
  295. package/dist/collection/types/theme.js.map +1 -0
  296. package/dist/collection/types/viewport.interfaces.js +2 -0
  297. package/dist/collection/types/viewport.interfaces.js.map +1 -0
  298. package/dist/collection/utils/browser.js +7 -0
  299. package/dist/collection/utils/browser.js.map +1 -0
  300. package/dist/collection/utils/closest.polifill.js +22 -0
  301. package/dist/collection/utils/closest.polifill.js.map +1 -0
  302. package/dist/collection/utils/column.utils.js +153 -0
  303. package/dist/collection/utils/column.utils.js.map +1 -0
  304. package/dist/collection/utils/consts.js +26 -0
  305. package/dist/collection/utils/consts.js.map +1 -0
  306. package/dist/collection/utils/events.js +39 -0
  307. package/dist/collection/utils/events.js.map +1 -0
  308. package/dist/collection/utils/header.utils.js +24 -0
  309. package/dist/collection/utils/header.utils.js.map +1 -0
  310. package/dist/collection/utils/index.js +140 -0
  311. package/dist/collection/utils/index.js.map +1 -0
  312. package/dist/collection/utils/key.codes.js +80 -0
  313. package/dist/collection/utils/key.codes.js.map +1 -0
  314. package/dist/collection/utils/key.utils.js +90 -0
  315. package/dist/collection/utils/key.utils.js.map +1 -0
  316. package/dist/collection/utils/mobile.js +7 -0
  317. package/dist/collection/utils/mobile.js.map +1 -0
  318. package/dist/collection/utils/platform.js +9 -0
  319. package/dist/collection/utils/platform.js.map +1 -0
  320. package/dist/collection/utils/row-header-utils.js +9 -0
  321. package/dist/collection/utils/row-header-utils.js.map +1 -0
  322. package/dist/collection/utils/store.types.js +2 -0
  323. package/dist/collection/utils/store.types.js.map +1 -0
  324. package/dist/collection/utils/store.utils.js +15 -0
  325. package/dist/collection/utils/store.utils.js.map +1 -0
  326. package/dist/esm/app-globals-FBz64o-g.js +14 -0
  327. package/dist/esm/app-globals-FBz64o-g.js.map +1 -0
  328. package/dist/esm/cell-renderer-Ca_PCGjJ.js +98 -0
  329. package/dist/esm/cell-renderer-Ca_PCGjJ.js.map +1 -0
  330. package/dist/esm/column.drag.plugin-BtuUyB-2.js +2528 -0
  331. package/dist/esm/column.drag.plugin-BtuUyB-2.js.map +1 -0
  332. package/dist/esm/column.service-CTqFIQUy.js +1343 -0
  333. package/dist/esm/column.service-CTqFIQUy.js.map +1 -0
  334. package/dist/esm/data.store-B-lvmoFH.js +3553 -0
  335. package/dist/esm/data.store-B-lvmoFH.js.map +1 -0
  336. package/dist/esm/debounce-DTUQ1fY7.js +488 -0
  337. package/dist/esm/debounce-DTUQ1fY7.js.map +1 -0
  338. package/dist/esm/edit.utils-CyCANCLB.js +103 -0
  339. package/dist/esm/edit.utils-CyCANCLB.js.map +1 -0
  340. package/dist/esm/events-CKtYJJSv.js +43 -0
  341. package/dist/esm/events-CKtYJJSv.js.map +1 -0
  342. package/dist/esm/filter.button-CjABZQgg.js +39 -0
  343. package/dist/esm/filter.button-CjABZQgg.js.map +1 -0
  344. package/dist/esm/header-cell-renderer-DnjpJuXq.js +351 -0
  345. package/dist/esm/header-cell-renderer-DnjpJuXq.js.map +1 -0
  346. package/dist/esm/index-BAoInZ4V.js +2519 -0
  347. package/dist/esm/index-BAoInZ4V.js.map +1 -0
  348. package/dist/esm/index.js +181 -0
  349. package/dist/esm/index.js.map +1 -0
  350. package/dist/esm/loader.js +17 -0
  351. package/dist/esm/loader.js.map +1 -0
  352. package/dist/esm/revo-grid.entry.js +2185 -0
  353. package/dist/esm/revo-grid.entry.js.map +1 -0
  354. package/dist/esm/revo-grid.js +27 -0
  355. package/dist/esm/revo-grid.js.map +1 -0
  356. package/dist/esm/revogr-attribution.revogr-extra.revogr-focus.revogr-overlay-selection.revogr-row-headers.revogr-scroll-virtual.revogr-temp-range.entry.js.map +1 -0
  357. package/dist/esm/revogr-attribution_7.entry.js +1455 -0
  358. package/dist/esm/revogr-attribution_7.entry.js.map +1 -0
  359. package/dist/esm/revogr-clipboard.revogr-edit.revogr-order-editor.entry.js.map +1 -0
  360. package/dist/esm/revogr-clipboard_3.entry.js +452 -0
  361. package/dist/esm/revogr-clipboard_3.entry.js.map +1 -0
  362. package/dist/esm/revogr-data.revogr-header.revogr-viewport-scroll.vnode-html.entry.js.map +1 -0
  363. package/dist/esm/revogr-data_4.entry.js +943 -0
  364. package/dist/esm/revogr-data_4.entry.js.map +1 -0
  365. package/dist/esm/revogr-filter-panel.entry.js +380 -0
  366. package/dist/esm/revogr-filter-panel.entry.js.map +1 -0
  367. package/dist/esm/row-header-utils-vnoLGj5A.js +407 -0
  368. package/dist/esm/row-header-utils-vnoLGj5A.js.map +1 -0
  369. package/dist/esm/text-editor-Cp7lwBZi.js +79 -0
  370. package/dist/esm/text-editor-Cp7lwBZi.js.map +1 -0
  371. package/dist/esm/throttle-DiUrHjcY.js +273 -0
  372. package/dist/esm/throttle-DiUrHjcY.js.map +1 -0
  373. package/dist/esm/viewport.helpers-Ch4AQMMg.js +53 -0
  374. package/dist/esm/viewport.helpers-Ch4AQMMg.js.map +1 -0
  375. package/dist/index.cjs.js +1 -0
  376. package/dist/index.d.ts +1 -0
  377. package/dist/index.js +1 -0
  378. package/dist/revo-grid/app-globals-FBz64o-g.js +14 -0
  379. package/dist/revo-grid/app-globals-FBz64o-g.js.map +1 -0
  380. package/dist/revo-grid/cell-renderer-Ca_PCGjJ.js +98 -0
  381. package/dist/revo-grid/cell-renderer-Ca_PCGjJ.js.map +1 -0
  382. package/dist/revo-grid/column.drag.plugin-BtuUyB-2.js +2528 -0
  383. package/dist/revo-grid/column.drag.plugin-BtuUyB-2.js.map +1 -0
  384. package/dist/revo-grid/column.service-CTqFIQUy.js +1343 -0
  385. package/dist/revo-grid/column.service-CTqFIQUy.js.map +1 -0
  386. package/dist/revo-grid/data.store-B-lvmoFH.js +3553 -0
  387. package/dist/revo-grid/data.store-B-lvmoFH.js.map +1 -0
  388. package/dist/revo-grid/debounce-DTUQ1fY7.js +488 -0
  389. package/dist/revo-grid/debounce-DTUQ1fY7.js.map +1 -0
  390. package/dist/revo-grid/edit.utils-CyCANCLB.js +103 -0
  391. package/dist/revo-grid/edit.utils-CyCANCLB.js.map +1 -0
  392. package/dist/revo-grid/events-CKtYJJSv.js +43 -0
  393. package/dist/revo-grid/events-CKtYJJSv.js.map +1 -0
  394. package/dist/revo-grid/filter.button-CjABZQgg.js +39 -0
  395. package/dist/revo-grid/filter.button-CjABZQgg.js.map +1 -0
  396. package/dist/revo-grid/header-cell-renderer-DnjpJuXq.js +351 -0
  397. package/dist/revo-grid/header-cell-renderer-DnjpJuXq.js.map +1 -0
  398. package/dist/revo-grid/index-BAoInZ4V.js +2490 -0
  399. package/dist/revo-grid/index-BAoInZ4V.js.map +1 -0
  400. package/dist/revo-grid/index.esm.js +181 -0
  401. package/dist/revo-grid/index.esm.js.map +1 -0
  402. package/dist/revo-grid/loader.esm.js.map +1 -0
  403. package/dist/revo-grid/revo-grid.entry.esm.js.map +1 -0
  404. package/dist/revo-grid/revo-grid.entry.js +2185 -0
  405. package/dist/revo-grid/revo-grid.entry.js.map +1 -0
  406. package/dist/revo-grid/revo-grid.esm.js +27 -0
  407. package/dist/revo-grid/revo-grid.esm.js.map +1 -0
  408. package/dist/revo-grid/revogr-attribution.revogr-extra.revogr-focus.revogr-overlay-selection.revogr-row-headers.revogr-scroll-virtual.revogr-temp-range.entry.esm.js.map +1 -0
  409. package/dist/revo-grid/revogr-attribution_7.entry.js +1455 -0
  410. package/dist/revo-grid/revogr-attribution_7.entry.js.map +1 -0
  411. package/dist/revo-grid/revogr-clipboard.revogr-edit.revogr-order-editor.entry.esm.js.map +1 -0
  412. package/dist/revo-grid/revogr-clipboard_3.entry.js +452 -0
  413. package/dist/revo-grid/revogr-clipboard_3.entry.js.map +1 -0
  414. package/dist/revo-grid/revogr-data.revogr-header.revogr-viewport-scroll.vnode-html.entry.esm.js.map +1 -0
  415. package/dist/revo-grid/revogr-data_4.entry.js +943 -0
  416. package/dist/revo-grid/revogr-data_4.entry.js.map +1 -0
  417. package/dist/revo-grid/revogr-filter-panel.entry.esm.js.map +1 -0
  418. package/dist/revo-grid/revogr-filter-panel.entry.js +380 -0
  419. package/dist/revo-grid/revogr-filter-panel.entry.js.map +1 -0
  420. package/dist/revo-grid/row-header-utils-vnoLGj5A.js +407 -0
  421. package/dist/revo-grid/row-header-utils-vnoLGj5A.js.map +1 -0
  422. package/dist/revo-grid/text-editor-Cp7lwBZi.js +79 -0
  423. package/dist/revo-grid/text-editor-Cp7lwBZi.js.map +1 -0
  424. package/dist/revo-grid/throttle-DiUrHjcY.js +273 -0
  425. package/dist/revo-grid/throttle-DiUrHjcY.js.map +1 -0
  426. package/dist/revo-grid/viewport.helpers-Ch4AQMMg.js +53 -0
  427. package/dist/revo-grid/viewport.helpers-Ch4AQMMg.js.map +1 -0
  428. package/dist/types/components/attribution/revogr-attribution.d.ts +12 -0
  429. package/dist/types/components/clipboard/revogr-clipboard.d.ts +89 -0
  430. package/dist/types/components/data/cell-renderer.d.ts +12 -0
  431. package/dist/types/components/data/column.service.d.ts +61 -0
  432. package/dist/types/components/data/revogr-data.d.ts +107 -0
  433. package/dist/types/components/data/row-highlight.plugin.d.ts +10 -0
  434. package/dist/types/components/data/row-renderer.d.ts +12 -0
  435. package/dist/types/components/editors/edit.utils.d.ts +3 -0
  436. package/dist/types/components/editors/revogr-edit.d.ts +63 -0
  437. package/dist/types/components/editors/text-editor.d.ts +43 -0
  438. package/dist/types/components/extra/revogr-extra.d.ts +38 -0
  439. package/dist/types/components/header/header-cell-renderer.d.ts +9 -0
  440. package/dist/types/components/header/header-group-renderer.d.ts +15 -0
  441. package/dist/types/components/header/header-renderer.d.ts +16 -0
  442. package/dist/types/components/header/resizable.directive.d.ts +55 -0
  443. package/dist/types/components/header/resizable.element.d.ts +5 -0
  444. package/dist/types/components/header/revogr-header.d.ts +90 -0
  445. package/dist/types/components/order/order-renderer.d.ts +29 -0
  446. package/dist/types/components/order/order-row.service.d.ts +27 -0
  447. package/dist/types/components/order/revogr-order-editor.d.ts +56 -0
  448. package/dist/types/components/overlay/autofill.service.d.ts +80 -0
  449. package/dist/types/components/overlay/keyboard.service.d.ts +28 -0
  450. package/dist/types/components/overlay/revogr-overlay-selection.d.ts +278 -0
  451. package/dist/types/components/overlay/selection.utils.d.ts +47 -0
  452. package/dist/types/components/revoGrid/grid.helpers.d.ts +17 -0
  453. package/dist/types/components/revoGrid/plugin.service.d.ts +37 -0
  454. package/dist/types/components/revoGrid/revo-grid.d.ts +686 -0
  455. package/dist/types/components/revoGrid/viewport.helpers.d.ts +39 -0
  456. package/dist/types/components/revoGrid/viewport.resize.service.d.ts +17 -0
  457. package/dist/types/components/revoGrid/viewport.scrolling.service.d.ts +20 -0
  458. package/dist/types/components/revoGrid/viewport.service.d.ts +59 -0
  459. package/dist/types/components/rowHeaders/revogr-row-headers.d.ts +51 -0
  460. package/dist/types/components/rowHeaders/row-header-render.d.ts +9 -0
  461. package/dist/types/components/scroll/revogr-viewport-scroll.d.ts +117 -0
  462. package/dist/types/components/scrollable/autohide-scroll.plugin.d.ts +22 -0
  463. package/dist/types/components/scrollable/revogr-scroll-virtual.d.ts +43 -0
  464. package/dist/types/components/selectionFocus/revogr-focus.d.ts +58 -0
  465. package/dist/types/components/selectionTempRange/revogr-temp-range.d.ts +28 -0
  466. package/dist/types/components/vnode/vnode-converter.d.ts +19 -0
  467. package/dist/types/components/vnode/vnode.utils.d.ts +9 -0
  468. package/dist/types/components.d.ts +2583 -0
  469. package/dist/types/global/global.d.ts +1 -0
  470. package/dist/types/index.d.ts +9 -0
  471. package/dist/types/plugins/add-rows-on-paste.plugin.d.ts +14 -0
  472. package/dist/types/plugins/base.plugin.d.ts +51 -0
  473. package/dist/types/plugins/column.auto-size.plugin.d.ts +55 -0
  474. package/dist/types/plugins/column.stretch.plugin.d.ts +20 -0
  475. package/dist/types/plugins/dispatcher.d.ts +20 -0
  476. package/dist/types/plugins/export/csv.d.ts +9 -0
  477. package/dist/types/plugins/export/export.plugin.d.ts +24 -0
  478. package/dist/types/plugins/export/types.d.ts +23 -0
  479. package/dist/types/plugins/filter/conditions/equal.d.ts +4 -0
  480. package/dist/types/plugins/filter/conditions/number/greaterThan.d.ts +3 -0
  481. package/dist/types/plugins/filter/conditions/number/greaterThanOrEqual.d.ts +3 -0
  482. package/dist/types/plugins/filter/conditions/number/lessThan.d.ts +3 -0
  483. package/dist/types/plugins/filter/conditions/number/lessThanOrEqual.d.ts +3 -0
  484. package/dist/types/plugins/filter/conditions/set.d.ts +4 -0
  485. package/dist/types/plugins/filter/conditions/string/beginswith.d.ts +3 -0
  486. package/dist/types/plugins/filter/conditions/string/contains.d.ts +4 -0
  487. package/dist/types/plugins/filter/filter.button.d.ts +14 -0
  488. package/dist/types/plugins/filter/filter.indexed.d.ts +20 -0
  489. package/dist/types/plugins/filter/filter.panel.d.ts +53 -0
  490. package/dist/types/plugins/filter/filter.plugin.d.ts +73 -0
  491. package/dist/types/plugins/filter/filter.types.d.ts +129 -0
  492. package/dist/types/plugins/groupingRow/grouping.const.d.ts +12 -0
  493. package/dist/types/plugins/groupingRow/grouping.row.expand.service.d.ts +15 -0
  494. package/dist/types/plugins/groupingRow/grouping.row.plugin.d.ts +39 -0
  495. package/dist/types/plugins/groupingRow/grouping.row.renderer.d.ts +6 -0
  496. package/dist/types/plugins/groupingRow/grouping.row.types.d.ts +103 -0
  497. package/dist/types/plugins/groupingRow/grouping.service.d.ts +36 -0
  498. package/dist/types/plugins/groupingRow/grouping.trimmed.service.d.ts +10 -0
  499. package/dist/types/plugins/index.d.ts +11 -0
  500. package/dist/types/plugins/moveColumn/column.drag.plugin.d.ts +42 -0
  501. package/dist/types/plugins/moveColumn/order-column.handler.d.ts +16 -0
  502. package/dist/types/plugins/rtl/rtl.plugin.d.ts +37 -0
  503. package/dist/types/plugins/sorting/sorting.func.d.ts +9 -0
  504. package/dist/types/plugins/sorting/sorting.plugin.d.ts +48 -0
  505. package/dist/types/plugins/sorting/sorting.sign.d.ts +6 -0
  506. package/dist/types/plugins/sorting/sorting.types.d.ts +14 -0
  507. package/dist/types/plugins/wcag/index.d.ts +26 -0
  508. package/dist/types/services/cell.helpers.d.ts +2 -0
  509. package/dist/types/services/column.data.provider.d.ts +27 -0
  510. package/dist/types/services/data.provider.d.ts +36 -0
  511. package/dist/types/services/dimension.provider.d.ts +66 -0
  512. package/dist/types/services/local.scroll.service.d.ts +36 -0
  513. package/dist/types/services/local.scroll.timer.d.ts +32 -0
  514. package/dist/types/services/selection.store.connector.d.ts +79 -0
  515. package/dist/types/services/viewport.provider.d.ts +7 -0
  516. package/dist/types/stencil-public-runtime.d.ts +1709 -0
  517. package/dist/types/store/dataSource/data.proxy.d.ts +14 -0
  518. package/dist/types/store/dataSource/data.store.d.ts +74 -0
  519. package/dist/types/store/dataSource/index.d.ts +3 -0
  520. package/dist/types/store/dataSource/trimmed.plugin.d.ts +12 -0
  521. package/dist/types/store/dimension/dimension.helpers.d.ts +24 -0
  522. package/dist/types/store/dimension/dimension.recalculate.plugin.d.ts +9 -0
  523. package/dist/types/store/dimension/dimension.store.d.ts +21 -0
  524. package/dist/types/store/dimension/dimension.trim.plugin.d.ts +13 -0
  525. package/dist/types/store/dimension/index.d.ts +2 -0
  526. package/dist/types/store/index.d.ts +8 -0
  527. package/dist/types/store/selection/index.d.ts +2 -0
  528. package/dist/types/store/selection/selection.helpers.d.ts +6 -0
  529. package/dist/types/store/selection/selection.store.d.ts +22 -0
  530. package/dist/types/store/vp/index.d.ts +7 -0
  531. package/dist/types/store/vp/viewport.helpers.d.ts +54 -0
  532. package/dist/types/store/vp/viewport.store.d.ts +26 -0
  533. package/dist/types/themeManager/theme.compact.d.ts +4 -0
  534. package/dist/types/themeManager/theme.default.d.ts +4 -0
  535. package/dist/types/themeManager/theme.material.d.ts +4 -0
  536. package/dist/types/themeManager/theme.service.d.ts +13 -0
  537. package/dist/types/types/dimension.d.ts +8 -0
  538. package/dist/types/types/events.d.ts +2 -0
  539. package/dist/types/types/index.d.ts +8 -0
  540. package/dist/types/types/interfaces.d.ts +768 -0
  541. package/dist/types/types/plugin.d.ts +9 -0
  542. package/dist/types/types/plugin.types.d.ts +48 -0
  543. package/dist/types/types/selection.d.ts +178 -0
  544. package/dist/types/types/theme.d.ts +7 -0
  545. package/dist/types/types/viewport.interfaces.d.ts +45 -0
  546. package/dist/types/utils/browser.d.ts +1 -0
  547. package/dist/types/utils/closest.polifill.d.ts +0 -0
  548. package/dist/types/utils/column.utils.d.ts +52 -0
  549. package/dist/types/utils/consts.d.ts +22 -0
  550. package/dist/types/utils/events.d.ts +5 -0
  551. package/dist/types/utils/header.utils.d.ts +2 -0
  552. package/dist/types/utils/index.d.ts +32 -0
  553. package/dist/types/utils/key.codes.d.ts +73 -0
  554. package/dist/types/utils/key.utils.d.ts +13 -0
  555. package/dist/types/utils/mobile.d.ts +1 -0
  556. package/dist/types/utils/platform.d.ts +4 -0
  557. package/dist/types/utils/row-header-utils.d.ts +2 -0
  558. package/dist/types/utils/store.types.d.ts +97 -0
  559. package/dist/types/utils/store.utils.d.ts +10 -0
  560. package/hydrate/index.d.ts +273 -0
  561. package/hydrate/index.js +33890 -0
  562. package/hydrate/index.mjs +33882 -0
  563. package/hydrate/package.json +12 -0
  564. package/loader/cdn.js +4 -0
  565. package/loader/index.cjs.js +4 -0
  566. package/loader/index.d.ts +24 -0
  567. package/loader/index.es2017.js +4 -0
  568. package/loader/index.js +5 -0
  569. package/package.json +101 -0
  570. package/react/dist/index.d.ts +6191 -0
  571. package/react/dist/react-datagrid.js +260 -0
  572. package/react/dist/react-datagrid.umd.cjs +272 -0
  573. package/standalone/column.service.js +1345 -0
  574. package/standalone/column.service.js.map +1 -0
  575. package/standalone/consts.js +30 -0
  576. package/standalone/consts.js.map +1 -0
  577. package/standalone/data.store.js +3099 -0
  578. package/standalone/data.store.js.map +1 -0
  579. package/standalone/debounce.js +215 -0
  580. package/standalone/debounce.js.map +1 -0
  581. package/standalone/dimension.helpers.js +229 -0
  582. package/standalone/dimension.helpers.js.map +1 -0
  583. package/standalone/filter.button.js +39 -0
  584. package/standalone/filter.button.js.map +1 -0
  585. package/standalone/index.d.ts +68 -0
  586. package/standalone/index.js +217 -0
  587. package/standalone/index.js.map +1 -0
  588. package/standalone/index2.js +140 -0
  589. package/standalone/index2.js.map +1 -0
  590. package/standalone/local.scroll.timer.js +207 -0
  591. package/standalone/local.scroll.timer.js.map +1 -0
  592. package/standalone/platform.js +90 -0
  593. package/standalone/platform.js.map +1 -0
  594. package/standalone/revo-grid.d.ts +11 -0
  595. package/standalone/revo-grid.js +4884 -0
  596. package/standalone/revo-grid.js.map +1 -0
  597. package/standalone/revogr-attribution.d.ts +11 -0
  598. package/standalone/revogr-attribution.js +12 -0
  599. package/standalone/revogr-attribution.js.map +1 -0
  600. package/standalone/revogr-attribution2.js +32 -0
  601. package/standalone/revogr-attribution2.js.map +1 -0
  602. package/standalone/revogr-clipboard.d.ts +11 -0
  603. package/standalone/revogr-clipboard.js +12 -0
  604. package/standalone/revogr-clipboard.js.map +1 -0
  605. package/standalone/revogr-clipboard2.js +164 -0
  606. package/standalone/revogr-clipboard2.js.map +1 -0
  607. package/standalone/revogr-data.d.ts +11 -0
  608. package/standalone/revogr-data.js +12 -0
  609. package/standalone/revogr-data.js.map +1 -0
  610. package/standalone/revogr-data2.js +378 -0
  611. package/standalone/revogr-data2.js.map +1 -0
  612. package/standalone/revogr-edit.d.ts +11 -0
  613. package/standalone/revogr-edit.js +12 -0
  614. package/standalone/revogr-edit.js.map +1 -0
  615. package/standalone/revogr-edit2.js +334 -0
  616. package/standalone/revogr-edit2.js.map +1 -0
  617. package/standalone/revogr-extra.d.ts +11 -0
  618. package/standalone/revogr-extra.js +12 -0
  619. package/standalone/revogr-extra.js.map +1 -0
  620. package/standalone/revogr-extra2.js +73 -0
  621. package/standalone/revogr-extra2.js.map +1 -0
  622. package/standalone/revogr-filter-panel.d.ts +11 -0
  623. package/standalone/revogr-filter-panel.js +411 -0
  624. package/standalone/revogr-filter-panel.js.map +1 -0
  625. package/standalone/revogr-focus.d.ts +11 -0
  626. package/standalone/revogr-focus.js +12 -0
  627. package/standalone/revogr-focus.js.map +1 -0
  628. package/standalone/revogr-focus2.js +112 -0
  629. package/standalone/revogr-focus2.js.map +1 -0
  630. package/standalone/revogr-header.d.ts +11 -0
  631. package/standalone/revogr-header.js +12 -0
  632. package/standalone/revogr-header.js.map +1 -0
  633. package/standalone/revogr-header2.js +707 -0
  634. package/standalone/revogr-header2.js.map +1 -0
  635. package/standalone/revogr-order-editor.d.ts +11 -0
  636. package/standalone/revogr-order-editor.js +12 -0
  637. package/standalone/revogr-order-editor.js.map +1 -0
  638. package/standalone/revogr-order-editor2.js +201 -0
  639. package/standalone/revogr-order-editor2.js.map +1 -0
  640. package/standalone/revogr-overlay-selection.d.ts +11 -0
  641. package/standalone/revogr-overlay-selection.js +12 -0
  642. package/standalone/revogr-overlay-selection.js.map +1 -0
  643. package/standalone/revogr-overlay-selection2.js +972 -0
  644. package/standalone/revogr-overlay-selection2.js.map +1 -0
  645. package/standalone/revogr-row-headers.d.ts +11 -0
  646. package/standalone/revogr-row-headers.js +12 -0
  647. package/standalone/revogr-row-headers.js.map +1 -0
  648. package/standalone/revogr-row-headers2.js +520 -0
  649. package/standalone/revogr-row-headers2.js.map +1 -0
  650. package/standalone/revogr-scroll-virtual.d.ts +11 -0
  651. package/standalone/revogr-scroll-virtual.js +12 -0
  652. package/standalone/revogr-scroll-virtual.js.map +1 -0
  653. package/standalone/revogr-scroll-virtual2.js +184 -0
  654. package/standalone/revogr-scroll-virtual2.js.map +1 -0
  655. package/standalone/revogr-temp-range.d.ts +11 -0
  656. package/standalone/revogr-temp-range.js +12 -0
  657. package/standalone/revogr-temp-range.js.map +1 -0
  658. package/standalone/revogr-temp-range2.js +93 -0
  659. package/standalone/revogr-temp-range2.js.map +1 -0
  660. package/standalone/revogr-viewport-scroll.d.ts +11 -0
  661. package/standalone/revogr-viewport-scroll.js +12 -0
  662. package/standalone/revogr-viewport-scroll.js.map +1 -0
  663. package/standalone/revogr-viewport-scroll2.js +421 -0
  664. package/standalone/revogr-viewport-scroll2.js.map +1 -0
  665. package/standalone/selection.utils.js +179 -0
  666. package/standalone/selection.utils.js.map +1 -0
  667. package/standalone/throttle.js +75 -0
  668. package/standalone/throttle.js.map +1 -0
  669. package/standalone/toNumber.js +282 -0
  670. package/standalone/toNumber.js.map +1 -0
  671. package/standalone/vnode-converter.js +46 -0
  672. package/standalone/vnode-converter.js.map +1 -0
  673. package/standalone/vnode-html.d.ts +11 -0
  674. package/standalone/vnode-html.js +12 -0
  675. package/standalone/vnode-html.js.map +1 -0
@@ -0,0 +1,456 @@
1
+ /*!
2
+ * Built by LevelSkill.Pro
3
+ */
4
+ 'use strict';
5
+
6
+ var index = require('./index-VM40U6Gh.js');
7
+ var data_store = require('./data.store-CrF4Nf9q.js');
8
+ var textEditor = require('./text-editor-DWChyeVV.js');
9
+ var edit_utils = require('./edit.utils-Bw-E3Fj6.js');
10
+ var debounce = require('./debounce-DgeyTQM0.js');
11
+
12
+ const Clipboard = class {
13
+ constructor(hostRef) {
14
+ index.registerInstance(this, hostRef);
15
+ this.beforePaste = index.createEvent(this, "beforepaste", 7);
16
+ this.beforePasteApply = index.createEvent(this, "beforepasteapply", 7);
17
+ this.pasteRegion = index.createEvent(this, "pasteregion", 7);
18
+ this.afterPasteApply = index.createEvent(this, "afterpasteapply", 7);
19
+ this.beforeCut = index.createEvent(this, "beforecut", 7);
20
+ this.clearRegion = index.createEvent(this, "clearregion", 7);
21
+ this.beforeCopy = index.createEvent(this, "beforecopy", 7);
22
+ this.beforeCopyApply = index.createEvent(this, "beforecopyapply", 7);
23
+ this.copyRegion = index.createEvent(this, "copyregion", 7);
24
+ }
25
+ onPaste(e) {
26
+ // if readonly do nothing
27
+ if (this.readonly) {
28
+ return;
29
+ }
30
+ const clipboardData = this.getData(e);
31
+ const isHTML = ((clipboardData === null || clipboardData === void 0 ? void 0 : clipboardData.types.indexOf('text/html')) || -1) > -1;
32
+ const data = (isHTML
33
+ ? clipboardData === null || clipboardData === void 0 ? void 0 : clipboardData.getData('text/html')
34
+ : clipboardData === null || clipboardData === void 0 ? void 0 : clipboardData.getData('text')) || '';
35
+ const dataText = (clipboardData === null || clipboardData === void 0 ? void 0 : clipboardData.getData('text')) || '';
36
+ const beforePaste = this.beforePaste.emit({
37
+ raw: data,
38
+ dataText,
39
+ isHTML,
40
+ event: e,
41
+ });
42
+ if (beforePaste.defaultPrevented) {
43
+ return;
44
+ }
45
+ let parsedData;
46
+ // if html, then search for table if no table fallback to regular text parsing
47
+ if (beforePaste.detail.isHTML) {
48
+ const table = this.htmlParse(beforePaste.detail.raw);
49
+ // fallback to text if not possible to parse as html
50
+ parsedData = table || this.textParse(dataText || '');
51
+ }
52
+ else {
53
+ parsedData = this.textParse(beforePaste.detail.raw);
54
+ }
55
+ const beforePasteApply = this.beforePasteApply.emit({
56
+ raw: data,
57
+ parsed: parsedData,
58
+ event: e,
59
+ });
60
+ if (beforePasteApply.defaultPrevented) {
61
+ return;
62
+ }
63
+ this.pasteRegion.emit(beforePasteApply.detail.parsed);
64
+ // post paste action
65
+ const afterPasteApply = this.afterPasteApply.emit({
66
+ raw: data,
67
+ parsed: parsedData,
68
+ event: e,
69
+ });
70
+ // keep default behavior if needed
71
+ if (afterPasteApply.defaultPrevented) {
72
+ return;
73
+ }
74
+ e.preventDefault();
75
+ }
76
+ /**
77
+ * Listen to copy event and emit copy region event
78
+ */
79
+ copyStarted(e) {
80
+ const beforeCopy = this.beforeCopy.emit({
81
+ event: e,
82
+ });
83
+ if (beforeCopy.defaultPrevented) {
84
+ return;
85
+ }
86
+ const data = this.getData(beforeCopy.detail.event);
87
+ this.copyRegion.emit(data || undefined);
88
+ e.preventDefault();
89
+ }
90
+ /**
91
+ * Listen to copy event and emit copy region event
92
+ */
93
+ cutStarted(e) {
94
+ const beforeCut = this.beforeCut.emit({
95
+ event: e,
96
+ });
97
+ if (beforeCut.defaultPrevented) {
98
+ return;
99
+ }
100
+ const data = this.getData(beforeCut.detail.event);
101
+ this.copyStarted(e);
102
+ // if readonly do nothing
103
+ if (this.readonly) {
104
+ return;
105
+ }
106
+ this.clearRegion.emit(data || undefined);
107
+ e.preventDefault();
108
+ }
109
+ async doCopy(e, data) {
110
+ const beforeCopyApply = this.beforeCopyApply.emit({
111
+ event: e,
112
+ data,
113
+ });
114
+ if (beforeCopyApply.defaultPrevented) {
115
+ return;
116
+ }
117
+ const parsed = data ? this.parserCopy(data) : '';
118
+ await navigator.clipboard.writeText(parsed);
119
+ // e.setData('text/plain', parsed);
120
+ }
121
+ parserCopy(data) {
122
+ return data.map(rgRow => rgRow.join('\t')).join('\n');
123
+ }
124
+ textParse(data) {
125
+ const result = [];
126
+ const rows = data.split(/\r\n|\n|\r/);
127
+ for (let y in rows) {
128
+ result.push(rows[y].split('\t'));
129
+ }
130
+ return result;
131
+ }
132
+ htmlParse(data) {
133
+ const result = [];
134
+ const fragment = document.createRange().createContextualFragment(data);
135
+ const table = fragment.querySelector('table');
136
+ if (!table) {
137
+ return null;
138
+ }
139
+ for (const rgRow of Array.from(table.rows)) {
140
+ result.push(Array.from(rgRow.cells).map(cell => cell.innerText));
141
+ }
142
+ return result;
143
+ }
144
+ getData(e) {
145
+ return (e.clipboardData ||
146
+ (window === null || window === void 0 ? void 0 : window.clipboardData));
147
+ }
148
+ };
149
+
150
+ const revogrEditStyleCss = "revogr-edit{display:block;position:absolute;background-color:#fff}revogr-edit input{height:100%;width:100%;box-sizing:border-box}revogr-edit revo-dropdown{height:100%}revogr-edit revo-dropdown.shrink fieldset legend>span{display:none}";
151
+
152
+ const RevoEdit = class {
153
+ constructor(hostRef) {
154
+ index.registerInstance(this, hostRef);
155
+ this.cellEdit = index.createEvent(this, "celleditinit", 7);
156
+ this.closeEdit = index.createEvent(this, "closeedit", 7);
157
+ /**
158
+ * Save on editor close. Defines if data should be saved on editor close.
159
+ */
160
+ this.saveOnClose = false;
161
+ this.currentEditor = null;
162
+ this.preventSaveOnClose = false;
163
+ }
164
+ /**
165
+ * Cancel pending changes flag. Editor will be closed without autosave.
166
+ */
167
+ async cancelChanges() {
168
+ this.preventSaveOnClose = true;
169
+ }
170
+ /**
171
+ * Before editor got disconnected.
172
+ * Can be triggered multiple times before actual disconnect.
173
+ */
174
+ async beforeDisconnect() {
175
+ var _a, _b;
176
+ (_b = (_a = this.currentEditor) === null || _a === void 0 ? void 0 : _a.beforeDisconnect) === null || _b === void 0 ? void 0 : _b.call(_a);
177
+ }
178
+ onAutoSave() {
179
+ var _a, _b, _c;
180
+ this.preventSaveOnClose = true;
181
+ const val = (_b = (_a = this.currentEditor) === null || _a === void 0 ? void 0 : _a.getValue) === null || _b === void 0 ? void 0 : _b.call(_a);
182
+ // For Editor plugin internal usage.
183
+ // When you want to prevent save and use custom save of your own.
184
+ if ((_c = this.currentEditor) === null || _c === void 0 ? void 0 : _c.beforeAutoSave) {
185
+ const canSave = this.currentEditor.beforeAutoSave(val);
186
+ if (canSave === false) {
187
+ return;
188
+ }
189
+ }
190
+ this.onSave(val, true);
191
+ }
192
+ /**
193
+ * Callback triggered when cell editor saved.
194
+ * Closes editor when called.
195
+ * @param preventFocus - if true, editor will not be closed & next cell will not be focused.
196
+ */
197
+ onSave(val, preventFocus) {
198
+ this.preventSaveOnClose = true;
199
+ if (this.editCell) {
200
+ this.cellEdit.emit({
201
+ rgCol: this.editCell.x,
202
+ rgRow: this.editCell.y,
203
+ type: this.editCell.type,
204
+ prop: this.editCell.prop,
205
+ val,
206
+ preventFocus,
207
+ });
208
+ }
209
+ }
210
+ componentWillRender() {
211
+ // Active editor present and not yet closed.
212
+ if (this.currentEditor || !this.column) {
213
+ return;
214
+ }
215
+ this.preventSaveOnClose = false;
216
+ // Custom editor usage.
217
+ // Start with TextEditor (editors/text.tsx) for Custom editor.
218
+ // It can be class or function
219
+ if (this.editor) {
220
+ // if editor is constructible
221
+ if (edit_utils.isEditorCtrConstructible(this.editor)) {
222
+ this.currentEditor = new this.editor(this.column,
223
+ // save callback
224
+ (e, preventFocus) => {
225
+ this.onSave(e, preventFocus);
226
+ },
227
+ // cancel callback
228
+ focusNext => {
229
+ this.preventSaveOnClose = true;
230
+ this.closeEdit.emit(focusNext);
231
+ });
232
+ // if editor is function
233
+ }
234
+ else {
235
+ this.currentEditor = this.editor(this.column,
236
+ // save callback
237
+ (e, preventFocus) => {
238
+ this.onSave(e, preventFocus);
239
+ },
240
+ // cancel callback
241
+ focusNext => {
242
+ this.preventSaveOnClose = true;
243
+ this.closeEdit.emit(focusNext);
244
+ });
245
+ }
246
+ return;
247
+ }
248
+ // Default text editor usage
249
+ this.currentEditor = new textEditor.TextEditor(this.column, (e, preventFocus) => this.onSave(e, preventFocus));
250
+ }
251
+ componentDidRender() {
252
+ var _a, _b;
253
+ if (!this.currentEditor) {
254
+ return;
255
+ }
256
+ this.currentEditor.element = this.element.firstElementChild;
257
+ (_b = (_a = this.currentEditor).componentDidRender) === null || _b === void 0 ? void 0 : _b.call(_a);
258
+ }
259
+ disconnectedCallback() {
260
+ var _a, _b;
261
+ if (this.saveOnClose) {
262
+ // Can not be cancelled by `preventSaveOnClose` prop.
263
+ // Editor requires `getValue` to be able to save.
264
+ if (!this.preventSaveOnClose) {
265
+ this.onAutoSave();
266
+ }
267
+ }
268
+ this.preventSaveOnClose = false;
269
+ if (!this.currentEditor) {
270
+ return;
271
+ }
272
+ (_b = (_a = this.currentEditor).disconnectedCallback) === null || _b === void 0 ? void 0 : _b.call(_a);
273
+ this.currentEditor.element = null;
274
+ this.currentEditor = null;
275
+ }
276
+ render() {
277
+ if (this.currentEditor) {
278
+ this.currentEditor.editCell = this.editCell;
279
+ return (index.h(index.Host, { class: data_store.EDIT_INPUT_WR }, this.currentEditor.render(index.h, this.additionalData)));
280
+ }
281
+ return '';
282
+ }
283
+ get element() { return index.getElement(this); }
284
+ };
285
+ RevoEdit.style = revogrEditStyleCss;
286
+
287
+ class RowOrderService {
288
+ constructor(config) {
289
+ this.config = config;
290
+ this.currentCell = null;
291
+ this.previousRow = null;
292
+ }
293
+ /** Drag finished, calculate and apply changes */
294
+ endOrder(e, data) {
295
+ if (this.currentCell === null) {
296
+ return;
297
+ }
298
+ const newRow = this.getCell(e, data);
299
+ // if position changed
300
+ if (newRow.y !== this.currentCell.y) {
301
+ // rgRow dragged out table
302
+ if (newRow.y < 0) {
303
+ newRow.y = 0;
304
+ }
305
+ // rgRow dragged to the top
306
+ else if (newRow.y < this.currentCell.y) {
307
+ newRow.y++;
308
+ }
309
+ this.config.positionChanged(this.currentCell.y, newRow.y);
310
+ }
311
+ this.clear();
312
+ }
313
+ /** Drag started, reserve initial cell for farther use */
314
+ startOrder(e, data) {
315
+ this.currentCell = this.getCell(e, data);
316
+ return this.currentCell;
317
+ }
318
+ move(y, data) {
319
+ const rgRow = this.getRow(y, data);
320
+ // if rgRow same as previous or below range (-1 = 0) do nothing
321
+ if (this.previousRow === rgRow.itemIndex || rgRow.itemIndex < -1) {
322
+ return null;
323
+ }
324
+ this.previousRow = rgRow.itemIndex;
325
+ return rgRow;
326
+ }
327
+ /** Drag stopped, probably cursor outside of document area */
328
+ clear() {
329
+ this.currentCell = null;
330
+ this.previousRow = null;
331
+ }
332
+ /** Calculate cell based on x, y position */
333
+ getRow(y, { el, rows }) {
334
+ const { top } = el.getBoundingClientRect();
335
+ const topRelative = y - top;
336
+ const rgRow = data_store.getItemByPosition(rows, topRelative);
337
+ const absolutePosition = {
338
+ itemIndex: rgRow.itemIndex,
339
+ start: rgRow.start + top,
340
+ end: rgRow.end + top,
341
+ };
342
+ return absolutePosition;
343
+ }
344
+ /** Calculate cell based on x, y position */
345
+ getCell({ x, y }, { el, rows, cols }) {
346
+ const { top, left } = el.getBoundingClientRect();
347
+ const topRelative = y - top;
348
+ const leftRelative = x - left;
349
+ const rgRow = data_store.getItemByPosition(rows, topRelative);
350
+ const rgCol = data_store.getItemByPosition(cols, leftRelative);
351
+ return { x: rgCol.itemIndex, y: rgRow.itemIndex };
352
+ }
353
+ }
354
+
355
+ const OrderEditor = class {
356
+ constructor(hostRef) {
357
+ index.registerInstance(this, hostRef);
358
+ this.rowDragStart = index.createEvent(this, "rowdragstartinit", 7);
359
+ this.rowDragEnd = index.createEvent(this, "rowdragendinit", 7);
360
+ this.rowDrag = index.createEvent(this, "rowdragmoveinit", 7);
361
+ this.rowMouseMove = index.createEvent(this, "rowdragmousemove", 7);
362
+ this.rowDropped = index.createEvent(this, "rowdropinit", 7);
363
+ this.rowOrderChange = index.createEvent(this, "roworderchange", 7);
364
+ this.events = [];
365
+ this.rowMoveFunc = debounce.debounce((y) => {
366
+ const rgRow = this.rowOrderService.move(y, this.getData());
367
+ if (rgRow !== null) {
368
+ this.rowDrag.emit(Object.assign(Object.assign({}, rgRow), { rowType: this.rowType }));
369
+ }
370
+ }, 5);
371
+ }
372
+ // #endregion
373
+ // #region Methods
374
+ async dragStart(e) {
375
+ e.originalEvent.preventDefault();
376
+ // extra check if previous ended
377
+ if (this.events.length) {
378
+ this.clearOrder();
379
+ }
380
+ const data = this.getData();
381
+ const cell = this.rowOrderService.startOrder(e.originalEvent, data);
382
+ const pos = this.rowOrderService.getRow(e.originalEvent.y, data);
383
+ const dragStartEvent = this.rowDragStart.emit({
384
+ cell,
385
+ text: data_store.DRAGG_TEXT,
386
+ pos,
387
+ event: e.originalEvent,
388
+ rowType: this.rowType,
389
+ model: data_store.getSourceItem(this.dataStore, pos.itemIndex),
390
+ });
391
+ if (dragStartEvent.defaultPrevented) {
392
+ return;
393
+ }
394
+ const moveMove = (e) => this.move(e);
395
+ const mouseUp = (e) => this.endOrder(e);
396
+ const mouseLeave = () => this.clearOrder();
397
+ this.events.push({
398
+ name: 'mousemove',
399
+ listener: moveMove,
400
+ }, {
401
+ name: 'mouseup',
402
+ listener: mouseUp,
403
+ }, {
404
+ name: 'mouseleave',
405
+ listener: mouseLeave,
406
+ });
407
+ document.addEventListener('mousemove', moveMove);
408
+ // Action finished inside of the document
409
+ document.addEventListener('mouseup', mouseUp);
410
+ document.addEventListener('mouseleave', mouseLeave);
411
+ }
412
+ async endOrder(e) {
413
+ this.rowOrderService.endOrder(e, this.getData());
414
+ this.clearOrder();
415
+ }
416
+ async clearOrder() {
417
+ this.rowOrderService.clear();
418
+ this.events.forEach(v => document.removeEventListener(v.name, v.listener));
419
+ this.events.length = 0;
420
+ this.rowDragEnd.emit({ rowType: this.rowType });
421
+ }
422
+ // #endregion
423
+ move({ x, y }) {
424
+ this.rowMouseMove.emit({ x, y, rowType: this.rowType });
425
+ this.rowMoveFunc(y);
426
+ }
427
+ connectedCallback() {
428
+ this.rowOrderService = new RowOrderService({
429
+ positionChanged: (from, to) => {
430
+ const dropEvent = this.rowDropped.emit({
431
+ from,
432
+ to,
433
+ rowType: this.rowType,
434
+ });
435
+ if (dropEvent.defaultPrevented) {
436
+ return;
437
+ }
438
+ this.rowOrderChange.emit(dropEvent.detail);
439
+ },
440
+ });
441
+ }
442
+ getData() {
443
+ return {
444
+ el: this.parent,
445
+ rows: this.dimensionRow.state,
446
+ cols: this.dimensionCol.state,
447
+ };
448
+ }
449
+ };
450
+
451
+ exports.revogr_clipboard = Clipboard;
452
+ exports.revogr_edit = RevoEdit;
453
+ exports.revogr_order_editor = OrderEditor;
454
+ //# sourceMappingURL=revogr-clipboard.revogr-edit.revogr-order-editor.entry.cjs.js.map
455
+
456
+ //# sourceMappingURL=revogr-clipboard_3.cjs.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"revogr-clipboard.revogr-edit.revogr-order-editor.entry.cjs.js","mappings":"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","names":["isEditorCtrConstructible","TextEditor","h","Host","EDIT_INPUT_WR","getItemByPosition","debounce","DRAGG_TEXT","getSourceItem"],"sources":["src/components/clipboard/revogr-clipboard.tsx","src/components/editors/revogr-edit-style.scss?tag=revogr-edit","src/components/editors/revogr-edit.tsx","src/components/order/order-row.service.ts","src/components/order/revogr-order-editor.tsx"],"sourcesContent":["import {\r\n Component,\r\n Listen,\r\n Method,\r\n Event,\r\n EventEmitter,\r\n Prop,\r\n} from '@stencil/core';\r\nimport { DataFormat } from '@type';\r\n/**\r\n * This Clipboard provides functionality for handling clipboard events in a web application.\r\n */\r\n@Component({ tag: 'revogr-clipboard' })\r\nexport class Clipboard {\r\n /**\r\n * If readonly mode - disabled Paste event\r\n */\r\n @Prop() readonly: boolean;\r\n\r\n /**\r\n * Paste 1. Fired before paste applied to the grid\r\n * defaultPrevented - if true, paste will be canceled\r\n */\r\n @Event({ eventName: 'beforepaste' }) beforePaste: EventEmitter<{\r\n raw: string;\r\n isHTML: boolean;\r\n event: ClipboardEvent;\r\n dataText: string;\r\n }>;\r\n\r\n /**\r\n * Paste 2. Fired before paste applied to the grid and after data parsed\r\n */\r\n @Event({ eventName: 'beforepasteapply' })\r\n beforePasteApply: EventEmitter<{\r\n raw: string;\r\n parsed: string[][];\r\n event: ClipboardEvent;\r\n }>;\r\n\r\n /**\r\n * Paste 3. Internal method. When data region is ready pass it to the top.\r\n * @property {string[][]} data - data to paste\r\n * @property {boolean} defaultPrevented - if true, paste will be canceled\r\n */\r\n @Event({ eventName: 'pasteregion' })\r\n pasteRegion: EventEmitter<string[][]>;\r\n\r\n /**\r\n * Paste 4. Fired after paste applied to the grid\r\n * defaultPrevented - if true, paste will be canceled\r\n */\r\n @Event({ eventName: 'afterpasteapply' }) afterPasteApply: EventEmitter<{\r\n raw: string;\r\n parsed: string[][];\r\n event: ClipboardEvent;\r\n }>;\r\n\r\n /**\r\n * Cut 1. Fired before cut triggered\r\n * defaultPrevented - if true, cut will be canceled\r\n */\r\n @Event({ eventName: 'beforecut' }) beforeCut: EventEmitter<{\r\n event: ClipboardEvent;\r\n }>;\r\n\r\n /**\r\n * Cut 2. Clears region when cut is done\r\n */\r\n @Event({ eventName: 'clearregion' }) clearRegion: EventEmitter<DataTransfer>;\r\n\r\n /**\r\n * Copy 1. Fired before copy triggered\r\n * defaultPrevented - if true, copy will be canceled\r\n */\r\n @Event({ eventName: 'beforecopy' }) beforeCopy: EventEmitter<{\r\n event: ClipboardEvent;\r\n }>;\r\n\r\n /**\r\n * Copy Method 1. Fired before copy applied to the clipboard from outside.\r\n * defaultPrevented - if true, copy will be canceled\r\n */\r\n @Event({ eventName: 'beforecopyapply' }) beforeCopyApply: EventEmitter<{\r\n event: DataTransfer;\r\n data?: string[][];\r\n }>;\r\n\r\n /**\r\n * Copy 2. Fired when region copied\r\n * defaultPrevented - if true, copy will be canceled\r\n */\r\n @Event({ eventName: 'copyregion' })\r\n copyRegion: EventEmitter<DataTransfer>;\r\n\r\n @Listen('paste', { target: 'document' }) onPaste(e: ClipboardEvent) {\r\n // if readonly do nothing\r\n if (this.readonly) {\r\n return;\r\n }\r\n const clipboardData = this.getData(e);\r\n const isHTML = (clipboardData?.types.indexOf('text/html') || -1) > -1;\r\n const data =\r\n (isHTML\r\n ? clipboardData?.getData('text/html')\r\n : clipboardData?.getData('text')) || '';\r\n const dataText = clipboardData?.getData('text') || '';\r\n\r\n const beforePaste = this.beforePaste.emit({\r\n raw: data,\r\n dataText,\r\n isHTML,\r\n event: e,\r\n });\r\n\r\n if (beforePaste.defaultPrevented) {\r\n return;\r\n }\r\n\r\n let parsedData: string[][];\r\n // if html, then search for table if no table fallback to regular text parsing\r\n if (beforePaste.detail.isHTML) {\r\n const table = this.htmlParse(beforePaste.detail.raw);\r\n // fallback to text if not possible to parse as html\r\n parsedData = table || this.textParse(dataText || '');\r\n } else {\r\n parsedData = this.textParse(beforePaste.detail.raw);\r\n }\r\n const beforePasteApply = this.beforePasteApply.emit({\r\n raw: data,\r\n parsed: parsedData,\r\n event: e,\r\n });\r\n if (beforePasteApply.defaultPrevented) {\r\n return;\r\n }\r\n this.pasteRegion.emit(beforePasteApply.detail.parsed);\r\n // post paste action\r\n const afterPasteApply = this.afterPasteApply.emit({\r\n raw: data,\r\n parsed: parsedData,\r\n event: e,\r\n });\r\n // keep default behavior if needed\r\n if (afterPasteApply.defaultPrevented) {\r\n return;\r\n }\r\n e.preventDefault();\r\n }\r\n\r\n /**\r\n * Listen to copy event and emit copy region event\r\n */\r\n @Listen('copy', { target: 'document' }) copyStarted(e: ClipboardEvent) {\r\n const beforeCopy = this.beforeCopy.emit({\r\n event: e,\r\n });\r\n if (beforeCopy.defaultPrevented) {\r\n return;\r\n }\r\n const data = this.getData(beforeCopy.detail.event);\r\n this.copyRegion.emit(data || undefined);\r\n e.preventDefault();\r\n }\r\n\r\n /**\r\n * Listen to copy event and emit copy region event\r\n */\r\n @Listen('cut', { target: 'document' }) cutStarted(e: ClipboardEvent) {\r\n const beforeCut = this.beforeCut.emit({\r\n event: e,\r\n });\r\n if (beforeCut.defaultPrevented) {\r\n return;\r\n }\r\n const data = this.getData(beforeCut.detail.event);\r\n this.copyStarted(e);\r\n\r\n // if readonly do nothing\r\n if (this.readonly) {\r\n return;\r\n }\r\n\r\n this.clearRegion.emit(data || undefined);\r\n e.preventDefault();\r\n }\r\n\r\n @Method() async doCopy(e: DataTransfer, data?: DataFormat[][]) {\r\n const beforeCopyApply = this.beforeCopyApply.emit({\r\n event: e,\r\n data,\r\n });\r\n if (beforeCopyApply.defaultPrevented) {\r\n return;\r\n }\r\n const parsed = data ? this.parserCopy(data) : '';\r\n await navigator.clipboard.writeText(parsed);\r\n // e.setData('text/plain', parsed);\r\n }\r\n\r\n parserCopy(data: DataFormat[][]) {\r\n return data.map(rgRow => rgRow.join('\\t')).join('\\n');\r\n }\r\n\r\n private textParse(data: string) {\r\n const result: string[][] = [];\r\n const rows = data.split(/\\r\\n|\\n|\\r/);\r\n for (let y in rows) {\r\n result.push(rows[y].split('\\t'));\r\n }\r\n return result;\r\n }\r\n\r\n private htmlParse(data: string) {\r\n const result: string[][] = [];\r\n const fragment = document.createRange().createContextualFragment(data);\r\n const table = fragment.querySelector('table');\r\n if (!table) {\r\n return null;\r\n }\r\n for (const rgRow of Array.from(table.rows)) {\r\n result.push(Array.from(rgRow.cells).map(cell => cell.innerText));\r\n }\r\n return result;\r\n }\r\n\r\n private getData(e: ClipboardEvent) {\r\n return (\r\n e.clipboardData ||\r\n (window as unknown as { clipboardData: DataTransfer | null })\r\n ?.clipboardData\r\n );\r\n }\r\n}\r\n","revogr-edit {\r\n display: block;\r\n position: absolute;\r\n background-color: #fff;\r\n\r\n input {\r\n height: 100%;\r\n width: 100%;\r\n box-sizing: border-box;\r\n }\r\n\r\n revo-dropdown {\r\n height: 100%;\r\n\r\n &.shrink {\r\n fieldset legend > span {\r\n display: none;\r\n }\r\n }\r\n }\r\n}\r\n","import {\r\n Component,\r\n Event,\r\n EventEmitter,\r\n Prop,\r\n h,\r\n Element,\r\n Host,\r\n Method,\r\n} from '@stencil/core';\r\nimport { EDIT_INPUT_WR } from '../../utils/consts';\r\nimport { TextEditor } from './text-editor';\r\nimport { ColumnDataSchemaModel } from '@type';\r\nimport {\r\n EditCell,\r\n EditorCtr,\r\n SaveDataDetails,\r\n EditorBase,\r\n} from '@type';\r\n\r\nimport { isEditorCtrConstructible } from './edit.utils';\r\n\r\n/**\r\n * Represents a cell editor in a grid.\r\n * It manages the editing of cells by handling events, saving data, rendering the editor UI,\r\n * and managing the lifecycle of the editor instance.\r\n */\r\n@Component({\r\n tag: 'revogr-edit',\r\n styleUrl: 'revogr-edit-style.scss',\r\n})\r\nexport class RevoEdit {\r\n /**\r\n * Cell to edit data.\r\n */\r\n @Prop() editCell: EditCell;\r\n\r\n /**\r\n * Column data for editor.\r\n */\r\n @Prop() column: ColumnDataSchemaModel | null;\r\n /**\r\n * Custom editors register\r\n */\r\n @Prop() editor: EditorCtr | null;\r\n\r\n /**\r\n * Save on editor close. Defines if data should be saved on editor close.\r\n */\r\n @Prop() saveOnClose = false;\r\n /**\r\n * Additional data to pass to renderer\r\n */\r\n @Prop() additionalData: any;\r\n\r\n /**\r\n * Cell edit event initiator, first in the cellEdit event chain\r\n */\r\n @Event({ eventName: 'celleditinit' }) cellEdit: EventEmitter<SaveDataDetails>;\r\n\r\n /**\r\n * Close editor event\r\n * pass true if requires focus next\r\n */\r\n @Event({ eventName: 'closeedit' }) closeEdit: EventEmitter<\r\n boolean | undefined\r\n >;\r\n\r\n /** Edit session editor */\r\n @Element() element: HTMLElement;\r\n private currentEditor: EditorBase | null = null;\r\n private preventSaveOnClose = false;\r\n\r\n /**\r\n * Cancel pending changes flag. Editor will be closed without autosave.\r\n */\r\n @Method() async cancelChanges() {\r\n this.preventSaveOnClose = true;\r\n }\r\n\r\n /**\r\n * Before editor got disconnected.\r\n * Can be triggered multiple times before actual disconnect.\r\n */\r\n @Method() async beforeDisconnect() {\r\n this.currentEditor?.beforeDisconnect?.();\r\n }\r\n\r\n onAutoSave() {\r\n this.preventSaveOnClose = true;\r\n const val = this.currentEditor?.getValue?.();\r\n // For Editor plugin internal usage.\r\n // When you want to prevent save and use custom save of your own.\r\n if (this.currentEditor?.beforeAutoSave) {\r\n const canSave = this.currentEditor.beforeAutoSave(val);\r\n if (canSave === false) {\r\n return;\r\n }\r\n }\r\n this.onSave(val, true);\r\n }\r\n\r\n /**\r\n * Callback triggered when cell editor saved.\r\n * Closes editor when called.\r\n * @param preventFocus - if true, editor will not be closed & next cell will not be focused.\r\n */\r\n onSave(val?: any, preventFocus?: boolean) {\r\n this.preventSaveOnClose = true;\r\n if (this.editCell) {\r\n this.cellEdit.emit({\r\n rgCol: this.editCell.x,\r\n rgRow: this.editCell.y,\r\n type: this.editCell.type,\r\n prop: this.editCell.prop,\r\n val,\r\n preventFocus,\r\n });\r\n }\r\n }\r\n\r\n componentWillRender() {\r\n // Active editor present and not yet closed.\r\n if (this.currentEditor || !this.column) {\r\n return;\r\n }\r\n this.preventSaveOnClose = false;\r\n\r\n // Custom editor usage.\r\n // Start with TextEditor (editors/text.tsx) for Custom editor.\r\n // It can be class or function\r\n if (this.editor) {\r\n // if editor is constructible\r\n if (isEditorCtrConstructible(this.editor)) {\r\n this.currentEditor = new this.editor(\r\n this.column,\r\n // save callback\r\n (e, preventFocus) => {\r\n this.onSave(e, preventFocus);\r\n },\r\n // cancel callback\r\n focusNext => {\r\n this.preventSaveOnClose = true;\r\n this.closeEdit.emit(focusNext);\r\n },\r\n );\r\n // if editor is function\r\n } else {\r\n this.currentEditor = this.editor(\r\n this.column,\r\n // save callback\r\n (e, preventFocus) => {\r\n this.onSave(e, preventFocus);\r\n },\r\n // cancel callback\r\n focusNext => {\r\n this.preventSaveOnClose = true;\r\n this.closeEdit.emit(focusNext);\r\n },\r\n );\r\n }\r\n return;\r\n }\r\n // Default text editor usage\r\n this.currentEditor = new TextEditor(this.column, (e, preventFocus) =>\r\n this.onSave(e, preventFocus),\r\n );\r\n }\r\n\r\n componentDidRender() {\r\n if (!this.currentEditor) {\r\n return;\r\n }\r\n this.currentEditor.element = this.element.firstElementChild;\r\n this.currentEditor.componentDidRender?.();\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this.saveOnClose) {\r\n // Can not be cancelled by `preventSaveOnClose` prop.\r\n // Editor requires `getValue` to be able to save.\r\n if (!this.preventSaveOnClose) {\r\n this.onAutoSave();\r\n }\r\n }\r\n\r\n this.preventSaveOnClose = false;\r\n if (!this.currentEditor) {\r\n return;\r\n }\r\n\r\n this.currentEditor.disconnectedCallback?.();\r\n this.currentEditor.element = null;\r\n this.currentEditor = null;\r\n }\r\n\r\n render() {\r\n if (this.currentEditor) {\r\n this.currentEditor.editCell = this.editCell;\r\n return (\r\n <Host class={EDIT_INPUT_WR}>\r\n {this.currentEditor.render(h, this.additionalData)}\r\n </Host>\r\n );\r\n }\r\n return '';\r\n }\r\n}\r\n","import { getItemByPosition } from '@store';\r\nimport { DimensionSettingsState, PositionItem, Cell } from '@type';\r\n\r\ntype EventData = { el: HTMLElement; rows: DimensionSettingsState; cols: DimensionSettingsState };\r\ninterface Config {\r\n positionChanged(from: number, to: number): void;\r\n}\r\n\r\nexport default class RowOrderService {\r\n private currentCell: Cell | null = null;\r\n private previousRow: number | null = null;\r\n\r\n constructor(private config: Config) {}\r\n\r\n /** Drag finished, calculate and apply changes */\r\n endOrder(e: MouseEvent, data: EventData) {\r\n if (this.currentCell === null) {\r\n return;\r\n }\r\n const newRow = this.getCell(e, data);\r\n\r\n // if position changed\r\n if (newRow.y !== this.currentCell.y) {\r\n // rgRow dragged out table\r\n if (newRow.y < 0) {\r\n newRow.y = 0;\r\n }\r\n // rgRow dragged to the top\r\n else if (newRow.y < this.currentCell.y) {\r\n newRow.y++;\r\n }\r\n this.config.positionChanged(this.currentCell.y, newRow.y);\r\n }\r\n this.clear();\r\n }\r\n\r\n /** Drag started, reserve initial cell for farther use */\r\n startOrder(e: MouseEvent, data: EventData): Cell {\r\n this.currentCell = this.getCell(e, data);\r\n return this.currentCell;\r\n }\r\n\r\n move(y: number, data: EventData): PositionItem | null {\r\n const rgRow = this.getRow(y, data);\r\n // if rgRow same as previous or below range (-1 = 0) do nothing\r\n if (this.previousRow === rgRow.itemIndex || rgRow.itemIndex < -1) {\r\n return null;\r\n }\r\n this.previousRow = rgRow.itemIndex;\r\n return rgRow;\r\n }\r\n\r\n /** Drag stopped, probably cursor outside of document area */\r\n clear() {\r\n this.currentCell = null;\r\n this.previousRow = null;\r\n }\r\n\r\n /** Calculate cell based on x, y position */\r\n getRow(y: number, { el, rows }: EventData): PositionItem {\r\n const { top } = el.getBoundingClientRect();\r\n const topRelative = y - top;\r\n const rgRow = getItemByPosition(rows, topRelative);\r\n const absolutePosition = {\r\n itemIndex: rgRow.itemIndex,\r\n start: rgRow.start + top,\r\n end: rgRow.end + top,\r\n };\r\n return absolutePosition;\r\n }\r\n\r\n /** Calculate cell based on x, y position */\r\n getCell({ x, y }: Cell, { el, rows, cols }: EventData): Cell {\r\n const { top, left } = el.getBoundingClientRect();\r\n const topRelative = y - top;\r\n const leftRelative = x - left;\r\n const rgRow = getItemByPosition(rows, topRelative);\r\n const rgCol = getItemByPosition(cols, leftRelative);\r\n return { x: rgCol.itemIndex, y: rgRow.itemIndex };\r\n }\r\n}\r\n","import { Component, Method, Event, EventEmitter, Prop } from '@stencil/core';\r\nimport debounce from 'lodash/debounce';\r\n\r\nimport { type DSourceState, getSourceItem } from '@store';\r\nimport { DRAGG_TEXT } from '../../utils/consts';\r\nimport RowOrderService from './order-row.service';\r\nimport type {\r\n DimensionRows,\r\n DataType,\r\n DimensionSettingsState,\r\n DragStartEvent,\r\n PositionItem,\r\n Cell,\r\n RowDragStartDetails,\r\n} from '@type';\r\nimport type { Observable } from '../../utils';\r\n\r\n/**\r\n * Component for handling row order editor.\r\n */\r\n@Component({ tag: 'revogr-order-editor' })\r\nexport class OrderEditor {\r\n // #region Properties\r\n /** Parent element */\r\n @Prop() parent: HTMLElement;\r\n /** Dimension settings Y */\r\n @Prop() dimensionRow: Observable<DimensionSettingsState>;\r\n /** Dimension settings X */\r\n @Prop() dimensionCol: Observable<DimensionSettingsState>;\r\n\r\n /** Static stores, not expected to change during component lifetime */\r\n @Prop() dataStore: Observable<DSourceState<DataType, DimensionRows>>;\r\n\r\n @Prop() rowType: DimensionRows;\r\n // #endregion\r\n\r\n // #region Events\r\n /** Row drag started */\r\n @Event({ eventName: 'rowdragstartinit', cancelable: true })\r\n rowDragStart: EventEmitter<RowDragStartDetails>;\r\n\r\n /** Row drag ended started */\r\n @Event({ eventName: 'rowdragendinit' })\r\n rowDragEnd: EventEmitter<{ rowType: DimensionRows }>;\r\n\r\n /** Row move started */\r\n @Event({ eventName: 'rowdragmoveinit', cancelable: true })\r\n rowDrag: EventEmitter<PositionItem & { rowType: DimensionRows }>;\r\n\r\n /** Row mouse move started */\r\n @Event({ eventName: 'rowdragmousemove', cancelable: true })\r\n rowMouseMove: EventEmitter<Cell & { rowType: DimensionRows }>;\r\n\r\n /** Row dragged, new range ready to be applied */\r\n @Event({ eventName: 'rowdropinit', cancelable: true })\r\n rowDropped: EventEmitter<{\r\n from: number;\r\n to: number;\r\n rowType: DimensionRows;\r\n }>;\r\n\r\n /** Row drag ended finished. Time to apply data */\r\n @Event({ eventName: 'roworderchange' })\r\n rowOrderChange: EventEmitter<{\r\n from: number;\r\n to: number;\r\n rowType: DimensionRows;\r\n }>;\r\n\r\n // #endregion\r\n\r\n // #region Private\r\n private rowOrderService: RowOrderService;\r\n private events: {\r\n name: keyof DocumentEventMap;\r\n listener: (e: MouseEvent) => void;\r\n }[] = [];\r\n private rowMoveFunc = debounce((y: number) => {\r\n const rgRow = this.rowOrderService.move(y, this.getData());\r\n if (rgRow !== null) {\r\n this.rowDrag.emit({\r\n ...rgRow,\r\n rowType: this.rowType,\r\n });\r\n }\r\n }, 5);\r\n // #endregion\r\n\r\n // #region Methods\r\n @Method() async dragStart(e: DragStartEvent) {\r\n e.originalEvent.preventDefault();\r\n\r\n // extra check if previous ended\r\n if (this.events.length) {\r\n this.clearOrder();\r\n }\r\n\r\n const data = this.getData();\r\n const cell = this.rowOrderService.startOrder(e.originalEvent, data);\r\n const pos = this.rowOrderService.getRow(e.originalEvent.y, data);\r\n const dragStartEvent = this.rowDragStart.emit({\r\n cell,\r\n text: DRAGG_TEXT,\r\n pos,\r\n event: e.originalEvent,\r\n rowType: this.rowType,\r\n model: getSourceItem(this.dataStore, pos.itemIndex),\r\n });\r\n if (dragStartEvent.defaultPrevented) {\r\n return;\r\n }\r\n\r\n const moveMove = (e: MouseEvent) => this.move(e);\r\n const mouseUp = (e: MouseEvent) => this.endOrder(e);\r\n const mouseLeave = () => this.clearOrder();\r\n\r\n this.events.push(\r\n {\r\n name: 'mousemove',\r\n listener: moveMove,\r\n },\r\n {\r\n name: 'mouseup',\r\n listener: mouseUp,\r\n },\r\n {\r\n name: 'mouseleave',\r\n listener: mouseLeave,\r\n },\r\n );\r\n document.addEventListener('mousemove', moveMove);\r\n // Action finished inside of the document\r\n document.addEventListener('mouseup', mouseUp);\r\n document.addEventListener('mouseleave', mouseLeave);\r\n }\r\n\r\n @Method() async endOrder(e: MouseEvent) {\r\n this.rowOrderService.endOrder(e, this.getData());\r\n this.clearOrder();\r\n }\r\n\r\n @Method() async clearOrder() {\r\n this.rowOrderService.clear();\r\n this.events.forEach(v => document.removeEventListener(v.name, v.listener));\r\n this.events.length = 0;\r\n this.rowDragEnd.emit({ rowType: this.rowType });\r\n }\r\n // #endregion\r\n\r\n move({ x, y }: { x: number; y: number }) {\r\n this.rowMouseMove.emit({ x, y, rowType: this.rowType });\r\n this.rowMoveFunc(y);\r\n }\r\n\r\n connectedCallback() {\r\n this.rowOrderService = new RowOrderService({\r\n positionChanged: (from: number, to: number) => {\r\n const dropEvent = this.rowDropped.emit({\r\n from,\r\n to,\r\n rowType: this.rowType,\r\n });\r\n if (dropEvent.defaultPrevented) {\r\n return;\r\n }\r\n this.rowOrderChange.emit(dropEvent.detail);\r\n },\r\n });\r\n }\r\n\r\n private getData() {\r\n return {\r\n el: this.parent,\r\n rows: this.dimensionRow.state,\r\n cols: this.dimensionCol.state,\r\n };\r\n }\r\n}\r\n"],"version":3}