@revolist/revogrid 4.26.2 → 4.27.1

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 (130) hide show
  1. package/dist/cjs/{cell-renderer-Cf2Pu4S0.js → cell-renderer-BDIx0xys.js} +3 -3
  2. package/dist/cjs/{column.service-C7p5eC5V.js → column.service-D-ENzqyb.js} +5 -3
  3. package/dist/cjs/{dimension.helpers-CgHhnN1d.js → dimension.helpers-CptesQOZ.js} +52 -8
  4. package/dist/cjs/{edit.utils-rAcGublN.js → edit.utils-CBAbQhGP.js} +1 -1
  5. package/dist/cjs/{header-cell-renderer-DHClfIto.js → header-cell-renderer-B5Y4fdZC.js} +1 -1
  6. package/dist/cjs/{index--FdNLz1Z.js → index-BVESmpqW.js} +1 -1
  7. package/dist/cjs/index.cjs.js +72 -55
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/cjs/revo-grid.cjs.entry.js +131 -86
  10. package/dist/cjs/revo-grid.cjs.js +1 -1
  11. package/dist/cjs/revogr-attribution_7.cjs.entry.js +51 -19
  12. package/dist/cjs/revogr-clipboard_3.cjs.entry.js +4 -4
  13. package/dist/cjs/revogr-data_4.cjs.entry.js +21 -15
  14. package/dist/cjs/revogr-filter-panel.cjs.entry.js +9 -9
  15. package/dist/cjs/{column.drag.plugin-CK5HADlW.js → row-resize.plugin-sK9_rcUN.js} +759 -86
  16. package/dist/cjs/{text-editor-F04kTx53.js → text-editor-CJyQaYei.js} +2 -2
  17. package/dist/cjs/{throttle-fV6BUmM7.js → throttle-BsaP4fgu.js} +3 -3
  18. package/dist/cjs/{viewport.store-B4Clk4m9.js → viewport.store-mhsdi61t.js} +1 -1
  19. package/dist/collection/components/data/revogr-data-style.css +11 -0
  20. package/dist/collection/components/data/revogr-data.js +14 -8
  21. package/dist/collection/components/header/revogr-header-style.css +1 -0
  22. package/dist/collection/components/overlay/keyboard.service.js +33 -3
  23. package/dist/collection/components/overlay/revogr-overlay-selection.js +12 -10
  24. package/dist/collection/components/revoGrid/plugin.service.js +2 -2
  25. package/dist/collection/components/revoGrid/revo-grid.js +80 -30
  26. package/dist/collection/components/revoGrid/viewport.scrolling.service.js +24 -13
  27. package/dist/collection/components/revoGrid/viewport.service.js +1 -1
  28. package/dist/collection/plugins/filter/filter.constants.js +9 -0
  29. package/dist/collection/plugins/filter/filter.panel.js +8 -8
  30. package/dist/collection/plugins/filter/filter.plugin.js +109 -10
  31. package/dist/collection/plugins/filter/filter.style.css +2 -0
  32. package/dist/collection/plugins/groupingRow/grouping.const.js +1 -0
  33. package/dist/collection/plugins/groupingRow/grouping.row.plugin.js +93 -56
  34. package/dist/collection/plugins/groupingRow/grouping.row.renderer.js +1 -1
  35. package/dist/collection/plugins/groupingRow/grouping.service.js +1 -1
  36. package/dist/collection/plugins/groupingRow/grouping.sorting.service.js +58 -0
  37. package/dist/collection/plugins/groupingRow/grouping.trimmed.service.js +5 -3
  38. package/dist/collection/plugins/index.js +1 -0
  39. package/dist/collection/plugins/row-resize/index.js +6 -0
  40. package/dist/collection/plugins/row-resize/row-resize.plugin.js +416 -0
  41. package/dist/collection/plugins/row-resize/row-resize.types.js +1 -0
  42. package/dist/collection/plugins/row-resize/row-resize.utils.js +55 -0
  43. package/dist/collection/plugins/sorting/sorting.plugin.js +16 -13
  44. package/dist/collection/plugins/wcag/index.js +5 -4
  45. package/dist/collection/serve/controller.js +1 -1
  46. package/dist/collection/services/data.provider.js +8 -2
  47. package/dist/collection/services/dimension.provider.js +17 -1
  48. package/dist/collection/services/local.scroll.timer.js +3 -3
  49. package/dist/collection/services/selection.store.connector.js +4 -2
  50. package/dist/collection/store/dataSource/data.pending.plugin.js +21 -0
  51. package/dist/collection/store/dataSource/data.store.js +25 -3
  52. package/dist/collection/store/dataSource/trimmed.plugin.js +9 -6
  53. package/dist/collection/store/dimension/dimension.trim.plugin.js +1 -3
  54. package/dist/collection/types/events.js +4 -1
  55. package/dist/collection/utils/column.utils.js +1 -1
  56. package/dist/esm/{cell-renderer-11cf-lu3.js → cell-renderer-D9ze8OJw.js} +3 -3
  57. package/dist/esm/{column.service-Cfw3L0PN.js → column.service-pu_fdQ0S.js} +5 -4
  58. package/dist/{revo-grid/dimension.helpers-fl4HSSK9.js → esm/dimension.helpers-Cln9sALu.js} +52 -9
  59. package/dist/{revo-grid/edit.utils-4e9fsqOR.js → esm/edit.utils-3ZbhQCv_.js} +1 -1
  60. package/dist/esm/{header-cell-renderer-Cqtg1ETB.js → header-cell-renderer-YCiVIQ2E.js} +1 -1
  61. package/dist/esm/{index-D24ku9ej.js → index-BvMNbQyq.js} +1 -1
  62. package/dist/esm/index.js +14 -11
  63. package/dist/esm/loader.js +1 -1
  64. package/dist/esm/revo-grid.entry.js +113 -68
  65. package/dist/esm/revo-grid.js +1 -1
  66. package/dist/esm/revogr-attribution_7.entry.js +51 -19
  67. package/dist/esm/revogr-clipboard_3.entry.js +4 -4
  68. package/dist/esm/revogr-data_4.entry.js +21 -15
  69. package/dist/esm/revogr-filter-panel.entry.js +9 -9
  70. package/dist/esm/{column.drag.plugin-DDBKeTGI.js → row-resize.plugin-DBOgjLdE.js} +748 -87
  71. package/dist/{revo-grid/text-editor-DlMnLkRK.js → esm/text-editor-eHtrwvxH.js} +2 -2
  72. package/dist/{revo-grid/throttle-Cpk1LoGk.js → esm/throttle-3rhqdcLy.js} +3 -3
  73. package/dist/{revo-grid/viewport.store-BSXmsiZc.js → esm/viewport.store-DWMKRDSH.js} +1 -1
  74. package/dist/revo-grid/{cell-renderer-11cf-lu3.js → cell-renderer-D9ze8OJw.js} +3 -3
  75. package/dist/revo-grid/{column.service-Cfw3L0PN.js → column.service-pu_fdQ0S.js} +5 -4
  76. package/dist/{esm/dimension.helpers-fl4HSSK9.js → revo-grid/dimension.helpers-Cln9sALu.js} +52 -9
  77. package/dist/{esm/edit.utils-4e9fsqOR.js → revo-grid/edit.utils-3ZbhQCv_.js} +1 -1
  78. package/dist/revo-grid/{header-cell-renderer-Cqtg1ETB.js → header-cell-renderer-YCiVIQ2E.js} +1 -1
  79. package/dist/revo-grid/{index-D24ku9ej.js → index-BvMNbQyq.js} +1 -1
  80. package/dist/revo-grid/index.esm.js +14 -11
  81. package/dist/revo-grid/revo-grid.entry.js +113 -68
  82. package/dist/revo-grid/revo-grid.esm.js +1 -1
  83. package/dist/revo-grid/revogr-attribution_7.entry.js +51 -19
  84. package/dist/revo-grid/revogr-clipboard_3.entry.js +4 -4
  85. package/dist/revo-grid/revogr-data_4.entry.js +21 -15
  86. package/dist/revo-grid/revogr-filter-panel.entry.js +9 -9
  87. package/dist/revo-grid/{column.drag.plugin-DDBKeTGI.js → row-resize.plugin-DBOgjLdE.js} +748 -87
  88. package/dist/{esm/text-editor-DlMnLkRK.js → revo-grid/text-editor-eHtrwvxH.js} +2 -2
  89. package/dist/{esm/throttle-Cpk1LoGk.js → revo-grid/throttle-3rhqdcLy.js} +3 -3
  90. package/dist/{esm/viewport.store-BSXmsiZc.js → revo-grid/viewport.store-DWMKRDSH.js} +1 -1
  91. package/dist/types/components/data/revogr-data.d.ts +1 -0
  92. package/dist/types/components/overlay/keyboard.service.d.ts +6 -0
  93. package/dist/types/components/overlay/revogr-overlay-selection.d.ts +3 -1
  94. package/dist/types/components/revoGrid/revo-grid.d.ts +9 -1
  95. package/dist/types/components/revoGrid/viewport.scrolling.service.d.ts +3 -1
  96. package/dist/types/components.d.ts +23 -10
  97. package/dist/types/plugins/filter/filter.constants.d.ts +6 -0
  98. package/dist/types/plugins/filter/filter.plugin.d.ts +15 -0
  99. package/dist/types/plugins/groupingRow/grouping.const.d.ts +1 -0
  100. package/dist/types/plugins/groupingRow/grouping.row.plugin.d.ts +5 -7
  101. package/dist/types/plugins/groupingRow/grouping.sorting.service.d.ts +7 -0
  102. package/dist/types/plugins/groupingRow/grouping.trimmed.service.d.ts +9 -0
  103. package/dist/types/plugins/index.d.ts +1 -0
  104. package/dist/types/plugins/row-resize/index.d.ts +3 -0
  105. package/dist/types/plugins/row-resize/row-resize.plugin.d.ts +46 -0
  106. package/dist/types/plugins/row-resize/row-resize.types.d.ts +40 -0
  107. package/dist/types/plugins/row-resize/row-resize.utils.d.ts +14 -0
  108. package/dist/types/plugins/sorting/sorting.plugin.d.ts +5 -0
  109. package/dist/types/services/data.provider.d.ts +2 -0
  110. package/dist/types/services/dimension.provider.d.ts +7 -1
  111. package/dist/types/store/dataSource/data.pending.plugin.d.ts +9 -0
  112. package/dist/types/store/dataSource/data.store.d.ts +10 -0
  113. package/dist/types/store/dataSource/trimmed.plugin.d.ts +5 -0
  114. package/dist/types/types/events.d.ts +1 -1
  115. package/dist/types/types/interfaces.d.ts +3 -1
  116. package/hydrate/index.js +980 -191
  117. package/hydrate/index.mjs +980 -191
  118. package/package.json +1 -1
  119. package/readme.md +4 -1
  120. package/standalone/column.service.js +1 -1
  121. package/standalone/data.store.js +1 -1
  122. package/standalone/dimension.helpers.js +1 -1
  123. package/standalone/index.js +1 -1
  124. package/standalone/local.scroll.timer.js +1 -1
  125. package/standalone/revo-grid.js +1 -1
  126. package/standalone/revogr-data2.js +1 -1
  127. package/standalone/revogr-filter-panel.js +1 -1
  128. package/standalone/revogr-header2.js +1 -1
  129. package/standalone/revogr-overlay-selection2.js +1 -1
  130. package/standalone/revogr-row-headers2.js +1 -1
@@ -4,16 +4,16 @@
4
4
  'use strict';
5
5
 
6
6
  var index = require('./index-DRvxCueo.js');
7
- var column_service = require('./column.service-C7p5eC5V.js');
8
- var dimension_helpers = require('./dimension.helpers-CgHhnN1d.js');
7
+ var column_service = require('./column.service-D-ENzqyb.js');
8
+ var dimension_helpers = require('./dimension.helpers-CptesQOZ.js');
9
9
  var debounce = require('./debounce-CcpHiH2p.js');
10
10
  var viewport_helpers = require('./viewport.helpers-BND76K2j.js');
11
- var column_drag_plugin = require('./column.drag.plugin-CK5HADlW.js');
12
- var viewport_store = require('./viewport.store-B4Clk4m9.js');
13
- var index$1 = require('./index--FdNLz1Z.js');
11
+ var rowResize_plugin = require('./row-resize.plugin-sK9_rcUN.js');
12
+ var viewport_store = require('./viewport.store-mhsdi61t.js');
13
+ var index$1 = require('./index-BVESmpqW.js');
14
14
  var events = require('./events-DeLDyZlb.js');
15
15
  require('./filter.button-F2Bw3UAd.js');
16
- require('./header-cell-renderer-DHClfIto.js');
16
+ require('./header-cell-renderer-B5Y4fdZC.js');
17
17
 
18
18
  class ColumnDataProvider {
19
19
  get stores() {
@@ -230,9 +230,15 @@ class DataProvider {
230
230
  store.addTrimmed(trimmed);
231
231
  this.dimensionProvider.setTrimmed(trimmed, type);
232
232
  if (type === 'rgRow') {
233
- this.dimensionProvider.setData(dimension_helpers.getVisibleSourceItem(store.store).length, type);
233
+ this.dimensionProvider.setData(store.store.get('items').length, type);
234
234
  }
235
235
  }
236
+ /** Keep a row source empty until its current asynchronous update is ready. */
237
+ setItemsPending(pending, type = 'rgRow') {
238
+ const store = this.stores[type];
239
+ store.setItemsPending(pending);
240
+ this.dimensionProvider.setData(store.store.get('items').length, type, type !== 'rgRow');
241
+ }
236
242
  }
237
243
 
238
244
  const DEFAULT_VIRTUAL_X = ['rgCol'];
@@ -248,9 +254,11 @@ function isVirtualXDimension(type, disableVirtualX = false, virtualX = DEFAULT_V
248
254
  class DimensionProvider {
249
255
  constructor(viewports, config) {
250
256
  this.viewports = viewports;
251
- const sizeChanged = debounce.debounce((k) => config.realSizeChanged(k), dimension_helpers.RESIZE_INTERVAL);
257
+ this.config = config;
258
+ this.rowDefinitions = [];
259
+ const sizeChanged = debounce.debounce((k) => this.config.realSizeChanged(k), dimension_helpers.RESIZE_INTERVAL);
252
260
  this.stores = [...column_service.rowTypes, ...column_service.columnTypes].reduce((sources, t) => {
253
- sources[t] = new column_drag_plugin.DimensionStore(t);
261
+ sources[t] = new rowResize_plugin.DimensionStore(t);
254
262
  sources[t].store.onChange('realSize', () => sizeChanged(t));
255
263
  return sources;
256
264
  }, {});
@@ -266,6 +274,20 @@ class DimensionProvider {
266
274
  this.viewports.stores[t].setOriginalSizes(this.stores[t].store.get('originItemSize'));
267
275
  this.setItemCount(count, t);
268
276
  }
277
+ getRowDefinitions() {
278
+ return this.rowDefinitions;
279
+ }
280
+ syncRowDefinitions(definitions) {
281
+ this.rowDefinitions = definitions;
282
+ }
283
+ setRowDefinitions(definitions) {
284
+ var _a, _b;
285
+ if (definitions === this.rowDefinitions) {
286
+ return;
287
+ }
288
+ this.syncRowDefinitions(definitions);
289
+ (_b = (_a = this.config).rowDefinitionsChanged) === null || _b === void 0 ? void 0 : _b.call(_a, definitions);
290
+ }
269
291
  /**
270
292
  * Apply new custom sizes to dimension and view port
271
293
  * @param type - dimension type
@@ -509,7 +531,7 @@ function getThemeTokens(tokens) {
509
531
  }
510
532
  const result = {};
511
533
  for (const [name, value] of Object.entries(tokens)) {
512
- if (Object.hasOwn(column_drag_plugin.themeTokenCssVariables, name) &&
534
+ if (Object.hasOwn(rowResize_plugin.themeTokenCssVariables, name) &&
513
535
  typeof value === 'string' &&
514
536
  value.trim()) {
515
537
  result[name] = value;
@@ -722,7 +744,7 @@ class ViewportService {
722
744
  const changedItems = {};
723
745
  for (const i of Object.keys(detail || {})) {
724
746
  const size = detail[i];
725
- const virtualIndex = parseInt(i, 10);
747
+ const virtualIndex = Number.parseInt(i, 10);
726
748
  const item = dimension_helpers.getSourceItem(store, virtualIndex);
727
749
  if (item) {
728
750
  changedItems[virtualIndex] = Object.assign(Object.assign({}, item), { size });
@@ -851,29 +873,25 @@ class GridScrollingService {
851
873
  this.elements = {};
852
874
  }
853
875
  async proxyScroll(e, key, skipEvent) {
854
- var _a;
855
876
  let newEventPromise;
856
877
  let event = e;
857
- for (let elKey in (skipEvent ? {} : this.elements)) {
878
+ for (const elKey in (skipEvent ? {} : this.elements)) {
858
879
  // skip
859
880
  if (e.dimension === 'rgCol' && elKey === 'headerRow') {
860
881
  continue;
861
882
  // pinned column only
862
883
  }
863
- else if (this.isPinnedColumn(key) && e.dimension === 'rgCol') {
884
+ if (this.isPinnedColumn(key) && e.dimension === 'rgCol') {
864
885
  if (elKey === key || !e.delta) {
865
886
  continue;
866
887
  }
867
- for (let el of this.elements[elKey]) {
868
- if (el.changeScroll) {
869
- newEventPromise = el.changeScroll(e);
870
- }
888
+ const changedEvent = this.changeScroll(this.elements[elKey], e);
889
+ if (changedEvent) {
890
+ newEventPromise = changedEvent;
871
891
  }
872
892
  }
873
893
  else {
874
- for (let el of this.elements[elKey]) {
875
- await ((_a = el.setScroll) === null || _a === void 0 ? void 0 : _a.call(el, e));
876
- }
894
+ await this.setScroll(this.elements[elKey], e);
877
895
  }
878
896
  }
879
897
  const newEvent = await newEventPromise;
@@ -883,12 +901,27 @@ class GridScrollingService {
883
901
  this.setViewport(skipEvent && this.isPinnedColumn(key)
884
902
  ? Object.assign(Object.assign({}, event), { dimension: key }) : event);
885
903
  }
904
+ changeScroll(elements, e) {
905
+ let changedEvent;
906
+ for (const element of elements) {
907
+ if (element.changeScroll) {
908
+ changedEvent = element.changeScroll(e);
909
+ }
910
+ }
911
+ return changedEvent;
912
+ }
913
+ async setScroll(elements, e) {
914
+ var _a;
915
+ for (const element of elements) {
916
+ await ((_a = element.setScroll) === null || _a === void 0 ? void 0 : _a.call(element, e));
917
+ }
918
+ }
886
919
  /**
887
920
  * Silent scroll update for mobile devices when we have negative scroll top
888
921
  */
889
922
  async scrollSilentService(e, key) {
890
923
  var _a;
891
- for (let elKey in this.elements) {
924
+ for (const elKey in this.elements) {
892
925
  // skip same element update
893
926
  if (elKey === key) {
894
927
  continue;
@@ -896,7 +929,7 @@ class GridScrollingService {
896
929
  if (column_service.columnTypes.includes(key) &&
897
930
  (elKey === 'headerRow' ||
898
931
  column_service.columnTypes.includes(elKey))) {
899
- for (let el of this.elements[elKey]) {
932
+ for (const el of this.elements[elKey]) {
900
933
  await ((_a = el.changeScroll) === null || _a === void 0 ? void 0 : _a.call(el, e, true));
901
934
  }
902
935
  continue;
@@ -904,7 +937,7 @@ class GridScrollingService {
904
937
  }
905
938
  }
906
939
  isPinnedColumn(key) {
907
- return !!key && ['colPinStart', 'colPinEnd'].indexOf(key) > -1;
940
+ return !!key && ['colPinStart', 'colPinEnd'].includes(key);
908
941
  }
909
942
  registerElements(els) {
910
943
  this.elements = els;
@@ -980,14 +1013,14 @@ class SelectionStoreConnector {
980
1013
  if (this.columnStores[x]) {
981
1014
  return this.columnStores[x];
982
1015
  }
983
- this.columnStores[x] = new column_drag_plugin.SelectionStore();
1016
+ this.columnStores[x] = new rowResize_plugin.SelectionStore();
984
1017
  return this.columnStores[x];
985
1018
  }
986
1019
  registerRow(y, type) {
987
1020
  if (this.rowStores[y]) {
988
1021
  return this.rowStores[y];
989
1022
  }
990
- this.rowStores[y] = new column_drag_plugin.SelectionStore();
1023
+ this.rowStores[y] = new rowResize_plugin.SelectionStore();
991
1024
  // build cross linking type to position
992
1025
  this.storesByType[type] = y;
993
1026
  this.storesYToType[y] = type;
@@ -1005,7 +1038,7 @@ class SelectionStoreConnector {
1005
1038
  // Store already registered. Do not register twice
1006
1039
  return store;
1007
1040
  }
1008
- this.stores[y][x] = store = new column_drag_plugin.SelectionStore();
1041
+ this.stores[y][x] = store = new rowResize_plugin.SelectionStore();
1009
1042
  // proxy update, column store trigger only range area
1010
1043
  store.onChange('range', c => {
1011
1044
  this.columnStores[x].setRangeArea(c);
@@ -1185,9 +1218,11 @@ class SelectionStoreConnector {
1185
1218
  continue;
1186
1219
  }
1187
1220
  const lastCell = store.store.get('lastCell');
1188
- if (lastCell) {
1189
- store.setRange({ x: 0, y: 0 }, { x: lastCell.x - 1, y: lastCell.y - 1 });
1221
+ if (!lastCell || lastCell.x <= 0 || lastCell.y <= 0) {
1222
+ store.setRangeArea(null);
1223
+ continue;
1190
1224
  }
1225
+ store.setRange({ x: 0, y: 0 }, { x: lastCell.x - 1, y: lastCell.y - 1 });
1191
1226
  }
1192
1227
  }
1193
1228
  }
@@ -1289,24 +1324,12 @@ const rowDefinitionByType = (newVal = []) => {
1289
1324
  }
1290
1325
  return result;
1291
1326
  };
1292
- const rowDefinitionRemoveByType = (oldVal = []) => {
1293
- const result = {};
1294
- for (const v of oldVal) {
1295
- let rowDefs = result[v.type];
1296
- if (!rowDefs) {
1297
- rowDefs = result[v.type] = [];
1298
- }
1299
- if (typeof v.size === 'number') {
1300
- rowDefs.push(v.index);
1301
- }
1302
- }
1303
- return result;
1304
- };
1305
1327
 
1306
1328
  function isMobileDevice() {
1307
1329
  return /Mobi/i.test(navigator.userAgent) || /Android/i.test(navigator.userAgent) || navigator.maxTouchPoints > 0;
1308
1330
  }
1309
1331
 
1332
+ const toAriaIndex = (index) => `${index + 1}`;
1310
1333
  /**
1311
1334
  * WCAG Plugin is responsible for enhancing the accessibility features of the RevoGrid component.
1312
1335
  * It ensures that the grid is fully compliant with Web Content Accessibility Guidelines (WCAG) 2.1.
@@ -1328,7 +1351,7 @@ function isMobileDevice() {
1328
1351
  * Note: The WCAG Plugin should be added as the last plugin in the list of plugins, as it modifies the grid's
1329
1352
  * default behavior and may conflict with other plugins if added earlier.
1330
1353
  */
1331
- class WCAGPlugin extends column_drag_plugin.BasePlugin {
1354
+ class WCAGPlugin extends rowResize_plugin.BasePlugin {
1332
1355
  constructor(revogrid, providers) {
1333
1356
  super(revogrid, providers);
1334
1357
  revogrid.setAttribute('role', 'treegrid');
@@ -1350,14 +1373,14 @@ class WCAGPlugin extends column_drag_plugin.BasePlugin {
1350
1373
  column.columnProperties = (...args) => {
1351
1374
  const result = (columnProperties === null || columnProperties === void 0 ? void 0 : columnProperties(...args)) || {};
1352
1375
  result.role = 'columnheader';
1353
- result['aria-colindex'] = `${index}`;
1376
+ result['aria-colindex'] = toAriaIndex(index);
1354
1377
  return result;
1355
1378
  };
1356
1379
  column.cellProperties = (...args) => {
1357
1380
  const wcagProps = {
1358
1381
  ['role']: 'gridcell',
1359
- ['aria-colindex']: `${index}`,
1360
- ['aria-rowindex']: `${args[0].rowIndex}`,
1382
+ ['aria-colindex']: toAriaIndex(index),
1383
+ ['aria-rowindex']: toAriaIndex(args[0].rowIndex),
1361
1384
  ['tabindex']: -1,
1362
1385
  };
1363
1386
  const columnProps = (cellProperties === null || cellProperties === void 0 ? void 0 : cellProperties(...args)) || {};
@@ -1372,7 +1395,7 @@ class WCAGPlugin extends column_drag_plugin.BasePlugin {
1372
1395
  revogrid.setAttribute('aria-rowcount', `${detail.source.length}`);
1373
1396
  });
1374
1397
  this.addEventListener('beforerowrender', ({ detail, }) => {
1375
- detail.node.$attrs$ = Object.assign(Object.assign({}, detail.node.$attrs$), { role: 'row', ['aria-rowindex']: detail.item.itemIndex });
1398
+ detail.node.$attrs$ = Object.assign(Object.assign({}, detail.node.$attrs$), { role: 'row', ['aria-rowindex']: toAriaIndex(detail.item.itemIndex) });
1376
1399
  });
1377
1400
  // focuscell
1378
1401
  this.addEventListener('afterfocus', async (e) => {
@@ -1419,7 +1442,7 @@ class PluginService {
1419
1442
  return;
1420
1443
  }
1421
1444
  // Step 1: Identify plugins to remove, compare new and old plugins
1422
- const pluginsToRemove = (prevPlugins === null || prevPlugins === void 0 ? void 0 : prevPlugins.filter(prevPlugin => !plugins.some(userPlugin => userPlugin === prevPlugin))) || [];
1445
+ const pluginsToRemove = (prevPlugins === null || prevPlugins === void 0 ? void 0 : prevPlugins.filter(prevPlugin => !plugins.includes(prevPlugin))) || [];
1423
1446
  // Step 2: Remove old plugins
1424
1447
  pluginsToRemove.forEach(plugin => {
1425
1448
  var _a, _b;
@@ -1432,7 +1455,7 @@ class PluginService {
1432
1455
  // Step 3: Register user plugins
1433
1456
  plugins === null || plugins === void 0 ? void 0 : plugins.forEach(userPlugin => {
1434
1457
  // check if plugin already exists, if so, skip
1435
- const existingPlugin = this.internalPlugins.find(createdPlugin => createdPlugin instanceof userPlugin);
1458
+ const existingPlugin = this.internalPlugins.some(createdPlugin => createdPlugin instanceof userPlugin);
1436
1459
  if (existingPlugin) {
1437
1460
  return;
1438
1461
  }
@@ -1471,7 +1494,7 @@ class PluginService {
1471
1494
  * This plugin handles RTL transformation by subscribing to the beforecolumnsset event
1472
1495
  * and applying column order reversal when RTL mode is enabled.
1473
1496
  */
1474
- class RTLPlugin extends column_drag_plugin.BasePlugin {
1497
+ class RTLPlugin extends rowResize_plugin.BasePlugin {
1475
1498
  constructor(revogrid, providers) {
1476
1499
  super(revogrid, providers);
1477
1500
  this.isRTLEnabled = false;
@@ -1640,7 +1663,12 @@ const RevoGridComponent = class {
1640
1663
  /** When true, grid in read only mode. */
1641
1664
  this.readonly = false;
1642
1665
  /** When true, columns are resizable. */
1643
- this.resize = false;
1666
+ this.resize = true;
1667
+ /**
1668
+ * Enables row resizing. Pass a configuration object to customize the
1669
+ * height limits or enable resize edges across the full row.
1670
+ */
1671
+ this.resizeRow = false;
1644
1672
  /**
1645
1673
  * Prevents horizontal scroll state from being mirrored across viewport sections.
1646
1674
  */
@@ -1711,15 +1739,15 @@ const RevoGridComponent = class {
1711
1739
  */
1712
1740
  this.autoSizeColumn = false;
1713
1741
  /**
1714
- * Enables filter plugin.
1742
+ * Enables filter plugin. Enabled by default; set to `false` to opt out.
1715
1743
  * Can be boolean.
1716
1744
  * Or can be filter collection See `FilterCollection` for more info.
1717
1745
  */
1718
- this.filter = false;
1746
+ this.filter = true;
1719
1747
  /**
1720
1748
  * Enable column move plugin.
1721
1749
  */
1722
- this.canMoveColumns = false;
1750
+ this.canMoveColumns = true;
1723
1751
  /**
1724
1752
  * Trimmed rows.
1725
1753
  * Functionality which allows to hide rows from main data set.
@@ -1729,7 +1757,7 @@ const RevoGridComponent = class {
1729
1757
  /**
1730
1758
  * Enable export plugin.
1731
1759
  */
1732
- this.exporting = false;
1760
+ this.exporting = true;
1733
1761
  /**
1734
1762
  * Stretch strategy for columns by `StretchColumn` plugin.
1735
1763
  * For example if there are more space on the right last column size would be increased.
@@ -1821,7 +1849,7 @@ const RevoGridComponent = class {
1821
1849
  var _a;
1822
1850
  if (this.dataProvider && this.columnProvider && !skipDataUpdate) {
1823
1851
  const columnProp = (_a = this.columnProvider.getColumn(col, colType)) === null || _a === void 0 ? void 0 : _a.prop;
1824
- if (typeof columnProp !== 'undefined') {
1852
+ if (columnProp !== undefined) {
1825
1853
  this.dataProvider.setCellData({
1826
1854
  type: rowType,
1827
1855
  rowIndex: row,
@@ -2351,7 +2379,7 @@ const RevoGridComponent = class {
2351
2379
  '--rg-theme-row-size': `${this.themeService.rowSize}px`,
2352
2380
  };
2353
2381
  for (const [name, value] of Object.entries(this.themeService.theme.tokens)) {
2354
- const cssVariable = column_drag_plugin.themeTokenCssVariables[name];
2382
+ const cssVariable = rowResize_plugin.themeTokenCssVariables[name];
2355
2383
  if (cssVariable && value) {
2356
2384
  styles[cssVariable] = value;
2357
2385
  }
@@ -2417,29 +2445,31 @@ const RevoGridComponent = class {
2417
2445
  vals: after,
2418
2446
  oldVals: before,
2419
2447
  });
2420
- // apply new values
2448
+ this.dimensionProvider.syncRowDefinitions(newVal);
2421
2449
  const newRows = rowDefinitionByType(newVal);
2422
- // clear current defs
2423
- if (oldVal) {
2424
- const remove = rowDefinitionRemoveByType(oldVal);
2425
- // clear all old data and drop sizes
2426
- for (const t in remove) {
2427
- if (remove.hasOwnProperty(t)) {
2428
- const type = t;
2429
- const store = this.dataProvider.stores[type];
2430
- const sourceLength = store.store.get('source').length;
2431
- this.dimensionProvider.clearSize(type, sourceLength);
2432
- }
2433
- }
2434
- }
2435
- // set new sizes
2450
+ const oldRows = rowDefinitionByType(oldVal);
2451
+ const dataProvider = this.dataProvider;
2452
+ const dimensionProvider = this.dimensionProvider;
2436
2453
  column_service.rowTypes.forEach((t) => {
2437
- var _a;
2438
2454
  const newSizes = newRows[t];
2439
- // apply new sizes or force update
2440
- if (newSizes || forceUpdate) {
2441
- (_a = this.dimensionProvider) === null || _a === void 0 ? void 0 : _a.setCustomSizes(t, (newSizes === null || newSizes === void 0 ? void 0 : newSizes.sizes) || {});
2455
+ const oldSizes = oldRows[t];
2456
+ if (!newSizes && !oldSizes && !forceUpdate) {
2457
+ return;
2442
2458
  }
2459
+ const sizes = Object.assign({}, dimensionProvider.stores[t].store.get('sizes'));
2460
+ const definitionSizes = (newSizes === null || newSizes === void 0 ? void 0 : newSizes.sizes) || {};
2461
+ const previousDefinitionSizes = (oldSizes === null || oldSizes === void 0 ? void 0 : oldSizes.sizes) || {};
2462
+ const items = dataProvider.stores[t].store.get('items');
2463
+ items.forEach((physicalIndex, virtualIndex) => {
2464
+ if (Object.hasOwn(previousDefinitionSizes, physicalIndex) &&
2465
+ sizes[virtualIndex] === previousDefinitionSizes[physicalIndex]) {
2466
+ delete sizes[virtualIndex];
2467
+ }
2468
+ if (Object.hasOwn(definitionSizes, physicalIndex)) {
2469
+ sizes[virtualIndex] = definitionSizes[physicalIndex];
2470
+ }
2471
+ });
2472
+ dimensionProvider.setCustomSizes(t, sizes);
2443
2473
  });
2444
2474
  }
2445
2475
  trimmedRowsChanged(newVal = {}) {
@@ -2450,7 +2480,7 @@ const RevoGridComponent = class {
2450
2480
  */
2451
2481
  groupingChanged(newVal = {}) {
2452
2482
  var _a;
2453
- (_a = this.pluginService.getByClass(column_drag_plugin.GroupingRowPlugin)) === null || _a === void 0 ? void 0 : _a.setGrouping(newVal || {});
2483
+ (_a = this.pluginService.getByClass(rowResize_plugin.GroupingRowPlugin)) === null || _a === void 0 ? void 0 : _a.setGrouping(newVal || {});
2454
2484
  }
2455
2485
  /**
2456
2486
  * Stretch Plugin Apply
@@ -2466,12 +2496,12 @@ const RevoGridComponent = class {
2466
2496
  if (!pluginData) {
2467
2497
  return;
2468
2498
  }
2469
- const stretch = this.pluginService.getByClass(column_drag_plugin.StretchColumn);
2499
+ const stretch = this.pluginService.getByClass(rowResize_plugin.StretchColumn);
2470
2500
  if ((typeof isStretch === 'boolean' && isStretch) || isStretch === 'true') {
2471
2501
  if (!stretch) {
2472
- this.pluginService.add(new column_drag_plugin.StretchColumn(this.element, pluginData));
2502
+ this.pluginService.add(new rowResize_plugin.StretchColumn(this.element, pluginData));
2473
2503
  }
2474
- else if (column_drag_plugin.isStretchPlugin(stretch)) {
2504
+ else if (rowResize_plugin.isStretchPlugin(stretch)) {
2475
2505
  stretch.applyStretch(this.columnProvider.getRawColumns());
2476
2506
  }
2477
2507
  }
@@ -2488,6 +2518,9 @@ const RevoGridComponent = class {
2488
2518
  rowHeadersChange(rowHeaders) {
2489
2519
  this.rowheaderschanged.emit(rowHeaders);
2490
2520
  }
2521
+ resizeRowChanged() {
2522
+ this.syncRowResizeConfig();
2523
+ }
2491
2524
  /**
2492
2525
  * Register external VNodes
2493
2526
  */
@@ -2510,6 +2543,7 @@ const RevoGridComponent = class {
2510
2543
  */
2511
2544
  pluginsChanged(plugins = [], prevPlugins) {
2512
2545
  this.pluginService.addUserPluginsAndCreate(this.element, plugins, prevPlugins, this.getPluginData());
2546
+ this.syncRowResizeConfig();
2513
2547
  }
2514
2548
  // #endregion
2515
2549
  // #region Plugins
@@ -2534,26 +2568,31 @@ const RevoGridComponent = class {
2534
2568
  this.pluginService.add(new RTLPlugin(this.element, pluginData));
2535
2569
  // register auto size plugin
2536
2570
  if (this.autoSizeColumn) {
2537
- this.pluginService.add(new column_drag_plugin.AutoSizeColumnPlugin(this.element, pluginData, typeof this.autoSizeColumn === 'object'
2571
+ this.pluginService.add(new rowResize_plugin.AutoSizeColumnPlugin(this.element, pluginData, typeof this.autoSizeColumn === 'object'
2538
2572
  ? this.autoSizeColumn
2539
2573
  : undefined));
2540
2574
  }
2541
2575
  // register filter plugin
2542
2576
  if (this.filter) {
2543
- this.pluginService.add(new column_drag_plugin.FilterPlugin(this.element, pluginData, typeof this.filter === 'object' ? this.filter : undefined));
2577
+ this.pluginService.add(new rowResize_plugin.FilterPlugin(this.element, pluginData, typeof this.filter === 'object' ? this.filter : undefined));
2544
2578
  }
2545
2579
  // register export plugin
2546
2580
  if (this.exporting) {
2547
- this.pluginService.add(new column_drag_plugin.ExportFilePlugin(this.element, pluginData));
2581
+ this.pluginService.add(new rowResize_plugin.ExportFilePlugin(this.element, pluginData));
2548
2582
  }
2549
2583
  // register sorting plugin
2550
- this.pluginService.add(new column_drag_plugin.SortingPlugin(this.element, pluginData));
2584
+ this.pluginService.add(new rowResize_plugin.SortingPlugin(this.element, pluginData));
2551
2585
  // register grouping plugin
2552
- this.pluginService.add(new column_drag_plugin.GroupingRowPlugin(this.element, pluginData));
2586
+ this.pluginService.add(new rowResize_plugin.GroupingRowPlugin(this.element, pluginData));
2587
+ this.pluginService.add(new rowResize_plugin.RowResizePlugin(this.element, pluginData));
2553
2588
  if (this.canMoveColumns) {
2554
- this.pluginService.add(new column_drag_plugin.ColumnMovePlugin(this.element, pluginData));
2589
+ this.pluginService.add(new rowResize_plugin.ColumnMovePlugin(this.element, pluginData));
2555
2590
  }
2556
2591
  }
2592
+ syncRowResizeConfig() {
2593
+ const plugin = this.pluginService.getByClass(rowResize_plugin.RowResizePlugin);
2594
+ plugin === null || plugin === void 0 ? void 0 : plugin.syncGridConfig();
2595
+ }
2557
2596
  getPluginData() {
2558
2597
  if (!this.dimensionProvider || !this.dataProvider || !this.columnProvider || !this.viewportProvider || !this.selectionStoreConnector) {
2559
2598
  return;
@@ -2596,6 +2635,9 @@ const RevoGridComponent = class {
2596
2635
  this.themeService.setDefinitions(this.themeDefinitions);
2597
2636
  this.dimensionProvider = new DimensionProvider(this.viewportProvider, {
2598
2637
  realSizeChanged: (k) => this.contentsizechanged.emit(k),
2638
+ rowDefinitionsChanged: definitions => {
2639
+ this.rowDefinitions = definitions;
2640
+ },
2599
2641
  });
2600
2642
  this.dimensionProvider.setSettings({ originItemSize: getColumnSize(this.colSize) }, 'rgCol');
2601
2643
  this.columnProvider = new ColumnDataProvider();
@@ -2786,6 +2828,9 @@ const RevoGridComponent = class {
2786
2828
  "rowHeaders": [{
2787
2829
  "rowHeadersChange": 0
2788
2830
  }],
2831
+ "resizeRow": [{
2832
+ "resizeRowChanged": 0
2833
+ }],
2789
2834
  "registerVNode": [{
2790
2835
  "registerOutsideVNodes": 0
2791
2836
  }],
@@ -49,7 +49,7 @@ var patchCloneNodeFix = (HTMLElementPrototype) => {
49
49
 
50
50
  patchBrowser().then(async (options) => {
51
51
  await appGlobals.globalScripts();
52
- return index.bootstrapLazy([["revo-grid.cjs",[[260,"revo-grid",{"rowHeaders":[4,"row-headers"],"frameSize":[2,"frame-size"],"rowSize":[2,"row-size"],"colSize":[2,"col-size"],"range":[4],"readonly":[4],"resize":[4],"noHorizontalScrollTransfer":[4,"no-horizontal-scroll-transfer"],"canFocus":[4,"can-focus"],"useClipboard":[4,"use-clipboard"],"columns":[16],"source":[16],"pinnedTopSource":[16],"pinnedBottomSource":[16],"rowDefinitions":[16],"editors":[16],"applyOnClose":[4,"apply-on-close"],"plugins":[16],"columnTypes":[16],"theme":[1537],"themeDefinitions":[16],"rowClass":[513,"row-class"],"autoSizeColumn":[4,"auto-size-column"],"filter":[4],"sorting":[16],"focusTemplate":[16],"canMoveColumns":[4,"can-move-columns"],"trimmedRows":[16],"exporting":[4],"grouping":[16],"stretch":[8],"additionalData":[16],"disableVirtualX":[4,"disable-virtual-x"],"virtualX":[16],"disableVirtualY":[4,"disable-virtual-y"],"hideAttribution":[4,"hide-attribution"],"jobsBeforeRender":[16],"registerVNode":[16],"accessible":[4],"rtl":[4],"canDrag":[4,"can-drag"],"refresh":[64],"setDataAt":[64],"scrollToRow":[64],"scrollToColumnIndex":[64],"scrollToColumnProp":[64],"updateColumns":[64],"addTrimmed":[64],"scrollToCoordinate":[64],"setCellEdit":[64],"setCellsFocus":[64],"getSource":[64],"getVisibleSource":[64],"getSourceStore":[64],"getColumnStore":[64],"updateColumnSorting":[64],"clearSorting":[64],"getColumns":[64],"clearFocus":[64],"getPlugins":[64],"getFocused":[64],"getContentSize":[64],"getSelectedRange":[64],"refreshExtraElements":[64],"getProviders":[64]},[[5,"touchstart","mousedownHandle"],[5,"mousedown","mousedownHandle"],[5,"touchend","mouseupHandle"],[5,"mouseup","mouseupHandle"],[0,"rowdragstartinit","onRowDragStarted"],[0,"rowdragendinit","onRowDragEnd"],[0,"roworderchange","onRowOrderChange"],[0,"rowdragmoveinit","onRowDrag"],[0,"rowdragmousemove","onRowMouseMove"],[0,"celleditapply","onCellEdit"],[0,"rangeeditapply","onRangeEdit"],[0,"selectionchangeinit","onRangeChanged"],[0,"rowdropinit","onRowDropped"],[0,"beforeheaderclick","onHeaderClick"],[0,"beforecellfocusinit","onCellFocus"]],{"columnTypes":[{"columnTypesChanged":0}],"columns":[{"columnChanged":0}],"disableVirtualX":[{"disableVirtualXChanged":0}],"virtualX":[{"virtualXChanged":0}],"rowSize":[{"rowSizeChanged":0}],"colSize":[{"colSizeChanged":0}],"theme":[{"themeChanged":0}],"themeDefinitions":[{"themeDefinitionsChanged":0}],"source":[{"dataSourceChanged":0}],"pinnedBottomSource":[{"dataSourceChanged":0}],"pinnedTopSource":[{"dataSourceChanged":0}],"disableVirtualY":[{"disableVirtualYChanged":0}],"rowDefinitions":[{"rowDefChanged":0}],"trimmedRows":[{"trimmedRowsChanged":0}],"grouping":[{"groupingChanged":0}],"stretch":[{"applyStretch":0}],"filter":[{"applyFilter":0}],"sorting":[{"applySorting":0}],"rowHeaders":[{"rowHeadersChange":0}],"registerVNode":[{"registerOutsideVNodes":0}],"additionalData":[{"additionalDataChanged":0}],"rtl":[{"rtlChanged":0}],"plugins":[{"pluginsChanged":0}]}]]],["revogr-filter-panel.cjs",[[260,"revogr-filter-panel",{"filterNames":[16],"filterEntities":[16],"filterCaptions":[16],"disableDynamicFiltering":[4,"disable-dynamic-filtering"],"closeOnOutsideClick":[4,"close-on-outside-click"],"allowDuplicateOperators":[4,"allow-duplicate-operators"],"isFilterIdSet":[32],"filterId":[32],"currentFilterId":[32],"currentFilterType":[32],"changes":[32],"filterItems":[32],"draggedFilterId":[32],"dragOverFilterId":[32],"show":[64],"getChanges":[64]},[[5,"mousedown","onMouseDown"]]]]],["revogr-clipboard_3.cjs",[[0,"revogr-clipboard",{"readonly":[4],"doCopy":[64]},[[4,"paste","onPaste"],[4,"copy","copyStarted"],[4,"cut","cutStarted"]]],[0,"revogr-edit",{"editCell":[16],"column":[16],"editor":[16],"saveOnClose":[4,"save-on-close"],"additionalData":[8,"additional-data"],"cancelChanges":[64],"beforeDisconnect":[64]}],[0,"revogr-order-editor",{"parent":[16],"dimensionRow":[16],"dimensionCol":[16],"dataStore":[16],"rowType":[1,"row-type"],"dragStart":[64],"endOrder":[64],"clearOrder":[64]}]]],["revogr-data_4.cjs",[[260,"revogr-data",{"readonly":[4],"range":[4],"rowClass":[1,"row-class"],"additionalData":[8,"additional-data"],"rowSelectionStore":[16],"viewportRow":[16],"viewportCol":[16],"dimensionRow":[16],"colData":[16],"dataStore":[16],"type":[513],"colType":[513,"col-type"],"jobsBeforeRender":[16],"providers":[32],"updateCell":[64]},null,{"dataStore":[{"onDataStoreChange":0}],"colData":[{"onColDataChange":0}]}],[0,"revogr-header",{"viewportCol":[16],"dimensionCol":[16],"selectionStore":[16],"groups":[16],"groupingDepth":[2,"grouping-depth"],"readonly":[4],"canResize":[4,"can-resize"],"resizeHandler":[16],"colData":[16],"columnFilter":[4,"column-filter"],"type":[1],"additionalData":[8,"additional-data"]}],[260,"revogr-viewport-scroll",{"rowHeader":[4,"row-header"],"contentWidth":[2,"content-width"],"contentHeight":[2,"content-height"],"colType":[1,"col-type"],"noHorizontalScrollTransfer":[4,"no-horizontal-scroll-transfer"],"setScroll":[64],"changeScroll":[64],"applyScroll":[64]},[[0,"mousewheel-vertical","mousewheelVertical"],[0,"mousewheel-horizontal","mousewheelHorizontal"],[0,"scroll-coordinate","scrollApply"]]],[0,"vnode-html",{"redraw":[16]}]]],["revogr-attribution_7.cjs",[[0,"revogr-row-headers",{"height":[2],"dataPorts":[16],"headerProp":[16],"rowClass":[1,"row-class"],"resize":[4],"rowHeaderColumn":[16],"additionalData":[8,"additional-data"],"jobsBeforeRender":[16]}],[260,"revogr-overlay-selection",{"readonly":[4],"range":[4],"canDrag":[4,"can-drag"],"useClipboard":[4,"use-clipboard"],"selectionStore":[16],"dimensionRow":[16],"dimensionCol":[16],"dataStore":[16],"colData":[16],"lastCell":[16],"editors":[16],"applyChangesOnClose":[4,"apply-changes-on-close"],"additionalData":[8,"additional-data"],"isMobileDevice":[4,"is-mobile-device"]},[[5,"touchmove","onMouseMove"],[5,"mousemove","onMouseMove"],[5,"touchend","onMouseUp"],[5,"mouseup","onMouseUp"],[5,"mouseleave","onMouseUp"],[0,"dragstartcell","onCellDrag"],[4,"keyup","onKeyUp"],[4,"keydown","onKeyDown"]],{"selectionStore":[{"selectionServiceSet":0}],"dimensionRow":[{"createAutoFillService":0}],"dimensionCol":[{"createAutoFillService":0}],"dataStore":[{"columnServiceSet":0}],"colData":[{"columnServiceSet":0}]}],[0,"revogr-attribution"],[260,"revogr-focus",{"colType":[1,"col-type"],"rowType":[1,"row-type"],"selectionStore":[16],"dimensionRow":[16],"dimensionCol":[16],"dataStore":[16],"colData":[16],"focusTemplate":[16]}],[0,"revogr-scroll-virtual",{"dimension":[1],"realSize":[2,"real-size"],"virtualSize":[2,"virtual-size"],"clientSize":[2,"client-size"],"setScroll":[64],"changeScroll":[64]}],[0,"revogr-temp-range",{"selectionStore":[16],"dimensionRow":[16],"dimensionCol":[16]}],[0,"revogr-extra",{"nodes":[16],"update":[32],"refresh":[64]}]]]], options);
52
+ return index.bootstrapLazy([["revo-grid.cjs",[[260,"revo-grid",{"rowHeaders":[4,"row-headers"],"frameSize":[2,"frame-size"],"rowSize":[2,"row-size"],"colSize":[2,"col-size"],"range":[4],"readonly":[4],"resize":[4],"resizeRow":[4,"resize-row"],"noHorizontalScrollTransfer":[4,"no-horizontal-scroll-transfer"],"canFocus":[4,"can-focus"],"useClipboard":[4,"use-clipboard"],"columns":[16],"source":[16],"pinnedTopSource":[16],"pinnedBottomSource":[16],"rowDefinitions":[16],"editors":[16],"applyOnClose":[4,"apply-on-close"],"plugins":[16],"columnTypes":[16],"theme":[1537],"themeDefinitions":[16],"rowClass":[513,"row-class"],"autoSizeColumn":[4,"auto-size-column"],"filter":[4],"sorting":[16],"focusTemplate":[16],"canMoveColumns":[4,"can-move-columns"],"trimmedRows":[16],"exporting":[4],"grouping":[16],"stretch":[8],"additionalData":[16],"disableVirtualX":[4,"disable-virtual-x"],"virtualX":[16],"disableVirtualY":[4,"disable-virtual-y"],"hideAttribution":[4,"hide-attribution"],"jobsBeforeRender":[16],"registerVNode":[16],"accessible":[4],"rtl":[4],"canDrag":[4,"can-drag"],"refresh":[64],"setDataAt":[64],"scrollToRow":[64],"scrollToColumnIndex":[64],"scrollToColumnProp":[64],"updateColumns":[64],"addTrimmed":[64],"scrollToCoordinate":[64],"setCellEdit":[64],"setCellsFocus":[64],"getSource":[64],"getVisibleSource":[64],"getSourceStore":[64],"getColumnStore":[64],"updateColumnSorting":[64],"clearSorting":[64],"getColumns":[64],"clearFocus":[64],"getPlugins":[64],"getFocused":[64],"getContentSize":[64],"getSelectedRange":[64],"refreshExtraElements":[64],"getProviders":[64]},[[5,"touchstart","mousedownHandle"],[5,"mousedown","mousedownHandle"],[5,"touchend","mouseupHandle"],[5,"mouseup","mouseupHandle"],[0,"rowdragstartinit","onRowDragStarted"],[0,"rowdragendinit","onRowDragEnd"],[0,"roworderchange","onRowOrderChange"],[0,"rowdragmoveinit","onRowDrag"],[0,"rowdragmousemove","onRowMouseMove"],[0,"celleditapply","onCellEdit"],[0,"rangeeditapply","onRangeEdit"],[0,"selectionchangeinit","onRangeChanged"],[0,"rowdropinit","onRowDropped"],[0,"beforeheaderclick","onHeaderClick"],[0,"beforecellfocusinit","onCellFocus"]],{"columnTypes":[{"columnTypesChanged":0}],"columns":[{"columnChanged":0}],"disableVirtualX":[{"disableVirtualXChanged":0}],"virtualX":[{"virtualXChanged":0}],"rowSize":[{"rowSizeChanged":0}],"colSize":[{"colSizeChanged":0}],"theme":[{"themeChanged":0}],"themeDefinitions":[{"themeDefinitionsChanged":0}],"source":[{"dataSourceChanged":0}],"pinnedBottomSource":[{"dataSourceChanged":0}],"pinnedTopSource":[{"dataSourceChanged":0}],"disableVirtualY":[{"disableVirtualYChanged":0}],"rowDefinitions":[{"rowDefChanged":0}],"trimmedRows":[{"trimmedRowsChanged":0}],"grouping":[{"groupingChanged":0}],"stretch":[{"applyStretch":0}],"filter":[{"applyFilter":0}],"sorting":[{"applySorting":0}],"rowHeaders":[{"rowHeadersChange":0}],"resizeRow":[{"resizeRowChanged":0}],"registerVNode":[{"registerOutsideVNodes":0}],"additionalData":[{"additionalDataChanged":0}],"rtl":[{"rtlChanged":0}],"plugins":[{"pluginsChanged":0}]}]]],["revogr-filter-panel.cjs",[[260,"revogr-filter-panel",{"filterNames":[16],"filterEntities":[16],"filterCaptions":[16],"disableDynamicFiltering":[4,"disable-dynamic-filtering"],"closeOnOutsideClick":[4,"close-on-outside-click"],"allowDuplicateOperators":[4,"allow-duplicate-operators"],"isFilterIdSet":[32],"filterId":[32],"currentFilterId":[32],"currentFilterType":[32],"changes":[32],"filterItems":[32],"draggedFilterId":[32],"dragOverFilterId":[32],"show":[64],"getChanges":[64]},[[5,"mousedown","onMouseDown"]]]]],["revogr-clipboard_3.cjs",[[0,"revogr-clipboard",{"readonly":[4],"doCopy":[64]},[[4,"paste","onPaste"],[4,"copy","copyStarted"],[4,"cut","cutStarted"]]],[0,"revogr-edit",{"editCell":[16],"column":[16],"editor":[16],"saveOnClose":[4,"save-on-close"],"additionalData":[8,"additional-data"],"cancelChanges":[64],"beforeDisconnect":[64]}],[0,"revogr-order-editor",{"parent":[16],"dimensionRow":[16],"dimensionCol":[16],"dataStore":[16],"rowType":[1,"row-type"],"dragStart":[64],"endOrder":[64],"clearOrder":[64]}]]],["revogr-data_4.cjs",[[260,"revogr-data",{"readonly":[4],"range":[4],"rowClass":[1,"row-class"],"additionalData":[8,"additional-data"],"rowSelectionStore":[16],"viewportRow":[16],"viewportCol":[16],"dimensionRow":[16],"colData":[16],"dataStore":[16],"type":[513],"colType":[513,"col-type"],"jobsBeforeRender":[16],"providers":[32],"updateCell":[64]},null,{"dataStore":[{"onDataStoreChange":0}],"colData":[{"onColDataChange":0}]}],[0,"revogr-header",{"viewportCol":[16],"dimensionCol":[16],"selectionStore":[16],"groups":[16],"groupingDepth":[2,"grouping-depth"],"readonly":[4],"canResize":[4,"can-resize"],"resizeHandler":[16],"colData":[16],"columnFilter":[4,"column-filter"],"type":[1],"additionalData":[8,"additional-data"]}],[260,"revogr-viewport-scroll",{"rowHeader":[4,"row-header"],"contentWidth":[2,"content-width"],"contentHeight":[2,"content-height"],"colType":[1,"col-type"],"noHorizontalScrollTransfer":[4,"no-horizontal-scroll-transfer"],"setScroll":[64],"changeScroll":[64],"applyScroll":[64]},[[0,"mousewheel-vertical","mousewheelVertical"],[0,"mousewheel-horizontal","mousewheelHorizontal"],[0,"scroll-coordinate","scrollApply"]]],[0,"vnode-html",{"redraw":[16]}]]],["revogr-attribution_7.cjs",[[0,"revogr-row-headers",{"height":[2],"dataPorts":[16],"headerProp":[16],"rowClass":[1,"row-class"],"resize":[4],"rowHeaderColumn":[16],"additionalData":[8,"additional-data"],"jobsBeforeRender":[16]}],[260,"revogr-overlay-selection",{"readonly":[4],"range":[4],"canDrag":[4,"can-drag"],"useClipboard":[4,"use-clipboard"],"selectionStore":[16],"dimensionRow":[16],"dimensionCol":[16],"dataStore":[16],"colData":[16],"lastCell":[16],"editors":[16],"applyChangesOnClose":[4,"apply-changes-on-close"],"additionalData":[8,"additional-data"],"isMobileDevice":[4,"is-mobile-device"]},[[5,"touchmove","onMouseMove"],[5,"mousemove","onMouseMove"],[5,"touchend","onMouseUp"],[5,"mouseup","onMouseUp"],[5,"mouseleave","onMouseUp"],[0,"dragstartcell","onCellDrag"],[4,"keyup","onKeyUp"],[4,"keydown","onKeyDown"]],{"selectionStore":[{"selectionServiceSet":0}],"dimensionRow":[{"createAutoFillService":0}],"dimensionCol":[{"createAutoFillService":0}],"dataStore":[{"columnServiceSet":0}],"colData":[{"columnServiceSet":0}]}],[0,"revogr-attribution"],[260,"revogr-focus",{"colType":[1,"col-type"],"rowType":[1,"row-type"],"selectionStore":[16],"dimensionRow":[16],"dimensionCol":[16],"dataStore":[16],"colData":[16],"focusTemplate":[16]}],[0,"revogr-scroll-virtual",{"dimension":[1],"realSize":[2,"real-size"],"virtualSize":[2,"virtual-size"],"clientSize":[2,"client-size"],"setScroll":[64],"changeScroll":[64]}],[0,"revogr-temp-range",{"selectionStore":[16],"dimensionRow":[16],"dimensionCol":[16]}],[0,"revogr-extra",{"nodes":[16],"update":[32],"refresh":[64]}]]]], options);
53
53
  });
54
54
 
55
55
  exports.setNonce = index.setNonce;