imm-element-ui 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -0
- package/esm2022/imm-element-ui.mjs +5 -0
- package/esm2022/lib/am/am.component.mjs +502 -0
- package/esm2022/lib/crumb-action/crumb-action.component.mjs +127 -0
- package/esm2022/lib/form/form/form.component.mjs +217 -0
- package/esm2022/lib/form/form-field/field-control.mjs +19 -0
- package/esm2022/lib/form/form-field/field-utils.mjs +227 -0
- package/esm2022/lib/form/form-field/form-field.mjs +129 -0
- package/esm2022/lib/form/form-field/form-type.mjs +123 -0
- package/esm2022/lib/form/form-field/label.directive.mjs +62 -0
- package/esm2022/lib/form/form-type/autocomplete.type.mjs +200 -0
- package/esm2022/lib/form/form-type/codemirror.type.mjs +167 -0
- package/esm2022/lib/form/form-type/datepicker.type.mjs +212 -0
- package/esm2022/lib/form/form-type/image.type.mjs +225 -0
- package/esm2022/lib/form/form-type/inputnumber.type.mjs +144 -0
- package/esm2022/lib/form/form-type/inputtext.type.mjs +69 -0
- package/esm2022/lib/form/form-type/multiselect.type.mjs +219 -0
- package/esm2022/lib/form/form-type/radio.type.mjs +167 -0
- package/esm2022/lib/form/form-type/select.type.mjs +196 -0
- package/esm2022/lib/form/form-type/textarea.type.mjs +75 -0
- package/esm2022/lib/form/form-type/treeselect.type.mjs +174 -0
- package/esm2022/lib/form/form-type/upload.type.mjs +228 -0
- package/esm2022/lib/grid/actions/actions.component.mjs +30 -0
- package/esm2022/lib/grid/cell-edit/cell-edit-autoComplete.component.mjs +89 -0
- package/esm2022/lib/grid/cell-edit/cell-edit-datePicker.compoent.mjs +182 -0
- package/esm2022/lib/grid/cell-edit/cell-edit-inputNumber.component.mjs +107 -0
- package/esm2022/lib/grid/cell-edit/cell-edit-inputText.compoent.mjs +46 -0
- package/esm2022/lib/grid/cell-edit/cell-edit-select.component.mjs +148 -0
- package/esm2022/lib/grid/cell-edit/index.mjs +7 -0
- package/esm2022/lib/grid/cell-render/async-renderer.mjs +29 -0
- package/esm2022/lib/grid/cell-render/link-render.mjs +42 -0
- package/esm2022/lib/grid/grid/grid.component.mjs +373 -0
- package/esm2022/lib/grid/grid-utils.mjs +103 -0
- package/esm2022/lib/grid/mock-data.mjs +14 -0
- package/esm2022/lib/grid/pager/pager.component.mjs +19 -0
- package/esm2022/lib/head/head.component.mjs +43 -0
- package/esm2022/lib/import/import.component.mjs +68 -0
- package/esm2022/lib/log/log.component.mjs +37 -0
- package/esm2022/lib/page-form/page-form.component.mjs +167 -0
- package/esm2022/lib/page-form/page-form.interface.mjs +2 -0
- package/esm2022/lib/page-grid-list/page-grid-list.component.mjs +60 -0
- package/esm2022/lib/row-selector/row-selector.component.mjs +58 -0
- package/esm2022/lib/search/mock-data.mjs +40 -0
- package/esm2022/lib/search/pop-date/pop-date.component.mjs +106 -0
- package/esm2022/lib/search/pop-list/pop-list.component.mjs +32 -0
- package/esm2022/lib/search/pop-panel/pop-panel.component.mjs +44 -0
- package/esm2022/lib/search/pop-select/pop-select.component.mjs +45 -0
- package/esm2022/lib/search/pop-self/pop-self.component.mjs +132 -0
- package/esm2022/lib/search/pop-tree/pop-tree.component.mjs +50 -0
- package/esm2022/lib/search/search/search.component.mjs +138 -0
- package/esm2022/lib/search/search-tip/search-tip.component.mjs +54 -0
- package/esm2022/lib/search/search-utils.mjs +165 -0
- package/esm2022/lib/search/text-panel/text-panel.component.mjs +41 -0
- package/esm2022/lib/service/action.service.mjs +115 -0
- package/esm2022/lib/service/i18n.service.mjs +79 -0
- package/esm2022/lib/service/themeConfig.service.mjs +82 -0
- package/esm2022/lib/service/userHistory.service.mjs +106 -0
- package/esm2022/lib/share/utils.mjs +150 -0
- package/esm2022/lib/steps/steps.component.mjs +31 -0
- package/esm2022/lib/theme-config/theme-config-panel.compoent.mjs +141 -0
- package/esm2022/lib/theme-config/theme-config.compoent.mjs +45 -0
- package/esm2022/public-api.mjs +26 -0
- package/fesm2022/imm-element-ui.mjs +6382 -0
- package/fesm2022/imm-element-ui.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/am/am.component.d.ts +191 -0
- package/lib/crumb-action/crumb-action.component.d.ts +40 -0
- package/lib/form/form/form.component.d.ts +53 -0
- package/lib/form/form-field/field-control.d.ts +13 -0
- package/lib/form/form-field/field-utils.d.ts +12 -0
- package/lib/form/form-field/form-field.d.ts +86 -0
- package/lib/form/form-field/form-type.d.ts +22 -0
- package/lib/form/form-field/label.directive.d.ts +14 -0
- package/lib/form/form-type/autocomplete.type.d.ts +77 -0
- package/lib/form/form-type/codemirror.type.d.ts +31 -0
- package/lib/form/form-type/datepicker.type.d.ts +83 -0
- package/lib/form/form-type/image.type.d.ts +49 -0
- package/lib/form/form-type/inputnumber.type.d.ts +49 -0
- package/lib/form/form-type/inputtext.type.d.ts +17 -0
- package/lib/form/form-type/multiselect.type.d.ts +85 -0
- package/lib/form/form-type/radio.type.d.ts +31 -0
- package/lib/form/form-type/select.type.d.ts +73 -0
- package/lib/form/form-type/textarea.type.d.ts +19 -0
- package/lib/form/form-type/treeselect.type.d.ts +62 -0
- package/lib/form/form-type/upload.type.d.ts +51 -0
- package/lib/grid/actions/actions.component.d.ts +14 -0
- package/lib/grid/cell-edit/cell-edit-autoComplete.component.d.ts +18 -0
- package/lib/grid/cell-edit/cell-edit-datePicker.compoent.d.ts +16 -0
- package/lib/grid/cell-edit/cell-edit-inputNumber.component.d.ts +15 -0
- package/lib/grid/cell-edit/cell-edit-inputText.compoent.d.ts +16 -0
- package/lib/grid/cell-edit/cell-edit-select.component.d.ts +12 -0
- package/lib/grid/cell-edit/index.d.ts +6 -0
- package/lib/grid/cell-render/async-renderer.d.ts +10 -0
- package/lib/grid/cell-render/link-render.d.ts +14 -0
- package/lib/grid/grid/grid.component.d.ts +272 -0
- package/lib/grid/grid-utils.d.ts +751 -0
- package/lib/grid/mock-data.d.ts +12 -0
- package/lib/grid/pager/pager.component.d.ts +15 -0
- package/lib/head/head.component.d.ts +17 -0
- package/lib/import/import.component.d.ts +22 -0
- package/lib/log/log.component.d.ts +14 -0
- package/lib/page-form/page-form.component.d.ts +46 -0
- package/lib/page-form/page-form.interface.d.ts +27 -0
- package/lib/page-grid-list/page-grid-list.component.d.ts +18 -0
- package/lib/row-selector/row-selector.component.d.ts +21 -0
- package/lib/search/mock-data.d.ts +20 -0
- package/lib/search/pop-date/pop-date.component.d.ts +26 -0
- package/lib/search/pop-list/pop-list.component.d.ts +12 -0
- package/lib/search/pop-panel/pop-panel.component.d.ts +15 -0
- package/lib/search/pop-select/pop-select.component.d.ts +13 -0
- package/lib/search/pop-self/pop-self.component.d.ts +31 -0
- package/lib/search/pop-tree/pop-tree.component.d.ts +22 -0
- package/lib/search/search/search.component.d.ts +60 -0
- package/lib/search/search-tip/search-tip.component.d.ts +22 -0
- package/lib/search/search-utils.d.ts +10 -0
- package/lib/search/text-panel/text-panel.component.d.ts +21 -0
- package/lib/service/action.service.d.ts +54 -0
- package/lib/service/i18n.service.d.ts +93 -0
- package/lib/service/themeConfig.service.d.ts +24 -0
- package/lib/service/userHistory.service.d.ts +26 -0
- package/lib/share/utils.d.ts +16 -0
- package/lib/steps/steps.component.d.ts +16 -0
- package/lib/theme-config/theme-config-panel.compoent.d.ts +78 -0
- package/lib/theme-config/theme-config.compoent.d.ts +6 -0
- package/package.json +28 -0
- package/public-api.d.ts +20 -0
- package/src/lib/crumb-action/crumb-action.component.scss +51 -0
- package/src/lib/form/form/form.component.scss +0 -0
- package/src/lib/grid/actions/actions.component.scss +0 -0
- package/src/lib/grid/grid/grid.component.scss +0 -0
- package/src/lib/grid/pager/pager.component.scss +13 -0
- package/src/lib/head/head.component.scss +3 -0
- package/src/lib/import/import.component.scss +10 -0
- package/src/lib/log/log.component.scss +21 -0
- package/src/lib/page-form/page-form.component.scss +14 -0
- package/src/lib/page-grid-list/page-grid-list.component.scss +14 -0
- package/src/lib/row-selector/row-selector.component.scss +1 -0
- package/src/lib/search/dynamic-search/dynamic-search.component.scss +70 -0
- package/src/lib/search/pop-date/pop-date.component.scss +47 -0
- package/src/lib/search/pop-list/pop-list.component.scss +23 -0
- package/src/lib/search/pop-panel/pop-panel.component.scss +49 -0
- package/src/lib/search/pop-select/pop-select.component.scss +29 -0
- package/src/lib/search/pop-self/pop-self.component.scss +60 -0
- package/src/lib/search/pop-tree/pop-tree.component.scss +34 -0
- package/src/lib/search/search/search.component.scss +70 -0
- package/src/lib/search/search-tip/search-tip.component.scss +47 -0
- package/src/lib/search/text-panel/text-panel.component.scss +16 -0
- package/src/lib/steps/steps.component.scss +52 -0
- package/src/lib/styles/styles.scss +232 -0
package/index.d.ts
ADDED
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
import { HttpClient } from '@angular/common/http';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { FormOptions } from '../form/form/form.component';
|
|
4
|
+
import { SearchOptions } from '../search/search/search.component';
|
|
5
|
+
import { MessageService } from 'primeng/api';
|
|
6
|
+
import { ActivatedRoute, Router } from '@angular/router';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export interface Param {
|
|
9
|
+
id?: number;
|
|
10
|
+
}
|
|
11
|
+
export interface TraceMessage {
|
|
12
|
+
id?: number;
|
|
13
|
+
pid?: number;
|
|
14
|
+
func?: string;
|
|
15
|
+
operator?: string;
|
|
16
|
+
content?: string;
|
|
17
|
+
subContent?: string;
|
|
18
|
+
createdAt?: string;
|
|
19
|
+
}
|
|
20
|
+
export interface ImportExcel {
|
|
21
|
+
modelName?: string;
|
|
22
|
+
orgId?: number;
|
|
23
|
+
orgName?: string;
|
|
24
|
+
orgIdFeild?: string;
|
|
25
|
+
orgNameFeild?: string;
|
|
26
|
+
}
|
|
27
|
+
export interface Upsert {
|
|
28
|
+
modelName?: string;
|
|
29
|
+
addData?: Record<string, any>;
|
|
30
|
+
updData?: Record<string, any>;
|
|
31
|
+
subsert?: SubUpsert[];
|
|
32
|
+
logModel?: string;
|
|
33
|
+
log?: TraceMessage;
|
|
34
|
+
}
|
|
35
|
+
export interface SubUpsert {
|
|
36
|
+
subModelName?: string;
|
|
37
|
+
fk?: string;
|
|
38
|
+
subData?: Record<string, any>[];
|
|
39
|
+
maptmp?: Map<number, any>;
|
|
40
|
+
logtmp?: Map<string, any>;
|
|
41
|
+
}
|
|
42
|
+
export interface Deal {
|
|
43
|
+
modelName?: string;
|
|
44
|
+
data?: any;
|
|
45
|
+
}
|
|
46
|
+
export interface Write {
|
|
47
|
+
modelName?: string;
|
|
48
|
+
data?: Record<string, any>;
|
|
49
|
+
logModel?: string;
|
|
50
|
+
log?: TraceMessage;
|
|
51
|
+
transaction?: boolean;
|
|
52
|
+
}
|
|
53
|
+
export interface Remove {
|
|
54
|
+
modelName?: string;
|
|
55
|
+
ids?: number[];
|
|
56
|
+
data?: any;
|
|
57
|
+
logModel?: string;
|
|
58
|
+
log?: TraceMessage;
|
|
59
|
+
transaction?: boolean;
|
|
60
|
+
}
|
|
61
|
+
export interface Get {
|
|
62
|
+
modelName?: string;
|
|
63
|
+
userCode?: string;
|
|
64
|
+
orgField?: string;
|
|
65
|
+
id?: number;
|
|
66
|
+
preloads?: string[];
|
|
67
|
+
fiterPreloads?: Preload[];
|
|
68
|
+
getLog?: boolean;
|
|
69
|
+
data?: any;
|
|
70
|
+
columnFilters?: ColumnFilter[];
|
|
71
|
+
foreignKey?: string;
|
|
72
|
+
[propName: string]: any;
|
|
73
|
+
}
|
|
74
|
+
export interface Preload {
|
|
75
|
+
feildName?: string;
|
|
76
|
+
fiters?: ColumnFilter[];
|
|
77
|
+
sorts?: Sort[];
|
|
78
|
+
}
|
|
79
|
+
export interface ColumnFilter {
|
|
80
|
+
columnField?: string;
|
|
81
|
+
type?: string;
|
|
82
|
+
fiter?: any;
|
|
83
|
+
from?: string | number;
|
|
84
|
+
to?: string | number;
|
|
85
|
+
}
|
|
86
|
+
export interface Sort {
|
|
87
|
+
field?: string;
|
|
88
|
+
isAsc?: boolean;
|
|
89
|
+
}
|
|
90
|
+
export interface Search {
|
|
91
|
+
modelName?: string;
|
|
92
|
+
userCode?: string;
|
|
93
|
+
orgField?: string;
|
|
94
|
+
count?: boolean;
|
|
95
|
+
preloads?: string[];
|
|
96
|
+
fiterPreloads?: Preload[];
|
|
97
|
+
model?: any;
|
|
98
|
+
data?: any;
|
|
99
|
+
columnFilters?: ColumnFilter[];
|
|
100
|
+
sorts?: Sort[];
|
|
101
|
+
groups?: string[];
|
|
102
|
+
read?: string[];
|
|
103
|
+
funcs?: Record<string, string>;
|
|
104
|
+
offset?: number;
|
|
105
|
+
limit?: number;
|
|
106
|
+
totalNum?: number;
|
|
107
|
+
}
|
|
108
|
+
export interface TokenInfo {
|
|
109
|
+
token?: string;
|
|
110
|
+
expired?: number;
|
|
111
|
+
}
|
|
112
|
+
export interface amWeb {
|
|
113
|
+
id?: number;
|
|
114
|
+
code?: string;
|
|
115
|
+
type?: string;
|
|
116
|
+
name?: string;
|
|
117
|
+
appId?: number;
|
|
118
|
+
content?: string;
|
|
119
|
+
createdAt?: string;
|
|
120
|
+
updatedAt?: string;
|
|
121
|
+
}
|
|
122
|
+
export interface Rfd {
|
|
123
|
+
modelName?: string;
|
|
124
|
+
labelField?: string;
|
|
125
|
+
valueField?: string;
|
|
126
|
+
whereField?: string;
|
|
127
|
+
type?: string;
|
|
128
|
+
fiter?: any;
|
|
129
|
+
data?: any;
|
|
130
|
+
}
|
|
131
|
+
export declare class AmComponent {
|
|
132
|
+
isLog: boolean;
|
|
133
|
+
id: number;
|
|
134
|
+
modelName: string;
|
|
135
|
+
param: Param;
|
|
136
|
+
fid: string;
|
|
137
|
+
importPrm: ImportExcel;
|
|
138
|
+
searchOptions: SearchOptions;
|
|
139
|
+
formOptions: FormOptions;
|
|
140
|
+
upsertPrm: Upsert;
|
|
141
|
+
dealPrm: Deal;
|
|
142
|
+
writePrm: Write;
|
|
143
|
+
removePrm: Remove;
|
|
144
|
+
getPrm: Get;
|
|
145
|
+
filter: ColumnFilter;
|
|
146
|
+
searchPrm: Search;
|
|
147
|
+
exportPrm: Search;
|
|
148
|
+
tamplate: Deal;
|
|
149
|
+
isLoading: import("@angular/core").WritableSignal<boolean>;
|
|
150
|
+
http: HttpClient;
|
|
151
|
+
messageService: MessageService;
|
|
152
|
+
route: ActivatedRoute;
|
|
153
|
+
router: Router;
|
|
154
|
+
constructor();
|
|
155
|
+
rfd(prm: Rfd): Observable<any>;
|
|
156
|
+
webget(param: amWeb): Observable<any>;
|
|
157
|
+
websave(param: amWeb): Observable<any>;
|
|
158
|
+
webdel(param: amWeb): Observable<any>;
|
|
159
|
+
upsert(prm?: any, cb?: Function): void;
|
|
160
|
+
web_upsert(param: Upsert): Observable<any>;
|
|
161
|
+
deal(prm?: Deal): void;
|
|
162
|
+
web_deal(param: Deal): Observable<any>;
|
|
163
|
+
write(prm?: Write): void;
|
|
164
|
+
web_write(param: Write): Observable<any>;
|
|
165
|
+
remove(prm?: Remove): void;
|
|
166
|
+
web_remove(param: Remove): Observable<any>;
|
|
167
|
+
get(prm?: Get): void;
|
|
168
|
+
web_get(param: Get): Observable<any>;
|
|
169
|
+
search(prm?: Search): void;
|
|
170
|
+
web_search(param: Search): Observable<any>;
|
|
171
|
+
searchmap(prm?: Search): void;
|
|
172
|
+
web_searchmap(param: Search): Observable<any>;
|
|
173
|
+
searchCount(prm?: Search): void;
|
|
174
|
+
web_searchCount(param: Search): Observable<any>;
|
|
175
|
+
export(prm?: Search): void;
|
|
176
|
+
web_export(param: Search): Observable<any>;
|
|
177
|
+
dealExport(prm?: Search): void;
|
|
178
|
+
web_deal_export(param: Search): Observable<any>;
|
|
179
|
+
downloadTemplate(prm?: Deal): void;
|
|
180
|
+
web_downloadTemplate(param: Deal): Observable<any>;
|
|
181
|
+
imageDelete(fid?: string): void;
|
|
182
|
+
web_imageDelete(fid: string): Observable<any>;
|
|
183
|
+
filerDelete(fid?: string): void;
|
|
184
|
+
web_filerDelete(fid: string): Observable<any>;
|
|
185
|
+
refreshToken(param: TokenInfo): Observable<any>;
|
|
186
|
+
createTable(prm?: Param): void;
|
|
187
|
+
web_createTable(param: Param): Observable<any>;
|
|
188
|
+
resetPrm(search?: string): void;
|
|
189
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AmComponent, never>;
|
|
190
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AmComponent, "app-am", never, {}, {}, never, never, true, never>;
|
|
191
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { OnInit, TemplateRef } from '@angular/core';
|
|
2
|
+
import { UserHistoryService, HistoryItem } from '../service/userHistory.service';
|
|
3
|
+
import { Router } from '@angular/router';
|
|
4
|
+
import { Popover } from 'primeng/popover';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export declare class CrumbActionComponent implements OnInit {
|
|
7
|
+
userHistoryService: UserHistoryService;
|
|
8
|
+
crumbList: import("@angular/core").Signal<HistoryItem[]>;
|
|
9
|
+
crumbTitle: import("@angular/core").WritableSignal<any>;
|
|
10
|
+
route: Router;
|
|
11
|
+
isNew: boolean;
|
|
12
|
+
isShowCog: import("@angular/core").InputSignal<boolean>;
|
|
13
|
+
crumbFront: HistoryItem[];
|
|
14
|
+
crumbEnd: HistoryItem[];
|
|
15
|
+
op: Popover;
|
|
16
|
+
listOp: Popover;
|
|
17
|
+
saveEvent: import("@angular/core").OutputEmitterRef<void>;
|
|
18
|
+
newUrl: import("@angular/core").InputSignal<string>;
|
|
19
|
+
outlined: import("@angular/core").InputSignal<boolean>;
|
|
20
|
+
isList: import("@angular/core").InputSignal<boolean>;
|
|
21
|
+
cancelEvent: import("@angular/core").OutputEmitterRef<void>;
|
|
22
|
+
newBtnTemplateRef: TemplateRef<any> | undefined;
|
|
23
|
+
listActEvent: import("@angular/core").OutputEmitterRef<string>;
|
|
24
|
+
listOpItems: {
|
|
25
|
+
label: string;
|
|
26
|
+
type: string;
|
|
27
|
+
icon: string;
|
|
28
|
+
}[];
|
|
29
|
+
constructor();
|
|
30
|
+
ngOnInit(): void;
|
|
31
|
+
goNew(): void;
|
|
32
|
+
closeNew(): void;
|
|
33
|
+
handleSave(): void;
|
|
34
|
+
back(item: any): void;
|
|
35
|
+
toggle(event: any): void;
|
|
36
|
+
toggleListOp(event: any): void;
|
|
37
|
+
listAct(name: string): void;
|
|
38
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CrumbActionComponent, never>;
|
|
39
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<CrumbActionComponent, "app-crumb-action", never, { "isShowCog": { "alias": "isShowCog"; "required": false; "isSignal": true; }; "newUrl": { "alias": "newUrl"; "required": false; "isSignal": true; }; "outlined": { "alias": "outlined"; "required": false; "isSignal": true; }; "isList": { "alias": "isList"; "required": false; "isSignal": true; }; }, { "saveEvent": "saveEvent"; "cancelEvent": "cancelEvent"; "listActEvent": "listActEvent"; }, ["newBtnTemplateRef"], never, true, never>;
|
|
40
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { QueryList, ElementRef, ChangeDetectorRef } from '@angular/core';
|
|
2
|
+
import { FormGroup } from '@angular/forms';
|
|
3
|
+
import { FormField, FormFieldComponent } from '../form-field/form-field';
|
|
4
|
+
import { DatePipe } from '@angular/common';
|
|
5
|
+
import { I18nService } from '../../service/i18n.service';
|
|
6
|
+
import { Upsert } from '../../am/am.component';
|
|
7
|
+
import { Router } from '@angular/router';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
export interface FormOptions {
|
|
10
|
+
fields?: FormField[];
|
|
11
|
+
form?: FormGroup;
|
|
12
|
+
mainField?: string;
|
|
13
|
+
labelWidth?: string;
|
|
14
|
+
interactiveLabel?: boolean;
|
|
15
|
+
extra?: any;
|
|
16
|
+
}
|
|
17
|
+
export declare class FormComponent {
|
|
18
|
+
private cdr;
|
|
19
|
+
private datePipe;
|
|
20
|
+
fieldComponents?: QueryList<FormFieldComponent>;
|
|
21
|
+
router: Router;
|
|
22
|
+
isNew: boolean;
|
|
23
|
+
options: import("@angular/core").InputSignal<FormOptions>;
|
|
24
|
+
fields: import("@angular/core").Signal<FormField[] | undefined>;
|
|
25
|
+
i18nService: I18nService;
|
|
26
|
+
model: import("@angular/core").InputSignal<any>;
|
|
27
|
+
upsert: import("@angular/core").InputSignal<Upsert | undefined>;
|
|
28
|
+
rawModel: any;
|
|
29
|
+
changedModel: any;
|
|
30
|
+
fieldList: FormField[];
|
|
31
|
+
hookObservers: Function[];
|
|
32
|
+
labelMinWidth: import("@angular/core").WritableSignal<string | undefined>;
|
|
33
|
+
onResize(): void;
|
|
34
|
+
constructor(cdr: ChangeDetectorRef, datePipe: DatePipe);
|
|
35
|
+
ngAfterViewInit(): void;
|
|
36
|
+
ngOnDestroy(): void;
|
|
37
|
+
initForm(): void;
|
|
38
|
+
getField(key: string): FormField | undefined;
|
|
39
|
+
parseFields(fields: FormField[]): void;
|
|
40
|
+
handleFieldControl(field: FormField): void;
|
|
41
|
+
handleValueChange(value: any, field: FormField): void;
|
|
42
|
+
handleUpsert(key: string, value: any): void;
|
|
43
|
+
handleHideExpression(): void;
|
|
44
|
+
validate(): boolean | undefined;
|
|
45
|
+
triggerHook(): void;
|
|
46
|
+
reCalcLabelSize(): void;
|
|
47
|
+
handleFieldLabels(): void;
|
|
48
|
+
getFieldLabels(fieldComponents: QueryList<FormFieldComponent> | undefined, fieldLabels: ElementRef[]): void;
|
|
49
|
+
triggerModelEffect(model: any): void;
|
|
50
|
+
finalize(): void;
|
|
51
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FormComponent, never>;
|
|
52
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FormComponent, "custom-form", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "model": { "alias": "model"; "required": false; "isSignal": true; }; "upsert": { "alias": "upsert"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
53
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { FormControl } from '@angular/forms';
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
export declare class FieldControl extends FormControl {
|
|
4
|
+
modelChange: BehaviorSubject<any>;
|
|
5
|
+
submitChange: BehaviorSubject<Boolean>;
|
|
6
|
+
setValue(value: any, options?: {
|
|
7
|
+
onlySelf?: boolean;
|
|
8
|
+
emitEvent?: boolean;
|
|
9
|
+
emitModelToViewChange?: boolean;
|
|
10
|
+
emitViewToModelChange?: boolean;
|
|
11
|
+
}, detectModelChange?: boolean): void;
|
|
12
|
+
afterSubmit(): void;
|
|
13
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { FormField, FieldProps } from './form-field';
|
|
2
|
+
import { DatePipe } from '@angular/common';
|
|
3
|
+
import { I18nService } from '../../service/i18n.service';
|
|
4
|
+
export declare const fieldUtils: {
|
|
5
|
+
props: (field: FormField) => FieldProps;
|
|
6
|
+
label: (field: FormField, i18nService: I18nService) => string | undefined;
|
|
7
|
+
triggerHookAndSetValue: (field: FormField, value: any, detectModelChange: boolean, hookObservers: any[], callback: any) => void;
|
|
8
|
+
fromFieldValue: (field: FormField, target: any, datePipe: DatePipe) => any;
|
|
9
|
+
toFieldValue: (field: FormField, raw: any) => any;
|
|
10
|
+
transLog: (rawModel: any, changedModel: any, mainValue: any, isNew: boolean) => string;
|
|
11
|
+
isFakedChange: (newValue: any, oldValue: any, field: FormField) => boolean;
|
|
12
|
+
};
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { ElementRef, QueryList, WritableSignal } from '@angular/core';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { InputTextProps, InputNumberProps, SelectProps, TreeSelectProps, DatePickerProps, AutoCompleteProps, MultiSelectProps, RadioProps, TextAreaProps, UploadProps, ImageProps, CodeMirrorProps } from './form-type';
|
|
4
|
+
import { FieldControl } from './field-control';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export interface FormField {
|
|
7
|
+
key?: string;
|
|
8
|
+
type?: 'inputtext' | 'inputnumber' | 'select' | 'treeselect' | 'datepicker' | 'autocomplete' | 'multiselect' | 'radio' | 'textarea' | 'upload' | 'image' | 'codemirror';
|
|
9
|
+
default?: any;
|
|
10
|
+
id?: string;
|
|
11
|
+
name?: string;
|
|
12
|
+
group?: FormField[];
|
|
13
|
+
groupClass?: string;
|
|
14
|
+
class?: string;
|
|
15
|
+
innerClass?: string;
|
|
16
|
+
fieldControl?: FieldControl;
|
|
17
|
+
inputTextProps?: InputTextProps;
|
|
18
|
+
inputNumberProps?: InputNumberProps;
|
|
19
|
+
selectProps?: SelectProps;
|
|
20
|
+
treeSelectProps?: TreeSelectProps;
|
|
21
|
+
datePickerProps?: DatePickerProps;
|
|
22
|
+
autoCompleteProps?: AutoCompleteProps;
|
|
23
|
+
multiSelectProps?: MultiSelectProps;
|
|
24
|
+
radioProps?: RadioProps;
|
|
25
|
+
textAreaProps?: TextAreaProps;
|
|
26
|
+
uploadProps?: UploadProps;
|
|
27
|
+
imageProps?: ImageProps;
|
|
28
|
+
codeMirrorProps?: CodeMirrorProps;
|
|
29
|
+
hide?: boolean;
|
|
30
|
+
hideExpression?: (model: any, field?: FormField) => boolean;
|
|
31
|
+
hook?: Observable<(field?: FormField) => void>;
|
|
32
|
+
validators?: any;
|
|
33
|
+
invalid?: boolean;
|
|
34
|
+
extra?: any;
|
|
35
|
+
uuid?: string;
|
|
36
|
+
labelMinWidth?: WritableSignal<string | undefined>;
|
|
37
|
+
interactiveLabel?: boolean;
|
|
38
|
+
form?: any;
|
|
39
|
+
}
|
|
40
|
+
export interface FieldProps {
|
|
41
|
+
type?: string;
|
|
42
|
+
label?: string;
|
|
43
|
+
i18nKey?: string;
|
|
44
|
+
labelClass?: string;
|
|
45
|
+
labelVariant?: 'in' | 'over' | 'on';
|
|
46
|
+
variant?: any;
|
|
47
|
+
class?: string;
|
|
48
|
+
name?: string;
|
|
49
|
+
placeholder?: string;
|
|
50
|
+
disabled?: boolean;
|
|
51
|
+
hidden?: boolean;
|
|
52
|
+
required?: boolean;
|
|
53
|
+
size?: any;
|
|
54
|
+
styleClass?: string;
|
|
55
|
+
style?: any;
|
|
56
|
+
autofocus?: boolean;
|
|
57
|
+
min?: number;
|
|
58
|
+
max?: number;
|
|
59
|
+
inputStyle?: any;
|
|
60
|
+
inputStyleClass?: string;
|
|
61
|
+
fluid?: boolean;
|
|
62
|
+
ariaLabel?: string;
|
|
63
|
+
ariaLabelledBy?: string;
|
|
64
|
+
focus?: FocusEvent;
|
|
65
|
+
blur?: FocusEvent;
|
|
66
|
+
keyup?: KeyboardEvent;
|
|
67
|
+
keydown?: KeyboardEvent;
|
|
68
|
+
click?: MouseEvent;
|
|
69
|
+
input?: Event;
|
|
70
|
+
change?: Event;
|
|
71
|
+
keypress?: KeyboardEvent;
|
|
72
|
+
}
|
|
73
|
+
export declare type AttributeEvent = (field: FormField, event?: any) => void;
|
|
74
|
+
export declare class FormFieldComponent {
|
|
75
|
+
fieldComponents?: QueryList<FormFieldComponent>;
|
|
76
|
+
fieldLabel?: ElementRef;
|
|
77
|
+
field: import("@angular/core").InputSignal<FormField | undefined>;
|
|
78
|
+
props: (field: FormField) => FieldProps;
|
|
79
|
+
constructor();
|
|
80
|
+
ngOnInit(): void;
|
|
81
|
+
labelClass(): string;
|
|
82
|
+
getFieldComponents(): QueryList<FormFieldComponent> | undefined;
|
|
83
|
+
getFieldLabel(): ElementRef<any> | undefined;
|
|
84
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FormFieldComponent, never>;
|
|
85
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FormFieldComponent, "form-field", never, { "field": { "alias": "field"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
86
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { FormField } from './form-field';
|
|
2
|
+
import { InputTextProps } from '../form-type/inputtext.type';
|
|
3
|
+
import { InputNumberProps } from '../form-type/inputnumber.type';
|
|
4
|
+
import { SelectProps } from '../form-type/select.type';
|
|
5
|
+
import { TreeSelectProps } from '../form-type/treeselect.type';
|
|
6
|
+
import { DatePickerProps } from '../form-type/datepicker.type';
|
|
7
|
+
import { AutoCompleteProps } from '../form-type/autocomplete.type';
|
|
8
|
+
import { MultiSelectProps } from '../form-type/multiselect.type';
|
|
9
|
+
import { RadioProps } from '../form-type/radio.type';
|
|
10
|
+
import { TextAreaProps } from '../form-type/textarea.type';
|
|
11
|
+
import { UploadProps } from '../form-type/upload.type';
|
|
12
|
+
import { ImageProps } from '../form-type/image.type';
|
|
13
|
+
import { CodeMirrorProps } from '../form-type/codemirror.type';
|
|
14
|
+
import * as i0 from "@angular/core";
|
|
15
|
+
export { InputTextProps, InputNumberProps, SelectProps, TreeSelectProps, DatePickerProps, AutoCompleteProps, MultiSelectProps, RadioProps, TextAreaProps, UploadProps, ImageProps, CodeMirrorProps, };
|
|
16
|
+
export declare class FormTypeComponent {
|
|
17
|
+
field: import("@angular/core").InputSignal<FormField | undefined>;
|
|
18
|
+
constructor();
|
|
19
|
+
ngOnInit(): void;
|
|
20
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FormTypeComponent, never>;
|
|
21
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FormTypeComponent, "form-type", never, { "field": { "alias": "field"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
22
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ActionService } from '../../service/action.service';
|
|
2
|
+
import { FormField } from './form-field';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class LabelDirective {
|
|
5
|
+
private action;
|
|
6
|
+
fieldLabel: import("@angular/core").InputSignal<FormField | undefined>;
|
|
7
|
+
constructor(action: ActionService);
|
|
8
|
+
onMouseEnter(): void;
|
|
9
|
+
onMouseLeave(): void;
|
|
10
|
+
onClick(): void;
|
|
11
|
+
onDoubleClick(): void;
|
|
12
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<LabelDirective, never>;
|
|
13
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<LabelDirective, "[fieldLabel]", never, { "fieldLabel": { "alias": "fieldLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { ElementRef, Renderer2 } from '@angular/core';
|
|
2
|
+
import { FormField, FieldProps, AttributeEvent } from '../form-field/form-field';
|
|
3
|
+
import { ScrollerOptions, OverlayOptions } from 'primeng/api';
|
|
4
|
+
import { ActionService } from '../../service/action.service';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export interface AutoCompleteProps extends FieldProps {
|
|
7
|
+
scrollHeight?: string;
|
|
8
|
+
minLength?: number;
|
|
9
|
+
delay?: number;
|
|
10
|
+
panelStyle?: any;
|
|
11
|
+
panelStyleClass?: string;
|
|
12
|
+
autoHighlight?: boolean;
|
|
13
|
+
forceSelection?: boolean;
|
|
14
|
+
type?: string;
|
|
15
|
+
autoZIndex?: boolean;
|
|
16
|
+
baseZIndex?: number;
|
|
17
|
+
dropdownAriaLabel?: string;
|
|
18
|
+
unique?: boolean;
|
|
19
|
+
completeOnFocus?: boolean;
|
|
20
|
+
dropdown?: boolean;
|
|
21
|
+
showEmptyMessage?: boolean;
|
|
22
|
+
dropdownMode?: string;
|
|
23
|
+
multiple?: boolean;
|
|
24
|
+
showTransitionOptions?: string;
|
|
25
|
+
hideTransitionOptions?: string;
|
|
26
|
+
autocomplete?: string;
|
|
27
|
+
optionGroupChildren?: string;
|
|
28
|
+
optionGroupLabel?: string;
|
|
29
|
+
suggestions?: any[];
|
|
30
|
+
optionLabel?: string | ((item: any) => string);
|
|
31
|
+
optionValue?: string | ((item: any) => string);
|
|
32
|
+
searchMessage?: string;
|
|
33
|
+
emptySelectionMessage?: string;
|
|
34
|
+
selectionMessage?: string;
|
|
35
|
+
autoOptionFocus?: boolean;
|
|
36
|
+
selectOnFocus?: boolean;
|
|
37
|
+
searchLocale?: boolean;
|
|
38
|
+
optionDisabled?: string;
|
|
39
|
+
focusOnHover?: boolean;
|
|
40
|
+
typeahead?: boolean;
|
|
41
|
+
readonly?: boolean;
|
|
42
|
+
appendTo?: any;
|
|
43
|
+
tabindex?: number;
|
|
44
|
+
dataKey?: string;
|
|
45
|
+
dropdownIcon?: string;
|
|
46
|
+
group?: boolean;
|
|
47
|
+
showClear?: boolean;
|
|
48
|
+
emptyMessage?: any;
|
|
49
|
+
lazy?: boolean;
|
|
50
|
+
virtualScroll?: boolean;
|
|
51
|
+
virtualScrollItemSize?: number;
|
|
52
|
+
virtualScrollOptions?: ScrollerOptions;
|
|
53
|
+
overlayOptions?: OverlayOptions;
|
|
54
|
+
maxlength?: any;
|
|
55
|
+
completeMethod?: AttributeEvent;
|
|
56
|
+
onSelect?: AttributeEvent;
|
|
57
|
+
onUnselect?: AttributeEvent;
|
|
58
|
+
onFocus?: AttributeEvent;
|
|
59
|
+
onBlur?: AttributeEvent;
|
|
60
|
+
onDropdownClick?: AttributeEvent;
|
|
61
|
+
onClear?: AttributeEvent;
|
|
62
|
+
onKeyUp?: AttributeEvent;
|
|
63
|
+
onShow?: AttributeEvent;
|
|
64
|
+
onHide?: AttributeEvent;
|
|
65
|
+
onLazyLoad?: AttributeEvent;
|
|
66
|
+
}
|
|
67
|
+
export declare class AutoCompleteComponent {
|
|
68
|
+
private action;
|
|
69
|
+
private renderer;
|
|
70
|
+
autoCompleteRef: ElementRef;
|
|
71
|
+
field: import("@angular/core").InputSignal<FormField | undefined>;
|
|
72
|
+
props: AutoCompleteProps;
|
|
73
|
+
constructor(action: ActionService, renderer: Renderer2);
|
|
74
|
+
handleDisabled(): void;
|
|
75
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AutoCompleteComponent, never>;
|
|
76
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AutoCompleteComponent, "form-autocomplete", never, { "field": { "alias": "field"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
77
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { ElementRef, Renderer2 } from '@angular/core';
|
|
2
|
+
import { FormField, FieldProps } from '../form-field/form-field';
|
|
3
|
+
import { EditorView } from '@codemirror/view';
|
|
4
|
+
import { ActionService } from '../../service/action.service';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export interface CodeMirrorProps extends FieldProps {
|
|
7
|
+
language?: 'html' | 'javascript' | 'json';
|
|
8
|
+
maxHeight?: string;
|
|
9
|
+
minHeight?: string;
|
|
10
|
+
placeholder?: string;
|
|
11
|
+
templates?: string[];
|
|
12
|
+
}
|
|
13
|
+
export declare class CodeMirrorComponent {
|
|
14
|
+
private action;
|
|
15
|
+
private renderer;
|
|
16
|
+
codeContainer: ElementRef;
|
|
17
|
+
cmEditor: ElementRef;
|
|
18
|
+
field: import("@angular/core").InputSignal<FormField | undefined>;
|
|
19
|
+
props: CodeMirrorProps;
|
|
20
|
+
editorView: EditorView;
|
|
21
|
+
templateIndex: number;
|
|
22
|
+
constructor(action: ActionService, renderer: Renderer2);
|
|
23
|
+
ngAfterViewInit(): void;
|
|
24
|
+
ngOnDestroy(): void;
|
|
25
|
+
handleExtensions(): void;
|
|
26
|
+
handleModelChange(): void;
|
|
27
|
+
getLanguageExtension(): import("@codemirror/language").LanguageSupport;
|
|
28
|
+
minLines(min: number): import("@codemirror/state").Extension;
|
|
29
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CodeMirrorComponent, never>;
|
|
30
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<CodeMirrorComponent, "form-codemirror", never, { "field": { "alias": "field"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
31
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { ElementRef, Renderer2 } from '@angular/core';
|
|
2
|
+
import { DatePicker } from 'primeng/datepicker';
|
|
3
|
+
import { FormField, FieldProps, AttributeEvent } from '../form-field/form-field';
|
|
4
|
+
import { ActionService } from '../../service/action.service';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export interface DatePickerProps extends FieldProps {
|
|
7
|
+
fluid?: boolean;
|
|
8
|
+
iconAriaLabel?: string;
|
|
9
|
+
dateFormat?: string;
|
|
10
|
+
multipleSeparator?: string;
|
|
11
|
+
rangeSeparator?: string;
|
|
12
|
+
inline?: boolean;
|
|
13
|
+
showOtherMonths?: boolean;
|
|
14
|
+
selectOtherMonths?: boolean;
|
|
15
|
+
showIcon?: boolean;
|
|
16
|
+
icon?: string;
|
|
17
|
+
appendTo?: any;
|
|
18
|
+
readonlyInput?: boolean;
|
|
19
|
+
shortYearCutoff?: any;
|
|
20
|
+
hourFormat?: string;
|
|
21
|
+
timeOnly?: boolean;
|
|
22
|
+
stepHour?: number;
|
|
23
|
+
stepMinute?: number;
|
|
24
|
+
stepSecond?: number;
|
|
25
|
+
showSeconds?: boolean;
|
|
26
|
+
showOnFocus?: boolean;
|
|
27
|
+
showWeek?: boolean;
|
|
28
|
+
startWeekFromFirstDayOfYear?: boolean;
|
|
29
|
+
showClear?: boolean;
|
|
30
|
+
dataType?: string;
|
|
31
|
+
selectionMode?: 'range' | 'single' | 'multiple';
|
|
32
|
+
maxDateCount?: number;
|
|
33
|
+
showButtonBar?: boolean;
|
|
34
|
+
todayButtonStyleClass?: string;
|
|
35
|
+
clearButtonStyleClass?: string;
|
|
36
|
+
baseZIndex?: number;
|
|
37
|
+
panelStyleClass?: string;
|
|
38
|
+
panelStyle?: any;
|
|
39
|
+
keepInvalid?: boolean;
|
|
40
|
+
hideOnDateTimeSelect?: boolean;
|
|
41
|
+
touchUI?: boolean;
|
|
42
|
+
timeSeparator?: string;
|
|
43
|
+
focusTrap?: boolean;
|
|
44
|
+
showTransitionOptions?: string;
|
|
45
|
+
hideTransitionOptions?: string;
|
|
46
|
+
minDate?: Date;
|
|
47
|
+
maxDate?: Date;
|
|
48
|
+
disabledDates?: Date[];
|
|
49
|
+
disabledDays?: number[];
|
|
50
|
+
showTime?: boolean;
|
|
51
|
+
responsiveOptions?: any[];
|
|
52
|
+
numberOfMonths?: number;
|
|
53
|
+
firstDayOfWeek?: number;
|
|
54
|
+
view?: any;
|
|
55
|
+
defaultDate?: Date;
|
|
56
|
+
tabindex?: number;
|
|
57
|
+
autoZIndex?: boolean;
|
|
58
|
+
onInput?: AttributeEvent;
|
|
59
|
+
onFocus?: AttributeEvent;
|
|
60
|
+
onBlur?: AttributeEvent;
|
|
61
|
+
onClose?: AttributeEvent;
|
|
62
|
+
onSelect?: AttributeEvent;
|
|
63
|
+
onClear?: AttributeEvent;
|
|
64
|
+
onTodayClick?: AttributeEvent;
|
|
65
|
+
onClearClick?: AttributeEvent;
|
|
66
|
+
onMonthChange?: AttributeEvent;
|
|
67
|
+
onYearChange?: AttributeEvent;
|
|
68
|
+
onClickOutside?: AttributeEvent;
|
|
69
|
+
onShow?: AttributeEvent;
|
|
70
|
+
}
|
|
71
|
+
export declare class DatePickerComponent {
|
|
72
|
+
private action;
|
|
73
|
+
private renderer;
|
|
74
|
+
datePicker: DatePicker;
|
|
75
|
+
datePickerRef: ElementRef;
|
|
76
|
+
field: import("@angular/core").InputSignal<FormField | undefined>;
|
|
77
|
+
props: DatePickerProps;
|
|
78
|
+
constructor(action: ActionService, renderer: Renderer2);
|
|
79
|
+
ngOnInit(): void;
|
|
80
|
+
handleDisabled(): void;
|
|
81
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DatePickerComponent, never>;
|
|
82
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DatePickerComponent, "form-datepicker", never, { "field": { "alias": "field"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
83
|
+
}
|