@revolist/revogrid 4.9.2 → 4.9.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (253) hide show
  1. package/dist/cjs/{base.plugin-d48d867d.js → base.plugin-bf5f43a0.js} +2 -2
  2. package/dist/cjs/{base.plugin-d48d867d.js.map → base.plugin-bf5f43a0.js.map} +1 -1
  3. package/dist/cjs/{column.service-6f691f50.js → column.service-01f4a6c7.js} +25 -6
  4. package/dist/cjs/column.service-01f4a6c7.js.map +1 -0
  5. package/dist/cjs/{dimension.helpers-e9d22516.js → dimension.helpers-a6788214.js} +10 -5
  6. package/dist/cjs/dimension.helpers-a6788214.js.map +1 -0
  7. package/dist/cjs/{header-cell-renderer-81a22b00.js → header-cell-renderer-3bc70679.js} +10 -8
  8. package/dist/cjs/header-cell-renderer-3bc70679.js.map +1 -0
  9. package/dist/cjs/index.cjs.js +4 -4
  10. package/dist/cjs/revo-grid.cjs.entry.js +81 -93
  11. package/dist/cjs/revo-grid.cjs.entry.js.map +1 -1
  12. package/dist/cjs/revogr-attribution_6.cjs.entry.js +61 -41
  13. package/dist/cjs/revogr-attribution_6.cjs.entry.js.map +1 -1
  14. package/dist/cjs/revogr-clipboard_3.cjs.entry.js +9 -7
  15. package/dist/cjs/revogr-clipboard_3.cjs.entry.js.map +1 -1
  16. package/dist/cjs/revogr-data_4.cjs.entry.js +45 -36
  17. package/dist/cjs/revogr-data_4.cjs.entry.js.map +1 -1
  18. package/dist/cjs/revogr-filter-panel.cjs.entry.js.map +1 -1
  19. package/dist/cjs/{selection.helpers-8fa19c04.js → selection.helpers-1a8c8d49.js} +32 -31
  20. package/dist/cjs/selection.helpers-1a8c8d49.js.map +1 -0
  21. package/dist/cjs/{throttle-bcc4740d.js → throttle-52be9e67.js} +4 -3
  22. package/dist/cjs/throttle-52be9e67.js.map +1 -0
  23. package/dist/cjs/{viewport.store-9cf01c71.js → viewport.store-35a3e7ee.js} +13 -9
  24. package/dist/cjs/viewport.store-35a3e7ee.js.map +1 -0
  25. package/dist/collection/components/clipboard/revogr-clipboard.js +5 -5
  26. package/dist/collection/components/clipboard/revogr-clipboard.js.map +1 -1
  27. package/dist/collection/components/data/cell-renderer.js +7 -4
  28. package/dist/collection/components/data/cell-renderer.js.map +1 -1
  29. package/dist/collection/components/data/column.service.js +1 -1
  30. package/dist/collection/components/data/column.service.js.map +1 -1
  31. package/dist/collection/components/data/revogr-data.js +1 -1
  32. package/dist/collection/components/data/revogr-data.js.map +1 -1
  33. package/dist/collection/components/editors/revogr-edit.js +6 -6
  34. package/dist/collection/components/editors/revogr-edit.js.map +1 -1
  35. package/dist/collection/components/editors/text-editor.js +3 -1
  36. package/dist/collection/components/editors/text-editor.js.map +1 -1
  37. package/dist/collection/components/header/header-renderer.js +2 -1
  38. package/dist/collection/components/header/header-renderer.js.map +1 -1
  39. package/dist/collection/components/header/resizable.directive.js +7 -5
  40. package/dist/collection/components/header/resizable.directive.js.map +1 -1
  41. package/dist/collection/components/header/resizable.element.js +1 -1
  42. package/dist/collection/components/header/resizable.element.js.map +1 -1
  43. package/dist/collection/components/overlay/autofill.service.js +5 -4
  44. package/dist/collection/components/overlay/autofill.service.js.map +1 -1
  45. package/dist/collection/components/overlay/keyboard.service.js.map +1 -1
  46. package/dist/collection/components/overlay/revogr-overlay-selection.js +71 -37
  47. package/dist/collection/components/overlay/revogr-overlay-selection.js.map +1 -1
  48. package/dist/collection/components/overlay/selection.utils.js +4 -4
  49. package/dist/collection/components/overlay/selection.utils.js.map +1 -1
  50. package/dist/collection/components/revoGrid/grid.helpers.js +10 -8
  51. package/dist/collection/components/revoGrid/grid.helpers.js.map +1 -1
  52. package/dist/collection/components/revoGrid/revo-grid.js +42 -42
  53. package/dist/collection/components/revoGrid/revo-grid.js.map +1 -1
  54. package/dist/collection/components/revoGrid/viewport.helpers.js +19 -0
  55. package/dist/collection/components/revoGrid/viewport.helpers.js.map +1 -1
  56. package/dist/collection/components/revoGrid/viewport.scrolling.service.js +4 -3
  57. package/dist/collection/components/revoGrid/viewport.scrolling.service.js.map +1 -1
  58. package/dist/collection/components/revoGrid/viewport.service.js +27 -37
  59. package/dist/collection/components/revoGrid/viewport.service.js.map +1 -1
  60. package/dist/collection/components/rowHeaders/revogr-row-headers.js +2 -2
  61. package/dist/collection/components/rowHeaders/revogr-row-headers.js.map +1 -1
  62. package/dist/collection/components/scroll/revogr-viewport-scroll.js +34 -29
  63. package/dist/collection/components/scroll/revogr-viewport-scroll.js.map +1 -1
  64. package/dist/collection/components/scrollable/autohide-scroll.plugin.js +1 -1
  65. package/dist/collection/components/scrollable/autohide-scroll.plugin.js.map +1 -1
  66. package/dist/collection/components/scrollable/revogr-scroll-virtual.js +3 -3
  67. package/dist/collection/components/selectionFocus/revogr-focus.js +1 -1
  68. package/dist/collection/components/selectionFocus/revogr-focus.js.map +1 -1
  69. package/dist/collection/components/selectionTempRange/revogr-temp-range.js.map +1 -1
  70. package/dist/collection/components/vnode/vnode-converter.js +6 -6
  71. package/dist/collection/components/vnode/vnode-converter.js.map +1 -1
  72. package/dist/collection/components/vnode/vnode.utils.js.map +1 -1
  73. package/dist/collection/global/global.js.map +1 -1
  74. package/dist/collection/plugins/export/export.plugin.js +2 -2
  75. package/dist/collection/plugins/export/export.plugin.js.map +1 -1
  76. package/dist/collection/plugins/filter/filter.panel.js +4 -4
  77. package/dist/collection/plugins/groupingColumn/columnGroupsRenderer.js +1 -1
  78. package/dist/collection/plugins/groupingColumn/columnGroupsRenderer.js.map +1 -1
  79. package/dist/collection/plugins/groupingRow/grouping.row.plugin.js +2 -2
  80. package/dist/collection/plugins/groupingRow/grouping.row.plugin.js.map +1 -1
  81. package/dist/collection/plugins/groupingRow/grouping.service.js +1 -1
  82. package/dist/collection/plugins/groupingRow/grouping.service.js.map +1 -1
  83. package/dist/collection/plugins/moveColumn/column.drag.plugin.js +1 -1
  84. package/dist/collection/plugins/moveColumn/column.drag.plugin.js.map +1 -1
  85. package/dist/collection/plugins/sorting/sorting.plugin.js +9 -12
  86. package/dist/collection/plugins/sorting/sorting.plugin.js.map +1 -1
  87. package/dist/collection/services/cell.helpers.js +3 -2
  88. package/dist/collection/services/cell.helpers.js.map +1 -1
  89. package/dist/collection/services/column.data.provider.js.map +1 -1
  90. package/dist/collection/services/data.provider.js.map +1 -1
  91. package/dist/collection/services/dimension.provider.js +2 -1
  92. package/dist/collection/services/dimension.provider.js.map +1 -1
  93. package/dist/collection/services/local.scroll.service.js +3 -2
  94. package/dist/collection/services/local.scroll.service.js.map +1 -1
  95. package/dist/collection/services/selection.store.connector.js +20 -16
  96. package/dist/collection/services/selection.store.connector.js.map +1 -1
  97. package/dist/collection/store/selection/selection.helpers.js +8 -12
  98. package/dist/collection/store/selection/selection.helpers.js.map +1 -1
  99. package/dist/collection/store/selection/selection.store.js +2 -1
  100. package/dist/collection/store/selection/selection.store.js.map +1 -1
  101. package/dist/collection/store/vp/viewport.helpers.js +10 -6
  102. package/dist/collection/store/vp/viewport.helpers.js.map +1 -1
  103. package/dist/collection/store/vp/viewport.store.js +1 -1
  104. package/dist/collection/store/vp/viewport.store.js.map +1 -1
  105. package/dist/collection/themeManager/theme.service.js +1 -1
  106. package/dist/collection/themeManager/theme.service.js.map +1 -1
  107. package/dist/collection/types/interfaces.js.map +1 -1
  108. package/dist/collection/types/selection.js.map +1 -1
  109. package/dist/collection/types/viewport.interfaces.js.map +1 -1
  110. package/dist/collection/utils/closest.polifill.js.map +1 -1
  111. package/dist/collection/utils/store.utils.js +9 -4
  112. package/dist/collection/utils/store.utils.js.map +1 -1
  113. package/dist/esm/{base.plugin-78393655.js → base.plugin-5e7a3c51.js} +2 -2
  114. package/dist/esm/{base.plugin-78393655.js.map → base.plugin-5e7a3c51.js.map} +1 -1
  115. package/dist/esm/{column.service-0e41057a.js → column.service-5d14e7e9.js} +25 -6
  116. package/dist/esm/column.service-5d14e7e9.js.map +1 -0
  117. package/dist/esm/{dimension.helpers-91398565.js → dimension.helpers-56298828.js} +10 -5
  118. package/dist/esm/dimension.helpers-56298828.js.map +1 -0
  119. package/dist/esm/{header-cell-renderer-6d8ac25d.js → header-cell-renderer-fc999784.js} +10 -8
  120. package/dist/esm/header-cell-renderer-fc999784.js.map +1 -0
  121. package/dist/esm/index.js +4 -4
  122. package/dist/esm/revo-grid.entry.js +81 -93
  123. package/dist/esm/revo-grid.entry.js.map +1 -1
  124. package/dist/esm/revogr-attribution_6.entry.js +61 -41
  125. package/dist/esm/revogr-attribution_6.entry.js.map +1 -1
  126. package/dist/esm/revogr-clipboard_3.entry.js +9 -7
  127. package/dist/esm/revogr-clipboard_3.entry.js.map +1 -1
  128. package/dist/esm/revogr-data_4.entry.js +45 -36
  129. package/dist/esm/revogr-data_4.entry.js.map +1 -1
  130. package/dist/esm/revogr-filter-panel.entry.js.map +1 -1
  131. package/dist/esm/{selection.helpers-50e9f09d.js → selection.helpers-accaad4a.js} +32 -31
  132. package/dist/esm/selection.helpers-accaad4a.js.map +1 -0
  133. package/dist/esm/{throttle-1b1dd9d2.js → throttle-7283692c.js} +4 -3
  134. package/dist/esm/throttle-7283692c.js.map +1 -0
  135. package/dist/esm/{viewport.store-bfd0b036.js → viewport.store-d8e03528.js} +13 -9
  136. package/dist/esm/viewport.store-d8e03528.js.map +1 -0
  137. package/dist/revo-grid/{base.plugin-78393655.js → base.plugin-5e7a3c51.js} +2 -2
  138. package/dist/revo-grid/column.service-5d14e7e9.js +5 -0
  139. package/dist/revo-grid/column.service-5d14e7e9.js.map +1 -0
  140. package/dist/revo-grid/{dimension.helpers-91398565.js → dimension.helpers-56298828.js} +2 -2
  141. package/dist/revo-grid/{dimension.helpers-91398565.js.map → dimension.helpers-56298828.js.map} +1 -1
  142. package/dist/revo-grid/header-cell-renderer-fc999784.js +5 -0
  143. package/dist/revo-grid/header-cell-renderer-fc999784.js.map +1 -0
  144. package/dist/revo-grid/index.esm.js +1 -1
  145. package/dist/revo-grid/revo-grid.entry.js +1 -1
  146. package/dist/revo-grid/revo-grid.entry.js.map +1 -1
  147. package/dist/revo-grid/revogr-attribution_6.entry.js +1 -1
  148. package/dist/revo-grid/revogr-attribution_6.entry.js.map +1 -1
  149. package/dist/revo-grid/revogr-clipboard_3.entry.js +1 -1
  150. package/dist/revo-grid/revogr-clipboard_3.entry.js.map +1 -1
  151. package/dist/revo-grid/revogr-data_4.entry.js +1 -1
  152. package/dist/revo-grid/revogr-data_4.entry.js.map +1 -1
  153. package/dist/revo-grid/revogr-filter-panel.entry.js.map +1 -1
  154. package/dist/revo-grid/selection.helpers-accaad4a.js +5 -0
  155. package/dist/revo-grid/selection.helpers-accaad4a.js.map +1 -0
  156. package/dist/revo-grid/{throttle-1b1dd9d2.js → throttle-7283692c.js} +2 -2
  157. package/dist/revo-grid/throttle-7283692c.js.map +1 -0
  158. package/dist/revo-grid/viewport.store-d8e03528.js +5 -0
  159. package/dist/revo-grid/viewport.store-d8e03528.js.map +1 -0
  160. package/dist/types/components/data/column.service.d.ts +1 -1
  161. package/dist/types/components/data/row-highlight.plugin.d.ts +1 -1
  162. package/dist/types/components/editors/revogr-edit.d.ts +1 -1
  163. package/dist/types/components/editors/text-editor.d.ts +3 -3
  164. package/dist/types/components/header/header-renderer.d.ts +2 -2
  165. package/dist/types/components/header/resizable.directive.d.ts +2 -2
  166. package/dist/types/components/overlay/autofill.service.d.ts +6 -6
  167. package/dist/types/components/overlay/keyboard.service.d.ts +4 -4
  168. package/dist/types/components/overlay/revogr-overlay-selection.d.ts +15 -11
  169. package/dist/types/components/overlay/selection.utils.d.ts +5 -4
  170. package/dist/types/components/revoGrid/revo-grid.d.ts +7 -6
  171. package/dist/types/components/revoGrid/viewport.helpers.d.ts +18 -3
  172. package/dist/types/components/revoGrid/viewport.scrolling.service.d.ts +1 -1
  173. package/dist/types/components/revoGrid/viewport.service.d.ts +2 -6
  174. package/dist/types/components/scroll/revogr-viewport-scroll.d.ts +6 -6
  175. package/dist/types/components/selectionTempRange/revogr-temp-range.d.ts +1 -1
  176. package/dist/types/components/vnode/vnode-converter.d.ts +1 -1
  177. package/dist/types/components/vnode/vnode.utils.d.ts +1 -1
  178. package/dist/types/components.d.ts +21 -18
  179. package/dist/types/plugins/column.auto-size.plugin.d.ts +2 -2
  180. package/dist/types/plugins/export/export.plugin.d.ts +3 -3
  181. package/dist/types/plugins/filter/filter.button.d.ts +1 -1
  182. package/dist/types/plugins/filter/filter.panel.d.ts +1 -1
  183. package/dist/types/plugins/groupingRow/grouping.row.plugin.d.ts +1 -1
  184. package/dist/types/plugins/groupingRow/grouping.service.d.ts +3 -3
  185. package/dist/types/plugins/sorting/sorting.plugin.d.ts +8 -8
  186. package/dist/types/services/column.data.provider.d.ts +1 -1
  187. package/dist/types/services/data.provider.d.ts +1 -1
  188. package/dist/types/services/dimension.provider.d.ts +3 -2
  189. package/dist/types/services/selection.store.connector.d.ts +9 -9
  190. package/dist/types/store/selection/selection.helpers.d.ts +1 -1
  191. package/dist/types/store/selection/selection.store.d.ts +4 -4
  192. package/dist/types/store/vp/viewport.helpers.d.ts +2 -2
  193. package/dist/types/themeManager/theme.service.d.ts +1 -1
  194. package/dist/types/types/interfaces.d.ts +4 -1
  195. package/dist/types/types/viewport.interfaces.d.ts +2 -2
  196. package/dist/types/utils/store.utils.d.ts +7 -4
  197. package/hydrate/index.js +261 -210
  198. package/hydrate/index.mjs +261 -210
  199. package/package.json +1 -1
  200. package/standalone/column.service.js +32 -31
  201. package/standalone/column.service.js.map +1 -1
  202. package/standalone/data.store.js +9 -4
  203. package/standalone/data.store.js.map +1 -1
  204. package/standalone/index.js.map +1 -1
  205. package/standalone/local.scroll.timer.js +3 -2
  206. package/standalone/local.scroll.timer.js.map +1 -1
  207. package/standalone/revo-grid.js +76 -88
  208. package/standalone/revo-grid.js.map +1 -1
  209. package/standalone/revogr-clipboard2.js +3 -3
  210. package/standalone/revogr-clipboard2.js.map +1 -1
  211. package/standalone/revogr-data2.js +7 -4
  212. package/standalone/revogr-data2.js.map +1 -1
  213. package/standalone/revogr-edit2.js +5 -3
  214. package/standalone/revogr-edit2.js.map +1 -1
  215. package/standalone/revogr-filter-panel.js.map +1 -1
  216. package/standalone/revogr-focus2.js.map +1 -1
  217. package/standalone/revogr-header2.js +11 -8
  218. package/standalone/revogr-header2.js.map +1 -1
  219. package/standalone/revogr-overlay-selection2.js +50 -30
  220. package/standalone/revogr-overlay-selection2.js.map +1 -1
  221. package/standalone/revogr-row-headers2.js +12 -8
  222. package/standalone/revogr-row-headers2.js.map +1 -1
  223. package/standalone/revogr-scroll-virtual2.js +1 -1
  224. package/standalone/revogr-scroll-virtual2.js.map +1 -1
  225. package/standalone/revogr-temp-range2.js.map +1 -1
  226. package/standalone/revogr-viewport-scroll2.js +47 -23
  227. package/standalone/revogr-viewport-scroll2.js.map +1 -1
  228. package/standalone/selection.utils.js +4 -4
  229. package/standalone/selection.utils.js.map +1 -1
  230. package/standalone/vnode-converter.js +3 -3
  231. package/standalone/vnode-converter.js.map +1 -1
  232. package/dist/cjs/column.service-6f691f50.js.map +0 -1
  233. package/dist/cjs/dimension.helpers-e9d22516.js.map +0 -1
  234. package/dist/cjs/header-cell-renderer-81a22b00.js.map +0 -1
  235. package/dist/cjs/selection.helpers-8fa19c04.js.map +0 -1
  236. package/dist/cjs/throttle-bcc4740d.js.map +0 -1
  237. package/dist/cjs/viewport.store-9cf01c71.js.map +0 -1
  238. package/dist/esm/column.service-0e41057a.js.map +0 -1
  239. package/dist/esm/dimension.helpers-91398565.js.map +0 -1
  240. package/dist/esm/header-cell-renderer-6d8ac25d.js.map +0 -1
  241. package/dist/esm/selection.helpers-50e9f09d.js.map +0 -1
  242. package/dist/esm/throttle-1b1dd9d2.js.map +0 -1
  243. package/dist/esm/viewport.store-bfd0b036.js.map +0 -1
  244. package/dist/revo-grid/column.service-0e41057a.js +0 -5
  245. package/dist/revo-grid/column.service-0e41057a.js.map +0 -1
  246. package/dist/revo-grid/header-cell-renderer-6d8ac25d.js +0 -5
  247. package/dist/revo-grid/header-cell-renderer-6d8ac25d.js.map +0 -1
  248. package/dist/revo-grid/selection.helpers-50e9f09d.js +0 -5
  249. package/dist/revo-grid/selection.helpers-50e9f09d.js.map +0 -1
  250. package/dist/revo-grid/throttle-1b1dd9d2.js.map +0 -1
  251. package/dist/revo-grid/viewport.store-bfd0b036.js +0 -5
  252. package/dist/revo-grid/viewport.store-bfd0b036.js.map +0 -1
  253. /package/dist/revo-grid/{base.plugin-78393655.js.map → base.plugin-5e7a3c51.js.map} +0 -0
@@ -7,15 +7,15 @@ Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
8
  const index = require('./index-10d10c55.js');
9
9
  const index$1 = require('./index-2410bbd9.js');
10
- const dimension_helpers = require('./dimension.helpers-e9d22516.js');
10
+ const dimension_helpers = require('./dimension.helpers-a6788214.js');
11
11
  require('./toNumber-838e6ff5.js');
12
12
  const events = require('./events-b28cc194.js');
13
- const column_service = require('./column.service-6f691f50.js');
13
+ const column_service = require('./column.service-01f4a6c7.js');
14
14
  const key_utils = require('./key.utils-1e48ab8f.js');
15
- const selection_helpers = require('./selection.helpers-8fa19c04.js');
15
+ const selection_helpers = require('./selection.helpers-1a8c8d49.js');
16
16
  const debounce = require('./debounce-e2b7c6fb.js');
17
- const viewport_store = require('./viewport.store-9cf01c71.js');
18
- const throttle = require('./throttle-bcc4740d.js');
17
+ const viewport_store = require('./viewport.store-35a3e7ee.js');
18
+ const throttle = require('./throttle-52be9e67.js');
19
19
 
20
20
  const Attribution = class {
21
21
  constructor(hostRef) {
@@ -84,18 +84,18 @@ function getCurrentCell({ x, y }, { el, rows, cols }) {
84
84
  return { x: rgCol.itemIndex, y: rgRow.itemIndex };
85
85
  }
86
86
  function getCoordinate(range, focus, changes, isMulti = false) {
87
- const updateCoordinate = (c) => {
87
+ const updateCoordinate = (c, pos = 0) => {
88
88
  const start = { x: range.x, y: range.y };
89
89
  const end = isMulti ? { x: range.x1, y: range.y1 } : start;
90
90
  const point = end[c] > focus[c] ? end : start;
91
- point[c] += changes[c];
91
+ point[c] += pos;
92
92
  return { start, end };
93
93
  };
94
94
  if (changes.x) {
95
- return updateCoordinate('x');
95
+ return updateCoordinate('x', changes['x']);
96
96
  }
97
97
  if (changes.y) {
98
- return updateCoordinate('y');
98
+ return updateCoordinate('y', changes['y']);
99
99
  }
100
100
  return null;
101
101
  }
@@ -475,8 +475,9 @@ class AutoFillService {
475
475
  this.sv.setTempRange(null);
476
476
  }
477
477
  else {
478
+ const area = selection_helpers.getRange(this.autoFillInitial, this.autoFillLast);
478
479
  this.sv.setTempRange({
479
- area: selection_helpers.getRange(this.autoFillInitial, this.autoFillLast),
480
+ area,
480
481
  type: this.autoFillType,
481
482
  });
482
483
  }
@@ -511,7 +512,7 @@ class AutoFillService {
511
512
  range,
512
513
  });
513
514
  // If data apply was not prevented, apply new range
514
- if (!stopApply) {
515
+ if (!stopApply && oldRange) {
515
516
  this.applyRangeWithData(newRange, oldRange);
516
517
  }
517
518
  else {
@@ -549,14 +550,14 @@ class AutoFillService {
549
550
  this.sv.setRange(range);
550
551
  }
551
552
  /** Apply range and copy data during range application */
552
- applyRangeWithData(newRange, oldRange) {
553
+ applyRangeWithData(newRange, rangeToCopy) {
553
554
  const rangeData = {
554
555
  type: this.sv.dataStore.get('type'),
555
556
  colType: this.sv.columnService.type,
556
557
  newData: {},
557
558
  mapping: {},
558
559
  newRange,
559
- oldRange,
560
+ oldRange: rangeToCopy,
560
561
  };
561
562
  const { mapping, changed } = this.sv.columnService.getRangeData(rangeData, this.sv.columnService.columns);
562
563
  rangeData.newData = changed;
@@ -620,7 +621,6 @@ const OverlaySelection = class {
620
621
  this.beforeCellSave = index.createEvent(this, "beforecellsave", 7);
621
622
  this.keyboardService = null;
622
623
  this.autoFillService = null;
623
- this.revogrEdit = null;
624
624
  this.unsubscribeSelectionStore = [];
625
625
  this.readonly = undefined;
626
626
  this.range = undefined;
@@ -640,19 +640,21 @@ const OverlaySelection = class {
640
640
  // #endregion
641
641
  // #region Listeners
642
642
  onMouseMove(e) {
643
+ var _a;
643
644
  if (this.selectionStore.get('focus')) {
644
- this.autoFillService.selectionMouseMove(e);
645
+ (_a = this.autoFillService) === null || _a === void 0 ? void 0 : _a.selectionMouseMove(e);
645
646
  }
646
647
  }
647
648
  /**
648
- * Action finished inside of the document.
649
+ * Action finished inside the document.
649
650
  * Pointer left document, clear any active operation.
650
651
  */
651
652
  onMouseUp() {
652
- // Clear auto fill selection
653
+ var _a;
654
+ // Clear autofill selection
653
655
  // when pointer left document,
654
656
  // clear any active operation.
655
- this.autoFillService.clearAutoFillSelection(this.selectionStore.get('focus'), this.selectionStore.get('range'));
657
+ (_a = this.autoFillService) === null || _a === void 0 ? void 0 : _a.clearAutoFillSelection(this.selectionStore.get('focus'), this.selectionStore.get('range'));
656
658
  }
657
659
  /**
658
660
  * Row drag started.
@@ -669,7 +671,7 @@ const OverlaySelection = class {
669
671
  */
670
672
  onKeyUp(e) {
671
673
  // Emit before key up event.
672
- this.beforeKeyUp.emit(e);
674
+ this.beforeKeyUp.emit(Object.assign({ original: e }, this.getData()));
673
675
  }
674
676
  /**
675
677
  * Get keyboard down from element.
@@ -678,7 +680,7 @@ const OverlaySelection = class {
678
680
  onKeyDown(e) {
679
681
  var _a;
680
682
  // Emit before key down event and check if default prevention is set.
681
- const proxy = this.beforeKeyDown.emit(e);
683
+ const proxy = this.beforeKeyDown.emit(Object.assign({ original: e }, this.getData()));
682
684
  if (e.defaultPrevented || proxy.defaultPrevented) {
683
685
  return;
684
686
  }
@@ -696,10 +698,10 @@ const OverlaySelection = class {
696
698
  // clear subscriptions
697
699
  this.unsubscribeSelectionStore.forEach(v => v());
698
700
  this.unsubscribeSelectionStore.length = 0;
699
- this.unsubscribeSelectionStore.push(s.onChange('nextFocus', (v) => this.doFocus(v, v)));
701
+ this.unsubscribeSelectionStore.push(s.onChange('nextFocus', (v) => v && this.doFocus(v, v)));
700
702
  this.keyboardService = new KeyboardService({
701
703
  selectionStore: s,
702
- range: r => this.triggerRangeEvent(r),
704
+ range: r => !!r && this.triggerRangeEvent(r),
703
705
  focus: (f, changes, focusNextViewport) => {
704
706
  if (focusNextViewport) {
705
707
  this.beforeNextViewportFocus.emit(f);
@@ -716,7 +718,8 @@ const OverlaySelection = class {
716
718
  this.doEdit(val);
717
719
  },
718
720
  cancel: async () => {
719
- await this.revogrEdit.cancelChanges();
721
+ var _a;
722
+ await ((_a = this.revogrEdit) === null || _a === void 0 ? void 0 : _a.cancelChanges());
720
723
  this.closeEdit();
721
724
  },
722
725
  clearCell: () => !this.readonly && this.clearCell(),
@@ -738,7 +741,7 @@ const OverlaySelection = class {
738
741
  selectionChanged: e => this.selectionChange.emit(e),
739
742
  rangeCopy: e => this.beforeRangeCopyApply.emit(e),
740
743
  rangeDataApply: e => this.rangeEditApply.emit(e),
741
- setRange: e => this.triggerRangeEvent(e),
744
+ setRange: e => !!e && this.triggerRangeEvent(e),
742
745
  getData: () => this.getData(),
743
746
  });
744
747
  }
@@ -800,6 +803,7 @@ const OverlaySelection = class {
800
803
  } }));
801
804
  }
802
805
  render() {
806
+ var _a;
803
807
  const nodes = [];
804
808
  const editCell = this.renderEditor();
805
809
  // Editor
@@ -819,14 +823,14 @@ const OverlaySelection = class {
819
823
  }
820
824
  // Autofill
821
825
  if (focus && !this.readonly && this.range) {
822
- nodes.push(this.autoFillService.renderAutofill(range, focus));
826
+ nodes.push((_a = this.autoFillService) === null || _a === void 0 ? void 0 : _a.renderAutofill(range, focus));
823
827
  }
824
828
  // Order
825
829
  if (this.canDrag) {
826
830
  nodes.push(index.h("revogr-order-editor", { ref: e => (this.orderEditor = e), dataStore: this.dataStore, dimensionRow: this.dimensionRow, dimensionCol: this.dimensionCol, parent: this.element, onRowdragstartinit: e => this.rowDragStart(e) }));
827
831
  }
828
832
  }
829
- return (index.h(index.Host, { key: '98f6ca4606540478588614eaf7ee69a5eaf48b99', class: { mobile: this.isMobileDevice }, onDblClick: (e) => this.onElementDblClick(e), onMouseDown: (e) => this.onElementMouseDown(e), onTouchStart: (e) => this.onElementMouseDown(e, true) }, nodes, index.h("slot", { key: '65d69b6562e14e1cf99c3780ac2ba3fa3e37e801', name: "data" })));
833
+ return (index.h(index.Host, { key: '1913cd032d2cede0a8d560e330358a178500dc21', class: { mobile: this.isMobileDevice }, onDblClick: (e) => this.onElementDblClick(e), onMouseDown: (e) => this.onElementMouseDown(e), onTouchStart: (e) => this.onElementMouseDown(e, true) }, nodes, index.h("slot", { key: '96cc5bc4e39d5d229f4d3c7ae98d092cc5ff9102', name: "data" })));
830
834
  }
831
835
  /**
832
836
  * Executes the focus operation on the specified range of cells.
@@ -881,6 +885,7 @@ const OverlaySelection = class {
881
885
  * Handle mouse down event on Host element
882
886
  */
883
887
  onElementMouseDown(e, touch = false) {
888
+ var _a;
884
889
  // Get the target element from the event object
885
890
  const targetElement = e.target;
886
891
  // Ignore focus if clicked input
@@ -897,7 +902,7 @@ const OverlaySelection = class {
897
902
  this.focus(focusCell, this.range && e.shiftKey);
898
903
  // Initiate autofill selection
899
904
  if (this.range) {
900
- this.autoFillService.selectionStart(targetElement, this.getData());
905
+ targetElement && ((_a = this.autoFillService) === null || _a === void 0 ? void 0 : _a.selectionStart(targetElement, this.getData()));
901
906
  // Prevent default behavior for mouse events,
902
907
  // but only if target element is not a mobile input
903
908
  if (!touch) {
@@ -917,18 +922,21 @@ const OverlaySelection = class {
917
922
  var _a;
918
923
  if (this.canEdit()) {
919
924
  const focus = this.selectionStore.get('focus');
925
+ if (!focus) {
926
+ return;
927
+ }
920
928
  const data = this.columnService.getSaveData(focus.y, focus.x);
921
929
  (_a = this.setEdit) === null || _a === void 0 ? void 0 : _a.emit(Object.assign(Object.assign({}, data), { val }));
922
930
  }
923
931
  }
924
932
  /**
925
933
  * Close editor event triggered
926
- * @param details - if requires focus next
934
+ * @param details - if it requires focus next
927
935
  */
928
- closeEdit(e) {
936
+ async closeEdit(e) {
929
937
  this.cancelEdit.emit();
930
938
  if (e === null || e === void 0 ? void 0 : e.detail) {
931
- this.focusNext();
939
+ await this.focusNext();
932
940
  }
933
941
  }
934
942
  /**
@@ -948,6 +956,7 @@ const OverlaySelection = class {
948
956
  return range;
949
957
  }
950
958
  onCopy(e) {
959
+ var _a;
951
960
  const range = this.getRegion();
952
961
  const canCopyEvent = this.beforeCopyRegion.emit(range);
953
962
  if (canCopyEvent.defaultPrevented) {
@@ -963,10 +972,11 @@ const OverlaySelection = class {
963
972
  rangeData = event.detail.data;
964
973
  }
965
974
  }
966
- this.clipboard.doCopy(e, rangeData);
975
+ (_a = this.clipboard) === null || _a === void 0 ? void 0 : _a.doCopy(e, rangeData);
967
976
  return true;
968
977
  }
969
978
  onPaste(data) {
979
+ var _a;
970
980
  const focus = this.selectionStore.get('focus');
971
981
  const isEditing = this.selectionStore.get('edit') !== null;
972
982
  if (!focus || isEditing) {
@@ -977,24 +987,30 @@ const OverlaySelection = class {
977
987
  if (canPaste) {
978
988
  return;
979
989
  }
980
- this.autoFillService.onRangeApply(changed, range);
990
+ (_a = this.autoFillService) === null || _a === void 0 ? void 0 : _a.onRangeApply(changed, range);
981
991
  }
982
992
  async focusNext() {
983
- const canFocus = await this.keyboardService.keyChangeSelection(new KeyboardEvent('keydown', {
993
+ var _a;
994
+ const canFocus = await ((_a = this.keyboardService) === null || _a === void 0 ? void 0 : _a.keyChangeSelection(new KeyboardEvent('keydown', {
984
995
  code: key_utils.codesLetter.ARROW_DOWN,
985
- }), this.range);
996
+ }), this.range));
986
997
  if (!canFocus) {
987
998
  this.closeEdit();
988
999
  }
989
1000
  }
990
1001
  clearCell() {
991
- if (this.selectionStore.get('range') &&
992
- !selection_helpers.isRangeSingleCell(this.selectionStore.get('range'))) {
993
- const data = this.columnService.getRangeStaticData(this.selectionStore.get('range'), '');
994
- this.autoFillService.onRangeApply(data, this.selectionStore.get('range'));
1002
+ var _a;
1003
+ const range = this.selectionStore.get('range');
1004
+ if (range &&
1005
+ !selection_helpers.isRangeSingleCell(range)) {
1006
+ const data = this.columnService.getRangeStaticData(range, '');
1007
+ (_a = this.autoFillService) === null || _a === void 0 ? void 0 : _a.onRangeApply(data, range);
995
1008
  }
996
1009
  else if (this.canEdit()) {
997
1010
  const focused = this.selectionStore.get('focus');
1011
+ if (!focused) {
1012
+ return;
1013
+ }
998
1014
  const cell = this.columnService.getSaveData(focused.y, focused.x);
999
1015
  this.cellEdit({
1000
1016
  rgRow: focused.y,
@@ -1031,7 +1047,10 @@ const OverlaySelection = class {
1031
1047
  const end = cell;
1032
1048
  const start = this.selectionStore.get('focus');
1033
1049
  if (isRangeEdit && start) {
1034
- return this.triggerRangeEvent(selection_helpers.getRange(start, end));
1050
+ const range = selection_helpers.getRange(start, end);
1051
+ if (range) {
1052
+ return this.triggerRangeEvent(range);
1053
+ }
1035
1054
  }
1036
1055
  return this.doFocus(cell, end);
1037
1056
  }
@@ -1052,6 +1071,7 @@ const OverlaySelection = class {
1052
1071
  lastCell: this.lastCell,
1053
1072
  focus: this.selectionStore.get('focus'),
1054
1073
  range: this.selectionStore.get('range'),
1074
+ edit: this.selectionStore.get('edit'),
1055
1075
  };
1056
1076
  }
1057
1077
  get element() { return index.getElement(this); }
@@ -1122,7 +1142,7 @@ const RevogrRowHeaders = class {
1122
1142
  const viewportHeader = Object.assign(Object.assign({}, this.headerProp), { colData: typeof this.rowHeaderColumn === 'object' ? [this.rowHeaderColumn] : [], viewportCol: viewport.store, canResize: false, type: index$1.ROW_HEADER_TYPE,
1123
1143
  // parent,
1124
1144
  slot: column_service.HEADER_SLOT });
1125
- return (index.h(index.Host, { class: { [index$1.ROW_HEADER_TYPE]: true }, key: index$1.ROW_HEADER_TYPE }, index.h("revogr-viewport-scroll", Object.assign({ key: 'efaaa386cb5ea8b848d42e3407dbde8ad99d1db8' }, viewportScroll, { "row-header": true }), index.h("revogr-header", Object.assign({ key: '57fb6d08cd094f9b19145ff65c3ab805992fbb68' }, viewportHeader)), dataViews)));
1145
+ return (index.h(index.Host, { class: { [index$1.ROW_HEADER_TYPE]: true }, key: index$1.ROW_HEADER_TYPE }, index.h("revogr-viewport-scroll", Object.assign({ key: '743c1dbaed3edf679c0616a2b79171a43d94806f' }, viewportScroll, { "row-header": true }), index.h("revogr-header", Object.assign({ key: '53f1f64b1358d7828a5e45807915740ef198df21' }, viewportHeader)), dataViews)));
1126
1146
  }
1127
1147
  };
1128
1148
 
@@ -1159,7 +1179,7 @@ class AutohideScrollPlugin {
1159
1179
  show(element, timeout) {
1160
1180
  clearTimeout(timeout);
1161
1181
  return Number(setTimeout(() => {
1162
- element.removeAttribute('visible');
1182
+ element === null || element === void 0 ? void 0 : element.removeAttribute('visible');
1163
1183
  }, 1000));
1164
1184
  }
1165
1185
  clear() {