ngx-axis-appforge 0.0.30 → 0.0.31

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.
@@ -124,13 +124,14 @@ class Select extends ValueAccess {
124
124
  return "";
125
125
  }
126
126
  searchChange(input) {
127
+ this.triggeEvents("search", { searchText: input }).subscribe();
127
128
  }
128
129
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: Select, deps: [], target: i0.ɵɵFactoryTarget.Component });
129
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: Select, isStandalone: true, selector: "axis-select", inputs: { selectorValue: { classPropertyName: "selectorValue", publicName: "selectorValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectorValue: "selectorValueChange" }, usesInheritance: true, ngImport: i0, template: "@if (options.readonly()) {\n{{displayValue()}}\n}@else {\n<nz-select [nzMode]=\"options.mode()\" [nzAllowClear]=\"options.allowClear()\"\n [nzMaxMultipleCount]=\"options.maxMultipleCount()\" [nzPlaceHolder]=\"options.placeholder()\"\n [nzVariant]=\"options.variant()\" [nzDropdownMatchSelectWidth]=\"options.dropdownMatchSelectWidth()\"\n [nzSize]=\"options.size()\" [nzOptionOverflowSize]=\"options.optionOverflowSize()\"\n [nzSelectOnTab]=\"options.selectOnTab()\" [nzMaxTagCount]=\"options.maxTagCount()\"\n [nzShowSearch]=\"options.showSearch()\" [nzShowSearch]=\"options.serverSearch()\"\n [nzAutoClearSearchValue]=\"options.autoClearSearchValue()\" [nzDisabled]=\"options.disabled()\"\n [(ngModel)]=\"selectorValue\" (ngModelChange)=\"onSelectorChange($event)\">\n @for (o of options.data(); track o[options.valueField()]) {\n <nz-option [nzValue]=\"o[options.valueField()]\" [nzLabel]=\"o[options.labelField()]\"\n [nzDisabled]=\"o[options.disabledField()]\"></nz-option>\n }\n</nz-select>\n}", styles: [":host{display:block;width:100%}nz-select{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: NzSelectModule }, { kind: "component", type: i1.NzOptionComponent, selector: "nz-option", inputs: ["nzTitle", "nzLabel", "nzValue", "nzKey", "nzDisabled", "nzHide", "nzCustomContent"], exportAs: ["nzOption"] }, { kind: "component", type: i1.NzSelectComponent, selector: "nz-select", inputs: ["nzId", "nzSize", "nzStatus", "nzVariant", "nzOptionHeightPx", "nzOptionOverflowSize", "nzDropdownClassName", "nzDropdownMatchSelectWidth", "nzDropdownStyle", "nzNotFoundContent", "nzPlaceHolder", "nzPlacement", "nzMaxTagCount", "nzDropdownRender", "nzCustomTemplate", "nzSuffixIcon", "nzClearIcon", "nzRemoveIcon", "nzMenuItemSelectedIcon", "nzTokenSeparators", "nzMaxTagPlaceholder", "nzMaxMultipleCount", "nzMode", "nzFilterOption", "compareWith", "nzAllowClear", "nzBorderless", "nzShowSearch", "nzLoading", "nzAutoFocus", "nzAutoClearSearchValue", "nzServerSearch", "nzDisabled", "nzOpen", "nzSelectOnTab", "nzBackdrop", "nzOptions", "nzShowArrow"], outputs: ["nzOnSearch", "nzScrollToBottom", "nzOpenChange", "nzBlur", "nzFocus", "nzOnClear"], exportAs: ["nzSelect"] }, { kind: "ngmodule", type: NzRadioModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
130
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: Select, isStandalone: true, selector: "axis-select", inputs: { selectorValue: { classPropertyName: "selectorValue", publicName: "selectorValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectorValue: "selectorValueChange" }, usesInheritance: true, ngImport: i0, template: "@if (options.readonly()) {\n{{displayValue()}}\n}@else {\n<nz-select [nzMode]=\"options.mode()\" [nzAllowClear]=\"options.allowClear()\"\n [nzMaxMultipleCount]=\"options.maxMultipleCount()\" [nzPlaceHolder]=\"options.placeholder()\"\n [nzVariant]=\"options.variant()\" [nzDropdownMatchSelectWidth]=\"options.dropdownMatchSelectWidth()\"\n [nzSize]=\"options.size()\" [nzOptionOverflowSize]=\"options.optionOverflowSize()\"\n [nzSelectOnTab]=\"options.selectOnTab()\" [nzMaxTagCount]=\"options.maxTagCount()\"\n [nzShowSearch]=\"options.showSearch()\" [nzServerSearch]=\"options.serverSearch()\"\n [nzAutoClearSearchValue]=\"options.autoClearSearchValue()\" [nzDisabled]=\"options.disabled()\"\n [(ngModel)]=\"selectorValue\" (ngModelChange)=\"onSelectorChange($event)\" (nzOnSearch)=\"searchChange($event)\">\n @for (o of options.data(); track o[options.valueField()]) {\n <nz-option [nzValue]=\"o[options.valueField()]\" [nzLabel]=\"o[options.labelField()]\"\n [nzDisabled]=\"o[options.disabledField()]\"></nz-option>\n }\n</nz-select>\n}", styles: [":host{display:block;width:100%}nz-select{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: NzSelectModule }, { kind: "component", type: i1.NzOptionComponent, selector: "nz-option", inputs: ["nzTitle", "nzLabel", "nzValue", "nzKey", "nzDisabled", "nzHide", "nzCustomContent"], exportAs: ["nzOption"] }, { kind: "component", type: i1.NzSelectComponent, selector: "nz-select", inputs: ["nzId", "nzSize", "nzStatus", "nzVariant", "nzOptionHeightPx", "nzOptionOverflowSize", "nzDropdownClassName", "nzDropdownMatchSelectWidth", "nzDropdownStyle", "nzNotFoundContent", "nzPlaceHolder", "nzPlacement", "nzMaxTagCount", "nzDropdownRender", "nzCustomTemplate", "nzSuffixIcon", "nzClearIcon", "nzRemoveIcon", "nzMenuItemSelectedIcon", "nzTokenSeparators", "nzMaxTagPlaceholder", "nzMaxMultipleCount", "nzMode", "nzFilterOption", "compareWith", "nzAllowClear", "nzBorderless", "nzShowSearch", "nzLoading", "nzAutoFocus", "nzAutoClearSearchValue", "nzServerSearch", "nzDisabled", "nzOpen", "nzSelectOnTab", "nzBackdrop", "nzOptions", "nzShowArrow"], outputs: ["nzOnSearch", "nzScrollToBottom", "nzOpenChange", "nzBlur", "nzFocus", "nzOnClear"], exportAs: ["nzSelect"] }, { kind: "ngmodule", type: NzRadioModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
130
131
  }
131
132
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: Select, decorators: [{
132
133
  type: Component,
133
- args: [{ selector: 'axis-select', imports: [NzSelectModule, NzRadioModule, FormsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (options.readonly()) {\n{{displayValue()}}\n}@else {\n<nz-select [nzMode]=\"options.mode()\" [nzAllowClear]=\"options.allowClear()\"\n [nzMaxMultipleCount]=\"options.maxMultipleCount()\" [nzPlaceHolder]=\"options.placeholder()\"\n [nzVariant]=\"options.variant()\" [nzDropdownMatchSelectWidth]=\"options.dropdownMatchSelectWidth()\"\n [nzSize]=\"options.size()\" [nzOptionOverflowSize]=\"options.optionOverflowSize()\"\n [nzSelectOnTab]=\"options.selectOnTab()\" [nzMaxTagCount]=\"options.maxTagCount()\"\n [nzShowSearch]=\"options.showSearch()\" [nzShowSearch]=\"options.serverSearch()\"\n [nzAutoClearSearchValue]=\"options.autoClearSearchValue()\" [nzDisabled]=\"options.disabled()\"\n [(ngModel)]=\"selectorValue\" (ngModelChange)=\"onSelectorChange($event)\">\n @for (o of options.data(); track o[options.valueField()]) {\n <nz-option [nzValue]=\"o[options.valueField()]\" [nzLabel]=\"o[options.labelField()]\"\n [nzDisabled]=\"o[options.disabledField()]\"></nz-option>\n }\n</nz-select>\n}", styles: [":host{display:block;width:100%}nz-select{width:100%}\n"] }]
134
+ args: [{ selector: 'axis-select', imports: [NzSelectModule, NzRadioModule, FormsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (options.readonly()) {\n{{displayValue()}}\n}@else {\n<nz-select [nzMode]=\"options.mode()\" [nzAllowClear]=\"options.allowClear()\"\n [nzMaxMultipleCount]=\"options.maxMultipleCount()\" [nzPlaceHolder]=\"options.placeholder()\"\n [nzVariant]=\"options.variant()\" [nzDropdownMatchSelectWidth]=\"options.dropdownMatchSelectWidth()\"\n [nzSize]=\"options.size()\" [nzOptionOverflowSize]=\"options.optionOverflowSize()\"\n [nzSelectOnTab]=\"options.selectOnTab()\" [nzMaxTagCount]=\"options.maxTagCount()\"\n [nzShowSearch]=\"options.showSearch()\" [nzServerSearch]=\"options.serverSearch()\"\n [nzAutoClearSearchValue]=\"options.autoClearSearchValue()\" [nzDisabled]=\"options.disabled()\"\n [(ngModel)]=\"selectorValue\" (ngModelChange)=\"onSelectorChange($event)\" (nzOnSearch)=\"searchChange($event)\">\n @for (o of options.data(); track o[options.valueField()]) {\n <nz-option [nzValue]=\"o[options.valueField()]\" [nzLabel]=\"o[options.labelField()]\"\n [nzDisabled]=\"o[options.disabledField()]\"></nz-option>\n }\n</nz-select>\n}", styles: [":host{display:block;width:100%}nz-select{width:100%}\n"] }]
134
135
  }], ctorParameters: () => [] });
135
136
 
136
137
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-axis-appforge-axis-components-select.mjs","sources":["../../../axis-components/select/select.options.ts","../../../axis-components/select/select.ts","../../../axis-components/select/select.html","../../../axis-components/select/ngx-axis-appforge-axis-components-select.ts"],"sourcesContent":["import { signal } from \"@angular/core\";\nimport { ValueAccessOptions } from \"ngx-axis-appforge/core\";\n\nexport class SelectOptions extends ValueAccessOptions {\n\n readonly labelField = signal(\"title\");\n readonly valueField = signal(\"key\");\n readonly disabledField = signal(\"disabled\");\n readonly fullValue = signal(false);\n readonly data = signal<any>(undefined);\n\n readonly mode = signal<'multiple' | 'tags' | 'default'>('default');\n readonly allowClear = signal(true);\n readonly defaultFirst = signal(false);\n readonly maxMultipleCount = signal(Infinity);\n\n readonly placeholder = signal(\"\");\n readonly variant = signal<'outlined' | 'borderless' | 'filled' | 'underlined'>('outlined');\n readonly dropdownMatchSelectWidth = signal(true);\n readonly size = signal<'large' | 'small' | 'default'>('default');\n readonly optionOverflowSize = signal(8);\n readonly selectOnTab = signal(false);\n readonly maxTagCount = signal(Infinity);\n\n readonly showSearch = signal(false);\n readonly serverSearch = signal(false);\n readonly autoClearSearchValue = signal(true);\n}","import { ChangeDetectionStrategy, Component, computed, effect, model, signal, untracked } from '@angular/core';\nimport { ValueAccess } from 'ngx-axis-appforge/core';\nimport { NzSelectModule } from 'ng-zorro-antd/select';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { FormsModule } from '@angular/forms';\nimport { SelectOptions } from './select.options';\n\n@Component({\n selector: 'axis-select',\n imports: [NzSelectModule, NzRadioModule, FormsModule],\n templateUrl: './select.html',\n styleUrl: './select.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class Select extends ValueAccess<SelectOptions> {\n\n constructor() {\n super();\n effect(() => {\n if (untracked(this.options.defaultFirst) && untracked(this.options.mode) == \"default\") {\n const data = this.options.data();\n untracked(() => {\n if (Array.isArray(data)) {\n if (data.length) {\n if (this.options.fullValue()) {\n this.setInitValue(data[0]);\n } else {\n this.setInitValue(data[0][this.options.valueField()]);\n }\n } else {\n this.setInitValue(null);\n }\n }\n })\n }\n });\n }\n\n override options: SelectOptions = new SelectOptions();\n\n readonly displayValue = computed(() => this.buildDisplay());\n readonly selectorValue = model<any[]>();\n readonly searchText = signal<string>(\"\");\n\n override writeValue(value: any): void {\n super.writeValue(value);\n this.valueToSelectorValue();\n }\n\n override setInitValue(value: any): void {\n super.setInitValue(value);\n this.valueToSelectorValue();\n }\n\n private valueToSelectorValue() {\n if (this.value() != undefined) {\n if (this.options.mode() == \"default\") {\n if (this.options.fullValue()) {\n this.selectorValue.set(this.value()[this.options.valueField()]);\n } else {\n this.selectorValue.set(this.value());\n }\n return;\n } else if (Array.isArray(this.value())) {\n if (this.options.fullValue()) {\n this.selectorValue.set(this.value().map((r: any) => r[this.options.valueField()]));\n } else {\n this.selectorValue.set(this.value());\n }\n return;\n }\n }\n this.selectorValue.set(this.value());\n }\n\n onSelectorChange(value: any) {\n if (this.options.fullValue()) {\n if (this.options.mode() == \"default\") {\n this.value.set(this.options.data().find((item: any) => item[this.options.valueField()] == value));\n } else {\n this.value.set(this.options.data().filter((item: any) => value.includes(item[this.options.valueField()])));\n }\n } else {\n this.value.set(value);\n }\n this.onChange?.(this.value());\n }\n\n private buildDisplay(): string {\n if (this.options.mode() != \"default\") {\n if (Array.isArray(this.value())) {\n if (this.options.fullValue()) {\n return this.value().map((r: any) => r[this.options.labelField()]).join(\";\");\n } else {\n return this.options.data().filter((r: any) => this.value().includes(r[this.options.valueField()])).map((r: any) => r[this.options.labelField()]).join(\";\");\n }\n }\n } else {\n if (this.options.fullValue()) {\n return this.value()[this.options.labelField()];\n } else {\n return this.options.data().find((r: any) => this.value() == r[this.options.valueField()])?.[this.options.labelField()];\n }\n }\n return \"\";\n }\n\n searchChange(input: string) {\n\n }\n}\n","@if (options.readonly()) {\n{{displayValue()}}\n}@else {\n<nz-select [nzMode]=\"options.mode()\" [nzAllowClear]=\"options.allowClear()\"\n [nzMaxMultipleCount]=\"options.maxMultipleCount()\" [nzPlaceHolder]=\"options.placeholder()\"\n [nzVariant]=\"options.variant()\" [nzDropdownMatchSelectWidth]=\"options.dropdownMatchSelectWidth()\"\n [nzSize]=\"options.size()\" [nzOptionOverflowSize]=\"options.optionOverflowSize()\"\n [nzSelectOnTab]=\"options.selectOnTab()\" [nzMaxTagCount]=\"options.maxTagCount()\"\n [nzShowSearch]=\"options.showSearch()\" [nzShowSearch]=\"options.serverSearch()\"\n [nzAutoClearSearchValue]=\"options.autoClearSearchValue()\" [nzDisabled]=\"options.disabled()\"\n [(ngModel)]=\"selectorValue\" (ngModelChange)=\"onSelectorChange($event)\">\n @for (o of options.data(); track o[options.valueField()]) {\n <nz-option [nzValue]=\"o[options.valueField()]\" [nzLabel]=\"o[options.labelField()]\"\n [nzDisabled]=\"o[options.disabledField()]\"></nz-option>\n }\n</nz-select>\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './select';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-axis-appforge-axis-components-select.mjs","sources":["../../../axis-components/select/select.options.ts","../../../axis-components/select/select.ts","../../../axis-components/select/select.html","../../../axis-components/select/ngx-axis-appforge-axis-components-select.ts"],"sourcesContent":["import { signal } from \"@angular/core\";\nimport { ValueAccessOptions } from \"ngx-axis-appforge/core\";\n\nexport class SelectOptions extends ValueAccessOptions {\n\n readonly labelField = signal(\"title\");\n readonly valueField = signal(\"key\");\n readonly disabledField = signal(\"disabled\");\n readonly fullValue = signal(false);\n readonly data = signal<any>(undefined);\n\n readonly mode = signal<'multiple' | 'tags' | 'default'>('default');\n readonly allowClear = signal(true);\n readonly defaultFirst = signal(false);\n readonly maxMultipleCount = signal(Infinity);\n\n readonly placeholder = signal(\"\");\n readonly variant = signal<'outlined' | 'borderless' | 'filled' | 'underlined'>('outlined');\n readonly dropdownMatchSelectWidth = signal(true);\n readonly size = signal<'large' | 'small' | 'default'>('default');\n readonly optionOverflowSize = signal(8);\n readonly selectOnTab = signal(false);\n readonly maxTagCount = signal(Infinity);\n\n readonly showSearch = signal(false);\n readonly serverSearch = signal(false);\n readonly autoClearSearchValue = signal(true);\n}","import { ChangeDetectionStrategy, Component, computed, effect, model, signal, untracked } from '@angular/core';\nimport { ValueAccess } from 'ngx-axis-appforge/core';\nimport { NzSelectModule } from 'ng-zorro-antd/select';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { FormsModule } from '@angular/forms';\nimport { SelectOptions } from './select.options';\n\n@Component({\n selector: 'axis-select',\n imports: [NzSelectModule, NzRadioModule, FormsModule],\n templateUrl: './select.html',\n styleUrl: './select.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class Select extends ValueAccess<SelectOptions> {\n\n constructor() {\n super();\n effect(() => {\n if (untracked(this.options.defaultFirst) && untracked(this.options.mode) == \"default\") {\n const data = this.options.data();\n untracked(() => {\n if (Array.isArray(data)) {\n if (data.length) {\n if (this.options.fullValue()) {\n this.setInitValue(data[0]);\n } else {\n this.setInitValue(data[0][this.options.valueField()]);\n }\n } else {\n this.setInitValue(null);\n }\n }\n })\n }\n });\n }\n\n override options: SelectOptions = new SelectOptions();\n\n readonly displayValue = computed(() => this.buildDisplay());\n readonly selectorValue = model<any[]>();\n readonly searchText = signal<string>(\"\");\n\n override writeValue(value: any): void {\n super.writeValue(value);\n this.valueToSelectorValue();\n }\n\n override setInitValue(value: any): void {\n super.setInitValue(value);\n this.valueToSelectorValue();\n }\n\n private valueToSelectorValue() {\n if (this.value() != undefined) {\n if (this.options.mode() == \"default\") {\n if (this.options.fullValue()) {\n this.selectorValue.set(this.value()[this.options.valueField()]);\n } else {\n this.selectorValue.set(this.value());\n }\n return;\n } else if (Array.isArray(this.value())) {\n if (this.options.fullValue()) {\n this.selectorValue.set(this.value().map((r: any) => r[this.options.valueField()]));\n } else {\n this.selectorValue.set(this.value());\n }\n return;\n }\n }\n this.selectorValue.set(this.value());\n }\n\n onSelectorChange(value: any) {\n if (this.options.fullValue()) {\n if (this.options.mode() == \"default\") {\n this.value.set(this.options.data().find((item: any) => item[this.options.valueField()] == value));\n } else {\n this.value.set(this.options.data().filter((item: any) => value.includes(item[this.options.valueField()])));\n }\n } else {\n this.value.set(value);\n }\n this.onChange?.(this.value());\n }\n\n private buildDisplay(): string {\n if (this.options.mode() != \"default\") {\n if (Array.isArray(this.value())) {\n if (this.options.fullValue()) {\n return this.value().map((r: any) => r[this.options.labelField()]).join(\";\");\n } else {\n return this.options.data().filter((r: any) => this.value().includes(r[this.options.valueField()])).map((r: any) => r[this.options.labelField()]).join(\";\");\n }\n }\n } else {\n if (this.options.fullValue()) {\n return this.value()[this.options.labelField()];\n } else {\n return this.options.data().find((r: any) => this.value() == r[this.options.valueField()])?.[this.options.labelField()];\n }\n }\n return \"\";\n }\n\n searchChange(input: string) {\n this.triggeEvents(\"search\", { searchText: input }).subscribe();\n }\n}\n","@if (options.readonly()) {\n{{displayValue()}}\n}@else {\n<nz-select [nzMode]=\"options.mode()\" [nzAllowClear]=\"options.allowClear()\"\n [nzMaxMultipleCount]=\"options.maxMultipleCount()\" [nzPlaceHolder]=\"options.placeholder()\"\n [nzVariant]=\"options.variant()\" [nzDropdownMatchSelectWidth]=\"options.dropdownMatchSelectWidth()\"\n [nzSize]=\"options.size()\" [nzOptionOverflowSize]=\"options.optionOverflowSize()\"\n [nzSelectOnTab]=\"options.selectOnTab()\" [nzMaxTagCount]=\"options.maxTagCount()\"\n [nzShowSearch]=\"options.showSearch()\" [nzServerSearch]=\"options.serverSearch()\"\n [nzAutoClearSearchValue]=\"options.autoClearSearchValue()\" [nzDisabled]=\"options.disabled()\"\n [(ngModel)]=\"selectorValue\" (ngModelChange)=\"onSelectorChange($event)\" (nzOnSearch)=\"searchChange($event)\">\n @for (o of options.data(); track o[options.valueField()]) {\n <nz-option [nzValue]=\"o[options.valueField()]\" [nzLabel]=\"o[options.labelField()]\"\n [nzDisabled]=\"o[options.disabledField()]\"></nz-option>\n }\n</nz-select>\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './select';\n"],"names":[],"mappings":"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"}
@@ -80,11 +80,15 @@ class TreeSelector extends ValueAccess {
80
80
  const value = this.fullArrayToValue(fullArray);
81
81
  if (value != null) {
82
82
  this.setInitValue(value);
83
- this.initComponentValue();
83
+ untracked(() => this.valueToComponentValue());
84
84
  }
85
85
  }
86
86
  });
87
- effect(() => this.initComponentValue());
87
+ effect(() => {
88
+ if (this.treeNodeMap()) {
89
+ untracked(() => this.valueToComponentValue());
90
+ }
91
+ });
88
92
  }
89
93
  treeSelect;
90
94
  menu;
@@ -111,7 +115,7 @@ class TreeSelector extends ValueAccess {
111
115
  };
112
116
  writeValue(value) {
113
117
  super.writeValue(value);
114
- this.initComponentValue();
118
+ this.valueToComponentValue();
115
119
  }
116
120
  buildTreeData() {
117
121
  if (!this.options.data()) {
@@ -168,21 +172,21 @@ class TreeSelector extends ValueAccess {
168
172
  }, this.options.levelStart() < 0 ? -1 : 0);
169
173
  return treeData;
170
174
  }
171
- initComponentValue() {
172
- let value = untracked(this.value);
175
+ valueToComponentValue() {
176
+ let value = this.value();
173
177
  if (value) {
174
- if (!untracked(this.options.multiple)) {
178
+ if (!this.options.multiple()) {
175
179
  value = [value];
176
180
  }
177
- if (untracked(this.options.fullValue)) {
178
- value = value.map((e) => e[untracked(this.options.valueField)]);
181
+ if (this.options.fullValue()) {
182
+ value = value.map((e) => e[this.options.valueField()]);
179
183
  }
180
- switch (untracked(this.options.type)) {
184
+ switch (this.options.type()) {
181
185
  case "tree":
182
186
  this.selectedKeys.set(value);
183
187
  break;
184
188
  case "input-tree":
185
- if (!untracked(this.options.multiple)) {
189
+ if (!this.options.multiple()) {
186
190
  value = value[0];
187
191
  }
188
192
  this.selectValue.set(value);
@@ -196,6 +200,19 @@ class TreeSelector extends ValueAccess {
196
200
  break;
197
201
  }
198
202
  }
203
+ else {
204
+ switch (this.options.type()) {
205
+ case "tree":
206
+ this.selectedKeys.set([]);
207
+ break;
208
+ case "input-tree":
209
+ this.selectValue.set(null);
210
+ break;
211
+ case "cascader":
212
+ this.selectValue.set(null);
213
+ break;
214
+ }
215
+ }
199
216
  }
200
217
  nodeClick(e) {
201
218
  if (!e.node.isSelectable) {
@@ -235,7 +252,7 @@ class TreeSelector extends ValueAccess {
235
252
  if (!this.options.multiple()) {
236
253
  value = value?.[0];
237
254
  }
238
- return value;
255
+ return value ?? null;
239
256
  }
240
257
  hasExpanded(node) {
241
258
  return node.isExpanded || node.children.some(c => this.hasExpanded(c));
@@ -272,16 +289,16 @@ class TreeSelector extends ValueAccess {
272
289
  this.onChange?.(this.value());
273
290
  }
274
291
  onCascaderChange(v) {
275
- const value = this.fullArrayToValue(this.options.multiple() ? v.map((e) => this.treeNodeMap().get(e[e.length - 1])['data']) : [this.treeNodeMap().get(v[v.length - 1])['data']]);
292
+ const value = this.fullArrayToValue(this.options.multiple() ? v.map((e) => this.treeNodeMap().get(e[e.length - 1])['data']) : v.length ? [this.treeNodeMap().get(v[v.length - 1])['data']] : []);
276
293
  this.value.set(value);
277
294
  this.onChange?.(this.value());
278
295
  }
279
296
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: TreeSelector, deps: [], target: i0.ɵɵFactoryTarget.Component });
280
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: TreeSelector, isStandalone: true, selector: "axis-tree-selector", inputs: { searchValue: { classPropertyName: "searchValue", publicName: "searchValue", isSignal: true, isRequired: false, transformFunction: null }, selectValue: { classPropertyName: "selectValue", publicName: "selectValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { searchValue: "searchValueChange", selectValue: "selectValueChange" }, viewQueries: [{ propertyName: "treeSelect", first: true, predicate: NzTreeSelectComponent, descendants: true }, { propertyName: "menu", first: true, predicate: NzDropdownMenuComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "@switch (options.type() ) {\n@case (\"tree\") {\n<div class=\"tree-box\">\n @if (options.title()) {\n <div class=\"title-container\">{{options.title()}}</div>\n }\n @if (options.showSearch()) {\n <div class=\"search-inp\">\n <input type=\"text\" nz-input placeholder=\"\u641C\u7D22\" [(ngModel)]=\"searchValue\" nzVariant=\"borderless\" nzSize=\"small\" />\n </div>\n }\n <div class=\"tree-body\">\n <nz-tree [nzSearchValue]=\"searchValue()??''\" [nzTreeTemplate]=\"optionItem\"\n [nzHideUnMatched]=\"options.hideUnMatched()\" [nzData]=\"treeData()\" nzBlockNode\n [nzSelectedKeys]=\"selectedKeys()\" [nzMultiple]=\"options.multiple()\" [nzShowLine]=\"options.showLine()\"\n (nzClick)=\"nodeClick($event)\" (nzContextMenu)=\"onContextMenu($event)\">\n </nz-tree>\n </div>\n</div>\n<nz-dropdown-menu>\n <ul nz-menu>\n @for (m of menus(); track $index) {\n @if (m.inuse()) {\n <li nz-menu-item [nzDisabled]=\"m.disabled()\" [nzDanger]=\"m.danger()\" (click)=\"menuClick(m)\">\n @if (m.icon()) {\n <ng-container [axisDynamic]=\"m.icon()\"></ng-container>\n }\n {{m.title()}}\n </li>\n }\n }\n </ul>\n</nz-dropdown-menu>\n}\n@case (\"input-tree\") {\n<nz-tree-select [nzNodes]=\"treeData()\" [nzAllowClear]=\"options.allowClear()\" [nzSize]=\"options.size()\"\n [nzVariant]=\"options.variant()\" [nzShowSearch]=\"options.showSearch()\" [nzShowLine]=\"options.showLine()\"\n [nzPlaceHolder]=\"options.placeHolder()\" [nzTreeTemplate]=\"optionItem\" [nzCheckable]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()\" [nzHideUnMatched]=\"options.hideUnMatched()\"\n [nzDisabled]=\"options.disabled()\" [(ngModel)]=\"selectValue\" (ngModelChange)=\"onInputTreeChange()\"></nz-tree-select>\n}\n@case (\"cascader\"){\n<nz-cascader style=\"width: 100%;\" [nzOptions]=\"treeData()\" [(ngModel)]=\"selectValue\"\n (ngModelChange)=\"onCascaderChange($event)\" [nzMultiple]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()\" [nzAllowClear]=\"options.allowClear()\" [nzChangeOn]=\"changeOn\"\n [nzDisabled]=\"options.disabled()\" nzLabelProperty=\"title\" [nzPlaceHolder]=\"options.placeHolder()\"\n [nzShowSearch]=\"options.showSearch()\" [nzSize]=\"options.size()\" nzValueProperty=\"key\"\n [nzVariant]=\"options.variant()\" [nzExpandTrigger]=\"options.expandTrigger()\"\n [nzOptionRender]=\"optionItem\"></nz-cascader>\n}\n}\n<ng-template #optionItem let-option>\n <div class=\"node-item\" nz-flex nzGap=\"4px\">\n @if (option.icon) {\n <ng-container [axisDynamic]=\"option.icon\"></ng-container>\n }\n <span [innerHTML]=\"option.title | nzHighlight: searchValue()??'' : 'i' : 'highlight'\"></span>\n @if (options.type() != 'cascader' && option.children.length) {\n <a class=\"expand-button\" nz-button nzType=\"text\" nzSize=\"small\" nzShape=\"circle\"\n (click)=\"$event.stopPropagation(); expand(option,!hasExpanded(option))\">\n <nz-icon [nzType]=\"hasExpanded(option)?'shrink':'arrows-alt'\"></nz-icon>\n </a>\n }\n </div>\n</ng-template>", styles: [":host{display:block;width:100%}.title-container{padding:20px;border-bottom:.5px solid rgba(128,128,128,.3);font-weight:500;font-size:16px}::ng-deep .highlight{color:#f50}.tree-box{height:100%;display:flex;flex-direction:column}.tree-body{flex:1;overflow:auto}.expand-button{opacity:0}.node-item{width:100%}.node-item:hover .expand-button{opacity:1}.node-item span{flex:1;white-space:nowrap}\n"], dependencies: [{ kind: "ngmodule", type: NzInputModule }, { kind: "directive", type: i1.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzVariant", "nzSize", "nzStepperless", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "directive", type: DynamicDirective, selector: "[axisDynamic]", inputs: ["axisDynamic", "standalone", "isDesign"], outputs: ["onRegisteValueAccess"], exportAs: ["axisDynamic"] }, { kind: "ngmodule", type: NzTreeModule }, { kind: "component", type: i2.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: "ngmodule", type: NzDropDownModule }, { kind: "directive", type: i3.NzMenuDirective, selector: "[nz-menu]", inputs: ["nzInlineIndent", "nzTheme", "nzMode", "nzInlineCollapsed", "nzSelectable"], outputs: ["nzClick"], exportAs: ["nzMenu"] }, { kind: "component", type: i3.NzMenuItemComponent, selector: "[nz-menu-item]", inputs: ["nzPaddingLeft", "nzDisabled", "nzSelected", "nzDanger", "nzMatchRouterExact", "nzMatchRouter"], exportAs: ["nzMenuItem"] }, { kind: "component", type: i4.NzDropdownMenuComponent, selector: "nz-dropdown-menu", exportAs: ["nzDropdownMenu"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i6.NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "ngmodule", type: NzButtonModule }, { kind: "component", type: i7.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i8.ɵNzTransitionPatchDirective, selector: "[nz-button], [nz-icon], nz-icon, [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "ngmodule", type: NzFlexModule }, { kind: "directive", type: i9.NzFlexDirective, selector: "[nz-flex],nz-flex", inputs: ["nzVertical", "nzJustify", "nzAlign", "nzGap", "nzWrap", "nzFlex"], exportAs: ["nzFlex"] }, { kind: "ngmodule", type: NzTreeSelectModule }, { kind: "component", type: i10.NzTreeSelectComponent, selector: "nz-tree-select", inputs: ["nzId", "nzAllowClear", "nzShowExpand", "nzShowLine", "nzDropdownMatchSelectWidth", "nzCheckable", "nzHideUnMatched", "nzShowIcon", "nzShowSearch", "nzDisabled", "nzAsyncData", "nzMultiple", "nzDefaultExpandAll", "nzCheckStrictly", "nzVirtualItemSize", "nzVirtualMaxBufferPx", "nzVirtualMinBufferPx", "nzVirtualHeight", "nzExpandedIcon", "nzNotFoundContent", "nzNodes", "nzOpen", "nzSize", "nzVariant", "nzPlaceHolder", "nzDropdownStyle", "nzDropdownClassName", "nzBackdrop", "nzStatus", "nzPlacement", "nzExpandedKeys", "nzDisplayWith", "nzMaxTagCount", "nzMaxTagPlaceholder", "nzTreeTemplate"], outputs: ["nzOpenChange", "nzCleared", "nzRemoved", "nzExpandChange", "nzTreeClick", "nzTreeCheckboxChange"], exportAs: ["nzTreeSelect"] }, { kind: "ngmodule", type: NzCascaderModule }, { kind: "component", type: i11.NzCascaderComponent, selector: "nz-cascader, [nz-cascader]", inputs: ["nzOptionRender", "nzShowInput", "nzShowArrow", "nzAllowClear", "nzAutoFocus", "nzChangeOnSelect", "nzDisabled", "nzColumnClassName", "nzExpandTrigger", "nzValueProperty", "nzLabelProperty", "nzLabelRender", "nzVariant", "nzNotFoundContent", "nzSize", "nzBackdrop", "nzShowSearch", "nzPlaceHolder", "nzMenuClassName", "nzMenuStyle", "nzMouseLeaveDelay", "nzMouseEnterDelay", "nzStatus", "nzMultiple", "nzMaxTagCount", "nzPlacement", "nzTriggerAction", "nzChangeOn", "nzLoadData", "nzDisplayWith", "nzSuffixIcon", "nzExpandIcon", "nzOptions"], outputs: ["nzVisibleChange", "nzSelectionChange", "nzRemoved", "nzClear"], exportAs: ["nzCascader"] }, { kind: "ngmodule", type: NzModalModule }, { kind: "pipe", type: NzHighlightPipe, name: "nzHighlight" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
297
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: TreeSelector, isStandalone: true, selector: "axis-tree-selector", inputs: { searchValue: { classPropertyName: "searchValue", publicName: "searchValue", isSignal: true, isRequired: false, transformFunction: null }, selectValue: { classPropertyName: "selectValue", publicName: "selectValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { searchValue: "searchValueChange", selectValue: "selectValueChange" }, viewQueries: [{ propertyName: "treeSelect", first: true, predicate: NzTreeSelectComponent, descendants: true }, { propertyName: "menu", first: true, predicate: NzDropdownMenuComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "@switch (options.type() ) {\n@case (\"tree\") {\n<div class=\"tree-box\">\n @if (options.title()) {\n <div class=\"title-container\">{{options.title()}}</div>\n }\n @if (options.showSearch()) {\n <div class=\"search-inp\">\n <input type=\"text\" nz-input placeholder=\"\u641C\u7D22\" [(ngModel)]=\"searchValue\" nzVariant=\"borderless\" nzSize=\"small\" />\n </div>\n }\n <div class=\"tree-body\">\n <nz-tree [nzSearchValue]=\"searchValue()??''\" [nzTreeTemplate]=\"optionItem\"\n [nzHideUnMatched]=\"options.hideUnMatched()\" [nzData]=\"treeData()\" nzBlockNode\n [nzSelectedKeys]=\"selectedKeys()\" [nzMultiple]=\"options.multiple()\" [nzShowLine]=\"options.showLine()\"\n (nzClick)=\"nodeClick($event)\" (nzContextMenu)=\"onContextMenu($event)\">\n </nz-tree>\n </div>\n</div>\n<nz-dropdown-menu>\n <ul nz-menu>\n @for (m of menus(); track $index) {\n @if (m.inuse()) {\n <li nz-menu-item [nzDisabled]=\"m.disabled()\" [nzDanger]=\"m.danger()\" (click)=\"menuClick(m)\">\n @if (m.icon()) {\n <ng-container [axisDynamic]=\"m.icon()\"></ng-container>\n }\n {{m.title()}}\n </li>\n }\n }\n </ul>\n</nz-dropdown-menu>\n}\n@case (\"input-tree\") {\n<nz-tree-select [nzNodes]=\"treeData()\" [nzAllowClear]=\"options.allowClear()\" [nzSize]=\"options.size()\"\n [nzVariant]=\"options.variant()\" [nzShowSearch]=\"options.showSearch()\" [nzShowLine]=\"options.showLine()\"\n [nzPlaceHolder]=\"options.placeHolder()\" [nzTreeTemplate]=\"optionItem\" [nzCheckable]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()\" [nzHideUnMatched]=\"options.hideUnMatched()\"\n [nzDisabled]=\"options.disabled()\" [(ngModel)]=\"selectValue\" (ngModelChange)=\"onInputTreeChange()\"></nz-tree-select>\n}\n@case (\"cascader\"){\n {{selectValue()}}\n<nz-cascader style=\"width: 100%;\" [nzOptions]=\"treeData()\" [(ngModel)]=\"selectValue\"\n (ngModelChange)=\"onCascaderChange($event)\" [nzMultiple]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()\" [nzAllowClear]=\"options.allowClear()\" [nzChangeOn]=\"changeOn\"\n [nzDisabled]=\"options.disabled()\" nzLabelProperty=\"title\" [nzPlaceHolder]=\"options.placeHolder()\"\n [nzShowSearch]=\"options.showSearch()\" [nzSize]=\"options.size()\" nzValueProperty=\"key\"\n [nzVariant]=\"options.variant()\" [nzExpandTrigger]=\"options.expandTrigger()\"\n [nzOptionRender]=\"optionItem\"></nz-cascader>\n}\n}\n<ng-template #optionItem let-option>\n <div class=\"node-item\" nz-flex nzGap=\"4px\">\n @if (option.icon) {\n <ng-container [axisDynamic]=\"option.icon\"></ng-container>\n }\n <span [innerHTML]=\"option.title | nzHighlight: searchValue()??'' : 'i' : 'highlight'\"></span>\n @if (options.type() != 'cascader' && option.children.length) {\n <a class=\"expand-button\" nz-button nzType=\"text\" nzSize=\"small\" nzShape=\"circle\"\n (click)=\"$event.stopPropagation(); expand(option,!hasExpanded(option))\">\n <nz-icon [nzType]=\"hasExpanded(option)?'shrink':'arrows-alt'\"></nz-icon>\n </a>\n }\n </div>\n</ng-template>", styles: [":host{display:block;width:100%}.title-container{padding:20px;border-bottom:.5px solid rgba(128,128,128,.3);font-weight:500;font-size:16px}::ng-deep .highlight{color:#f50}.tree-box{height:100%;display:flex;flex-direction:column}.tree-body{flex:1;overflow:auto}.expand-button{opacity:0}.node-item{width:100%}.node-item:hover .expand-button{opacity:1}.node-item span{flex:1;white-space:nowrap}\n"], dependencies: [{ kind: "ngmodule", type: NzInputModule }, { kind: "directive", type: i1.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzVariant", "nzSize", "nzStepperless", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "directive", type: DynamicDirective, selector: "[axisDynamic]", inputs: ["axisDynamic", "standalone", "isDesign"], outputs: ["onRegisteValueAccess"], exportAs: ["axisDynamic"] }, { kind: "ngmodule", type: NzTreeModule }, { kind: "component", type: i2.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: "ngmodule", type: NzDropDownModule }, { kind: "directive", type: i3.NzMenuDirective, selector: "[nz-menu]", inputs: ["nzInlineIndent", "nzTheme", "nzMode", "nzInlineCollapsed", "nzSelectable"], outputs: ["nzClick"], exportAs: ["nzMenu"] }, { kind: "component", type: i3.NzMenuItemComponent, selector: "[nz-menu-item]", inputs: ["nzPaddingLeft", "nzDisabled", "nzSelected", "nzDanger", "nzMatchRouterExact", "nzMatchRouter"], exportAs: ["nzMenuItem"] }, { kind: "component", type: i4.NzDropdownMenuComponent, selector: "nz-dropdown-menu", exportAs: ["nzDropdownMenu"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i6.NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "ngmodule", type: NzButtonModule }, { kind: "component", type: i7.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i8.ɵNzTransitionPatchDirective, selector: "[nz-button], [nz-icon], nz-icon, [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "ngmodule", type: NzFlexModule }, { kind: "directive", type: i9.NzFlexDirective, selector: "[nz-flex],nz-flex", inputs: ["nzVertical", "nzJustify", "nzAlign", "nzGap", "nzWrap", "nzFlex"], exportAs: ["nzFlex"] }, { kind: "ngmodule", type: NzTreeSelectModule }, { kind: "component", type: i10.NzTreeSelectComponent, selector: "nz-tree-select", inputs: ["nzId", "nzAllowClear", "nzShowExpand", "nzShowLine", "nzDropdownMatchSelectWidth", "nzCheckable", "nzHideUnMatched", "nzShowIcon", "nzShowSearch", "nzDisabled", "nzAsyncData", "nzMultiple", "nzDefaultExpandAll", "nzCheckStrictly", "nzVirtualItemSize", "nzVirtualMaxBufferPx", "nzVirtualMinBufferPx", "nzVirtualHeight", "nzExpandedIcon", "nzNotFoundContent", "nzNodes", "nzOpen", "nzSize", "nzVariant", "nzPlaceHolder", "nzDropdownStyle", "nzDropdownClassName", "nzBackdrop", "nzStatus", "nzPlacement", "nzExpandedKeys", "nzDisplayWith", "nzMaxTagCount", "nzMaxTagPlaceholder", "nzTreeTemplate"], outputs: ["nzOpenChange", "nzCleared", "nzRemoved", "nzExpandChange", "nzTreeClick", "nzTreeCheckboxChange"], exportAs: ["nzTreeSelect"] }, { kind: "ngmodule", type: NzCascaderModule }, { kind: "component", type: i11.NzCascaderComponent, selector: "nz-cascader, [nz-cascader]", inputs: ["nzOptionRender", "nzShowInput", "nzShowArrow", "nzAllowClear", "nzAutoFocus", "nzChangeOnSelect", "nzDisabled", "nzColumnClassName", "nzExpandTrigger", "nzValueProperty", "nzLabelProperty", "nzLabelRender", "nzVariant", "nzNotFoundContent", "nzSize", "nzBackdrop", "nzShowSearch", "nzPlaceHolder", "nzMenuClassName", "nzMenuStyle", "nzMouseLeaveDelay", "nzMouseEnterDelay", "nzStatus", "nzMultiple", "nzMaxTagCount", "nzPlacement", "nzTriggerAction", "nzChangeOn", "nzLoadData", "nzDisplayWith", "nzSuffixIcon", "nzExpandIcon", "nzOptions"], outputs: ["nzVisibleChange", "nzSelectionChange", "nzRemoved", "nzClear"], exportAs: ["nzCascader"] }, { kind: "ngmodule", type: NzModalModule }, { kind: "pipe", type: NzHighlightPipe, name: "nzHighlight" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
281
298
  }
282
299
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: TreeSelector, decorators: [{
283
300
  type: Component,
284
- args: [{ selector: 'axis-tree-selector', imports: [NzInputModule, DynamicDirective, NzTreeModule, NzDropDownModule, FormsModule, NzHighlightPipe, NzIconModule, NzButtonModule, NzFlexModule, NzTreeSelectModule, NzCascaderModule, NzModalModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "@switch (options.type() ) {\n@case (\"tree\") {\n<div class=\"tree-box\">\n @if (options.title()) {\n <div class=\"title-container\">{{options.title()}}</div>\n }\n @if (options.showSearch()) {\n <div class=\"search-inp\">\n <input type=\"text\" nz-input placeholder=\"\u641C\u7D22\" [(ngModel)]=\"searchValue\" nzVariant=\"borderless\" nzSize=\"small\" />\n </div>\n }\n <div class=\"tree-body\">\n <nz-tree [nzSearchValue]=\"searchValue()??''\" [nzTreeTemplate]=\"optionItem\"\n [nzHideUnMatched]=\"options.hideUnMatched()\" [nzData]=\"treeData()\" nzBlockNode\n [nzSelectedKeys]=\"selectedKeys()\" [nzMultiple]=\"options.multiple()\" [nzShowLine]=\"options.showLine()\"\n (nzClick)=\"nodeClick($event)\" (nzContextMenu)=\"onContextMenu($event)\">\n </nz-tree>\n </div>\n</div>\n<nz-dropdown-menu>\n <ul nz-menu>\n @for (m of menus(); track $index) {\n @if (m.inuse()) {\n <li nz-menu-item [nzDisabled]=\"m.disabled()\" [nzDanger]=\"m.danger()\" (click)=\"menuClick(m)\">\n @if (m.icon()) {\n <ng-container [axisDynamic]=\"m.icon()\"></ng-container>\n }\n {{m.title()}}\n </li>\n }\n }\n </ul>\n</nz-dropdown-menu>\n}\n@case (\"input-tree\") {\n<nz-tree-select [nzNodes]=\"treeData()\" [nzAllowClear]=\"options.allowClear()\" [nzSize]=\"options.size()\"\n [nzVariant]=\"options.variant()\" [nzShowSearch]=\"options.showSearch()\" [nzShowLine]=\"options.showLine()\"\n [nzPlaceHolder]=\"options.placeHolder()\" [nzTreeTemplate]=\"optionItem\" [nzCheckable]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()\" [nzHideUnMatched]=\"options.hideUnMatched()\"\n [nzDisabled]=\"options.disabled()\" [(ngModel)]=\"selectValue\" (ngModelChange)=\"onInputTreeChange()\"></nz-tree-select>\n}\n@case (\"cascader\"){\n<nz-cascader style=\"width: 100%;\" [nzOptions]=\"treeData()\" [(ngModel)]=\"selectValue\"\n (ngModelChange)=\"onCascaderChange($event)\" [nzMultiple]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()\" [nzAllowClear]=\"options.allowClear()\" [nzChangeOn]=\"changeOn\"\n [nzDisabled]=\"options.disabled()\" nzLabelProperty=\"title\" [nzPlaceHolder]=\"options.placeHolder()\"\n [nzShowSearch]=\"options.showSearch()\" [nzSize]=\"options.size()\" nzValueProperty=\"key\"\n [nzVariant]=\"options.variant()\" [nzExpandTrigger]=\"options.expandTrigger()\"\n [nzOptionRender]=\"optionItem\"></nz-cascader>\n}\n}\n<ng-template #optionItem let-option>\n <div class=\"node-item\" nz-flex nzGap=\"4px\">\n @if (option.icon) {\n <ng-container [axisDynamic]=\"option.icon\"></ng-container>\n }\n <span [innerHTML]=\"option.title | nzHighlight: searchValue()??'' : 'i' : 'highlight'\"></span>\n @if (options.type() != 'cascader' && option.children.length) {\n <a class=\"expand-button\" nz-button nzType=\"text\" nzSize=\"small\" nzShape=\"circle\"\n (click)=\"$event.stopPropagation(); expand(option,!hasExpanded(option))\">\n <nz-icon [nzType]=\"hasExpanded(option)?'shrink':'arrows-alt'\"></nz-icon>\n </a>\n }\n </div>\n</ng-template>", styles: [":host{display:block;width:100%}.title-container{padding:20px;border-bottom:.5px solid rgba(128,128,128,.3);font-weight:500;font-size:16px}::ng-deep .highlight{color:#f50}.tree-box{height:100%;display:flex;flex-direction:column}.tree-body{flex:1;overflow:auto}.expand-button{opacity:0}.node-item{width:100%}.node-item:hover .expand-button{opacity:1}.node-item span{flex:1;white-space:nowrap}\n"] }]
301
+ args: [{ selector: 'axis-tree-selector', imports: [NzInputModule, DynamicDirective, NzTreeModule, NzDropDownModule, FormsModule, NzHighlightPipe, NzIconModule, NzButtonModule, NzFlexModule, NzTreeSelectModule, NzCascaderModule, NzModalModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "@switch (options.type() ) {\n@case (\"tree\") {\n<div class=\"tree-box\">\n @if (options.title()) {\n <div class=\"title-container\">{{options.title()}}</div>\n }\n @if (options.showSearch()) {\n <div class=\"search-inp\">\n <input type=\"text\" nz-input placeholder=\"\u641C\u7D22\" [(ngModel)]=\"searchValue\" nzVariant=\"borderless\" nzSize=\"small\" />\n </div>\n }\n <div class=\"tree-body\">\n <nz-tree [nzSearchValue]=\"searchValue()??''\" [nzTreeTemplate]=\"optionItem\"\n [nzHideUnMatched]=\"options.hideUnMatched()\" [nzData]=\"treeData()\" nzBlockNode\n [nzSelectedKeys]=\"selectedKeys()\" [nzMultiple]=\"options.multiple()\" [nzShowLine]=\"options.showLine()\"\n (nzClick)=\"nodeClick($event)\" (nzContextMenu)=\"onContextMenu($event)\">\n </nz-tree>\n </div>\n</div>\n<nz-dropdown-menu>\n <ul nz-menu>\n @for (m of menus(); track $index) {\n @if (m.inuse()) {\n <li nz-menu-item [nzDisabled]=\"m.disabled()\" [nzDanger]=\"m.danger()\" (click)=\"menuClick(m)\">\n @if (m.icon()) {\n <ng-container [axisDynamic]=\"m.icon()\"></ng-container>\n }\n {{m.title()}}\n </li>\n }\n }\n </ul>\n</nz-dropdown-menu>\n}\n@case (\"input-tree\") {\n<nz-tree-select [nzNodes]=\"treeData()\" [nzAllowClear]=\"options.allowClear()\" [nzSize]=\"options.size()\"\n [nzVariant]=\"options.variant()\" [nzShowSearch]=\"options.showSearch()\" [nzShowLine]=\"options.showLine()\"\n [nzPlaceHolder]=\"options.placeHolder()\" [nzTreeTemplate]=\"optionItem\" [nzCheckable]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()\" [nzHideUnMatched]=\"options.hideUnMatched()\"\n [nzDisabled]=\"options.disabled()\" [(ngModel)]=\"selectValue\" (ngModelChange)=\"onInputTreeChange()\"></nz-tree-select>\n}\n@case (\"cascader\"){\n {{selectValue()}}\n<nz-cascader style=\"width: 100%;\" [nzOptions]=\"treeData()\" [(ngModel)]=\"selectValue\"\n (ngModelChange)=\"onCascaderChange($event)\" [nzMultiple]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()\" [nzAllowClear]=\"options.allowClear()\" [nzChangeOn]=\"changeOn\"\n [nzDisabled]=\"options.disabled()\" nzLabelProperty=\"title\" [nzPlaceHolder]=\"options.placeHolder()\"\n [nzShowSearch]=\"options.showSearch()\" [nzSize]=\"options.size()\" nzValueProperty=\"key\"\n [nzVariant]=\"options.variant()\" [nzExpandTrigger]=\"options.expandTrigger()\"\n [nzOptionRender]=\"optionItem\"></nz-cascader>\n}\n}\n<ng-template #optionItem let-option>\n <div class=\"node-item\" nz-flex nzGap=\"4px\">\n @if (option.icon) {\n <ng-container [axisDynamic]=\"option.icon\"></ng-container>\n }\n <span [innerHTML]=\"option.title | nzHighlight: searchValue()??'' : 'i' : 'highlight'\"></span>\n @if (options.type() != 'cascader' && option.children.length) {\n <a class=\"expand-button\" nz-button nzType=\"text\" nzSize=\"small\" nzShape=\"circle\"\n (click)=\"$event.stopPropagation(); expand(option,!hasExpanded(option))\">\n <nz-icon [nzType]=\"hasExpanded(option)?'shrink':'arrows-alt'\"></nz-icon>\n </a>\n }\n </div>\n</ng-template>", styles: [":host{display:block;width:100%}.title-container{padding:20px;border-bottom:.5px solid rgba(128,128,128,.3);font-weight:500;font-size:16px}::ng-deep .highlight{color:#f50}.tree-box{height:100%;display:flex;flex-direction:column}.tree-body{flex:1;overflow:auto}.expand-button{opacity:0}.node-item{width:100%}.node-item:hover .expand-button{opacity:1}.node-item span{flex:1;white-space:nowrap}\n"] }]
285
302
  }], ctorParameters: () => [], propDecorators: { treeSelect: [{
286
303
  type: ViewChild,
287
304
  args: [NzTreeSelectComponent]
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-axis-appforge-axis-components-tree-selector.mjs","sources":["../../../axis-components/tree-selector/tree-selector.options.ts","../../../axis-components/tree-selector/tree-selector.ts","../../../axis-components/tree-selector/tree-selector.html","../../../axis-components/tree-selector/ngx-axis-appforge-axis-components-tree-selector.ts"],"sourcesContent":["import { signal } from \"@angular/core\";\nimport { ValueAccessOptions, TriggeEventsOptions } from \"ngx-axis-appforge/core\";\n\nexport class TreeSelectorOptions extends ValueAccessOptions {\n\n\n readonly labelField = signal(\"title\");\n readonly valueField = signal(\"key\");\n readonly selectableField = signal(\"selectable\");\n readonly iconField = signal(\"icon\");\n readonly fullValue = signal(false);\n readonly levelStart = signal(0);\n readonly levelEnd = signal<number | null>(null);\n readonly data = signal<any>(undefined);\n readonly nodeFn = signal<string | undefined>(undefined);\n\n readonly selectAbleLevel = signal<string>(\"\");\n readonly multiple = signal(false);\n readonly maxSelectCount = signal(Number.MAX_VALUE);\n readonly defaultFirst = signal(false);\n readonly allowClear = signal(true);\n\n readonly type = signal<\"tree\" | \"input-tree\" | \"cascader\">(\"tree\");\n readonly showSearch = signal(true);\n readonly hideUnMatched = signal(true);\n readonly showLine = signal(false);\n\n readonly title = signal(\"\");\n readonly expandedLevel = signal<number | null>(null);\n\n readonly placeHolder = signal(\"\");\n readonly size = signal<'large' | 'small' | 'default'>(\"default\");\n readonly variant = signal<'outlined' | 'borderless' | 'filled' | 'underlined'>(\"outlined\");\n\n readonly expandTrigger = signal<'click' | 'hover'>(\"click\");\n\n readonly menus = signal<TreeNodeMenuOptions[]>([]);\n\n}\n\nexport class TreeNodeMenuOptions {\n inuse = signal(true);\n title = signal(\"未命名\");\n icon = signal<any>(undefined);\n danger = signal(false);\n confirm = signal(false);\n confirmText = signal(\"是否确认?\");\n disabled = signal(false);\n triggeEvents = signal<TriggeEventsOptions | undefined>(undefined);\n}","import { ChangeDetectionStrategy, Component, computed, effect, inject, model, signal, untracked, ViewChild } from '@angular/core';\nimport { TreeNodeMenuOptions, TreeSelectorOptions } from './tree-selector.options';\nimport { copy, DynamicDirective, fn, recursionArray, ValueAccess } from 'ngx-axis-appforge/core';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzTreeModule, NzTreeNodeOptions } from 'ng-zorro-antd/tree';\nimport { NzContextMenuService, NzDropdownMenuComponent, NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { FormsModule } from '@angular/forms';\nimport { NzFormatEmitEvent, NzTreeNode, NzTreeNodeKey } from 'ng-zorro-antd/core/tree';\nimport { NzHighlightPipe } from 'ng-zorro-antd/core/highlight';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { NzFlexModule } from 'ng-zorro-antd/flex';\nimport { NzTreeSelectComponent, NzTreeSelectModule } from 'ng-zorro-antd/tree-select';\nimport { NzCascaderModule, NzCascaderOption } from 'ng-zorro-antd/cascader';\nimport { NzModalModule, NzModalService } from 'ng-zorro-antd/modal';\n\n@Component({\n selector: 'axis-tree-selector',\n imports: [NzInputModule, DynamicDirective, NzTreeModule, NzDropDownModule, FormsModule, NzHighlightPipe, NzIconModule, NzButtonModule, NzFlexModule, NzTreeSelectModule, NzCascaderModule, NzModalModule],\n templateUrl: './tree-selector.html',\n styleUrl: './tree-selector.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TreeSelector extends ValueAccess<TreeSelectorOptions> {\n\n constructor() {\n super();\n effect(() => {\n if (untracked(this.options.defaultFirst)) {\n let fullArray: any[] = [];\n recursionArray(this.treeData(), {\n before: n => {\n if (n.selectable) {\n fullArray.push(n.data);\n return false;\n }\n return undefined;\n }\n });\n const value = this.fullArrayToValue(fullArray);\n if (value != null) {\n this.setInitValue(value);\n this.initComponentValue();\n }\n }\n });\n effect(() => this.initComponentValue());\n }\n\n @ViewChild(NzTreeSelectComponent)\n private treeSelect?: NzTreeSelectComponent;\n\n @ViewChild(NzDropdownMenuComponent)\n private menu?: NzDropdownMenuComponent;\n private readonly menuService = inject(NzContextMenuService);\n private readonly modal = inject(NzModalService);\n private menuNodeDs?: any;\n\n override options: TreeSelectorOptions = new TreeSelectorOptions();\n readonly menus = computed(() => this.options.menus().map(_ => new TreeNodeMenuOptions()));\n readonly searchValue = model<string>();\n readonly treeData = computed(() => this.buildTreeData());\n readonly selectedKeys = signal<NzTreeNodeKey[]>([]);\n readonly selectValue = model<any>();\n readonly treeNodeMap = computed(() => {\n const map = new Map<NzTreeNodeKey, NzTreeNodeOptions>();\n recursionArray(this.treeData(), {\n before: n => {\n map.set(n.key, n);\n }\n });\n return map;\n });\n\n readonly changeOn = (option: NzCascaderOption, level: number): boolean => {\n return option['selectable'];\n }\n\n override writeValue(value: any): void {\n super.writeValue(value);\n this.initComponentValue();\n }\n\n private buildTreeData(): NzTreeNodeOptions[] {\n if (!this.options.data()) {\n return [];\n }\n let data = copy(this.options.data(), true);\n if (this.options.levelStart() < 0) {\n data = [{\n [this.options.labelField()]: \"全部\",\n [this.options.valueField()]: \"\",\n children: data,\n }];\n }\n const selectableLevels = this.options.selectAbleLevel()?.split(\",\").filter(l => l).map(l => +l.trim());\n const treeData: NzTreeNodeOptions[] = [];\n recursionArray(data, {\n before: (n, l, parent) => {\n const nodeData: any = {};\n if (this.options.nodeFn()) {\n this.getScope()?.runFnWithSnapshot(this.options.nodeFn()!, { node: n, level: l });\n }\n for (const key in n) {\n if (key !== \"children\") {\n nodeData[key] = n[key];\n delete n[key];\n }\n }\n if (l >= this.options.levelStart() || l <= (this.options.levelEnd() ?? Infinity)) {\n if (l == this.options.levelStart()) {\n treeData.push(n);\n }\n if (l == (this.options.levelEnd() ?? Infinity) || (this.options.type() == 'cascader' && selectableLevels?.length && selectableLevels[selectableLevels.length - 1] == l)) {\n n.isLeaf = true;\n n.expanded = false;\n delete n.children;\n } else {\n n.isLeaf = !n.children?.length;\n n.expanded = l < (this.options.expandedLevel() ?? Infinity);\n }\n n.selectable = nodeData[this.options.selectableField()] ?? true;\n if (n.selectable && this.options.selectAbleLevel()) {\n if (!selectableLevels.includes(l)) {\n n.selectable = false;\n }\n }\n n.key = nodeData[this.options.valueField()];\n n.title = nodeData[this.options.labelField()];\n n.icon = nodeData[this.options.iconField()];\n n.keys = (parent?.keys ?? []).concat([n.key]);\n n.data = nodeData;\n }\n }\n }, this.options.levelStart() < 0 ? -1 : 0);\n return treeData;\n }\n\n private initComponentValue() {\n let value = untracked(this.value);\n if (value) {\n if (!untracked(this.options.multiple)) {\n value = [value];\n }\n if (untracked(this.options.fullValue)) {\n value = value.map((e: any) => e[untracked(this.options.valueField)]);\n }\n switch (untracked(this.options.type)) {\n case \"tree\":\n this.selectedKeys.set(value);\n break;\n case \"input-tree\":\n if (!untracked(this.options.multiple)) {\n value = value[0];\n }\n this.selectValue.set(value);\n break;\n case \"cascader\":\n value = value.map((e: any) => this.treeNodeMap().get(e)?.['keys']);\n if (!untracked(this.options.multiple)) {\n value = value[0];\n }\n this.selectValue.set(value);\n break;\n }\n }\n }\n\n nodeClick(e: NzFormatEmitEvent) {\n if (!e.node!.isSelectable) {\n if (e.node && !e.node.isLeaf) {\n e.node!.isExpanded = !e.node!.isExpanded;\n }\n return;\n } else if (!e.node!.isSelected && e.keys?.length == 0 && !this.options.allowClear()) {\n e.node!.isSelected = true;\n return;\n }\n if (this.options.readonly() || this.options.disabled()) {\n e.node!.isSelected = false;\n return;\n }\n const value = this.treeNodeToValue(e.selectedKeys?.filter(e => e.isSelected) ?? []);\n this.value.set(value);\n this.onChange?.(this.value());\n }\n\n private treeNodeToValue(nodes: NzTreeNode[]): any {\n return this.fullArrayToValue(nodes.map(n => n.origin['data']));\n }\n\n private fullArrayToValue(fullArray: any[]): any {\n let value: any = fullArray.map(n => {\n const res: any = {};\n for (const key in n) {\n if (key !== \"children\") {\n res[key] = n[key];\n }\n }\n return res;\n });\n if (!untracked(this.options.fullValue)) {\n value = fullArray.map(r => r[untracked(this.options.valueField)]);\n }\n if (!this.options.multiple()) {\n value = value?.[0];\n }\n return value;\n }\n\n hasExpanded(node: NzTreeNode): boolean {\n return node.isExpanded || node.children.some(c => this.hasExpanded(c));\n }\n\n expand(node: NzTreeNode, expanded: boolean) {\n node.isExpanded = expanded;\n node.children.forEach(c => this.expand(c, expanded));\n }\n\n onContextMenu(e: NzFormatEmitEvent) {\n if (this.menu) {\n this.menuNodeDs = { node: e.node?.origin[\"data\"], level: e.node?.level };\n this.menus().forEach((m, i) => {\n this.bindWithConfig(this.options.menus()[i], { options: m, snapshot: true, tempDataSource: this.menuNodeDs });\n });\n this.menuService.create(e.event as MouseEvent, this.menu);\n }\n }\n\n menuClick(options: TreeNodeMenuOptions) {\n if (options.confirm()) {\n this.modal.confirm({\n nzContent: options.confirmText(),\n nzOnOk: () => {\n this.triggeEvents(\"treeNodeMenuClick\", this.menuNodeDs, options.triggeEvents()).subscribe();\n }\n })\n } else {\n this.triggeEvents(\"treeNodeMenuClick\", this.menuNodeDs, options.triggeEvents()).subscribe();\n }\n }\n\n onInputTreeChange() {\n const value = this.treeNodeToValue((this.options.multiple() ? this.treeSelect?.getCheckedNodeList() : this.treeSelect?.getSelectedNodeList()) ?? []);\n this.value.set(value);\n this.onChange?.(this.value());\n }\n\n onCascaderChange(v: any[]) {\n const value = this.fullArrayToValue(this.options.multiple() ? v.map((e: any[]) => this.treeNodeMap().get(e[e.length - 1])!['data']) : [this.treeNodeMap().get(v[v.length - 1])!['data']]);\n this.value.set(value);\n this.onChange?.(this.value());\n }\n\n}\n","@switch (options.type() ) {\n@case (\"tree\") {\n<div class=\"tree-box\">\n @if (options.title()) {\n <div class=\"title-container\">{{options.title()}}</div>\n }\n @if (options.showSearch()) {\n <div class=\"search-inp\">\n <input type=\"text\" nz-input placeholder=\"搜索\" [(ngModel)]=\"searchValue\" nzVariant=\"borderless\" nzSize=\"small\" />\n </div>\n }\n <div class=\"tree-body\">\n <nz-tree [nzSearchValue]=\"searchValue()??''\" [nzTreeTemplate]=\"optionItem\"\n [nzHideUnMatched]=\"options.hideUnMatched()\" [nzData]=\"treeData()\" nzBlockNode\n [nzSelectedKeys]=\"selectedKeys()\" [nzMultiple]=\"options.multiple()\" [nzShowLine]=\"options.showLine()\"\n (nzClick)=\"nodeClick($event)\" (nzContextMenu)=\"onContextMenu($event)\">\n </nz-tree>\n </div>\n</div>\n<nz-dropdown-menu>\n <ul nz-menu>\n @for (m of menus(); track $index) {\n @if (m.inuse()) {\n <li nz-menu-item [nzDisabled]=\"m.disabled()\" [nzDanger]=\"m.danger()\" (click)=\"menuClick(m)\">\n @if (m.icon()) {\n <ng-container [axisDynamic]=\"m.icon()\"></ng-container>\n }\n {{m.title()}}\n </li>\n }\n }\n </ul>\n</nz-dropdown-menu>\n}\n@case (\"input-tree\") {\n<nz-tree-select [nzNodes]=\"treeData()\" [nzAllowClear]=\"options.allowClear()\" [nzSize]=\"options.size()\"\n [nzVariant]=\"options.variant()\" [nzShowSearch]=\"options.showSearch()\" [nzShowLine]=\"options.showLine()\"\n [nzPlaceHolder]=\"options.placeHolder()\" [nzTreeTemplate]=\"optionItem\" [nzCheckable]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()\" [nzHideUnMatched]=\"options.hideUnMatched()\"\n [nzDisabled]=\"options.disabled()\" [(ngModel)]=\"selectValue\" (ngModelChange)=\"onInputTreeChange()\"></nz-tree-select>\n}\n@case (\"cascader\"){\n<nz-cascader style=\"width: 100%;\" [nzOptions]=\"treeData()\" [(ngModel)]=\"selectValue\"\n (ngModelChange)=\"onCascaderChange($event)\" [nzMultiple]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()\" [nzAllowClear]=\"options.allowClear()\" [nzChangeOn]=\"changeOn\"\n [nzDisabled]=\"options.disabled()\" nzLabelProperty=\"title\" [nzPlaceHolder]=\"options.placeHolder()\"\n [nzShowSearch]=\"options.showSearch()\" [nzSize]=\"options.size()\" nzValueProperty=\"key\"\n [nzVariant]=\"options.variant()\" [nzExpandTrigger]=\"options.expandTrigger()\"\n [nzOptionRender]=\"optionItem\"></nz-cascader>\n}\n}\n<ng-template #optionItem let-option>\n <div class=\"node-item\" nz-flex nzGap=\"4px\">\n @if (option.icon) {\n <ng-container [axisDynamic]=\"option.icon\"></ng-container>\n }\n <span [innerHTML]=\"option.title | nzHighlight: searchValue()??'' : 'i' : 'highlight'\"></span>\n @if (options.type() != 'cascader' && option.children.length) {\n <a class=\"expand-button\" nz-button nzType=\"text\" nzSize=\"small\" nzShape=\"circle\"\n (click)=\"$event.stopPropagation(); expand(option,!hasExpanded(option))\">\n <nz-icon [nzType]=\"hasExpanded(option)?'shrink':'arrows-alt'\"></nz-icon>\n </a>\n }\n </div>\n</ng-template>","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './tree-selector';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-axis-appforge-axis-components-tree-selector.mjs","sources":["../../../axis-components/tree-selector/tree-selector.options.ts","../../../axis-components/tree-selector/tree-selector.ts","../../../axis-components/tree-selector/tree-selector.html","../../../axis-components/tree-selector/ngx-axis-appforge-axis-components-tree-selector.ts"],"sourcesContent":["import { signal } from \"@angular/core\";\nimport { ValueAccessOptions, TriggeEventsOptions } from \"ngx-axis-appforge/core\";\n\nexport class TreeSelectorOptions extends ValueAccessOptions {\n\n\n readonly labelField = signal(\"title\");\n readonly valueField = signal(\"key\");\n readonly selectableField = signal(\"selectable\");\n readonly iconField = signal(\"icon\");\n readonly fullValue = signal(false);\n readonly levelStart = signal(0);\n readonly levelEnd = signal<number | null>(null);\n readonly data = signal<any>(undefined);\n readonly nodeFn = signal<string | undefined>(undefined);\n\n readonly selectAbleLevel = signal<string>(\"\");\n readonly multiple = signal(false);\n readonly maxSelectCount = signal(Number.MAX_VALUE);\n readonly defaultFirst = signal(false);\n readonly allowClear = signal(true);\n\n readonly type = signal<\"tree\" | \"input-tree\" | \"cascader\">(\"tree\");\n readonly showSearch = signal(true);\n readonly hideUnMatched = signal(true);\n readonly showLine = signal(false);\n\n readonly title = signal(\"\");\n readonly expandedLevel = signal<number | null>(null);\n\n readonly placeHolder = signal(\"\");\n readonly size = signal<'large' | 'small' | 'default'>(\"default\");\n readonly variant = signal<'outlined' | 'borderless' | 'filled' | 'underlined'>(\"outlined\");\n\n readonly expandTrigger = signal<'click' | 'hover'>(\"click\");\n\n readonly menus = signal<TreeNodeMenuOptions[]>([]);\n\n}\n\nexport class TreeNodeMenuOptions {\n inuse = signal(true);\n title = signal(\"未命名\");\n icon = signal<any>(undefined);\n danger = signal(false);\n confirm = signal(false);\n confirmText = signal(\"是否确认?\");\n disabled = signal(false);\n triggeEvents = signal<TriggeEventsOptions | undefined>(undefined);\n}","import { ChangeDetectionStrategy, Component, computed, effect, inject, model, signal, untracked, ViewChild } from '@angular/core';\nimport { TreeNodeMenuOptions, TreeSelectorOptions } from './tree-selector.options';\nimport { copy, DynamicDirective, fn, recursionArray, ValueAccess } from 'ngx-axis-appforge/core';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzTreeModule, NzTreeNodeOptions } from 'ng-zorro-antd/tree';\nimport { NzContextMenuService, NzDropdownMenuComponent, NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { FormsModule } from '@angular/forms';\nimport { NzFormatEmitEvent, NzTreeNode, NzTreeNodeKey } from 'ng-zorro-antd/core/tree';\nimport { NzHighlightPipe } from 'ng-zorro-antd/core/highlight';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { NzFlexModule } from 'ng-zorro-antd/flex';\nimport { NzTreeSelectComponent, NzTreeSelectModule } from 'ng-zorro-antd/tree-select';\nimport { NzCascaderModule, NzCascaderOption } from 'ng-zorro-antd/cascader';\nimport { NzModalModule, NzModalService } from 'ng-zorro-antd/modal';\n\n@Component({\n selector: 'axis-tree-selector',\n imports: [NzInputModule, DynamicDirective, NzTreeModule, NzDropDownModule, FormsModule, NzHighlightPipe, NzIconModule, NzButtonModule, NzFlexModule, NzTreeSelectModule, NzCascaderModule, NzModalModule],\n templateUrl: './tree-selector.html',\n styleUrl: './tree-selector.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TreeSelector extends ValueAccess<TreeSelectorOptions> {\n\n constructor() {\n super();\n effect(() => {\n if (untracked(this.options.defaultFirst)) {\n let fullArray: any[] = [];\n recursionArray(this.treeData(), {\n before: n => {\n if (n.selectable) {\n fullArray.push(n.data);\n return false;\n }\n return undefined;\n }\n });\n const value = this.fullArrayToValue(fullArray);\n if (value != null) {\n this.setInitValue(value);\n untracked(() => this.valueToComponentValue());\n }\n }\n });\n effect(() => {\n if (this.treeNodeMap()) {\n untracked(() => this.valueToComponentValue());\n }\n });\n }\n\n @ViewChild(NzTreeSelectComponent)\n private treeSelect?: NzTreeSelectComponent;\n\n @ViewChild(NzDropdownMenuComponent)\n private menu?: NzDropdownMenuComponent;\n private readonly menuService = inject(NzContextMenuService);\n private readonly modal = inject(NzModalService);\n private menuNodeDs?: any;\n\n override options: TreeSelectorOptions = new TreeSelectorOptions();\n readonly menus = computed(() => this.options.menus().map(_ => new TreeNodeMenuOptions()));\n readonly searchValue = model<string>();\n readonly treeData = computed(() => this.buildTreeData());\n readonly selectedKeys = signal<NzTreeNodeKey[]>([]);\n readonly selectValue = model<any>();\n readonly treeNodeMap = computed(() => {\n const map = new Map<NzTreeNodeKey, NzTreeNodeOptions>();\n recursionArray(this.treeData(), {\n before: n => {\n map.set(n.key, n);\n }\n });\n return map;\n });\n\n readonly changeOn = (option: NzCascaderOption, level: number): boolean => {\n return option['selectable'];\n }\n\n override writeValue(value: any): void {\n super.writeValue(value);\n this.valueToComponentValue();\n }\n\n private buildTreeData(): NzTreeNodeOptions[] {\n if (!this.options.data()) {\n return [];\n }\n let data = copy(this.options.data(), true);\n if (this.options.levelStart() < 0) {\n data = [{\n [this.options.labelField()]: \"全部\",\n [this.options.valueField()]: \"\",\n children: data,\n }];\n }\n const selectableLevels = this.options.selectAbleLevel()?.split(\",\").filter(l => l).map(l => +l.trim());\n const treeData: NzTreeNodeOptions[] = [];\n recursionArray(data, {\n before: (n, l, parent) => {\n const nodeData: any = {};\n if (this.options.nodeFn()) {\n this.getScope()?.runFnWithSnapshot(this.options.nodeFn()!, { node: n, level: l });\n }\n for (const key in n) {\n if (key !== \"children\") {\n nodeData[key] = n[key];\n delete n[key];\n }\n }\n if (l >= this.options.levelStart() || l <= (this.options.levelEnd() ?? Infinity)) {\n if (l == this.options.levelStart()) {\n treeData.push(n);\n }\n if (l == (this.options.levelEnd() ?? Infinity) || (this.options.type() == 'cascader' && selectableLevels?.length && selectableLevels[selectableLevels.length - 1] == l)) {\n n.isLeaf = true;\n n.expanded = false;\n delete n.children;\n } else {\n n.isLeaf = !n.children?.length;\n n.expanded = l < (this.options.expandedLevel() ?? Infinity);\n }\n n.selectable = nodeData[this.options.selectableField()] ?? true;\n if (n.selectable && this.options.selectAbleLevel()) {\n if (!selectableLevels.includes(l)) {\n n.selectable = false;\n }\n }\n n.key = nodeData[this.options.valueField()];\n n.title = nodeData[this.options.labelField()];\n n.icon = nodeData[this.options.iconField()];\n n.keys = (parent?.keys ?? []).concat([n.key]);\n n.data = nodeData;\n }\n }\n }, this.options.levelStart() < 0 ? -1 : 0);\n return treeData;\n }\n\n private valueToComponentValue() {\n let value = this.value();\n if (value) {\n if (!this.options.multiple()) {\n value = [value];\n }\n if (this.options.fullValue()) {\n value = value.map((e: any) => e[this.options.valueField()]);\n }\n switch (this.options.type()) {\n case \"tree\":\n this.selectedKeys.set(value);\n break;\n case \"input-tree\":\n if (!this.options.multiple()) {\n value = value[0];\n }\n this.selectValue.set(value);\n break;\n case \"cascader\":\n value = value.map((e: any) => this.treeNodeMap().get(e)?.['keys']);\n if (!untracked(this.options.multiple)) {\n value = value[0];\n }\n this.selectValue.set(value);\n break;\n }\n } else {\n switch (this.options.type()) {\n case \"tree\":\n this.selectedKeys.set([]);\n break;\n case \"input-tree\":\n this.selectValue.set(null);\n break;\n case \"cascader\":\n this.selectValue.set(null);\n break;\n }\n }\n }\n\n nodeClick(e: NzFormatEmitEvent) {\n if (!e.node!.isSelectable) {\n if (e.node && !e.node.isLeaf) {\n e.node!.isExpanded = !e.node!.isExpanded;\n }\n return;\n } else if (!e.node!.isSelected && e.keys?.length == 0 && !this.options.allowClear()) {\n e.node!.isSelected = true;\n return;\n }\n if (this.options.readonly() || this.options.disabled()) {\n e.node!.isSelected = false;\n return;\n }\n const value = this.treeNodeToValue(e.selectedKeys?.filter(e => e.isSelected) ?? []);\n this.value.set(value);\n this.onChange?.(this.value());\n }\n\n private treeNodeToValue(nodes: NzTreeNode[]): any {\n return this.fullArrayToValue(nodes.map(n => n.origin['data']));\n }\n\n private fullArrayToValue(fullArray: any[]): any {\n let value: any = fullArray.map(n => {\n const res: any = {};\n for (const key in n) {\n if (key !== \"children\") {\n res[key] = n[key];\n }\n }\n return res;\n });\n if (!untracked(this.options.fullValue)) {\n value = fullArray.map(r => r[untracked(this.options.valueField)]);\n }\n if (!this.options.multiple()) {\n value = value?.[0];\n }\n return value ?? null;\n }\n\n hasExpanded(node: NzTreeNode): boolean {\n return node.isExpanded || node.children.some(c => this.hasExpanded(c));\n }\n\n expand(node: NzTreeNode, expanded: boolean) {\n node.isExpanded = expanded;\n node.children.forEach(c => this.expand(c, expanded));\n }\n\n onContextMenu(e: NzFormatEmitEvent) {\n if (this.menu) {\n this.menuNodeDs = { node: e.node?.origin[\"data\"], level: e.node?.level };\n this.menus().forEach((m, i) => {\n this.bindWithConfig(this.options.menus()[i], { options: m, snapshot: true, tempDataSource: this.menuNodeDs });\n });\n this.menuService.create(e.event as MouseEvent, this.menu);\n }\n }\n\n menuClick(options: TreeNodeMenuOptions) {\n if (options.confirm()) {\n this.modal.confirm({\n nzContent: options.confirmText(),\n nzOnOk: () => {\n this.triggeEvents(\"treeNodeMenuClick\", this.menuNodeDs, options.triggeEvents()).subscribe();\n }\n })\n } else {\n this.triggeEvents(\"treeNodeMenuClick\", this.menuNodeDs, options.triggeEvents()).subscribe();\n }\n }\n\n onInputTreeChange() {\n const value = this.treeNodeToValue((this.options.multiple() ? this.treeSelect?.getCheckedNodeList() : this.treeSelect?.getSelectedNodeList()) ?? []);\n this.value.set(value);\n this.onChange?.(this.value());\n }\n\n onCascaderChange(v: any[]) {\n const value = this.fullArrayToValue(this.options.multiple() ? v.map((e: any[]) => this.treeNodeMap().get(e[e.length - 1])!['data']) : v.length ? [this.treeNodeMap().get(v[v.length - 1])!['data']] : []);\n this.value.set(value);\n this.onChange?.(this.value());\n }\n\n}\n","@switch (options.type() ) {\n@case (\"tree\") {\n<div class=\"tree-box\">\n @if (options.title()) {\n <div class=\"title-container\">{{options.title()}}</div>\n }\n @if (options.showSearch()) {\n <div class=\"search-inp\">\n <input type=\"text\" nz-input placeholder=\"搜索\" [(ngModel)]=\"searchValue\" nzVariant=\"borderless\" nzSize=\"small\" />\n </div>\n }\n <div class=\"tree-body\">\n <nz-tree [nzSearchValue]=\"searchValue()??''\" [nzTreeTemplate]=\"optionItem\"\n [nzHideUnMatched]=\"options.hideUnMatched()\" [nzData]=\"treeData()\" nzBlockNode\n [nzSelectedKeys]=\"selectedKeys()\" [nzMultiple]=\"options.multiple()\" [nzShowLine]=\"options.showLine()\"\n (nzClick)=\"nodeClick($event)\" (nzContextMenu)=\"onContextMenu($event)\">\n </nz-tree>\n </div>\n</div>\n<nz-dropdown-menu>\n <ul nz-menu>\n @for (m of menus(); track $index) {\n @if (m.inuse()) {\n <li nz-menu-item [nzDisabled]=\"m.disabled()\" [nzDanger]=\"m.danger()\" (click)=\"menuClick(m)\">\n @if (m.icon()) {\n <ng-container [axisDynamic]=\"m.icon()\"></ng-container>\n }\n {{m.title()}}\n </li>\n }\n }\n </ul>\n</nz-dropdown-menu>\n}\n@case (\"input-tree\") {\n<nz-tree-select [nzNodes]=\"treeData()\" [nzAllowClear]=\"options.allowClear()\" [nzSize]=\"options.size()\"\n [nzVariant]=\"options.variant()\" [nzShowSearch]=\"options.showSearch()\" [nzShowLine]=\"options.showLine()\"\n [nzPlaceHolder]=\"options.placeHolder()\" [nzTreeTemplate]=\"optionItem\" [nzCheckable]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()\" [nzHideUnMatched]=\"options.hideUnMatched()\"\n [nzDisabled]=\"options.disabled()\" [(ngModel)]=\"selectValue\" (ngModelChange)=\"onInputTreeChange()\"></nz-tree-select>\n}\n@case (\"cascader\"){\n {{selectValue()}}\n<nz-cascader style=\"width: 100%;\" [nzOptions]=\"treeData()\" [(ngModel)]=\"selectValue\"\n (ngModelChange)=\"onCascaderChange($event)\" [nzMultiple]=\"options.multiple()\"\n [nzMaxTagCount]=\"options.maxSelectCount()\" [nzAllowClear]=\"options.allowClear()\" [nzChangeOn]=\"changeOn\"\n [nzDisabled]=\"options.disabled()\" nzLabelProperty=\"title\" [nzPlaceHolder]=\"options.placeHolder()\"\n [nzShowSearch]=\"options.showSearch()\" [nzSize]=\"options.size()\" nzValueProperty=\"key\"\n [nzVariant]=\"options.variant()\" [nzExpandTrigger]=\"options.expandTrigger()\"\n [nzOptionRender]=\"optionItem\"></nz-cascader>\n}\n}\n<ng-template #optionItem let-option>\n <div class=\"node-item\" nz-flex nzGap=\"4px\">\n @if (option.icon) {\n <ng-container [axisDynamic]=\"option.icon\"></ng-container>\n }\n <span [innerHTML]=\"option.title | nzHighlight: searchValue()??'' : 'i' : 'highlight'\"></span>\n @if (options.type() != 'cascader' && option.children.length) {\n <a class=\"expand-button\" nz-button nzType=\"text\" nzSize=\"small\" nzShape=\"circle\"\n (click)=\"$event.stopPropagation(); expand(option,!hasExpanded(option))\">\n <nz-icon [nzType]=\"hasExpanded(option)?'shrink':'arrows-alt'\"></nz-icon>\n </a>\n }\n </div>\n</ng-template>","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './tree-selector';\n"],"names":[],"mappings":"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"}
@@ -494,6 +494,7 @@ class ScopeDirective {
494
494
  if (!res && init) {
495
495
  this.ds.set(name, new BehaviorSubject(undefined));
496
496
  res = this.ds.get(name).asObservable();
497
+ this.changeSubject.next();
497
498
  }
498
499
  return res;
499
500
  }
@@ -1407,6 +1408,7 @@ class DynamicDirective {
1407
1408
  return;
1408
1409
  }
1409
1410
  let inuse = this.axisDynamic().inuse;
1411
+ let skip = false;
1410
1412
  if (this.scope) {
1411
1413
  const io = this.scope.dynamicField(this.axisDynamic(), "inuse");
1412
1414
  if (io.init !== undefined) {
@@ -1414,6 +1416,7 @@ class DynamicDirective {
1414
1416
  }
1415
1417
  if (io.obs) {
1416
1418
  this.sub = io.obs.subscribe(inuse => {
1419
+ skip = true;
1417
1420
  if (inuse) {
1418
1421
  if (this.id != this.axisDynamic().id) {
1419
1422
  if (this.id) {
@@ -1429,14 +1432,16 @@ class DynamicDirective {
1429
1432
  });
1430
1433
  }
1431
1434
  }
1432
- if (inuse) {
1433
- if (this.id != this.axisDynamic().id) {
1434
- this.id = this.axisDynamic().id;
1435
+ if (!skip) {
1436
+ if (inuse) {
1437
+ if (this.id != this.axisDynamic().id) {
1438
+ this.id = this.axisDynamic().id;
1439
+ }
1440
+ this.render();
1441
+ }
1442
+ else {
1443
+ this.destoryInstance();
1435
1444
  }
1436
- this.render();
1437
- }
1438
- else {
1439
- this.destoryInstance();
1440
1445
  }
1441
1446
  });
1442
1447
  }
@@ -2596,7 +2601,7 @@ class MsgTipHandler extends FunFieldValueBase {
2596
2601
  useExisting: forwardRef(() => MsgTipHandler),
2597
2602
  multi: true
2598
2603
  }
2599
- ], usesInheritance: true, ngImport: i0, template: "<form nz-form [formGroup]=\"fg\">\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u63D0\u9192\u65B9\u5F0F\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"tipWay\" [noListen]=\"noListen()\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\">\n <label nz-radio-button nzValue=\"message\">\u6D88\u606F</label>\n <label nz-radio-button nzValue=\"modal\">\u5F39\u7A97</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u6D88\u606F\u7C7B\u578B\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"type\" [noListen]=\"noListen()\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\" nzSize=\"small\">\n <label nz-radio-button nzValue=\"info\">\u63D0\u9192</label>\n <label nz-radio-button nzValue=\"success\">\u6210\u529F</label>\n <label nz-radio-button nzValue=\"warning\">\u8B66\u544A</label>\n <label nz-radio-button nzValue=\"error\">\u9519\u8BEF</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u6D88\u606F\u5185\u5BB9\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"content\" [noListen]=\"noListen()\">\n <textarea nz-input ngModel [ngModelOptions]=\"{standalone:true}\"></textarea>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n</form>", styles: [""], dependencies: [{ kind: "ngmodule", type: NzFormModule }, { kind: "directive", type: i1$3.NzColDirective, selector: "[nz-col],nz-col,nz-form-control,nz-form-label", inputs: ["nzFlex", "nzSpan", "nzOrder", "nzOffset", "nzPush", "nzPull", "nzXs", "nzSm", "nzMd", "nzLg", "nzXl", "nzXXl"], exportAs: ["nzCol"] }, { kind: "directive", type: i1$3.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }, { kind: "directive", type: i2$3.NzFormDirective, selector: "[nz-form]", inputs: ["nzLayout", "nzNoColon", "nzAutoTips", "nzDisableAutoTips", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzForm"] }, { kind: "component", type: i2$3.NzFormItemComponent, selector: "nz-form-item", exportAs: ["nzFormItem"] }, { kind: "component", type: i2$3.NzFormLabelComponent, selector: "nz-form-label", inputs: ["nzFor", "nzRequired", "nzNoColon", "nzTooltipTitle", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzFormLabel"] }, { kind: "component", type: i2$3.NzFormControlComponent, selector: "nz-form-control", inputs: ["nzSuccessTip", "nzWarningTip", "nzErrorTip", "nzValidatingTip", "nzExtra", "nzAutoTips", "nzDisableAutoTips", "nzHasFeedback", "nzValidateStatus"], exportAs: ["nzFormControl"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FunField, selector: "axis-fun-field", inputs: ["scopes", "exclude", "scopeId", "onlyFun", "noListen", "disabled", "editTip", "value", "open", "showCreateListenModal", "createListenDataSourceName"], outputs: ["valueChange", "openChange", "showCreateListenModalChange", "createListenDataSourceNameChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NzSelectModule }, { kind: "ngmodule", type: NzInputModule }, { kind: "directive", type: i4$1.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzVariant", "nzSize", "nzStepperless", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "ngmodule", type: NzRadioModule }, { kind: "component", type: i5$1.NzRadioComponent, selector: "[nz-radio],[nz-radio-button]", inputs: ["nzValue", "nzDisabled", "nzAutoFocus", "nz-radio-button"], exportAs: ["nzRadio"] }, { kind: "component", type: i5$1.NzRadioGroupComponent, selector: "nz-radio-group", inputs: ["nzDisabled", "nzButtonStyle", "nzSize", "nzName"], exportAs: ["nzRadioGroup"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2604
+ ], usesInheritance: true, ngImport: i0, template: "<form nz-form [formGroup]=\"fg\">\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u63D0\u9192\u65B9\u5F0F\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"tipWay\" [noListen]=\"noListen()\" editTip=\"message-\u6D88\u606F modal-\u5F39\u7A97\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\">\n <label nz-radio-button nzValue=\"message\">\u6D88\u606F</label>\n <label nz-radio-button nzValue=\"modal\">\u5F39\u7A97</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u6D88\u606F\u7C7B\u578B\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"type\" [noListen]=\"noListen()\" editTip=\"info-\u63D0\u9192 success-\u6210\u529F warning-\u8B66\u544A error-\u9519\u8BEF\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\" nzSize=\"small\">\n <label nz-radio-button nzValue=\"info\">\u63D0\u9192</label>\n <label nz-radio-button nzValue=\"success\">\u6210\u529F</label>\n <label nz-radio-button nzValue=\"warning\">\u8B66\u544A</label>\n <label nz-radio-button nzValue=\"error\">\u9519\u8BEF</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u6D88\u606F\u5185\u5BB9\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"content\" [noListen]=\"noListen()\">\n <textarea nz-input ngModel [ngModelOptions]=\"{standalone:true}\"></textarea>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n</form>", styles: [""], dependencies: [{ kind: "ngmodule", type: NzFormModule }, { kind: "directive", type: i1$3.NzColDirective, selector: "[nz-col],nz-col,nz-form-control,nz-form-label", inputs: ["nzFlex", "nzSpan", "nzOrder", "nzOffset", "nzPush", "nzPull", "nzXs", "nzSm", "nzMd", "nzLg", "nzXl", "nzXXl"], exportAs: ["nzCol"] }, { kind: "directive", type: i1$3.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }, { kind: "directive", type: i2$3.NzFormDirective, selector: "[nz-form]", inputs: ["nzLayout", "nzNoColon", "nzAutoTips", "nzDisableAutoTips", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzForm"] }, { kind: "component", type: i2$3.NzFormItemComponent, selector: "nz-form-item", exportAs: ["nzFormItem"] }, { kind: "component", type: i2$3.NzFormLabelComponent, selector: "nz-form-label", inputs: ["nzFor", "nzRequired", "nzNoColon", "nzTooltipTitle", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzFormLabel"] }, { kind: "component", type: i2$3.NzFormControlComponent, selector: "nz-form-control", inputs: ["nzSuccessTip", "nzWarningTip", "nzErrorTip", "nzValidatingTip", "nzExtra", "nzAutoTips", "nzDisableAutoTips", "nzHasFeedback", "nzValidateStatus"], exportAs: ["nzFormControl"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FunField, selector: "axis-fun-field", inputs: ["scopes", "exclude", "scopeId", "onlyFun", "noListen", "disabled", "editTip", "value", "open", "showCreateListenModal", "createListenDataSourceName"], outputs: ["valueChange", "openChange", "showCreateListenModalChange", "createListenDataSourceNameChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NzSelectModule }, { kind: "ngmodule", type: NzInputModule }, { kind: "directive", type: i4$1.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzVariant", "nzSize", "nzStepperless", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "ngmodule", type: NzRadioModule }, { kind: "component", type: i5$1.NzRadioComponent, selector: "[nz-radio],[nz-radio-button]", inputs: ["nzValue", "nzDisabled", "nzAutoFocus", "nz-radio-button"], exportAs: ["nzRadio"] }, { kind: "component", type: i5$1.NzRadioGroupComponent, selector: "nz-radio-group", inputs: ["nzDisabled", "nzButtonStyle", "nzSize", "nzName"], exportAs: ["nzRadioGroup"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2600
2605
  }
2601
2606
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: MsgTipHandler, decorators: [{
2602
2607
  type: Component,
@@ -2606,7 +2611,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
2606
2611
  useExisting: forwardRef(() => MsgTipHandler),
2607
2612
  multi: true
2608
2613
  }
2609
- ], template: "<form nz-form [formGroup]=\"fg\">\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u63D0\u9192\u65B9\u5F0F\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"tipWay\" [noListen]=\"noListen()\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\">\n <label nz-radio-button nzValue=\"message\">\u6D88\u606F</label>\n <label nz-radio-button nzValue=\"modal\">\u5F39\u7A97</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u6D88\u606F\u7C7B\u578B\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"type\" [noListen]=\"noListen()\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\" nzSize=\"small\">\n <label nz-radio-button nzValue=\"info\">\u63D0\u9192</label>\n <label nz-radio-button nzValue=\"success\">\u6210\u529F</label>\n <label nz-radio-button nzValue=\"warning\">\u8B66\u544A</label>\n <label nz-radio-button nzValue=\"error\">\u9519\u8BEF</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u6D88\u606F\u5185\u5BB9\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"content\" [noListen]=\"noListen()\">\n <textarea nz-input ngModel [ngModelOptions]=\"{standalone:true}\"></textarea>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n</form>" }]
2614
+ ], template: "<form nz-form [formGroup]=\"fg\">\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u63D0\u9192\u65B9\u5F0F\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"tipWay\" [noListen]=\"noListen()\" editTip=\"message-\u6D88\u606F modal-\u5F39\u7A97\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\">\n <label nz-radio-button nzValue=\"message\">\u6D88\u606F</label>\n <label nz-radio-button nzValue=\"modal\">\u5F39\u7A97</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u6D88\u606F\u7C7B\u578B\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"type\" [noListen]=\"noListen()\" editTip=\"info-\u63D0\u9192 success-\u6210\u529F warning-\u8B66\u544A error-\u9519\u8BEF\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\" nzSize=\"small\">\n <label nz-radio-button nzValue=\"info\">\u63D0\u9192</label>\n <label nz-radio-button nzValue=\"success\">\u6210\u529F</label>\n <label nz-radio-button nzValue=\"warning\">\u8B66\u544A</label>\n <label nz-radio-button nzValue=\"error\">\u9519\u8BEF</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u6D88\u606F\u5185\u5BB9\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"content\" [noListen]=\"noListen()\">\n <textarea nz-input ngModel [ngModelOptions]=\"{standalone:true}\"></textarea>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n</form>" }]
2610
2615
  }] });
2611
2616
 
2612
2617
  class RefreshDataSourceHandler extends FunFieldValueBase {