@revolist/revogrid 3.1.6 → 3.2.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 (213) hide show
  1. package/dist/revo-grid/_baseIteratee-af30b221.js +2070 -0
  2. package/dist/{collection/global/global.js → revo-grid/app-globals-7e6866ba.js} +11 -2
  3. package/dist/{collection/components/data/columnService.js → revo-grid/columnService-91e552ba.js} +11 -6
  4. package/dist/revo-grid/consts-ef824e6f.js +46 -0
  5. package/dist/revo-grid/css-shim-5387c708.js +7 -0
  6. package/dist/revo-grid/data.store-3263fff9.js +557 -0
  7. package/dist/revo-grid/debounce-aaa4b4da.js +217 -0
  8. package/dist/revo-grid/dimension.helpers-a7944fc4.js +340 -0
  9. package/dist/revo-grid/dispatcher-891af82e.js +24 -0
  10. package/dist/{cjs/dom-c8b6d1a7.js → revo-grid/dom-21bd1807.js} +4 -3
  11. package/dist/revo-grid/each-0378e5a3.js +180 -0
  12. package/dist/{collection/plugins/filter/filter.button.js → revo-grid/filter.button-74c1cd9c.js} +16 -10
  13. package/dist/revo-grid/identity-c8c7d3d8.js +26 -0
  14. package/dist/revo-grid/index-8a604c17.js +3067 -0
  15. package/dist/revo-grid/index.esm.js +3 -0
  16. package/dist/revo-grid/isString-a51066b5.js +34 -0
  17. package/dist/revo-grid/isSymbol-e4b5dafe.js +247 -0
  18. package/dist/revo-grid/keyCodes.utils-bd06e3ba.js +299 -0
  19. package/dist/revo-grid/keys-70b7c240.js +561 -0
  20. package/dist/{collection/services/localScrollService.js → revo-grid/localScrollService-e9b73323.js} +8 -2
  21. package/dist/{esm/revo-grid_11.entry.js → revo-grid/lodash-a0ab4cdd.js} +13773 -24597
  22. package/dist/{cjs/resize-observer-8dc80084.js → revo-grid/resize-observer-00c48d78.js} +25 -14
  23. package/dist/revo-grid/revo-grid.entry.js +3484 -0
  24. package/dist/revo-grid/revo-grid.esm.js +133 -1
  25. package/dist/revo-grid/revogr-clipboard.entry.js +52 -1
  26. package/dist/revo-grid/revogr-data.entry.js +152 -0
  27. package/dist/revo-grid/revogr-edit.entry.js +105 -0
  28. package/dist/revo-grid/revogr-filter-panel.entry.js +277 -1
  29. package/dist/revo-grid/revogr-focus.entry.js +41 -0
  30. package/dist/revo-grid/revogr-header.entry.js +560 -0
  31. package/dist/revo-grid/revogr-order-editor.entry.js +175 -0
  32. package/dist/revo-grid/revogr-overlay-selection.entry.js +711 -0
  33. package/dist/revo-grid/revogr-row-headers.entry.js +73 -0
  34. package/dist/revo-grid/revogr-scroll-virtual.entry.js +114 -0
  35. package/dist/revo-grid/revogr-temp-range.entry.js +73 -0
  36. package/dist/revo-grid/revogr-viewport-scroll.entry.js +340 -0
  37. package/dist/revo-grid/selection.store.connector-2b613fd0.js +503 -0
  38. package/dist/{collection/components/overlay/selection.utils.js → revo-grid/selection.utils-a9932db6.js} +15 -9
  39. package/dist/revo-grid/shadow-css-602a09db.js +390 -0
  40. package/dist/{collection/themeManager/themeService.js → revo-grid/themeService-ddaaa364.js} +26 -6
  41. package/dist/revo-grid/toInteger-9e6cbfd2.js +107 -0
  42. package/dist/revo-grid/toNumber-913b0b72.js +105 -0
  43. package/dist/{collection/utils/utils.js → revo-grid/utils-2c3b3857.js} +13 -8
  44. package/dist/revo-grid/viewport.helpers-49d3f031.js +16 -0
  45. package/dist/{collection/store/viewPort/viewport.helpers.js → revo-grid/viewport.store-ffaaab6d.js} +135 -9
  46. package/dist/types/components/revo-grid/revo-grid.d.ts +6 -0
  47. package/dist/types/components.d.ts +110 -58
  48. package/dist/types/plugins/dispatcher.d.ts +10 -0
  49. package/dist/types/plugins/moveColumn/columnDragPlugin.d.ts +66 -0
  50. package/dist/types/plugins/moveColumn/columnOrderHandler.d.ts +12 -0
  51. package/dist/types/services/resizable.directive.d.ts +1 -1
  52. package/dist/types/stencil-public-runtime.d.ts +189 -186
  53. package/package.json +22 -20
  54. package/custom-element/index.js +0 -28972
  55. package/custom-element/resize-observer.js +0 -489
  56. package/dist/cjs/css-shim-e33df79c.js +0 -6
  57. package/dist/cjs/debounce-e9b040d9.js +0 -575
  58. package/dist/cjs/index-d3f67f2e.js +0 -1729
  59. package/dist/cjs/index.cjs.js +0 -2
  60. package/dist/cjs/loader.cjs.js +0 -35
  61. package/dist/cjs/revo-grid.cjs.js +0 -73
  62. package/dist/cjs/revo-grid_11.cjs.entry.js +0 -28056
  63. package/dist/cjs/revogr-clipboard.cjs.entry.js +0 -53
  64. package/dist/cjs/revogr-filter-panel.cjs.entry.js +0 -275
  65. package/dist/collection/collection-manifest.json +0 -25
  66. package/dist/collection/components/button/button.js +0 -4
  67. package/dist/collection/components/clipboard/revogr-clipboard.js +0 -121
  68. package/dist/collection/components/data/cellRenderer.js +0 -24
  69. package/dist/collection/components/data/revogr-data-style.css +0 -135
  70. package/dist/collection/components/data/revogr-data.js +0 -322
  71. package/dist/collection/components/data/rowRenderer.js +0 -6
  72. package/dist/collection/components/header/headerCellRenderer.js +0 -19
  73. package/dist/collection/components/header/headerRenderer.js +0 -45
  74. package/dist/collection/components/header/revogr-header-style.css +0 -198
  75. package/dist/collection/components/header/revogr-header.js +0 -297
  76. package/dist/collection/components/order/orderRenderer.js +0 -50
  77. package/dist/collection/components/order/revogr-order-editor.js +0 -358
  78. package/dist/collection/components/order/rowOrderService.js +0 -68
  79. package/dist/collection/components/overlay/autofill.service.js +0 -182
  80. package/dist/collection/components/overlay/clipboard.service.js +0 -39
  81. package/dist/collection/components/overlay/editors/edit.utils.js +0 -5
  82. package/dist/collection/components/overlay/editors/text.js +0 -35
  83. package/dist/collection/components/overlay/keyboard.service.js +0 -128
  84. package/dist/collection/components/overlay/revogr-edit-style.css +0 -86
  85. package/dist/collection/components/overlay/revogr-edit.js +0 -159
  86. package/dist/collection/components/overlay/revogr-overlay-selection.js +0 -726
  87. package/dist/collection/components/overlay/revogr-overlay-style.css +0 -98
  88. package/dist/collection/components/revo-grid/revo-grid-style.css +0 -527
  89. package/dist/collection/components/revo-grid/revo-grid.js +0 -2186
  90. package/dist/collection/components/revo-grid/viewport.helpers.js +0 -11
  91. package/dist/collection/components/revo-grid/viewport.interfaces.js +0 -1
  92. package/dist/collection/components/revo-grid/viewport.js +0 -18
  93. package/dist/collection/components/revo-grid/viewport.resize.service.js +0 -21
  94. package/dist/collection/components/revo-grid/viewport.scrolling.service.js +0 -60
  95. package/dist/collection/components/revo-grid/viewport.section.js +0 -28
  96. package/dist/collection/components/revo-grid/viewport.service.js +0 -209
  97. package/dist/collection/components/rowHeaders/revogr-row-headers.js +0 -210
  98. package/dist/collection/components/rowHeaders/row-header-render.js +0 -1
  99. package/dist/collection/components/scroll/revogr-viewport-scroll-style.css +0 -137
  100. package/dist/collection/components/scroll/revogr-viewport-scroll.js +0 -399
  101. package/dist/collection/components/scrollable/revogr-scroll-style.css +0 -104
  102. package/dist/collection/components/scrollable/revogr-scroll-virtual.js +0 -253
  103. package/dist/collection/components/selection-focus/revogr-focus-style.css +0 -77
  104. package/dist/collection/components/selection-focus/revogr-focus.js +0 -103
  105. package/dist/collection/components/selection-temp-range/revogr-temp-range-style.css +0 -98
  106. package/dist/collection/components/selection-temp-range/revogr-temp-range.js +0 -138
  107. package/dist/collection/index.js +0 -1
  108. package/dist/collection/plugins/autoSizeColumn.js +0 -230
  109. package/dist/collection/plugins/basePlugin.js +0 -27
  110. package/dist/collection/plugins/export/csv.js +0 -68
  111. package/dist/collection/plugins/export/export.plugin.js +0 -165
  112. package/dist/collection/plugins/export/types.js +0 -1
  113. package/dist/collection/plugins/filter/conditions/equal.js +0 -17
  114. package/dist/collection/plugins/filter/conditions/number/greaterThan.js +0 -10
  115. package/dist/collection/plugins/filter/conditions/number/greaterThanOrEqual.js +0 -7
  116. package/dist/collection/plugins/filter/conditions/number/lessThan.js +0 -12
  117. package/dist/collection/plugins/filter/conditions/number/lessThanOrEqual.js +0 -7
  118. package/dist/collection/plugins/filter/conditions/set.js +0 -3
  119. package/dist/collection/plugins/filter/conditions/string/beginswith.js +0 -17
  120. package/dist/collection/plugins/filter/conditions/string/contains.js +0 -18
  121. package/dist/collection/plugins/filter/filter.plugin.js +0 -256
  122. package/dist/collection/plugins/filter/filter.pop.js +0 -485
  123. package/dist/collection/plugins/filter/filter.service.js +0 -44
  124. package/dist/collection/plugins/filter/filter.style.css +0 -239
  125. package/dist/collection/plugins/filter/filter.types.js +0 -1
  126. package/dist/collection/plugins/groupingColumn/columnGroupsRenderer.js +0 -30
  127. package/dist/collection/plugins/groupingColumn/grouping.col.plugin.js +0 -36
  128. package/dist/collection/plugins/groupingColumn/headerGroupRenderer.js +0 -21
  129. package/dist/collection/plugins/groupingRow/grouping.const.js +0 -10
  130. package/dist/collection/plugins/groupingRow/grouping.row.expand.service.js +0 -76
  131. package/dist/collection/plugins/groupingRow/grouping.row.plugin.js +0 -258
  132. package/dist/collection/plugins/groupingRow/grouping.row.renderer.js +0 -29
  133. package/dist/collection/plugins/groupingRow/grouping.row.types.js +0 -1
  134. package/dist/collection/plugins/groupingRow/grouping.service.js +0 -155
  135. package/dist/collection/plugins/groupingRow/grouping.trimmed.service.js +0 -57
  136. package/dist/collection/plugins/sorting/sorting.plugin.js +0 -181
  137. package/dist/collection/plugins/sorting/sorting.sign.js +0 -6
  138. package/dist/collection/plugins/stretchPlugin.js +0 -68
  139. package/dist/collection/plugins/trimmed/trimmed.plugin.js +0 -32
  140. package/dist/collection/services/cell.helpers.js +0 -7
  141. package/dist/collection/services/column.data.provider.js +0 -188
  142. package/dist/collection/services/data.provider.js +0 -47
  143. package/dist/collection/services/dimension.provider.js +0 -78
  144. package/dist/collection/services/resizable.directive.js +0 -250
  145. package/dist/collection/services/selection.store.connector.js +0 -213
  146. package/dist/collection/services/viewport.provider.js +0 -14
  147. package/dist/collection/store/dataSource/data.proxy.js +0 -34
  148. package/dist/collection/store/dataSource/data.store.js +0 -127
  149. package/dist/collection/store/dimension/dimension.helpers.js +0 -107
  150. package/dist/collection/store/dimension/dimension.store.js +0 -59
  151. package/dist/collection/store/selection/selection.helpers.js +0 -53
  152. package/dist/collection/store/selection/selection.store.js +0 -68
  153. package/dist/collection/store/selection/selection.store.service.js +0 -35
  154. package/dist/collection/store/storeTypes.js +0 -5
  155. package/dist/collection/store/viewPort/viewport.store.js +0 -121
  156. package/dist/collection/themeManager/theme.compact.js +0 -5
  157. package/dist/collection/themeManager/theme.default.js +0 -5
  158. package/dist/collection/themeManager/theme.material.js +0 -5
  159. package/dist/collection/utils/closestPolifill.js +0 -18
  160. package/dist/collection/utils/consts.js +0 -19
  161. package/dist/collection/utils/generateAlphabetHeader.js +0 -20
  162. package/dist/collection/utils/keyCodes.js +0 -70
  163. package/dist/collection/utils/keyCodes.utils.js +0 -64
  164. package/dist/collection/utils/platform.js +0 -5
  165. package/dist/collection/utils/resizeObserver.js +0 -6
  166. package/dist/collection/utils/store.utils.js +0 -7
  167. package/dist/collection/utilsExternal/generate-data.js +0 -132
  168. package/dist/esm/css-shim-8d75038b.js +0 -4
  169. package/dist/esm/debounce-8dadcda7.js +0 -558
  170. package/dist/esm/dom-1b195079.js +0 -73
  171. package/dist/esm/index-42c84e7c.js +0 -1694
  172. package/dist/esm/index.js +0 -1
  173. package/dist/esm/loader.js +0 -31
  174. package/dist/esm/polyfills/core-js.js +0 -11
  175. package/dist/esm/polyfills/css-shim.js +0 -1
  176. package/dist/esm/polyfills/dom.js +0 -79
  177. package/dist/esm/polyfills/es5-html-element.js +0 -1
  178. package/dist/esm/polyfills/index.js +0 -34
  179. package/dist/esm/polyfills/system.js +0 -6
  180. package/dist/esm/resize-observer-56b7b34f.js +0 -489
  181. package/dist/esm/revo-grid.js +0 -71
  182. package/dist/esm/revogr-clipboard.entry.js +0 -49
  183. package/dist/esm/revogr-filter-panel.entry.js +0 -271
  184. package/dist/esm-es5/css-shim-8d75038b.js +0 -1
  185. package/dist/esm-es5/debounce-8dadcda7.js +0 -1
  186. package/dist/esm-es5/dom-1b195079.js +0 -21
  187. package/dist/esm-es5/index-42c84e7c.js +0 -1
  188. package/dist/esm-es5/index.js +0 -0
  189. package/dist/esm-es5/loader.js +0 -1
  190. package/dist/esm-es5/resize-observer-56b7b34f.js +0 -1
  191. package/dist/esm-es5/revo-grid.js +0 -1
  192. package/dist/esm-es5/revo-grid_11.entry.js +0 -1
  193. package/dist/esm-es5/revogr-clipboard.entry.js +0 -1
  194. package/dist/esm-es5/revogr-filter-panel.entry.js +0 -1
  195. package/dist/index.cjs.js +0 -1
  196. package/dist/index.js +0 -1
  197. package/dist/revo-grid/css-shim-88bfb262.system.js +0 -1
  198. package/dist/revo-grid/css-shim-8d75038b.js +0 -1
  199. package/dist/revo-grid/debounce-d097578d.js +0 -1
  200. package/dist/revo-grid/debounce-f40a88f6.system.js +0 -1
  201. package/dist/revo-grid/dom-1b195079.js +0 -19
  202. package/dist/revo-grid/dom-ee2dd1b3.system.js +0 -21
  203. package/dist/revo-grid/index-a15e7527.system.js +0 -1
  204. package/dist/revo-grid/index-a7f99799.js +0 -1
  205. package/dist/revo-grid/index.system.js +0 -1
  206. package/dist/revo-grid/resize-observer-56b7b34f.js +0 -1
  207. package/dist/revo-grid/resize-observer-7a7b9757.system.js +0 -1
  208. package/dist/revo-grid/revo-grid.js +0 -132
  209. package/dist/revo-grid/revo-grid.system.js +0 -1
  210. package/dist/revo-grid/revo-grid_11.entry.js +0 -1
  211. package/dist/revo-grid/revo-grid_11.system.entry.js +0 -1
  212. package/dist/revo-grid/revogr-clipboard.system.entry.js +0 -1
  213. package/dist/revo-grid/revogr-filter-panel.system.entry.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 Can be filter collection
38
+ */
39
+ "canMoveColumns": boolean;
36
40
  /**
37
41
  * Clear current grid focus
38
42
  */
@@ -183,7 +187,7 @@ export namespace Components {
183
187
  /**
184
188
  * Defines stretch strategy for columns with @StretchColumn plugin if there are more space on the right last column size would be increased
185
189
  */
186
- "stretch": boolean|string;
190
+ "stretch": boolean | string;
187
191
  /**
188
192
  * Theme name
189
193
  */
@@ -342,6 +346,50 @@ export namespace Components {
342
346
  "setScroll": (e: RevoGrid.ViewPortScrollEvent) => Promise<void>;
343
347
  }
344
348
  }
349
+ export interface RevoGridCustomEvent<T> extends CustomEvent<T> {
350
+ detail: T;
351
+ target: HTMLRevoGridElement;
352
+ }
353
+ export interface RevogrClipboardCustomEvent<T> extends CustomEvent<T> {
354
+ detail: T;
355
+ target: HTMLRevogrClipboardElement;
356
+ }
357
+ export interface RevogrDataCustomEvent<T> extends CustomEvent<T> {
358
+ detail: T;
359
+ target: HTMLRevogrDataElement;
360
+ }
361
+ export interface RevogrEditCustomEvent<T> extends CustomEvent<T> {
362
+ detail: T;
363
+ target: HTMLRevogrEditElement;
364
+ }
365
+ export interface RevogrFilterPanelCustomEvent<T> extends CustomEvent<T> {
366
+ detail: T;
367
+ target: HTMLRevogrFilterPanelElement;
368
+ }
369
+ export interface RevogrHeaderCustomEvent<T> extends CustomEvent<T> {
370
+ detail: T;
371
+ target: HTMLRevogrHeaderElement;
372
+ }
373
+ export interface RevogrOrderEditorCustomEvent<T> extends CustomEvent<T> {
374
+ detail: T;
375
+ target: HTMLRevogrOrderEditorElement;
376
+ }
377
+ export interface RevogrOverlaySelectionCustomEvent<T> extends CustomEvent<T> {
378
+ detail: T;
379
+ target: HTMLRevogrOverlaySelectionElement;
380
+ }
381
+ export interface RevogrRowHeadersCustomEvent<T> extends CustomEvent<T> {
382
+ detail: T;
383
+ target: HTMLRevogrRowHeadersElement;
384
+ }
385
+ export interface RevogrScrollVirtualCustomEvent<T> extends CustomEvent<T> {
386
+ detail: T;
387
+ target: HTMLRevogrScrollVirtualElement;
388
+ }
389
+ export interface RevogrViewportScrollCustomEvent<T> extends CustomEvent<T> {
390
+ detail: T;
391
+ target: HTMLRevogrViewportScrollElement;
392
+ }
345
393
  declare global {
346
394
  interface HTMLRevoGridElement extends Components.RevoGrid, HTMLStencilElement {
347
395
  }
@@ -447,6 +495,10 @@ declare namespace LocalJSX {
447
495
  * When true cell focus appear.
448
496
  */
449
497
  "canFocus"?: boolean;
498
+ /**
499
+ * Enables column move plugin Can be boolean Can be filter collection
500
+ */
501
+ "canMoveColumns"?: boolean;
450
502
  /**
451
503
  * Indicates default column size.
452
504
  */
@@ -482,81 +534,81 @@ declare namespace LocalJSX {
482
534
  /**
483
535
  * After column resize Get resized columns
484
536
  */
485
- "onAftercolumnresize"?: (event: CustomEvent<Record<RevoGrid.ColumnProp, RevoGrid.ColumnRegular>>) => void;
537
+ "onAftercolumnresize"?: (event: RevoGridCustomEvent<Record<RevoGrid.ColumnProp, RevoGrid.ColumnRegular>>) => void;
486
538
  /**
487
539
  * Column updated
488
540
  */
489
- "onAftercolumnsset"?: (event: CustomEvent<{
541
+ "onAftercolumnsset"?: (event: RevoGridCustomEvent<{
490
542
  columns: ColumnCollection;
491
543
  order: Record<RevoGrid.ColumnProp, 'asc' | 'desc'>;
492
544
  }>) => void;
493
545
  /**
494
546
  * After edit. Triggered when after data applied or Range changeged.
495
547
  */
496
- "onAfteredit"?: (event: CustomEvent<Edition.BeforeSaveDataDetails | Edition.BeforeRangeSaveDataDetails>) => void;
548
+ "onAfteredit"?: (event: RevoGridCustomEvent<Edition.BeforeSaveDataDetails | Edition.BeforeRangeSaveDataDetails>) => void;
497
549
  /**
498
550
  * After rows updated
499
551
  */
500
- "onAftersourceset"?: (event: CustomEvent<{
552
+ "onAftersourceset"?: (event: RevoGridCustomEvent<{
501
553
  type: RevoGrid.DimensionRows;
502
554
  source: RevoGrid.DataType[];
503
555
  }>) => void;
504
556
  /**
505
557
  * Notify trimmed applied
506
558
  */
507
- "onAftertrimmed"?: (event: CustomEvent<any>) => void;
559
+ "onAftertrimmed"?: (event: RevoGridCustomEvent<any>) => void;
508
560
  /**
509
561
  * Before range apply. Triggered before range applied. Use e.preventDefault() to prevent range.
510
562
  */
511
- "onBeforeaange"?: (event: CustomEvent<Selection.ChangedRange>) => void;
563
+ "onBeforeaange"?: (event: RevoGridCustomEvent<Selection.ChangedRange>) => void;
512
564
  /**
513
565
  * Before autofill. Triggered before autofill applied. Use e.preventDefault() to prevent edit data apply.
514
566
  */
515
- "onBeforeautofill"?: (event: CustomEvent<Selection.ChangedRange>) => void;
567
+ "onBeforeautofill"?: (event: RevoGridCustomEvent<Selection.ChangedRange>) => void;
516
568
  /**
517
569
  * Before cell focus changed. Use e.preventDefault() to prevent cell focus change.
518
570
  */
519
- "onBeforecellfocus"?: (event: CustomEvent<Edition.BeforeSaveDataDetails>) => void;
571
+ "onBeforecellfocus"?: (event: RevoGridCustomEvent<Edition.BeforeSaveDataDetails>) => void;
520
572
  /**
521
573
  * Before column applied but after column set gathered and viewport updated
522
574
  */
523
- "onBeforecolumnapplied"?: (event: CustomEvent<ColumnCollection>) => void;
575
+ "onBeforecolumnapplied"?: (event: RevoGridCustomEvent<ColumnCollection>) => void;
524
576
  /**
525
577
  * Before column update
526
578
  */
527
- "onBeforecolumnsset"?: (event: CustomEvent<ColumnCollection>) => void;
579
+ "onBeforecolumnsset"?: (event: RevoGridCustomEvent<ColumnCollection>) => void;
528
580
  /**
529
581
  * 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
582
  */
531
- "onBeforeedit"?: (event: CustomEvent<Edition.BeforeSaveDataDetails>) => void;
583
+ "onBeforeedit"?: (event: RevoGridCustomEvent<Edition.BeforeSaveDataDetails>) => void;
532
584
  /**
533
585
  * Before edit started Use e.preventDefault() to prevent edit
534
586
  */
535
- "onBeforeeditstart"?: (event: CustomEvent<Edition.BeforeSaveDataDetails>) => void;
587
+ "onBeforeeditstart"?: (event: RevoGridCustomEvent<Edition.BeforeSaveDataDetails>) => void;
536
588
  /**
537
589
  * Before export Use e.preventDefault() to prevent export Replace data in Event in case you want to modify it in export
538
590
  */
539
- "onBeforeexport"?: (event: CustomEvent<DataInput>) => void;
591
+ "onBeforeexport"?: (event: RevoGridCustomEvent<DataInput>) => void;
540
592
  /**
541
593
  * Before filter applied to data source Use e.preventDefault() to prevent cell focus change Update @collection if you wish to change filters
542
594
  */
543
- "onBeforefilterapply"?: (event: CustomEvent<{ collection: FilterCollection }>) => void;
595
+ "onBeforefilterapply"?: (event: RevoGridCustomEvent<{ collection: FilterCollection }>) => void;
544
596
  /**
545
597
  * 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
598
  */
547
- "onBeforefiltertrimmed"?: (event: CustomEvent<{ collection: FilterCollection; itemsToFilter: Record<number, boolean> }>) => void;
599
+ "onBeforefiltertrimmed"?: (event: RevoGridCustomEvent<{ collection: FilterCollection; itemsToFilter: Record<number, boolean> }>) => void;
548
600
  /**
549
601
  * Before grid focus lost happened. Use e.preventDefault() to prevent cell focus change.
550
602
  */
551
- "onBeforefocuslost"?: (event: CustomEvent<FocusedData|null>) => void;
603
+ "onBeforefocuslost"?: (event: RevoGridCustomEvent<FocusedData|null>) => void;
552
604
  /**
553
605
  * 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
606
  */
555
- "onBeforerangeedit"?: (event: CustomEvent<Edition.BeforeRangeSaveDataDetails>) => void;
607
+ "onBeforerangeedit"?: (event: RevoGridCustomEvent<Edition.BeforeRangeSaveDataDetails>) => void;
556
608
  /**
557
609
  * Before sorting event. Initial sorting triggered, if this event stops no other event called. Use e.preventDefault() to prevent sorting.
558
610
  */
559
- "onBeforesorting"?: (event: CustomEvent<{
611
+ "onBeforesorting"?: (event: RevoGridCustomEvent<{
560
612
  column: RevoGrid.ColumnRegular;
561
613
  order: 'desc' | 'asc';
562
614
  additive: boolean;
@@ -564,7 +616,7 @@ declare namespace LocalJSX {
564
616
  /**
565
617
  * Before sorting apply. Use e.preventDefault() to prevent sorting data change.
566
618
  */
567
- "onBeforesortingapply"?: (event: CustomEvent<{
619
+ "onBeforesortingapply"?: (event: RevoGridCustomEvent<{
568
620
  column: RevoGrid.ColumnRegular;
569
621
  order: 'desc' | 'asc';
570
622
  additive: boolean;
@@ -572,34 +624,34 @@ declare namespace LocalJSX {
572
624
  /**
573
625
  * Before data apply. You can override data source here
574
626
  */
575
- "onBeforesourceset"?: (event: CustomEvent<{
627
+ "onBeforesourceset"?: (event: RevoGridCustomEvent<{
576
628
  type: RevoGrid.DimensionRows;
577
629
  source: RevoGrid.DataType[];
578
630
  }>) => void;
579
631
  /**
580
632
  * 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
633
  */
582
- "onBeforesourcesortingapply"?: (event: CustomEvent<any>) => void;
634
+ "onBeforesourcesortingapply"?: (event: RevoGridCustomEvent<any>) => void;
583
635
  /**
584
636
  * Before trimmed values Use e.preventDefault() to prevent value trimming Update @trimmed if you wish to filter indexes of trimming
585
637
  */
586
- "onBeforetrimmed"?: (event: CustomEvent<{ trimmed: Record<number, boolean>; trimmedType: string; type: string }>) => void;
638
+ "onBeforetrimmed"?: (event: RevoGridCustomEvent<{ trimmed: Record<number, boolean>; trimmedType: string; type: string }>) => void;
587
639
  /**
588
640
  * On header click.
589
641
  */
590
- "onHeaderclick"?: (event: CustomEvent<RevoGrid.ColumnRegular>) => void;
642
+ "onHeaderclick"?: (event: RevoGridCustomEvent<RevoGrid.ColumnRegular>) => void;
591
643
  /**
592
644
  * Row order change started. Use e.preventDefault() to prevent rgRow order change. Use e.text = 'new name' to change item name on start.
593
645
  */
594
- "onRowdragstart"?: (event: CustomEvent<{ pos: RevoGrid.PositionItem; text: string }>) => void;
646
+ "onRowdragstart"?: (event: RevoGridCustomEvent<{ pos: RevoGrid.PositionItem; text: string }>) => void;
595
647
  /**
596
648
  * Before rgRow order apply. Use e.preventDefault() to prevent rgRow order change.
597
649
  */
598
- "onRoworderchanged"?: (event: CustomEvent<{ from: number; to: number }>) => void;
650
+ "onRoworderchanged"?: (event: RevoGridCustomEvent<{ from: number; to: number }>) => void;
599
651
  /**
600
652
  * Triggered when view port scrolled
601
653
  */
602
- "onViewportscroll"?: (event: CustomEvent<RevoGrid.ViewPortScrollEvent>) => void;
654
+ "onViewportscroll"?: (event: RevoGridCustomEvent<RevoGrid.ViewPortScrollEvent>) => void;
603
655
  /**
604
656
  * Pinned bottom Source: {[T in ColumnProp]: any} - defines pinned bottom rows data source.
605
657
  */
@@ -647,7 +699,7 @@ declare namespace LocalJSX {
647
699
  /**
648
700
  * Defines stretch strategy for columns with @StretchColumn plugin if there are more space on the right last column size would be increased
649
701
  */
650
- "stretch"?: boolean|string;
702
+ "stretch"?: boolean | string;
651
703
  /**
652
704
  * Theme name
653
705
  */
@@ -663,8 +715,8 @@ declare namespace LocalJSX {
663
715
  "useClipboard"?: boolean;
664
716
  }
665
717
  interface RevogrClipboard {
666
- "onCopyRegion"?: (event: CustomEvent<DataTransfer>) => void;
667
- "onPasteRegion"?: (event: CustomEvent<string[][]>) => void;
718
+ "onCopyRegion"?: (event: RevogrClipboardCustomEvent<DataTransfer>) => void;
719
+ "onPasteRegion"?: (event: RevogrClipboardCustomEvent<string[][]>) => void;
668
720
  }
669
721
  interface RevogrData {
670
722
  "canDrag"?: boolean;
@@ -674,7 +726,7 @@ declare namespace LocalJSX {
674
726
  "colData"?: ColumnSource;
675
727
  "dataStore"?: RowSource;
676
728
  "dimensionRow"?: Observable<RevoGrid.DimensionSettingsState>;
677
- "onDragStartCell"?: (event: CustomEvent<MouseEvent>) => void;
729
+ "onDragStartCell"?: (event: RevogrDataCustomEvent<MouseEvent>) => void;
678
730
  "range"?: boolean;
679
731
  "readonly"?: boolean;
680
732
  "rowClass"?: string;
@@ -689,11 +741,11 @@ declare namespace LocalJSX {
689
741
  * Custom editors register
690
742
  */
691
743
  "editor"?: Edition.EditorCtr | null;
692
- "onCellEdit"?: (event: CustomEvent<Edition.SaveDataDetails>) => void;
744
+ "onCellEdit"?: (event: RevogrEditCustomEvent<Edition.SaveDataDetails>) => void;
693
745
  /**
694
746
  * Close editor event
695
747
  */
696
- "onCloseEdit"?: (event: CustomEvent<boolean | undefined>) => void;
748
+ "onCloseEdit"?: (event: RevogrEditCustomEvent<boolean | undefined>) => void;
697
749
  }
698
750
  interface RevogrFilterPanel {
699
751
  "disableDynamicFiltering"?: boolean;
@@ -702,7 +754,7 @@ declare namespace LocalJSX {
702
754
  "filterItems"?: MultiFilterItem;
703
755
  "filterNames"?: Record<string, string>;
704
756
  "filterTypes"?: Record<string, string[]>;
705
- "onFilterChange"?: (event: CustomEvent<MultiFilterItem>) => void;
757
+ "onFilterChange"?: (event: RevogrFilterPanelCustomEvent<MultiFilterItem>) => void;
706
758
  "uuid"?: string;
707
759
  }
708
760
  interface RevogrFocus {
@@ -720,9 +772,9 @@ declare namespace LocalJSX {
720
772
  "dimensionCol"?: Observable<RevoGrid.DimensionSettingsState>;
721
773
  "groupingDepth"?: number;
722
774
  "groups"?: Groups;
723
- "onHeaderdblClick"?: (event: CustomEvent<RevoGrid.InitialHeaderClick>) => void;
724
- "onHeaderresize"?: (event: CustomEvent<RevoGrid.ViewSettingSizeProp>) => void;
725
- "onInitialHeaderClick"?: (event: CustomEvent<RevoGrid.InitialHeaderClick>) => void;
775
+ "onHeaderdblClick"?: (event: RevogrHeaderCustomEvent<RevoGrid.InitialHeaderClick>) => void;
776
+ "onHeaderresize"?: (event: RevogrHeaderCustomEvent<RevoGrid.ViewSettingSizeProp>) => void;
777
+ "onInitialHeaderClick"?: (event: RevogrHeaderCustomEvent<RevoGrid.InitialHeaderClick>) => void;
726
778
  "parent"?: string;
727
779
  "selectionStore"?: Observable<Selection.SelectionStoreState>;
728
780
  "viewportCol"?: Observable<RevoGrid.ViewportState>;
@@ -737,19 +789,19 @@ declare namespace LocalJSX {
737
789
  /**
738
790
  * Row dragged, new range ready to be applied
739
791
  */
740
- "onInitialRowDropped"?: (event: CustomEvent<{ from: number; to: number }>) => void;
792
+ "onInitialRowDropped"?: (event: RevogrOrderEditorCustomEvent<{ from: number; to: number }>) => void;
741
793
  /**
742
794
  * Row move
743
795
  */
744
- "onInternalRowDrag"?: (event: CustomEvent<RevoGrid.PositionItem>) => void;
796
+ "onInternalRowDrag"?: (event: RevogrOrderEditorCustomEvent<RevoGrid.PositionItem>) => void;
745
797
  /**
746
798
  * Row drag ended
747
799
  */
748
- "onInternalRowDragEnd"?: (event: CustomEvent<any>) => void;
800
+ "onInternalRowDragEnd"?: (event: RevogrOrderEditorCustomEvent<any>) => void;
749
801
  /**
750
802
  * Row drag started
751
803
  */
752
- "onInternalRowDragStart"?: (event: CustomEvent<{
804
+ "onInternalRowDragStart"?: (event: RevogrOrderEditorCustomEvent<{
753
805
  cell: Selection.Cell;
754
806
  text: string;
755
807
  pos: RevoGrid.PositionItem;
@@ -758,7 +810,7 @@ declare namespace LocalJSX {
758
810
  /**
759
811
  * Row mouse move
760
812
  */
761
- "onInternalRowMouseMove"?: (event: CustomEvent<Selection.Cell>) => void;
813
+ "onInternalRowMouseMove"?: (event: RevogrOrderEditorCustomEvent<Selection.Cell>) => void;
762
814
  "parent"?: HTMLElement;
763
815
  }
764
816
  interface RevogrOverlaySelection {
@@ -778,22 +830,22 @@ declare namespace LocalJSX {
778
830
  * Last cell position
779
831
  */
780
832
  "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;
833
+ "onFocusCell"?: (event: RevogrOverlaySelectionCustomEvent<Selection.FocusedCells>) => void;
834
+ "onInternalCellEdit"?: (event: RevogrOverlaySelectionCustomEvent<Edition.BeforeSaveDataDetails>) => void;
835
+ "onInternalCopy"?: (event: RevogrOverlaySelectionCustomEvent<any>) => void;
836
+ "onInternalFocusCell"?: (event: RevogrOverlaySelectionCustomEvent<Edition.BeforeSaveDataDetails>) => void;
837
+ "onInternalPaste"?: (event: RevogrOverlaySelectionCustomEvent<any>) => void;
786
838
  /**
787
839
  * Range data apply
788
840
  */
789
- "onInternalRangeDataApply"?: (event: CustomEvent<Edition.BeforeRangeSaveDataDetails>) => void;
841
+ "onInternalRangeDataApply"?: (event: RevogrOverlaySelectionCustomEvent<Edition.BeforeRangeSaveDataDetails>) => void;
790
842
  /**
791
843
  * Selection range changed
792
844
  */
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;
845
+ "onInternalSelectionChanged"?: (event: RevogrOverlaySelectionCustomEvent<Selection.ChangedRange>) => void;
846
+ "onSetEdit"?: (event: RevogrOverlaySelectionCustomEvent<Edition.BeforeEdit>) => void;
847
+ "onSetRange"?: (event: RevogrOverlaySelectionCustomEvent<Selection.RangeArea>) => void;
848
+ "onSetTempRange"?: (event: RevogrOverlaySelectionCustomEvent<Selection.TempRange | null>) => void;
797
849
  "range"?: boolean;
798
850
  "readonly"?: boolean;
799
851
  /**
@@ -806,8 +858,8 @@ declare namespace LocalJSX {
806
858
  "dataPorts"?: ViewportData[];
807
859
  "headerProp"?: Record<string, any>;
808
860
  "height"?: number;
809
- "onElementToScroll"?: (event: CustomEvent<ElementScroll>) => void;
810
- "onScrollViewport"?: (event: CustomEvent<RevoGrid.ViewPortScrollEvent>) => void;
861
+ "onElementToScroll"?: (event: RevogrRowHeadersCustomEvent<ElementScroll>) => void;
862
+ "onScrollViewport"?: (event: RevogrRowHeadersCustomEvent<RevoGrid.ViewPortScrollEvent>) => void;
811
863
  "resize"?: boolean;
812
864
  "rowHeaderColumn"?: RevoGrid.RowHeaders;
813
865
  "uiid"?: string;
@@ -815,7 +867,7 @@ declare namespace LocalJSX {
815
867
  interface RevogrScrollVirtual {
816
868
  "dimension"?: RevoGrid.DimensionType;
817
869
  "dimensionStore"?: Observable<RevoGrid.DimensionSettingsState>;
818
- "onScrollVirtual"?: (event: CustomEvent<RevoGrid.ViewPortScrollEvent>) => void;
870
+ "onScrollVirtual"?: (event: RevogrScrollVirtualCustomEvent<RevoGrid.ViewPortScrollEvent>) => void;
819
871
  "viewportStore"?: Observable<RevoGrid.ViewportState>;
820
872
  }
821
873
  interface RevogrTempRange {
@@ -835,9 +887,9 @@ declare namespace LocalJSX {
835
887
  * Width of inner content
836
888
  */
837
889
  "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;
890
+ "onResizeViewport"?: (event: RevogrViewportScrollCustomEvent<RevoGrid.ViewPortResizeEvent>) => void;
891
+ "onScrollViewport"?: (event: RevogrViewportScrollCustomEvent<RevoGrid.ViewPortScrollEvent>) => void;
892
+ "onScrollchange"?: (event: RevogrViewportScrollCustomEvent<{ type: RevoGrid.DimensionType; hasScroll: boolean; }>) => void;
841
893
  }
842
894
  interface IntrinsicElements {
843
895
  "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 {};
@@ -0,0 +1,66 @@
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.ColumnRegular;
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 StaticData = {
20
+ startPos: number;
21
+ data: DragStartEventDetails['data'];
22
+ dataEl: HTMLElement;
23
+ scrollEl: Element;
24
+ gridEl: HTMLElement;
25
+ };
26
+ declare type LocalSubscriptions = Record<string, LocalSubscription>;
27
+ declare type LocalSubscription = {
28
+ target: Element | Document;
29
+ callback(...params: any[]): void;
30
+ };
31
+ export declare type EventData = {
32
+ el: HTMLElement;
33
+ elScroll: Element;
34
+ elRect: DOMRect;
35
+ gridRect: DOMRect;
36
+ xOffset: number;
37
+ data: StaticData['data'];
38
+ type: RevoGrid.DimensionCols;
39
+ rows: RevoGrid.DimensionSettingsState;
40
+ cols: RevoGrid.DimensionSettingsState;
41
+ };
42
+ export default class ColumnPlugin extends BasePlugin {
43
+ protected revogrid: HTMLRevoGridElement;
44
+ private providers;
45
+ private moveFunc;
46
+ private staticDragData;
47
+ private dragData;
48
+ private readonly orderUi;
49
+ protected readonly localSubscriptions: LocalSubscriptions;
50
+ constructor(revogrid: HTMLRevoGridElement, providers: Providers);
51
+ dragStart({ event, data }: DragStartEventDetails): void;
52
+ doMove(e: MouseEvent): void;
53
+ move(e: MouseEvent): void;
54
+ onMouseOut(_: MouseEvent): void;
55
+ onMouseUp(e: MouseEvent): void;
56
+ private clearLocalSubscriptions;
57
+ clearOrder(): void;
58
+ /**
59
+ * Clearing subscription
60
+ */
61
+ protected clearSubscriptions(): void;
62
+ private getData;
63
+ private getDimension;
64
+ }
65
+ export declare function getLeftRelative(absoluteX: number, { xOffset, gridRect }: EventData): number;
66
+ export {};
@@ -0,0 +1,12 @@
1
+ import { EventData } from './columnDragPlugin';
2
+ export declare class ColumnOrderHandler {
3
+ private element?;
4
+ private autoscrollEl?;
5
+ private offset;
6
+ renderAutoscroll(_: MouseEvent, parent: HTMLElement | null): void;
7
+ autoscroll(pos: number, dataContainerSize: number, direction?: string): void;
8
+ start(e: MouseEvent, { el, gridRect, elScroll }: EventData, dir?: 'top' | 'left'): void;
9
+ stop(): void;
10
+ showHandler(pos: number, size: number, direction?: string): void;
11
+ render(): any;
12
+ }
@@ -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 {};