@progress/kendo-angular-treelist 21.4.0-develop.1 → 21.4.0-develop.3
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/data/data.collection.d.ts +5 -0
- package/esm2022/data/data.collection.mjs +35 -0
- package/esm2022/package-metadata.mjs +2 -2
- package/esm2022/selection/selectable.directive.mjs +1 -1
- package/esm2022/selection/selection.service.mjs +2 -0
- package/fesm2022/progress-kendo-angular-treelist.mjs +39 -3
- package/package.json +18 -18
- package/schematics/ngAdd/index.js +3 -3
|
@@ -124,5 +124,10 @@ export declare class ViewCollection {
|
|
|
124
124
|
resetItem(item: any, resetChildren: boolean): void;
|
|
125
125
|
clear(): void;
|
|
126
126
|
loadData(): void;
|
|
127
|
+
/**
|
|
128
|
+
* @hidden
|
|
129
|
+
* Returns all data nodes from the TreeList, recursively collecting items from all hierarchy levels.
|
|
130
|
+
*/
|
|
131
|
+
get flatData(): Array<any>;
|
|
127
132
|
private unsubscribeChildren;
|
|
128
133
|
}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
import { isObservable, Subscription, BehaviorSubject } from 'rxjs';
|
|
6
6
|
import { take } from 'rxjs/operators';
|
|
7
7
|
import { EventEmitter } from '@angular/core';
|
|
8
|
+
import { isArray } from '../utils';
|
|
8
9
|
/**
|
|
9
10
|
* @hidden
|
|
10
11
|
*/
|
|
@@ -458,6 +459,40 @@ export class ViewCollection {
|
|
|
458
459
|
this.dataLoaded.emit();
|
|
459
460
|
}
|
|
460
461
|
}
|
|
462
|
+
/**
|
|
463
|
+
* @hidden
|
|
464
|
+
* Returns all data nodes from the TreeList, recursively collecting items from all hierarchy levels.
|
|
465
|
+
*/
|
|
466
|
+
get flatData() {
|
|
467
|
+
const result = [];
|
|
468
|
+
const options = this.fieldAccessor();
|
|
469
|
+
const fetchChildren = options.fetchChildren;
|
|
470
|
+
const toProcess = [...(isArray(options.data) ? options.data : options.data?.data || [])];
|
|
471
|
+
while (toProcess.length) {
|
|
472
|
+
const current = toProcess.shift();
|
|
473
|
+
result.push(current);
|
|
474
|
+
const id = options.idGetter(current);
|
|
475
|
+
if (this.loaded.has(id)) {
|
|
476
|
+
const children = this.loaded.get(id);
|
|
477
|
+
if (children !== LOADING) {
|
|
478
|
+
const childData = children?.data || children;
|
|
479
|
+
if (childData?.length) {
|
|
480
|
+
toProcess.unshift(...childData);
|
|
481
|
+
}
|
|
482
|
+
}
|
|
483
|
+
}
|
|
484
|
+
else if (fetchChildren) {
|
|
485
|
+
const children = fetchChildren(current);
|
|
486
|
+
if (children && !isObservable(children)) {
|
|
487
|
+
const childData = children?.data || children;
|
|
488
|
+
if (childData?.length) {
|
|
489
|
+
toProcess.unshift(...childData);
|
|
490
|
+
}
|
|
491
|
+
}
|
|
492
|
+
}
|
|
493
|
+
}
|
|
494
|
+
return result;
|
|
495
|
+
}
|
|
461
496
|
unsubscribeChildren() {
|
|
462
497
|
if (this.childrenSubscription) {
|
|
463
498
|
this.childrenSubscription.unsubscribe();
|
|
@@ -10,7 +10,7 @@ export const packageMetadata = {
|
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCode: 'KENDOUIANGULAR',
|
|
12
12
|
productCodes: ['KENDOUIANGULAR'],
|
|
13
|
-
publishDate:
|
|
14
|
-
version: '21.4.0-develop.
|
|
13
|
+
publishDate: 1765793656,
|
|
14
|
+
version: '21.4.0-develop.3',
|
|
15
15
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
16
16
|
};
|
|
@@ -68,7 +68,7 @@ export class SelectableDirective {
|
|
|
68
68
|
this._selectedItems = value;
|
|
69
69
|
const currentValue = value || [];
|
|
70
70
|
const previousState = this.selectionService.selectAllCheckedState;
|
|
71
|
-
if (currentValue.length > 0 && currentValue.length
|
|
71
|
+
if (currentValue.length > 0 && currentValue.length >= this.treelist.view.flatData.length) {
|
|
72
72
|
this.selectionService.selectAllCheckedState = true;
|
|
73
73
|
}
|
|
74
74
|
else if (currentValue.length === 0) {
|
|
@@ -199,6 +199,8 @@ export class SelectionService {
|
|
|
199
199
|
dataItem: item.data
|
|
200
200
|
}));
|
|
201
201
|
this.changes.next(new SelectionChangeEvent(select ? 'add' : 'remove', selectedItems));
|
|
202
|
+
this.selectAllCheckedState = select;
|
|
203
|
+
this.selectAllCheckedStateChange.next(select);
|
|
202
204
|
});
|
|
203
205
|
}
|
|
204
206
|
selectRange(firstPoint, secondPoint) {
|
|
@@ -49,8 +49,8 @@ const packageMetadata = {
|
|
|
49
49
|
productName: 'Kendo UI for Angular',
|
|
50
50
|
productCode: 'KENDOUIANGULAR',
|
|
51
51
|
productCodes: ['KENDOUIANGULAR'],
|
|
52
|
-
publishDate:
|
|
53
|
-
version: '21.4.0-develop.
|
|
52
|
+
publishDate: 1765793656,
|
|
53
|
+
version: '21.4.0-develop.3',
|
|
54
54
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
55
55
|
};
|
|
56
56
|
|
|
@@ -1815,6 +1815,40 @@ class ViewCollection {
|
|
|
1815
1815
|
this.dataLoaded.emit();
|
|
1816
1816
|
}
|
|
1817
1817
|
}
|
|
1818
|
+
/**
|
|
1819
|
+
* @hidden
|
|
1820
|
+
* Returns all data nodes from the TreeList, recursively collecting items from all hierarchy levels.
|
|
1821
|
+
*/
|
|
1822
|
+
get flatData() {
|
|
1823
|
+
const result = [];
|
|
1824
|
+
const options = this.fieldAccessor();
|
|
1825
|
+
const fetchChildren = options.fetchChildren;
|
|
1826
|
+
const toProcess = [...(isArray(options.data) ? options.data : options.data?.data || [])];
|
|
1827
|
+
while (toProcess.length) {
|
|
1828
|
+
const current = toProcess.shift();
|
|
1829
|
+
result.push(current);
|
|
1830
|
+
const id = options.idGetter(current);
|
|
1831
|
+
if (this.loaded.has(id)) {
|
|
1832
|
+
const children = this.loaded.get(id);
|
|
1833
|
+
if (children !== LOADING) {
|
|
1834
|
+
const childData = children?.data || children;
|
|
1835
|
+
if (childData?.length) {
|
|
1836
|
+
toProcess.unshift(...childData);
|
|
1837
|
+
}
|
|
1838
|
+
}
|
|
1839
|
+
}
|
|
1840
|
+
else if (fetchChildren) {
|
|
1841
|
+
const children = fetchChildren(current);
|
|
1842
|
+
if (children && !isObservable(children)) {
|
|
1843
|
+
const childData = children?.data || children;
|
|
1844
|
+
if (childData?.length) {
|
|
1845
|
+
toProcess.unshift(...childData);
|
|
1846
|
+
}
|
|
1847
|
+
}
|
|
1848
|
+
}
|
|
1849
|
+
}
|
|
1850
|
+
return result;
|
|
1851
|
+
}
|
|
1818
1852
|
unsubscribeChildren() {
|
|
1819
1853
|
if (this.childrenSubscription) {
|
|
1820
1854
|
this.childrenSubscription.unsubscribe();
|
|
@@ -4451,6 +4485,8 @@ class SelectionService {
|
|
|
4451
4485
|
dataItem: item.data
|
|
4452
4486
|
}));
|
|
4453
4487
|
this.changes.next(new SelectionChangeEvent(select ? 'add' : 'remove', selectedItems));
|
|
4488
|
+
this.selectAllCheckedState = select;
|
|
4489
|
+
this.selectAllCheckedStateChange.next(select);
|
|
4454
4490
|
});
|
|
4455
4491
|
}
|
|
4456
4492
|
selectRange(firstPoint, secondPoint) {
|
|
@@ -20921,7 +20957,7 @@ class SelectableDirective {
|
|
|
20921
20957
|
this._selectedItems = value;
|
|
20922
20958
|
const currentValue = value || [];
|
|
20923
20959
|
const previousState = this.selectionService.selectAllCheckedState;
|
|
20924
|
-
if (currentValue.length > 0 && currentValue.length
|
|
20960
|
+
if (currentValue.length > 0 && currentValue.length >= this.treelist.view.flatData.length) {
|
|
20925
20961
|
this.selectionService.selectAllCheckedState = true;
|
|
20926
20962
|
}
|
|
20927
20963
|
else if (currentValue.length === 0) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-angular-treelist",
|
|
3
|
-
"version": "21.4.0-develop.
|
|
3
|
+
"version": "21.4.0-develop.3",
|
|
4
4
|
"description": "Kendo UI TreeList for Angular - Display hierarchical data in an Angular tree grid view that supports sorting, filtering, paging, and much more.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"author": "Progress",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"package": {
|
|
25
25
|
"productName": "Kendo UI for Angular",
|
|
26
26
|
"productCode": "KENDOUIANGULAR",
|
|
27
|
-
"publishDate":
|
|
27
|
+
"publishDate": 1765793656,
|
|
28
28
|
"licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
|
|
29
29
|
}
|
|
30
30
|
},
|
|
@@ -37,26 +37,26 @@
|
|
|
37
37
|
"@progress/kendo-data-query": "^1.0.0",
|
|
38
38
|
"@progress/kendo-drawing": "^1.23.1",
|
|
39
39
|
"@progress/kendo-licensing": "^1.7.0",
|
|
40
|
-
"@progress/kendo-angular-buttons": "21.4.0-develop.
|
|
41
|
-
"@progress/kendo-angular-common": "21.4.0-develop.
|
|
42
|
-
"@progress/kendo-angular-dateinputs": "21.4.0-develop.
|
|
43
|
-
"@progress/kendo-angular-dropdowns": "21.4.0-develop.
|
|
44
|
-
"@progress/kendo-angular-excel-export": "21.4.0-develop.
|
|
45
|
-
"@progress/kendo-angular-icons": "21.4.0-develop.
|
|
46
|
-
"@progress/kendo-angular-inputs": "21.4.0-develop.
|
|
47
|
-
"@progress/kendo-angular-intl": "21.4.0-develop.
|
|
48
|
-
"@progress/kendo-angular-l10n": "21.4.0-develop.
|
|
49
|
-
"@progress/kendo-angular-label": "21.4.0-develop.
|
|
50
|
-
"@progress/kendo-angular-pager": "21.4.0-develop.
|
|
51
|
-
"@progress/kendo-angular-pdf-export": "21.4.0-develop.
|
|
52
|
-
"@progress/kendo-angular-popup": "21.4.0-develop.
|
|
53
|
-
"@progress/kendo-angular-toolbar": "21.4.0-develop.
|
|
54
|
-
"@progress/kendo-angular-utils": "21.4.0-develop.
|
|
40
|
+
"@progress/kendo-angular-buttons": "21.4.0-develop.3",
|
|
41
|
+
"@progress/kendo-angular-common": "21.4.0-develop.3",
|
|
42
|
+
"@progress/kendo-angular-dateinputs": "21.4.0-develop.3",
|
|
43
|
+
"@progress/kendo-angular-dropdowns": "21.4.0-develop.3",
|
|
44
|
+
"@progress/kendo-angular-excel-export": "21.4.0-develop.3",
|
|
45
|
+
"@progress/kendo-angular-icons": "21.4.0-develop.3",
|
|
46
|
+
"@progress/kendo-angular-inputs": "21.4.0-develop.3",
|
|
47
|
+
"@progress/kendo-angular-intl": "21.4.0-develop.3",
|
|
48
|
+
"@progress/kendo-angular-l10n": "21.4.0-develop.3",
|
|
49
|
+
"@progress/kendo-angular-label": "21.4.0-develop.3",
|
|
50
|
+
"@progress/kendo-angular-pager": "21.4.0-develop.3",
|
|
51
|
+
"@progress/kendo-angular-pdf-export": "21.4.0-develop.3",
|
|
52
|
+
"@progress/kendo-angular-popup": "21.4.0-develop.3",
|
|
53
|
+
"@progress/kendo-angular-toolbar": "21.4.0-develop.3",
|
|
54
|
+
"@progress/kendo-angular-utils": "21.4.0-develop.3",
|
|
55
55
|
"rxjs": "^6.5.3 || ^7.0.0"
|
|
56
56
|
},
|
|
57
57
|
"dependencies": {
|
|
58
58
|
"tslib": "^2.3.1",
|
|
59
|
-
"@progress/kendo-angular-schematics": "21.4.0-develop.
|
|
59
|
+
"@progress/kendo-angular-schematics": "21.4.0-develop.3",
|
|
60
60
|
"@progress/kendo-common": "^1.0.1",
|
|
61
61
|
"@progress/kendo-file-saver": "^1.0.0"
|
|
62
62
|
},
|
|
@@ -9,13 +9,13 @@ const schematics_1 = require("@angular-devkit/schematics");
|
|
|
9
9
|
function default_1(options) {
|
|
10
10
|
const finalOptions = Object.assign(Object.assign({}, options), { mainNgModule: 'TreeListModule', package: 'treelist', peerDependencies: {
|
|
11
11
|
// peer dep of the dropdowns
|
|
12
|
-
'@progress/kendo-angular-treeview': '21.4.0-develop.
|
|
12
|
+
'@progress/kendo-angular-treeview': '21.4.0-develop.3',
|
|
13
13
|
// peer dependency of kendo-angular-inputs
|
|
14
|
-
'@progress/kendo-angular-dialog': '21.4.0-develop.
|
|
14
|
+
'@progress/kendo-angular-dialog': '21.4.0-develop.3',
|
|
15
15
|
// peer dependency of kendo-angular-icons
|
|
16
16
|
'@progress/kendo-svg-icons': '^4.0.0',
|
|
17
17
|
// peer dependency of kendo-angular-dateinputs
|
|
18
|
-
'@progress/kendo-angular-navigation': '21.4.0-develop.
|
|
18
|
+
'@progress/kendo-angular-navigation': '21.4.0-develop.3',
|
|
19
19
|
} });
|
|
20
20
|
return (0, schematics_1.externalSchematic)('@progress/kendo-angular-schematics', 'ng-add', finalOptions);
|
|
21
21
|
}
|