@revolist/revogrid 3.1.8 → 3.1.90

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 (240) hide show
  1. package/custom-element/_baseIteratee.js +2070 -0
  2. package/custom-element/columnService.js +743 -0
  3. package/custom-element/consts.js +46 -0
  4. package/custom-element/data.store.js +545 -0
  5. package/custom-element/debounce.js +217 -0
  6. package/custom-element/dimension.helpers.js +340 -0
  7. package/custom-element/each.js +180 -0
  8. package/custom-element/filter.button.js +36 -0
  9. package/custom-element/identity.js +26 -0
  10. package/custom-element/index.d.ts +15 -98
  11. package/custom-element/index.js +18 -28962
  12. package/custom-element/isSymbol.js +220 -0
  13. package/custom-element/keys.js +561 -0
  14. package/custom-element/localScrollService.js +86 -0
  15. package/custom-element/resize-observer.js +25 -11
  16. package/custom-element/revo-grid.d.ts +11 -0
  17. package/custom-element/revo-grid.js +3662 -0
  18. package/custom-element/revogr-clipboard.d.ts +11 -0
  19. package/custom-element/revogr-clipboard.js +72 -0
  20. package/custom-element/revogr-data.d.ts +11 -0
  21. package/custom-element/revogr-data.js +9 -0
  22. package/custom-element/revogr-data2.js +171 -0
  23. package/custom-element/revogr-edit.d.ts +11 -0
  24. package/custom-element/revogr-edit.js +9 -0
  25. package/custom-element/revogr-edit2.js +402 -0
  26. package/custom-element/revogr-filter-panel.d.ts +11 -0
  27. package/custom-element/revogr-filter-panel.js +308 -0
  28. package/custom-element/revogr-focus.d.ts +11 -0
  29. package/custom-element/revogr-focus.js +9 -0
  30. package/custom-element/revogr-focus2.js +64 -0
  31. package/custom-element/revogr-header.d.ts +11 -0
  32. package/custom-element/revogr-header.js +9 -0
  33. package/custom-element/revogr-header2.js +591 -0
  34. package/custom-element/revogr-order-editor.d.ts +11 -0
  35. package/custom-element/revogr-order-editor.js +9 -0
  36. package/custom-element/revogr-order-editor2.js +190 -0
  37. package/custom-element/revogr-overlay-selection.d.ts +11 -0
  38. package/custom-element/revogr-overlay-selection.js +9 -0
  39. package/custom-element/revogr-overlay-selection2.js +741 -0
  40. package/custom-element/revogr-row-headers.d.ts +11 -0
  41. package/custom-element/revogr-row-headers.js +9 -0
  42. package/custom-element/revogr-row-headers2.js +403 -0
  43. package/custom-element/revogr-scroll-virtual.d.ts +11 -0
  44. package/custom-element/revogr-scroll-virtual.js +9 -0
  45. package/custom-element/revogr-scroll-virtual2.js +135 -0
  46. package/custom-element/revogr-temp-range.d.ts +11 -0
  47. package/custom-element/revogr-temp-range.js +9 -0
  48. package/custom-element/revogr-temp-range2.js +17275 -0
  49. package/custom-element/revogr-viewport-scroll.d.ts +11 -0
  50. package/custom-element/revogr-viewport-scroll.js +9 -0
  51. package/custom-element/revogr-viewport-scroll2.js +367 -0
  52. package/custom-element/selection.utils.js +106 -0
  53. package/custom-element/toInteger.js +107 -0
  54. package/custom-element/toNumber.js +105 -0
  55. package/custom-element/utils.js +69 -0
  56. package/dist/cjs/css-shim-9f5bc84d.js +9 -0
  57. package/dist/cjs/{debounce-e9b040d9.js → debounce-6cea2774.js} +4 -1
  58. package/dist/cjs/{dom-c8b6d1a7.js → dom-fcb646f0.js} +4 -1
  59. package/dist/cjs/{index-d3f67f2e.js → index-cb904e00.js} +214 -91
  60. package/dist/cjs/index.cjs.js +3 -0
  61. package/dist/cjs/loader.cjs.js +7 -4
  62. package/dist/cjs/{resize-observer-8dc80084.js → resize-observer-bf327d6a.js} +25 -10
  63. package/dist/cjs/revo-grid.cjs.js +13 -7
  64. package/dist/cjs/revo-grid_11.cjs.entry.js +277 -15
  65. package/dist/cjs/revogr-clipboard.cjs.entry.js +4 -1
  66. package/dist/cjs/revogr-filter-panel.cjs.entry.js +5 -2
  67. package/dist/collection/collection-manifest.json +2 -2
  68. package/dist/collection/components/button/button.js +3 -0
  69. package/dist/collection/components/clipboard/revogr-clipboard.js +3 -0
  70. package/dist/collection/components/data/cellRenderer.js +3 -0
  71. package/dist/collection/components/data/columnService.js +3 -0
  72. package/dist/collection/components/data/revogr-data.js +3 -0
  73. package/dist/collection/components/data/rowRenderer.js +3 -0
  74. package/dist/collection/components/header/headerCellRenderer.js +11 -1
  75. package/dist/collection/components/header/headerRenderer.js +3 -0
  76. package/dist/collection/components/header/revogr-header.js +3 -0
  77. package/dist/collection/components/order/orderRenderer.js +3 -0
  78. package/dist/collection/components/order/revogr-order-editor.js +3 -0
  79. package/dist/collection/components/order/rowOrderService.js +3 -0
  80. package/dist/collection/components/overlay/autofill.service.js +3 -0
  81. package/dist/collection/components/overlay/clipboard.service.js +3 -0
  82. package/dist/collection/components/overlay/editors/edit.utils.js +3 -0
  83. package/dist/collection/components/overlay/editors/text.js +3 -0
  84. package/dist/collection/components/overlay/keyboard.service.js +3 -0
  85. package/dist/collection/components/overlay/revogr-edit.js +3 -0
  86. package/dist/collection/components/overlay/revogr-overlay-selection.js +3 -0
  87. package/dist/collection/components/overlay/selection.utils.js +3 -0
  88. package/dist/collection/components/revo-grid/revo-grid-style.css +18 -1
  89. package/dist/collection/components/revo-grid/revo-grid.js +72 -15
  90. package/dist/collection/components/revo-grid/viewport.helpers.js +3 -0
  91. package/dist/collection/components/revo-grid/viewport.interfaces.js +3 -0
  92. package/dist/collection/components/revo-grid/viewport.js +3 -0
  93. package/dist/collection/components/revo-grid/viewport.resize.service.js +3 -0
  94. package/dist/collection/components/revo-grid/viewport.scrolling.service.js +3 -0
  95. package/dist/collection/components/revo-grid/viewport.section.js +4 -1
  96. package/dist/collection/components/revo-grid/viewport.service.js +3 -0
  97. package/dist/collection/components/rowHeaders/revogr-row-headers.js +3 -0
  98. package/dist/collection/components/rowHeaders/row-header-render.js +3 -0
  99. package/dist/collection/components/scroll/revogr-viewport-scroll.js +5 -2
  100. package/dist/collection/components/scrollable/revogr-scroll-virtual.js +3 -0
  101. package/dist/collection/components/selection-focus/revogr-focus.js +79 -7
  102. package/dist/collection/components/selection-temp-range/revogr-temp-range.js +3 -0
  103. package/dist/collection/global/global.js +3 -0
  104. package/dist/collection/index.js +3 -0
  105. package/dist/collection/plugins/autoSizeColumn.js +4 -1
  106. package/dist/collection/plugins/basePlugin.js +3 -0
  107. package/dist/collection/plugins/dispatcher.js +22 -0
  108. package/dist/collection/plugins/export/csv.js +3 -0
  109. package/dist/collection/plugins/export/export.plugin.js +3 -0
  110. package/dist/collection/plugins/export/types.js +3 -0
  111. package/dist/collection/plugins/filter/conditions/equal.js +3 -0
  112. package/dist/collection/plugins/filter/conditions/number/greaterThan.js +3 -0
  113. package/dist/collection/plugins/filter/conditions/number/greaterThanOrEqual.js +3 -0
  114. package/dist/collection/plugins/filter/conditions/number/lessThan.js +3 -0
  115. package/dist/collection/plugins/filter/conditions/number/lessThanOrEqual.js +3 -0
  116. package/dist/collection/plugins/filter/conditions/set.js +3 -0
  117. package/dist/collection/plugins/filter/conditions/string/beginswith.js +3 -0
  118. package/dist/collection/plugins/filter/conditions/string/contains.js +3 -0
  119. package/dist/collection/plugins/filter/filter.button.js +3 -0
  120. package/dist/collection/plugins/filter/filter.plugin.js +3 -0
  121. package/dist/collection/plugins/filter/filter.pop.js +3 -0
  122. package/dist/collection/plugins/filter/filter.service.js +3 -0
  123. package/dist/collection/plugins/filter/filter.types.js +3 -0
  124. package/dist/collection/plugins/groupingColumn/columnGroupsRenderer.js +3 -0
  125. package/dist/collection/plugins/groupingColumn/grouping.col.plugin.js +6 -3
  126. package/dist/collection/plugins/groupingColumn/headerGroupRenderer.js +3 -0
  127. package/dist/collection/plugins/groupingRow/grouping.const.js +3 -0
  128. package/dist/collection/plugins/groupingRow/grouping.row.expand.service.js +3 -0
  129. package/dist/collection/plugins/groupingRow/grouping.row.plugin.js +3 -0
  130. package/dist/collection/plugins/groupingRow/grouping.row.renderer.js +3 -0
  131. package/dist/collection/plugins/groupingRow/grouping.row.types.js +3 -0
  132. package/dist/collection/plugins/groupingRow/grouping.service.js +3 -0
  133. package/dist/collection/plugins/groupingRow/grouping.trimmed.service.js +3 -0
  134. package/dist/collection/plugins/moveColumn/columnDragPlugin.js +163 -0
  135. package/dist/collection/plugins/moveColumn/columnOrderHandler.js +63 -0
  136. package/dist/collection/plugins/sorting/sorting.plugin.js +3 -0
  137. package/dist/collection/plugins/sorting/sorting.sign.js +3 -0
  138. package/dist/collection/plugins/stretchPlugin.js +3 -0
  139. package/dist/collection/plugins/trimmed/trimmed.plugin.js +3 -0
  140. package/dist/collection/services/cell.helpers.js +3 -0
  141. package/dist/collection/services/column.data.provider.js +6 -3
  142. package/dist/collection/services/data.provider.js +3 -0
  143. package/dist/collection/services/dimension.provider.js +3 -0
  144. package/dist/collection/services/localScrollService.js +3 -0
  145. package/dist/collection/services/resizable.directive.js +5 -0
  146. package/dist/collection/services/selection.store.connector.js +3 -0
  147. package/dist/collection/services/viewport.provider.js +3 -0
  148. package/dist/collection/store/dataSource/data.proxy.js +3 -0
  149. package/dist/collection/store/dataSource/data.store.js +3 -0
  150. package/dist/collection/store/dimension/dimension.helpers.js +3 -0
  151. package/dist/collection/store/dimension/dimension.store.js +3 -0
  152. package/dist/collection/store/selection/selection.helpers.js +3 -0
  153. package/dist/collection/store/selection/selection.store.js +3 -0
  154. package/dist/collection/store/selection/selection.store.service.js +3 -0
  155. package/dist/collection/store/storeTypes.js +3 -0
  156. package/dist/collection/store/viewPort/viewport.helpers.js +3 -0
  157. package/dist/collection/store/viewPort/viewport.store.js +3 -0
  158. package/dist/collection/themeManager/theme.compact.js +3 -0
  159. package/dist/collection/themeManager/theme.default.js +3 -0
  160. package/dist/collection/themeManager/theme.material.js +3 -0
  161. package/dist/collection/themeManager/themeService.js +3 -0
  162. package/dist/collection/utils/closestPolifill.js +3 -0
  163. package/dist/collection/utils/consts.js +3 -0
  164. package/dist/collection/utils/generateAlphabetHeader.js +3 -0
  165. package/dist/collection/utils/keyCodes.js +3 -0
  166. package/dist/collection/utils/keyCodes.utils.js +3 -0
  167. package/dist/collection/utils/platform.js +3 -0
  168. package/dist/collection/utils/resizeObserver.js +3 -0
  169. package/dist/collection/utils/store.utils.js +3 -0
  170. package/dist/collection/utils/utils.js +3 -0
  171. package/dist/esm/css-shim-e1e1ea5e.js +7 -0
  172. package/dist/esm/{debounce-8dadcda7.js → debounce-e4e6dd45.js} +5 -2
  173. package/dist/esm/{dom-1b195079.js → dom-21bd1807.js} +4 -1
  174. package/dist/esm/{index-42c84e7c.js → index-6f753b3c.js} +214 -91
  175. package/dist/esm/index.js +3 -1
  176. package/dist/esm/loader.js +7 -4
  177. package/dist/esm/polyfills/css-shim.js +1 -1
  178. package/dist/esm/{resize-observer-56b7b34f.js → resize-observer-00c48d78.js} +25 -11
  179. package/dist/esm/revo-grid.js +13 -7
  180. package/dist/esm/revo-grid_11.entry.js +277 -15
  181. package/dist/esm/revogr-clipboard.entry.js +4 -1
  182. package/dist/esm/revogr-filter-panel.entry.js +5 -2
  183. package/dist/esm-es5/css-shim-e1e1ea5e.js +4 -0
  184. package/dist/esm-es5/{debounce-8dadcda7.js → debounce-e4e6dd45.js} +4 -1
  185. package/dist/esm-es5/{dom-1b195079.js → dom-21bd1807.js} +3 -0
  186. package/dist/esm-es5/index-6f753b3c.js +4 -0
  187. package/dist/esm-es5/index.js +3 -0
  188. package/dist/esm-es5/loader.js +4 -1
  189. package/dist/esm-es5/resize-observer-00c48d78.js +4 -0
  190. package/dist/esm-es5/revo-grid.js +4 -1
  191. package/dist/esm-es5/revo-grid_11.entry.js +4 -1
  192. package/dist/esm-es5/revogr-clipboard.entry.js +4 -1
  193. package/dist/esm-es5/revogr-filter-panel.entry.js +4 -1
  194. package/dist/revo-grid/css-shim-bcf89cc0.system.js +4 -0
  195. package/dist/revo-grid/css-shim-e1e1ea5e.js +4 -0
  196. package/dist/revo-grid/{debounce-f40a88f6.system.js → debounce-5a33c710.system.js} +4 -1
  197. package/dist/revo-grid/{debounce-d097578d.js → debounce-726bdadb.js} +4 -1
  198. package/dist/revo-grid/{dom-1b195079.js → dom-21bd1807.js} +3 -0
  199. package/dist/revo-grid/{dom-ee2dd1b3.system.js → dom-726246e2.system.js} +3 -0
  200. package/dist/revo-grid/index-f14b41a0.system.js +5 -0
  201. package/dist/revo-grid/index-f30d1de1.js +5 -0
  202. package/dist/revo-grid/index.esm.js +3 -0
  203. package/dist/revo-grid/index.system.js +3 -0
  204. package/dist/revo-grid/resize-observer-00c48d78.js +4 -0
  205. package/dist/revo-grid/resize-observer-8af0bc0e.system.js +4 -0
  206. package/dist/revo-grid/revo-grid.esm.js +4 -1
  207. package/dist/revo-grid/revo-grid.js +3 -2
  208. package/dist/revo-grid/revo-grid.system.js +4 -1
  209. package/dist/revo-grid/revo-grid_11.entry.js +4 -1
  210. package/dist/revo-grid/revo-grid_11.system.entry.js +4 -1
  211. package/dist/revo-grid/revogr-clipboard.entry.js +4 -1
  212. package/dist/revo-grid/revogr-clipboard.system.entry.js +4 -1
  213. package/dist/revo-grid/revogr-filter-panel.entry.js +4 -1
  214. package/dist/revo-grid/revogr-filter-panel.system.entry.js +4 -1
  215. package/dist/types/components/revo-grid/revo-grid.d.ts +13 -0
  216. package/dist/types/components/selection-focus/revogr-focus.d.ts +8 -0
  217. package/dist/types/components.d.ts +129 -61
  218. package/dist/types/plugins/dispatcher.d.ts +10 -0
  219. package/dist/types/plugins/groupingColumn/grouping.col.plugin.d.ts +1 -1
  220. package/dist/types/plugins/moveColumn/columnDragPlugin.d.ts +54 -0
  221. package/dist/types/plugins/moveColumn/columnOrderHandler.d.ts +15 -0
  222. package/dist/types/services/resizable.directive.d.ts +1 -1
  223. package/dist/types/stencil-public-runtime.d.ts +189 -186
  224. package/loader/cdn.js +3 -1
  225. package/loader/index.cjs.js +3 -1
  226. package/loader/index.d.ts +0 -1
  227. package/loader/index.es2017.js +3 -1
  228. package/loader/index.js +3 -1
  229. package/package.json +23 -21
  230. package/dist/cjs/css-shim-e33df79c.js +0 -6
  231. package/dist/esm/css-shim-8d75038b.js +0 -4
  232. package/dist/esm-es5/css-shim-8d75038b.js +0 -1
  233. package/dist/esm-es5/index-42c84e7c.js +0 -1
  234. package/dist/esm-es5/resize-observer-56b7b34f.js +0 -1
  235. package/dist/revo-grid/css-shim-88bfb262.system.js +0 -1
  236. package/dist/revo-grid/css-shim-8d75038b.js +0 -1
  237. package/dist/revo-grid/index-a15e7527.system.js +0 -1
  238. package/dist/revo-grid/index-a7f99799.js +0 -1
  239. package/dist/revo-grid/resize-observer-56b7b34f.js +0 -1
  240. package/dist/revo-grid/resize-observer-7a7b9757.system.js +0 -1
@@ -33,6 +33,10 @@ export namespace Components {
33
33
  * When true cell focus appear.
34
34
  */
35
35
  "canFocus": boolean;
36
+ /**
37
+ * Enables column move plugin Can be boolean
38
+ */
39
+ "canMoveColumns": boolean;
36
40
  /**
37
41
  * Clear current grid focus
38
42
  */
@@ -247,11 +251,13 @@ export namespace Components {
247
251
  "uuid": string;
248
252
  }
249
253
  interface RevogrFocus {
250
- "dimensionCol": Observable<RevoGrid.DimensionSettingsState>;
251
- "dimensionRow": Observable<RevoGrid.DimensionSettingsState>;
254
+ "colData": ColumnSource;
252
255
  /**
253
256
  * Dynamic stores
254
257
  */
258
+ "dataStore": RowSource;
259
+ "dimensionCol": Observable<RevoGrid.DimensionSettingsState>;
260
+ "dimensionRow": Observable<RevoGrid.DimensionSettingsState>;
255
261
  "selectionStore": Observable<Selection.SelectionStoreState>;
256
262
  }
257
263
  interface RevogrHeader {
@@ -342,6 +348,54 @@ export namespace Components {
342
348
  "setScroll": (e: RevoGrid.ViewPortScrollEvent) => Promise<void>;
343
349
  }
344
350
  }
351
+ export interface RevoGridCustomEvent<T> extends CustomEvent<T> {
352
+ detail: T;
353
+ target: HTMLRevoGridElement;
354
+ }
355
+ export interface RevogrClipboardCustomEvent<T> extends CustomEvent<T> {
356
+ detail: T;
357
+ target: HTMLRevogrClipboardElement;
358
+ }
359
+ export interface RevogrDataCustomEvent<T> extends CustomEvent<T> {
360
+ detail: T;
361
+ target: HTMLRevogrDataElement;
362
+ }
363
+ export interface RevogrEditCustomEvent<T> extends CustomEvent<T> {
364
+ detail: T;
365
+ target: HTMLRevogrEditElement;
366
+ }
367
+ export interface RevogrFilterPanelCustomEvent<T> extends CustomEvent<T> {
368
+ detail: T;
369
+ target: HTMLRevogrFilterPanelElement;
370
+ }
371
+ export interface RevogrFocusCustomEvent<T> extends CustomEvent<T> {
372
+ detail: T;
373
+ target: HTMLRevogrFocusElement;
374
+ }
375
+ export interface RevogrHeaderCustomEvent<T> extends CustomEvent<T> {
376
+ detail: T;
377
+ target: HTMLRevogrHeaderElement;
378
+ }
379
+ export interface RevogrOrderEditorCustomEvent<T> extends CustomEvent<T> {
380
+ detail: T;
381
+ target: HTMLRevogrOrderEditorElement;
382
+ }
383
+ export interface RevogrOverlaySelectionCustomEvent<T> extends CustomEvent<T> {
384
+ detail: T;
385
+ target: HTMLRevogrOverlaySelectionElement;
386
+ }
387
+ export interface RevogrRowHeadersCustomEvent<T> extends CustomEvent<T> {
388
+ detail: T;
389
+ target: HTMLRevogrRowHeadersElement;
390
+ }
391
+ export interface RevogrScrollVirtualCustomEvent<T> extends CustomEvent<T> {
392
+ detail: T;
393
+ target: HTMLRevogrScrollVirtualElement;
394
+ }
395
+ export interface RevogrViewportScrollCustomEvent<T> extends CustomEvent<T> {
396
+ detail: T;
397
+ target: HTMLRevogrViewportScrollElement;
398
+ }
345
399
  declare global {
346
400
  interface HTMLRevoGridElement extends Components.RevoGrid, HTMLStencilElement {
347
401
  }
@@ -447,6 +501,10 @@ declare namespace LocalJSX {
447
501
  * When true cell focus appear.
448
502
  */
449
503
  "canFocus"?: boolean;
504
+ /**
505
+ * Enables column move plugin Can be boolean
506
+ */
507
+ "canMoveColumns"?: boolean;
450
508
  /**
451
509
  * Indicates default column size.
452
510
  */
@@ -482,81 +540,85 @@ declare namespace LocalJSX {
482
540
  /**
483
541
  * After column resize Get resized columns
484
542
  */
485
- "onAftercolumnresize"?: (event: CustomEvent<Record<RevoGrid.ColumnProp, RevoGrid.ColumnRegular>>) => void;
543
+ "onAftercolumnresize"?: (event: RevoGridCustomEvent<Record<RevoGrid.ColumnProp, RevoGrid.ColumnRegular>>) => void;
486
544
  /**
487
545
  * Column updated
488
546
  */
489
- "onAftercolumnsset"?: (event: CustomEvent<{
547
+ "onAftercolumnsset"?: (event: RevoGridCustomEvent<{
490
548
  columns: ColumnCollection;
491
549
  order: Record<RevoGrid.ColumnProp, 'asc' | 'desc'>;
492
550
  }>) => void;
493
551
  /**
494
552
  * After edit. Triggered when after data applied or Range changeged.
495
553
  */
496
- "onAfteredit"?: (event: CustomEvent<Edition.BeforeSaveDataDetails | Edition.BeforeRangeSaveDataDetails>) => void;
554
+ "onAfteredit"?: (event: RevoGridCustomEvent<Edition.BeforeSaveDataDetails | Edition.BeforeRangeSaveDataDetails>) => void;
555
+ /**
556
+ * Triggered after focus render finished. Can be used to access a focus element through @event.target
557
+ */
558
+ "onAfterfocus"?: (event: RevoGridCustomEvent<{ model: any; column: RevoGrid.ColumnRegular; }>) => void;
497
559
  /**
498
560
  * After rows updated
499
561
  */
500
- "onAftersourceset"?: (event: CustomEvent<{
562
+ "onAftersourceset"?: (event: RevoGridCustomEvent<{
501
563
  type: RevoGrid.DimensionRows;
502
564
  source: RevoGrid.DataType[];
503
565
  }>) => void;
504
566
  /**
505
567
  * Notify trimmed applied
506
568
  */
507
- "onAftertrimmed"?: (event: CustomEvent<any>) => void;
569
+ "onAftertrimmed"?: (event: RevoGridCustomEvent<any>) => void;
508
570
  /**
509
571
  * Before range apply. Triggered before range applied. Use e.preventDefault() to prevent range.
510
572
  */
511
- "onBeforeaange"?: (event: CustomEvent<Selection.ChangedRange>) => void;
573
+ "onBeforeaange"?: (event: RevoGridCustomEvent<Selection.ChangedRange>) => void;
512
574
  /**
513
575
  * Before autofill. Triggered before autofill applied. Use e.preventDefault() to prevent edit data apply.
514
576
  */
515
- "onBeforeautofill"?: (event: CustomEvent<Selection.ChangedRange>) => void;
577
+ "onBeforeautofill"?: (event: RevoGridCustomEvent<Selection.ChangedRange>) => void;
516
578
  /**
517
579
  * Before cell focus changed. Use e.preventDefault() to prevent cell focus change.
518
580
  */
519
- "onBeforecellfocus"?: (event: CustomEvent<Edition.BeforeSaveDataDetails>) => void;
581
+ "onBeforecellfocus"?: (event: RevoGridCustomEvent<Edition.BeforeSaveDataDetails>) => void;
520
582
  /**
521
583
  * Before column applied but after column set gathered and viewport updated
522
584
  */
523
- "onBeforecolumnapplied"?: (event: CustomEvent<ColumnCollection>) => void;
585
+ "onBeforecolumnapplied"?: (event: RevoGridCustomEvent<ColumnCollection>) => void;
524
586
  /**
525
587
  * Before column update
526
588
  */
527
- "onBeforecolumnsset"?: (event: CustomEvent<ColumnCollection>) => void;
589
+ "onBeforecolumnsset"?: (event: RevoGridCustomEvent<ColumnCollection>) => void;
528
590
  /**
529
591
  * Before edit event. Triggered before edit data applied. Use e.preventDefault() to prevent edit data set and use you own. Use e.val = {your value} to replace edit result with your own.
530
592
  */
531
- "onBeforeedit"?: (event: CustomEvent<Edition.BeforeSaveDataDetails>) => void;
593
+ "onBeforeedit"?: (event: RevoGridCustomEvent<Edition.BeforeSaveDataDetails>) => void;
532
594
  /**
533
595
  * Before edit started Use e.preventDefault() to prevent edit
534
596
  */
535
- "onBeforeeditstart"?: (event: CustomEvent<Edition.BeforeSaveDataDetails>) => void;
597
+ "onBeforeeditstart"?: (event: RevoGridCustomEvent<Edition.BeforeSaveDataDetails>) => void;
536
598
  /**
537
599
  * Before export Use e.preventDefault() to prevent export Replace data in Event in case you want to modify it in export
538
600
  */
539
- "onBeforeexport"?: (event: CustomEvent<DataInput>) => void;
601
+ "onBeforeexport"?: (event: RevoGridCustomEvent<DataInput>) => void;
540
602
  /**
541
603
  * Before filter applied to data source Use e.preventDefault() to prevent cell focus change Update @collection if you wish to change filters
542
604
  */
543
- "onBeforefilterapply"?: (event: CustomEvent<{ collection: FilterCollection }>) => void;
605
+ "onBeforefilterapply"?: (event: RevoGridCustomEvent<{ collection: FilterCollection }>) => void;
544
606
  /**
545
607
  * Before filter trimmed values Use e.preventDefault() to prevent value trimming and filter apply Update @collection if you wish to change filters Update @itemsToFilter if you wish to filter indexes of trimming
546
608
  */
547
- "onBeforefiltertrimmed"?: (event: CustomEvent<{ collection: FilterCollection; itemsToFilter: Record<number, boolean> }>) => void;
609
+ "onBeforefiltertrimmed"?: (event: RevoGridCustomEvent<{ collection: FilterCollection; itemsToFilter: Record<number, boolean> }>) => void;
548
610
  /**
549
611
  * Before grid focus lost happened. Use e.preventDefault() to prevent cell focus change.
550
612
  */
551
- "onBeforefocuslost"?: (event: CustomEvent<FocusedData|null>) => void;
613
+ "onBeforefocuslost"?: (event: RevoGridCustomEvent<FocusedData|null>) => void;
552
614
  /**
553
615
  * Before range edit event. Triggered before range data applied, when range selection happened. Use e.preventDefault() to prevent edit data set and use you own.
554
616
  */
555
- "onBeforerangeedit"?: (event: CustomEvent<Edition.BeforeRangeSaveDataDetails>) => void;
617
+ "onBeforerangeedit"?: (event: RevoGridCustomEvent<Edition.BeforeRangeSaveDataDetails>) => void;
556
618
  /**
557
619
  * Before sorting event. Initial sorting triggered, if this event stops no other event called. Use e.preventDefault() to prevent sorting.
558
620
  */
559
- "onBeforesorting"?: (event: CustomEvent<{
621
+ "onBeforesorting"?: (event: RevoGridCustomEvent<{
560
622
  column: RevoGrid.ColumnRegular;
561
623
  order: 'desc' | 'asc';
562
624
  additive: boolean;
@@ -564,7 +626,7 @@ declare namespace LocalJSX {
564
626
  /**
565
627
  * Before sorting apply. Use e.preventDefault() to prevent sorting data change.
566
628
  */
567
- "onBeforesortingapply"?: (event: CustomEvent<{
629
+ "onBeforesortingapply"?: (event: RevoGridCustomEvent<{
568
630
  column: RevoGrid.ColumnRegular;
569
631
  order: 'desc' | 'asc';
570
632
  additive: boolean;
@@ -572,34 +634,34 @@ declare namespace LocalJSX {
572
634
  /**
573
635
  * Before data apply. You can override data source here
574
636
  */
575
- "onBeforesourceset"?: (event: CustomEvent<{
637
+ "onBeforesourceset"?: (event: RevoGridCustomEvent<{
576
638
  type: RevoGrid.DimensionRows;
577
639
  source: RevoGrid.DataType[];
578
640
  }>) => void;
579
641
  /**
580
642
  * Before source update sorting apply. Use this event if you intended to prevent sorting on data update. Use e.preventDefault() to prevent sorting data change during rows source update.
581
643
  */
582
- "onBeforesourcesortingapply"?: (event: CustomEvent<any>) => void;
644
+ "onBeforesourcesortingapply"?: (event: RevoGridCustomEvent<any>) => void;
583
645
  /**
584
646
  * Before trimmed values Use e.preventDefault() to prevent value trimming Update @trimmed if you wish to filter indexes of trimming
585
647
  */
586
- "onBeforetrimmed"?: (event: CustomEvent<{ trimmed: Record<number, boolean>; trimmedType: string; type: string }>) => void;
648
+ "onBeforetrimmed"?: (event: RevoGridCustomEvent<{ trimmed: Record<number, boolean>; trimmedType: string; type: string }>) => void;
587
649
  /**
588
650
  * On header click.
589
651
  */
590
- "onHeaderclick"?: (event: CustomEvent<RevoGrid.ColumnRegular>) => void;
652
+ "onHeaderclick"?: (event: RevoGridCustomEvent<RevoGrid.ColumnRegular>) => void;
591
653
  /**
592
654
  * Row order change started. Use e.preventDefault() to prevent rgRow order change. Use e.text = 'new name' to change item name on start.
593
655
  */
594
- "onRowdragstart"?: (event: CustomEvent<{ pos: RevoGrid.PositionItem; text: string }>) => void;
656
+ "onRowdragstart"?: (event: RevoGridCustomEvent<{ pos: RevoGrid.PositionItem; text: string }>) => void;
595
657
  /**
596
658
  * Before rgRow order apply. Use e.preventDefault() to prevent rgRow order change.
597
659
  */
598
- "onRoworderchanged"?: (event: CustomEvent<{ from: number; to: number }>) => void;
660
+ "onRoworderchanged"?: (event: RevoGridCustomEvent<{ from: number; to: number }>) => void;
599
661
  /**
600
662
  * Triggered when view port scrolled
601
663
  */
602
- "onViewportscroll"?: (event: CustomEvent<RevoGrid.ViewPortScrollEvent>) => void;
664
+ "onViewportscroll"?: (event: RevoGridCustomEvent<RevoGrid.ViewPortScrollEvent>) => void;
603
665
  /**
604
666
  * Pinned bottom Source: {[T in ColumnProp]: any} - defines pinned bottom rows data source.
605
667
  */
@@ -663,8 +725,8 @@ declare namespace LocalJSX {
663
725
  "useClipboard"?: boolean;
664
726
  }
665
727
  interface RevogrClipboard {
666
- "onCopyRegion"?: (event: CustomEvent<DataTransfer>) => void;
667
- "onPasteRegion"?: (event: CustomEvent<string[][]>) => void;
728
+ "onCopyRegion"?: (event: RevogrClipboardCustomEvent<DataTransfer>) => void;
729
+ "onPasteRegion"?: (event: RevogrClipboardCustomEvent<string[][]>) => void;
668
730
  }
669
731
  interface RevogrData {
670
732
  "canDrag"?: boolean;
@@ -674,7 +736,7 @@ declare namespace LocalJSX {
674
736
  "colData"?: ColumnSource;
675
737
  "dataStore"?: RowSource;
676
738
  "dimensionRow"?: Observable<RevoGrid.DimensionSettingsState>;
677
- "onDragStartCell"?: (event: CustomEvent<MouseEvent>) => void;
739
+ "onDragStartCell"?: (event: RevogrDataCustomEvent<MouseEvent>) => void;
678
740
  "range"?: boolean;
679
741
  "readonly"?: boolean;
680
742
  "rowClass"?: string;
@@ -689,11 +751,11 @@ declare namespace LocalJSX {
689
751
  * Custom editors register
690
752
  */
691
753
  "editor"?: Edition.EditorCtr | null;
692
- "onCellEdit"?: (event: CustomEvent<Edition.SaveDataDetails>) => void;
754
+ "onCellEdit"?: (event: RevogrEditCustomEvent<Edition.SaveDataDetails>) => void;
693
755
  /**
694
756
  * Close editor event
695
757
  */
696
- "onCloseEdit"?: (event: CustomEvent<boolean | undefined>) => void;
758
+ "onCloseEdit"?: (event: RevogrEditCustomEvent<boolean | undefined>) => void;
697
759
  }
698
760
  interface RevogrFilterPanel {
699
761
  "disableDynamicFiltering"?: boolean;
@@ -702,16 +764,22 @@ declare namespace LocalJSX {
702
764
  "filterItems"?: MultiFilterItem;
703
765
  "filterNames"?: Record<string, string>;
704
766
  "filterTypes"?: Record<string, string[]>;
705
- "onFilterChange"?: (event: CustomEvent<MultiFilterItem>) => void;
767
+ "onFilterChange"?: (event: RevogrFilterPanelCustomEvent<MultiFilterItem>) => void;
706
768
  "uuid"?: string;
707
769
  }
708
770
  interface RevogrFocus {
709
- "dimensionCol"?: Observable<RevoGrid.DimensionSettingsState>;
710
- "dimensionRow"?: Observable<RevoGrid.DimensionSettingsState>;
771
+ "colData": ColumnSource;
711
772
  /**
712
773
  * Dynamic stores
713
774
  */
714
- "selectionStore"?: Observable<Selection.SelectionStoreState>;
775
+ "dataStore": RowSource;
776
+ "dimensionCol": Observable<RevoGrid.DimensionSettingsState>;
777
+ "dimensionRow": Observable<RevoGrid.DimensionSettingsState>;
778
+ "onAfterfocus"?: (event: RevogrFocusCustomEvent<{
779
+ model: any;
780
+ column: RevoGrid.ColumnRegular;
781
+ }>) => void;
782
+ "selectionStore": Observable<Selection.SelectionStoreState>;
715
783
  }
716
784
  interface RevogrHeader {
717
785
  "canResize"?: boolean;
@@ -720,9 +788,9 @@ declare namespace LocalJSX {
720
788
  "dimensionCol"?: Observable<RevoGrid.DimensionSettingsState>;
721
789
  "groupingDepth"?: number;
722
790
  "groups"?: Groups;
723
- "onHeaderdblClick"?: (event: CustomEvent<RevoGrid.InitialHeaderClick>) => void;
724
- "onHeaderresize"?: (event: CustomEvent<RevoGrid.ViewSettingSizeProp>) => void;
725
- "onInitialHeaderClick"?: (event: CustomEvent<RevoGrid.InitialHeaderClick>) => void;
791
+ "onHeaderdblClick"?: (event: RevogrHeaderCustomEvent<RevoGrid.InitialHeaderClick>) => void;
792
+ "onHeaderresize"?: (event: RevogrHeaderCustomEvent<RevoGrid.ViewSettingSizeProp>) => void;
793
+ "onInitialHeaderClick"?: (event: RevogrHeaderCustomEvent<RevoGrid.InitialHeaderClick>) => void;
726
794
  "parent"?: string;
727
795
  "selectionStore"?: Observable<Selection.SelectionStoreState>;
728
796
  "viewportCol"?: Observable<RevoGrid.ViewportState>;
@@ -737,19 +805,19 @@ declare namespace LocalJSX {
737
805
  /**
738
806
  * Row dragged, new range ready to be applied
739
807
  */
740
- "onInitialRowDropped"?: (event: CustomEvent<{ from: number; to: number }>) => void;
808
+ "onInitialRowDropped"?: (event: RevogrOrderEditorCustomEvent<{ from: number; to: number }>) => void;
741
809
  /**
742
810
  * Row move
743
811
  */
744
- "onInternalRowDrag"?: (event: CustomEvent<RevoGrid.PositionItem>) => void;
812
+ "onInternalRowDrag"?: (event: RevogrOrderEditorCustomEvent<RevoGrid.PositionItem>) => void;
745
813
  /**
746
814
  * Row drag ended
747
815
  */
748
- "onInternalRowDragEnd"?: (event: CustomEvent<any>) => void;
816
+ "onInternalRowDragEnd"?: (event: RevogrOrderEditorCustomEvent<any>) => void;
749
817
  /**
750
818
  * Row drag started
751
819
  */
752
- "onInternalRowDragStart"?: (event: CustomEvent<{
820
+ "onInternalRowDragStart"?: (event: RevogrOrderEditorCustomEvent<{
753
821
  cell: Selection.Cell;
754
822
  text: string;
755
823
  pos: RevoGrid.PositionItem;
@@ -758,7 +826,7 @@ declare namespace LocalJSX {
758
826
  /**
759
827
  * Row mouse move
760
828
  */
761
- "onInternalRowMouseMove"?: (event: CustomEvent<Selection.Cell>) => void;
829
+ "onInternalRowMouseMove"?: (event: RevogrOrderEditorCustomEvent<Selection.Cell>) => void;
762
830
  "parent"?: HTMLElement;
763
831
  }
764
832
  interface RevogrOverlaySelection {
@@ -778,22 +846,22 @@ declare namespace LocalJSX {
778
846
  * Last cell position
779
847
  */
780
848
  "lastCell"?: Selection.Cell;
781
- "onFocusCell"?: (event: CustomEvent<Selection.FocusedCells>) => void;
782
- "onInternalCellEdit"?: (event: CustomEvent<Edition.BeforeSaveDataDetails>) => void;
783
- "onInternalCopy"?: (event: CustomEvent<any>) => void;
784
- "onInternalFocusCell"?: (event: CustomEvent<Edition.BeforeSaveDataDetails>) => void;
785
- "onInternalPaste"?: (event: CustomEvent<any>) => void;
849
+ "onFocusCell"?: (event: RevogrOverlaySelectionCustomEvent<Selection.FocusedCells>) => void;
850
+ "onInternalCellEdit"?: (event: RevogrOverlaySelectionCustomEvent<Edition.BeforeSaveDataDetails>) => void;
851
+ "onInternalCopy"?: (event: RevogrOverlaySelectionCustomEvent<any>) => void;
852
+ "onInternalFocusCell"?: (event: RevogrOverlaySelectionCustomEvent<Edition.BeforeSaveDataDetails>) => void;
853
+ "onInternalPaste"?: (event: RevogrOverlaySelectionCustomEvent<any>) => void;
786
854
  /**
787
855
  * Range data apply
788
856
  */
789
- "onInternalRangeDataApply"?: (event: CustomEvent<Edition.BeforeRangeSaveDataDetails>) => void;
857
+ "onInternalRangeDataApply"?: (event: RevogrOverlaySelectionCustomEvent<Edition.BeforeRangeSaveDataDetails>) => void;
790
858
  /**
791
859
  * Selection range changed
792
860
  */
793
- "onInternalSelectionChanged"?: (event: CustomEvent<Selection.ChangedRange>) => void;
794
- "onSetEdit"?: (event: CustomEvent<Edition.BeforeEdit>) => void;
795
- "onSetRange"?: (event: CustomEvent<Selection.RangeArea>) => void;
796
- "onSetTempRange"?: (event: CustomEvent<Selection.TempRange | null>) => void;
861
+ "onInternalSelectionChanged"?: (event: RevogrOverlaySelectionCustomEvent<Selection.ChangedRange>) => void;
862
+ "onSetEdit"?: (event: RevogrOverlaySelectionCustomEvent<Edition.BeforeEdit>) => void;
863
+ "onSetRange"?: (event: RevogrOverlaySelectionCustomEvent<Selection.RangeArea>) => void;
864
+ "onSetTempRange"?: (event: RevogrOverlaySelectionCustomEvent<Selection.TempRange | null>) => void;
797
865
  "range"?: boolean;
798
866
  "readonly"?: boolean;
799
867
  /**
@@ -806,8 +874,8 @@ declare namespace LocalJSX {
806
874
  "dataPorts"?: ViewportData[];
807
875
  "headerProp"?: Record<string, any>;
808
876
  "height"?: number;
809
- "onElementToScroll"?: (event: CustomEvent<ElementScroll>) => void;
810
- "onScrollViewport"?: (event: CustomEvent<RevoGrid.ViewPortScrollEvent>) => void;
877
+ "onElementToScroll"?: (event: RevogrRowHeadersCustomEvent<ElementScroll>) => void;
878
+ "onScrollViewport"?: (event: RevogrRowHeadersCustomEvent<RevoGrid.ViewPortScrollEvent>) => void;
811
879
  "resize"?: boolean;
812
880
  "rowHeaderColumn"?: RevoGrid.RowHeaders;
813
881
  "uiid"?: string;
@@ -815,7 +883,7 @@ declare namespace LocalJSX {
815
883
  interface RevogrScrollVirtual {
816
884
  "dimension"?: RevoGrid.DimensionType;
817
885
  "dimensionStore"?: Observable<RevoGrid.DimensionSettingsState>;
818
- "onScrollVirtual"?: (event: CustomEvent<RevoGrid.ViewPortScrollEvent>) => void;
886
+ "onScrollVirtual"?: (event: RevogrScrollVirtualCustomEvent<RevoGrid.ViewPortScrollEvent>) => void;
819
887
  "viewportStore"?: Observable<RevoGrid.ViewportState>;
820
888
  }
821
889
  interface RevogrTempRange {
@@ -835,9 +903,9 @@ declare namespace LocalJSX {
835
903
  * Width of inner content
836
904
  */
837
905
  "contentWidth"?: number;
838
- "onResizeViewport"?: (event: CustomEvent<RevoGrid.ViewPortResizeEvent>) => void;
839
- "onScrollViewport"?: (event: CustomEvent<RevoGrid.ViewPortScrollEvent>) => void;
840
- "onScrollchange"?: (event: CustomEvent<{ type: RevoGrid.DimensionType; hasScroll: boolean; }>) => void;
906
+ "onResizeViewport"?: (event: RevogrViewportScrollCustomEvent<RevoGrid.ViewPortResizeEvent>) => void;
907
+ "onScrollViewport"?: (event: RevogrViewportScrollCustomEvent<RevoGrid.ViewPortScrollEvent>) => void;
908
+ "onScrollchange"?: (event: RevogrViewportScrollCustomEvent<{ type: RevoGrid.DimensionType; hasScroll: boolean; }>) => void;
841
909
  }
842
910
  interface IntrinsicElements {
843
911
  "revo-grid": RevoGrid;
@@ -0,0 +1,10 @@
1
+ declare type Target = HTMLElement | Element | null;
2
+ /**
3
+ * Dispatch custom event to element
4
+ */
5
+ export declare function dispatch(target: Target, eventName: string, detail?: any): CustomEvent;
6
+ /**
7
+ * Dispatch event by other event target
8
+ */
9
+ export declare function dispatchOnEvent(e: MouseEvent | CustomEvent, eventName: string, detail?: any): CustomEvent;
10
+ export {};
@@ -8,6 +8,6 @@ interface Group extends StoreGroup {
8
8
  export declare type ColumnGrouping = Record<RevoGrid.DimensionCols, Group[]>;
9
9
  export default class GroupingColumnPlugin extends BasePlugin {
10
10
  static gatherGroup<T extends ColumnCollection>(res: T, colData: RevoGrid.ColumnGrouping, collection: T, level?: number): T;
11
- static isColGrouping(colData: RevoGrid.ColumnGrouping | RevoGrid.ColumnRegular): colData is RevoGrid.ColumnGrouping;
12
11
  }
12
+ export declare function isColGrouping(colData: RevoGrid.ColumnGrouping | RevoGrid.ColumnRegular): colData is RevoGrid.ColumnGrouping;
13
13
  export {};
@@ -0,0 +1,54 @@
1
+ import { RevoGrid } from '../../interfaces';
2
+ import ColumnDataProvider from '../../services/column.data.provider';
3
+ import { DataProvider } from '../../services/data.provider';
4
+ import DimensionProvider from '../../services/dimension.provider';
5
+ import SelectionStoreConnector from '../../services/selection.store.connector';
6
+ import ViewportProvider from '../../services/viewport.provider';
7
+ import BasePlugin from '../basePlugin';
8
+ export declare type DragStartEventDetails = {
9
+ event: MouseEvent;
10
+ data: RevoGrid.ColumnDataSchema;
11
+ };
12
+ export declare type Providers = {
13
+ data: DataProvider;
14
+ dimension: DimensionProvider;
15
+ selection: SelectionStoreConnector;
16
+ column: ColumnDataProvider;
17
+ viewport: ViewportProvider;
18
+ };
19
+ declare type LocalSubscriptions = Record<string, LocalSubscription>;
20
+ declare type LocalSubscription = {
21
+ target: Element | Document;
22
+ callback(...params: any[]): void;
23
+ };
24
+ export declare type EventData = {
25
+ elRect: DOMRect;
26
+ gridRect: DOMRect;
27
+ scrollOffset: number;
28
+ type: RevoGrid.DimensionCols;
29
+ };
30
+ export default class ColumnPlugin extends BasePlugin {
31
+ protected revogrid: HTMLRevoGridElement;
32
+ private providers;
33
+ private moveFunc;
34
+ private staticDragData;
35
+ private dragData;
36
+ private readonly orderUi;
37
+ protected readonly localSubscriptions: LocalSubscriptions;
38
+ constructor(revogrid: HTMLRevoGridElement, providers: Providers);
39
+ dragStart({ event, data }: DragStartEventDetails): void;
40
+ doMove(e: MouseEvent): void;
41
+ move(e: MouseEvent): void;
42
+ onMouseOut(_: MouseEvent): void;
43
+ onMouseUp(e: MouseEvent): void;
44
+ private clearLocalSubscriptions;
45
+ clearOrder(): void;
46
+ /**
47
+ * Clearing subscription
48
+ */
49
+ protected clearSubscriptions(): void;
50
+ private getData;
51
+ private getDimension;
52
+ }
53
+ export declare function getLeftRelative(absoluteX: number, gridPos: number, offset: number): number;
54
+ export {};
@@ -0,0 +1,15 @@
1
+ export declare class ColumnOrderHandler {
2
+ private element?;
3
+ private autoscrollEl?;
4
+ private offset;
5
+ renderAutoscroll(_: MouseEvent, parent: HTMLElement | null): void;
6
+ autoscroll(pos: number, dataContainerSize: number, direction?: string): void;
7
+ start(e: MouseEvent, { dataEl, gridRect, scrollEl }: {
8
+ dataEl: HTMLElement;
9
+ gridRect: DOMRect;
10
+ scrollEl: Element;
11
+ }, dir?: 'top' | 'left'): void;
12
+ stop(): void;
13
+ showHandler(pos: number, size: number, direction?: string): void;
14
+ render(): any;
15
+ }
@@ -51,5 +51,5 @@ export declare class ResizeDirective {
51
51
  private bindMove;
52
52
  private unbindMove;
53
53
  }
54
- export declare const ResizableElement: (props: Partial<Props> & RevoGrid.CellProps, children: VNode[]) => VNode;
54
+ export declare const ResizableElement: (props: Partial<Props> & RevoGrid.CellProps, children: VNode[]) => any;
55
55
  export {};