@revolist/revogrid 4.9.3 → 4.9.5

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 (124) hide show
  1. package/dist/cjs/{column.service-01f4a6c7.js → column.service-08df359f.js} +3 -3
  2. package/dist/cjs/{column.service-01f4a6c7.js.map → column.service-08df359f.js.map} +1 -1
  3. package/dist/cjs/{base.plugin-bf5f43a0.js → column.utils-0f0f4dc4.js} +127 -2
  4. package/dist/cjs/column.utils-0f0f4dc4.js.map +1 -0
  5. package/dist/cjs/{dimension.helpers-a6788214.js → dimension.helpers-85294778.js} +1 -2
  6. package/dist/cjs/dimension.helpers-85294778.js.map +1 -0
  7. package/dist/cjs/{header-cell-renderer-3bc70679.js → header-cell-renderer-fb2f9a2d.js} +2 -2
  8. package/dist/cjs/{header-cell-renderer-3bc70679.js.map → header-cell-renderer-fb2f9a2d.js.map} +1 -1
  9. package/dist/cjs/index.cjs.js +15 -9
  10. package/dist/cjs/index.cjs.js.map +1 -1
  11. package/dist/cjs/revo-grid.cjs.entry.js +80 -250
  12. package/dist/cjs/revo-grid.cjs.entry.js.map +1 -1
  13. package/dist/cjs/revogr-attribution_6.cjs.entry.js +8 -7
  14. package/dist/cjs/revogr-attribution_6.cjs.entry.js.map +1 -1
  15. package/dist/cjs/revogr-clipboard_3.cjs.entry.js +3 -3
  16. package/dist/cjs/revogr-clipboard_3.cjs.entry.js.map +1 -1
  17. package/dist/cjs/revogr-data_4.cjs.entry.js +4 -4
  18. package/dist/cjs/{selection.helpers-1a8c8d49.js → selection.helpers-371a38aa.js} +2 -2
  19. package/dist/cjs/{selection.helpers-1a8c8d49.js.map → selection.helpers-371a38aa.js.map} +1 -1
  20. package/dist/cjs/{viewport.store-35a3e7ee.js → viewport.store-300977e4.js} +2 -2
  21. package/dist/cjs/{viewport.store-35a3e7ee.js.map → viewport.store-300977e4.js.map} +1 -1
  22. package/dist/collection/components/clipboard/revogr-clipboard.js +2 -2
  23. package/dist/collection/components/clipboard/revogr-clipboard.js.map +1 -1
  24. package/dist/collection/components/editors/revogr-edit.js +1 -1
  25. package/dist/collection/components/overlay/revogr-overlay-selection.js +19 -8
  26. package/dist/collection/components/overlay/revogr-overlay-selection.js.map +1 -1
  27. package/dist/collection/components/overlay/selection.utils.js.map +1 -1
  28. package/dist/collection/components/revoGrid/revo-grid.js +12 -11
  29. package/dist/collection/components/revoGrid/revo-grid.js.map +1 -1
  30. package/dist/collection/index.js +1 -0
  31. package/dist/collection/index.js.map +1 -1
  32. package/dist/collection/plugins/base.plugin.js.map +1 -1
  33. package/dist/collection/plugins/column.auto-size.plugin.js +2 -2
  34. package/dist/collection/plugins/column.auto-size.plugin.js.map +1 -1
  35. package/dist/collection/plugins/column.stretch.plugin.js.map +1 -1
  36. package/dist/collection/plugins/groupingRow/grouping.row.plugin.js.map +1 -1
  37. package/dist/collection/plugins/moveColumn/column.drag.plugin.js +1 -1
  38. package/dist/collection/plugins/moveColumn/column.drag.plugin.js.map +1 -1
  39. package/dist/collection/plugins/sorting/sorting.plugin.js +2 -2
  40. package/dist/collection/plugins/sorting/sorting.plugin.js.map +1 -1
  41. package/dist/collection/services/column.data.provider.js +32 -88
  42. package/dist/collection/services/column.data.provider.js.map +1 -1
  43. package/dist/collection/services/dimension.provider.js +2 -2
  44. package/dist/collection/services/dimension.provider.js.map +1 -1
  45. package/dist/collection/types/interfaces.js.map +1 -1
  46. package/dist/collection/utils/column.utils.js +124 -0
  47. package/dist/collection/utils/column.utils.js.map +1 -0
  48. package/dist/esm/{column.service-5d14e7e9.js → column.service-cfc1149b.js} +3 -3
  49. package/dist/esm/{column.service-5d14e7e9.js.map → column.service-cfc1149b.js.map} +1 -1
  50. package/dist/esm/{base.plugin-5e7a3c51.js → column.utils-f6300fb5.js} +122 -3
  51. package/dist/esm/column.utils-f6300fb5.js.map +1 -0
  52. package/dist/esm/{dimension.helpers-56298828.js → dimension.helpers-938ea850.js} +2 -2
  53. package/dist/esm/dimension.helpers-938ea850.js.map +1 -0
  54. package/dist/esm/{header-cell-renderer-fc999784.js → header-cell-renderer-6f8eb067.js} +2 -2
  55. package/dist/esm/{header-cell-renderer-fc999784.js.map → header-cell-renderer-6f8eb067.js.map} +1 -1
  56. package/dist/esm/index.js +4 -4
  57. package/dist/esm/revo-grid.entry.js +49 -219
  58. package/dist/esm/revo-grid.entry.js.map +1 -1
  59. package/dist/esm/revogr-attribution_6.entry.js +8 -7
  60. package/dist/esm/revogr-attribution_6.entry.js.map +1 -1
  61. package/dist/esm/revogr-clipboard_3.entry.js +3 -3
  62. package/dist/esm/revogr-clipboard_3.entry.js.map +1 -1
  63. package/dist/esm/revogr-data_4.entry.js +4 -4
  64. package/dist/esm/{selection.helpers-accaad4a.js → selection.helpers-a49a3d09.js} +2 -2
  65. package/dist/esm/{selection.helpers-accaad4a.js.map → selection.helpers-a49a3d09.js.map} +1 -1
  66. package/dist/esm/{viewport.store-d8e03528.js → viewport.store-a690096b.js} +2 -2
  67. package/dist/esm/{viewport.store-d8e03528.js.map → viewport.store-a690096b.js.map} +1 -1
  68. package/dist/revo-grid/{column.service-5d14e7e9.js → column.service-cfc1149b.js} +2 -2
  69. package/dist/revo-grid/column.utils-f6300fb5.js +5 -0
  70. package/dist/revo-grid/column.utils-f6300fb5.js.map +1 -0
  71. package/dist/revo-grid/{dimension.helpers-56298828.js → dimension.helpers-938ea850.js} +2 -2
  72. package/dist/revo-grid/{header-cell-renderer-fc999784.js → header-cell-renderer-6f8eb067.js} +2 -2
  73. package/dist/revo-grid/index.esm.js +1 -1
  74. package/dist/revo-grid/revo-grid.entry.js +1 -1
  75. package/dist/revo-grid/revo-grid.entry.js.map +1 -1
  76. package/dist/revo-grid/revogr-attribution_6.entry.js +1 -1
  77. package/dist/revo-grid/revogr-attribution_6.entry.js.map +1 -1
  78. package/dist/revo-grid/revogr-clipboard_3.entry.js +1 -1
  79. package/dist/revo-grid/revogr-clipboard_3.entry.js.map +1 -1
  80. package/dist/revo-grid/revogr-data_4.entry.js +1 -1
  81. package/dist/revo-grid/{selection.helpers-accaad4a.js → selection.helpers-a49a3d09.js} +2 -2
  82. package/dist/revo-grid/{viewport.store-d8e03528.js → viewport.store-a690096b.js} +2 -2
  83. package/dist/types/components/overlay/revogr-overlay-selection.d.ts +6 -2
  84. package/dist/types/components/overlay/selection.utils.d.ts +2 -1
  85. package/dist/types/components/revoGrid/revo-grid.d.ts +2 -1
  86. package/dist/types/components.d.ts +8 -6
  87. package/dist/types/index.d.ts +1 -0
  88. package/dist/types/plugins/base.plugin.d.ts +1 -1
  89. package/dist/types/plugins/column.auto-size.plugin.d.ts +1 -2
  90. package/dist/types/plugins/column.stretch.plugin.d.ts +2 -4
  91. package/dist/types/services/column.data.provider.d.ts +2 -13
  92. package/dist/types/services/dimension.provider.d.ts +0 -1
  93. package/dist/types/types/interfaces.d.ts +11 -11
  94. package/dist/types/utils/column.utils.d.ts +46 -0
  95. package/hydrate/index.js +304 -354
  96. package/hydrate/index.mjs +304 -354
  97. package/package.json +1 -1
  98. package/standalone/column.service.js +1 -1
  99. package/standalone/data.store.js +1 -1
  100. package/standalone/data.store.js.map +1 -1
  101. package/standalone/dimension.helpers.js +1 -1
  102. package/standalone/index.js +1 -1
  103. package/standalone/revo-grid.js +165 -216
  104. package/standalone/revo-grid.js.map +1 -1
  105. package/standalone/revogr-clipboard2.js +2 -2
  106. package/standalone/revogr-clipboard2.js.map +1 -1
  107. package/standalone/revogr-header2.js +1 -1
  108. package/standalone/revogr-overlay-selection2.js +4 -3
  109. package/standalone/revogr-overlay-selection2.js.map +1 -1
  110. package/standalone/selection.utils.js.map +1 -1
  111. package/dist/cjs/base.plugin-bf5f43a0.js.map +0 -1
  112. package/dist/cjs/dimension.helpers-a6788214.js.map +0 -1
  113. package/dist/collection/plugins/groupingColumn/grouping.col.plugin.js +0 -43
  114. package/dist/collection/plugins/groupingColumn/grouping.col.plugin.js.map +0 -1
  115. package/dist/esm/base.plugin-5e7a3c51.js.map +0 -1
  116. package/dist/esm/dimension.helpers-56298828.js.map +0 -1
  117. package/dist/revo-grid/base.plugin-5e7a3c51.js +0 -5
  118. package/dist/revo-grid/base.plugin-5e7a3c51.js.map +0 -1
  119. package/dist/types/plugins/groupingColumn/grouping.col.plugin.d.ts +0 -17
  120. /package/dist/revo-grid/{column.service-5d14e7e9.js.map → column.service-cfc1149b.js.map} +0 -0
  121. /package/dist/revo-grid/{dimension.helpers-56298828.js.map → dimension.helpers-938ea850.js.map} +0 -0
  122. /package/dist/revo-grid/{header-cell-renderer-fc999784.js.map → header-cell-renderer-6f8eb067.js.map} +0 -0
  123. /package/dist/revo-grid/{selection.helpers-accaad4a.js.map → selection.helpers-a49a3d09.js.map} +0 -0
  124. /package/dist/revo-grid/{viewport.store-d8e03528.js.map → viewport.store-a690096b.js.map} +0 -0
@@ -1,7 +1,5 @@
1
- import { ColumnItems } from '../services/dimension.provider';
2
1
  import { BasePlugin } from './base.plugin';
3
- import { PluginBaseComponent } from '../';
4
- import { PluginProviders } from '../';
2
+ import { DimensionCols, PluginBaseComponent, PluginProviders, ColumnRegular } from "../types/index";
5
3
  export default class StretchColumn extends BasePlugin {
6
4
  providers: PluginProviders;
7
5
  private stretchedColumn;
@@ -14,7 +12,7 @@ export default class StretchColumn extends BasePlugin {
14
12
  /**
15
13
  * Apply stretch changes
16
14
  */
17
- applyStretch(columns: ColumnItems): void;
15
+ applyStretch(columns: Record<DimensionCols, ColumnRegular[]>): void;
18
16
  }
19
17
  /**
20
18
  * Check plugin type is Stretch
@@ -1,13 +1,6 @@
1
- import { ColumnGroupingCollection } from '../plugins/groupingColumn/grouping.col.plugin';
2
1
  import { DataStore } from "../store/index";
3
- import type { ColumnData, ColumnProp, ColumnRegular, ColumnTypes, ViewSettingSizeProp, DimensionCols, DimensionColPin } from "../types/index";
4
- export type ColumnCollection = {
5
- columns: Record<DimensionCols, ColumnRegular[]>;
6
- columnByProp: Record<ColumnProp, ColumnRegular[]>;
7
- columnGrouping: ColumnGroupingCollection;
8
- maxLevel: number;
9
- sort: Record<ColumnProp, ColumnRegular>;
10
- };
2
+ import type { ColumnProp, ColumnRegular, DimensionCols, DimensionColPin } from "../types/index";
3
+ import { ColumnCollection } from '../utils/column.utils';
11
4
  export type ColumnDataSources = Record<DimensionCols, DataStore<ColumnRegular, DimensionCols>>;
12
5
  type Sorting = Record<ColumnProp, ColumnRegular>;
13
6
  type SortingOrder = Record<ColumnProp, 'asc' | 'desc' | undefined>;
@@ -29,9 +22,5 @@ export default class ColumnDataProvider {
29
22
  updateColumn(column: ColumnRegular, index: number): void;
30
23
  updateColumnSorting(column: ColumnRegular, index: number, sorting: 'asc' | 'desc' | undefined, additive: boolean): ColumnRegular;
31
24
  clearSorting(): void;
32
- static getSizes(cols: ColumnRegular[]): ViewSettingSizeProp;
33
- static getColumnByProp(columns: ColumnData, prop: ColumnProp): ColumnRegular | undefined;
34
- static getColumns(columns: ColumnData, level?: number, types?: ColumnTypes): ColumnCollection;
35
- static getColumnType(rgCol: ColumnRegular): DimensionCols;
36
25
  }
37
26
  export {};
@@ -1,7 +1,6 @@
1
1
  import ViewportProvider from './viewport.provider';
2
2
  import { DimensionStoreCollection, Trimmed } from "../store/index";
3
3
  import { DimensionCols, DimensionType, MultiDimensionType, ColumnRegular, DimensionSettingsState, ViewPortScrollEvent, ViewSettingSizeProp } from "../types/index";
4
- export type ColumnItems = Record<DimensionCols, ColumnRegular[]>;
5
4
  export type DimensionConfig = {
6
5
  realSizeChanged(k: MultiDimensionType): void;
7
6
  };
@@ -72,15 +72,15 @@ export type RowDrag = boolean | {
72
72
  /**
73
73
  * `ColumnGrouping` type is used to define a grouping in a column.
74
74
  */
75
- export type ColumnGrouping = {
75
+ export type ColumnGrouping<T = any> = {
76
76
  /**
77
77
  * An array of objects that represent the children of the grouping.
78
78
  */
79
- children: (ColumnGrouping | ColumnRegular)[];
79
+ children: (ColumnGrouping<T> | ColumnRegular)[];
80
80
  /**
81
81
  * A `DataFormat` object that represents the name of the grouping.
82
82
  */
83
- name: DataFormat;
83
+ name: DataFormat<T>;
84
84
  };
85
85
  /**
86
86
  * Configuration for header inner template properties
@@ -178,7 +178,7 @@ export interface ColumnRegular extends ColumnType {
178
178
  /**
179
179
  * Column header text.
180
180
  */
181
- name?: DataFormat;
181
+ name?: any;
182
182
  /**
183
183
  * Column size would be changed based on space left.
184
184
  */
@@ -229,7 +229,7 @@ export interface ColumnTemplateProp extends ColumnRegular {
229
229
  }
230
230
  export type ColumnPropProp = ColumnGrouping | ColumnTemplateProp;
231
231
  export type ColumnProp = string | number;
232
- export type DataFormat = any;
232
+ export type DataFormat<T = any> = T;
233
233
  export type CellProp = string | number | object | boolean | undefined;
234
234
  /**
235
235
  * Additional properties applied to the cell.
@@ -346,11 +346,11 @@ export type CellCompareFunc = (prop: ColumnProp, a: DataType, b: DataType) => nu
346
346
  export type ColumnTemplateFunc = (createElement: HyperFunc<VNode>, props: ColumnTemplateProp, additionalData?: any) => any;
347
347
  export type PropertiesFunc = (props: ColumnDataSchemaModel) => CellProps | void | undefined;
348
348
  export type ColPropertiesFunc = (props: ColumnPropProp) => CellProps | void | undefined;
349
- export type DataType = {
350
- [T in ColumnProp]: DataFormat;
349
+ export type DataType<D = any> = {
350
+ [T in ColumnProp]: DataFormat<D>;
351
351
  };
352
- export type DataLookup = {
353
- [rowIndex: number]: DataType;
352
+ export type DataLookup<T = any> = {
353
+ [rowIndex: number]: DataType<T>;
354
354
  };
355
355
  /**
356
356
  * `RowDefinition` is a type that represents a row definition in the
@@ -680,8 +680,8 @@ export type RangeClipboardPasteEvent = {
680
680
  range: RangeArea | null;
681
681
  } & AllDimensionType;
682
682
  /** Range copy. */
683
- export type RangeClipboardCopyEventProps = {
684
- data: DataFormat[][];
683
+ export type RangeClipboardCopyEventProps<T = any> = {
684
+ data: DataFormat<T>[][];
685
685
  range: RangeArea;
686
686
  mapping: OldNewRangeMapping;
687
687
  } & AllDimensionType;
@@ -0,0 +1,46 @@
1
+ import { ColumnData, ColumnGrouping, ColumnProp, ColumnRegular, ColumnTypes, DimensionCols, ViewSettingSizeProp } from "../types/index";
2
+ import { Group as StoreGroup } from "../store/index";
3
+ export type ColumnItems = Record<DimensionCols, ColumnRegular[]>;
4
+ export interface ColumnGroup extends StoreGroup {
5
+ level: number;
6
+ }
7
+ export type ColumnGroupingCollection = Record<DimensionCols, ColumnGroup[]>;
8
+ /**
9
+ * Column collection definition.
10
+ * Used to access indexed data for columns.
11
+ * Can be accessed via different events.
12
+ */
13
+ export type ColumnCollection = {
14
+ /**
15
+ * Columns as they are in stores
16
+ */
17
+ columns: Record<DimensionCols, ColumnRegular[]>;
18
+ /**
19
+ * Columns indexed by prop for quick access, it's possible to have multiple columns with same prop but not recommended
20
+ */
21
+ columnByProp: Record<ColumnProp, ColumnRegular[]>;
22
+ /**
23
+ * Grouped columns
24
+ */
25
+ columnGrouping: ColumnGroupingCollection;
26
+ /**
27
+ * Max level of grouping
28
+ */
29
+ maxLevel: number;
30
+ /**
31
+ * Sorting
32
+ */
33
+ sort: Record<ColumnProp, ColumnRegular>;
34
+ };
35
+ export declare function getColumnType(rgCol: ColumnRegular): DimensionCols;
36
+ export declare function getColumnSizes(cols: ColumnRegular[]): ViewSettingSizeProp;
37
+ /**
38
+ * Check if column is grouping column
39
+ */
40
+ export declare function isColGrouping(colData: ColumnGrouping | ColumnRegular): colData is ColumnGrouping;
41
+ /**
42
+ * This function is used to create a collection of columns.
43
+ */
44
+ export declare function getColumns(columns: ColumnData, level?: number, types?: ColumnTypes): ColumnCollection;
45
+ export declare function gatherGroup<T extends ColumnCollection>(res: T, colData: ColumnGrouping, collection: T, level?: number): T;
46
+ export declare function getColumnByProp(columns: ColumnData, prop: ColumnProp): ColumnRegular | undefined;