@progress/kendo-angular-grid 5.5.2 → 6.0.1-dev.202201201304
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/LICENSE.md +1 -1
- package/NOTICE.txt +119 -79
- package/README.md +1 -1
- package/dist/cdn/js/kendo-angular-grid.js +2 -2
- package/dist/cdn/main.js +1 -1
- package/dist/es/column-menu/column-chooser.component.js +1 -1
- package/dist/es/column-menu/column-list.component.js +1 -1
- package/dist/es/dragdrop/draggable-column.directive.js +3 -3
- package/dist/es/filtering/cell/filter-cell-operators.component.js +1 -1
- package/dist/es/filtering/cell/string-filter-cell.component.js +1 -1
- package/dist/es/filtering/filter-input.directive.js +2 -1
- package/dist/es/filtering/menu/boolean-filter-menu.component.js +1 -1
- package/dist/es/filtering/menu/filter-menu-container.component.js +1 -1
- package/dist/es/filtering/menu/string-filter-menu-input.component.js +1 -1
- package/dist/es/grid.component.js +4 -5
- package/dist/es/grouping/group-indicator.component.js +1 -1
- package/dist/es/navigation/focusable.directive.js +5 -5
- package/dist/es/package-metadata.js +1 -1
- package/dist/es/pager/pager-numeric-buttons.component.js +1 -1
- package/dist/es/pager/pager.component.js +0 -5
- package/dist/es/pdf/export-element.js +1 -1
- package/dist/es/rendering/cell.component.js +1 -1
- package/dist/es/rendering/constants.js +1 -1
- package/dist/es/rendering/details-expand.directive.js +20 -6
- package/dist/es/rendering/header/header.component.js +1 -1
- package/dist/es/rendering/toolbar/toolbar-template.directive.js +4 -4
- package/dist/es/selection/pair-set.js +91 -0
- package/dist/es/selection/selection-default.js +48 -30
- package/dist/es/utils.js +1 -3
- package/dist/es2015/column-menu/column-chooser.component.js +2 -2
- package/dist/es2015/column-menu/column-list.component.js +3 -3
- package/dist/es2015/dragdrop/draggable-column.directive.js +3 -3
- package/dist/es2015/filtering/cell/filter-cell-operators.component.js +3 -3
- package/dist/es2015/filtering/cell/string-filter-cell.component.js +1 -1
- package/dist/es2015/filtering/filter-input.directive.js +2 -1
- package/dist/es2015/filtering/menu/boolean-filter-menu.component.js +1 -1
- package/dist/es2015/filtering/menu/filter-menu-container.component.js +2 -2
- package/dist/es2015/filtering/menu/string-filter-menu-input.component.js +1 -1
- package/dist/es2015/grid.component.d.ts +4 -4
- package/dist/es2015/grid.component.js +4 -5
- package/dist/es2015/grouping/group-indicator.component.js +2 -2
- package/dist/es2015/index.metadata.json +1 -1
- package/dist/es2015/navigation/focusable.directive.d.ts +5 -5
- package/dist/es2015/navigation/focusable.directive.js +5 -5
- package/dist/es2015/package-metadata.js +1 -1
- package/dist/es2015/pager/pager-numeric-buttons.component.js +1 -1
- package/dist/es2015/pager/pager.component.d.ts +0 -1
- package/dist/es2015/pager/pager.component.js +0 -5
- package/dist/es2015/pdf/export-element.js +1 -1
- package/dist/es2015/rendering/cell.component.js +3 -3
- package/dist/es2015/rendering/constants.d.ts +1 -1
- package/dist/es2015/rendering/constants.js +1 -1
- package/dist/es2015/rendering/details-expand.directive.d.ts +8 -2
- package/dist/es2015/rendering/details-expand.directive.js +20 -6
- package/dist/es2015/rendering/header/header.component.js +1 -1
- package/dist/es2015/rendering/toolbar/toolbar-template.directive.d.ts +4 -4
- package/dist/es2015/rendering/toolbar/toolbar-template.directive.js +4 -4
- package/dist/es2015/selection/pair-set.d.ts +50 -0
- package/dist/es2015/selection/pair-set.js +81 -0
- package/dist/es2015/selection/selection-default.d.ts +10 -2
- package/dist/es2015/selection/selection-default.js +42 -28
- package/dist/es2015/utils.d.ts +2 -2
- package/dist/fesm2015/index.js +179 -78
- package/dist/fesm5/index.js +186 -74
- package/dist/npm/column-menu/column-chooser.component.js +1 -1
- package/dist/npm/column-menu/column-list.component.js +1 -1
- package/dist/npm/dragdrop/draggable-column.directive.js +3 -3
- package/dist/npm/filtering/cell/filter-cell-operators.component.js +1 -1
- package/dist/npm/filtering/cell/string-filter-cell.component.js +1 -1
- package/dist/npm/filtering/filter-input.directive.js +2 -1
- package/dist/npm/filtering/menu/boolean-filter-menu.component.js +1 -1
- package/dist/npm/filtering/menu/filter-menu-container.component.js +1 -1
- package/dist/npm/filtering/menu/string-filter-menu-input.component.js +1 -1
- package/dist/npm/grid.component.js +4 -5
- package/dist/npm/grouping/group-indicator.component.js +1 -1
- package/dist/npm/navigation/focusable.directive.js +5 -5
- package/dist/npm/package-metadata.js +1 -1
- package/dist/npm/pager/pager-numeric-buttons.component.js +1 -1
- package/dist/npm/pager/pager.component.js +0 -5
- package/dist/npm/pdf/export-element.js +1 -1
- package/dist/npm/rendering/cell.component.js +1 -1
- package/dist/npm/rendering/constants.js +1 -1
- package/dist/npm/rendering/details-expand.directive.js +19 -5
- package/dist/npm/rendering/header/header.component.js +1 -1
- package/dist/npm/rendering/toolbar/toolbar-template.directive.js +4 -4
- package/dist/npm/selection/pair-set.js +93 -0
- package/dist/npm/selection/selection-default.js +48 -30
- package/dist/npm/utils.js +1 -3
- package/dist/systemjs/kendo-angular-grid.js +1 -1
- package/package.json +14 -14
- package/schematics/ngAdd/index.js +1 -1
|
@@ -5,9 +5,9 @@
|
|
|
5
5
|
"use strict";
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
var tslib_1 = require("tslib");
|
|
8
|
-
/* tslint:disable:no-input-rename */
|
|
9
8
|
var core_1 = require("@angular/core");
|
|
10
9
|
var utils_1 = require("../utils");
|
|
10
|
+
var pair_set_1 = require("./pair-set");
|
|
11
11
|
/**
|
|
12
12
|
* @hidden
|
|
13
13
|
*/
|
|
@@ -23,20 +23,33 @@ var Selection = /** @class */ (function () {
|
|
|
23
23
|
* Fires when the `selectedKeys` collection has been updated.
|
|
24
24
|
*/
|
|
25
25
|
this.selectedKeysChange = new core_1.EventEmitter();
|
|
26
|
+
this.rowSelectionState = new Set();
|
|
27
|
+
this.cellSelectionState = new pair_set_1.PairSet();
|
|
26
28
|
this.init();
|
|
27
29
|
}
|
|
30
|
+
Object.defineProperty(Selection.prototype, "isCellSelectionMode", {
|
|
31
|
+
get: function () {
|
|
32
|
+
return utils_1.isPresent(this.grid.selectable) && this.grid.selectable['cell'];
|
|
33
|
+
},
|
|
34
|
+
enumerable: true,
|
|
35
|
+
configurable: true
|
|
36
|
+
});
|
|
37
|
+
Selection.prototype.ngOnChanges = function (changes) {
|
|
38
|
+
// skip reinitialization if the user data is the same as the last state change
|
|
39
|
+
if (utils_1.isPresent(changes.selectedKeys) && this.lastSelectionState !== this.selectedKeys) {
|
|
40
|
+
this.setState(this.selectedKeys);
|
|
41
|
+
}
|
|
42
|
+
};
|
|
28
43
|
Selection.prototype.init = function () {
|
|
29
44
|
var _this = this;
|
|
30
45
|
if (!utils_1.isPresent(this.grid.rowSelected)) {
|
|
31
|
-
this.grid.rowSelected = function (row) {
|
|
32
|
-
return _this.selectedKeys.indexOf(_this.getItemKey(row)) >= 0;
|
|
33
|
-
};
|
|
46
|
+
this.grid.rowSelected = function (row) { return _this.rowSelectionState.has(_this.getItemKey(row)); };
|
|
34
47
|
}
|
|
35
48
|
if (!utils_1.isPresent(this.grid.cellSelected)) {
|
|
36
49
|
this.grid.cellSelected = function (row, column, colIndex) {
|
|
37
50
|
var contender = _this.getSelectionItem(row, column, colIndex);
|
|
38
51
|
return {
|
|
39
|
-
selected: _this.
|
|
52
|
+
selected: _this.cellSelectionState.has(contender.itemKey, contender.columnKey),
|
|
40
53
|
item: contender
|
|
41
54
|
};
|
|
42
55
|
};
|
|
@@ -55,7 +68,8 @@ var Selection = /** @class */ (function () {
|
|
|
55
68
|
* @hidden
|
|
56
69
|
*/
|
|
57
70
|
Selection.prototype.reset = function () {
|
|
58
|
-
this.
|
|
71
|
+
this.rowSelectionState.clear();
|
|
72
|
+
this.cellSelectionState.clear();
|
|
59
73
|
};
|
|
60
74
|
Selection.prototype.getItemKey = function (row) {
|
|
61
75
|
if (this.selectionKey) {
|
|
@@ -92,45 +106,49 @@ var Selection = /** @class */ (function () {
|
|
|
92
106
|
if (selection.selectedRows) {
|
|
93
107
|
selection.deselectedRows.forEach(function (item) {
|
|
94
108
|
var itemKey = _this.getItemKey(item);
|
|
95
|
-
|
|
96
|
-
if (itemIndex >= 0) {
|
|
97
|
-
_this.selectedKeys.splice(itemIndex, 1);
|
|
98
|
-
}
|
|
109
|
+
_this.rowSelectionState.delete(itemKey);
|
|
99
110
|
});
|
|
100
|
-
if (this.grid.selectableSettings.mode === "single" && this.
|
|
111
|
+
if (this.grid.selectableSettings.mode === "single" && this.rowSelectionState.size > 0) {
|
|
101
112
|
this.reset();
|
|
102
113
|
}
|
|
103
114
|
selection.selectedRows.forEach(function (item) {
|
|
104
115
|
var itemKey = _this.getItemKey(item);
|
|
105
|
-
|
|
106
|
-
_this.selectedKeys.push(itemKey);
|
|
107
|
-
}
|
|
116
|
+
_this.rowSelectionState.add(itemKey);
|
|
108
117
|
});
|
|
109
118
|
}
|
|
110
119
|
else {
|
|
111
|
-
selection.deselectedCells.forEach(function (
|
|
112
|
-
var
|
|
113
|
-
|
|
114
|
-
_this.selectedKeys.splice(itemIndex, 1);
|
|
115
|
-
}
|
|
120
|
+
selection.deselectedCells.forEach(function (_a) {
|
|
121
|
+
var itemKey = _a.itemKey, columnKey = _a.columnKey;
|
|
122
|
+
_this.cellSelectionState.delete(itemKey, columnKey);
|
|
116
123
|
});
|
|
117
|
-
if (this.grid.selectableSettings.mode === "single" && this.
|
|
124
|
+
if (this.grid.selectableSettings.mode === "single" && this.cellSelectionState.size > 0) {
|
|
118
125
|
this.reset();
|
|
119
126
|
}
|
|
120
|
-
selection.selectedCells.forEach(function (
|
|
121
|
-
var
|
|
122
|
-
|
|
123
|
-
_this.selectedKeys.push(item);
|
|
124
|
-
}
|
|
127
|
+
selection.selectedCells.forEach(function (_a) {
|
|
128
|
+
var itemKey = _a.itemKey, columnKey = _a.columnKey;
|
|
129
|
+
_this.cellSelectionState.add(itemKey, columnKey);
|
|
125
130
|
});
|
|
126
131
|
}
|
|
127
132
|
this.cd.markForCheck();
|
|
128
|
-
this.
|
|
133
|
+
this.notifyChange();
|
|
134
|
+
};
|
|
135
|
+
Selection.prototype.notifyChange = function () {
|
|
136
|
+
this.lastSelectionState = this.stateToArray();
|
|
137
|
+
this.selectedKeysChange.emit(this.lastSelectionState);
|
|
138
|
+
};
|
|
139
|
+
Selection.prototype.setState = function (selectedKeys) {
|
|
140
|
+
this.reset();
|
|
141
|
+
if (this.isCellSelectionMode) {
|
|
142
|
+
this.cellSelectionState = new pair_set_1.PairSet(selectedKeys, 'itemKey', 'columnKey');
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
this.rowSelectionState = new Set(selectedKeys);
|
|
146
|
+
}
|
|
129
147
|
};
|
|
130
|
-
Selection.prototype.
|
|
131
|
-
return this.
|
|
132
|
-
|
|
133
|
-
|
|
148
|
+
Selection.prototype.stateToArray = function () {
|
|
149
|
+
return this.isCellSelectionMode ?
|
|
150
|
+
this.cellSelectionState.toArray('itemKey', 'columnKey') :
|
|
151
|
+
Array.from(this.rowSelectionState);
|
|
134
152
|
};
|
|
135
153
|
tslib_1.__decorate([
|
|
136
154
|
core_1.Input(),
|
package/dist/npm/utils.js
CHANGED
|
@@ -45,9 +45,7 @@ exports.isUniversal = function () { return typeof document === 'undefined'; };
|
|
|
45
45
|
/**
|
|
46
46
|
* @hidden
|
|
47
47
|
*/
|
|
48
|
-
exports.isString = function (value) {
|
|
49
|
-
return typeof value === 'string';
|
|
50
|
-
};
|
|
48
|
+
exports.isString = function (value) { return typeof value === 'string'; };
|
|
51
49
|
/**
|
|
52
50
|
* @hidden
|
|
53
51
|
*/
|