@limble/limble-tree 2.0.0 → 4.0.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/README.md +2 -0
- package/esm2022/lib/components/branch/branch.component.mjs +79 -0
- package/esm2022/lib/components/dragover-no-change-detect.mjs +39 -0
- package/{esm2020 → esm2022}/lib/components/dropzone/dropzone.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/components/root/root.component.mjs +5 -5
- package/esm2022/lib/core/tree-branch/branch-controller.mjs +99 -0
- package/esm2022/lib/core/tree-branch/tree-branch.mjs +429 -0
- package/esm2022/lib/core/tree-node-base.mjs +77 -0
- package/esm2022/lib/core/tree-root/tree-root.mjs +193 -0
- package/{esm2020 → esm2022}/lib/core/tree-service/tree.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/extras/collapse/collapse.module.mjs +5 -5
- package/{esm2020 → esm2022}/lib/extras/collapse/collapse.service.mjs +4 -4
- package/esm2022/lib/extras/drag-and-drop/drag-and-drop.mjs +83 -0
- package/{esm2020 → esm2022}/lib/extras/drag-and-drop/drag-and-drop.module.mjs +5 -5
- package/{esm2020 → esm2022}/lib/extras/drag-and-drop/drag-and-drop.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/extras/drag-and-drop/draggable.directive.mjs +5 -5
- package/esm2022/lib/extras/drag-and-drop/dropzone-renderer.mjs +176 -0
- package/esm2022/lib/legacy/legacy-tree.mjs +73 -0
- package/esm2022/lib/legacy/limble-tree-legacy.module.mjs +20 -0
- package/esm2022/lib/legacy/limble-tree-root/limble-tree-root.component.mjs +78 -0
- package/{esm2020 → esm2022}/lib/limble-tree.module.mjs +5 -5
- package/esm2022/shared/assert.mjs +7 -0
- package/{fesm2020 → fesm2022}/limble-limble-tree.mjs +72 -75
- package/fesm2022/limble-limble-tree.mjs.map +1 -0
- package/lib/components/branch/branch.component.d.ts +1 -1
- package/lib/components/dropzone/dropzone.component.d.ts +1 -1
- package/lib/core/tree-node-base.d.ts +2 -1
- package/lib/extras/drag-and-drop/draggable.directive.d.ts +1 -1
- package/lib/legacy/limble-tree-root/limble-tree-root.component.d.ts +2 -2
- package/package.json +7 -13
- package/esm2020/lib/components/branch/branch.component.mjs +0 -79
- package/esm2020/lib/components/dragover-no-change-detect.mjs +0 -39
- package/esm2020/lib/core/tree-branch/branch-controller.mjs +0 -99
- package/esm2020/lib/core/tree-branch/tree-branch.mjs +0 -429
- package/esm2020/lib/core/tree-node-base.mjs +0 -80
- package/esm2020/lib/core/tree-root/tree-root.mjs +0 -193
- package/esm2020/lib/extras/drag-and-drop/drag-and-drop.mjs +0 -83
- package/esm2020/lib/extras/drag-and-drop/dropzone-renderer.mjs +0 -176
- package/esm2020/lib/legacy/legacy-tree.mjs +0 -73
- package/esm2020/lib/legacy/limble-tree-legacy.module.mjs +0 -20
- package/esm2020/lib/legacy/limble-tree-root/limble-tree-root.component.mjs +0 -78
- package/esm2020/shared/assert.mjs +0 -7
- package/fesm2015/limble-limble-tree.mjs +0 -1812
- package/fesm2015/limble-limble-tree.mjs.map +0 -1
- package/fesm2020/limble-limble-tree.mjs.map +0 -1
- /package/{esm2020 → esm2022}/lib/components/branch/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/dropzone/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/host-component.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/node-component.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/root/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/branch-options.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/branchable.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/component-container.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/configuration/configuration.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/configuration/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/configuration/tree-options.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/tree-branch/graftable.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/tree-branch/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/tree-node.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/tree-plot.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/tree-root/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/tree-root/root-controller.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/tree-service/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/errors/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/errors/tree-error.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/drag/drag-end-event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/drag/drag-start-event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/drag/drop-event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/drag/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/general/destruction-event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/general/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/relational/graft-event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/relational/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/relational/prune-event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/relational/relational-tree-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/relational/tree-relationship.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/tree-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/extras/collapse/collapse.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/extras/collapse/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/extras/drag-and-drop/drag-state.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/extras/drag-and-drop/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/legacy/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/legacy/legacy-component-obj.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/legacy/legacy-tree-data.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/legacy/legacy-tree-options.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/limble-limble-tree.mjs +0 -0
- /package/{esm2020 → esm2022}/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/shared/has-property.mjs +0 -0
- /package/{esm2020 → esm2022}/shared/index.mjs +0 -0
|
@@ -72,20 +72,20 @@ class TreeCollapseService {
|
|
|
72
72
|
isCollapsed(treeBranch) {
|
|
73
73
|
return treeCollapser.isCollapsed(treeBranch);
|
|
74
74
|
}
|
|
75
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TreeCollapseService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
76
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TreeCollapseService }); }
|
|
75
77
|
}
|
|
76
|
-
|
|
77
|
-
TreeCollapseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TreeCollapseService });
|
|
78
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TreeCollapseService, decorators: [{
|
|
78
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TreeCollapseService, decorators: [{
|
|
79
79
|
type: Injectable
|
|
80
80
|
}] });
|
|
81
81
|
|
|
82
82
|
/** A module containing the entities which provide collapse functionality */
|
|
83
83
|
class TreeCollapseModule {
|
|
84
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TreeCollapseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
85
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: TreeCollapseModule }); }
|
|
86
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TreeCollapseModule, providers: [TreeCollapseService] }); }
|
|
84
87
|
}
|
|
85
|
-
|
|
86
|
-
TreeCollapseModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: TreeCollapseModule });
|
|
87
|
-
TreeCollapseModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TreeCollapseModule, providers: [TreeCollapseService] });
|
|
88
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TreeCollapseModule, decorators: [{
|
|
88
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TreeCollapseModule, decorators: [{
|
|
89
89
|
type: NgModule,
|
|
90
90
|
args: [{
|
|
91
91
|
providers: [TreeCollapseService]
|
|
@@ -171,16 +171,16 @@ class DragoverNoChangeDetectDirective {
|
|
|
171
171
|
this.eventSubscription.unsubscribe();
|
|
172
172
|
}
|
|
173
173
|
}
|
|
174
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DragoverNoChangeDetectDirective, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
175
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.0", type: DragoverNoChangeDetectDirective, isStandalone: true, selector: "[dragoverNoChangeDetect]", outputs: { dragoverNoChangeDetect: "dragoverNoChangeDetect" }, ngImport: i0 }); }
|
|
174
176
|
}
|
|
175
|
-
|
|
176
|
-
DragoverNoChangeDetectDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: DragoverNoChangeDetectDirective, isStandalone: true, selector: "[dragoverNoChangeDetect]", outputs: { dragoverNoChangeDetect: "dragoverNoChangeDetect" }, ngImport: i0 });
|
|
177
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DragoverNoChangeDetectDirective, decorators: [{
|
|
177
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DragoverNoChangeDetectDirective, decorators: [{
|
|
178
178
|
type: Directive,
|
|
179
179
|
args: [{
|
|
180
180
|
standalone: true,
|
|
181
181
|
selector: "[dragoverNoChangeDetect]"
|
|
182
182
|
}]
|
|
183
|
-
}], ctorParameters:
|
|
183
|
+
}], ctorParameters: () => [{ type: i0.NgZone }, { type: i0.ElementRef }], propDecorators: { dragoverNoChangeDetect: [{
|
|
184
184
|
type: Output
|
|
185
185
|
}] } });
|
|
186
186
|
|
|
@@ -202,10 +202,10 @@ class DropzoneComponent {
|
|
|
202
202
|
dropHandler(event) {
|
|
203
203
|
this.dropped.emit(event);
|
|
204
204
|
}
|
|
205
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DropzoneComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
206
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: DropzoneComponent, isStandalone: true, selector: "dropzone", inputs: { placement: "placement" }, outputs: { dropped: "dropped" }, ngImport: i0, template: "<div\n class=\"dropzone\"\n [ngClass]=\"{ active: active }\"\n (dragenter)=\"dragenterHandler()\"\n (dragleave)=\"dragleaveHandler()\"\n (dragoverNoChangeDetect)=\"dragoverHandler($event)\"\n (drop)=\"dropHandler($event)\"\n></div>\n", styles: [".dropzone{border-radius:8px;border:1px dashed #727374;background-color:#ededed;height:36px;margin:8px 0;transition:height .3s ease-out;animation:animation .3s ease-out}.dropzone.active{border-color:#289e49;border-width:2px;background-color:#d0e8d6;height:72px}@keyframes animation{0%{height:0px;opacity:0}to{height:36px;opacity:1}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: DragoverNoChangeDetectDirective, selector: "[dragoverNoChangeDetect]", outputs: ["dragoverNoChangeDetect"] }] }); }
|
|
205
207
|
}
|
|
206
|
-
|
|
207
|
-
DropzoneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DropzoneComponent, isStandalone: true, selector: "dropzone", inputs: { placement: "placement" }, outputs: { dropped: "dropped" }, ngImport: i0, template: "<div\n class=\"dropzone\"\n [ngClass]=\"{ active: active }\"\n (dragenter)=\"dragenterHandler()\"\n (dragleave)=\"dragleaveHandler()\"\n (dragoverNoChangeDetect)=\"dragoverHandler($event)\"\n (drop)=\"dropHandler($event)\"\n></div>\n", styles: [".dropzone{border-radius:8px;border:1px dashed #727374;background-color:#ededed;height:36px;margin:8px 0;transition:height .3s ease-out;animation:animation .3s ease-out}.dropzone.active{border-color:#289e49;border-width:2px;background-color:#d0e8d6;height:72px}@keyframes animation{0%{height:0px;opacity:0}to{height:36px;opacity:1}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: DragoverNoChangeDetectDirective, selector: "[dragoverNoChangeDetect]", outputs: ["dragoverNoChangeDetect"] }] });
|
|
208
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DropzoneComponent, decorators: [{
|
|
208
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DropzoneComponent, decorators: [{
|
|
209
209
|
type: Component,
|
|
210
210
|
args: [{ standalone: true, selector: "dropzone", imports: [CommonModule, DragoverNoChangeDetectDirective], template: "<div\n class=\"dropzone\"\n [ngClass]=\"{ active: active }\"\n (dragenter)=\"dragenterHandler()\"\n (dragleave)=\"dragleaveHandler()\"\n (dragoverNoChangeDetect)=\"dragoverHandler($event)\"\n (drop)=\"dropHandler($event)\"\n></div>\n", styles: [".dropzone{border-radius:8px;border:1px dashed #727374;background-color:#ededed;height:36px;margin:8px 0;transition:height .3s ease-out;animation:animation .3s ease-out}.dropzone.active{border-color:#289e49;border-width:2px;background-color:#d0e8d6;height:72px}@keyframes animation{0%{height:0px;opacity:0}to{height:36px;opacity:1}}\n"] }]
|
|
211
211
|
}], propDecorators: { placement: [{
|
|
@@ -256,18 +256,18 @@ class BranchComponent {
|
|
|
256
256
|
}
|
|
257
257
|
}
|
|
258
258
|
ngOnDestroy() {
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
259
|
+
/* I'm not 100% sure why, but we have to remove any reference to the
|
|
260
|
+
* componentRef otherwise Angular will never release it for garbage
|
|
261
|
+
* collection. */
|
|
262
262
|
this.hostedContent = undefined;
|
|
263
263
|
}
|
|
264
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: BranchComponent, deps: [{ token: i0.ApplicationRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
265
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: BranchComponent, isStandalone: true, selector: "branch", inputs: { contentToHost: "contentToHost" }, outputs: { contentCreated: "contentCreated", showDropzones: "showDropzones", dropped: "dropped" }, viewQueries: [{ propertyName: "branchesContainer", first: true, predicate: ["branchesContainer"], descendants: true, read: ViewContainerRef }, { propertyName: "contentContainer", first: true, predicate: ["contentContainer"], descendants: true, read: ViewContainerRef }, { propertyName: "dropzones", predicate: DropzoneComponent, descendants: true }], ngImport: i0, template: "<div class=\"content\" (dragoverNoChangeDetect)=\"dragoverHandler($event)\">\n <div #contentContainer></div>\n</div>\n<div class=\"branches-container\">\n <dropzone placement=\"inner\" [hidden]=\"!showInnerDropzone\" />\n <div #branchesContainer></div>\n</div>\n<dropzone placement=\"lateral\" [hidden]=\"!showLateralDropzone\" />\n", styles: [".branches-container{margin-left:16px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DropzoneComponent, selector: "dropzone", inputs: ["placement"], outputs: ["dropped"] }, { kind: "directive", type: DragoverNoChangeDetectDirective, selector: "[dragoverNoChangeDetect]", outputs: ["dragoverNoChangeDetect"] }] }); }
|
|
264
266
|
}
|
|
265
|
-
|
|
266
|
-
BranchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: BranchComponent, isStandalone: true, selector: "branch", inputs: { contentToHost: "contentToHost" }, outputs: { contentCreated: "contentCreated", showDropzones: "showDropzones", dropped: "dropped" }, viewQueries: [{ propertyName: "branchesContainer", first: true, predicate: ["branchesContainer"], descendants: true, read: ViewContainerRef }, { propertyName: "contentContainer", first: true, predicate: ["contentContainer"], descendants: true, read: ViewContainerRef }, { propertyName: "dropzones", predicate: DropzoneComponent, descendants: true }], ngImport: i0, template: "<div class=\"content\" (dragoverNoChangeDetect)=\"dragoverHandler($event)\">\n <div #contentContainer></div>\n</div>\n<div class=\"branches-container\">\n <dropzone placement=\"inner\" [hidden]=\"!showInnerDropzone\"></dropzone>\n <div #branchesContainer></div>\n</div>\n<dropzone placement=\"lateral\" [hidden]=\"!showLateralDropzone\"></dropzone>\n", styles: [".branches-container{margin-left:16px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DropzoneComponent, selector: "dropzone", inputs: ["placement"], outputs: ["dropped"] }, { kind: "directive", type: DragoverNoChangeDetectDirective, selector: "[dragoverNoChangeDetect]", outputs: ["dragoverNoChangeDetect"] }] });
|
|
267
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BranchComponent, decorators: [{
|
|
267
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: BranchComponent, decorators: [{
|
|
268
268
|
type: Component,
|
|
269
|
-
args: [{ standalone: true, selector: "branch", imports: [CommonModule, DropzoneComponent, DragoverNoChangeDetectDirective], template: "<div class=\"content\" (dragoverNoChangeDetect)=\"dragoverHandler($event)\">\n <div #contentContainer></div>\n</div>\n<div class=\"branches-container\">\n <dropzone placement=\"inner\" [hidden]=\"!showInnerDropzone\"
|
|
270
|
-
}], ctorParameters:
|
|
269
|
+
args: [{ standalone: true, selector: "branch", imports: [CommonModule, DropzoneComponent, DragoverNoChangeDetectDirective], template: "<div class=\"content\" (dragoverNoChangeDetect)=\"dragoverHandler($event)\">\n <div #contentContainer></div>\n</div>\n<div class=\"branches-container\">\n <dropzone placement=\"inner\" [hidden]=\"!showInnerDropzone\" />\n <div #branchesContainer></div>\n</div>\n<dropzone placement=\"lateral\" [hidden]=\"!showLateralDropzone\" />\n", styles: [".branches-container{margin-left:16px}\n"] }]
|
|
270
|
+
}], ctorParameters: () => [{ type: i0.ApplicationRef }], propDecorators: { branchesContainer: [{
|
|
271
271
|
type: ViewChild,
|
|
272
272
|
args: ["branchesContainer", { read: ViewContainerRef }]
|
|
273
273
|
}], contentContainer: [{
|
|
@@ -299,12 +299,12 @@ class RootComponent {
|
|
|
299
299
|
assert(this.dropzone !== undefined);
|
|
300
300
|
this.dropzone.dropped.subscribe(this.dropped);
|
|
301
301
|
}
|
|
302
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: RootComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
303
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: RootComponent, isStandalone: true, selector: "root", outputs: { afterViewInit: "afterViewInit", dropped: "dropped" }, viewQueries: [{ propertyName: "branchesContainer", first: true, predicate: ["branchesContainer"], descendants: true, read: ViewContainerRef }, { propertyName: "dropzone", first: true, predicate: DropzoneComponent, descendants: true }], ngImport: i0, template: "<div class=\"branches-container\">\n <dropzone placement=\"inner\" [hidden]=\"!showInnerDropzone\" />\n <div #branchesContainer></div>\n</div>\n", styles: [".branches-container{min-width:64px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DropzoneComponent, selector: "dropzone", inputs: ["placement"], outputs: ["dropped"] }] }); }
|
|
302
304
|
}
|
|
303
|
-
|
|
304
|
-
RootComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: RootComponent, isStandalone: true, selector: "root", outputs: { afterViewInit: "afterViewInit", dropped: "dropped" }, viewQueries: [{ propertyName: "branchesContainer", first: true, predicate: ["branchesContainer"], descendants: true, read: ViewContainerRef }, { propertyName: "dropzone", first: true, predicate: DropzoneComponent, descendants: true }], ngImport: i0, template: "<div class=\"branches-container\">\n <dropzone placement=\"inner\" [hidden]=\"!showInnerDropzone\"></dropzone>\n <div #branchesContainer></div>\n</div>\n", styles: [".branches-container{min-width:64px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DropzoneComponent, selector: "dropzone", inputs: ["placement"], outputs: ["dropped"] }] });
|
|
305
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RootComponent, decorators: [{
|
|
305
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: RootComponent, decorators: [{
|
|
306
306
|
type: Component,
|
|
307
|
-
args: [{ standalone: true, selector: "root", imports: [CommonModule, DropzoneComponent], template: "<div class=\"branches-container\">\n <dropzone placement=\"inner\" [hidden]=\"!showInnerDropzone\"
|
|
307
|
+
args: [{ standalone: true, selector: "root", imports: [CommonModule, DropzoneComponent], template: "<div class=\"branches-container\">\n <dropzone placement=\"inner\" [hidden]=\"!showInnerDropzone\" />\n <div #branchesContainer></div>\n</div>\n", styles: [".branches-container{min-width:64px}\n"] }]
|
|
308
308
|
}], propDecorators: { branchesContainer: [{
|
|
309
309
|
type: ViewChild,
|
|
310
310
|
args: ["branchesContainer", { read: ViewContainerRef }]
|
|
@@ -582,10 +582,7 @@ class TreeNodeBase {
|
|
|
582
582
|
const message = hasProperty(error, "message")
|
|
583
583
|
? error.message
|
|
584
584
|
: "Unknown error";
|
|
585
|
-
|
|
586
|
-
// This cast to `any` is due to an issue in typescript that has been
|
|
587
|
-
// resolved at least by version 4.9.5. When we upgrade our typescript
|
|
588
|
-
// version we can remove the cast.
|
|
585
|
+
return new TreeError(`Failed to grow branch: ${message}`, {
|
|
589
586
|
cause: error
|
|
590
587
|
});
|
|
591
588
|
}
|
|
@@ -784,7 +781,7 @@ class TreeRoot {
|
|
|
784
781
|
return new TreeBranch(this, { component, ...options });
|
|
785
782
|
}
|
|
786
783
|
catch (error) {
|
|
787
|
-
this.handleUserlandError(error);
|
|
784
|
+
throw this.handleUserlandError(error);
|
|
788
785
|
}
|
|
789
786
|
}
|
|
790
787
|
/** @returns `true` if the tree is destroyed, `false` otherwise */
|
|
@@ -835,12 +832,12 @@ class TreeRoot {
|
|
|
835
832
|
this.treeNodeBase.traverse(callback);
|
|
836
833
|
}
|
|
837
834
|
handleUserlandError(error) {
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
835
|
+
/* When an error occurs in a userland component during a tree operation,
|
|
836
|
+
* it can cause undefined, bizarre behavior in the tree. To prevent this,
|
|
837
|
+
* we destroy the tree and throw an error instead. This helps protect
|
|
838
|
+
* the end-user's data from corruption. */
|
|
842
839
|
this.destroy();
|
|
843
|
-
this.treeNodeBase.handleUserlandError(error);
|
|
840
|
+
return this.treeNodeBase.handleUserlandError(error);
|
|
844
841
|
}
|
|
845
842
|
}
|
|
846
843
|
|
|
@@ -1032,7 +1029,7 @@ class TreeBranch {
|
|
|
1032
1029
|
return new TreeBranch(this, { component, ...options });
|
|
1033
1030
|
}
|
|
1034
1031
|
catch (error) {
|
|
1035
|
-
this.handleUserlandError(error);
|
|
1032
|
+
throw this.handleUserlandError(error);
|
|
1036
1033
|
}
|
|
1037
1034
|
}
|
|
1038
1035
|
/**
|
|
@@ -1159,7 +1156,7 @@ class TreeBranch {
|
|
|
1159
1156
|
const parent = this._parent;
|
|
1160
1157
|
const index = this.index();
|
|
1161
1158
|
if (index === undefined || parent === undefined)
|
|
1162
|
-
return;
|
|
1159
|
+
return undefined;
|
|
1163
1160
|
const container = parent.getBranchesContainer();
|
|
1164
1161
|
assert(container !== undefined);
|
|
1165
1162
|
this.detachedView = container.detach(index);
|
|
@@ -1217,12 +1214,12 @@ class TreeBranch {
|
|
|
1217
1214
|
});
|
|
1218
1215
|
}
|
|
1219
1216
|
handleUserlandError(error) {
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1217
|
+
/* When an error occurs in a userland component during a tree operation,
|
|
1218
|
+
* it can cause undefined, bizarre behavior in the tree. To prevent this,
|
|
1219
|
+
* we destroy the tree and throw an error instead. This helps protect
|
|
1220
|
+
* the end-user's data from corruption. */
|
|
1224
1221
|
this.furthestAncestor().destroy();
|
|
1225
|
-
this.treeNodeBase.handleUserlandError(error);
|
|
1222
|
+
return this.treeNodeBase.handleUserlandError(error);
|
|
1226
1223
|
}
|
|
1227
1224
|
indexIsOutOfRange(parent, index) {
|
|
1228
1225
|
return index < 0 || index > parent.branches().length;
|
|
@@ -1277,10 +1274,10 @@ class TreeService {
|
|
|
1277
1274
|
config.setConfig(root, options);
|
|
1278
1275
|
return root;
|
|
1279
1276
|
}
|
|
1277
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TreeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1278
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TreeService, providedIn: "root" }); }
|
|
1280
1279
|
}
|
|
1281
|
-
|
|
1282
|
-
TreeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TreeService, providedIn: "root" });
|
|
1283
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TreeService, decorators: [{
|
|
1280
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TreeService, decorators: [{
|
|
1284
1281
|
type: Injectable,
|
|
1285
1282
|
args: [{ providedIn: "root" }]
|
|
1286
1283
|
}] });
|
|
@@ -1297,8 +1294,8 @@ class DragAndDrop {
|
|
|
1297
1294
|
treeBranch.dispatch(new DragStartEvent(treeBranch));
|
|
1298
1295
|
this.setDragEffects(treeBranch, event);
|
|
1299
1296
|
this.watchForDragend(treeBranch, event);
|
|
1300
|
-
|
|
1301
|
-
|
|
1297
|
+
/* We have to do a setTimeout because DOM changes are not allowed during a
|
|
1298
|
+
* dragstart event. */
|
|
1302
1299
|
setTimeout(() => {
|
|
1303
1300
|
dragState.starting(treeBranch);
|
|
1304
1301
|
treeBranch.prune();
|
|
@@ -1332,7 +1329,7 @@ class DragAndDrop {
|
|
|
1332
1329
|
assert(oldParent !== undefined && oldIndex !== undefined);
|
|
1333
1330
|
event.target?.addEventListener("dragend", (dragend) => {
|
|
1334
1331
|
if (dragState.state() !== DragStates.Dropped) {
|
|
1335
|
-
//The drag ended but a drop never occurred, so put the dragged branch back where it started.
|
|
1332
|
+
// The drag ended but a drop never occurred, so put the dragged branch back where it started.
|
|
1336
1333
|
this.dragAborted$.next(dragend);
|
|
1337
1334
|
this.graftDraggedBranch(treeBranch, oldParent, oldIndex);
|
|
1338
1335
|
}
|
|
@@ -1564,10 +1561,10 @@ class TreeDragAndDropService {
|
|
|
1564
1561
|
state() {
|
|
1565
1562
|
return dragState.events();
|
|
1566
1563
|
}
|
|
1564
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TreeDragAndDropService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1565
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TreeDragAndDropService }); }
|
|
1567
1566
|
}
|
|
1568
|
-
|
|
1569
|
-
TreeDragAndDropService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TreeDragAndDropService });
|
|
1570
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TreeDragAndDropService, decorators: [{
|
|
1567
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TreeDragAndDropService, decorators: [{
|
|
1571
1568
|
type: Injectable
|
|
1572
1569
|
}] });
|
|
1573
1570
|
|
|
@@ -1582,16 +1579,16 @@ class DraggableDirective {
|
|
|
1582
1579
|
return;
|
|
1583
1580
|
dragAndDrop.dragStart(this.limbleTreeDraggable, event);
|
|
1584
1581
|
}
|
|
1582
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DraggableDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
1583
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.0", type: DraggableDirective, isStandalone: true, selector: "[limbleTreeDraggable]", inputs: { limbleTreeDraggable: "limbleTreeDraggable" }, host: { listeners: { "dragstart": "onDragstart($event)" } }, ngImport: i0 }); }
|
|
1585
1584
|
}
|
|
1586
|
-
|
|
1587
|
-
DraggableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: DraggableDirective, isStandalone: true, selector: "[limbleTreeDraggable]", inputs: { limbleTreeDraggable: "limbleTreeDraggable" }, host: { listeners: { "dragstart": "onDragstart($event)" } }, ngImport: i0 });
|
|
1588
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DraggableDirective, decorators: [{
|
|
1585
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DraggableDirective, decorators: [{
|
|
1589
1586
|
type: Directive,
|
|
1590
1587
|
args: [{
|
|
1591
1588
|
selector: "[limbleTreeDraggable]",
|
|
1592
1589
|
standalone: true
|
|
1593
1590
|
}]
|
|
1594
|
-
}], ctorParameters:
|
|
1591
|
+
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }], propDecorators: { limbleTreeDraggable: [{
|
|
1595
1592
|
type: Input
|
|
1596
1593
|
}], onDragstart: [{
|
|
1597
1594
|
type: HostListener,
|
|
@@ -1603,11 +1600,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
1603
1600
|
* functionality.
|
|
1604
1601
|
*/
|
|
1605
1602
|
class TreeDragAndDropModule {
|
|
1603
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TreeDragAndDropModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
1604
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: TreeDragAndDropModule, imports: [DraggableDirective], exports: [DraggableDirective] }); }
|
|
1605
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TreeDragAndDropModule, providers: [TreeDragAndDropService] }); }
|
|
1606
1606
|
}
|
|
1607
|
-
|
|
1608
|
-
TreeDragAndDropModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: TreeDragAndDropModule, imports: [DraggableDirective], exports: [DraggableDirective] });
|
|
1609
|
-
TreeDragAndDropModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TreeDragAndDropModule, providers: [TreeDragAndDropService] });
|
|
1610
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TreeDragAndDropModule, decorators: [{
|
|
1607
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TreeDragAndDropModule, decorators: [{
|
|
1611
1608
|
type: NgModule,
|
|
1612
1609
|
args: [{
|
|
1613
1610
|
imports: [DraggableDirective],
|
|
@@ -1695,14 +1692,14 @@ class LimbleTreeRootComponent {
|
|
|
1695
1692
|
this.treeDrop = new EventEmitter();
|
|
1696
1693
|
this.legacyTree = new LegacyTree();
|
|
1697
1694
|
}
|
|
1698
|
-
ngAfterViewInit() {
|
|
1699
|
-
this.update();
|
|
1700
|
-
}
|
|
1701
1695
|
ngOnChanges() {
|
|
1702
1696
|
if (this.host !== undefined && this.data !== undefined) {
|
|
1703
1697
|
this.update();
|
|
1704
1698
|
}
|
|
1705
1699
|
}
|
|
1700
|
+
ngAfterViewInit() {
|
|
1701
|
+
this.update();
|
|
1702
|
+
}
|
|
1706
1703
|
ngOnDestroy() {
|
|
1707
1704
|
this.dropSubscription?.unsubscribe();
|
|
1708
1705
|
this.root?.destroy();
|
|
@@ -1734,13 +1731,13 @@ class LimbleTreeRootComponent {
|
|
|
1734
1731
|
}
|
|
1735
1732
|
return this.data.slice((this.page - 1) * this.itemsPerPage, this.page * this.itemsPerPage);
|
|
1736
1733
|
}
|
|
1734
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LimbleTreeRootComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1735
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: LimbleTreeRootComponent, isStandalone: true, selector: "limble-tree-root", inputs: { data: "data", options: "options", itemsPerPage: "itemsPerPage", page: "page" }, outputs: { treeChange: "treeChange", treeDrop: "treeDrop" }, viewQueries: [{ propertyName: "host", first: true, predicate: ["host"], descendants: true, read: ViewContainerRef }], usesOnChanges: true, ngImport: i0, template: "<div #host></div>\n" }); }
|
|
1737
1736
|
}
|
|
1738
|
-
|
|
1739
|
-
LimbleTreeRootComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: LimbleTreeRootComponent, isStandalone: true, selector: "limble-tree-root", inputs: { data: "data", options: "options", itemsPerPage: "itemsPerPage", page: "page" }, outputs: { treeChange: "treeChange", treeDrop: "treeDrop" }, viewQueries: [{ propertyName: "host", first: true, predicate: ["host"], descendants: true, read: ViewContainerRef }], usesOnChanges: true, ngImport: i0, template: "<div #host></div>\n" });
|
|
1740
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LimbleTreeRootComponent, decorators: [{
|
|
1737
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LimbleTreeRootComponent, decorators: [{
|
|
1741
1738
|
type: Component,
|
|
1742
1739
|
args: [{ selector: "limble-tree-root", standalone: true, template: "<div #host></div>\n" }]
|
|
1743
|
-
}], ctorParameters:
|
|
1740
|
+
}], ctorParameters: () => [], propDecorators: { data: [{
|
|
1744
1741
|
type: Input
|
|
1745
1742
|
}], options: [{
|
|
1746
1743
|
type: Input
|
|
@@ -1759,11 +1756,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
1759
1756
|
|
|
1760
1757
|
/** @deprecated */
|
|
1761
1758
|
class LimbleTreeLegacyModule {
|
|
1759
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LimbleTreeLegacyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
1760
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: LimbleTreeLegacyModule, imports: [LimbleTreeRootComponent], exports: [LimbleTreeRootComponent] }); }
|
|
1761
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LimbleTreeLegacyModule, providers: [LegacyTree] }); }
|
|
1762
1762
|
}
|
|
1763
|
-
|
|
1764
|
-
LimbleTreeLegacyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: LimbleTreeLegacyModule, imports: [LimbleTreeRootComponent], exports: [LimbleTreeRootComponent] });
|
|
1765
|
-
LimbleTreeLegacyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LimbleTreeLegacyModule, providers: [LegacyTree], imports: [LimbleTreeRootComponent] });
|
|
1766
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LimbleTreeLegacyModule, decorators: [{
|
|
1763
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LimbleTreeLegacyModule, decorators: [{
|
|
1767
1764
|
type: NgModule,
|
|
1768
1765
|
args: [{
|
|
1769
1766
|
declarations: [],
|
|
@@ -1778,11 +1775,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
1778
1775
|
* components, directives, and services provided by Limble Tree.
|
|
1779
1776
|
*/
|
|
1780
1777
|
class LimbleTreeModule {
|
|
1778
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LimbleTreeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
1779
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: LimbleTreeModule, imports: [LimbleTreeLegacyModule, TreeCollapseModule, TreeDragAndDropModule], exports: [LimbleTreeLegacyModule, TreeCollapseModule, TreeDragAndDropModule] }); }
|
|
1780
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LimbleTreeModule, providers: [TreeService], imports: [LimbleTreeLegacyModule, TreeCollapseModule, TreeDragAndDropModule, LimbleTreeLegacyModule, TreeCollapseModule, TreeDragAndDropModule] }); }
|
|
1781
1781
|
}
|
|
1782
|
-
|
|
1783
|
-
LimbleTreeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: LimbleTreeModule, imports: [LimbleTreeLegacyModule, TreeCollapseModule, TreeDragAndDropModule], exports: [LimbleTreeLegacyModule, TreeCollapseModule, TreeDragAndDropModule] });
|
|
1784
|
-
LimbleTreeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LimbleTreeModule, providers: [TreeService], imports: [LimbleTreeLegacyModule, TreeCollapseModule, TreeDragAndDropModule, LimbleTreeLegacyModule, TreeCollapseModule, TreeDragAndDropModule] });
|
|
1785
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LimbleTreeModule, decorators: [{
|
|
1782
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LimbleTreeModule, decorators: [{
|
|
1786
1783
|
type: NgModule,
|
|
1787
1784
|
args: [{
|
|
1788
1785
|
declarations: [],
|