tabulator-tables 5.5.4 → 5.6.0
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/bower.json +1 -1
- package/dist/css/tabulator.css +72 -2
- package/dist/css/tabulator.css.map +1 -1
- package/dist/css/tabulator.min.css +1 -1
- package/dist/css/tabulator.min.css.map +1 -1
- package/dist/css/tabulator_bootstrap3.css +72 -2
- package/dist/css/tabulator_bootstrap3.css.map +1 -1
- package/dist/css/tabulator_bootstrap3.min.css +1 -1
- package/dist/css/tabulator_bootstrap3.min.css.map +1 -1
- package/dist/css/tabulator_bootstrap4.css +72 -2
- package/dist/css/tabulator_bootstrap4.css.map +1 -1
- package/dist/css/tabulator_bootstrap4.min.css +1 -1
- package/dist/css/tabulator_bootstrap4.min.css.map +1 -1
- package/dist/css/tabulator_bootstrap5.css +72 -2
- package/dist/css/tabulator_bootstrap5.css.map +1 -1
- package/dist/css/tabulator_bootstrap5.min.css +1 -1
- package/dist/css/tabulator_bootstrap5.min.css.map +1 -1
- package/dist/css/tabulator_bulma.css +72 -2
- package/dist/css/tabulator_bulma.css.map +1 -1
- package/dist/css/tabulator_bulma.min.css +1 -1
- package/dist/css/tabulator_bulma.min.css.map +1 -1
- package/dist/css/tabulator_materialize.css +72 -2
- package/dist/css/tabulator_materialize.css.map +1 -1
- package/dist/css/tabulator_materialize.min.css +1 -1
- package/dist/css/tabulator_materialize.min.css.map +1 -1
- package/dist/css/tabulator_midnight.css +72 -2
- package/dist/css/tabulator_midnight.css.map +1 -1
- package/dist/css/tabulator_midnight.min.css +1 -1
- package/dist/css/tabulator_midnight.min.css.map +1 -1
- package/dist/css/tabulator_modern.css +72 -2
- package/dist/css/tabulator_modern.css.map +1 -1
- package/dist/css/tabulator_modern.min.css +1 -1
- package/dist/css/tabulator_modern.min.css.map +1 -1
- package/dist/css/tabulator_semanticui.css +72 -2
- package/dist/css/tabulator_semanticui.css.map +1 -1
- package/dist/css/tabulator_semanticui.min.css +1 -1
- package/dist/css/tabulator_semanticui.min.css.map +1 -1
- package/dist/css/tabulator_simple.css +72 -2
- package/dist/css/tabulator_simple.css.map +1 -1
- package/dist/css/tabulator_simple.min.css +1 -1
- package/dist/css/tabulator_simple.min.css.map +1 -1
- package/dist/css/tabulator_site.css +74 -4
- package/dist/css/tabulator_site.css.map +1 -1
- package/dist/css/tabulator_site.min.css +1 -1
- package/dist/css/tabulator_site.min.css.map +1 -1
- package/dist/js/tabulator.js +1830 -244
- package/dist/js/tabulator.js.map +1 -1
- package/dist/js/tabulator.min.js +2 -2
- package/dist/js/tabulator.min.js.map +1 -1
- package/dist/js/tabulator_esm.js +1900 -312
- package/dist/js/tabulator_esm.js.map +1 -1
- package/dist/js/tabulator_esm.min.js +2 -2
- package/dist/js/tabulator_esm.min.js.map +1 -1
- package/package.json +2 -2
- package/src/js/core/ColumnManager.js +4 -0
- package/src/js/core/CoreFeature.js +2 -2
- package/src/js/core/RowManager.js +9 -1
- package/src/js/core/Tabulator.js +1 -0
- package/src/js/core/TabulatorFull.js +1 -1
- package/src/js/core/column/Column.js +6 -0
- package/src/js/core/modules/optional.js +2 -1
- package/src/js/core/rendering/renderers/BasicVertical.js +4 -2
- package/src/js/core/rendering/renderers/VirtualDomHorizontal.js +1 -1
- package/src/js/core/row/PseudoRow.js +2 -0
- package/src/js/core/tools/Alert.js +4 -0
- package/src/js/core/tools/DeprecationAdvisor.js +5 -1
- package/src/js/core/tools/Helpers.js +1 -1
- package/src/js/core/tools/InteractionMonitor.js +3 -3
- package/src/js/modules/Clipboard/Clipboard.js +5 -3
- package/src/js/modules/Clipboard/defaults/pasteActions.js +49 -6
- package/src/js/modules/Clipboard/defaults/pasteParsers.js +69 -14
- package/src/js/modules/ColumnCalcs/ColumnCalcs.js +7 -1
- package/src/js/modules/Edit/Edit.js +55 -19
- package/src/js/modules/Export/Export.js +38 -18
- package/src/js/modules/Format/defaults/formatters/rowSelection.js +2 -2
- package/src/js/modules/Format/defaults/formatters/rownum.js +5 -1
- package/src/js/modules/FrozenColumns/FrozenColumns.js +10 -11
- package/src/js/modules/FrozenRows/FrozenRows.js +6 -1
- package/src/js/modules/History/History.js +2 -2
- package/src/js/modules/History/defaults/redoers.js +4 -0
- package/src/js/modules/History/defaults/undoers.js +4 -0
- package/src/js/modules/Keybindings/defaults/actions.js +38 -1
- package/src/js/modules/Keybindings/defaults/bindings.js +16 -1
- package/src/js/modules/Menu/Menu.js +3 -1
- package/src/js/modules/MoveColumns/MoveColumns.js +5 -0
- package/src/js/modules/Popup/Popup.js +1 -1
- package/src/js/modules/ResizeTable/ResizeTable.js +3 -3
- package/src/js/modules/SelectRange/Range.js +347 -0
- package/src/js/modules/SelectRange/RangeComponent.js +93 -0
- package/src/js/modules/SelectRange/SelectRange.js +855 -0
- package/src/js/modules/SelectRow/SelectRow.js +46 -26
- package/src/js/modules/Sort/Sort.js +111 -105
- package/src/js/modules/Validate/defaults/validators.js +11 -0
- package/src/scss/tabulator.scss +95 -13
- package/src/scss/themes/bulma/tabulator_bulma.scss +7 -0
- package/src/scss/themes/materialize/tabulator_materialize.scss +7 -1
- package/src/scss/themes/tabulator_midnight.scss +13 -0
- package/src/scss/themes/tabulator_modern.scss +9 -0
- package/src/scss/themes/tabulator_site.scss +13 -2
|
@@ -35,10 +35,20 @@ class Export extends Module{
|
|
|
35
35
|
this.cloneTableStyle = style;
|
|
36
36
|
this.config = config || {};
|
|
37
37
|
this.colVisProp = colVisProp;
|
|
38
|
-
|
|
39
|
-
var headers
|
|
40
|
-
|
|
41
|
-
|
|
38
|
+
|
|
39
|
+
var headers, body;
|
|
40
|
+
|
|
41
|
+
if (range === 'range') {
|
|
42
|
+
var columns = this.table.modules.selectRange.selectedColumns();
|
|
43
|
+
headers = this.config.columnHeaders !== false
|
|
44
|
+
? this.headersToExportRows(this.generateColumnGroupHeaders(columns))
|
|
45
|
+
: [];
|
|
46
|
+
body = this.bodyToExportRows(this.rowLookup(range), this.table.modules.selectRange.selectedColumns(true));
|
|
47
|
+
} else {
|
|
48
|
+
headers = this.config.columnHeaders !== false ? this.headersToExportRows(this.generateColumnGroupHeaders()) : [];
|
|
49
|
+
body = this.bodyToExportRows(this.rowLookup(range));
|
|
50
|
+
}
|
|
51
|
+
|
|
42
52
|
return headers.concat(body);
|
|
43
53
|
}
|
|
44
54
|
|
|
@@ -73,7 +83,11 @@ class Export extends Module{
|
|
|
73
83
|
case "selected":
|
|
74
84
|
rows = this.table.modules.selectRow.selectedRows;
|
|
75
85
|
break;
|
|
76
|
-
|
|
86
|
+
|
|
87
|
+
case "range":
|
|
88
|
+
rows = this.table.modules.selectRange.selectedRows();
|
|
89
|
+
break;
|
|
90
|
+
|
|
77
91
|
case "active":
|
|
78
92
|
default:
|
|
79
93
|
if(this.table.options.pagination){
|
|
@@ -87,10 +101,12 @@ class Export extends Module{
|
|
|
87
101
|
return Object.assign([], rows);
|
|
88
102
|
}
|
|
89
103
|
|
|
90
|
-
generateColumnGroupHeaders(){
|
|
104
|
+
generateColumnGroupHeaders(columns){
|
|
91
105
|
var output = [];
|
|
92
106
|
|
|
93
|
-
|
|
107
|
+
if (!columns) {
|
|
108
|
+
columns = this.config.columnGroups !== false ? this.table.columnManager.columns : this.table.columnManager.columnsByIndex;
|
|
109
|
+
}
|
|
94
110
|
|
|
95
111
|
columns.forEach((column) => {
|
|
96
112
|
var colData = this.processColumnGroup(column);
|
|
@@ -99,7 +115,7 @@ class Export extends Module{
|
|
|
99
115
|
output.push(colData);
|
|
100
116
|
}
|
|
101
117
|
});
|
|
102
|
-
|
|
118
|
+
|
|
103
119
|
return output;
|
|
104
120
|
}
|
|
105
121
|
|
|
@@ -227,16 +243,16 @@ class Export extends Module{
|
|
|
227
243
|
return exportRows;
|
|
228
244
|
}
|
|
229
245
|
|
|
230
|
-
bodyToExportRows(rows){
|
|
231
|
-
|
|
232
|
-
var columns = [];
|
|
246
|
+
bodyToExportRows(rows, columns = []){
|
|
233
247
|
var exportRows = [];
|
|
234
248
|
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
249
|
+
if (columns.length === 0) {
|
|
250
|
+
this.table.columnManager.columnsByIndex.forEach((column) => {
|
|
251
|
+
if (this.columnVisCheck(column)) {
|
|
252
|
+
columns.push(column.getComponent());
|
|
253
|
+
}
|
|
254
|
+
});
|
|
255
|
+
}
|
|
240
256
|
|
|
241
257
|
if(this.config.columnCalcs !== false && this.table.modExists("columnCalcs")){
|
|
242
258
|
if(this.table.modules.columnCalcs.topInitialized){
|
|
@@ -247,7 +263,7 @@ class Export extends Module{
|
|
|
247
263
|
rows.push(this.table.modules.columnCalcs.botRow);
|
|
248
264
|
}
|
|
249
265
|
}
|
|
250
|
-
|
|
266
|
+
|
|
251
267
|
rows = rows.filter((row) => {
|
|
252
268
|
switch(row.type){
|
|
253
269
|
case "group":
|
|
@@ -474,7 +490,8 @@ class Export extends Module{
|
|
|
474
490
|
if(col){
|
|
475
491
|
var cellEl = document.createElement("td"),
|
|
476
492
|
column = col.component._column,
|
|
477
|
-
|
|
493
|
+
table = this.table,
|
|
494
|
+
index = table.columnManager.findColumnIndex(column),
|
|
478
495
|
value = col.value,
|
|
479
496
|
cellStyle;
|
|
480
497
|
|
|
@@ -501,6 +518,9 @@ class Export extends Module{
|
|
|
501
518
|
getRow:function(){
|
|
502
519
|
return row.component;
|
|
503
520
|
},
|
|
521
|
+
getTable:function(){
|
|
522
|
+
return table;
|
|
523
|
+
},
|
|
504
524
|
getComponent:function(){
|
|
505
525
|
return cellWrapper;
|
|
506
526
|
},
|
|
@@ -20,7 +20,7 @@ export default function(cell, formatterParams, onRendered){
|
|
|
20
20
|
if(row instanceof RowComponent){
|
|
21
21
|
|
|
22
22
|
checkbox.addEventListener("change", (e) => {
|
|
23
|
-
if(this.table.options.
|
|
23
|
+
if(this.table.options.selectableRowsRangeMode === "click"){
|
|
24
24
|
if(!blocked){
|
|
25
25
|
row.toggleSelect();
|
|
26
26
|
}else{
|
|
@@ -31,7 +31,7 @@ export default function(cell, formatterParams, onRendered){
|
|
|
31
31
|
}
|
|
32
32
|
});
|
|
33
33
|
|
|
34
|
-
if(this.table.options.
|
|
34
|
+
if(this.table.options.selectableRowsRangeMode === "click"){
|
|
35
35
|
checkbox.addEventListener("click", (e) => {
|
|
36
36
|
blocked = true;
|
|
37
37
|
this.table.modules.selectRow.handleComplexRowClick(row._row, e);
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
export default function(cell, formatterParams, onRendered){
|
|
2
2
|
var content = document.createElement("span");
|
|
3
3
|
var row = cell.getRow();
|
|
4
|
+
var table = cell.getTable();
|
|
4
5
|
|
|
5
6
|
row.watchPosition((position) => {
|
|
7
|
+
if (formatterParams.relativeToPage) {
|
|
8
|
+
position += table.modules.page.getPageSize() * (table.modules.page.getPage() - 1);
|
|
9
|
+
}
|
|
6
10
|
content.innerText = position;
|
|
7
11
|
});
|
|
8
12
|
|
|
9
13
|
return content;
|
|
10
|
-
}
|
|
14
|
+
}
|
|
@@ -31,7 +31,9 @@ class FrozenColumns extends Module{
|
|
|
31
31
|
this.subscribe("columns-loading", this.reset.bind(this));
|
|
32
32
|
|
|
33
33
|
this.subscribe("column-add", this.reinitializeColumns.bind(this));
|
|
34
|
-
this.subscribe("column-
|
|
34
|
+
this.subscribe("column-deleted", this.reinitializeColumns.bind(this));
|
|
35
|
+
this.subscribe("column-hide", this.reinitializeColumns.bind(this));
|
|
36
|
+
this.subscribe("column-show", this.reinitializeColumns.bind(this));
|
|
35
37
|
|
|
36
38
|
this.subscribe("table-redraw", this.layout.bind(this));
|
|
37
39
|
this.subscribe("layout-refreshing", this.blockLayout.bind(this));
|
|
@@ -57,16 +59,16 @@ class FrozenColumns extends Module{
|
|
|
57
59
|
this.table.columnManager.columnsByIndex.forEach((column) => {
|
|
58
60
|
this.initializeColumn(column);
|
|
59
61
|
});
|
|
62
|
+
|
|
63
|
+
this.layout();
|
|
60
64
|
}
|
|
61
65
|
|
|
62
66
|
//initialize specific column
|
|
63
67
|
initializeColumn(column){
|
|
64
68
|
var config = {margin:0, edge:false};
|
|
65
69
|
|
|
66
|
-
if(!column.isGroup){
|
|
67
|
-
|
|
70
|
+
if(!column.isGroup){
|
|
68
71
|
if(this.frozenCheck(column)){
|
|
69
|
-
|
|
70
72
|
config.position = this.initializationMode;
|
|
71
73
|
|
|
72
74
|
if(this.initializationMode == "left"){
|
|
@@ -157,9 +159,8 @@ class FrozenColumns extends Module{
|
|
|
157
159
|
leftParents.push(parentEl);
|
|
158
160
|
}
|
|
159
161
|
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
}
|
|
162
|
+
parentEl.classList.toggle("tabulator-frozen-left", column.modules.frozen.edge && column.modules.frozen.position === "left");
|
|
163
|
+
parentEl.classList.toggle("tabulator-frozen-right", column.modules.frozen.edge && column.modules.frozen.position === "right");
|
|
163
164
|
}else{
|
|
164
165
|
this.layoutElement(column.getElement(), column);
|
|
165
166
|
}
|
|
@@ -207,7 +208,6 @@ class FrozenColumns extends Module{
|
|
|
207
208
|
//layout columns appropriately
|
|
208
209
|
layout(){
|
|
209
210
|
if(this.active && !this.blocked){
|
|
210
|
-
|
|
211
211
|
//calculate left columns
|
|
212
212
|
this.layoutColumnPosition();
|
|
213
213
|
|
|
@@ -270,9 +270,8 @@ class FrozenColumns extends Module{
|
|
|
270
270
|
|
|
271
271
|
element.classList.add("tabulator-frozen");
|
|
272
272
|
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
}
|
|
273
|
+
element.classList.toggle("tabulator-frozen-left", column.modules.frozen.edge && column.modules.frozen.position === "left");
|
|
274
|
+
element.classList.toggle("tabulator-frozen-right", column.modules.frozen.edge && column.modules.frozen.position === "right");
|
|
276
275
|
}
|
|
277
276
|
}
|
|
278
277
|
|
|
@@ -19,12 +19,17 @@ class FrozenRows extends Module{
|
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
initialize(){
|
|
22
|
+
var fragment = document.createDocumentFragment();
|
|
23
|
+
|
|
22
24
|
this.rows = [];
|
|
23
25
|
|
|
24
26
|
this.topElement.classList.add("tabulator-frozen-rows-holder");
|
|
27
|
+
|
|
28
|
+
fragment.appendChild(document.createElement("br"));
|
|
29
|
+
fragment.appendChild(this.topElement);
|
|
25
30
|
|
|
26
31
|
// this.table.columnManager.element.append(this.topElement);
|
|
27
|
-
this.table.columnManager.getContentsElement().insertBefore(
|
|
32
|
+
this.table.columnManager.getContentsElement().insertBefore(fragment, this.table.columnManager.headersElement.nextSibling);
|
|
28
33
|
|
|
29
34
|
this.subscribe("row-deleting", this.detachRow.bind(this));
|
|
30
35
|
this.subscribe("rows-visible", this.visibleRows.bind(this));
|
|
@@ -119,7 +119,7 @@ class History extends Module{
|
|
|
119
119
|
|
|
120
120
|
return true;
|
|
121
121
|
}else{
|
|
122
|
-
console.warn("History Undo Error - No more history to undo");
|
|
122
|
+
console.warn(this.options("history") ? "History Undo Error - No more history to undo" : "History module not enabled");
|
|
123
123
|
return false;
|
|
124
124
|
}
|
|
125
125
|
}
|
|
@@ -137,7 +137,7 @@ class History extends Module{
|
|
|
137
137
|
|
|
138
138
|
return true;
|
|
139
139
|
}else{
|
|
140
|
-
console.warn("History Redo Error - No more history to redo");
|
|
140
|
+
console.warn(this.options("history") ? "History Redo Error - No more history to redo" : "History module not enabled");
|
|
141
141
|
return false;
|
|
142
142
|
}
|
|
143
143
|
}
|
|
@@ -12,10 +12,14 @@ export default {
|
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
this._rebindRow(action.component, newRow);
|
|
15
|
+
|
|
16
|
+
this.table.rowManager.checkPlaceholder();
|
|
15
17
|
},
|
|
16
18
|
|
|
17
19
|
rowDelete:function(action){
|
|
18
20
|
action.component.deleteActual();
|
|
21
|
+
|
|
22
|
+
this.table.rowManager.checkPlaceholder();
|
|
19
23
|
},
|
|
20
24
|
|
|
21
25
|
rowMove: function(action){
|
|
@@ -6,6 +6,8 @@ export default {
|
|
|
6
6
|
|
|
7
7
|
rowAdd: function(action){
|
|
8
8
|
action.component.deleteActual();
|
|
9
|
+
|
|
10
|
+
this.table.rowManager.checkPlaceholder();
|
|
9
11
|
},
|
|
10
12
|
|
|
11
13
|
rowDelete: function(action){
|
|
@@ -16,6 +18,8 @@ export default {
|
|
|
16
18
|
}
|
|
17
19
|
|
|
18
20
|
this._rebindRow(action.component, newRow);
|
|
21
|
+
|
|
22
|
+
this.table.rowManager.checkPlaceholder();
|
|
19
23
|
},
|
|
20
24
|
|
|
21
25
|
rowMove: function(action){
|
|
@@ -83,6 +83,43 @@ export default {
|
|
|
83
83
|
this.dispatch("keybinding-nav-down", e);
|
|
84
84
|
},
|
|
85
85
|
|
|
86
|
+
rangeJumpLeft: function(e){
|
|
87
|
+
this.dispatch("keybinding-nav-range", e, "left", true, false);
|
|
88
|
+
},
|
|
89
|
+
rangeJumpRight: function(e){
|
|
90
|
+
this.dispatch("keybinding-nav-range", e, "right", true, false);
|
|
91
|
+
},
|
|
92
|
+
rangeJumpUp: function(e){
|
|
93
|
+
this.dispatch("keybinding-nav-range", e, "up", true, false);
|
|
94
|
+
},
|
|
95
|
+
rangeJumpDown: function(e){
|
|
96
|
+
this.dispatch("keybinding-nav-range", e, "down", true, false);
|
|
97
|
+
},
|
|
98
|
+
rangeExpandLeft: function(e){
|
|
99
|
+
this.dispatch("keybinding-nav-range", e, "left", false, true);
|
|
100
|
+
},
|
|
101
|
+
rangeExpandRight: function(e){
|
|
102
|
+
this.dispatch("keybinding-nav-range", e, "right", false, true);
|
|
103
|
+
},
|
|
104
|
+
rangeExpandUp: function(e){
|
|
105
|
+
this.dispatch("keybinding-nav-range", e, "up", false, true);
|
|
106
|
+
},
|
|
107
|
+
rangeExpandDown: function(e){
|
|
108
|
+
this.dispatch("keybinding-nav-range", e, "down", false, true);
|
|
109
|
+
},
|
|
110
|
+
rangeExpandJumpLeft: function(e){
|
|
111
|
+
this.dispatch("keybinding-nav-range", e, "left", true, true);
|
|
112
|
+
},
|
|
113
|
+
rangeExpandJumpRight: function(e){
|
|
114
|
+
this.dispatch("keybinding-nav-range", e, "right", true, true);
|
|
115
|
+
},
|
|
116
|
+
rangeExpandJumpUp: function(e){
|
|
117
|
+
this.dispatch("keybinding-nav-range", e, "up", true, true);
|
|
118
|
+
},
|
|
119
|
+
rangeExpandJumpDown: function(e){
|
|
120
|
+
this.dispatch("keybinding-nav-range", e, "down", true, true);
|
|
121
|
+
},
|
|
122
|
+
|
|
86
123
|
undo:function(e){
|
|
87
124
|
var cell = false;
|
|
88
125
|
if(this.table.options.history && this.table.modExists("history") && this.table.modExists("edit")){
|
|
@@ -116,4 +153,4 @@ export default {
|
|
|
116
153
|
}
|
|
117
154
|
}
|
|
118
155
|
},
|
|
119
|
-
};
|
|
156
|
+
};
|
|
@@ -3,6 +3,8 @@ export default {
|
|
|
3
3
|
navNext:9,
|
|
4
4
|
navUp:38,
|
|
5
5
|
navDown:40,
|
|
6
|
+
navLeft:37,
|
|
7
|
+
navRight:39,
|
|
6
8
|
scrollPageUp:33,
|
|
7
9
|
scrollPageDown:34,
|
|
8
10
|
scrollToStart:36,
|
|
@@ -10,4 +12,17 @@ export default {
|
|
|
10
12
|
undo:["ctrl + 90", "meta + 90"],
|
|
11
13
|
redo:["ctrl + 89", "meta + 89"],
|
|
12
14
|
copyToClipboard:["ctrl + 67", "meta + 67"],
|
|
13
|
-
|
|
15
|
+
|
|
16
|
+
rangeJumpUp:["ctrl + 38", "meta + 38"],
|
|
17
|
+
rangeJumpDown:["ctrl + 40", "meta + 40"],
|
|
18
|
+
rangeJumpLeft:["ctrl + 37", "meta + 37"],
|
|
19
|
+
rangeJumpRight:["ctrl + 39", "meta + 39"],
|
|
20
|
+
rangeExpandUp:"shift + 38",
|
|
21
|
+
rangeExpandDown:"shift + 40",
|
|
22
|
+
rangeExpandLeft:"shift + 37",
|
|
23
|
+
rangeExpandRight:"shift + 39",
|
|
24
|
+
rangeExpandJumpUp:["ctrl + shift + 38", "meta + shift + 38"],
|
|
25
|
+
rangeExpandJumpDown:["ctrl + shift + 40", "meta + shift + 40"],
|
|
26
|
+
rangeExpandJumpLeft:["ctrl + shift + 37", "meta + shift + 37"],
|
|
27
|
+
rangeExpandJumpRight:["ctrl + shift + 39", "meta + shift + 39"],
|
|
28
|
+
};
|
|
@@ -76,7 +76,7 @@ class Menu extends Module{
|
|
|
76
76
|
this.subscribe("group-dblclick", this.loadMenuEvent.bind(this, this.table.options.groupDblClickMenu));
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
|
-
|
|
79
|
+
|
|
80
80
|
initializeColumn(column){
|
|
81
81
|
var def = column.definition;
|
|
82
82
|
|
|
@@ -285,6 +285,7 @@ class Menu extends Module{
|
|
|
285
285
|
this.rootPopup = null;
|
|
286
286
|
|
|
287
287
|
if(this.currentComponent){
|
|
288
|
+
this.dispatch("menu-closed", menu, popup);
|
|
288
289
|
this.dispatchExternal("menuClosed", this.currentComponent.getComponent());
|
|
289
290
|
this.currentComponent = null;
|
|
290
291
|
}
|
|
@@ -292,6 +293,7 @@ class Menu extends Module{
|
|
|
292
293
|
|
|
293
294
|
this.currentComponent = component;
|
|
294
295
|
|
|
296
|
+
this.dispatch("menu-opened", menu, popup);
|
|
295
297
|
this.dispatchExternal("menuOpened", component.getComponent());
|
|
296
298
|
}
|
|
297
299
|
}
|
|
@@ -37,8 +37,13 @@ class MoveColumns extends Module{
|
|
|
37
37
|
initialize(){
|
|
38
38
|
if(this.table.options.movableColumns){
|
|
39
39
|
this.subscribe("column-init", this.initializeColumn.bind(this));
|
|
40
|
+
this.subscribe("alert-show", this.abortMove.bind(this));
|
|
40
41
|
}
|
|
41
42
|
}
|
|
43
|
+
|
|
44
|
+
abortMove(){
|
|
45
|
+
clearTimeout(this.checkTimeout);
|
|
46
|
+
}
|
|
42
47
|
|
|
43
48
|
initializeColumn(column){
|
|
44
49
|
var self = this,
|
|
@@ -45,7 +45,7 @@ class ResizeTable extends Module{
|
|
|
45
45
|
this.autoResize = true;
|
|
46
46
|
|
|
47
47
|
this.resizeObserver = new ResizeObserver((entry) => {
|
|
48
|
-
if(!table.browserMobile || (table.browserMobile
|
|
48
|
+
if(!table.browserMobile || (table.browserMobile && (!table.modules.edit || (table.modules.edit && !table.modules.edit.currentCell)))){
|
|
49
49
|
|
|
50
50
|
var nodeHeight = Math.floor(entry[0].contentRect.height);
|
|
51
51
|
var nodeWidth = Math.floor(entry[0].contentRect.width);
|
|
@@ -71,7 +71,7 @@ class ResizeTable extends Module{
|
|
|
71
71
|
if(this.table.element.parentNode && !this.table.rowManager.fixedHeight && (tableStyle.getPropertyValue("max-height") || tableStyle.getPropertyValue("min-height"))){
|
|
72
72
|
|
|
73
73
|
this.containerObserver = new ResizeObserver((entry) => {
|
|
74
|
-
if(!table.browserMobile || (table.browserMobile
|
|
74
|
+
if(!table.browserMobile || (table.browserMobile && (!table.modules.edit || (table.modules.edit && !table.modules.edit.currentCell)))){
|
|
75
75
|
|
|
76
76
|
var nodeHeight = Math.floor(entry[0].contentRect.height);
|
|
77
77
|
var nodeWidth = Math.floor(entry[0].contentRect.width);
|
|
@@ -94,7 +94,7 @@ class ResizeTable extends Module{
|
|
|
94
94
|
|
|
95
95
|
}else{
|
|
96
96
|
this.binding = function(){
|
|
97
|
-
if(!table.browserMobile || (table.browserMobile && !table.modules.edit.currentCell)){
|
|
97
|
+
if(!table.browserMobile || (table.browserMobile && (!table.modules.edit || (table.modules.edit && !table.modules.edit.currentCell)))){
|
|
98
98
|
table.columnManager.rerenderColumns(true);
|
|
99
99
|
table.redraw();
|
|
100
100
|
}
|