@revolist/revogrid 4.9.4 → 4.9.6
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.
- package/dist/cjs/{column.service-01f4a6c7.js → column.service-0615a373.js} +11 -12
- package/dist/cjs/column.service-0615a373.js.map +1 -0
- package/dist/cjs/{base.plugin-bf5f43a0.js → column.utils-694677fa.js} +136 -11
- package/dist/cjs/column.utils-694677fa.js.map +1 -0
- package/dist/cjs/edit.utils-2e1f4278.js +20 -0
- package/dist/cjs/edit.utils-2e1f4278.js.map +1 -0
- package/dist/cjs/{events-b28cc194.js → events-af8f6914.js} +1 -8
- package/dist/cjs/events-af8f6914.js.map +1 -0
- package/dist/cjs/{header-cell-renderer-3bc70679.js → header-cell-renderer-360528aa.js} +2 -2
- package/dist/cjs/{header-cell-renderer-3bc70679.js.map → header-cell-renderer-360528aa.js.map} +1 -1
- package/dist/cjs/{dimension.helpers-a6788214.js → index-2991afbb.js} +262 -4
- package/dist/cjs/index-2991afbb.js.map +1 -0
- package/dist/cjs/index.cjs.js +97 -35
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/key.utils-b84b0eba.js +111 -0
- package/dist/cjs/key.utils-b84b0eba.js.map +1 -0
- package/dist/cjs/revo-grid.cjs.entry.js +140 -311
- package/dist/cjs/revo-grid.cjs.entry.js.map +1 -1
- package/dist/cjs/revogr-attribution_6.cjs.entry.js +37 -37
- package/dist/cjs/revogr-attribution_6.cjs.entry.js.map +1 -1
- package/dist/cjs/revogr-clipboard_3.cjs.entry.js +10 -10
- package/dist/cjs/revogr-clipboard_3.cjs.entry.js.map +1 -1
- package/dist/cjs/revogr-data_4.cjs.entry.js +13 -14
- package/dist/cjs/revogr-data_4.cjs.entry.js.map +1 -1
- package/dist/cjs/{viewport.store-35a3e7ee.js → row-header-utils-b5266b12.js} +13 -6
- package/dist/cjs/row-header-utils-b5266b12.js.map +1 -0
- package/dist/cjs/{selection.helpers-1a8c8d49.js → selection.helpers-4374518f.js} +13 -13
- package/dist/cjs/selection.helpers-4374518f.js.map +1 -0
- package/dist/cjs/{throttle-52be9e67.js → throttle-8885fd65.js} +2 -2
- package/dist/cjs/{throttle-52be9e67.js.map → throttle-8885fd65.js.map} +1 -1
- package/dist/collection/components/clipboard/revogr-clipboard.js +2 -2
- package/dist/collection/components/clipboard/revogr-clipboard.js.map +1 -1
- package/dist/collection/components/editors/revogr-edit.js +1 -1
- package/dist/collection/components/header/revogr-header.js +1 -1
- package/dist/collection/components/overlay/revogr-overlay-selection.js +1 -1
- package/dist/collection/components/revoGrid/revo-grid.js +12 -11
- package/dist/collection/components/revoGrid/revo-grid.js.map +1 -1
- package/dist/collection/index.js +1 -1
- package/dist/collection/index.js.map +1 -1
- package/dist/collection/plugins/base.plugin.js.map +1 -1
- package/dist/collection/plugins/column.auto-size.plugin.js +2 -2
- package/dist/collection/plugins/column.auto-size.plugin.js.map +1 -1
- package/dist/collection/plugins/column.stretch.plugin.js.map +1 -1
- package/dist/collection/plugins/groupingRow/grouping.row.plugin.js.map +1 -1
- package/dist/collection/plugins/moveColumn/column.drag.plugin.js +1 -1
- package/dist/collection/plugins/moveColumn/column.drag.plugin.js.map +1 -1
- package/dist/collection/plugins/sorting/sorting.plugin.js +2 -2
- package/dist/collection/plugins/sorting/sorting.plugin.js.map +1 -1
- package/dist/collection/services/column.data.provider.js +32 -88
- package/dist/collection/services/column.data.provider.js.map +1 -1
- package/dist/collection/services/dimension.provider.js +2 -2
- package/dist/collection/services/dimension.provider.js.map +1 -1
- package/dist/collection/types/interfaces.js.map +1 -1
- package/dist/collection/utils/column.utils.js +124 -0
- package/dist/collection/utils/column.utils.js.map +1 -0
- package/dist/collection/utils/index.js +7 -0
- package/dist/collection/utils/index.js.map +1 -1
- package/dist/esm/{column.service-5d14e7e9.js → column.service-af0694c5.js} +3 -4
- package/dist/esm/column.service-af0694c5.js.map +1 -0
- package/dist/esm/{base.plugin-5e7a3c51.js → column.utils-78dd3ef2.js} +122 -3
- package/dist/esm/column.utils-78dd3ef2.js.map +1 -0
- package/dist/esm/edit.utils-ca303802.js +17 -0
- package/dist/esm/edit.utils-ca303802.js.map +1 -0
- package/dist/esm/{events-77b43b40.js → events-cf0893a3.js} +2 -8
- package/dist/esm/events-cf0893a3.js.map +1 -0
- package/dist/esm/{header-cell-renderer-fc999784.js → header-cell-renderer-261317c3.js} +2 -2
- package/dist/esm/{header-cell-renderer-fc999784.js.map → header-cell-renderer-261317c3.js.map} +1 -1
- package/dist/esm/{dimension.helpers-56298828.js → index-f65def08.js} +231 -4
- package/dist/esm/index-f65def08.js.map +1 -0
- package/dist/esm/index.js +5 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/key.utils-4b0093d5.js +98 -0
- package/dist/esm/key.utils-4b0093d5.js.map +1 -0
- package/dist/esm/revo-grid.entry.js +50 -221
- package/dist/esm/revo-grid.entry.js.map +1 -1
- package/dist/esm/revogr-attribution_6.entry.js +8 -8
- package/dist/esm/revogr-clipboard_3.entry.js +5 -5
- package/dist/esm/revogr-clipboard_3.entry.js.map +1 -1
- package/dist/esm/revogr-data_4.entry.js +5 -6
- package/dist/esm/revogr-data_4.entry.js.map +1 -1
- package/dist/esm/{viewport.store-d8e03528.js → row-header-utils-6081260c.js} +9 -3
- package/dist/esm/row-header-utils-6081260c.js.map +1 -0
- package/dist/esm/{selection.helpers-accaad4a.js → selection.helpers-d92697e1.js} +2 -2
- package/dist/esm/{selection.helpers-accaad4a.js.map → selection.helpers-d92697e1.js.map} +1 -1
- package/dist/esm/{throttle-7283692c.js → throttle-041ded8e.js} +2 -2
- package/dist/esm/{throttle-7283692c.js.map → throttle-041ded8e.js.map} +1 -1
- package/dist/revo-grid/column.service-af0694c5.js +5 -0
- package/dist/revo-grid/{column.service-5d14e7e9.js.map → column.service-af0694c5.js.map} +1 -1
- package/dist/revo-grid/column.utils-78dd3ef2.js +5 -0
- package/dist/revo-grid/column.utils-78dd3ef2.js.map +1 -0
- package/dist/revo-grid/edit.utils-ca303802.js +5 -0
- package/dist/revo-grid/edit.utils-ca303802.js.map +1 -0
- package/dist/revo-grid/events-cf0893a3.js +5 -0
- package/dist/revo-grid/events-cf0893a3.js.map +1 -0
- package/dist/revo-grid/{header-cell-renderer-fc999784.js → header-cell-renderer-261317c3.js} +2 -2
- package/dist/revo-grid/index-f65def08.js +5 -0
- package/dist/revo-grid/index-f65def08.js.map +1 -0
- package/dist/revo-grid/index.esm.js +1 -1
- package/dist/revo-grid/key.utils-4b0093d5.js +5 -0
- package/dist/revo-grid/key.utils-4b0093d5.js.map +1 -0
- package/dist/revo-grid/revo-grid.entry.js +1 -1
- package/dist/revo-grid/revo-grid.entry.js.map +1 -1
- package/dist/revo-grid/revogr-attribution_6.entry.js +1 -1
- package/dist/revo-grid/revogr-clipboard_3.entry.js +1 -1
- package/dist/revo-grid/revogr-clipboard_3.entry.js.map +1 -1
- package/dist/revo-grid/revogr-data_4.entry.js +1 -1
- package/dist/revo-grid/revogr-data_4.entry.js.map +1 -1
- package/dist/revo-grid/row-header-utils-6081260c.js +5 -0
- package/dist/revo-grid/row-header-utils-6081260c.js.map +1 -0
- package/dist/revo-grid/selection.helpers-d92697e1.js +5 -0
- package/dist/revo-grid/{selection.helpers-accaad4a.js.map → selection.helpers-d92697e1.js.map} +1 -1
- package/dist/revo-grid/{throttle-7283692c.js → throttle-041ded8e.js} +2 -2
- package/dist/types/components/revoGrid/revo-grid.d.ts +2 -1
- package/dist/types/components.d.ts +2 -2
- package/dist/types/index.d.ts +1 -1
- package/dist/types/plugins/base.plugin.d.ts +1 -1
- package/dist/types/plugins/column.auto-size.plugin.d.ts +2 -4
- package/dist/types/plugins/column.stretch.plugin.d.ts +2 -4
- package/dist/types/services/column.data.provider.d.ts +2 -13
- package/dist/types/services/dimension.provider.d.ts +0 -1
- package/dist/types/types/interfaces.d.ts +11 -11
- package/dist/types/utils/column.utils.d.ts +46 -0
- package/dist/types/utils/index.d.ts +7 -0
- package/hydrate/index.js +304 -357
- package/hydrate/index.mjs +304 -357
- package/package.json +2 -2
- package/standalone/_stringToPath.js +1389 -0
- package/standalone/_stringToPath.js.map +1 -0
- package/standalone/column.service.js +4 -3
- package/standalone/column.service.js.map +1 -1
- package/standalone/consts.js +1 -1
- package/standalone/data.store.js +31 -1410
- package/standalone/data.store.js.map +1 -1
- package/standalone/debounce.js +2 -1
- package/standalone/debounce.js.map +1 -1
- package/standalone/dimension.helpers.js +2 -2
- package/standalone/index.js +6 -3
- package/standalone/index.js.map +1 -1
- package/standalone/index2.js +160 -1
- package/standalone/index2.js.map +1 -1
- package/standalone/isObjectLike.js +195 -0
- package/standalone/isObjectLike.js.map +1 -0
- package/standalone/revo-grid.js +168 -218
- package/standalone/revo-grid.js.map +1 -1
- package/standalone/revogr-clipboard2.js +2 -2
- package/standalone/revogr-clipboard2.js.map +1 -1
- package/standalone/revogr-data2.js +3 -2
- package/standalone/revogr-data2.js.map +1 -1
- package/standalone/revogr-edit.js +1 -1
- package/standalone/revogr-edit2.js +57 -83
- package/standalone/revogr-edit2.js.map +1 -1
- package/standalone/revogr-focus2.js +2 -1
- package/standalone/revogr-focus2.js.map +1 -1
- package/standalone/revogr-header2.js +4 -3
- package/standalone/revogr-header2.js.map +1 -1
- package/standalone/revogr-order-editor2.js +3 -2
- package/standalone/revogr-order-editor2.js.map +1 -1
- package/standalone/revogr-overlay-selection2.js +5 -5
- package/standalone/revogr-row-headers2.js +3 -2
- package/standalone/revogr-row-headers2.js.map +1 -1
- package/standalone/selection.utils.js +2 -1
- package/standalone/selection.utils.js.map +1 -1
- package/standalone/throttle.js +1 -1
- package/standalone/toNumber.js +2 -189
- package/standalone/toNumber.js.map +1 -1
- package/dist/cjs/base.plugin-bf5f43a0.js.map +0 -1
- package/dist/cjs/column.service-01f4a6c7.js.map +0 -1
- package/dist/cjs/dimension.helpers-a6788214.js.map +0 -1
- package/dist/cjs/events-b28cc194.js.map +0 -1
- package/dist/cjs/index-2410bbd9.js +0 -103
- package/dist/cjs/index-2410bbd9.js.map +0 -1
- package/dist/cjs/key.utils-1e48ab8f.js +0 -144
- package/dist/cjs/key.utils-1e48ab8f.js.map +0 -1
- package/dist/cjs/selection.helpers-1a8c8d49.js.map +0 -1
- package/dist/cjs/viewport.store-35a3e7ee.js.map +0 -1
- package/dist/collection/plugins/groupingColumn/grouping.col.plugin.js +0 -43
- package/dist/collection/plugins/groupingColumn/grouping.col.plugin.js.map +0 -1
- package/dist/esm/base.plugin-5e7a3c51.js.map +0 -1
- package/dist/esm/column.service-5d14e7e9.js.map +0 -1
- package/dist/esm/dimension.helpers-56298828.js.map +0 -1
- package/dist/esm/events-77b43b40.js.map +0 -1
- package/dist/esm/index-4e881436.js +0 -77
- package/dist/esm/index-4e881436.js.map +0 -1
- package/dist/esm/key.utils-425c987d.js +0 -133
- package/dist/esm/key.utils-425c987d.js.map +0 -1
- package/dist/esm/viewport.store-d8e03528.js.map +0 -1
- package/dist/revo-grid/base.plugin-5e7a3c51.js +0 -5
- package/dist/revo-grid/base.plugin-5e7a3c51.js.map +0 -1
- package/dist/revo-grid/column.service-5d14e7e9.js +0 -5
- package/dist/revo-grid/dimension.helpers-56298828.js +0 -5
- package/dist/revo-grid/dimension.helpers-56298828.js.map +0 -1
- package/dist/revo-grid/events-77b43b40.js +0 -5
- package/dist/revo-grid/events-77b43b40.js.map +0 -1
- package/dist/revo-grid/index-4e881436.js +0 -5
- package/dist/revo-grid/index-4e881436.js.map +0 -1
- package/dist/revo-grid/key.utils-425c987d.js +0 -5
- package/dist/revo-grid/key.utils-425c987d.js.map +0 -1
- package/dist/revo-grid/selection.helpers-accaad4a.js +0 -5
- package/dist/revo-grid/viewport.store-d8e03528.js +0 -5
- package/dist/revo-grid/viewport.store-d8e03528.js.map +0 -1
- package/dist/types/plugins/groupingColumn/grouping.col.plugin.d.ts +0 -17
- /package/dist/revo-grid/{header-cell-renderer-fc999784.js.map → header-cell-renderer-261317c3.js.map} +0 -0
- /package/dist/revo-grid/{throttle-7283692c.js.map → throttle-041ded8e.js.map} +0 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Built by Revolist OU ❤️
|
|
3
|
+
*/
|
|
4
|
+
import { Y as OsPlatform, Z as KeyCodesEnum, Q as codesLetter, U as keyValues } from './index-f65def08.js';
|
|
5
|
+
|
|
6
|
+
function isLetterKey(code) {
|
|
7
|
+
return (code === 32 || // space
|
|
8
|
+
(code >= 48 && code <= 57) ||
|
|
9
|
+
(code >= 96 && code <= 111) ||
|
|
10
|
+
(code >= 186 && code <= 192) ||
|
|
11
|
+
(code >= 219 && code <= 222) ||
|
|
12
|
+
code >= 226 ||
|
|
13
|
+
(code >= 65 && code <= 90)); // a-z
|
|
14
|
+
}
|
|
15
|
+
function isMetaKey(code) {
|
|
16
|
+
const keys = [
|
|
17
|
+
KeyCodesEnum.ARROW_DOWN,
|
|
18
|
+
KeyCodesEnum.ARROW_UP,
|
|
19
|
+
KeyCodesEnum.ARROW_LEFT,
|
|
20
|
+
KeyCodesEnum.ARROW_RIGHT,
|
|
21
|
+
KeyCodesEnum.HOME,
|
|
22
|
+
KeyCodesEnum.END,
|
|
23
|
+
KeyCodesEnum.DELETE,
|
|
24
|
+
KeyCodesEnum.BACKSPACE,
|
|
25
|
+
KeyCodesEnum.F1,
|
|
26
|
+
KeyCodesEnum.F2,
|
|
27
|
+
KeyCodesEnum.F3,
|
|
28
|
+
KeyCodesEnum.F4,
|
|
29
|
+
KeyCodesEnum.F5,
|
|
30
|
+
KeyCodesEnum.F6,
|
|
31
|
+
KeyCodesEnum.F7,
|
|
32
|
+
KeyCodesEnum.F8,
|
|
33
|
+
KeyCodesEnum.F9,
|
|
34
|
+
KeyCodesEnum.F10,
|
|
35
|
+
KeyCodesEnum.F11,
|
|
36
|
+
KeyCodesEnum.F12,
|
|
37
|
+
KeyCodesEnum.TAB,
|
|
38
|
+
KeyCodesEnum.PAGE_DOWN,
|
|
39
|
+
KeyCodesEnum.PAGE_UP,
|
|
40
|
+
KeyCodesEnum.ENTER,
|
|
41
|
+
KeyCodesEnum.ESCAPE,
|
|
42
|
+
KeyCodesEnum.SHIFT,
|
|
43
|
+
KeyCodesEnum.CAPS_LOCK,
|
|
44
|
+
KeyCodesEnum.ALT,
|
|
45
|
+
];
|
|
46
|
+
return keys.indexOf(code) !== -1;
|
|
47
|
+
}
|
|
48
|
+
// navigator.platform
|
|
49
|
+
function isCtrlKey(code, platform) {
|
|
50
|
+
if (platform.includes(OsPlatform.mac)) {
|
|
51
|
+
return [
|
|
52
|
+
KeyCodesEnum.COMMAND_LEFT,
|
|
53
|
+
KeyCodesEnum.COMMAND_RIGHT,
|
|
54
|
+
KeyCodesEnum.COMMAND_FIREFOX,
|
|
55
|
+
].includes(code);
|
|
56
|
+
}
|
|
57
|
+
return code === KeyCodesEnum.CONTROL;
|
|
58
|
+
}
|
|
59
|
+
function isCtrlMetaKey(code) {
|
|
60
|
+
return [
|
|
61
|
+
KeyCodesEnum.CONTROL,
|
|
62
|
+
KeyCodesEnum.COMMAND_LEFT,
|
|
63
|
+
KeyCodesEnum.COMMAND_RIGHT,
|
|
64
|
+
KeyCodesEnum.COMMAND_FIREFOX,
|
|
65
|
+
].includes(code);
|
|
66
|
+
}
|
|
67
|
+
function isClear(code) {
|
|
68
|
+
return codesLetter.BACKSPACE === code || codesLetter.DELETE === code;
|
|
69
|
+
}
|
|
70
|
+
function isTab(code) {
|
|
71
|
+
return codesLetter.TAB === code;
|
|
72
|
+
}
|
|
73
|
+
function isTabKeyValue(key) {
|
|
74
|
+
return keyValues.TAB === key;
|
|
75
|
+
}
|
|
76
|
+
function isEnterKeyValue(key) {
|
|
77
|
+
return keyValues.ENTER === key;
|
|
78
|
+
}
|
|
79
|
+
function isCut(event) {
|
|
80
|
+
return ((event.ctrlKey && event.code === 'KeyX') || // Ctrl + X on Windows
|
|
81
|
+
(event.metaKey && event.code === 'KeyX')); // Cmd + X on Mac
|
|
82
|
+
}
|
|
83
|
+
function isCopy(event) {
|
|
84
|
+
return ((event.ctrlKey && event.code === 'KeyC') || // Ctrl + C on Windows
|
|
85
|
+
(event.metaKey && event.code === 'KeyC')); // Cmd + C on Mac
|
|
86
|
+
}
|
|
87
|
+
function isPaste(event) {
|
|
88
|
+
return ((event.ctrlKey && event.code === 'KeyV') || // Ctrl + V on Windows
|
|
89
|
+
(event.metaKey && event.code === 'KeyV')); // Cmd + V on Mac
|
|
90
|
+
}
|
|
91
|
+
function isAll(event) {
|
|
92
|
+
return ((event.ctrlKey && event.code === 'KeyA') || // Ctrl + A on Windows
|
|
93
|
+
(event.metaKey && event.code === 'KeyA')); // Cmd + A on Mac
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
export { isMetaKey as a, isCtrlKey as b, isCtrlMetaKey as c, isClear as d, isTab as e, isTabKeyValue as f, isEnterKeyValue as g, isCut as h, isLetterKey as i, isCopy as j, isPaste as k, isAll as l };
|
|
97
|
+
|
|
98
|
+
//# sourceMappingURL=key.utils-4b0093d5.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"key.utils-4b0093d5.js","mappings":"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","names":[],"sources":["src/utils/key.utils.ts"],"sourcesContent":["import KeyCodesEnum, { codesLetter, keyValues } from './key.codes';\nimport OsPlatform from './platform';\n\nexport function isLetterKey(code: number): boolean {\n return (\n code === 32 || // space\n (code >= 48 && code <= 57) ||\n (code >= 96 && code <= 111) ||\n (code >= 186 && code <= 192) ||\n (code >= 219 && code <= 222) ||\n code >= 226 ||\n (code >= 65 && code <= 90)\n ); // a-z\n}\n\nexport function isMetaKey(code: number): boolean {\n const keys: KeyCodesEnum[] = [\n KeyCodesEnum.ARROW_DOWN,\n KeyCodesEnum.ARROW_UP,\n KeyCodesEnum.ARROW_LEFT,\n KeyCodesEnum.ARROW_RIGHT,\n KeyCodesEnum.HOME,\n KeyCodesEnum.END,\n KeyCodesEnum.DELETE,\n KeyCodesEnum.BACKSPACE,\n KeyCodesEnum.F1,\n KeyCodesEnum.F2,\n KeyCodesEnum.F3,\n KeyCodesEnum.F4,\n KeyCodesEnum.F5,\n KeyCodesEnum.F6,\n KeyCodesEnum.F7,\n KeyCodesEnum.F8,\n KeyCodesEnum.F9,\n KeyCodesEnum.F10,\n KeyCodesEnum.F11,\n KeyCodesEnum.F12,\n KeyCodesEnum.TAB,\n KeyCodesEnum.PAGE_DOWN,\n KeyCodesEnum.PAGE_UP,\n KeyCodesEnum.ENTER,\n KeyCodesEnum.ESCAPE,\n KeyCodesEnum.SHIFT,\n KeyCodesEnum.CAPS_LOCK,\n KeyCodesEnum.ALT,\n ];\n\n return keys.indexOf(code) !== -1;\n}\n\n// navigator.platform\nexport function isCtrlKey(code: number, platform: string): boolean {\n if (platform.includes(OsPlatform.mac)) {\n return [\n KeyCodesEnum.COMMAND_LEFT,\n KeyCodesEnum.COMMAND_RIGHT,\n KeyCodesEnum.COMMAND_FIREFOX,\n ].includes(code);\n }\n\n return code === KeyCodesEnum.CONTROL;\n}\n\nexport function isCtrlMetaKey(code: KeyCodesEnum): boolean {\n return [\n KeyCodesEnum.CONTROL,\n KeyCodesEnum.COMMAND_LEFT,\n KeyCodesEnum.COMMAND_RIGHT,\n KeyCodesEnum.COMMAND_FIREFOX,\n ].includes(code);\n}\n\nexport function isClear(code: string): boolean {\n return codesLetter.BACKSPACE === code || codesLetter.DELETE === code;\n}\n\nexport function isTab(code: string): boolean {\n return codesLetter.TAB === code;\n}\nexport function isTabKeyValue(key: string): boolean {\n return keyValues.TAB === key;\n}\n\nexport function isEnterKeyValue(key: string): boolean {\n return keyValues.ENTER === key;\n}\n\nexport function isCut(event: KeyboardEvent): boolean {\n return (\n (event.ctrlKey && event.code === 'KeyX') || // Ctrl + X on Windows\n (event.metaKey && event.code === 'KeyX')\n ); // Cmd + X on Mac\n}\nexport function isCopy(event: KeyboardEvent): boolean {\n return (\n (event.ctrlKey && event.code === 'KeyC') || // Ctrl + C on Windows\n (event.metaKey && event.code === 'KeyC')\n ); // Cmd + C on Mac\n}\nexport function isPaste(event: KeyboardEvent): boolean {\n return (\n (event.ctrlKey && event.code === 'KeyV') || // Ctrl + V on Windows\n (event.metaKey && event.code === 'KeyV')\n ); // Cmd + V on Mac\n}\nexport function isAll(event: KeyboardEvent): boolean {\n return (\n (event.ctrlKey && event.code === 'KeyA') || // Ctrl + A on Windows\n (event.metaKey && event.code === 'KeyA')\n ); // Cmd + A on Mac\n}\n"],"version":3}
|
|
@@ -2,18 +2,17 @@
|
|
|
2
2
|
* Built by Revolist OU ❤️
|
|
3
3
|
*/
|
|
4
4
|
import { h, r as registerInstance, c as createEvent, H as Host, a as getElement } from './index-a61f225b.js';
|
|
5
|
-
import { _ as _baseIteratee,
|
|
6
|
-
import {
|
|
5
|
+
import { _ as _baseIteratee, $ as isArrayLike_1, a0 as keys_1, a1 as findIndex_1, D as DataStore, b as getSourceItem, W as reduce_1, e as getSourceItemVirtualIndexByProp, s as setSourceByVirtualIndex, a2 as each, a as getVisibleSourceItem, f as gatherTrimmedItems, j as getItemByIndex, R as RESIZE_INTERVAL, X as isArray_1, a3 as _baseProperty, a4 as _baseKeys, a5 as _getTag, a6 as range_1, v as setStore, a7 as toInteger_1, a8 as _isIterateeCall, q as timeout, g as getPhysical, d as setItems, n as getScrollbarSize, i as getItemByPosition } from './index-f65def08.js';
|
|
6
|
+
import { c as columnTypes, g as getColumnType, r as rowTypes, i as isRowType, D as DimensionStore, a as getColumnSizes, B as BasePlugin, f as getColumnByProp, b as isColGrouping, d as getColumns } from './column.utils-78dd3ef2.js';
|
|
7
7
|
import { _ as _baseGetTag, c as isObjectLike_1 } from './toNumber-8de324a7.js';
|
|
8
|
-
import { E as EMPTY_INDEX, b as SelectionStoreConnector } from './selection.helpers-
|
|
8
|
+
import { E as EMPTY_INDEX, b as SelectionStoreConnector } from './selection.helpers-d92697e1.js';
|
|
9
9
|
import { d as debounce_1 } from './debounce-7781346d.js';
|
|
10
|
-
import {
|
|
11
|
-
import { V as ViewportStore } from './viewport.store-d8e03528.js';
|
|
10
|
+
import { V as ViewportStore, f as calculateRowHeaderSize } from './row-header-utils-6081260c.js';
|
|
12
11
|
import { F as FILTER_PROP, i as isFilterBtn } from './filter.button-37373672.js';
|
|
13
|
-
import { i as isGrouping, g as getGroupingName, G as GROUP_EXPANDED, a as getParsedGroup, b as isSameGroup, c as GROUP_DEPTH, P as PSEUDO_GROUP_ITEM_VALUE, d as PSEUDO_GROUP_ITEM_ID, e as GROUPING_ROW_TYPE, f as PSEUDO_GROUP_COLUMN, h as GROUP_EXPAND_EVENT, j as gatherGrouping, k as isGroupingColumn, v as viewportDataPartition, H as HEADER_SLOT, C as CONTENT_SLOT, F as FOOTER_SLOT, D as DATA_SLOT } from './column.service-
|
|
14
|
-
import { c as calculateRowHeaderSize, g as getPropertyFromEvent } from './events-77b43b40.js';
|
|
12
|
+
import { i as isGrouping, g as getGroupingName, G as GROUP_EXPANDED, a as getParsedGroup, b as isSameGroup, c as GROUP_DEPTH, P as PSEUDO_GROUP_ITEM_VALUE, d as PSEUDO_GROUP_ITEM_ID, e as GROUPING_ROW_TYPE, f as PSEUDO_GROUP_COLUMN, h as GROUP_EXPAND_EVENT, j as gatherGrouping, k as isGroupingColumn, v as viewportDataPartition, H as HEADER_SLOT, C as CONTENT_SLOT, F as FOOTER_SLOT, D as DATA_SLOT } from './column.service-af0694c5.js';
|
|
15
13
|
import { d as dispatch } from './dispatcher-ea08404f.js';
|
|
16
|
-
import { O as ON_COLUMN_CLICK } from './header-cell-renderer-
|
|
14
|
+
import { O as ON_COLUMN_CLICK } from './header-cell-renderer-261317c3.js';
|
|
15
|
+
import { g as getPropertyFromEvent } from './events-cf0893a3.js';
|
|
17
16
|
|
|
18
17
|
class ThemeCompact {
|
|
19
18
|
constructor() {
|
|
@@ -80,8 +79,8 @@ class ThemeService {
|
|
|
80
79
|
}
|
|
81
80
|
}
|
|
82
81
|
|
|
83
|
-
var baseIteratee
|
|
84
|
-
isArrayLike$
|
|
82
|
+
var baseIteratee = _baseIteratee,
|
|
83
|
+
isArrayLike$1 = isArrayLike_1,
|
|
85
84
|
keys = keys_1;
|
|
86
85
|
|
|
87
86
|
/**
|
|
@@ -94,8 +93,8 @@ var baseIteratee$1 = _baseIteratee,
|
|
|
94
93
|
function createFind$1(findIndexFunc) {
|
|
95
94
|
return function(collection, predicate, fromIndex) {
|
|
96
95
|
var iterable = Object(collection);
|
|
97
|
-
if (!isArrayLike$
|
|
98
|
-
var iteratee = baseIteratee
|
|
96
|
+
if (!isArrayLike$1(collection)) {
|
|
97
|
+
var iteratee = baseIteratee(predicate);
|
|
99
98
|
collection = keys(collection);
|
|
100
99
|
predicate = function(key) { return iteratee(iterable[key], key, iterable); };
|
|
101
100
|
}
|
|
@@ -149,133 +148,23 @@ var find = createFind(findIndex);
|
|
|
149
148
|
|
|
150
149
|
var find_1 = find;
|
|
151
150
|
|
|
152
|
-
var baseEach = _baseEach,
|
|
153
|
-
isArrayLike$1 = isArrayLike_1;
|
|
154
|
-
|
|
155
|
-
/**
|
|
156
|
-
* The base implementation of `_.map` without support for iteratee shorthands.
|
|
157
|
-
*
|
|
158
|
-
* @private
|
|
159
|
-
* @param {Array|Object} collection The collection to iterate over.
|
|
160
|
-
* @param {Function} iteratee The function invoked per iteration.
|
|
161
|
-
* @returns {Array} Returns the new mapped array.
|
|
162
|
-
*/
|
|
163
|
-
function baseMap$1(collection, iteratee) {
|
|
164
|
-
var index = -1,
|
|
165
|
-
result = isArrayLike$1(collection) ? Array(collection.length) : [];
|
|
166
|
-
|
|
167
|
-
baseEach(collection, function(value, key, collection) {
|
|
168
|
-
result[++index] = iteratee(value, key, collection);
|
|
169
|
-
});
|
|
170
|
-
return result;
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
var _baseMap = baseMap$1;
|
|
174
|
-
|
|
175
|
-
var arrayMap = _arrayMap,
|
|
176
|
-
baseIteratee = _baseIteratee,
|
|
177
|
-
baseMap = _baseMap,
|
|
178
|
-
isArray$1 = isArray_1;
|
|
179
|
-
|
|
180
|
-
/**
|
|
181
|
-
* Creates an array of values by running each element in `collection` thru
|
|
182
|
-
* `iteratee`. The iteratee is invoked with three arguments:
|
|
183
|
-
* (value, index|key, collection).
|
|
184
|
-
*
|
|
185
|
-
* Many lodash methods are guarded to work as iteratees for methods like
|
|
186
|
-
* `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`.
|
|
187
|
-
*
|
|
188
|
-
* The guarded methods are:
|
|
189
|
-
* `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`,
|
|
190
|
-
* `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`,
|
|
191
|
-
* `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`,
|
|
192
|
-
* `template`, `trim`, `trimEnd`, `trimStart`, and `words`
|
|
193
|
-
*
|
|
194
|
-
* @static
|
|
195
|
-
* @memberOf _
|
|
196
|
-
* @since 0.1.0
|
|
197
|
-
* @category Collection
|
|
198
|
-
* @param {Array|Object} collection The collection to iterate over.
|
|
199
|
-
* @param {Function} [iteratee=_.identity] The function invoked per iteration.
|
|
200
|
-
* @returns {Array} Returns the new mapped array.
|
|
201
|
-
* @example
|
|
202
|
-
*
|
|
203
|
-
* function square(n) {
|
|
204
|
-
* return n * n;
|
|
205
|
-
* }
|
|
206
|
-
*
|
|
207
|
-
* _.map([4, 8], square);
|
|
208
|
-
* // => [16, 64]
|
|
209
|
-
*
|
|
210
|
-
* _.map({ 'a': 4, 'b': 8 }, square);
|
|
211
|
-
* // => [16, 64] (iteration order is not guaranteed)
|
|
212
|
-
*
|
|
213
|
-
* var users = [
|
|
214
|
-
* { 'user': 'barney' },
|
|
215
|
-
* { 'user': 'fred' }
|
|
216
|
-
* ];
|
|
217
|
-
*
|
|
218
|
-
* // The `_.property` iteratee shorthand.
|
|
219
|
-
* _.map(users, 'user');
|
|
220
|
-
* // => ['barney', 'fred']
|
|
221
|
-
*/
|
|
222
|
-
function map(collection, iteratee) {
|
|
223
|
-
var func = isArray$1(collection) ? arrayMap : baseMap;
|
|
224
|
-
return func(collection, baseIteratee(iteratee));
|
|
225
|
-
}
|
|
226
|
-
|
|
227
|
-
var map_1 = map;
|
|
228
|
-
|
|
229
|
-
class GroupingColumnPlugin extends BasePlugin {
|
|
230
|
-
static gatherGroup(res, colData, collection, level = 0) {
|
|
231
|
-
// group template
|
|
232
|
-
const group = Object.assign(Object.assign({}, colData), { level, ids: [] });
|
|
233
|
-
// check columns for update
|
|
234
|
-
for (let k in collection.columns) {
|
|
235
|
-
const key = k;
|
|
236
|
-
const resultItem = res.columns[key];
|
|
237
|
-
const collectionItem = collection.columns[key];
|
|
238
|
-
// if column data
|
|
239
|
-
if (isArray_1(resultItem) && isArray_1(collectionItem)) {
|
|
240
|
-
// fill columns
|
|
241
|
-
resultItem.push(...collectionItem);
|
|
242
|
-
// fill grouping
|
|
243
|
-
if (collectionItem.length) {
|
|
244
|
-
res.columnGrouping[key].push(Object.assign(Object.assign({}, group), { ids: map_1(collectionItem, 'prop') }));
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
// merge column groupings
|
|
249
|
-
for (let k in collection.columnGrouping) {
|
|
250
|
-
const key = k;
|
|
251
|
-
const collectionItem = collection.columnGrouping[key];
|
|
252
|
-
res.columnGrouping[key].push(...collectionItem);
|
|
253
|
-
}
|
|
254
|
-
res.maxLevel = Math.max(res.maxLevel, collection.maxLevel);
|
|
255
|
-
res.sort = Object.assign(Object.assign({}, res.sort), collection.sort);
|
|
256
|
-
return res;
|
|
257
|
-
}
|
|
258
|
-
}
|
|
259
|
-
/**
|
|
260
|
-
* Check if column is grouping column
|
|
261
|
-
*/
|
|
262
|
-
function isColGrouping(colData) {
|
|
263
|
-
return !!colData.children;
|
|
264
|
-
}
|
|
265
|
-
|
|
266
151
|
class ColumnDataProvider {
|
|
267
152
|
get order() {
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
153
|
+
const order = {};
|
|
154
|
+
const sorting = this.sorting;
|
|
155
|
+
if (sorting) {
|
|
156
|
+
Object.keys(sorting).forEach((prop) => {
|
|
157
|
+
order[prop] = sorting[prop].order;
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
return order;
|
|
272
161
|
}
|
|
273
162
|
get stores() {
|
|
274
163
|
return this.dataSources;
|
|
275
164
|
}
|
|
276
165
|
constructor() {
|
|
277
166
|
this.sorting = null;
|
|
278
|
-
this.dataSources =
|
|
167
|
+
this.dataSources = columnTypes.reduce((sources, k) => {
|
|
279
168
|
sources[k] = new DataStore(k);
|
|
280
169
|
return sources;
|
|
281
170
|
}, {});
|
|
@@ -337,7 +226,7 @@ class ColumnDataProvider {
|
|
|
337
226
|
updateColumns(cols) {
|
|
338
227
|
// collect column by type and propert
|
|
339
228
|
const columnByKey = cols.reduce((res, c) => {
|
|
340
|
-
const type =
|
|
229
|
+
const type = getColumnType(c);
|
|
341
230
|
if (!res[type]) {
|
|
342
231
|
res[type] = {};
|
|
343
232
|
}
|
|
@@ -346,20 +235,32 @@ class ColumnDataProvider {
|
|
|
346
235
|
}, {});
|
|
347
236
|
// find indexes in source
|
|
348
237
|
const colByIndex = {};
|
|
349
|
-
|
|
238
|
+
for (const t in columnByKey) {
|
|
239
|
+
if (!columnByKey.hasOwnProperty(t)) {
|
|
240
|
+
continue;
|
|
241
|
+
}
|
|
242
|
+
const type = t;
|
|
243
|
+
const colsToUpdate = columnByKey[type];
|
|
350
244
|
const items = this.dataSources[type].store.get('source');
|
|
351
|
-
colByIndex[type] =
|
|
245
|
+
colByIndex[type] = {};
|
|
246
|
+
for (let i = 0; i < items.length; i++) {
|
|
247
|
+
const rgCol = items[i];
|
|
352
248
|
const colToUpdateIfExists = colsToUpdate === null || colsToUpdate === void 0 ? void 0 : colsToUpdate[rgCol.prop];
|
|
353
249
|
if (colToUpdateIfExists) {
|
|
354
|
-
|
|
250
|
+
colByIndex[type][i] = colToUpdateIfExists;
|
|
355
251
|
}
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
for (const t in colByIndex) {
|
|
255
|
+
if (!colByIndex.hasOwnProperty(t)) {
|
|
256
|
+
continue;
|
|
257
|
+
}
|
|
258
|
+
const type = t;
|
|
259
|
+
setSourceByVirtualIndex(this.dataSources[type].store, colByIndex[type] || {});
|
|
260
|
+
}
|
|
360
261
|
}
|
|
361
262
|
updateColumn(column, index) {
|
|
362
|
-
const type =
|
|
263
|
+
const type = getColumnType(column);
|
|
363
264
|
setSourceByVirtualIndex(this.dataSources[type].store, { [index]: column });
|
|
364
265
|
}
|
|
365
266
|
updateColumnSorting(column, index, sorting, additive) {
|
|
@@ -376,7 +277,7 @@ class ColumnDataProvider {
|
|
|
376
277
|
}
|
|
377
278
|
clearSorting() {
|
|
378
279
|
const types = reduce_1(this.sorting, (r, c) => {
|
|
379
|
-
const k =
|
|
280
|
+
const k = getColumnType(c);
|
|
380
281
|
r[k] = true;
|
|
381
282
|
return r;
|
|
382
283
|
}, {});
|
|
@@ -387,78 +288,6 @@ class ColumnDataProvider {
|
|
|
387
288
|
});
|
|
388
289
|
this.sorting = {};
|
|
389
290
|
}
|
|
390
|
-
static getSizes(cols) {
|
|
391
|
-
return reduce_1(cols, (res, c, i) => {
|
|
392
|
-
if (c.size) {
|
|
393
|
-
res[i] = c.size;
|
|
394
|
-
}
|
|
395
|
-
return res;
|
|
396
|
-
}, {});
|
|
397
|
-
}
|
|
398
|
-
static getColumnByProp(columns, prop) {
|
|
399
|
-
return find_1(columns, c => {
|
|
400
|
-
if (isColGrouping(c)) {
|
|
401
|
-
return ColumnDataProvider.getColumnByProp(c.children, prop);
|
|
402
|
-
}
|
|
403
|
-
return c.prop === prop;
|
|
404
|
-
});
|
|
405
|
-
}
|
|
406
|
-
// columns processing
|
|
407
|
-
static getColumns(columns, level = 0, types) {
|
|
408
|
-
const collection = {
|
|
409
|
-
// columns as they are in stores per type
|
|
410
|
-
columns: {
|
|
411
|
-
rgCol: [],
|
|
412
|
-
colPinStart: [],
|
|
413
|
-
colPinEnd: [],
|
|
414
|
-
},
|
|
415
|
-
// columns grouped by prop for quick access
|
|
416
|
-
columnByProp: {},
|
|
417
|
-
// column grouping
|
|
418
|
-
columnGrouping: {
|
|
419
|
-
rgCol: [],
|
|
420
|
-
colPinStart: [],
|
|
421
|
-
colPinEnd: [],
|
|
422
|
-
},
|
|
423
|
-
// max depth level for column grouping
|
|
424
|
-
maxLevel: level,
|
|
425
|
-
// sorting
|
|
426
|
-
sort: {},
|
|
427
|
-
};
|
|
428
|
-
return reduce_1(columns, (res, colData) => {
|
|
429
|
-
// Grouped column
|
|
430
|
-
if (isColGrouping(colData)) {
|
|
431
|
-
return GroupingColumnPlugin.gatherGroup(res, colData, ColumnDataProvider.getColumns(colData.children, level + 1, types), level);
|
|
432
|
-
}
|
|
433
|
-
// Regular column
|
|
434
|
-
const regularColumn = Object.assign(Object.assign({}, (colData.columnType && types && types[colData.columnType])), colData);
|
|
435
|
-
// Regular column, no Pin
|
|
436
|
-
if (!regularColumn.pin) {
|
|
437
|
-
res.columns.rgCol.push(regularColumn);
|
|
438
|
-
// Pin
|
|
439
|
-
}
|
|
440
|
-
else {
|
|
441
|
-
res.columns[regularColumn.pin].push(regularColumn);
|
|
442
|
-
}
|
|
443
|
-
if (regularColumn.order) {
|
|
444
|
-
res.sort[regularColumn.prop] = regularColumn;
|
|
445
|
-
}
|
|
446
|
-
// technically it's possible that some columns have same prop, but better to avoid it
|
|
447
|
-
if (!res.columnByProp[regularColumn.prop]) {
|
|
448
|
-
res.columnByProp[regularColumn.prop] = [];
|
|
449
|
-
}
|
|
450
|
-
res.columnByProp[regularColumn.prop].push(regularColumn);
|
|
451
|
-
// trigger setup hook if present
|
|
452
|
-
regularColumn.beforeSetup && regularColumn.beforeSetup(regularColumn);
|
|
453
|
-
return res;
|
|
454
|
-
}, collection);
|
|
455
|
-
}
|
|
456
|
-
static getColumnType(rgCol) {
|
|
457
|
-
if (rgCol.pin) {
|
|
458
|
-
return rgCol.pin;
|
|
459
|
-
}
|
|
460
|
-
return 'rgCol';
|
|
461
|
-
}
|
|
462
291
|
}
|
|
463
292
|
|
|
464
293
|
/**
|
|
@@ -609,7 +438,7 @@ class DimensionProvider {
|
|
|
609
438
|
// setItemCount
|
|
610
439
|
this.stores[type].setStore({ count: items.length });
|
|
611
440
|
// setCustomSizes
|
|
612
|
-
const newSizes =
|
|
441
|
+
const newSizes = getColumnSizes(items);
|
|
613
442
|
this.stores[type].setDimensionSize(newSizes);
|
|
614
443
|
const vpUpdate = {
|
|
615
444
|
// this triggers drop on realCount change
|
|
@@ -724,7 +553,7 @@ class AutoSizeColumnPlugin extends BasePlugin {
|
|
|
724
553
|
this.columnSet(columns);
|
|
725
554
|
};
|
|
726
555
|
const headerDblClick = ({ detail }) => {
|
|
727
|
-
const type =
|
|
556
|
+
const type = getColumnType(detail.column);
|
|
728
557
|
const size = this.getColumnSize(detail.index, type);
|
|
729
558
|
if (size) {
|
|
730
559
|
this.providers.dimension.setCustomSizes(type, {
|
|
@@ -1547,7 +1376,7 @@ class SortingPlugin extends BasePlugin {
|
|
|
1547
1376
|
const columns = (await this.revogrid.getColumns());
|
|
1548
1377
|
const sortingFunc = {};
|
|
1549
1378
|
for (let prop in order) {
|
|
1550
|
-
const cmp = this.getComparer(
|
|
1379
|
+
const cmp = this.getComparer(getColumnByProp(columns, prop), order[prop]);
|
|
1551
1380
|
sortingFunc[prop] = cmp;
|
|
1552
1381
|
}
|
|
1553
1382
|
this.runSorting(order, sortingFunc);
|
|
@@ -3335,7 +3164,7 @@ const RevoGridComponent = class {
|
|
|
3335
3164
|
/** Open editor for cell. */
|
|
3336
3165
|
async setCellEdit(rgRow, prop, rowSource = 'rgRow') {
|
|
3337
3166
|
var _a;
|
|
3338
|
-
const rgCol =
|
|
3167
|
+
const rgCol = getColumnByProp(this.columns, prop);
|
|
3339
3168
|
if (!rgCol) {
|
|
3340
3169
|
return;
|
|
3341
3170
|
}
|
|
@@ -3559,7 +3388,7 @@ const RevoGridComponent = class {
|
|
|
3559
3388
|
this.columnChanged(this.columns);
|
|
3560
3389
|
}
|
|
3561
3390
|
columnChanged(newVal = []) {
|
|
3562
|
-
const columnGather =
|
|
3391
|
+
const columnGather = getColumns(newVal, 0, this.columnTypes);
|
|
3563
3392
|
this.beforecolumnsset.emit(columnGather);
|
|
3564
3393
|
this.dimensionProvider.applyNewColumns(columnGather.columns, this.disableVirtualX);
|
|
3565
3394
|
this.beforecolumnapplied.emit(columnGather);
|
|
@@ -3869,7 +3698,7 @@ const RevoGridComponent = class {
|
|
|
3869
3698
|
const headerProperties = Object.assign(Object.assign({}, view.headerProp), { type: view.type, additionalData: this.additionalData, viewportCol: view.viewportCol, selectionStore: view.columnSelectionStore, canResize: this.resize, readonly: this.readonly, columnFilter: !!this.filter });
|
|
3870
3699
|
// Column headers
|
|
3871
3700
|
const dataViews = [
|
|
3872
|
-
h("revogr-header", Object.assign({ key: '
|
|
3701
|
+
h("revogr-header", Object.assign({ key: 'bada77126c317da09a9826312186c16617c7b0af' }, headerProperties, { slot: HEADER_SLOT })),
|
|
3873
3702
|
];
|
|
3874
3703
|
// Render viewport data (vertical sections)
|
|
3875
3704
|
view.dataPorts.forEach(data => {
|
|
@@ -3891,12 +3720,12 @@ const RevoGridComponent = class {
|
|
|
3891
3720
|
const typeCol = 'rgCol';
|
|
3892
3721
|
const viewports = this.viewportProvider.stores;
|
|
3893
3722
|
const dimensions = this.dimensionProvider.stores;
|
|
3894
|
-
return (h(Host, { key: '
|
|
3723
|
+
return (h(Host, { key: '9b95aef4de8af770036a733986e7e0fe2dd3ffda' }, this.hideAttribution ? null : (h("revogr-attribution", { class: "attribution" })), h("div", { key: '68dbc0fca826a0089402157d301c49a0776e9007', class: "main-viewport", onClick: (e) => {
|
|
3895
3724
|
var _a;
|
|
3896
3725
|
if (e.currentTarget === e.target) {
|
|
3897
3726
|
(_a = this.viewport) === null || _a === void 0 ? void 0 : _a.clearEdit();
|
|
3898
3727
|
}
|
|
3899
|
-
} }, h("div", { key: '
|
|
3728
|
+
} }, h("div", { key: '6f927e04dd8c7e542a87fdc0a4f6d74248c65ccb', class: "viewports" }, h("slot", { key: 'b6d421fa412b34ce9821cd1fa30a80ae37282f37', name: "viewport" }), viewportSections, h("revogr-scroll-virtual", { key: '4ce3045201685f6c6c617c84fddc5a3d531034bd', class: "vertical", dimension: typeRow, viewportStore: viewports[typeRow].store, dimensionStore: dimensions[typeRow].store, ref: el => this.scrollingService.registerElement(el, 'rowScroll'), onScrollvirtual: e => this.scrollingService.proxyScroll(e.detail) }), h(OrderRenderer, { key: 'e5bd92c37bdc31f0601a4d4cf4a62026e0e25406', ref: e => (this.orderService = e) }))), h("revogr-scroll-virtual", { key: 'dbda0fb90cf6a9eb6ac66ca16bcff30cf254b1e1', class: "horizontal", dimension: typeCol, viewportStore: viewports[typeCol].store, dimensionStore: dimensions[typeCol].store, ref: el => this.scrollingService.registerElement(el, 'colScroll'), onScrollvirtual: e => this.scrollingService.proxyScroll(e.detail) }), this.extraElements));
|
|
3900
3729
|
}
|
|
3901
3730
|
disconnectedCallback() {
|
|
3902
3731
|
// Remove all plugins, to avoid memory leaks and unexpected behaviour when the component is removed
|