@abp/ng.components 9.1.0-rc.1 → 9.1.0-rc.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.
@@ -2,8 +2,8 @@ import { CoreModule } from '@abp/ng.core';
2
2
  import * as i1 from '@abp/ng.theme.shared';
3
3
  import { ThemeSharedModule } from '@abp/ng.theme.shared';
4
4
  import * as i0 from '@angular/core';
5
- import { InjectionToken, Directive, Optional, Inject, Input, Component, ViewEncapsulation, ContentChild, NgModule } from '@angular/core';
6
- import { Observable, of } from 'rxjs';
5
+ import { InjectionToken, Input, Optional, Inject, Directive, ViewEncapsulation, Component, ContentChild, NgModule } from '@angular/core';
6
+ import { of, Observable } from 'rxjs';
7
7
  import * as i2 from '@abp/ng.components/extensible';
8
8
  import { PageToolbarComponent } from '@abp/ng.components/extensible';
9
9
 
@@ -62,10 +62,10 @@ class PagePartDirective {
62
62
  this.subscription.unsubscribe();
63
63
  }
64
64
  }
65
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PagePartDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: PAGE_RENDER_STRATEGY, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
66
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.7", type: PagePartDirective, isStandalone: false, selector: "[abpPagePart]", inputs: { context: ["abpPagePartContext", "context"], abpPagePart: "abpPagePart" }, usesOnChanges: true, ngImport: i0 }); }
65
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: PagePartDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: PAGE_RENDER_STRATEGY, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
66
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.7", type: PagePartDirective, isStandalone: false, selector: "[abpPagePart]", inputs: { context: ["abpPagePartContext", "context"], abpPagePart: "abpPagePart" }, usesOnChanges: true, ngImport: i0 }); }
67
67
  }
68
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PagePartDirective, decorators: [{
68
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: PagePartDirective, decorators: [{
69
69
  type: Directive,
70
70
  args: [{
71
71
  standalone: false,
@@ -90,10 +90,10 @@ var PageParts;
90
90
  PageParts["toolbar"] = "PageToolbarContainerComponent";
91
91
  })(PageParts || (PageParts = {}));
92
92
  class PageTitleContainerComponent {
93
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PageTitleContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
94
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.7", type: PageTitleContainerComponent, isStandalone: false, selector: "abp-page-title-container", ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true, encapsulation: i0.ViewEncapsulation.None }); }
93
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: PageTitleContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
94
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.7", type: PageTitleContainerComponent, isStandalone: false, selector: "abp-page-title-container", ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true, encapsulation: i0.ViewEncapsulation.None }); }
95
95
  }
96
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PageTitleContainerComponent, decorators: [{
96
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: PageTitleContainerComponent, decorators: [{
97
97
  type: Component,
98
98
  args: [{
99
99
  standalone: false,
@@ -103,10 +103,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
103
103
  }]
104
104
  }] });
105
105
  class PageBreadcrumbContainerComponent {
106
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PageBreadcrumbContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
107
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.7", type: PageBreadcrumbContainerComponent, isStandalone: false, selector: "abp-page-breadcrumb-container", ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true, encapsulation: i0.ViewEncapsulation.None }); }
106
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: PageBreadcrumbContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
107
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.7", type: PageBreadcrumbContainerComponent, isStandalone: false, selector: "abp-page-breadcrumb-container", ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true, encapsulation: i0.ViewEncapsulation.None }); }
108
108
  }
109
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PageBreadcrumbContainerComponent, decorators: [{
109
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: PageBreadcrumbContainerComponent, decorators: [{
110
110
  type: Component,
111
111
  args: [{
112
112
  standalone: false,
@@ -116,10 +116,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
116
116
  }]
117
117
  }] });
118
118
  class PageToolbarContainerComponent {
119
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PageToolbarContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
120
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.7", type: PageToolbarContainerComponent, isStandalone: false, selector: "abp-page-toolbar-container", ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true, encapsulation: i0.ViewEncapsulation.None }); }
119
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: PageToolbarContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
120
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.7", type: PageToolbarContainerComponent, isStandalone: false, selector: "abp-page-toolbar-container", ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true, encapsulation: i0.ViewEncapsulation.None }); }
121
121
  }
122
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PageToolbarContainerComponent, decorators: [{
122
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: PageToolbarContainerComponent, decorators: [{
123
123
  type: Component,
124
124
  args: [{
125
125
  standalone: false,
@@ -155,10 +155,10 @@ class PageComponent {
155
155
  this.customToolbar ||
156
156
  this.pageParts);
157
157
  }
158
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
159
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PageComponent, isStandalone: false, selector: "abp-page", inputs: { title: "title", toolbar: "toolbar", breadcrumb: "breadcrumb" }, queries: [{ propertyName: "customTitle", first: true, predicate: PageTitleContainerComponent, descendants: true }, { propertyName: "customBreadcrumb", first: true, predicate: PageBreadcrumbContainerComponent, descendants: true }, { propertyName: "customToolbar", first: true, predicate: PageToolbarContainerComponent, descendants: true }], ngImport: i0, template: "@if (shouldRenderRow) {\r\n <div class=\"row entry-row\">\r\n @if (customTitle) {\r\n <ng-content select=\"abp-page-title-container\"></ng-content>\r\n } @else {\r\n @if (title) {\r\n <div class=\"col-auto\" *abpPagePart=\"pageParts.title\">\r\n <h1 class=\"content-header-title\">\r\n {{ title }}\r\n </h1>\r\n </div>\r\n }\r\n }\r\n\r\n @if (customBreadcrumb) {\r\n <ng-content select=\"abp-page-breadcrumb-container\"></ng-content>\r\n } @else {\r\n @if (breadcrumb) {\r\n <div class=\"col-lg-auto ps-lg-0\" *abpPagePart=\"pageParts.breadcrumb\">\r\n <abp-breadcrumb></abp-breadcrumb>\r\n </div>\r\n }\r\n }\r\n\r\n @if (customToolbar) {\r\n <ng-content select=\"abp-page-toolbar-container\"></ng-content>\r\n } @else {\r\n @if (toolbarVisible) {\r\n <div class=\"col\" *abpPagePart=\"pageParts.toolbar; context: toolbarData\">\r\n <abp-page-toolbar [record]=\"toolbarData\"></abp-page-toolbar>\r\n </div>\r\n }\r\n }\r\n </div>\r\n}\r\n\r\n<ng-content></ng-content>\r\n", dependencies: [{ kind: "component", type: i1.BreadcrumbComponent, selector: "abp-breadcrumb" }, { kind: "component", type: i2.PageToolbarComponent, selector: "abp-page-toolbar", exportAs: ["abpPageToolbar"] }, { kind: "directive", type: PagePartDirective, selector: "[abpPagePart]", inputs: ["abpPagePartContext", "abpPagePart"] }], encapsulation: i0.ViewEncapsulation.None }); }
158
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: PageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
159
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.7", type: PageComponent, isStandalone: false, selector: "abp-page", inputs: { title: "title", toolbar: "toolbar", breadcrumb: "breadcrumb" }, queries: [{ propertyName: "customTitle", first: true, predicate: PageTitleContainerComponent, descendants: true }, { propertyName: "customBreadcrumb", first: true, predicate: PageBreadcrumbContainerComponent, descendants: true }, { propertyName: "customToolbar", first: true, predicate: PageToolbarContainerComponent, descendants: true }], ngImport: i0, template: "@if (shouldRenderRow) {\r\n <div class=\"row entry-row\">\r\n @if (customTitle) {\r\n <ng-content select=\"abp-page-title-container\"></ng-content>\r\n } @else {\r\n @if (title) {\r\n <div class=\"col-auto\" *abpPagePart=\"pageParts.title\">\r\n <h1 class=\"content-header-title\">\r\n {{ title }}\r\n </h1>\r\n </div>\r\n }\r\n }\r\n\r\n @if (customBreadcrumb) {\r\n <ng-content select=\"abp-page-breadcrumb-container\"></ng-content>\r\n } @else {\r\n @if (breadcrumb) {\r\n <div class=\"col-lg-auto ps-lg-0\" *abpPagePart=\"pageParts.breadcrumb\">\r\n <abp-breadcrumb></abp-breadcrumb>\r\n </div>\r\n }\r\n }\r\n\r\n @if (customToolbar) {\r\n <ng-content select=\"abp-page-toolbar-container\"></ng-content>\r\n } @else {\r\n @if (toolbarVisible) {\r\n <div class=\"col\" *abpPagePart=\"pageParts.toolbar; context: toolbarData\">\r\n <abp-page-toolbar [record]=\"toolbarData\"></abp-page-toolbar>\r\n </div>\r\n }\r\n }\r\n </div>\r\n}\r\n\r\n<ng-content></ng-content>\r\n", dependencies: [{ kind: "component", type: i1.BreadcrumbComponent, selector: "abp-breadcrumb" }, { kind: "component", type: i2.PageToolbarComponent, selector: "abp-page-toolbar", exportAs: ["abpPageToolbar"] }, { kind: "directive", type: PagePartDirective, selector: "[abpPagePart]", inputs: ["abpPagePartContext", "abpPagePart"] }], encapsulation: i0.ViewEncapsulation.None }); }
160
160
  }
161
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PageComponent, decorators: [{
161
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: PageComponent, decorators: [{
162
162
  type: Component,
163
163
  args: [{ standalone: false, selector: 'abp-page', encapsulation: ViewEncapsulation.None, template: "@if (shouldRenderRow) {\r\n <div class=\"row entry-row\">\r\n @if (customTitle) {\r\n <ng-content select=\"abp-page-title-container\"></ng-content>\r\n } @else {\r\n @if (title) {\r\n <div class=\"col-auto\" *abpPagePart=\"pageParts.title\">\r\n <h1 class=\"content-header-title\">\r\n {{ title }}\r\n </h1>\r\n </div>\r\n }\r\n }\r\n\r\n @if (customBreadcrumb) {\r\n <ng-content select=\"abp-page-breadcrumb-container\"></ng-content>\r\n } @else {\r\n @if (breadcrumb) {\r\n <div class=\"col-lg-auto ps-lg-0\" *abpPagePart=\"pageParts.breadcrumb\">\r\n <abp-breadcrumb></abp-breadcrumb>\r\n </div>\r\n }\r\n }\r\n\r\n @if (customToolbar) {\r\n <ng-content select=\"abp-page-toolbar-container\"></ng-content>\r\n } @else {\r\n @if (toolbarVisible) {\r\n <div class=\"col\" *abpPagePart=\"pageParts.toolbar; context: toolbarData\">\r\n <abp-page-toolbar [record]=\"toolbarData\"></abp-page-toolbar>\r\n </div>\r\n }\r\n }\r\n </div>\r\n}\r\n\r\n<ng-content></ng-content>\r\n" }]
164
164
  }], propDecorators: { title: [{
@@ -186,8 +186,8 @@ const exportedDeclarations = [
186
186
  PagePartDirective,
187
187
  ];
188
188
  class PageModule {
189
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
190
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.7", ngImport: i0, type: PageModule, declarations: [PageComponent,
189
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: PageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
190
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.7", ngImport: i0, type: PageModule, declarations: [PageComponent,
191
191
  PageTitleContainerComponent,
192
192
  PageBreadcrumbContainerComponent,
193
193
  PageToolbarContainerComponent,
@@ -196,9 +196,9 @@ class PageModule {
196
196
  PageBreadcrumbContainerComponent,
197
197
  PageToolbarContainerComponent,
198
198
  PagePartDirective] }); }
199
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PageModule, imports: [CoreModule, ThemeSharedModule, PageToolbarComponent] }); }
199
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: PageModule, imports: [CoreModule, ThemeSharedModule, PageToolbarComponent] }); }
200
200
  }
201
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PageModule, decorators: [{
201
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: PageModule, decorators: [{
202
202
  type: NgModule,
203
203
  args: [{
204
204
  declarations: [...exportedDeclarations],
@@ -1,7 +1,7 @@
1
- import * as i1 from '@abp/ng.core';
2
- import { LOADING_STRATEGY, SubscriptionService, CoreModule } from '@abp/ng.core';
1
+ import * as i2 from '@abp/ng.core';
2
+ import { LazyLoadService, SubscriptionService, LOADING_STRATEGY, CoreModule } from '@abp/ng.core';
3
3
  import * as i0 from '@angular/core';
4
- import { Directive, InjectionToken, EventEmitter, Component, ViewEncapsulation, ChangeDetectionStrategy, Optional, Inject, ContentChild, Output, Input, NgModule } from '@angular/core';
4
+ import { InjectionToken, Directive, inject, ChangeDetectorRef, EventEmitter, Input, Output, ContentChild, ChangeDetectionStrategy, ViewEncapsulation, Component, NgModule } from '@angular/core';
5
5
  import * as i4 from '@ng-bootstrap/ng-bootstrap';
6
6
  import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';
7
7
  import * as i5 from 'ng-zorro-antd/core/no-animation';
@@ -9,16 +9,18 @@ import { NzNoAnimationModule } from 'ng-zorro-antd/core/no-animation';
9
9
  import * as i3 from 'ng-zorro-antd/tree';
10
10
  import { NzTreeModule } from 'ng-zorro-antd/tree';
11
11
  import { of } from 'rxjs';
12
- import * as i2 from '@angular/common';
12
+ import * as i1 from '@angular/common';
13
+
14
+ const DISABLE_TREE_STYLE_LOADING_TOKEN = new InjectionToken('DISABLE_TREE_STYLE_LOADING_TOKEN');
13
15
 
14
16
  class TreeNodeTemplateDirective {
15
17
  constructor(template) {
16
18
  this.template = template;
17
19
  }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: TreeNodeTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
19
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.7", type: TreeNodeTemplateDirective, isStandalone: false, selector: "[abpTreeNodeTemplate],[abp-tree-node-template]", ngImport: i0 }); }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: TreeNodeTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
21
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.7", type: TreeNodeTemplateDirective, isStandalone: false, selector: "[abpTreeNodeTemplate],[abp-tree-node-template]", ngImport: i0 }); }
20
22
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: TreeNodeTemplateDirective, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: TreeNodeTemplateDirective, decorators: [{
22
24
  type: Directive,
23
25
  args: [{
24
26
  standalone: false,
@@ -30,10 +32,10 @@ class ExpandedIconTemplateDirective {
30
32
  constructor(template) {
31
33
  this.template = template;
32
34
  }
33
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: ExpandedIconTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
34
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.7", type: ExpandedIconTemplateDirective, isStandalone: false, selector: "[abpTreeExpandedIconTemplate],[abp-tree-expanded-icon-template]", ngImport: i0 }); }
35
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: ExpandedIconTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
36
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.7", type: ExpandedIconTemplateDirective, isStandalone: false, selector: "[abpTreeExpandedIconTemplate],[abp-tree-expanded-icon-template]", ngImport: i0 }); }
35
37
  }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: ExpandedIconTemplateDirective, decorators: [{
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: ExpandedIconTemplateDirective, decorators: [{
37
39
  type: Directive,
38
40
  args: [{
39
41
  standalone: false,
@@ -41,14 +43,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
41
43
  }]
42
44
  }], ctorParameters: () => [{ type: i0.TemplateRef }] });
43
45
 
44
- const DISABLE_TREE_STYLE_LOADING_TOKEN = new InjectionToken('DISABLE_TREE_STYLE_LOADING_TOKEN');
45
-
46
46
  class TreeComponent {
47
- constructor(lazyLoadService, subscriptionService, disableTreeStyleLoading, cdr) {
48
- this.lazyLoadService = lazyLoadService;
49
- this.subscriptionService = subscriptionService;
50
- this.disableTreeStyleLoading = disableTreeStyleLoading;
51
- this.cdr = cdr;
47
+ constructor() {
48
+ this.lazyLoadService = inject(LazyLoadService);
49
+ this.subscriptionService = inject(SubscriptionService);
50
+ this.cdr = inject(ChangeDetectorRef);
51
+ this.disableTreeStyleLoading = inject(DISABLE_TREE_STYLE_LOADING_TOKEN, { optional: true });
52
52
  this.dropdowns = {};
53
53
  this.checkedKeysChange = new EventEmitter();
54
54
  this.expandedKeysChange = new EventEmitter();
@@ -81,7 +81,7 @@ class TreeComponent {
81
81
  return node;
82
82
  }
83
83
  if (node.children) {
84
- let res = this.findNode(target, node.children);
84
+ const res = this.findNode(target, node.children);
85
85
  if (res) {
86
86
  return res;
87
87
  }
@@ -126,22 +126,17 @@ class TreeComponent {
126
126
  this.dropdowns[key] = dropdown;
127
127
  }
128
128
  setSelectedNode(node) {
129
- let newSelectedNode = this.findNode(node, this.nodes);
129
+ const newSelectedNode = this.findNode(node, this.nodes);
130
130
  this.selectedNode = { ...newSelectedNode };
131
131
  this.cdr.markForCheck();
132
132
  }
133
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: TreeComponent, deps: [{ token: i1.LazyLoadService }, { token: i1.SubscriptionService }, { token: DISABLE_TREE_STYLE_LOADING_TOKEN, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
134
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: TreeComponent, isStandalone: false, selector: "abp-tree", inputs: { noAnimation: "noAnimation", draggable: "draggable", checkable: "checkable", checkStrictly: "checkStrictly", checkedKeys: "checkedKeys", nodes: "nodes", expandedKeys: "expandedKeys", selectedNode: "selectedNode", changeCheckboxWithNode: "changeCheckboxWithNode", isNodeSelected: "isNodeSelected", beforeDrop: "beforeDrop" }, outputs: { checkedKeysChange: "checkedKeysChange", expandedKeysChange: "expandedKeysChange", selectedNodeChange: "selectedNodeChange", dropOver: "dropOver", nzExpandChange: "nzExpandChange" }, providers: [SubscriptionService], queries: [{ propertyName: "menu", first: true, predicate: ["menu"], descendants: true }, { propertyName: "customNodeTemplate", first: true, predicate: TreeNodeTemplateDirective, descendants: true }, { propertyName: "expandedIconTemplate", first: true, predicate: ExpandedIconTemplateDirective, descendants: true }], ngImport: i0, template: "<nz-tree\r\n [nzBeforeDrop]=\"beforeDrop\"\r\n [nzDraggable]=\"draggable\"\r\n [nzCheckStrictly]=\"checkStrictly\"\r\n [nzCheckable]=\"checkable\"\r\n [nzCheckedKeys]=\"checkedKeys\"\r\n [nzData]=\"nodes\"\r\n [nzTreeTemplate]=\"treeTemplate\"\r\n [nzExpandedKeys]=\"expandedKeys\"\r\n [nzExpandedIcon]=\"expandedIconTemplate?.template || defaultIconTemplate\"\r\n (nzExpandChange)=\"onExpandedKeysChange($event)\"\r\n (nzCheckBoxChange)=\"onCheckboxChange($event)\"\r\n (nzOnDrop)=\"onDrop($event)\"\r\n [nzNoAnimation]=\"noAnimation\"\r\n (nzContextMenu)=\"dropdowns[$event.node?.key]?.toggle()\"\r\n></nz-tree>\r\n<ng-template #treeTemplate let-node>\r\n <div\r\n [class.selected]=\"isNodeSelected(node)\"\r\n [title]=\"node.title\"\r\n (click)=\"onSelectedNodeChange(node)\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"nodeTemplate; context: { $implicit: node }\"></ng-container>\r\n\r\n <ng-template #nodeTemplate let-node>\r\n <div class=\"d-inline-flex align-items-center abp-ellipsis-inline\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n customNodeTemplate ? customNodeTemplate?.template : defaultNodeTemplate;\r\n context: { $implicit: node }\r\n \"\r\n ></ng-container>\r\n </div>\r\n\r\n @if (menu) {\r\n <div\r\n #dropdown=\"ngbDropdown\"\r\n class=\"d-inline-block ms-1\"\r\n ngbDropdown\r\n placement=\"bottom\"\r\n container=\"body\"\r\n (abpInit)=\"initDropdown(node.key, dropdown)\"\r\n >\r\n <i\r\n class=\"fas fa-caret-down text-muted\"\r\n ngbDropdownToggle\r\n [class.dropdown-toggle]=\"false\"\r\n aria-hidden=\"true\"\r\n ></i>\r\n <div ngbDropdownMenu>\r\n <ng-template *ngTemplateOutlet=\"menu; context: { $implicit: node }\"></ng-template>\r\n </div>\r\n </div>\r\n }\r\n </ng-template>\r\n\r\n <ng-template #defaultNodeTemplate let-node>\r\n <span>{{ node.title }}</span>\r\n </ng-template>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #defaultIconTemplate let-node let-origin=\"origin\">\r\n <i aria-hidden=\"true\">\r\n <ng-container *ngTemplateOutlet=\"node.isExpanded ? minusIcon : plusIcon\"></ng-container\r\n ></i>\r\n</ng-template>\r\n\r\n<ng-template #minusIcon>\r\n <svg\r\n width=\"15\"\r\n height=\"15\"\r\n viewBox=\"0 0 24 24\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n >\r\n <path\r\n d=\"M11.5 0c6.347 0 11.5 5.153 11.5 11.5s-5.153 11.5-11.5 11.5-11.5-5.153-11.5-11.5 5.153-11.5 11.5-11.5zm0 1c5.795 0 10.5 4.705 10.5 10.5s-4.705 10.5-10.5 10.5-10.5-4.705-10.5-10.5 4.705-10.5 10.5-10.5zm-6.5 10h13v1h-13v-1z\"\r\n />\r\n </svg>\r\n</ng-template>\r\n\r\n<ng-template #plusIcon>\r\n <svg\r\n width=\"15\"\r\n height=\"15\"\r\n viewBox=\"0 0 24 24\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n >\r\n <path\r\n d=\"M11.5 0c6.347 0 11.5 5.153 11.5 11.5s-5.153 11.5-11.5 11.5-11.5-5.153-11.5-11.5 5.153-11.5 11.5-11.5zm0 1c5.795 0 10.5 4.705 10.5 10.5s-4.705 10.5-10.5 10.5-10.5-4.705-10.5-10.5 4.705-10.5 10.5-10.5zm.5 10h6v1h-6v6h-1v-6h-6v-1h6v-6h1v6z\"\r\n />\r\n </svg>\r\n</ng-template>\r\n", styles: ["abp-tree .ant-tree{color:inherit}abp-tree .ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected{background-color:transparent}abp-tree .ant-tree .ant-tree-switcher{line-height:17px;align-items:center;justify-content:center;display:inline-flex}abp-tree .ant-tree .ant-tree-node-content-wrapper{width:100%;padding:0}abp-tree .ant-tree .ant-tree-node-content-wrapper>div{display:flex;padding-right:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}abp-tree .ant-tree .node-wrapper{width:100%;position:relative;display:inline-block;margin:0;line-height:30px;text-decoration:none;vertical-align:top;border-radius:2px;cursor:pointer;padding:0 5px 0 8px;border:1px solid transparent}abp-tree .ant-tree .ellipsis{position:absolute;right:8px;top:1px;cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.InitDirective, selector: "[abpInit]", outputs: ["abpInit"] }, { kind: "component", type: i3.NzTreeComponent, selector: "nz-tree", inputs: ["nzShowIcon", "nzHideUnMatched", "nzBlockNode", "nzExpandAll", "nzSelectMode", "nzCheckStrictly", "nzShowExpand", "nzShowLine", "nzCheckable", "nzAsyncData", "nzDraggable", "nzMultiple", "nzExpandedIcon", "nzVirtualItemSize", "nzVirtualMaxBufferPx", "nzVirtualMinBufferPx", "nzVirtualHeight", "nzTreeTemplate", "nzBeforeDrop", "nzData", "nzExpandedKeys", "nzSelectedKeys", "nzCheckedKeys", "nzSearchValue", "nzSearchFunc"], outputs: ["nzExpandedKeysChange", "nzSelectedKeysChange", "nzCheckedKeysChange", "nzSearchValueChange", "nzClick", "nzDblClick", "nzContextMenu", "nzCheckboxChange", "nzExpandChange", "nzOnDragStart", "nzOnDragEnter", "nzOnDragOver", "nzOnDragLeave", "nzOnDrop", "nzOnDragEnd"], exportAs: ["nzTree"] }, { kind: "directive", type: i4.NgbDropdown, selector: "[ngbDropdown]", inputs: ["autoClose", "dropdownClass", "open", "placement", "popperOptions", "container", "display"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { kind: "directive", type: i4.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { kind: "directive", type: i4.NgbDropdownMenu, selector: "[ngbDropdownMenu]" }, { kind: "directive", type: i5.NzNoAnimationDirective, selector: "[nzNoAnimation]", inputs: ["nzNoAnimation"], exportAs: ["nzNoAnimation"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
133
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: TreeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
134
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.7", type: TreeComponent, isStandalone: false, selector: "abp-tree", inputs: { noAnimation: "noAnimation", draggable: "draggable", checkable: "checkable", checkStrictly: "checkStrictly", checkedKeys: "checkedKeys", nodes: "nodes", expandedKeys: "expandedKeys", selectedNode: "selectedNode", changeCheckboxWithNode: "changeCheckboxWithNode", isNodeSelected: "isNodeSelected", beforeDrop: "beforeDrop" }, outputs: { checkedKeysChange: "checkedKeysChange", expandedKeysChange: "expandedKeysChange", selectedNodeChange: "selectedNodeChange", dropOver: "dropOver", nzExpandChange: "nzExpandChange" }, providers: [SubscriptionService], queries: [{ propertyName: "menu", first: true, predicate: ["menu"], descendants: true }, { propertyName: "customNodeTemplate", first: true, predicate: TreeNodeTemplateDirective, descendants: true }, { propertyName: "expandedIconTemplate", first: true, predicate: ExpandedIconTemplateDirective, descendants: true }], ngImport: i0, template: "<nz-tree\r\n [nzBeforeDrop]=\"beforeDrop\"\r\n [nzDraggable]=\"draggable\"\r\n [nzCheckStrictly]=\"checkStrictly\"\r\n [nzCheckable]=\"checkable\"\r\n [nzCheckedKeys]=\"checkedKeys\"\r\n [nzData]=\"nodes\"\r\n [nzTreeTemplate]=\"treeTemplate\"\r\n [nzExpandedKeys]=\"expandedKeys\"\r\n [nzExpandedIcon]=\"expandedIconTemplate?.template || defaultIconTemplate\"\r\n (nzExpandChange)=\"onExpandedKeysChange($event)\"\r\n (nzCheckboxChange)=\"onCheckboxChange($event)\"\r\n (nzOnDrop)=\"onDrop($event)\"\r\n [nzNoAnimation]=\"noAnimation\"\r\n (nzContextMenu)=\"dropdowns[$event.node?.key]?.toggle()\"\r\n/>\r\n<ng-template #treeTemplate let-node>\r\n <div\r\n [class.selected]=\"isNodeSelected(node)\"\r\n [title]=\"node.title\"\r\n (click)=\"onSelectedNodeChange(node)\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"nodeTemplate; context: { $implicit: node }\" />\r\n\r\n <ng-template #nodeTemplate let-node>\r\n <div class=\"d-inline-flex align-items-center abp-ellipsis-inline\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n customNodeTemplate ? customNodeTemplate?.template : defaultNodeTemplate;\r\n context: { $implicit: node }\r\n \"\r\n />\r\n </div>\r\n\r\n @if (menu) {\r\n <div\r\n #dropdown=\"ngbDropdown\"\r\n class=\"d-inline-block ms-1\"\r\n ngbDropdown\r\n placement=\"bottom\"\r\n container=\"body\"\r\n (abpInit)=\"initDropdown(node.key, dropdown)\"\r\n >\r\n <i\r\n class=\"fas fa-caret-down text-muted\"\r\n ngbDropdownToggle\r\n [class.dropdown-toggle]=\"false\"\r\n aria-hidden=\"true\"\r\n ></i>\r\n <div ngbDropdownMenu>\r\n <ng-template *ngTemplateOutlet=\"menu; context: { $implicit: node }\" />\r\n </div>\r\n </div>\r\n }\r\n </ng-template>\r\n\r\n <ng-template #defaultNodeTemplate let-node>\r\n <span>{{ node.title }}</span>\r\n </ng-template>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #defaultIconTemplate let-node let-origin=\"origin\">\r\n <i aria-hidden=\"true\">\r\n <ng-container *ngTemplateOutlet=\"node.isExpanded ? minusIcon : plusIcon\"\r\n /></i>\r\n</ng-template>\r\n\r\n<ng-template #minusIcon>\r\n <svg\r\n width=\"15\"\r\n height=\"15\"\r\n viewBox=\"0 0 24 24\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n >\r\n <path\r\n d=\"M11.5 0c6.347 0 11.5 5.153 11.5 11.5s-5.153 11.5-11.5 11.5-11.5-5.153-11.5-11.5 5.153-11.5 11.5-11.5zm0 1c5.795 0 10.5 4.705 10.5 10.5s-4.705 10.5-10.5 10.5-10.5-4.705-10.5-10.5 4.705-10.5 10.5-10.5zm-6.5 10h13v1h-13v-1z\"\r\n />\r\n </svg>\r\n</ng-template>\r\n\r\n<ng-template #plusIcon>\r\n <svg\r\n width=\"15\"\r\n height=\"15\"\r\n viewBox=\"0 0 24 24\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n >\r\n <path\r\n d=\"M11.5 0c6.347 0 11.5 5.153 11.5 11.5s-5.153 11.5-11.5 11.5-11.5-5.153-11.5-11.5 5.153-11.5 11.5-11.5zm0 1c5.795 0 10.5 4.705 10.5 10.5s-4.705 10.5-10.5 10.5-10.5-4.705-10.5-10.5 4.705-10.5 10.5-10.5zm.5 10h6v1h-6v6h-1v-6h-6v-1h6v-6h1v6z\"\r\n />\r\n </svg>\r\n</ng-template>\r\n", styles: ["abp-tree .ant-tree{color:inherit}abp-tree .ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected{background-color:transparent}abp-tree .ant-tree .ant-tree-switcher{line-height:17px;align-items:center;justify-content:center;display:inline-flex}abp-tree .ant-tree .ant-tree-node-content-wrapper{width:100%;padding:0}abp-tree .ant-tree .ant-tree-node-content-wrapper>div{display:flex;padding-right:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}abp-tree .ant-tree .node-wrapper{width:100%;position:relative;display:inline-block;margin:0;line-height:30px;text-decoration:none;vertical-align:top;border-radius:2px;cursor:pointer;padding:0 5px 0 8px;border:1px solid transparent}abp-tree .ant-tree .ellipsis{position:absolute;right:8px;top:1px;cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.InitDirective, selector: "[abpInit]", outputs: ["abpInit"] }, { kind: "component", type: i3.NzTreeComponent, selector: "nz-tree", inputs: ["nzShowIcon", "nzHideUnMatched", "nzBlockNode", "nzExpandAll", "nzSelectMode", "nzCheckStrictly", "nzShowExpand", "nzShowLine", "nzCheckable", "nzAsyncData", "nzDraggable", "nzMultiple", "nzExpandedIcon", "nzVirtualItemSize", "nzVirtualMaxBufferPx", "nzVirtualMinBufferPx", "nzVirtualHeight", "nzTreeTemplate", "nzBeforeDrop", "nzData", "nzExpandedKeys", "nzSelectedKeys", "nzCheckedKeys", "nzSearchValue", "nzSearchFunc"], outputs: ["nzExpandedKeysChange", "nzSelectedKeysChange", "nzCheckedKeysChange", "nzSearchValueChange", "nzClick", "nzDblClick", "nzContextMenu", "nzCheckboxChange", "nzExpandChange", "nzOnDragStart", "nzOnDragEnter", "nzOnDragOver", "nzOnDragLeave", "nzOnDrop", "nzOnDragEnd"], exportAs: ["nzTree"] }, { kind: "directive", type: i4.NgbDropdown, selector: "[ngbDropdown]", inputs: ["autoClose", "dropdownClass", "open", "placement", "popperOptions", "container", "display"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { kind: "directive", type: i4.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { kind: "directive", type: i4.NgbDropdownMenu, selector: "[ngbDropdownMenu]" }, { kind: "directive", type: i5.NzNoAnimationDirective, selector: "[nzNoAnimation]", inputs: ["nzNoAnimation"], exportAs: ["nzNoAnimation"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
135
135
  }
136
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: TreeComponent, decorators: [{
136
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: TreeComponent, decorators: [{
137
137
  type: Component,
138
- args: [{ standalone: false, selector: 'abp-tree', encapsulation: ViewEncapsulation.None, providers: [SubscriptionService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<nz-tree\r\n [nzBeforeDrop]=\"beforeDrop\"\r\n [nzDraggable]=\"draggable\"\r\n [nzCheckStrictly]=\"checkStrictly\"\r\n [nzCheckable]=\"checkable\"\r\n [nzCheckedKeys]=\"checkedKeys\"\r\n [nzData]=\"nodes\"\r\n [nzTreeTemplate]=\"treeTemplate\"\r\n [nzExpandedKeys]=\"expandedKeys\"\r\n [nzExpandedIcon]=\"expandedIconTemplate?.template || defaultIconTemplate\"\r\n (nzExpandChange)=\"onExpandedKeysChange($event)\"\r\n (nzCheckBoxChange)=\"onCheckboxChange($event)\"\r\n (nzOnDrop)=\"onDrop($event)\"\r\n [nzNoAnimation]=\"noAnimation\"\r\n (nzContextMenu)=\"dropdowns[$event.node?.key]?.toggle()\"\r\n></nz-tree>\r\n<ng-template #treeTemplate let-node>\r\n <div\r\n [class.selected]=\"isNodeSelected(node)\"\r\n [title]=\"node.title\"\r\n (click)=\"onSelectedNodeChange(node)\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"nodeTemplate; context: { $implicit: node }\"></ng-container>\r\n\r\n <ng-template #nodeTemplate let-node>\r\n <div class=\"d-inline-flex align-items-center abp-ellipsis-inline\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n customNodeTemplate ? customNodeTemplate?.template : defaultNodeTemplate;\r\n context: { $implicit: node }\r\n \"\r\n ></ng-container>\r\n </div>\r\n\r\n @if (menu) {\r\n <div\r\n #dropdown=\"ngbDropdown\"\r\n class=\"d-inline-block ms-1\"\r\n ngbDropdown\r\n placement=\"bottom\"\r\n container=\"body\"\r\n (abpInit)=\"initDropdown(node.key, dropdown)\"\r\n >\r\n <i\r\n class=\"fas fa-caret-down text-muted\"\r\n ngbDropdownToggle\r\n [class.dropdown-toggle]=\"false\"\r\n aria-hidden=\"true\"\r\n ></i>\r\n <div ngbDropdownMenu>\r\n <ng-template *ngTemplateOutlet=\"menu; context: { $implicit: node }\"></ng-template>\r\n </div>\r\n </div>\r\n }\r\n </ng-template>\r\n\r\n <ng-template #defaultNodeTemplate let-node>\r\n <span>{{ node.title }}</span>\r\n </ng-template>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #defaultIconTemplate let-node let-origin=\"origin\">\r\n <i aria-hidden=\"true\">\r\n <ng-container *ngTemplateOutlet=\"node.isExpanded ? minusIcon : plusIcon\"></ng-container\r\n ></i>\r\n</ng-template>\r\n\r\n<ng-template #minusIcon>\r\n <svg\r\n width=\"15\"\r\n height=\"15\"\r\n viewBox=\"0 0 24 24\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n >\r\n <path\r\n d=\"M11.5 0c6.347 0 11.5 5.153 11.5 11.5s-5.153 11.5-11.5 11.5-11.5-5.153-11.5-11.5 5.153-11.5 11.5-11.5zm0 1c5.795 0 10.5 4.705 10.5 10.5s-4.705 10.5-10.5 10.5-10.5-4.705-10.5-10.5 4.705-10.5 10.5-10.5zm-6.5 10h13v1h-13v-1z\"\r\n />\r\n </svg>\r\n</ng-template>\r\n\r\n<ng-template #plusIcon>\r\n <svg\r\n width=\"15\"\r\n height=\"15\"\r\n viewBox=\"0 0 24 24\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n >\r\n <path\r\n d=\"M11.5 0c6.347 0 11.5 5.153 11.5 11.5s-5.153 11.5-11.5 11.5-11.5-5.153-11.5-11.5 5.153-11.5 11.5-11.5zm0 1c5.795 0 10.5 4.705 10.5 10.5s-4.705 10.5-10.5 10.5-10.5-4.705-10.5-10.5 4.705-10.5 10.5-10.5zm.5 10h6v1h-6v6h-1v-6h-6v-1h6v-6h1v6z\"\r\n />\r\n </svg>\r\n</ng-template>\r\n", styles: ["abp-tree .ant-tree{color:inherit}abp-tree .ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected{background-color:transparent}abp-tree .ant-tree .ant-tree-switcher{line-height:17px;align-items:center;justify-content:center;display:inline-flex}abp-tree .ant-tree .ant-tree-node-content-wrapper{width:100%;padding:0}abp-tree .ant-tree .ant-tree-node-content-wrapper>div{display:flex;padding-right:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}abp-tree .ant-tree .node-wrapper{width:100%;position:relative;display:inline-block;margin:0;line-height:30px;text-decoration:none;vertical-align:top;border-radius:2px;cursor:pointer;padding:0 5px 0 8px;border:1px solid transparent}abp-tree .ant-tree .ellipsis{position:absolute;right:8px;top:1px;cursor:pointer}\n"] }]
139
- }], ctorParameters: () => [{ type: i1.LazyLoadService }, { type: i1.SubscriptionService }, { type: undefined, decorators: [{
140
- type: Optional
141
- }, {
142
- type: Inject,
143
- args: [DISABLE_TREE_STYLE_LOADING_TOKEN]
144
- }] }, { type: i0.ChangeDetectorRef }], propDecorators: { menu: [{
138
+ args: [{ standalone: false, selector: 'abp-tree', encapsulation: ViewEncapsulation.None, providers: [SubscriptionService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<nz-tree\r\n [nzBeforeDrop]=\"beforeDrop\"\r\n [nzDraggable]=\"draggable\"\r\n [nzCheckStrictly]=\"checkStrictly\"\r\n [nzCheckable]=\"checkable\"\r\n [nzCheckedKeys]=\"checkedKeys\"\r\n [nzData]=\"nodes\"\r\n [nzTreeTemplate]=\"treeTemplate\"\r\n [nzExpandedKeys]=\"expandedKeys\"\r\n [nzExpandedIcon]=\"expandedIconTemplate?.template || defaultIconTemplate\"\r\n (nzExpandChange)=\"onExpandedKeysChange($event)\"\r\n (nzCheckboxChange)=\"onCheckboxChange($event)\"\r\n (nzOnDrop)=\"onDrop($event)\"\r\n [nzNoAnimation]=\"noAnimation\"\r\n (nzContextMenu)=\"dropdowns[$event.node?.key]?.toggle()\"\r\n/>\r\n<ng-template #treeTemplate let-node>\r\n <div\r\n [class.selected]=\"isNodeSelected(node)\"\r\n [title]=\"node.title\"\r\n (click)=\"onSelectedNodeChange(node)\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"nodeTemplate; context: { $implicit: node }\" />\r\n\r\n <ng-template #nodeTemplate let-node>\r\n <div class=\"d-inline-flex align-items-center abp-ellipsis-inline\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n customNodeTemplate ? customNodeTemplate?.template : defaultNodeTemplate;\r\n context: { $implicit: node }\r\n \"\r\n />\r\n </div>\r\n\r\n @if (menu) {\r\n <div\r\n #dropdown=\"ngbDropdown\"\r\n class=\"d-inline-block ms-1\"\r\n ngbDropdown\r\n placement=\"bottom\"\r\n container=\"body\"\r\n (abpInit)=\"initDropdown(node.key, dropdown)\"\r\n >\r\n <i\r\n class=\"fas fa-caret-down text-muted\"\r\n ngbDropdownToggle\r\n [class.dropdown-toggle]=\"false\"\r\n aria-hidden=\"true\"\r\n ></i>\r\n <div ngbDropdownMenu>\r\n <ng-template *ngTemplateOutlet=\"menu; context: { $implicit: node }\" />\r\n </div>\r\n </div>\r\n }\r\n </ng-template>\r\n\r\n <ng-template #defaultNodeTemplate let-node>\r\n <span>{{ node.title }}</span>\r\n </ng-template>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #defaultIconTemplate let-node let-origin=\"origin\">\r\n <i aria-hidden=\"true\">\r\n <ng-container *ngTemplateOutlet=\"node.isExpanded ? minusIcon : plusIcon\"\r\n /></i>\r\n</ng-template>\r\n\r\n<ng-template #minusIcon>\r\n <svg\r\n width=\"15\"\r\n height=\"15\"\r\n viewBox=\"0 0 24 24\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n >\r\n <path\r\n d=\"M11.5 0c6.347 0 11.5 5.153 11.5 11.5s-5.153 11.5-11.5 11.5-11.5-5.153-11.5-11.5 5.153-11.5 11.5-11.5zm0 1c5.795 0 10.5 4.705 10.5 10.5s-4.705 10.5-10.5 10.5-10.5-4.705-10.5-10.5 4.705-10.5 10.5-10.5zm-6.5 10h13v1h-13v-1z\"\r\n />\r\n </svg>\r\n</ng-template>\r\n\r\n<ng-template #plusIcon>\r\n <svg\r\n width=\"15\"\r\n height=\"15\"\r\n viewBox=\"0 0 24 24\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n >\r\n <path\r\n d=\"M11.5 0c6.347 0 11.5 5.153 11.5 11.5s-5.153 11.5-11.5 11.5-11.5-5.153-11.5-11.5 5.153-11.5 11.5-11.5zm0 1c5.795 0 10.5 4.705 10.5 10.5s-4.705 10.5-10.5 10.5-10.5-4.705-10.5-10.5 4.705-10.5 10.5-10.5zm.5 10h6v1h-6v6h-1v-6h-6v-1h6v-6h1v6z\"\r\n />\r\n </svg>\r\n</ng-template>\r\n", styles: ["abp-tree .ant-tree{color:inherit}abp-tree .ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected{background-color:transparent}abp-tree .ant-tree .ant-tree-switcher{line-height:17px;align-items:center;justify-content:center;display:inline-flex}abp-tree .ant-tree .ant-tree-node-content-wrapper{width:100%;padding:0}abp-tree .ant-tree .ant-tree-node-content-wrapper>div{display:flex;padding-right:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}abp-tree .ant-tree .node-wrapper{width:100%;position:relative;display:inline-block;margin:0;line-height:30px;text-decoration:none;vertical-align:top;border-radius:2px;cursor:pointer;padding:0 5px 0 8px;border:1px solid transparent}abp-tree .ant-tree .ellipsis{position:absolute;right:8px;top:1px;cursor:pointer}\n"] }]
139
+ }], propDecorators: { menu: [{
145
140
  type: ContentChild,
146
141
  args: ['menu']
147
142
  }], customNodeTemplate: [{
@@ -187,11 +182,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
187
182
  const templates = [TreeNodeTemplateDirective, ExpandedIconTemplateDirective];
188
183
  const exported = [...templates, TreeComponent];
189
184
  class TreeModule {
190
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: TreeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
191
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.7", ngImport: i0, type: TreeModule, declarations: [TreeNodeTemplateDirective, ExpandedIconTemplateDirective, TreeComponent], imports: [CoreModule, NzTreeModule, NgbDropdownModule, NzNoAnimationModule], exports: [TreeNodeTemplateDirective, ExpandedIconTemplateDirective, TreeComponent] }); }
192
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: TreeModule, imports: [CoreModule, NzTreeModule, NgbDropdownModule, NzNoAnimationModule] }); }
185
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: TreeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
186
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.7", ngImport: i0, type: TreeModule, declarations: [TreeNodeTemplateDirective, ExpandedIconTemplateDirective, TreeComponent], imports: [CoreModule, NzTreeModule, NgbDropdownModule, NzNoAnimationModule], exports: [TreeNodeTemplateDirective, ExpandedIconTemplateDirective, TreeComponent] }); }
187
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: TreeModule, imports: [CoreModule, NzTreeModule, NgbDropdownModule, NzNoAnimationModule] }); }
193
188
  }
194
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: TreeModule, decorators: [{
189
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: TreeModule, decorators: [{
195
190
  type: NgModule,
196
191
  args: [{
197
192
  imports: [CoreModule, NzTreeModule, NgbDropdownModule, NzNoAnimationModule],
@@ -1 +1 @@
1
- {"version":3,"file":"abp-ng.components-tree.mjs","sources":["../../../../packages/components/tree/src/lib/templates/tree-node-template.directive.ts","../../../../packages/components/tree/src/lib/templates/expanded-icon-template.directive.ts","../../../../packages/components/tree/src/lib/disable-tree-style-loading.token.ts","../../../../packages/components/tree/src/lib/components/tree.component.ts","../../../../packages/components/tree/src/lib/components/tree.component.html","../../../../packages/components/tree/src/lib/tree.module.ts","../../../../packages/components/tree/src/lib/utils/nz-tree-adapter.ts","../../../../packages/components/tree/src/abp-ng.components-tree.ts"],"sourcesContent":["import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[abpTreeNodeTemplate],[abp-tree-node-template]',\r\n})\r\nexport class TreeNodeTemplateDirective {\r\n constructor(public template: TemplateRef<any>) {}\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[abpTreeExpandedIconTemplate],[abp-tree-expanded-icon-template]',\r\n})\r\nexport class ExpandedIconTemplateDirective {\r\n constructor(public template: TemplateRef<any>) {}\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nexport const DISABLE_TREE_STYLE_LOADING_TOKEN = new InjectionToken<boolean>(\r\n 'DISABLE_TREE_STYLE_LOADING_TOKEN',\r\n);\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChild,\r\n EventEmitter,\r\n Inject,\r\n Input,\r\n OnInit,\r\n Optional,\r\n Output,\r\n TemplateRef,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { NzFormatBeforeDropEvent, NzFormatEmitEvent, NzTreeNode } from 'ng-zorro-antd/tree';\r\nimport { of } from 'rxjs';\r\nimport { TreeNodeTemplateDirective } from '../templates/tree-node-template.directive';\r\nimport { ExpandedIconTemplateDirective } from '../templates/expanded-icon-template.directive';\r\nimport { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';\r\nimport { LazyLoadService, LOADING_STRATEGY, SubscriptionService } from '@abp/ng.core';\r\nimport { DISABLE_TREE_STYLE_LOADING_TOKEN } from '../disable-tree-style-loading.token';\r\n\r\nexport type DropEvent = NzFormatEmitEvent & { pos: number };\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'abp-tree',\r\n templateUrl: 'tree.component.html',\r\n styleUrls: ['tree.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [SubscriptionService],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class TreeComponent implements OnInit {\r\n dropPosition: number;\r\n\r\n dropdowns = {} as { [key: string]: NgbDropdown };\r\n\r\n constructor(\r\n private lazyLoadService: LazyLoadService,\r\n private subscriptionService: SubscriptionService,\r\n @Optional()\r\n @Inject(DISABLE_TREE_STYLE_LOADING_TOKEN)\r\n private disableTreeStyleLoading: boolean | undefined,\r\n private cdr: ChangeDetectorRef,\r\n ) {}\r\n\r\n @ContentChild('menu') menu: TemplateRef<any>;\r\n @ContentChild(TreeNodeTemplateDirective) customNodeTemplate: TreeNodeTemplateDirective;\r\n @ContentChild(ExpandedIconTemplateDirective) expandedIconTemplate: ExpandedIconTemplateDirective;\r\n @Output() readonly checkedKeysChange = new EventEmitter();\r\n @Output() readonly expandedKeysChange = new EventEmitter<string[]>();\r\n @Output() readonly selectedNodeChange = new EventEmitter();\r\n @Output() readonly dropOver = new EventEmitter<DropEvent>();\r\n @Output() readonly nzExpandChange = new EventEmitter<NzFormatEmitEvent>();\r\n @Input() noAnimation = true;\r\n @Input() draggable: boolean;\r\n @Input() checkable: boolean;\r\n @Input() checkStrictly: boolean;\r\n @Input() checkedKeys = [];\r\n @Input() nodes = [];\r\n @Input() expandedKeys: string[] = [];\r\n @Input() selectedNode: any;\r\n @Input() changeCheckboxWithNode: boolean;\r\n @Input() isNodeSelected = node => this.selectedNode?.id === node.key;\r\n @Input() beforeDrop = (event: NzFormatBeforeDropEvent) => {\r\n this.dropPosition = event.pos;\r\n return of(false);\r\n };\r\n\r\n ngOnInit() {\r\n this.loadStyle();\r\n }\r\n\r\n private loadStyle() {\r\n if (this.disableTreeStyleLoading) {\r\n return;\r\n }\r\n const loaded$ = this.lazyLoadService.load(\r\n LOADING_STRATEGY.AppendAnonymousStyleToHead('ng-zorro-antd-tree.css'),\r\n );\r\n this.subscriptionService.addOne(loaded$);\r\n }\r\n\r\n private findNode(target: any, nodes: any[]) {\r\n for (const node of nodes) {\r\n if (node.key === target.id) {\r\n return node;\r\n }\r\n if (node.children) {\r\n let res = this.findNode(target, node.children);\r\n if (res) {\r\n return res;\r\n }\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n onSelectedNodeChange(node: NzTreeNode) {\r\n this.selectedNode = node.origin.entity;\r\n if (this.changeCheckboxWithNode) {\r\n let newVal;\r\n if (node.isChecked) {\r\n newVal = this.checkedKeys.filter(x => x !== node.key);\r\n } else {\r\n newVal = [...this.checkedKeys, node.key];\r\n }\r\n this.selectedNodeChange.emit(node);\r\n this.checkedKeys = newVal;\r\n this.checkedKeysChange.emit(newVal);\r\n } else {\r\n this.selectedNodeChange.emit(node.origin.entity);\r\n }\r\n }\r\n\r\n onCheckboxChange(event) {\r\n this.checkedKeys = [...event.keys];\r\n this.checkedKeysChange.emit(event.keys);\r\n }\r\n\r\n onExpandedKeysChange(event) {\r\n this.expandedKeys = [...event.keys];\r\n this.expandedKeysChange.emit(event.keys);\r\n this.nzExpandChange.emit(event);\r\n }\r\n\r\n onDrop(event: DropEvent) {\r\n event.event.stopPropagation();\r\n event.event.preventDefault();\r\n event.pos = this.dropPosition;\r\n\r\n this.dropOver.emit(event);\r\n }\r\n\r\n initDropdown(key: string, dropdown: NgbDropdown) {\r\n this.dropdowns[key] = dropdown;\r\n }\r\n\r\n setSelectedNode(node: any) {\r\n let newSelectedNode = this.findNode(node, this.nodes);\r\n this.selectedNode = { ...newSelectedNode };\r\n this.cdr.markForCheck();\r\n }\r\n}\r\n","<nz-tree\r\n [nzBeforeDrop]=\"beforeDrop\"\r\n [nzDraggable]=\"draggable\"\r\n [nzCheckStrictly]=\"checkStrictly\"\r\n [nzCheckable]=\"checkable\"\r\n [nzCheckedKeys]=\"checkedKeys\"\r\n [nzData]=\"nodes\"\r\n [nzTreeTemplate]=\"treeTemplate\"\r\n [nzExpandedKeys]=\"expandedKeys\"\r\n [nzExpandedIcon]=\"expandedIconTemplate?.template || defaultIconTemplate\"\r\n (nzExpandChange)=\"onExpandedKeysChange($event)\"\r\n (nzCheckBoxChange)=\"onCheckboxChange($event)\"\r\n (nzOnDrop)=\"onDrop($event)\"\r\n [nzNoAnimation]=\"noAnimation\"\r\n (nzContextMenu)=\"dropdowns[$event.node?.key]?.toggle()\"\r\n></nz-tree>\r\n<ng-template #treeTemplate let-node>\r\n <div\r\n [class.selected]=\"isNodeSelected(node)\"\r\n [title]=\"node.title\"\r\n (click)=\"onSelectedNodeChange(node)\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"nodeTemplate; context: { $implicit: node }\"></ng-container>\r\n\r\n <ng-template #nodeTemplate let-node>\r\n <div class=\"d-inline-flex align-items-center abp-ellipsis-inline\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n customNodeTemplate ? customNodeTemplate?.template : defaultNodeTemplate;\r\n context: { $implicit: node }\r\n \"\r\n ></ng-container>\r\n </div>\r\n\r\n @if (menu) {\r\n <div\r\n #dropdown=\"ngbDropdown\"\r\n class=\"d-inline-block ms-1\"\r\n ngbDropdown\r\n placement=\"bottom\"\r\n container=\"body\"\r\n (abpInit)=\"initDropdown(node.key, dropdown)\"\r\n >\r\n <i\r\n class=\"fas fa-caret-down text-muted\"\r\n ngbDropdownToggle\r\n [class.dropdown-toggle]=\"false\"\r\n aria-hidden=\"true\"\r\n ></i>\r\n <div ngbDropdownMenu>\r\n <ng-template *ngTemplateOutlet=\"menu; context: { $implicit: node }\"></ng-template>\r\n </div>\r\n </div>\r\n }\r\n </ng-template>\r\n\r\n <ng-template #defaultNodeTemplate let-node>\r\n <span>{{ node.title }}</span>\r\n </ng-template>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #defaultIconTemplate let-node let-origin=\"origin\">\r\n <i aria-hidden=\"true\">\r\n <ng-container *ngTemplateOutlet=\"node.isExpanded ? minusIcon : plusIcon\"></ng-container\r\n ></i>\r\n</ng-template>\r\n\r\n<ng-template #minusIcon>\r\n <svg\r\n width=\"15\"\r\n height=\"15\"\r\n viewBox=\"0 0 24 24\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n >\r\n <path\r\n d=\"M11.5 0c6.347 0 11.5 5.153 11.5 11.5s-5.153 11.5-11.5 11.5-11.5-5.153-11.5-11.5 5.153-11.5 11.5-11.5zm0 1c5.795 0 10.5 4.705 10.5 10.5s-4.705 10.5-10.5 10.5-10.5-4.705-10.5-10.5 4.705-10.5 10.5-10.5zm-6.5 10h13v1h-13v-1z\"\r\n />\r\n </svg>\r\n</ng-template>\r\n\r\n<ng-template #plusIcon>\r\n <svg\r\n width=\"15\"\r\n height=\"15\"\r\n viewBox=\"0 0 24 24\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n >\r\n <path\r\n d=\"M11.5 0c6.347 0 11.5 5.153 11.5 11.5s-5.153 11.5-11.5 11.5-11.5-5.153-11.5-11.5 5.153-11.5 11.5-11.5zm0 1c5.795 0 10.5 4.705 10.5 10.5s-4.705 10.5-10.5 10.5-10.5-4.705-10.5-10.5 4.705-10.5 10.5-10.5zm.5 10h6v1h-6v6h-1v-6h-6v-1h6v-6h1v6z\"\r\n />\r\n </svg>\r\n</ng-template>\r\n","import { CoreModule } from '@abp/ng.core';\r\nimport { NgModule } from '@angular/core';\r\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NzNoAnimationModule } from 'ng-zorro-antd/core/no-animation';\r\nimport { NzTreeModule } from 'ng-zorro-antd/tree';\r\nimport { TreeComponent } from './components/tree.component';\r\nimport { ExpandedIconTemplateDirective } from './templates/expanded-icon-template.directive';\r\nimport { TreeNodeTemplateDirective } from './templates/tree-node-template.directive';\r\n\r\nconst templates = [TreeNodeTemplateDirective, ExpandedIconTemplateDirective];\r\n\r\nconst exported = [...templates, TreeComponent];\r\n\r\n@NgModule({\r\n imports: [CoreModule, NzTreeModule, NgbDropdownModule, NzNoAnimationModule],\r\n exports: [...exported],\r\n declarations: [...exported],\r\n})\r\nexport class TreeModule {}\r\n","export abstract class BaseNode {\r\n name?: string;\r\n displayName?: string;\r\n\r\n constructor(public id: string, public parentId: string | null) {}\r\n}\r\n\r\nexport class TreeNode<T extends BaseNode> extends BaseNode {\r\n title: string | undefined;\r\n key: string;\r\n icon: string | null = null;\r\n children: TreeNode<T>[] = [];\r\n isLeaf = true;\r\n checked = false;\r\n selected = false;\r\n expanded = false;\r\n selectable = true;\r\n disabled = false;\r\n disableCheckbox = false;\r\n parentNode?: TreeNode<T> | null;\r\n\r\n constructor(public entity: T, private nameResolver = ent => ent.displayName || ent.name) {\r\n super(entity.id, entity.parentId);\r\n this.key = entity.id;\r\n this.title = nameResolver(entity);\r\n }\r\n}\r\n\r\nexport class TreeAdapter<T extends BaseNode = BaseNode> {\r\n private tree: TreeNode<T>[];\r\n\r\n constructor(private list: T[] = []) {\r\n this.tree = createTreeFromList(this.list);\r\n }\r\n\r\n getList() {\r\n return this.list;\r\n }\r\n\r\n getTree() {\r\n return this.tree;\r\n }\r\n\r\n handleDrop({ key, parentNode }: TreeNode<T>) {\r\n const index = this.list.findIndex(({ id }) => id === key);\r\n this.list[index].parentId = parentNode ? parentNode.key : null;\r\n this.tree = createTreeFromList(this.list);\r\n }\r\n\r\n handleRemove({ key }: TreeNode<T>) {\r\n this.updateTreeFromList(this.list.filter(item => item.id !== key));\r\n }\r\n\r\n handleUpdate({ key, children }: { key: string; children: T[] }) {\r\n /**\r\n * When we need to update a node with new children, first we need to remove any descendant nodes.\r\n * If we remove immediate children and create a new tree, any other descendant nodes will be removed\r\n * and we won't need to recursively remove sub children.\r\n * Then, you simply add back the new children and create a new tree.\r\n */\r\n const listWithDescendantNodesRemoved = this.updateTreeFromList(\r\n this.list.filter(item => item.parentId !== key),\r\n );\r\n this.updateTreeFromList(listWithDescendantNodesRemoved.concat(children));\r\n }\r\n\r\n updateTreeFromList(list: T[]) {\r\n this.tree = createTreeFromList(list);\r\n this.list = createListFromTree(this.tree);\r\n return this.list;\r\n }\r\n}\r\n\r\n// UTILITY FUNCTIONS\r\n\r\nfunction createTreeFromList<T extends BaseNode>(list: T[]): TreeNode<T>[] {\r\n const map = createMapFromList(list);\r\n const tree: TreeNode<T>[] = [];\r\n\r\n list.forEach(row => {\r\n const parentId = row.parentId;\r\n const node = map.get(row.id);\r\n if (parentId) {\r\n const parent = map.get(parentId);\r\n if (!parent) return;\r\n parent.children.push(node);\r\n parent.isLeaf = false;\r\n } else {\r\n tree.push(node);\r\n }\r\n });\r\n return tree;\r\n}\r\n\r\nfunction createListFromTree<T extends BaseNode>(tree: TreeNode<T>[], list: T[] = []): T[] {\r\n tree.forEach(node => {\r\n list.push({ ...node.entity, parentId: node.parentId });\r\n if (node.children) createListFromTree(node.children, list);\r\n });\r\n\r\n return list;\r\n}\r\n\r\nfunction createMapFromList<T extends BaseNode>(\r\n list: T[],\r\n map = new Map<string, TreeNode<T>>(),\r\n): Map<string, TreeNode<T>> {\r\n list.forEach(row => map.set(row.id, new TreeNode(row)));\r\n\r\n return map;\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abp-ng.components-tree.mjs","sources":["../../../../packages/components/tree/src/lib/disable-tree-style-loading.token.ts","../../../../packages/components/tree/src/lib/templates/tree-node-template.directive.ts","../../../../packages/components/tree/src/lib/templates/expanded-icon-template.directive.ts","../../../../packages/components/tree/src/lib/components/tree.component.ts","../../../../packages/components/tree/src/lib/components/tree.component.html","../../../../packages/components/tree/src/lib/tree.module.ts","../../../../packages/components/tree/src/lib/utils/nz-tree-adapter.ts","../../../../packages/components/tree/src/abp-ng.components-tree.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\r\n\r\nexport const DISABLE_TREE_STYLE_LOADING_TOKEN = new InjectionToken<boolean>(\r\n 'DISABLE_TREE_STYLE_LOADING_TOKEN',\r\n);\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[abpTreeNodeTemplate],[abp-tree-node-template]',\r\n})\r\nexport class TreeNodeTemplateDirective {\r\n constructor(public template: TemplateRef<any>) {}\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[abpTreeExpandedIconTemplate],[abp-tree-expanded-icon-template]',\r\n})\r\nexport class ExpandedIconTemplateDirective {\r\n constructor(public template: TemplateRef<any>) {}\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChild,\r\n EventEmitter,\r\n inject,\r\n Input,\r\n OnInit,\r\n Output,\r\n TemplateRef,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NzFormatBeforeDropEvent, NzFormatEmitEvent, NzTreeNode } from 'ng-zorro-antd/tree';\r\nimport { LazyLoadService, LOADING_STRATEGY, SubscriptionService } from '@abp/ng.core';\r\nimport { of } from 'rxjs';\r\nimport { DISABLE_TREE_STYLE_LOADING_TOKEN } from '../disable-tree-style-loading.token';\r\nimport { TreeNodeTemplateDirective } from '../templates/tree-node-template.directive';\r\nimport { ExpandedIconTemplateDirective } from '../templates/expanded-icon-template.directive';\r\n\r\nexport type DropEvent = NzFormatEmitEvent & { pos: number };\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'abp-tree',\r\n templateUrl: 'tree.component.html',\r\n styleUrls: ['tree.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [SubscriptionService],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class TreeComponent implements OnInit {\r\n private lazyLoadService = inject(LazyLoadService);\r\n private subscriptionService = inject(SubscriptionService);\r\n private cdr = inject(ChangeDetectorRef);\r\n private disableTreeStyleLoading = inject(DISABLE_TREE_STYLE_LOADING_TOKEN, { optional: true });\r\n\r\n dropPosition: number;\r\n\r\n dropdowns = {} as { [key: string]: NgbDropdown };\r\n\r\n @ContentChild('menu') menu: TemplateRef<any>;\r\n @ContentChild(TreeNodeTemplateDirective) customNodeTemplate: TreeNodeTemplateDirective;\r\n @ContentChild(ExpandedIconTemplateDirective) expandedIconTemplate: ExpandedIconTemplateDirective;\r\n @Output() readonly checkedKeysChange = new EventEmitter();\r\n @Output() readonly expandedKeysChange = new EventEmitter<string[]>();\r\n @Output() readonly selectedNodeChange = new EventEmitter();\r\n @Output() readonly dropOver = new EventEmitter<DropEvent>();\r\n @Output() readonly nzExpandChange = new EventEmitter<NzFormatEmitEvent>();\r\n @Input() noAnimation = true;\r\n @Input() draggable: boolean;\r\n @Input() checkable: boolean;\r\n @Input() checkStrictly: boolean;\r\n @Input() checkedKeys = [];\r\n @Input() nodes = [];\r\n @Input() expandedKeys: string[] = [];\r\n @Input() selectedNode: any;\r\n @Input() changeCheckboxWithNode: boolean;\r\n @Input() isNodeSelected = node => this.selectedNode?.id === node.key;\r\n @Input() beforeDrop = (event: NzFormatBeforeDropEvent) => {\r\n this.dropPosition = event.pos;\r\n return of(false);\r\n };\r\n\r\n ngOnInit() {\r\n this.loadStyle();\r\n }\r\n\r\n private loadStyle() {\r\n if (this.disableTreeStyleLoading) {\r\n return;\r\n }\r\n const loaded$ = this.lazyLoadService.load(\r\n LOADING_STRATEGY.AppendAnonymousStyleToHead('ng-zorro-antd-tree.css'),\r\n );\r\n this.subscriptionService.addOne(loaded$);\r\n }\r\n\r\n private findNode(target: any, nodes: any[]) {\r\n for (const node of nodes) {\r\n if (node.key === target.id) {\r\n return node;\r\n }\r\n if (node.children) {\r\n const res = this.findNode(target, node.children);\r\n if (res) {\r\n return res;\r\n }\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n onSelectedNodeChange(node: NzTreeNode) {\r\n this.selectedNode = node.origin.entity;\r\n if (this.changeCheckboxWithNode) {\r\n let newVal;\r\n if (node.isChecked) {\r\n newVal = this.checkedKeys.filter(x => x !== node.key);\r\n } else {\r\n newVal = [...this.checkedKeys, node.key];\r\n }\r\n this.selectedNodeChange.emit(node);\r\n this.checkedKeys = newVal;\r\n this.checkedKeysChange.emit(newVal);\r\n } else {\r\n this.selectedNodeChange.emit(node.origin.entity);\r\n }\r\n }\r\n\r\n onCheckboxChange(event) {\r\n this.checkedKeys = [...event.keys];\r\n this.checkedKeysChange.emit(event.keys);\r\n }\r\n\r\n onExpandedKeysChange(event) {\r\n this.expandedKeys = [...event.keys];\r\n this.expandedKeysChange.emit(event.keys);\r\n this.nzExpandChange.emit(event);\r\n }\r\n\r\n onDrop(event: DropEvent) {\r\n event.event.stopPropagation();\r\n event.event.preventDefault();\r\n event.pos = this.dropPosition;\r\n\r\n this.dropOver.emit(event);\r\n }\r\n\r\n initDropdown(key: string, dropdown: NgbDropdown) {\r\n this.dropdowns[key] = dropdown;\r\n }\r\n\r\n setSelectedNode(node: any) {\r\n const newSelectedNode = this.findNode(node, this.nodes);\r\n this.selectedNode = { ...newSelectedNode };\r\n this.cdr.markForCheck();\r\n }\r\n}\r\n","<nz-tree\r\n [nzBeforeDrop]=\"beforeDrop\"\r\n [nzDraggable]=\"draggable\"\r\n [nzCheckStrictly]=\"checkStrictly\"\r\n [nzCheckable]=\"checkable\"\r\n [nzCheckedKeys]=\"checkedKeys\"\r\n [nzData]=\"nodes\"\r\n [nzTreeTemplate]=\"treeTemplate\"\r\n [nzExpandedKeys]=\"expandedKeys\"\r\n [nzExpandedIcon]=\"expandedIconTemplate?.template || defaultIconTemplate\"\r\n (nzExpandChange)=\"onExpandedKeysChange($event)\"\r\n (nzCheckboxChange)=\"onCheckboxChange($event)\"\r\n (nzOnDrop)=\"onDrop($event)\"\r\n [nzNoAnimation]=\"noAnimation\"\r\n (nzContextMenu)=\"dropdowns[$event.node?.key]?.toggle()\"\r\n/>\r\n<ng-template #treeTemplate let-node>\r\n <div\r\n [class.selected]=\"isNodeSelected(node)\"\r\n [title]=\"node.title\"\r\n (click)=\"onSelectedNodeChange(node)\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"nodeTemplate; context: { $implicit: node }\" />\r\n\r\n <ng-template #nodeTemplate let-node>\r\n <div class=\"d-inline-flex align-items-center abp-ellipsis-inline\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n customNodeTemplate ? customNodeTemplate?.template : defaultNodeTemplate;\r\n context: { $implicit: node }\r\n \"\r\n />\r\n </div>\r\n\r\n @if (menu) {\r\n <div\r\n #dropdown=\"ngbDropdown\"\r\n class=\"d-inline-block ms-1\"\r\n ngbDropdown\r\n placement=\"bottom\"\r\n container=\"body\"\r\n (abpInit)=\"initDropdown(node.key, dropdown)\"\r\n >\r\n <i\r\n class=\"fas fa-caret-down text-muted\"\r\n ngbDropdownToggle\r\n [class.dropdown-toggle]=\"false\"\r\n aria-hidden=\"true\"\r\n ></i>\r\n <div ngbDropdownMenu>\r\n <ng-template *ngTemplateOutlet=\"menu; context: { $implicit: node }\" />\r\n </div>\r\n </div>\r\n }\r\n </ng-template>\r\n\r\n <ng-template #defaultNodeTemplate let-node>\r\n <span>{{ node.title }}</span>\r\n </ng-template>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #defaultIconTemplate let-node let-origin=\"origin\">\r\n <i aria-hidden=\"true\">\r\n <ng-container *ngTemplateOutlet=\"node.isExpanded ? minusIcon : plusIcon\"\r\n /></i>\r\n</ng-template>\r\n\r\n<ng-template #minusIcon>\r\n <svg\r\n width=\"15\"\r\n height=\"15\"\r\n viewBox=\"0 0 24 24\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n >\r\n <path\r\n d=\"M11.5 0c6.347 0 11.5 5.153 11.5 11.5s-5.153 11.5-11.5 11.5-11.5-5.153-11.5-11.5 5.153-11.5 11.5-11.5zm0 1c5.795 0 10.5 4.705 10.5 10.5s-4.705 10.5-10.5 10.5-10.5-4.705-10.5-10.5 4.705-10.5 10.5-10.5zm-6.5 10h13v1h-13v-1z\"\r\n />\r\n </svg>\r\n</ng-template>\r\n\r\n<ng-template #plusIcon>\r\n <svg\r\n width=\"15\"\r\n height=\"15\"\r\n viewBox=\"0 0 24 24\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n >\r\n <path\r\n d=\"M11.5 0c6.347 0 11.5 5.153 11.5 11.5s-5.153 11.5-11.5 11.5-11.5-5.153-11.5-11.5 5.153-11.5 11.5-11.5zm0 1c5.795 0 10.5 4.705 10.5 10.5s-4.705 10.5-10.5 10.5-10.5-4.705-10.5-10.5 4.705-10.5 10.5-10.5zm.5 10h6v1h-6v6h-1v-6h-6v-1h6v-6h1v6z\"\r\n />\r\n </svg>\r\n</ng-template>\r\n","import { CoreModule } from '@abp/ng.core';\r\nimport { NgModule } from '@angular/core';\r\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NzNoAnimationModule } from 'ng-zorro-antd/core/no-animation';\r\nimport { NzTreeModule } from 'ng-zorro-antd/tree';\r\nimport { TreeComponent } from './components/tree.component';\r\nimport { ExpandedIconTemplateDirective } from './templates/expanded-icon-template.directive';\r\nimport { TreeNodeTemplateDirective } from './templates/tree-node-template.directive';\r\n\r\nconst templates = [TreeNodeTemplateDirective, ExpandedIconTemplateDirective];\r\n\r\nconst exported = [...templates, TreeComponent];\r\n\r\n@NgModule({\r\n imports: [CoreModule, NzTreeModule, NgbDropdownModule, NzNoAnimationModule],\r\n exports: [...exported],\r\n declarations: [...exported],\r\n})\r\nexport class TreeModule {}\r\n","export abstract class BaseNode {\r\n name?: string;\r\n displayName?: string;\r\n\r\n constructor(public id: string, public parentId: string | null) {}\r\n}\r\n\r\nexport class TreeNode<T extends BaseNode> extends BaseNode {\r\n title: string | undefined;\r\n key: string;\r\n icon: string | null = null;\r\n children: TreeNode<T>[] = [];\r\n isLeaf = true;\r\n checked = false;\r\n selected = false;\r\n expanded = false;\r\n selectable = true;\r\n disabled = false;\r\n disableCheckbox = false;\r\n parentNode?: TreeNode<T> | null;\r\n\r\n constructor(public entity: T, private nameResolver = ent => ent.displayName || ent.name) {\r\n super(entity.id, entity.parentId);\r\n this.key = entity.id;\r\n this.title = nameResolver(entity);\r\n }\r\n}\r\n\r\nexport class TreeAdapter<T extends BaseNode = BaseNode> {\r\n private tree: TreeNode<T>[];\r\n\r\n constructor(private list: T[] = []) {\r\n this.tree = createTreeFromList(this.list);\r\n }\r\n\r\n getList() {\r\n return this.list;\r\n }\r\n\r\n getTree() {\r\n return this.tree;\r\n }\r\n\r\n handleDrop({ key, parentNode }: TreeNode<T>) {\r\n const index = this.list.findIndex(({ id }) => id === key);\r\n this.list[index].parentId = parentNode ? parentNode.key : null;\r\n this.tree = createTreeFromList(this.list);\r\n }\r\n\r\n handleRemove({ key }: TreeNode<T>) {\r\n this.updateTreeFromList(this.list.filter(item => item.id !== key));\r\n }\r\n\r\n handleUpdate({ key, children }: { key: string; children: T[] }) {\r\n /**\r\n * When we need to update a node with new children, first we need to remove any descendant nodes.\r\n * If we remove immediate children and create a new tree, any other descendant nodes will be removed\r\n * and we won't need to recursively remove sub children.\r\n * Then, you simply add back the new children and create a new tree.\r\n */\r\n const listWithDescendantNodesRemoved = this.updateTreeFromList(\r\n this.list.filter(item => item.parentId !== key),\r\n );\r\n this.updateTreeFromList(listWithDescendantNodesRemoved.concat(children));\r\n }\r\n\r\n updateTreeFromList(list: T[]) {\r\n this.tree = createTreeFromList(list);\r\n this.list = createListFromTree(this.tree);\r\n return this.list;\r\n }\r\n}\r\n\r\n// UTILITY FUNCTIONS\r\n\r\nfunction createTreeFromList<T extends BaseNode>(list: T[]): TreeNode<T>[] {\r\n const map = createMapFromList(list);\r\n const tree: TreeNode<T>[] = [];\r\n\r\n list.forEach(row => {\r\n const parentId = row.parentId;\r\n const node = map.get(row.id);\r\n if (parentId) {\r\n const parent = map.get(parentId);\r\n if (!parent) return;\r\n parent.children.push(node);\r\n parent.isLeaf = false;\r\n } else {\r\n tree.push(node);\r\n }\r\n });\r\n return tree;\r\n}\r\n\r\nfunction createListFromTree<T extends BaseNode>(tree: TreeNode<T>[], list: T[] = []): T[] {\r\n tree.forEach(node => {\r\n list.push({ ...node.entity, parentId: node.parentId });\r\n if (node.children) createListFromTree(node.children, list);\r\n });\r\n\r\n return list;\r\n}\r\n\r\nfunction createMapFromList<T extends BaseNode>(\r\n list: T[],\r\n map = new Map<string, TreeNode<T>>(),\r\n): Map<string, TreeNode<T>> {\r\n list.forEach(row => map.set(row.id, new TreeNode(row)));\r\n\r\n return map;\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,18 +1,18 @@
1
1
  {
2
2
  "name": "@abp/ng.components",
3
- "version": "9.1.0-rc.1",
3
+ "version": "9.1.0-rc.3",
4
4
  "homepage": "https://abp.io",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/abpframework/abp.git"
8
8
  },
9
9
  "peerDependencies": {
10
- "@abp/ng.core": ">=9.1.0-rc.1",
11
- "@abp/ng.theme.shared": ">=9.1.0-rc.1"
10
+ "@abp/ng.core": ">=9.1.0-rc.3",
11
+ "@abp/ng.theme.shared": ">=9.1.0-rc.3"
12
12
  },
13
13
  "dependencies": {
14
14
  "chart.js": "^3.5.1",
15
- "ng-zorro-antd": "^17.0.0",
15
+ "ng-zorro-antd": "~19.0.0",
16
16
  "@ctrl/tinycolor": "^4.0.0",
17
17
  "tslib": "^2.0.0"
18
18
  },
@@ -1,9 +1,8 @@
1
- import { ChangeDetectorRef, EventEmitter, OnInit, TemplateRef } from '@angular/core';
1
+ import { EventEmitter, OnInit, TemplateRef } from '@angular/core';
2
+ import { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';
2
3
  import { NzFormatBeforeDropEvent, NzFormatEmitEvent, NzTreeNode } from 'ng-zorro-antd/tree';
3
4
  import { TreeNodeTemplateDirective } from '../templates/tree-node-template.directive';
4
5
  import { ExpandedIconTemplateDirective } from '../templates/expanded-icon-template.directive';
5
- import { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';
6
- import { LazyLoadService, SubscriptionService } from '@abp/ng.core';
7
6
  import * as i0 from "@angular/core";
8
7
  export type DropEvent = NzFormatEmitEvent & {
9
8
  pos: number;
@@ -11,13 +10,12 @@ export type DropEvent = NzFormatEmitEvent & {
11
10
  export declare class TreeComponent implements OnInit {
12
11
  private lazyLoadService;
13
12
  private subscriptionService;
14
- private disableTreeStyleLoading;
15
13
  private cdr;
14
+ private disableTreeStyleLoading;
16
15
  dropPosition: number;
17
16
  dropdowns: {
18
17
  [key: string]: NgbDropdown;
19
18
  };
20
- constructor(lazyLoadService: LazyLoadService, subscriptionService: SubscriptionService, disableTreeStyleLoading: boolean | undefined, cdr: ChangeDetectorRef);
21
19
  menu: TemplateRef<any>;
22
20
  customNodeTemplate: TreeNodeTemplateDirective;
23
21
  expandedIconTemplate: ExpandedIconTemplateDirective;
@@ -46,6 +44,6 @@ export declare class TreeComponent implements OnInit {
46
44
  onDrop(event: DropEvent): void;
47
45
  initDropdown(key: string, dropdown: NgbDropdown): void;
48
46
  setSelectedNode(node: any): void;
49
- static ɵfac: i0.ɵɵFactoryDeclaration<TreeComponent, [null, null, { optional: true; }, null]>;
47
+ static ɵfac: i0.ɵɵFactoryDeclaration<TreeComponent, never>;
50
48
  static ɵcmp: i0.ɵɵComponentDeclaration<TreeComponent, "abp-tree", never, { "noAnimation": { "alias": "noAnimation"; "required": false; }; "draggable": { "alias": "draggable"; "required": false; }; "checkable": { "alias": "checkable"; "required": false; }; "checkStrictly": { "alias": "checkStrictly"; "required": false; }; "checkedKeys": { "alias": "checkedKeys"; "required": false; }; "nodes": { "alias": "nodes"; "required": false; }; "expandedKeys": { "alias": "expandedKeys"; "required": false; }; "selectedNode": { "alias": "selectedNode"; "required": false; }; "changeCheckboxWithNode": { "alias": "changeCheckboxWithNode"; "required": false; }; "isNodeSelected": { "alias": "isNodeSelected"; "required": false; }; "beforeDrop": { "alias": "beforeDrop"; "required": false; }; }, { "checkedKeysChange": "checkedKeysChange"; "expandedKeysChange": "expandedKeysChange"; "selectedNodeChange": "selectedNodeChange"; "dropOver": "dropOver"; "nzExpandChange": "nzExpandChange"; }, ["menu", "customNodeTemplate", "expandedIconTemplate"], never, false, never>;
51
49
  }