@ebuilding/biz-comm 2.4.2 → 2.4.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.
@@ -0,0 +1,182 @@
1
+ import * as i0 from '@angular/core';
2
+ import { EventEmitter, Output, Input, Directive, Component, NgModule } from '@angular/core';
3
+ import * as i4 from '@angular/common';
4
+ import { CommonModule } from '@angular/common';
5
+ import * as i5 from '@angular/forms';
6
+ import { FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';
7
+ import * as i6 from '@ebuilding-form/core';
8
+ import { FormlyModule } from '@ebuilding-form/core';
9
+ import * as i7 from 'ng-zorro-antd/spin';
10
+ import { NzSpinModule } from 'ng-zorro-antd/spin';
11
+ import * as i8 from 'ng-zorro-antd/empty';
12
+ import { NzEmptyModule } from 'ng-zorro-antd/empty';
13
+ import * as i9 from 'ng-zorro-antd/button';
14
+ import { NzButtonModule } from 'ng-zorro-antd/button';
15
+ import { ModuleAPI } from '@ebuilding/base/shared.var/shared.constant';
16
+ import { zip } from 'rxjs';
17
+ import * as i1 from '@delon/theme';
18
+ import * as i2 from 'ng-zorro-antd/message';
19
+ import * as i3 from '@ebuilding/base/components/drawer';
20
+ import * as i10 from 'ng-zorro-antd/core/transition-patch';
21
+ import * as i11 from 'ng-zorro-antd/core/wave';
22
+
23
+ class BasicService {
24
+ http;
25
+ msgSrv;
26
+ _config = null;
27
+ loading = false;
28
+ form = new FormGroup({});
29
+ model = {};
30
+ options = {};
31
+ fields = [];
32
+ tableFieldData = [];
33
+ set config(value) {
34
+ this._config = value;
35
+ this.getPageData();
36
+ }
37
+ get config() {
38
+ return this._config;
39
+ }
40
+ btnCloseEvent = new EventEmitter();
41
+ btnSaveEvent = new EventEmitter();
42
+ constructor(http, msgSrv) {
43
+ this.http = http;
44
+ this.msgSrv = msgSrv;
45
+ }
46
+ getPageData() {
47
+ new Promise((resolve) => {
48
+ zip(this.http.post(`${ModuleAPI.paas}/apaas/table/field/listBySource`, {
49
+ sourceId: this.config.sourceId,
50
+ sourceType: this.config.sourceType
51
+ })).subscribe(([a]) => {
52
+ if (a.success && a.result && Array.isArray(a.result)) {
53
+ this.tableFieldData = a.result.map((item) => {
54
+ return {
55
+ value: item.id,
56
+ label: item.tableName + ' - ' + item.name,
57
+ };
58
+ });
59
+ }
60
+ if (this.config && this.config?.fieldId) {
61
+ this.model["fieldId"] = this.config.fieldId;
62
+ }
63
+ this.getFieldConfig();
64
+ this.loading = false;
65
+ }, () => { }, () => {
66
+ resolve();
67
+ });
68
+ });
69
+ }
70
+ getFieldConfig() {
71
+ let config = [
72
+ {
73
+ type: 'select',
74
+ key: 'fieldId',
75
+ props: {
76
+ label: '表字段',
77
+ required: true,
78
+ options: this.tableFieldData,
79
+ },
80
+ },
81
+ ];
82
+ this.fields = config;
83
+ }
84
+ btnSave() {
85
+ this.btnSaveAfter(this.model);
86
+ }
87
+ /**
88
+ * 取消-关闭
89
+ */
90
+ btnClose() {
91
+ this.btnCloseEvent.emit({
92
+ type: "close",
93
+ data: null
94
+ });
95
+ }
96
+ btnSaveAfter(e) {
97
+ this.btnSaveEvent.emit({
98
+ type: "save",
99
+ data: e
100
+ });
101
+ }
102
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: BasicService, deps: [{ token: i1._HttpClient }, { token: i2.NzMessageService }], target: i0.ɵɵFactoryTarget.Directive });
103
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: BasicService, isStandalone: true, inputs: { config: "config" }, outputs: { btnCloseEvent: "btnCloseEvent", btnSaveEvent: "btnSaveEvent" }, ngImport: i0 });
104
+ }
105
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: BasicService, decorators: [{
106
+ type: Directive
107
+ }], ctorParameters: () => [{ type: i1._HttpClient }, { type: i2.NzMessageService }], propDecorators: { config: [{
108
+ type: Input
109
+ }], btnCloseEvent: [{
110
+ type: Output
111
+ }], btnSaveEvent: [{
112
+ type: Output
113
+ }] } });
114
+
115
+ class SourceFieldSelectComponent extends BasicService {
116
+ http;
117
+ msgSrv;
118
+ drawerRef;
119
+ constructor(http, msgSrv, drawerRef) {
120
+ super(http, msgSrv);
121
+ this.http = http;
122
+ this.msgSrv = msgSrv;
123
+ this.drawerRef = drawerRef;
124
+ }
125
+ ngOnInit() { }
126
+ ngOnDestroy() { }
127
+ ngOnChanges(changes) { }
128
+ /**
129
+ * 保存
130
+ * @param e
131
+ */
132
+ btnSaveAfter(e) {
133
+ this.drawerRef.close({
134
+ type: 'save',
135
+ data: e,
136
+ });
137
+ }
138
+ /**
139
+ * 取消
140
+ */
141
+ btnClose() {
142
+ this.drawerRef.close({
143
+ type: 'close',
144
+ data: null,
145
+ });
146
+ }
147
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: SourceFieldSelectComponent, deps: [{ token: i1._HttpClient }, { token: i2.NzMessageService }, { token: i3.NzDrawerRef }], target: i0.ɵɵFactoryTarget.Component });
148
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: SourceFieldSelectComponent, isStandalone: true, selector: "source-field-select", usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<form [formGroup]=\"form\" (ngSubmit)=\"btnSave()\" #defaultForm>\r\n <nz-spin [nzSpinning]=\"loading\" nzTip=\"\u62FC\u547D\u52A0\u8F7D\u4E2D...\" class=\"deon-list-spin\">\r\n <div class=\"deon-from\">\r\n <ng-container *ngIf=\"fields && fields.length > 0; else emptyPage\">\r\n <formly-form [model]=\"model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\r\n </ng-container>\r\n <ng-template #emptyPage>\r\n <nz-empty *ngIf=\"loading !== true\"></nz-empty>\r\n </ng-template>\r\n </div>\r\n <div class=\"deon-button\">\r\n <button nz-button nzType=\"default\" (click)=\"btnClose()\" type=\"button\"><i nz-icon nzType=\"close\"></i>\u53D6\u6D88</button>\r\n <button nz-button nzType=\"primary\" id=\"SAVE\"><i nz-icon nzType=\"save\"></i>\u4FDD\u5B58</button>\r\n </div>\r\n </nz-spin>\r\n</form>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%}:host ::ng-deep .deon-from{padding:5px 20px 15px!important}:host ::ng-deep form{flex:1;overflow:auto}:host ::ng-deep form .apiurl .ant-input{max-width:100%!important}:host ::ng-deep form .panel-group .ant-input{max-width:95%!important}:host ::ng-deep form .panel-group .ant-select{max-width:95%!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: FormlyModule }, { kind: "component", type: i6.LegacyFormlyForm, selector: "formly-form" }, { kind: "ngmodule", type: NzSpinModule }, { kind: "component", type: i7.NzSpinComponent, selector: "nz-spin", inputs: ["nzIndicator", "nzSize", "nzTip", "nzDelay", "nzSimple", "nzSpinning"], exportAs: ["nzSpin"] }, { kind: "ngmodule", type: NzEmptyModule }, { kind: "component", type: i8.NzEmptyComponent, selector: "nz-empty", inputs: ["nzNotFoundImage", "nzNotFoundContent", "nzNotFoundFooter"], exportAs: ["nzEmpty"] }, { kind: "ngmodule", type: NzButtonModule }, { kind: "component", type: i9.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i10.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], nz-icon, [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "directive", type: i11.NzWaveDirective, selector: "[nz-wave],button[nz-button]:not([nzType=\"link\"]):not([nzType=\"text\"])", inputs: ["nzWaveExtraNode"], exportAs: ["nzWave"] }] });
149
+ }
150
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: SourceFieldSelectComponent, decorators: [{
151
+ type: Component,
152
+ args: [{ selector: 'source-field-select', imports: [
153
+ CommonModule,
154
+ FormsModule,
155
+ ReactiveFormsModule,
156
+ FormlyModule,
157
+ NzSpinModule,
158
+ NzEmptyModule,
159
+ NzButtonModule
160
+ ], template: "<form [formGroup]=\"form\" (ngSubmit)=\"btnSave()\" #defaultForm>\r\n <nz-spin [nzSpinning]=\"loading\" nzTip=\"\u62FC\u547D\u52A0\u8F7D\u4E2D...\" class=\"deon-list-spin\">\r\n <div class=\"deon-from\">\r\n <ng-container *ngIf=\"fields && fields.length > 0; else emptyPage\">\r\n <formly-form [model]=\"model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\r\n </ng-container>\r\n <ng-template #emptyPage>\r\n <nz-empty *ngIf=\"loading !== true\"></nz-empty>\r\n </ng-template>\r\n </div>\r\n <div class=\"deon-button\">\r\n <button nz-button nzType=\"default\" (click)=\"btnClose()\" type=\"button\"><i nz-icon nzType=\"close\"></i>\u53D6\u6D88</button>\r\n <button nz-button nzType=\"primary\" id=\"SAVE\"><i nz-icon nzType=\"save\"></i>\u4FDD\u5B58</button>\r\n </div>\r\n </nz-spin>\r\n</form>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%}:host ::ng-deep .deon-from{padding:5px 20px 15px!important}:host ::ng-deep form{flex:1;overflow:auto}:host ::ng-deep form .apiurl .ant-input{max-width:100%!important}:host ::ng-deep form .panel-group .ant-input{max-width:95%!important}:host ::ng-deep form .panel-group .ant-select{max-width:95%!important}\n"] }]
161
+ }], ctorParameters: () => [{ type: i1._HttpClient }, { type: i2.NzMessageService }, { type: i3.NzDrawerRef }] });
162
+
163
+ const components = [SourceFieldSelectComponent];
164
+ class SourceFieldSelectModule {
165
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: SourceFieldSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
166
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: SourceFieldSelectModule, imports: [SourceFieldSelectComponent], exports: [SourceFieldSelectComponent] });
167
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: SourceFieldSelectModule, imports: [components] });
168
+ }
169
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: SourceFieldSelectModule, decorators: [{
170
+ type: NgModule,
171
+ args: [{
172
+ imports: [...components],
173
+ exports: [...components]
174
+ }]
175
+ }] });
176
+
177
+ /**
178
+ * Generated bundle index. Do not edit.
179
+ */
180
+
181
+ export { SourceFieldSelectComponent, SourceFieldSelectModule };
182
+ //# sourceMappingURL=other.source.field.select.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"other.source.field.select.mjs","sources":["../../../../packages/biz-comm/other/source/field-select/src/basic.ts","../../../../packages/biz-comm/other/source/field-select/src/default/index.ts","../../../../packages/biz-comm/other/source/field-select/src/default/index.html","../../../../packages/biz-comm/other/source/field-select/src/index.module.ts","../../../../packages/biz-comm/other/source/field-select/other.source.field.select.ts"],"sourcesContent":["\r\nimport { Directive, Input, Output, EventEmitter } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { _HttpClient } from '@delon/theme';\r\nimport { FormlyFormOptions, FormlyFieldConfig } from '@ebuilding-form/core';\r\nimport { NzMessageService } from 'ng-zorro-antd/message';\r\nimport { ModuleAPI } from '@ebuilding/base/shared.var/shared.constant';\r\nimport { zip, of } from 'rxjs';\r\n\r\n@Directive()\r\nexport abstract class BasicService {\r\n _config: any = null;\r\n loading: boolean = false;\r\n form = new FormGroup({});\r\n model: any = {};\r\n options: FormlyFormOptions = {};\r\n fields: FormlyFieldConfig[] = [];\r\n tableFieldData: any[] = [];\r\n\r\n @Input()\r\n set config(value: any) {\r\n this._config = value;\r\n this.getPageData();\r\n }\r\n get config() {\r\n return this._config;\r\n }\r\n\r\n @Output() btnCloseEvent: EventEmitter<any> = new EventEmitter();\r\n\r\n @Output() btnSaveEvent: EventEmitter<any> = new EventEmitter();\r\n\r\n constructor(\r\n public http: _HttpClient, public msgSrv: NzMessageService\r\n ) {\r\n\r\n }\r\n\r\n getPageData() {\r\n new Promise((resolve: any) => {\r\n zip(\r\n this.http.post(`${ModuleAPI.paas}/apaas/table/field/listBySource`, {\r\n sourceId: this.config.sourceId,\r\n sourceType: this.config.sourceType\r\n })\r\n ).subscribe(\r\n ([a]) => {\r\n if (a.success && a.result!! && Array.isArray(a.result)) {\r\n this.tableFieldData = a.result.map((item: any) => {\r\n return {\r\n value: item.id,\r\n label: item.tableName + ' - ' + item.name,\r\n };\r\n });\r\n }\r\n\r\n if (this.config && this.config?.fieldId) {\r\n this.model[\"fieldId\"] = this.config.fieldId;\r\n }\r\n\r\n this.getFieldConfig();\r\n this.loading = false;\r\n },\r\n () => { },\r\n () => {\r\n resolve();\r\n },\r\n );\r\n });\r\n }\r\n\r\n getFieldConfig() {\r\n let config: FormlyFieldConfig[] = [\r\n {\r\n type: 'select',\r\n key: 'fieldId',\r\n props: {\r\n label: '表字段',\r\n required: true,\r\n options: this.tableFieldData,\r\n },\r\n },\r\n ];\r\n this.fields = config;\r\n }\r\n\r\n btnSave() {\r\n this.btnSaveAfter(this.model);\r\n }\r\n\r\n\r\n /**\r\n * 取消-关闭\r\n */\r\n btnClose() {\r\n this.btnCloseEvent.emit({\r\n type: \"close\",\r\n data: null\r\n });\r\n }\r\n\r\n btnSaveAfter(e: any) {\r\n this.btnSaveEvent.emit({\r\n type: \"save\",\r\n data: e\r\n });\r\n }\r\n\r\n}\r\n","import { Component, SimpleChanges } from '@angular/core';\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\r\nimport { _HttpClient } from '@delon/theme';\r\nimport { FormlyModule } from '@ebuilding-form/core';\r\nimport { NzSpinModule } from 'ng-zorro-antd/spin';\r\nimport { NzEmptyModule } from 'ng-zorro-antd/empty';\r\nimport { NzButtonModule } from 'ng-zorro-antd/button';\r\nimport { NzMessageService } from 'ng-zorro-antd/message';\r\n\r\nimport { NzDrawerRef } from '@ebuilding/base/components/drawer';\r\n\r\nimport { BasicService } from \"../basic\";\r\n\r\n@Component({\r\n selector: 'source-field-select',\r\n templateUrl: './index.html',\r\n styleUrls: ['./index.less'],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n FormlyModule,\r\n NzSpinModule,\r\n NzEmptyModule,\r\n NzButtonModule\r\n ]\r\n})\r\nexport class SourceFieldSelectComponent extends BasicService {\r\n\r\n constructor(\r\n public override http: _HttpClient,\r\n public override msgSrv: NzMessageService,\r\n public drawerRef: NzDrawerRef<any>\r\n ) {\r\n super(http, msgSrv);\r\n }\r\n\r\n ngOnInit(): void { }\r\n\r\n ngOnDestroy() { }\r\n\r\n ngOnChanges(changes: SimpleChanges): void { }\r\n\r\n\r\n /**\r\n * 保存\r\n * @param e \r\n */\r\n override btnSaveAfter(e: any) {\r\n this.drawerRef.close({\r\n type: 'save',\r\n data: e,\r\n });\r\n }\r\n\r\n /**\r\n * 取消\r\n */\r\n override btnClose() {\r\n this.drawerRef.close({\r\n type: 'close',\r\n data: null,\r\n });\r\n }\r\n\r\n} ","<form [formGroup]=\"form\" (ngSubmit)=\"btnSave()\" #defaultForm>\r\n <nz-spin [nzSpinning]=\"loading\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\r\n <div class=\"deon-from\">\r\n <ng-container *ngIf=\"fields && fields.length > 0; else emptyPage\">\r\n <formly-form [model]=\"model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\r\n </ng-container>\r\n <ng-template #emptyPage>\r\n <nz-empty *ngIf=\"loading !== true\"></nz-empty>\r\n </ng-template>\r\n </div>\r\n <div class=\"deon-button\">\r\n <button nz-button nzType=\"default\" (click)=\"btnClose()\" type=\"button\"><i nz-icon nzType=\"close\"></i>取消</button>\r\n <button nz-button nzType=\"primary\" id=\"SAVE\"><i nz-icon nzType=\"save\"></i>保存</button>\r\n </div>\r\n </nz-spin>\r\n</form>","import { NgModule } from '@angular/core';\r\nimport { SourceFieldSelectComponent } from './default/index';\r\n\r\nconst components: any[] = [SourceFieldSelectComponent];\r\n\r\n@NgModule({\r\n imports: [...components],\r\n exports: [...components]\r\n})\r\nexport class SourceFieldSelectModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}