ngx-axis-appforge 1.0.4 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/ngx-axis-appforge-axis-components-loop-task-design.mjs +123 -0
- package/fesm2022/ngx-axis-appforge-axis-components-loop-task-design.mjs.map +1 -0
- package/fesm2022/ngx-axis-appforge-axis-components-loop-task.mjs +85 -0
- package/fesm2022/ngx-axis-appforge-axis-components-loop-task.mjs.map +1 -0
- package/fesm2022/ngx-axis-appforge-axis-components-select.mjs +7 -5
- package/fesm2022/ngx-axis-appforge-axis-components-select.mjs.map +1 -1
- package/fesm2022/ngx-axis-appforge-axis-components-table-helper.mjs +10 -10
- package/fesm2022/ngx-axis-appforge-axis-components-table-helper.mjs.map +1 -1
- package/fesm2022/ngx-axis-appforge-axis-components-tree-selector.mjs +16 -0
- package/fesm2022/ngx-axis-appforge-axis-components-tree-selector.mjs.map +1 -1
- package/fesm2022/ngx-axis-appforge-axis-components.mjs +18 -0
- package/fesm2022/ngx-axis-appforge-axis-components.mjs.map +1 -1
- package/package.json +9 -1
- package/types/ngx-axis-appforge-axis-components-loop-task-design.d.ts +5 -0
- package/types/ngx-axis-appforge-axis-components-loop-task.d.ts +26 -0
- package/types/ngx-axis-appforge-axis-components-select.d.ts +2 -1
- package/types/ngx-axis-appforge-axis-components-tree-selector.d.ts +1 -0
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import { FunFieldValueBase, FormValidators, baseFbConfig, baseFunField, BaseDesignSetting, FunField, InputTrigger, DynamicDirective, OptionsNode, SimpleMenu } from 'ngx-axis-appforge/core';
|
|
2
|
+
import * as i0 from '@angular/core';
|
|
3
|
+
import { ChangeDetectionStrategy, Component, inject, forwardRef } from '@angular/core';
|
|
4
|
+
import * as i1 from '@angular/forms';
|
|
5
|
+
import { FormsModule, ReactiveFormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
6
|
+
import * as i4 from 'ng-zorro-antd/collapse';
|
|
7
|
+
import { NzCollapseModule } from 'ng-zorro-antd/collapse';
|
|
8
|
+
import * as i3 from 'ng-zorro-antd/form';
|
|
9
|
+
import { NzFormModule } from 'ng-zorro-antd/form';
|
|
10
|
+
import * as i5 from 'ng-zorro-antd/input';
|
|
11
|
+
import { NzInputModule } from 'ng-zorro-antd/input';
|
|
12
|
+
import * as i6 from 'ng-zorro-antd/switch';
|
|
13
|
+
import { NzSwitchModule } from 'ng-zorro-antd/switch';
|
|
14
|
+
import * as i2 from 'ng-zorro-antd/grid';
|
|
15
|
+
|
|
16
|
+
class Setting extends FunFieldValueBase {
|
|
17
|
+
fg = this.fb.group({
|
|
18
|
+
...baseFbConfig,
|
|
19
|
+
showProgress: [undefined, FormValidators.requiredFun],
|
|
20
|
+
progressTip: [],
|
|
21
|
+
userBreak: [undefined, FormValidators.requiredFun],
|
|
22
|
+
});
|
|
23
|
+
funFields = {
|
|
24
|
+
...baseFunField,
|
|
25
|
+
showProgress: {
|
|
26
|
+
defaultValue: true
|
|
27
|
+
},
|
|
28
|
+
progressTip: {
|
|
29
|
+
defaultValue: "执行中"
|
|
30
|
+
},
|
|
31
|
+
userBreak: {
|
|
32
|
+
defaultValue: true
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: Setting, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
36
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.12", type: Setting, isStandalone: true, selector: "axis-design-loop-task-setting", usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"fg\" nz-form>\n <nz-collapse [nzBordered]=\"false\">\n <nz-collapse-panel nzHeader=\"\u57FA\u672C\u8BBE\u7F6E\" nzActive>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u663E\u793A\u8FDB\u5EA6\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"showProgress\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().showProgress?.funMode || formValue()?.showProgress?.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"8\">\n \u8FDB\u5EA6\u63D0\u793A\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"progressTip\">\n <input nz-input ngModel [ngModelOptions]=\"{standalone:true}\" />\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u7528\u6237\u4E2D\u65AD\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"userBreak\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n </nz-collapse-panel>\n <axis-base-design-setting [fg]=\"fg\"></axis-base-design-setting>\n <axis-input-trigger formControlName=\"triggeEvents\"\n [eventDesc]=\"[{name:'taskLoop',title:'\u4EFB\u52A1\u5FAA\u73AF',ds:{loopIndex:0,loopItem:'\u793A\u4F8B\u6570\u636E'}},{name:'loopTaskEnd',title:'\u5FAA\u73AF\u4EFB\u52A1\u7ED3\u675F',ds:{completedCount:0,totalCount:0}}]\"></axis-input-trigger>\n </nz-collapse>\n</form>", styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NzFormModule }, { kind: "directive", type: i2.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: i2.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }, { kind: "directive", type: i3.NzFormDirective, selector: "[nz-form]", inputs: ["nzLayout", "nzNoColon", "nzAutoTips", "nzDisableAutoTips", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap", "nzSize", "nzVariant", "nzRequiredMark"], exportAs: ["nzForm"] }, { kind: "component", type: i3.NzFormItemComponent, selector: "nz-form-item", exportAs: ["nzFormItem"] }, { kind: "component", type: i3.NzFormLabelComponent, selector: "nz-form-label", inputs: ["nzFor", "nzRequired", "nzNoColon", "nzTooltipTitle", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzFormLabel"] }, { kind: "component", type: i3.NzFormControlComponent, selector: "nz-form-control", inputs: ["nzSuccessTip", "nzWarningTip", "nzErrorTip", "nzValidatingTip", "nzExtra", "nzAutoTips", "nzDisableAutoTips", "nzHasFeedback", "nzValidateStatus"], exportAs: ["nzFormControl"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: NzCollapseModule }, { kind: "component", type: i4.NzCollapsePanelComponent, selector: "nz-collapse-panel", inputs: ["nzActive", "nzDisabled", "nzShowArrow", "nzExtra", "nzHeader", "nzExpandedIcon", "nzCollapsible"], outputs: ["nzActiveChange"], exportAs: ["nzCollapsePanel"] }, { kind: "component", type: i4.NzCollapseComponent, selector: "nz-collapse", inputs: ["nzAccordion", "nzBordered", "nzGhost", "nzExpandIconPosition", "nzSize"], exportAs: ["nzCollapse"] }, { kind: "component", type: BaseDesignSetting, selector: "axis-base-design-setting", inputs: ["scopeId", "exclude", "fg"] }, { kind: "ngmodule", type: NzInputModule }, { kind: "directive", type: i5.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzVariant", "nzSize", "nzStepperless", "nzStatus", "disabled", "readonly"], exportAs: ["nzInput"] }, { kind: "ngmodule", type: NzSwitchModule }, { kind: "component", type: i6.NzSwitchComponent, selector: "nz-switch", inputs: ["nzLoading", "nzDisabled", "nzControl", "nzCheckedChildren", "nzUnCheckedChildren", "nzSize", "nzId"], exportAs: ["nzSwitch"] }, { 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: "component", type: InputTrigger, selector: "axis-input-trigger", inputs: ["internalTriggers", "optionsNodeId", "value", "eventDesc", "isVisibleHandlerModal", "editEventHandler"], outputs: ["valueChange", "isVisibleHandlerModalChange", "editEventHandlerChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
37
|
+
}
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: Setting, decorators: [{
|
|
39
|
+
type: Component,
|
|
40
|
+
args: [{ selector: 'axis-design-loop-task-setting', imports: [FormsModule, NzFormModule, ReactiveFormsModule, NzCollapseModule, BaseDesignSetting, NzInputModule, NzSwitchModule, FunField, InputTrigger], changeDetection: ChangeDetectionStrategy.OnPush, template: "<form [formGroup]=\"fg\" nz-form>\n <nz-collapse [nzBordered]=\"false\">\n <nz-collapse-panel nzHeader=\"\u57FA\u672C\u8BBE\u7F6E\" nzActive>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u663E\u793A\u8FDB\u5EA6\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"showProgress\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().showProgress?.funMode || formValue()?.showProgress?.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"8\">\n \u8FDB\u5EA6\u63D0\u793A\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"progressTip\">\n <input nz-input ngModel [ngModelOptions]=\"{standalone:true}\" />\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u7528\u6237\u4E2D\u65AD\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"userBreak\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n </nz-collapse-panel>\n <axis-base-design-setting [fg]=\"fg\"></axis-base-design-setting>\n <axis-input-trigger formControlName=\"triggeEvents\"\n [eventDesc]=\"[{name:'taskLoop',title:'\u4EFB\u52A1\u5FAA\u73AF',ds:{loopIndex:0,loopItem:'\u793A\u4F8B\u6570\u636E'}},{name:'loopTaskEnd',title:'\u5FAA\u73AF\u4EFB\u52A1\u7ED3\u675F',ds:{completedCount:0,totalCount:0}}]\"></axis-input-trigger>\n </nz-collapse>\n</form>" }]
|
|
41
|
+
}] });
|
|
42
|
+
|
|
43
|
+
class StartTaskLoopHandler extends FunFieldValueBase {
|
|
44
|
+
noListen = inject(InputTrigger).noListen;
|
|
45
|
+
sendInitValue = true;
|
|
46
|
+
fg = this.fb.group({
|
|
47
|
+
loopTarget: [undefined, FormValidators.requiredFun],
|
|
48
|
+
});
|
|
49
|
+
funFields = {
|
|
50
|
+
loopTarget: {
|
|
51
|
+
defaultValue: [],
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: StartTaskLoopHandler, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
55
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.12", type: StartTaskLoopHandler, isStandalone: true, selector: "axis-modal-design-start-task-loop-handler", providers: [
|
|
56
|
+
{
|
|
57
|
+
provide: NG_VALUE_ACCESSOR,
|
|
58
|
+
useExisting: forwardRef(() => StartTaskLoopHandler),
|
|
59
|
+
multi: true
|
|
60
|
+
}
|
|
61
|
+
], usesInheritance: true, ngImport: i0, template: "<form nz-form [formGroup]=\"fg\">\n <nz-form-item>\n <nz-form-label [nzSpan]=\"6\" nzRequired>\n \u5FAA\u73AF\u76EE\u6807\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"loopTarget\" [noListen]=\"noListen()\">\n <ng-container [axisDynamic]=\"{component:'axis-components/input-json',inuse:true}\" [standalone]=\"true\"\n ngModel [ngModelOptions]=\"{standalone: true}\"></ng-container>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n</form>", styles: [""], dependencies: [{ kind: "ngmodule", type: NzFormModule }, { kind: "directive", type: i2.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: i2.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }, { kind: "directive", type: i3.NzFormDirective, selector: "[nz-form]", inputs: ["nzLayout", "nzNoColon", "nzAutoTips", "nzDisableAutoTips", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap", "nzSize", "nzVariant", "nzRequiredMark"], exportAs: ["nzForm"] }, { kind: "component", type: i3.NzFormItemComponent, selector: "nz-form-item", exportAs: ["nzFormItem"] }, { kind: "component", type: i3.NzFormLabelComponent, selector: "nz-form-label", inputs: ["nzFor", "nzRequired", "nzNoColon", "nzTooltipTitle", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzFormLabel"] }, { kind: "component", type: i3.NzFormControlComponent, selector: "nz-form-control", inputs: ["nzSuccessTip", "nzWarningTip", "nzErrorTip", "nzValidatingTip", "nzExtra", "nzAutoTips", "nzDisableAutoTips", "nzHasFeedback", "nzValidateStatus"], exportAs: ["nzFormControl"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.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: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: DynamicDirective, selector: "[axisDynamic]", inputs: ["axisDynamic", "standalone", "isDesign", "forceRenderOnChange"], outputs: ["onRegisteValueAccess"], exportAs: ["axisDynamic"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
62
|
+
}
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: StartTaskLoopHandler, decorators: [{
|
|
64
|
+
type: Component,
|
|
65
|
+
args: [{ selector: 'axis-modal-design-start-task-loop-handler', imports: [NzFormModule, ReactiveFormsModule, FunField, FormsModule, DynamicDirective], changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
66
|
+
{
|
|
67
|
+
provide: NG_VALUE_ACCESSOR,
|
|
68
|
+
useExisting: forwardRef(() => StartTaskLoopHandler),
|
|
69
|
+
multi: true
|
|
70
|
+
}
|
|
71
|
+
], template: "<form nz-form [formGroup]=\"fg\">\n <nz-form-item>\n <nz-form-label [nzSpan]=\"6\" nzRequired>\n \u5FAA\u73AF\u76EE\u6807\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"loopTarget\" [noListen]=\"noListen()\">\n <ng-container [axisDynamic]=\"{component:'axis-components/input-json',inuse:true}\" [standalone]=\"true\"\n ngModel [ngModelOptions]=\"{standalone: true}\"></ng-container>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n</form>" }]
|
|
72
|
+
}] });
|
|
73
|
+
|
|
74
|
+
const Config = {
|
|
75
|
+
componentName: "循环任务",
|
|
76
|
+
eventHandlerDescs: {
|
|
77
|
+
startLoopTask: {
|
|
78
|
+
name: "startLoopTask",
|
|
79
|
+
title: "开始循环任务",
|
|
80
|
+
dataComponent: StartTaskLoopHandler,
|
|
81
|
+
icon: "sync",
|
|
82
|
+
target: "component",
|
|
83
|
+
targetComponent: "axis-components/loop-task",
|
|
84
|
+
},
|
|
85
|
+
breakLoopTask: {
|
|
86
|
+
name: "breakLoopTask",
|
|
87
|
+
title: "中断循环任务",
|
|
88
|
+
icon: "stop",
|
|
89
|
+
target: "component",
|
|
90
|
+
targetComponent: "axis-components/loop-task",
|
|
91
|
+
},
|
|
92
|
+
},
|
|
93
|
+
buildOptionsNodes(nextInfo) {
|
|
94
|
+
return {
|
|
95
|
+
treeNode: new OptionsNode({
|
|
96
|
+
parentId: nextInfo.parentId,
|
|
97
|
+
scopeId: nextInfo.scopeId,
|
|
98
|
+
name: "循环任务",
|
|
99
|
+
canSetting: true,
|
|
100
|
+
canDrag: true,
|
|
101
|
+
dragType: "component",
|
|
102
|
+
parentObj: nextInfo.parentObject,
|
|
103
|
+
indexOfParentObj: nextInfo.indexOfParent,
|
|
104
|
+
rootOptions: nextInfo.currentObject,
|
|
105
|
+
settingType: Setting,
|
|
106
|
+
contextMenu: SimpleMenu,
|
|
107
|
+
icon: "loading-3-quarters"
|
|
108
|
+
})
|
|
109
|
+
};
|
|
110
|
+
},
|
|
111
|
+
bindElementsOptionsNode(element, options) {
|
|
112
|
+
return {
|
|
113
|
+
[options.id]: { element }
|
|
114
|
+
};
|
|
115
|
+
},
|
|
116
|
+
};
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* Generated bundle index. Do not edit.
|
|
120
|
+
*/
|
|
121
|
+
|
|
122
|
+
export { Config };
|
|
123
|
+
//# sourceMappingURL=ngx-axis-appforge-axis-components-loop-task-design.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ngx-axis-appforge-axis-components-loop-task-design.mjs","sources":["../../../axis-components/loop-task/design/setting/setting.ts","../../../axis-components/loop-task/design/setting/setting.html","../../../axis-components/loop-task/design/start-task-loop-handler/start-task-loop-handler.ts","../../../axis-components/loop-task/design/start-task-loop-handler/start-task-loop-handler.html","../../../axis-components/loop-task/design/config.ts","../../../axis-components/loop-task/design/ngx-axis-appforge-axis-components-loop-task-design.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule, UntypedFormGroup } from '@angular/forms';\nimport { NzCollapseModule } from 'ng-zorro-antd/collapse';\nimport { NzFormModule } from 'ng-zorro-antd/form';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { BaseDesignSetting, baseFbConfig, baseFunField, FormValidators, FunField, FunFieldOptions, FunFieldValueBase, InputTrigger } from 'ngx-axis-appforge/core';\nimport { NzSwitchModule } from 'ng-zorro-antd/switch';\n\n@Component({\n selector: 'axis-design-loop-task-setting',\n imports: [FormsModule, NzFormModule, ReactiveFormsModule, NzCollapseModule, BaseDesignSetting, NzInputModule, NzSwitchModule, FunField, InputTrigger],\n templateUrl: './setting.html',\n styleUrl: './setting.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class Setting extends FunFieldValueBase {\n\n override fg: UntypedFormGroup = this.fb.group({\n ...baseFbConfig,\n showProgress: [undefined, FormValidators.requiredFun],\n progressTip: [],\n userBreak: [undefined, FormValidators.requiredFun],\n });\n\n protected override funFields: FunFieldOptions = {\n ...baseFunField,\n showProgress: {\n defaultValue: true\n },\n progressTip: {\n defaultValue: \"执行中\"\n },\n userBreak: {\n defaultValue: true\n },\n };\n}\n","<form [formGroup]=\"fg\" nz-form>\n <nz-collapse [nzBordered]=\"false\">\n <nz-collapse-panel nzHeader=\"基本设置\" nzActive>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n 显示进度\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"showProgress\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().showProgress?.funMode || formValue()?.showProgress?.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"8\">\n 进度提示\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"progressTip\">\n <input nz-input ngModel [ngModelOptions]=\"{standalone:true}\" />\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n 用户中断\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"userBreak\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n </nz-collapse-panel>\n <axis-base-design-setting [fg]=\"fg\"></axis-base-design-setting>\n <axis-input-trigger formControlName=\"triggeEvents\"\n [eventDesc]=\"[{name:'taskLoop',title:'任务循环',ds:{loopIndex:0,loopItem:'示例数据'}},{name:'loopTaskEnd',title:'循环任务结束',ds:{completedCount:0,totalCount:0}}]\"></axis-input-trigger>\n </nz-collapse>\n</form>","import { ChangeDetectionStrategy, Component, forwardRef, inject } from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR, ReactiveFormsModule, UntypedFormGroup } from '@angular/forms';\nimport { NzFormModule } from 'ng-zorro-antd/form';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { DynamicDirective, FormValidators, FunField, FunFieldOptions, FunFieldValueBase, InputTrigger } from 'ngx-axis-appforge/core';\n\n@Component({\n selector: 'axis-modal-design-start-task-loop-handler',\n imports: [NzFormModule, ReactiveFormsModule, FunField, FormsModule, DynamicDirective],\n templateUrl: './start-task-loop-handler.html',\n styleUrl: './start-task-loop-handler.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => StartTaskLoopHandler),\n multi: true\n }\n ]\n})\nexport class StartTaskLoopHandler extends FunFieldValueBase {\n readonly noListen = inject(InputTrigger).noListen;\n protected override sendInitValue: boolean = true;\n override fg: UntypedFormGroup = this.fb.group({\n loopTarget: [undefined, FormValidators.requiredFun],\n });\n\n protected override funFields: FunFieldOptions = {\n loopTarget: {\n defaultValue: [],\n },\n };\n\n}\n","<form nz-form [formGroup]=\"fg\">\n <nz-form-item>\n <nz-form-label [nzSpan]=\"6\" nzRequired>\n 循环目标\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"loopTarget\" [noListen]=\"noListen()\">\n <ng-container [axisDynamic]=\"{component:'axis-components/input-json',inuse:true}\" [standalone]=\"true\"\n ngModel [ngModelOptions]=\"{standalone: true}\"></ng-container>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n</form>","import { NextInfo, DesignBuildResult, DesignBindElementsResult, DesignConfig, OptionsNode, nameCode, SimpleMenu } from \"ngx-axis-appforge/core\";\nimport { Setting } from \"./setting/setting\";\nimport { StartTaskLoopHandler } from \"./start-task-loop-handler/start-task-loop-handler\";\n\nexport const Config: DesignConfig = {\n\n componentName: \"循环任务\",\n eventHandlerDescs: {\n startLoopTask: {\n name: \"startLoopTask\",\n title: \"开始循环任务\",\n dataComponent: StartTaskLoopHandler,\n icon: \"sync\",\n target: \"component\",\n targetComponent: \"axis-components/loop-task\",\n },\n breakLoopTask: {\n name: \"breakLoopTask\",\n title: \"中断循环任务\",\n icon: \"stop\",\n target: \"component\",\n targetComponent: \"axis-components/loop-task\",\n },\n },\n buildOptionsNodes(nextInfo: NextInfo): DesignBuildResult {\n return {\n treeNode: new OptionsNode({\n parentId: nextInfo.parentId,\n scopeId: nextInfo.scopeId,\n name: \"循环任务\",\n canSetting: true,\n canDrag: true,\n dragType: \"component\",\n parentObj: nextInfo.parentObject,\n indexOfParentObj: nextInfo.indexOfParent,\n rootOptions: nextInfo.currentObject,\n settingType: Setting,\n contextMenu: SimpleMenu,\n icon: \"loading-3-quarters\"\n })\n };\n },\n bindElementsOptionsNode(element: HTMLElement, options: any): DesignBindElementsResult {\n return {\n [options.id]: { element }\n }\n },\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './config';\n"],"names":["i1","i2","i3"],"mappings":"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"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { signal, inject, computed, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import { DataOptions, Base } from 'ngx-axis-appforge/core';
|
|
4
|
+
import * as i1 from 'ng-zorro-antd/progress';
|
|
5
|
+
import { NzProgressModule } from 'ng-zorro-antd/progress';
|
|
6
|
+
import * as i4 from 'ng-zorro-antd/icon';
|
|
7
|
+
import { NzIconModule } from 'ng-zorro-antd/icon';
|
|
8
|
+
import * as i2 from 'ng-zorro-antd/button';
|
|
9
|
+
import { NzButtonModule } from 'ng-zorro-antd/button';
|
|
10
|
+
import { of, concatMap, tap, finalize } from 'rxjs';
|
|
11
|
+
import { NzMessageService } from 'ng-zorro-antd/message';
|
|
12
|
+
import * as i3 from 'ng-zorro-antd/core/transition-patch';
|
|
13
|
+
|
|
14
|
+
class LoopTaskOptions extends DataOptions {
|
|
15
|
+
showProgress = signal(true, ...(ngDevMode ? [{ debugName: "showProgress" }] : /* istanbul ignore next */ []));
|
|
16
|
+
progressTip = signal("执行中", ...(ngDevMode ? [{ debugName: "progressTip" }] : /* istanbul ignore next */ []));
|
|
17
|
+
userBreak = signal(true, ...(ngDevMode ? [{ debugName: "userBreak" }] : /* istanbul ignore next */ []));
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
class LoopTask extends Base {
|
|
21
|
+
options = new LoopTaskOptions();
|
|
22
|
+
inProgress = signal(false, ...(ngDevMode ? [{ debugName: "inProgress" }] : /* istanbul ignore next */ []));
|
|
23
|
+
msg = inject(NzMessageService);
|
|
24
|
+
completed = signal(0, ...(ngDevMode ? [{ debugName: "completed" }] : /* istanbul ignore next */ []));
|
|
25
|
+
target = signal([], ...(ngDevMode ? [{ debugName: "target" }] : /* istanbul ignore next */ []));
|
|
26
|
+
progress = computed(() => {
|
|
27
|
+
if (this.target().length === 0) {
|
|
28
|
+
return 0;
|
|
29
|
+
}
|
|
30
|
+
return Math.ceil((this.completed() * 100 / this.target().length));
|
|
31
|
+
}, ...(ngDevMode ? [{ debugName: "progress" }] : /* istanbul ignore next */ []));
|
|
32
|
+
onEvents(e) {
|
|
33
|
+
const obs = super.onEvents?.(e);
|
|
34
|
+
if (obs) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
switch (e.name) {
|
|
38
|
+
case "startLoopTask":
|
|
39
|
+
if (this.inProgress()) {
|
|
40
|
+
this.msg.error("请勿重复操作");
|
|
41
|
+
return of(false);
|
|
42
|
+
}
|
|
43
|
+
if (!Array.isArray(e.data?.loopTarget)) {
|
|
44
|
+
return of(false);
|
|
45
|
+
}
|
|
46
|
+
this.startLoopTask(e.data?.loopTarget);
|
|
47
|
+
return of(true);
|
|
48
|
+
case "breakLoopTask":
|
|
49
|
+
this.breakLoop();
|
|
50
|
+
return of(true);
|
|
51
|
+
}
|
|
52
|
+
return undefined;
|
|
53
|
+
}
|
|
54
|
+
startLoopTask(target) {
|
|
55
|
+
this.inProgress.set(true);
|
|
56
|
+
this.target.set(target);
|
|
57
|
+
this.completed.set(0);
|
|
58
|
+
this.addSubscribe(of(...target).pipe(concatMap((item, index) => {
|
|
59
|
+
return this.triggeEvents("taskLoop", { loopIndex: index, loopItem: item }).pipe(tap(() => {
|
|
60
|
+
this.completed.set(index + 1);
|
|
61
|
+
}));
|
|
62
|
+
}), finalize(() => {
|
|
63
|
+
this.inProgress.set(false);
|
|
64
|
+
this.triggeEvents("loopTaskEnd", { completedCount: this.completed(), totalCount: this.target().length }).subscribe();
|
|
65
|
+
})).subscribe(), "task_loop");
|
|
66
|
+
}
|
|
67
|
+
breakLoop() {
|
|
68
|
+
this.unsubscribe(["task_loop"]);
|
|
69
|
+
}
|
|
70
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: LoopTask, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
71
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.12", type: LoopTask, isStandalone: true, selector: "axis-loop-task-component", host: { properties: { "style.display": "options.showProgress()&&inProgress()?\"flex\":\"none\"" } }, usesInheritance: true, ngImport: i0, template: "@if(options.showProgress()){\n<div class=\"progress-box\">\n @if(options.userBreak()){\n <button style=\"position: absolute;right: 0;top: 0;\" nz-button nzSize=\"small\" nzType=\"text\" nzShape=\"circle\"\n (click)=\"breakLoop()\">\n <nz-icon nzType=\"close\"></nz-icon></button>\n }\n <nz-progress [nzPercent]=\"progress()\" [nzWidth]=\"60\" nzType=\"circle\"></nz-progress>\n @if (options.progressTip()) {\n <div>{{options.progressTip()}}</div>\n }\n</div>\n}", styles: [":host{display:none;width:100%;height:100%;position:absolute;left:0;top:0;justify-content:center;align-items:center;background-color:#0000001f;z-index:9999}.progress-box{width:100px;height:100px;display:flex;flex-direction:column;justify-content:space-evenly;align-items:center;padding:0 10px;border-radius:6px;font-size:12px;text-align:center;background-color:#fff;position:relative}\n"], dependencies: [{ kind: "ngmodule", type: NzProgressModule }, { kind: "component", type: i1.NzProgressComponent, selector: "nz-progress", inputs: ["nzShowInfo", "nzWidth", "nzStrokeColor", "nzSize", "nzFormat", "nzSuccessPercent", "nzPercent", "nzStrokeWidth", "nzGapDegree", "nzStatus", "nzType", "nzGapPosition", "nzStrokeLinecap", "nzSteps"], exportAs: ["nzProgress"] }, { kind: "ngmodule", type: NzButtonModule }, { kind: "component", type: i2.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i3.ɵ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: NzIconModule }, { kind: "directive", type: i4.NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
72
|
+
}
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: LoopTask, decorators: [{
|
|
74
|
+
type: Component,
|
|
75
|
+
args: [{ selector: 'axis-loop-task-component', imports: [NzProgressModule, NzButtonModule, NzIconModule], host: {
|
|
76
|
+
'[style.display]': 'options.showProgress()&&inProgress()?"flex":"none"'
|
|
77
|
+
}, changeDetection: ChangeDetectionStrategy.OnPush, template: "@if(options.showProgress()){\n<div class=\"progress-box\">\n @if(options.userBreak()){\n <button style=\"position: absolute;right: 0;top: 0;\" nz-button nzSize=\"small\" nzType=\"text\" nzShape=\"circle\"\n (click)=\"breakLoop()\">\n <nz-icon nzType=\"close\"></nz-icon></button>\n }\n <nz-progress [nzPercent]=\"progress()\" [nzWidth]=\"60\" nzType=\"circle\"></nz-progress>\n @if (options.progressTip()) {\n <div>{{options.progressTip()}}</div>\n }\n</div>\n}", styles: [":host{display:none;width:100%;height:100%;position:absolute;left:0;top:0;justify-content:center;align-items:center;background-color:#0000001f;z-index:9999}.progress-box{width:100px;height:100px;display:flex;flex-direction:column;justify-content:space-evenly;align-items:center;padding:0 10px;border-radius:6px;font-size:12px;text-align:center;background-color:#fff;position:relative}\n"] }]
|
|
78
|
+
}] });
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* Generated bundle index. Do not edit.
|
|
82
|
+
*/
|
|
83
|
+
|
|
84
|
+
export { LoopTask };
|
|
85
|
+
//# sourceMappingURL=ngx-axis-appforge-axis-components-loop-task.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ngx-axis-appforge-axis-components-loop-task.mjs","sources":["../../../axis-components/loop-task/loop-task.options.ts","../../../axis-components/loop-task/loop-task.ts","../../../axis-components/loop-task/loop-task.html","../../../axis-components/loop-task/ngx-axis-appforge-axis-components-loop-task.ts"],"sourcesContent":["import { signal } from \"@angular/core\";\nimport { DataOptions } from \"ngx-axis-appforge/core\";\n\nexport class LoopTaskOptions extends DataOptions {\n readonly showProgress = signal(true);\n readonly progressTip = signal(\"执行中\");\n readonly userBreak = signal(true);\n}","import { ChangeDetectionStrategy, Component, computed, inject, signal } from '@angular/core';\nimport { Base, EventHandlerOptions } from 'ngx-axis-appforge/core';\nimport { LoopTaskOptions } from './loop-task.options';\nimport { NzProgressModule } from 'ng-zorro-antd/progress';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { concatMap, finalize, Observable, of, tap } from 'rxjs';\nimport { NzMessageService } from 'ng-zorro-antd/message';\n\n@Component({\n selector: 'axis-loop-task-component',\n imports: [NzProgressModule, NzButtonModule, NzIconModule],\n templateUrl: './loop-task.html',\n styleUrl: './loop-task.css',\n host: {\n '[style.display]': 'options.showProgress()&&inProgress()?\"flex\":\"none\"'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LoopTask extends Base<LoopTaskOptions> {\n\n override options: LoopTaskOptions = new LoopTaskOptions();\n\n readonly inProgress = signal(false);\n readonly msg = inject(NzMessageService);\n private readonly completed = signal(0);\n private readonly target = signal<any[]>([]);\n readonly progress = computed(() => {\n if (this.target().length === 0) {\n return 0;\n }\n return Math.ceil((this.completed() * 100 / this.target().length))\n });\n\n override onEvents(e: EventHandlerOptions<any>): Observable<boolean> | undefined {\n const obs = super.onEvents?.(e);\n if (obs) {\n return;\n }\n switch (e.name) {\n case \"startLoopTask\":\n if (this.inProgress()) {\n this.msg.error(\"请勿重复操作\");\n return of(false);\n }\n if (!Array.isArray(e.data?.loopTarget)) {\n return of(false);\n }\n this.startLoopTask(e.data?.loopTarget);\n return of(true);\n case \"breakLoopTask\":\n this.breakLoop();\n return of(true);\n }\n return undefined;\n }\n\n private startLoopTask(target: any[]) {\n this.inProgress.set(true);\n this.target.set(target);\n this.completed.set(0);\n this.addSubscribe(of(...target).pipe(concatMap((item, index) => {\n return this.triggeEvents(\"taskLoop\", { loopIndex: index, loopItem: item }).pipe(tap(() => {\n this.completed.set(index + 1)\n }));\n }), finalize(() => {\n this.inProgress.set(false);\n this.triggeEvents(\"loopTaskEnd\", { completedCount: this.completed(), totalCount: this.target().length }).subscribe();\n })).subscribe(), \"task_loop\");\n }\n\n breakLoop() {\n this.unsubscribe([\"task_loop\"]);\n }\n\n}\n","@if(options.showProgress()){\n<div class=\"progress-box\">\n @if(options.userBreak()){\n <button style=\"position: absolute;right: 0;top: 0;\" nz-button nzSize=\"small\" nzType=\"text\" nzShape=\"circle\"\n (click)=\"breakLoop()\">\n <nz-icon nzType=\"close\"></nz-icon></button>\n }\n <nz-progress [nzPercent]=\"progress()\" [nzWidth]=\"60\" nzType=\"circle\"></nz-progress>\n @if (options.progressTip()) {\n <div>{{options.progressTip()}}</div>\n }\n</div>\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './loop-task';\n"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ import { NzSelectModule } from 'ng-zorro-antd/select';
|
|
|
6
6
|
import { NzRadioModule } from 'ng-zorro-antd/radio';
|
|
7
7
|
import * as i2 from '@angular/forms';
|
|
8
8
|
import { FormsModule } from '@angular/forms';
|
|
9
|
+
import { debounceTime, Subject } from 'rxjs';
|
|
9
10
|
|
|
10
11
|
class SelectOptions extends ValueAccessOptions {
|
|
11
12
|
labelField = signal("title", ...(ngDevMode ? [{ debugName: "labelField" }] : /* istanbul ignore next */ []));
|
|
@@ -71,6 +72,9 @@ class Select extends ValueAccess {
|
|
|
71
72
|
}
|
|
72
73
|
}
|
|
73
74
|
});
|
|
75
|
+
this.addSubscribe(this.searchSubject.pipe(debounceTime(300)).subscribe((input) => {
|
|
76
|
+
this.triggeEvents("search", { searchText: input }).pipe(debounceTime(300)).subscribe();
|
|
77
|
+
}));
|
|
74
78
|
}
|
|
75
79
|
options = new SelectOptions();
|
|
76
80
|
dataMap = new Map();
|
|
@@ -79,6 +83,7 @@ class Select extends ValueAccess {
|
|
|
79
83
|
selectValue = model(...(ngDevMode ? [undefined, { debugName: "selectValue" }] : /* istanbul ignore next */ []));
|
|
80
84
|
displayValue = computed(() => this.buildDisplay(), ...(ngDevMode ? [{ debugName: "displayValue" }] : /* istanbul ignore next */ []));
|
|
81
85
|
searchText = signal("", ...(ngDevMode ? [{ debugName: "searchText" }] : /* istanbul ignore next */ []));
|
|
86
|
+
searchSubject = new Subject();
|
|
82
87
|
writeValue(value) {
|
|
83
88
|
super.writeValue(value);
|
|
84
89
|
this.valueToSelectorValue();
|
|
@@ -184,15 +189,12 @@ class Select extends ValueAccess {
|
|
|
184
189
|
}
|
|
185
190
|
return "";
|
|
186
191
|
}
|
|
187
|
-
searchChange(input) {
|
|
188
|
-
this.triggeEvents("search", { searchText: input }).subscribe();
|
|
189
|
-
}
|
|
190
192
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: Select, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
191
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.12", type: Select, isStandalone: true, selector: "axis-select", inputs: { selectValue: { classPropertyName: "selectValue", publicName: "selectValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectValue: "selectValueChange" }, 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)]=\"selectValue\" (ngModelChange)=\"onSelectChange($event)\" (nzOnSearch)=\"
|
|
193
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.12", type: Select, isStandalone: true, selector: "axis-select", inputs: { selectValue: { classPropertyName: "selectValue", publicName: "selectValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectValue: "selectValueChange" }, 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)]=\"selectValue\" (ngModelChange)=\"onSelectChange($event)\" (nzOnSearch)=\"searchSubject.next($event)\">\n @for (o of 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", "nzPrefix", "nzSuffixIcon", "nzClearIcon", "nzRemoveIcon", "nzMenuItemSelectedIcon", "nzTokenSeparators", "nzMaxTagPlaceholder", "nzMaxMultipleCount", "nzMode", "nzFilterOption", "compareWith", "nzAllowClear", "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 });
|
|
192
194
|
}
|
|
193
195
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: Select, decorators: [{
|
|
194
196
|
type: Component,
|
|
195
|
-
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)]=\"selectValue\" (ngModelChange)=\"onSelectChange($event)\" (nzOnSearch)=\"
|
|
197
|
+
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)]=\"selectValue\" (ngModelChange)=\"onSelectChange($event)\" (nzOnSearch)=\"searchSubject.next($event)\">\n @for (o of 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"] }]
|
|
196
198
|
}], ctorParameters: () => [], propDecorators: { selectValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectValue", required: false }] }, { type: i0.Output, args: ["selectValueChange"] }] } });
|
|
197
199
|
|
|
198
200
|
/**
|
|
@@ -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 allowInvalidValue = 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 const selectValue = untracked(this.selectValue);\n if (this.options.mode() == \"default\") {\n let next: any = selectValue;\n if (!this.options.allowInvalidValue() && this.options.data() !== undefined && !this.validValue().has(selectValue)) {\n next = null;\n }\n if (next == null && this.options.defaultFirst() && this.data().length) {\n next = this.data()[0][this.options.valueField()];\n }\n if (next != selectValue || this.options.fullValue() && untracked(this.value) != this.dataMap.get(selectValue)) {\n untracked(() => {\n if (next == null) {\n this.setInitValue(null);\n } else if (this.options.fullValue()) {\n this.setInitValue(this.dataMap.get(next));\n } else {\n this.setInitValue(next);\n }\n });\n }\n } else {\n if (!this.options.allowInvalidValue() && this.options.data() !== undefined && selectValue?.some((r: any) => !this.validValue().has(r))) {\n untracked(() => {\n const next = selectValue?.filter((r: any) => this.validValue().has(r));\n if (this.options.fullValue()) {\n this.setInitValue(next?.map((r: any) => this.dataMap.get(r)) ?? []);\n } else {\n this.setInitValue(next);\n }\n });\n }\n }\n });\n }\n\n override options: SelectOptions = new SelectOptions();\n private dataMap = new Map();\n private readonly validValue = computed(() => this.buildValidValue());\n readonly data = computed(() => this.buildData());\n\n readonly selectValue = model<any>();\n readonly displayValue = computed(() => this.buildDisplay());\n\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 buildValidValue(): Set<any> {\n const validValue = new Set();\n const data = this.options.data();\n if (Array.isArray(data)) {\n for (const item of data) {\n this.dataMap.set(item[this.options.valueField()], item);\n validValue.add(item[this.options.valueField()]);\n }\n }\n return validValue;\n }\n\n private buildData(): any[] {\n let data: any[] = [];\n for (const item of this.validValue()) {\n data.push(this.dataMap.get(item));\n }\n if (this.options.allowInvalidValue() && this.selectValue()) {\n (this.options.mode() == \"default\" ? [this.selectValue()] : this.selectValue())!\n .filter((r: any) => !this.validValue().has(r)).forEach((r: any) => {\n if (!this.dataMap.has(r)) {\n this.dataMap.set(r, {\n [this.options.labelField()]: r,\n [this.options.valueField()]: r\n });\n }\n data.push(this.dataMap.get(r));\n });\n }\n return data;\n }\n\n private valueToSelectorValue() {\n if (this.value() != undefined) {\n if (this.options.mode() == \"default\") {\n if (this.options.fullValue()) {\n const key = this.value()[this.options.valueField()];\n if (!this.dataMap.has(key)) {\n this.dataMap.set(key, this.value());\n }\n this.selectValue.set(this.value()[this.options.valueField()]);\n } else {\n this.selectValue.set(this.value());\n }\n return;\n } else if (Array.isArray(this.value())) {\n if (this.options.fullValue()) {\n this.selectValue.set(this.value().map((r: any) => r[this.options.valueField()]));\n for (const v of this.value()) {\n if (!this.dataMap.has(v[this.options.valueField()])) {\n this.dataMap.set(v[this.options.valueField()], v);\n }\n }\n } else {\n this.selectValue.set(this.value());\n }\n return;\n }\n }\n this.selectValue.set(this.value());\n }\n\n onSelectChange(value: any) {\n if (this.options.fullValue()) {\n if (this.options.mode() == \"default\") {\n this.value.set(this.dataMap.get(value) ?? null);\n } else {\n this.value.set(value?.map((r: any) => this.dataMap.get(r)));\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.value()?.map((r: any) => this.dataMap.get(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.dataMap.get(this.value())?.[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)]=\"selectValue\" (ngModelChange)=\"onSelectChange($event)\" (nzOnSearch)=\"searchChange($event)\">\n @for (o of 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 allowInvalidValue = 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';\nimport { debounceTime, Subject } from 'rxjs';\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 const selectValue = untracked(this.selectValue);\n if (this.options.mode() == \"default\") {\n let next: any = selectValue;\n if (!this.options.allowInvalidValue() && this.options.data() !== undefined && !this.validValue().has(selectValue)) {\n next = null;\n }\n if (next == null && this.options.defaultFirst() && this.data().length) {\n next = this.data()[0][this.options.valueField()];\n }\n if (next != selectValue || this.options.fullValue() && untracked(this.value) != this.dataMap.get(selectValue)) {\n untracked(() => {\n if (next == null) {\n this.setInitValue(null);\n } else if (this.options.fullValue()) {\n this.setInitValue(this.dataMap.get(next));\n } else {\n this.setInitValue(next);\n }\n });\n }\n } else {\n if (!this.options.allowInvalidValue() && this.options.data() !== undefined && selectValue?.some((r: any) => !this.validValue().has(r))) {\n untracked(() => {\n const next = selectValue?.filter((r: any) => this.validValue().has(r));\n if (this.options.fullValue()) {\n this.setInitValue(next?.map((r: any) => this.dataMap.get(r)) ?? []);\n } else {\n this.setInitValue(next);\n }\n });\n }\n }\n });\n this.addSubscribe(this.searchSubject.pipe(debounceTime(300)).subscribe((input: string) => {\n this.triggeEvents(\"search\", { searchText: input }).pipe(debounceTime(300)).subscribe();\n }));\n }\n\n override options: SelectOptions = new SelectOptions();\n private dataMap = new Map();\n private readonly validValue = computed(() => this.buildValidValue());\n readonly data = computed(() => this.buildData());\n\n readonly selectValue = model<any>();\n readonly displayValue = computed(() => this.buildDisplay());\n\n readonly searchText = signal<string>(\"\");\n readonly searchSubject = new Subject<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 buildValidValue(): Set<any> {\n const validValue = new Set();\n const data = this.options.data();\n if (Array.isArray(data)) {\n for (const item of data) {\n this.dataMap.set(item[this.options.valueField()], item);\n validValue.add(item[this.options.valueField()]);\n }\n }\n return validValue;\n }\n\n private buildData(): any[] {\n let data: any[] = [];\n for (const item of this.validValue()) {\n data.push(this.dataMap.get(item));\n }\n if (this.options.allowInvalidValue() && this.selectValue()) {\n (this.options.mode() == \"default\" ? [this.selectValue()] : this.selectValue())!\n .filter((r: any) => !this.validValue().has(r)).forEach((r: any) => {\n if (!this.dataMap.has(r)) {\n this.dataMap.set(r, {\n [this.options.labelField()]: r,\n [this.options.valueField()]: r\n });\n }\n data.push(this.dataMap.get(r));\n });\n }\n return data;\n }\n\n private valueToSelectorValue() {\n if (this.value() != undefined) {\n if (this.options.mode() == \"default\") {\n if (this.options.fullValue()) {\n const key = this.value()[this.options.valueField()];\n if (!this.dataMap.has(key)) {\n this.dataMap.set(key, this.value());\n }\n this.selectValue.set(this.value()[this.options.valueField()]);\n } else {\n this.selectValue.set(this.value());\n }\n return;\n } else if (Array.isArray(this.value())) {\n if (this.options.fullValue()) {\n this.selectValue.set(this.value().map((r: any) => r[this.options.valueField()]));\n for (const v of this.value()) {\n if (!this.dataMap.has(v[this.options.valueField()])) {\n this.dataMap.set(v[this.options.valueField()], v);\n }\n }\n } else {\n this.selectValue.set(this.value());\n }\n return;\n }\n }\n this.selectValue.set(this.value());\n }\n\n onSelectChange(value: any) {\n if (this.options.fullValue()) {\n if (this.options.mode() == \"default\") {\n this.value.set(this.dataMap.get(value) ?? null);\n } else {\n this.value.set(value?.map((r: any) => this.dataMap.get(r)));\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.value()?.map((r: any) => this.dataMap.get(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.dataMap.get(this.value())?.[this.options.labelField()];\n }\n }\n return \"\";\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)]=\"selectValue\" (ngModelChange)=\"onSelectChange($event)\" (nzOnSearch)=\"searchSubject.next($event)\">\n @for (o of 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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"}
|
|
@@ -620,19 +620,21 @@ class SelectService {
|
|
|
620
620
|
this.keyField = opts.keyField;
|
|
621
621
|
this.data = opts.data;
|
|
622
622
|
this.close();
|
|
623
|
-
if (this.rows?.length) {
|
|
624
|
-
const setOfCheckedId = new Set();
|
|
625
|
-
for (const item of this.options.checkedKeys() ?? []) {
|
|
626
|
-
setOfCheckedId.add(item);
|
|
627
|
-
}
|
|
628
|
-
this.setOfCheckedId.set(setOfCheckedId);
|
|
629
|
-
untracked(() => this.refreshCheckedStatus(ChangeScene.refreshHeader));
|
|
630
|
-
}
|
|
631
623
|
if (opts.onSelectedChange) {
|
|
632
624
|
this.subs.push(this.changeSubject.subscribe(_ => {
|
|
633
625
|
opts.onSelectedChange(this.setOfCheckedId());
|
|
634
626
|
}));
|
|
635
627
|
}
|
|
628
|
+
const setOfCheckedId = untracked(this.setOfCheckedId);
|
|
629
|
+
if (this.rows?.length || setOfCheckedId.size > 0) {
|
|
630
|
+
untracked(() => {
|
|
631
|
+
for (const item of this.options.checkedKeys() ?? []) {
|
|
632
|
+
setOfCheckedId.add(item);
|
|
633
|
+
}
|
|
634
|
+
this.setOfCheckedId.set(setOfCheckedId);
|
|
635
|
+
this.refreshCheckedStatus();
|
|
636
|
+
});
|
|
637
|
+
}
|
|
636
638
|
this.parent = opts.parent;
|
|
637
639
|
if (opts.scope) {
|
|
638
640
|
this.scope = opts.scope;
|
|
@@ -717,9 +719,7 @@ class SelectService {
|
|
|
717
719
|
this.setOfCheckedId().clear();
|
|
718
720
|
this.setOfIndeterminateId().clear();
|
|
719
721
|
rows.forEach(row => this.updateCheckedSet(row[this.keyField], true));
|
|
720
|
-
console.log("setOfCheckedId", this.setOfCheckedId().size);
|
|
721
722
|
this.refreshCheckedStatus(scene);
|
|
722
|
-
console.log("setOfCheckedId", this.setOfCheckedId().size);
|
|
723
723
|
}
|
|
724
724
|
updateCheckedSet(key, checked, indeterminate = false) {
|
|
725
725
|
if (checked && this.options.singleCheck()) {
|