keevo-components 1.5.135 → 1.5.137
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/esm2020/lib/api/base-components/base-component-crud-form.mjs +278 -0
- package/esm2020/lib/api/base-components/base-component-crud-list.mjs +67 -0
- package/esm2020/lib/api/base-components/base-component-crud.mjs +65 -0
- package/esm2020/lib/api/services/form.service.mjs +102 -0
- package/esm2020/lib/buttons/button-personalize/button-personalize.component.mjs +3 -3
- package/esm2020/lib/inputs/check/check.component.mjs +3 -9
- package/esm2020/lib/table/table.component.mjs +2 -2
- package/esm2020/lib/tree-table/kv-treetable.component.mjs +3 -3
- package/esm2020/public-api.mjs +4 -1
- package/fesm2015/keevo-components.mjs +598 -105
- package/fesm2015/keevo-components.mjs.map +1 -1
- package/fesm2020/keevo-components.mjs +595 -113
- package/fesm2020/keevo-components.mjs.map +1 -1
- package/lib/api/base-components/base-component-crud-form.d.ts +134 -0
- package/lib/api/base-components/base-component-crud-list.d.ts +63 -0
- package/lib/api/base-components/base-component-crud.d.ts +36 -0
- package/lib/api/services/form.service.d.ts +27 -0
- package/lib/inputs/check/check.component.d.ts +1 -3
- package/package.json +1 -1
- package/public-api.d.ts +3 -0
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
import { Component } from "@angular/core";
|
|
2
|
+
import { FormGroup } from "@angular/forms";
|
|
3
|
+
import { combineLatest, filter, finalize } from "rxjs";
|
|
4
|
+
import { BaseComponentCrud } from "./base-component-crud";
|
|
5
|
+
import { FormService } from "../services/form.service";
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "primeng/dynamicdialog";
|
|
8
|
+
import * as i2 from "../services/notification.service";
|
|
9
|
+
import * as i3 from "@angular/router";
|
|
10
|
+
export class BaseComponentCrudForm extends BaseComponentCrud {
|
|
11
|
+
constructor(dialogService, notificationService, activatedRoute, dynamicDialogRef, dynamicDialogConfig, router) {
|
|
12
|
+
super(dialogService, notificationService);
|
|
13
|
+
this.activatedRoute = activatedRoute;
|
|
14
|
+
this.dynamicDialogRef = dynamicDialogRef;
|
|
15
|
+
this.dynamicDialogConfig = dynamicDialogConfig;
|
|
16
|
+
this.router = router;
|
|
17
|
+
this.isAccordionExpanded = false;
|
|
18
|
+
this.isNewRegistry = false;
|
|
19
|
+
this.isSaveLoading = false;
|
|
20
|
+
this.isView = false;
|
|
21
|
+
this.formGroup = new FormGroup({});
|
|
22
|
+
this.actions = [];
|
|
23
|
+
this.popup = false;
|
|
24
|
+
this.registry = null;
|
|
25
|
+
this.onSetFormValues = false;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Método disparado para tratamento das notificações do backend
|
|
29
|
+
* @param err - Notificação
|
|
30
|
+
*/
|
|
31
|
+
backendError(err) {
|
|
32
|
+
if (err) {
|
|
33
|
+
if (err.status == 404) {
|
|
34
|
+
this.notificationService.toastError(err.error.item2[0].message);
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
else if (err.status == 400) {
|
|
38
|
+
// Erros de validação de domínio do backend
|
|
39
|
+
if (Array.isArray(err.error)) {
|
|
40
|
+
if (err.error?.length) {
|
|
41
|
+
if (err.error.length == 1 && err.error[0].key == '') {
|
|
42
|
+
this.notificationService.toastError(err.error[0].message);
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
this.invalidForm(err.error);
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
else if (err.error?.title) {
|
|
50
|
+
// Erro de json no backend
|
|
51
|
+
this.notificationService.toastError(err.error.title);
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
else if (err.status == 415) {
|
|
56
|
+
if (err.error?.title) {
|
|
57
|
+
// Erro de json no backend
|
|
58
|
+
this.notificationService.toastError(err.error.title);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
// Qualquer outro tipo de erro que tenha mensagem
|
|
63
|
+
if (err.message) {
|
|
64
|
+
this.notificationService.toastError(err.message);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Método disparado ao clicar no botão de cancelamento
|
|
70
|
+
*/
|
|
71
|
+
cancel() {
|
|
72
|
+
this.notificationService.question({
|
|
73
|
+
type: 'question',
|
|
74
|
+
message: 'Deseja cancelar a operação?',
|
|
75
|
+
accept: () => {
|
|
76
|
+
this.navigateList();
|
|
77
|
+
},
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Verifica se houveram alterações nos componentes do formControl
|
|
82
|
+
* @param controls - Nomes do controles no formGroup
|
|
83
|
+
* @returns Observable
|
|
84
|
+
*/
|
|
85
|
+
detectFormControlChanges(controls) {
|
|
86
|
+
const controlList = [];
|
|
87
|
+
controls.forEach(controlName => controlList.push(this.formGroup.controls[controlName].valueChanges));
|
|
88
|
+
return combineLatest(controlList).pipe(filter(() => !this.onSetFormValues));
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Método responsável por desabilitar um componente
|
|
92
|
+
* @param controlName - Nome do controle no formGroup
|
|
93
|
+
*/
|
|
94
|
+
disableComponent(controlName) {
|
|
95
|
+
FormService.disableControl(this.formGroup, controlName);
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Método responsável por limpar e desabilitar um componente
|
|
99
|
+
* @param controlName - Nome do controle no formGroup
|
|
100
|
+
* @param value - Valor default
|
|
101
|
+
*/
|
|
102
|
+
disableAndClearComponent(controlName, value) {
|
|
103
|
+
FormService.disableAndClearControl(this.formGroup, controlName, value);
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Método responsável por habilitar um componente
|
|
107
|
+
* @param controlName - Nome do controle no formGroup
|
|
108
|
+
*/
|
|
109
|
+
enableComponent(controName) {
|
|
110
|
+
FormService.enableControl(this.formGroup, controName);
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Método que retorna o valor de um componente
|
|
114
|
+
* @param controlName - Nome do controle no formGroup
|
|
115
|
+
* @returns - Valor
|
|
116
|
+
*/
|
|
117
|
+
getFormValue(controlName) {
|
|
118
|
+
return FormService.getFormValue(this.formGroup, controlName);
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Verifica se o componente possui erro
|
|
122
|
+
* @param controlName - Nome do controle no formGroup
|
|
123
|
+
*/
|
|
124
|
+
hasControlError(controlName, errorCode) {
|
|
125
|
+
return FormService.hasControlError(this.formGroup, controlName, errorCode);
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Seta inconsistências para o fomulário
|
|
129
|
+
* @param notification - Lista de notificações
|
|
130
|
+
*/
|
|
131
|
+
invalidForm(notification) {
|
|
132
|
+
FormService.invalidForm(this.formGroup, notification);
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Método responsável pelo carregamento da tela
|
|
136
|
+
* @param obs - Observable responsável pelo salvamento dos dados
|
|
137
|
+
*/
|
|
138
|
+
loadData(obs, propertyDescripton) {
|
|
139
|
+
obs
|
|
140
|
+
//.pipe(loading())
|
|
141
|
+
.subscribe((data) => {
|
|
142
|
+
this.isNewRegistry = false;
|
|
143
|
+
this.registry = data;
|
|
144
|
+
this.setFormValues(this.registry);
|
|
145
|
+
this.loadGrids();
|
|
146
|
+
//this.dadosTela.tituloForm = this.tituloForm<T>(false, propertyDescripton);
|
|
147
|
+
//this.setTitlePopup();
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
loadGrids() { }
|
|
151
|
+
/**
|
|
152
|
+
* Método disparado para retornar a lista
|
|
153
|
+
*/
|
|
154
|
+
navigateList(id = null) {
|
|
155
|
+
if (this.popup) {
|
|
156
|
+
this.dynamicDialogRef.close(id);
|
|
157
|
+
}
|
|
158
|
+
else if (this.dadosTela?.rotaListar) {
|
|
159
|
+
this.router.navigate([this.dadosTela.rotaListar]);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
ngOnDestroy() {
|
|
163
|
+
if (this.dynamicDialogRef) {
|
|
164
|
+
this.dynamicDialogRef.close();
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
ngOnInit() {
|
|
168
|
+
this.configureForm();
|
|
169
|
+
this.popup = this.dynamicDialogConfig?.data?.popup || false;
|
|
170
|
+
this.activatedRoute.params.subscribe((params) => {
|
|
171
|
+
if (params['id']) {
|
|
172
|
+
this.loadForm(params['id']);
|
|
173
|
+
}
|
|
174
|
+
else if (this.dynamicDialogConfig?.data?.id) {
|
|
175
|
+
this.loadForm(this.dynamicDialogConfig.data.id);
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
this.isNewRegistry = true;
|
|
179
|
+
//this.dadosTela.tituloForm = this.tituloForm(true, '');
|
|
180
|
+
//this.setTitlePopup();
|
|
181
|
+
this.loadGrids();
|
|
182
|
+
}
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Método disparado para salvar dados
|
|
187
|
+
* @param obs - Observable responsável pelo salvamento dos dados
|
|
188
|
+
*/
|
|
189
|
+
saveData(obs) {
|
|
190
|
+
obs
|
|
191
|
+
.pipe((src) => {
|
|
192
|
+
this.isSaveLoading = true;
|
|
193
|
+
return src.pipe(finalize(() => {
|
|
194
|
+
this.isSaveLoading = false;
|
|
195
|
+
}));
|
|
196
|
+
})
|
|
197
|
+
.subscribe({
|
|
198
|
+
next: (res) => {
|
|
199
|
+
this.notificationService.toastSuccess(res.item2[0].message);
|
|
200
|
+
this.navigateList(res.item1);
|
|
201
|
+
},
|
|
202
|
+
error: (e) => {
|
|
203
|
+
this.backendError(e);
|
|
204
|
+
},
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Método se atualiza o valor de um componente do formGroup
|
|
209
|
+
* @param controName - Nome do controle
|
|
210
|
+
* @param value - Valor para atualização
|
|
211
|
+
*/
|
|
212
|
+
setControlValue(controName, value) {
|
|
213
|
+
FormService.setControlValue(this.formGroup, controName, value);
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Atualiza valores dos componentes do formGroup
|
|
217
|
+
* @param values - Valores para atualização
|
|
218
|
+
*/
|
|
219
|
+
setFormValues(values) {
|
|
220
|
+
this.onSetFormValues = true;
|
|
221
|
+
this.formGroup.patchValue(values, { emitEvent: false });
|
|
222
|
+
this.onSetFormValues = false;
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Atualiza o validador de um componente do formGroup
|
|
226
|
+
* @param controName - Nome do controle
|
|
227
|
+
* @param validators - Regra de validação
|
|
228
|
+
*/
|
|
229
|
+
setValidators(controName, validators) {
|
|
230
|
+
FormService.setValidators(this.formGroup, controName, validators);
|
|
231
|
+
}
|
|
232
|
+
// private setTitlePopup() {
|
|
233
|
+
// if (this.popup) {
|
|
234
|
+
// if (this.dynamicDialogConfig)
|
|
235
|
+
// this.dynamicDialogConfig.header = this.dadosTela.tituloForm;
|
|
236
|
+
// }
|
|
237
|
+
// }
|
|
238
|
+
// protected tituloForm<T>(isNew: boolean, propertyDescripton: string): string {
|
|
239
|
+
// if (isNew) {
|
|
240
|
+
// return `${this.dadosTela.masculino ? 'Novo' : 'Nova'} ${this.dadosTela.nomeCadastro}`;
|
|
241
|
+
// }
|
|
242
|
+
// else if (this.isView) {
|
|
243
|
+
// return `Visualização ${this.dadosTela.masculino ? 'do' : 'da'} ${this.dadosTela.nomeCadastro}: ${ObjectService.getProperty<T>(this.registry, propertyDescripton)}`;
|
|
244
|
+
// } else {
|
|
245
|
+
// return `Edição ${this.dadosTela.masculino ? 'do' : 'da'} ${this.dadosTela.nomeCadastro}: ${ObjectService.getProperty<T>(this.registry, propertyDescripton)}`;
|
|
246
|
+
// }
|
|
247
|
+
// }
|
|
248
|
+
/**
|
|
249
|
+
* Dispara os métodos de validações do formulário
|
|
250
|
+
* @returns - True/False
|
|
251
|
+
*/
|
|
252
|
+
validateForm() {
|
|
253
|
+
let valid = false;
|
|
254
|
+
if (this.formGroup && this.formGroup.valid) {
|
|
255
|
+
valid = true;
|
|
256
|
+
}
|
|
257
|
+
else {
|
|
258
|
+
this.isAccordionExpanded = true;
|
|
259
|
+
this.invalidForm();
|
|
260
|
+
if (this.dadosTela?.mensagemValidacao) {
|
|
261
|
+
this.notificationService.dialog({
|
|
262
|
+
type: 'alert',
|
|
263
|
+
message: 'Verifique os campos obrigatórios.',
|
|
264
|
+
});
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
return valid;
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
BaseComponentCrudForm.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: BaseComponentCrudForm, deps: [{ token: i1.DialogService }, { token: i2.NotificationService }, { token: i3.ActivatedRoute }, { token: i1.DynamicDialogRef }, { token: i1.DynamicDialogConfig }, { token: i3.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
271
|
+
BaseComponentCrudForm.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: BaseComponentCrudForm, selector: "ng-component", usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
272
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: BaseComponentCrudForm, decorators: [{
|
|
273
|
+
type: Component,
|
|
274
|
+
args: [{
|
|
275
|
+
template: ''
|
|
276
|
+
}]
|
|
277
|
+
}], ctorParameters: function () { return [{ type: i1.DialogService }, { type: i2.NotificationService }, { type: i3.ActivatedRoute }, { type: i1.DynamicDialogRef }, { type: i1.DynamicDialogConfig }, { type: i3.Router }]; } });
|
|
278
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb21wb25lbnQtY3J1ZC1mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtY3J1ZC1mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sRUFBRSxTQUFTLEVBQWUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7OztBQWN2RCxNQUFNLE9BQWdCLHFCQUFzQixTQUFRLGlCQUFpQjtJQWdCbkUsWUFDRSxhQUE0QixFQUM1QixtQkFBd0MsRUFDOUIsY0FBOEIsRUFDOUIsZ0JBQWtDLEVBQ2xDLG1CQUF3QyxFQUN4QyxNQUFjO1FBQ3hCLEtBQUssQ0FFRCxhQUFhLEVBQ2IsbUJBQW1CLENBQ3BCLENBQUM7UUFSTSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFwQmhCLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUM1QixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUN0QixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUN0QixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBRWYsY0FBUyxHQUFjLElBQUksU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3pDLFlBQU8sR0FBaUIsRUFBRSxDQUFDO1FB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aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UsIER5bmFtaWNEaWFsb2dDb25maWcsIER5bmFtaWNEaWFsb2dSZWYgfSBmcm9tIFwicHJpbWVuZy9keW5hbWljZGlhbG9nXCI7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgVmFsaWRhdG9yRm4gfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgY29tYmluZUxhdGVzdCwgZmlsdGVyLCBmaW5hbGl6ZSB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG5pbXBvcnQgeyBBY3Rpb25JdGVtIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvdGFibGUvYWN0aW9uLWl0ZW1cIjtcclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudENydWQgfSBmcm9tIFwiLi9iYXNlLWNvbXBvbmVudC1jcnVkXCI7XHJcbmltcG9ydCB7IEZvcm1TZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL2Zvcm0uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL25vdGlmaWNhdGlvbi5zZXJ2aWNlXCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIERhZG9zVGVsYSB7XHJcbiAgbm9tZUNhZGFzdHJvOiBzdHJpbmc7XHJcbiAgdGl0dWxvRm9ybTogc3RyaW5nO1xyXG4gIHJvdGFMaXN0YXI6IHN0cmluZztcclxuICBtYXNjdWxpbm86IGJvb2xlYW47XHJcbiAgbWVuc2FnZW1WYWxpZGFjYW86IGJvb2xlYW5cclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGU6ICcnXHJcbn0pXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlQ29tcG9uZW50Q3J1ZEZvcm0gZXh0ZW5kcyBCYXNlQ29tcG9uZW50Q3J1ZCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgcHJvdGVjdGVkIGlzQWNjb3JkaW9uRXhwYW5kZWQgPSBmYWxzZTtcclxuICBwcm90ZWN0ZWQgaXNOZXdSZWdpc3RyeSA9IGZhbHNlO1xyXG4gIHByb3RlY3RlZCBpc1NhdmVMb2FkaW5nID0gZmFsc2U7XHJcbiAgcHJvdGVjdGVkIGlzVmlldyA9IGZhbHNlO1xyXG5cclxuICBwcm90ZWN0ZWQgZm9ybUdyb3VwOiBGb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHt9KTtcclxuICBwcm90ZWN0ZWQgYWN0aW9uczogQWN0aW9uSXRlbVtdID0gW107XHJcblxyXG4gIHByb3RlY3RlZCBkYWRvc1RlbGE6IERhZG9zVGVsYSB8IHVuZGVmaW5lZDtcclxuICBwcm90ZWN0ZWQgcG9wdXA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwcm90ZWN0ZWQgcmVnaXN0cnk6IGFueSA9IG51bGw7XHJcblxyXG4gIHByaXZhdGUgb25TZXRGb3JtVmFsdWVzOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcclxuICAgIG5vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG4gICAgcHJvdGVjdGVkIGR5bmFtaWNEaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYsXHJcbiAgICBwcm90ZWN0ZWQgZHluYW1pY0RpYWxvZ0NvbmZpZzogRHluYW1pY0RpYWxvZ0NvbmZpZyxcclxuICAgIHByb3RlY3RlZCByb3V0ZXI6IFJvdXRlcikge1xyXG4gICAgc3VwZXJcclxuICAgICAgKFxyXG4gICAgICAgIGRpYWxvZ1NlcnZpY2UsXHJcbiAgICAgICAgbm90aWZpY2F0aW9uU2VydmljZVxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyBkaXNwYXJhZG8gcGFyYSBjb25maWd1cmHDp8OjbyBkbyBmb3JtXHJcbiAgICovXHJcbiAgYWJzdHJhY3QgY29uZmlndXJlRm9ybSgpOiB2b2lkO1xyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIGRpc3BhcmFkbyBwYXJhIG8gY2FycmVnYW1lbnRvIGRvIGZvcm1cclxuICAgKiBAcGFyYW0gaWRcclxuICAgKi9cclxuICBhYnN0cmFjdCBsb2FkRm9ybShpZDogYW55KTogdm9pZDtcclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyBkaXNwYXJhZG8gcGFyYSBzYWx2YW1lbnRvIGRvcyBkYWRvc1xyXG4gICAqL1xyXG4gIGFic3RyYWN0IHNhdmUoKTogdm9pZDtcclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyBkaXNwYXJhZG8gcGFyYSB0cmF0YW1lbnRvIGRhcyBub3RpZmljYcOnw7VlcyBkbyBiYWNrZW5kXHJcbiAgICogQHBhcmFtIGVyciAtIE5vdGlmaWNhw6fDo29cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgYmFja2VuZEVycm9yKGVycjogYW55KTogdm9pZCB7XHJcbiAgICBpZiAoZXJyKSB7XHJcbiAgICAgIGlmIChlcnIuc3RhdHVzID09IDQwNCkge1xyXG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS50b2FzdEVycm9yKGVyci5lcnJvci5pdGVtMlswXS5tZXNzYWdlKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAoZXJyLnN0YXR1cyA9PSA0MDApIHtcclxuICAgICAgICAvLyBFcnJvcyBkZSB2YWxpZGHDp8OjbyBkZSBkb23DrW5pbyBkbyBiYWNrZW5kXHJcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZXJyLmVycm9yKSkge1xyXG4gICAgICAgICAgaWYgKGVyci5lcnJvcj8ubGVuZ3RoKSB7XHJcblxyXG4gICAgICAgICAgICBpZiAoZXJyLmVycm9yLmxlbmd0aCA9PSAxICYmIGVyci5lcnJvclswXS5rZXkgPT0gJycpIHtcclxuICAgICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UudG9hc3RFcnJvcihlcnIuZXJyb3JbMF0ubWVzc2FnZSk7XHJcbiAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLmludmFsaWRGb3JtKGVyci5lcnJvcik7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoZXJyLmVycm9yPy50aXRsZSkge1xyXG4gICAgICAgICAgLy8gRXJybyBkZSBqc29uIG5vIGJhY2tlbmRcclxuICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS50b2FzdEVycm9yKGVyci5lcnJvci50aXRsZSk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKGVyci5zdGF0dXMgPT0gNDE1KSB7XHJcbiAgICAgICAgaWYgKGVyci5lcnJvcj8udGl0bGUpIHtcclxuICAgICAgICAgIC8vIEVycm8gZGUganNvbiBubyBiYWNrZW5kXHJcbiAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UudG9hc3RFcnJvcihlcnIuZXJyb3IudGl0bGUpO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gUXVhbHF1ZXIgb3V0cm8gdGlwbyBkZSBlcnJvIHF1ZSB0ZW5oYSBtZW5zYWdlbVxyXG4gICAgICBpZiAoZXJyLm1lc3NhZ2UpIHtcclxuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UudG9hc3RFcnJvcihlcnIubWVzc2FnZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gZGlzcGFyYWRvIGFvIGNsaWNhciBubyBib3TDo28gZGUgY2FuY2VsYW1lbnRvXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGNhbmNlbCgpIHtcclxuICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5xdWVzdGlvbih7XHJcbiAgICAgIHR5cGU6ICdxdWVzdGlvbicsXHJcbiAgICAgIG1lc3NhZ2U6ICdEZXNlamEgY2FuY2VsYXIgYSBvcGVyYcOnw6NvPycsXHJcbiAgICAgIGFjY2VwdDogKCkgPT4ge1xyXG4gICAgICAgIHRoaXMubmF2aWdhdGVMaXN0KCk7XHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFZlcmlmaWNhIHNlIGhvdXZlcmFtIGFsdGVyYcOnw7VlcyBub3MgY29tcG9uZW50ZXMgZG8gZm9ybUNvbnRyb2xcclxuICAgKiBAcGFyYW0gY29udHJvbHMgLSBOb21lcyBkbyBjb250cm9sZXMgbm8gZm9ybUdyb3VwXHJcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZVxyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBkZXRlY3RGb3JtQ29udHJvbENoYW5nZXMoY29udHJvbHM6IEFycmF5PHN0cmluZz4pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3QgY29udHJvbExpc3Q6IE9ic2VydmFibGU8YW55PltdID0gW107XHJcbiAgICBjb250cm9scy5mb3JFYWNoKGNvbnRyb2xOYW1lID0+IGNvbnRyb2xMaXN0LnB1c2godGhpcy5mb3JtR3JvdXAuY29udHJvbHNbY29udHJvbE5hbWVdLnZhbHVlQ2hhbmdlcykpO1xyXG4gICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoY29udHJvbExpc3QpLnBpcGUoZmlsdGVyKCgpID0+ICF0aGlzLm9uU2V0Rm9ybVZhbHVlcykpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyByZXNwb25zw6F2ZWwgcG9yIGRlc2FiaWxpdGFyIHVtIGNvbXBvbmVudGVcclxuICAgKiBAcGFyYW0gY29udHJvbE5hbWUgLSBOb21lIGRvIGNvbnRyb2xlIG5vIGZvcm1Hcm91cFxyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBkaXNhYmxlQ29tcG9uZW50KGNvbnRyb2xOYW1lOiBzdHJpbmcpIHtcclxuICAgIEZvcm1TZXJ2aWNlLmRpc2FibGVDb250cm9sKHRoaXMuZm9ybUdyb3VwLCBjb250cm9sTmFtZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIHJlc3BvbnPDoXZlbCBwb3IgbGltcGFyIGUgZGVzYWJpbGl0YXIgdW0gY29tcG9uZW50ZVxyXG4gICAqIEBwYXJhbSBjb250cm9sTmFtZSAtIE5vbWUgZG8gY29udHJvbGUgbm8gZm9ybUdyb3VwXHJcbiAgICogQHBhcmFtIHZhbHVlIC0gVmFsb3IgZGVmYXVsdFxyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBkaXNhYmxlQW5kQ2xlYXJDb21wb25lbnQoY29udHJvbE5hbWU6IHN0cmluZywgdmFsdWU/OiBhbnkpIHtcclxuICAgIEZvcm1TZXJ2aWNlLmRpc2FibGVBbmRDbGVhckNvbnRyb2wodGhpcy5mb3JtR3JvdXAsIGNvbnRyb2xOYW1lLCB2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIHJlc3BvbnPDoXZlbCBwb3IgaGFiaWxpdGFyIHVtIGNvbXBvbmVudGVcclxuICAgKiBAcGFyYW0gY29udHJvbE5hbWUgLSBOb21lIGRvIGNvbnRyb2xlIG5vIGZvcm1Hcm91cFxyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBlbmFibGVDb21wb25lbnQoY29udHJvTmFtZTogc3RyaW5nKSB7XHJcbiAgICBGb3JtU2VydmljZS5lbmFibGVDb250cm9sKHRoaXMuZm9ybUdyb3VwLCBjb250cm9OYW1lKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gcXVlIHJldG9ybmEgbyB2YWxvciBkZSB1bSBjb21wb25lbnRlXHJcbiAgICogQHBhcmFtIGNvbnRyb2xOYW1lIC0gTm9tZSBkbyBjb250cm9sZSBubyBmb3JtR3JvdXBcclxuICAgKiBAcmV0dXJucyAtIFZhbG9yXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGdldEZvcm1WYWx1ZTxUPihjb250cm9sTmFtZTogc3RyaW5nKTogVCB7XHJcbiAgICByZXR1cm4gRm9ybVNlcnZpY2UuZ2V0Rm9ybVZhbHVlPFQ+KHRoaXMuZm9ybUdyb3VwLCBjb250cm9sTmFtZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBWZXJpZmljYSBzZSBvIGNvbXBvbmVudGUgcG9zc3VpIGVycm9cclxuICAgKiBAcGFyYW0gY29udHJvbE5hbWUgLSBOb21lIGRvIGNvbnRyb2xlIG5vIGZvcm1Hcm91cFxyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBoYXNDb250cm9sRXJyb3IoY29udHJvbE5hbWU6IHN0cmluZywgZXJyb3JDb2RlPzogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gRm9ybVNlcnZpY2UuaGFzQ29udHJvbEVycm9yKHRoaXMuZm9ybUdyb3VwLCBjb250cm9sTmFtZSwgZXJyb3JDb2RlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldGEgaW5jb25zaXN0w6puY2lhcyBwYXJhIG8gZm9tdWzDoXJpb1xyXG4gICAqIEBwYXJhbSBub3RpZmljYXRpb24gLSBMaXN0YSBkZSBub3RpZmljYcOnw7Vlc1xyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBpbnZhbGlkRm9ybShub3RpZmljYXRpb24/OiBhbnkpIHtcclxuICAgIEZvcm1TZXJ2aWNlLmludmFsaWRGb3JtKHRoaXMuZm9ybUdyb3VwLCBub3RpZmljYXRpb24pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyByZXNwb25zw6F2ZWwgcGVsbyBjYXJyZWdhbWVudG8gZGEgdGVsYVxyXG4gICAqIEBwYXJhbSBvYnMgLSBPYnNlcnZhYmxlIHJlc3BvbnPDoXZlbCBwZWxvIHNhbHZhbWVudG8gZG9zIGRhZG9zXHJcbiAgICovXHJcbiAgcHVibGljIGxvYWREYXRhPFQ+KG9iczogT2JzZXJ2YWJsZTxhbnk+LCBwcm9wZXJ0eURlc2NyaXB0b246IHN0cmluZykge1xyXG4gICAgb2JzXHJcbiAgICAgIC8vLnBpcGUobG9hZGluZygpKVxyXG4gICAgICAuc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLmlzTmV3UmVnaXN0cnkgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnJlZ2lzdHJ5ID0gZGF0YSBhcyBUO1xyXG4gICAgICAgIHRoaXMuc2V0Rm9ybVZhbHVlcyh0aGlzLnJlZ2lzdHJ5KTtcclxuICAgICAgICB0aGlzLmxvYWRHcmlkcygpO1xyXG4gICAgICAgIC8vdGhpcy5kYWRvc1RlbGEudGl0dWxvRm9ybSA9IHRoaXMudGl0dWxvRm9ybTxUPihmYWxzZSwgcHJvcGVydHlEZXNjcmlwdG9uKTtcclxuICAgICAgICAvL3RoaXMuc2V0VGl0bGVQb3B1cCgpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBsb2FkR3JpZHMoKSB7IH1cclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyBkaXNwYXJhZG8gcGFyYSByZXRvcm5hciBhIGxpc3RhXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIG5hdmlnYXRlTGlzdChpZDogYW55ID0gbnVsbCkge1xyXG4gICAgaWYgKHRoaXMucG9wdXApIHtcclxuICAgICAgdGhpcy5keW5hbWljRGlhbG9nUmVmLmNsb3NlKGlkKTtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKHRoaXMuZGFkb3NUZWxhPy5yb3RhTGlzdGFyKSB7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt0aGlzLmRhZG9zVGVsYS5yb3RhTGlzdGFyXSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICBpZiAodGhpcy5keW5hbWljRGlhbG9nUmVmKSB7XHJcbiAgICAgIHRoaXMuZHluYW1pY0RpYWxvZ1JlZi5jbG9zZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5jb25maWd1cmVGb3JtKCk7XHJcblxyXG4gICAgdGhpcy5wb3B1cCA9IHRoaXMuZHluYW1pY0RpYWxvZ0NvbmZpZz8uZGF0YT8ucG9wdXAgfHwgZmFsc2U7XHJcblxyXG4gICAgdGhpcy5hY3RpdmF0ZWRSb3V0ZS5wYXJhbXMuc3Vic2NyaWJlKChwYXJhbXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocGFyYW1zWydpZCddKSB7XHJcbiAgICAgICAgdGhpcy5sb2FkRm9ybShwYXJhbXNbJ2lkJ10pO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKHRoaXMuZHluYW1pY0RpYWxvZ0NvbmZpZz8uZGF0YT8uaWQpIHtcclxuICAgICAgICB0aGlzLmxvYWRGb3JtKHRoaXMuZHluYW1pY0RpYWxvZ0NvbmZpZy5kYXRhLmlkKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICB0aGlzLmlzTmV3UmVnaXN0cnkgPSB0cnVlO1xyXG4gICAgICAgIC8vdGhpcy5kYWRvc1RlbGEudGl0dWxvRm9ybSA9IHRoaXMudGl0dWxvRm9ybSh0cnVlLCAnJyk7XHJcbiAgICAgICAgLy90aGlzLnNldFRpdGxlUG9wdXAoKTtcclxuICAgICAgICB0aGlzLmxvYWRHcmlkcygpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gZGlzcGFyYWRvIHBhcmEgc2FsdmFyIGRhZG9zXHJcbiAgICogQHBhcmFtIG9icyAtIE9ic2VydmFibGUgcmVzcG9uc8OhdmVsIHBlbG8gc2FsdmFtZW50byBkb3MgZGFkb3NcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgc2F2ZURhdGEob2JzOiBPYnNlcnZhYmxlPGFueT4pIHtcclxuICAgIG9ic1xyXG4gICAgICAucGlwZSgoc3JjOiBPYnNlcnZhYmxlPGFueT4pID0+IHtcclxuICAgICAgICB0aGlzLmlzU2F2ZUxvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgIHJldHVybiBzcmMucGlwZShmaW5hbGl6ZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmlzU2F2ZUxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB9KSk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnRvYXN0U3VjY2VzcyhyZXMuaXRlbTJbMF0ubWVzc2FnZSk7XHJcbiAgICAgICAgICB0aGlzLm5hdmlnYXRlTGlzdChyZXMuaXRlbTEpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmJhY2tlbmRFcnJvcihlKTtcclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gc2UgYXR1YWxpemEgbyB2YWxvciBkZSB1bSBjb21wb25lbnRlIGRvIGZvcm1Hcm91cFxyXG4gICAqIEBwYXJhbSBjb250cm9OYW1lIC0gTm9tZSBkbyBjb250cm9sZVxyXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFZhbG9yIHBhcmEgYXR1YWxpemHDp8Ojb1xyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBzZXRDb250cm9sVmFsdWUoY29udHJvTmFtZTogc3RyaW5nLCB2YWx1ZTogYW55KSB7XHJcbiAgICBGb3JtU2VydmljZS5zZXRDb250cm9sVmFsdWUodGhpcy5mb3JtR3JvdXAsIGNvbnRyb05hbWUsIHZhbHVlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEF0dWFsaXphIHZhbG9yZXMgZG9zIGNvbXBvbmVudGVzIGRvIGZvcm1Hcm91cFxyXG4gICAqIEBwYXJhbSB2YWx1ZXMgLSBWYWxvcmVzIHBhcmEgYXR1YWxpemHDp8Ojb1xyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBzZXRGb3JtVmFsdWVzKHZhbHVlczogYW55KSB7XHJcbiAgICB0aGlzLm9uU2V0Rm9ybVZhbHVlcyA9IHRydWU7XHJcbiAgICB0aGlzLmZvcm1Hcm91cC5wYXRjaFZhbHVlKHZhbHVlcywgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgdGhpcy5vblNldEZvcm1WYWx1ZXMgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEF0dWFsaXphIG8gdmFsaWRhZG9yIGRlIHVtIGNvbXBvbmVudGUgZG8gZm9ybUdyb3VwXHJcbiAgICogQHBhcmFtIGNvbnRyb05hbWUgLSBOb21lIGRvIGNvbnRyb2xlXHJcbiAgICogQHBhcmFtIHZhbGlkYXRvcnMgLSBSZWdyYSBkZSB2YWxpZGHDp8Ojb1xyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBzZXRWYWxpZGF0b3JzKGNvbnRyb05hbWU6IHN0cmluZywgdmFsaWRhdG9yczogVmFsaWRhdG9yRm4gfCBWYWxpZGF0b3JGbltdIHwgbnVsbCkge1xyXG4gICAgRm9ybVNlcnZpY2Uuc2V0VmFsaWRhdG9ycyh0aGlzLmZvcm1Hcm91cCwgY29udHJvTmFtZSwgdmFsaWRhdG9ycyk7XHJcbiAgfVxyXG5cclxuICAvLyBwcml2YXRlIHNldFRpdGxlUG9wdXAoKSB7XHJcbiAgLy8gICBpZiAodGhpcy5wb3B1cCkge1xyXG4gIC8vICAgICBpZiAodGhpcy5keW5hbWljRGlhbG9nQ29uZmlnKVxyXG4gIC8vICAgICAgIHRoaXMuZHluYW1pY0RpYWxvZ0NvbmZpZy5oZWFkZXIgPSB0aGlzLmRhZG9zVGVsYS50aXR1bG9Gb3JtO1xyXG4gIC8vICAgfVxyXG4gIC8vIH1cclxuXHJcbiAgLy8gcHJvdGVjdGVkIHRpdHVsb0Zvcm08VD4oaXNOZXc6IGJvb2xlYW4sIHByb3BlcnR5RGVzY3JpcHRvbjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAvLyAgIGlmIChpc05ldykge1xyXG4gIC8vICAgICByZXR1cm4gYCR7dGhpcy5kYWRvc1RlbGEubWFzY3VsaW5vID8gJ05vdm8nIDogJ05vdmEnfSAke3RoaXMuZGFkb3NUZWxhLm5vbWVDYWRhc3Ryb31gO1xyXG4gIC8vICAgfVxyXG4gIC8vICAgZWxzZSBpZiAodGhpcy5pc1ZpZXcpIHtcclxuICAvLyAgICAgcmV0dXJuIGBWaXN1YWxpemHDp8OjbyAke3RoaXMuZGFkb3NUZWxhLm1hc2N1bGlubyA/ICdkbycgOiAnZGEnfSAke3RoaXMuZGFkb3NUZWxhLm5vbWVDYWRhc3Ryb306ICR7T2JqZWN0U2VydmljZS5nZXRQcm9wZXJ0eTxUPih0aGlzLnJlZ2lzdHJ5LCBwcm9wZXJ0eURlc2NyaXB0b24pfWA7XHJcbiAgLy8gICB9IGVsc2Uge1xyXG4gIC8vICAgICByZXR1cm4gYEVkacOnw6NvICR7dGhpcy5kYWRvc1RlbGEubWFzY3VsaW5vID8gJ2RvJyA6ICdkYSd9ICR7dGhpcy5kYWRvc1RlbGEubm9tZUNhZGFzdHJvfTogJHtPYmplY3RTZXJ2aWNlLmdldFByb3BlcnR5PFQ+KHRoaXMucmVnaXN0cnksIHByb3BlcnR5RGVzY3JpcHRvbil9YDtcclxuICAvLyAgIH1cclxuICAvLyB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERpc3BhcmEgb3MgbcOpdG9kb3MgZGUgdmFsaWRhw6fDtWVzIGRvIGZvcm11bMOhcmlvXHJcbiAgICogQHJldHVybnMgLSBUcnVlL0ZhbHNlXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIHZhbGlkYXRlRm9ybSgpOiBib29sZWFuIHtcclxuICAgIGxldCB2YWxpZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIGlmICh0aGlzLmZvcm1Hcm91cCAmJiB0aGlzLmZvcm1Hcm91cC52YWxpZCkge1xyXG4gICAgICB2YWxpZCA9IHRydWU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmlzQWNjb3JkaW9uRXhwYW5kZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLmludmFsaWRGb3JtKCk7XHJcblxyXG4gICAgICBpZiAodGhpcy5kYWRvc1RlbGE/Lm1lbnNhZ2VtVmFsaWRhY2FvKSB7XHJcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLmRpYWxvZyh7XHJcbiAgICAgICAgICB0eXBlOiAnYWxlcnQnLFxyXG4gICAgICAgICAgbWVzc2FnZTogJ1ZlcmlmaXF1ZSBvcyBjYW1wb3Mgb2JyaWdhdMOzcmlvcy4nLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHZhbGlkO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { Component } from "@angular/core";
|
|
2
|
+
import { BaseComponentCrud } from "./base-component-crud";
|
|
3
|
+
import { TablePaginate } from "../components/table/table.paginate";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "primeng/dynamicdialog";
|
|
6
|
+
import * as i2 from "../services/notification.service";
|
|
7
|
+
import * as i3 from "@angular/router";
|
|
8
|
+
export class BaseComponentCrudList extends BaseComponentCrud {
|
|
9
|
+
constructor(dialogService, notificationService, router) {
|
|
10
|
+
super(dialogService, notificationService);
|
|
11
|
+
this.router = router;
|
|
12
|
+
this.totalRecords = 0;
|
|
13
|
+
this.actionsPageList = [];
|
|
14
|
+
}
|
|
15
|
+
ngOnInit() {
|
|
16
|
+
this.loadFilters();
|
|
17
|
+
this.configureTable();
|
|
18
|
+
// Tabela não configurada para paginação
|
|
19
|
+
if (!this.tableConfig.lazy)
|
|
20
|
+
this.loadTable(new TablePaginate());
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Método que seta o registro selecionado na tabela
|
|
24
|
+
* @param event - Registro
|
|
25
|
+
*/
|
|
26
|
+
activeItem(event) {
|
|
27
|
+
this.selectedItem = event;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Método que dispara o carregamento da tabela
|
|
31
|
+
* @param obs - Observable de carregamento dos dados
|
|
32
|
+
*/
|
|
33
|
+
loadData(obs) {
|
|
34
|
+
obs
|
|
35
|
+
//.pipe(loading())
|
|
36
|
+
.subscribe({
|
|
37
|
+
next: (res) => {
|
|
38
|
+
this.totalRecords = res.item1;
|
|
39
|
+
this.dataSource = res.item2;
|
|
40
|
+
},
|
|
41
|
+
error: (e) => {
|
|
42
|
+
this.toastError(e);
|
|
43
|
+
},
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Método que dispara a paginação
|
|
48
|
+
*/
|
|
49
|
+
paginate(event) {
|
|
50
|
+
this.loadTable(event);
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Método que dispara a atualização da página inteira
|
|
54
|
+
*/
|
|
55
|
+
refresh() {
|
|
56
|
+
this.loadTable(new TablePaginate());
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
BaseComponentCrudList.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: BaseComponentCrudList, deps: [{ token: i1.DialogService }, { token: i2.NotificationService }, { token: i3.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
60
|
+
BaseComponentCrudList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: BaseComponentCrudList, selector: "ng-component", usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: BaseComponentCrudList, decorators: [{
|
|
62
|
+
type: Component,
|
|
63
|
+
args: [{
|
|
64
|
+
template: ''
|
|
65
|
+
}]
|
|
66
|
+
}], ctorParameters: function () { return [{ type: i1.DialogService }, { type: i2.NotificationService }, { type: i3.Router }]; } });
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb21wb25lbnQtY3J1ZC1saXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtY3J1ZC1saXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFJbEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7OztBQVNuRSxNQUFNLE9BQWdCLHFCQUFzQixTQUFRLGlCQUFpQjtJQVFuRSxZQUNFLGFBQTRCLEVBQzVCLG1CQUF3QyxFQUNqQyxNQUFjO1FBQ3JCLEtBQUssQ0FFRCxhQUFhLEVBQ2IsbUJBQW1CLENBQ3BCLENBQUM7UUFMRyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBTnZCLGlCQUFZLEdBQVcsQ0FBQyxDQUFDO1FBQ3pCLG9CQUFlLEdBQWlCLEVBQUUsQ0FBQztJQVduQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFFdEIsd0NBQXdDO1FBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUk7WUFDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQThCRDs7O09BR0c7SUFDTyxVQUFVLENBQUMsS0FBVTtRQUM3QixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBRUQ7OztPQUdHO0lBQ08sUUFBUSxDQUFDLEdBQW9CO1FBQ3JDLEdBQUc7WUFDRCxrQkFBa0I7YUFDakIsU0FBUyxDQUFDO1lBQ1QsSUFBSSxFQUFFLENBQUMsR0FBUSxFQUFFLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQztnQkFDOUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFBO1lBQzdCLENBQUM7WUFDRCxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDWCxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3JCLENBQUM7U0FDRixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQ7O09BRUc7SUFDTyxRQUFRLENBQUMsS0FBVTtRQUMzQixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFFRDs7T0FFRztJQUNPLE9BQU87UUFDZixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksYUFBYSxFQUFFLENBQUMsQ0FBQztJQUN0QyxDQUFDOztrSEE5Rm1CLHFCQUFxQjtzR0FBckIscUJBQXFCLDJFQUYvQixFQUFFOzJGQUVRLHFCQUFxQjtrQkFIMUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsRUFBRTtpQkFDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gXCJwcmltZW5nL2R5bmFtaWNkaWFsb2dcIjtcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudENydWQgfSBmcm9tIFwiLi9iYXNlLWNvbXBvbmVudC1jcnVkXCI7XHJcbmltcG9ydCB7IFRhYmxlUGFnaW5hdGUgfSBmcm9tIFwiLi4vY29tcG9uZW50cy90YWJsZS90YWJsZS5wYWdpbmF0ZVwiO1xyXG5pbXBvcnQgeyBUYWJsZUNvbmZpZyB9IGZyb20gXCIuLi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbmZpZ1wiO1xyXG5pbXBvcnQgeyBBY3Rpb25JdGVtIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvdGFibGUvYWN0aW9uLWl0ZW1cIjtcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uU2VydmljZSB9IGZyb20gXCIuLi9zZXJ2aWNlcy9ub3RpZmljYXRpb24uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlOiAnJ1xyXG59KVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZUNvbXBvbmVudENydWRMaXN0IGV4dGVuZHMgQmFzZUNvbXBvbmVudENydWQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBkYXRhU291cmNlOiBhbnk7XHJcbiAgc2VsZWN0ZWRJdGVtOiBhbnk7XHJcbiAgdGFibGVDb25maWchOiBUYWJsZUNvbmZpZztcclxuICB0b3RhbFJlY29yZHM6IG51bWJlciA9IDA7XHJcbiAgYWN0aW9uc1BhZ2VMaXN0OiBBY3Rpb25JdGVtW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBkaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlLFxyXG4gICAgbm90aWZpY2F0aW9uU2VydmljZTogTm90aWZpY2F0aW9uU2VydmljZSxcclxuICAgIHB1YmxpYyByb3V0ZXI6IFJvdXRlcikge1xyXG4gICAgc3VwZXJcclxuICAgICAgKFxyXG4gICAgICAgIGRpYWxvZ1NlcnZpY2UsXHJcbiAgICAgICAgbm90aWZpY2F0aW9uU2VydmljZVxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmxvYWRGaWx0ZXJzKCk7XHJcbiAgICB0aGlzLmNvbmZpZ3VyZVRhYmxlKCk7XHJcblxyXG4gICAgLy8gVGFiZWxhIG7Do28gY29uZmlndXJhZGEgcGFyYSBwYWdpbmHDp8Ojb1xyXG4gICAgaWYgKCF0aGlzLnRhYmxlQ29uZmlnLmxhenkpXHJcbiAgICAgIHRoaXMubG9hZFRhYmxlKG5ldyBUYWJsZVBhZ2luYXRlKCkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyBkaXNwYXJhZG8gcGFyYSBjb25maWd1cmHDp8OjbyBkYXMgdGFiZWxhcyBkbyBjb21wb25lbnRlIGRlIGxpc3RhXHJcbiAgICovXHJcbiAgYWJzdHJhY3QgY29uZmlndXJlVGFibGUoKTogdm9pZDtcclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyBkaXNwYXJhZG8gcGFyYSBlZGnDp8OjbyBkZSByZWdpc3Ryb3NcclxuICAgKiBAcGFyYW0gcmVnaXN0cnkgLSBSZWdpc3RybyBxdWUgZXN0w6Egc2VuZG8gZWRpdGFkb1xyXG4gICAqXHJcbiAgICovXHJcbiAgYWJzdHJhY3QgZWRpdChyZWdpc3RyeTogYW55KTogdm9pZDtcclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyBkaXNwYXJhZG8gcGFyYSBjYXJyZWdhbWVudG8gZG9zIGZpbHRyb3MgZGEgdGVsYVxyXG4gICAqL1xyXG4gIGFic3RyYWN0IGxvYWRGaWx0ZXJzKCk6IHZvaWQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gZGlzcGFyYWRvIHBhcmEgY2FycmVnYXIgYSB0YWJlbGEgZG8gY29tcG9uZW50ZSBkZSBsaXN0YVxyXG4gICAqIEBwYXJhbSB0YWJsZVBhZ2luYXRlIC0gQ2xhc3NlIGRvcyBkYWRvcyBkYSBwYWdpbmHDp8OjbyBkYSB0YWJlbGFcclxuICAgKi9cclxuICBhYnN0cmFjdCBsb2FkVGFibGUodGFibGVQYWdpbmF0ZTogVGFibGVQYWdpbmF0ZSk6IHZvaWQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gZGlzcGFyYWRvIGFvIGNsaWNhciBubyBib3TDo28gZGUgbm92byByZWdpc3Ryb1xyXG4gICAqL1xyXG4gIGFic3RyYWN0IG5ld1JlZ2lzdHJ5KCk6IHZvaWQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gcXVlIHNldGEgbyByZWdpc3RybyBzZWxlY2lvbmFkbyBuYSB0YWJlbGFcclxuICAgKiBAcGFyYW0gZXZlbnQgLSBSZWdpc3Ryb1xyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBhY3RpdmVJdGVtKGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gZXZlbnQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIHF1ZSBkaXNwYXJhIG8gY2FycmVnYW1lbnRvIGRhIHRhYmVsYVxyXG4gICAqIEBwYXJhbSBvYnMgLSBPYnNlcnZhYmxlIGRlIGNhcnJlZ2FtZW50byBkb3MgZGFkb3NcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgbG9hZERhdGEob2JzOiBPYnNlcnZhYmxlPGFueT4pIHtcclxuICAgIG9ic1xyXG4gICAgICAvLy5waXBlKGxvYWRpbmcoKSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnRvdGFsUmVjb3JkcyA9IHJlcy5pdGVtMTtcclxuICAgICAgICAgIHRoaXMuZGF0YVNvdXJjZSA9IHJlcy5pdGVtMlxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnRvYXN0RXJyb3IoZSk7XHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIHF1ZSBkaXNwYXJhIGEgcGFnaW5hw6fDo29cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgcGFnaW5hdGUoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5sb2FkVGFibGUoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyBxdWUgZGlzcGFyYSBhIGF0dWFsaXphw6fDo28gZGEgcMOhZ2luYSBpbnRlaXJhXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIHJlZnJlc2goKSB7XHJcbiAgICB0aGlzLmxvYWRUYWJsZShuZXcgVGFibGVQYWdpbmF0ZSgpKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { Component } from "@angular/core";
|
|
2
|
+
import { FormService } from "../services/form.service";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "primeng/dynamicdialog";
|
|
5
|
+
import * as i2 from "../services/notification.service";
|
|
6
|
+
export class BaseComponentCrud {
|
|
7
|
+
constructor(dialogService, notificationService) {
|
|
8
|
+
this.dialogService = dialogService;
|
|
9
|
+
this.notificationService = notificationService;
|
|
10
|
+
this.isReport = false;
|
|
11
|
+
this.itemsReport = [];
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Fecha um relatório
|
|
15
|
+
*/
|
|
16
|
+
closeReport() {
|
|
17
|
+
this.isReport = false;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Abre um form dialog
|
|
21
|
+
* @param componentType - Componente que será renderizado
|
|
22
|
+
* @param callBackFunction - Função de callback que deverá ser chamada após o fechamento do dialog
|
|
23
|
+
* @param paramsDialog - Parâmetros do dialog
|
|
24
|
+
*/
|
|
25
|
+
openDialog(componentType, callBackFunction, paramsDialog) {
|
|
26
|
+
FormService.openDialog(this.dialogService, componentType, callBackFunction, paramsDialog);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Imprime um relatório na tela
|
|
30
|
+
* @param obs - Observable com o carregamento do relatório
|
|
31
|
+
*/
|
|
32
|
+
printReportFilter(obs) {
|
|
33
|
+
obs
|
|
34
|
+
//.pipe(loading())
|
|
35
|
+
.subscribe({
|
|
36
|
+
next: (res) => {
|
|
37
|
+
this.itemsReport = res;
|
|
38
|
+
this.isReport = true;
|
|
39
|
+
},
|
|
40
|
+
error: (e) => {
|
|
41
|
+
this.toastError(e);
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Exibe um toast com um erro
|
|
47
|
+
* @param err - Erro
|
|
48
|
+
*/
|
|
49
|
+
toastError(err) {
|
|
50
|
+
if (err) {
|
|
51
|
+
if (err.message) {
|
|
52
|
+
this.notificationService.toastError(err.message);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
BaseComponentCrud.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: BaseComponentCrud, deps: [{ token: i1.DialogService }, { token: i2.NotificationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
58
|
+
BaseComponentCrud.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: BaseComponentCrud, selector: "ng-component", ngImport: i0, template: '', isInline: true });
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: BaseComponentCrud, decorators: [{
|
|
60
|
+
type: Component,
|
|
61
|
+
args: [{
|
|
62
|
+
template: ''
|
|
63
|
+
}]
|
|
64
|
+
}], ctorParameters: function () { return [{ type: i1.DialogService }, { type: i2.NotificationService }]; } });
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb21wb25lbnQtY3J1ZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWNydWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBQUUsV0FBVyxFQUFnQixNQUFNLDBCQUEwQixDQUFDOzs7O0FBT3JFLE1BQU0sT0FBZ0IsaUJBQWlCO0lBS3JDLFlBQ1MsYUFBNEIsRUFDNUIsbUJBQXdDO1FBRHhDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFMMUMsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixnQkFBVyxHQUFRLEVBQUUsQ0FBQztJQUs3QixDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNPLFVBQVUsQ0FBQyxhQUF3QixFQUFFLGdCQUEwQixFQUFFLFlBQTJCO1FBQ3BHLFdBQVcsQ0FBQyxVQUFVLENBQ3BCLElBQUksQ0FBQyxhQUFhLEVBQ2xCLGFBQWEsRUFDYixnQkFBZ0IsRUFDaEIsWUFBWSxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUVEOzs7T0FHRztJQUNPLGlCQUFpQixDQUFDLEdBQW9CO1FBQzlDLEdBQUc7WUFDRCxrQkFBa0I7YUFDakIsU0FBUyxDQUFDO1lBQ1QsSUFBSSxFQUFFLENBQUMsR0FBUSxFQUFFLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxXQUFXLEdBQUcsR0FBRyxDQUFDO2dCQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztZQUN2QixDQUFDO1lBQ0QsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7Z0JBQ1gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNyQixDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVEOzs7T0FHRztJQUNPLFVBQVUsQ0FBQyxHQUFRO1FBQzNCLElBQUksR0FBRyxFQUFFO1lBQ1AsSUFBSSxHQUFHLENBQUMsT0FBTyxFQUFFO2dCQUNmLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQ2xEO1NBQ0Y7SUFDSCxDQUFDOzs4R0EzRG1CLGlCQUFpQjtrR0FBakIsaUJBQWlCLG9EQUYzQixFQUFFOzJGQUVRLGlCQUFpQjtrQkFIdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsRUFBRTtpQkFDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIFR5cGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBGb3JtU2VydmljZSwgcGFyYW1zRGlhbG9nIH0gZnJvbSBcIi4uL3NlcnZpY2VzL2Zvcm0uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvbm90aWZpY2F0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZTogJydcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VDb21wb25lbnRDcnVkIHtcclxuXHJcbiAgcHVibGljIGlzUmVwb3J0OiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIGl0ZW1zUmVwb3J0OiBhbnkgPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcclxuICAgIHB1YmxpYyBub3RpZmljYXRpb25TZXJ2aWNlOiBOb3RpZmljYXRpb25TZXJ2aWNlKSB7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBGZWNoYSB1bSByZWxhdMOzcmlvXHJcbiAgICovXHJcbiAgcHVibGljIGNsb3NlUmVwb3J0KCkge1xyXG4gICAgdGhpcy5pc1JlcG9ydCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWJyZSB1bSBmb3JtIGRpYWxvZ1xyXG4gICAqIEBwYXJhbSBjb21wb25lbnRUeXBlIC0gQ29tcG9uZW50ZSBxdWUgc2Vyw6EgcmVuZGVyaXphZG9cclxuICAgKiBAcGFyYW0gY2FsbEJhY2tGdW5jdGlvbiAtIEZ1bsOnw6NvIGRlIGNhbGxiYWNrIHF1ZSBkZXZlcsOhIHNlciBjaGFtYWRhIGFww7NzIG8gZmVjaGFtZW50byBkbyBkaWFsb2dcclxuICAgKiBAcGFyYW0gcGFyYW1zRGlhbG9nIC0gUGFyw6JtZXRyb3MgZG8gZGlhbG9nXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIG9wZW5EaWFsb2coY29tcG9uZW50VHlwZTogVHlwZTxhbnk+LCBjYWxsQmFja0Z1bmN0aW9uOiBGdW5jdGlvbiwgcGFyYW1zRGlhbG9nPzogcGFyYW1zRGlhbG9nKSB7XHJcbiAgICBGb3JtU2VydmljZS5vcGVuRGlhbG9nKFxyXG4gICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UsXHJcbiAgICAgIGNvbXBvbmVudFR5cGUsXHJcbiAgICAgIGNhbGxCYWNrRnVuY3Rpb24sXHJcbiAgICAgIHBhcmFtc0RpYWxvZyk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbXByaW1lIHVtIHJlbGF0w7NyaW8gbmEgdGVsYVxyXG4gICAqIEBwYXJhbSBvYnMgLSBPYnNlcnZhYmxlIGNvbSBvIGNhcnJlZ2FtZW50byBkbyByZWxhdMOzcmlvXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIHByaW50UmVwb3J0RmlsdGVyKG9iczogT2JzZXJ2YWJsZTxhbnk+KSB7XHJcbiAgICBvYnNcclxuICAgICAgLy8ucGlwZShsb2FkaW5nKCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5pdGVtc1JlcG9ydCA9IHJlcztcclxuICAgICAgICAgIHRoaXMuaXNSZXBvcnQgPSB0cnVlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnRvYXN0RXJyb3IoZSk7XHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFeGliZSB1bSB0b2FzdCBjb20gdW0gZXJyb1xyXG4gICAqIEBwYXJhbSBlcnIgLSBFcnJvXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIHRvYXN0RXJyb3IoZXJyOiBhbnkpIHtcclxuICAgIGlmIChlcnIpIHtcclxuICAgICAgaWYgKGVyci5tZXNzYWdlKSB7XHJcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnRvYXN0RXJyb3IoZXJyLm1lc3NhZ2UpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { ObjectService } from './object.service';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class FormService {
|
|
5
|
+
static disableControl(formGroup, controName) {
|
|
6
|
+
formGroup?.controls[controName]?.disable();
|
|
7
|
+
}
|
|
8
|
+
static disableAndClearControl(formGroup, controName, value) {
|
|
9
|
+
this.disableControl(formGroup, controName);
|
|
10
|
+
this.setControlValue(formGroup, controName, null || value);
|
|
11
|
+
}
|
|
12
|
+
static enableControl(formGroup, controName) {
|
|
13
|
+
formGroup?.controls[controName]?.enable();
|
|
14
|
+
}
|
|
15
|
+
static getFormValue(formGroup, controName) {
|
|
16
|
+
return formGroup?.controls[controName]?.value;
|
|
17
|
+
}
|
|
18
|
+
static hasControlError(formGroup, control, errorCode) {
|
|
19
|
+
const formControl = formGroup.get(control);
|
|
20
|
+
let hasError = false;
|
|
21
|
+
if (!formControl)
|
|
22
|
+
return false;
|
|
23
|
+
if (errorCode)
|
|
24
|
+
hasError = formControl.hasError(errorCode);
|
|
25
|
+
else
|
|
26
|
+
hasError = formControl.errors ? true : false;
|
|
27
|
+
return hasError && formControl.touched;
|
|
28
|
+
}
|
|
29
|
+
static invalidForm(formGroup, notification) {
|
|
30
|
+
const keys = Object.keys(formGroup.getRawValue());
|
|
31
|
+
keys.forEach(k => {
|
|
32
|
+
const control = formGroup.controls[k];
|
|
33
|
+
if (notification) {
|
|
34
|
+
if (notification?.item2) {
|
|
35
|
+
const item = ObjectService.findObject(notification.item2, 'property', k);
|
|
36
|
+
if (item)
|
|
37
|
+
control.setErrors({ backendError: true, erroMessage: item.message });
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
const item = ObjectService.findObject(notification, 'key', k);
|
|
41
|
+
if (item)
|
|
42
|
+
control.setErrors({ backendError: true, erroMessage: item.message });
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
if (!control.valid) {
|
|
46
|
+
control.markAsTouched();
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
static openDialog(dialogService, componentType, callBackFunction, paramsDialog) {
|
|
51
|
+
const ref = dialogService.open(componentType, {
|
|
52
|
+
closable: paramsDialog?.closable || false,
|
|
53
|
+
maximizable: paramsDialog?.maximizable || true,
|
|
54
|
+
height: paramsDialog?.height || 'auto',
|
|
55
|
+
width: paramsDialog?.width,
|
|
56
|
+
styleClass: paramsDialog?.styleClass,
|
|
57
|
+
data: { id: paramsDialog?.id, popup: paramsDialog?.popup || true }
|
|
58
|
+
});
|
|
59
|
+
ref.onClose.subscribe((data) => {
|
|
60
|
+
if (data)
|
|
61
|
+
callBackFunction(data);
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
// static openDialog(
|
|
65
|
+
// dialogService: DialogService,
|
|
66
|
+
// componentType: Type<any>,
|
|
67
|
+
// callBackFunction: Function,
|
|
68
|
+
// id?: any,
|
|
69
|
+
// width?: string,
|
|
70
|
+
// height?: string
|
|
71
|
+
// ) {
|
|
72
|
+
// const ref = dialogService.open(componentType, {
|
|
73
|
+
// width: width,
|
|
74
|
+
// height: height,
|
|
75
|
+
// closable: false,
|
|
76
|
+
// maximizable: true,
|
|
77
|
+
// data: { id: id, popup: true }
|
|
78
|
+
// });
|
|
79
|
+
// ref.onClose.subscribe((data: any) => {
|
|
80
|
+
// if (data) callBackFunction(data);
|
|
81
|
+
// });
|
|
82
|
+
// }
|
|
83
|
+
static setControlValue(formGroup, controName, value) {
|
|
84
|
+
formGroup?.controls[controName]?.setValue(value);
|
|
85
|
+
}
|
|
86
|
+
static setValidators(formGroup, controName, validators) {
|
|
87
|
+
formGroup?.controls[controName]?.setValidators(validators);
|
|
88
|
+
formGroup?.controls[controName]?.updateValueAndValidity();
|
|
89
|
+
}
|
|
90
|
+
static clearValidators(formGroup, controName) {
|
|
91
|
+
formGroup?.controls[controName]?.updateValueAndValidity();
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
FormService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: FormService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
95
|
+
FormService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: FormService, providedIn: 'root' });
|
|
96
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: FormService, decorators: [{
|
|
97
|
+
type: Injectable,
|
|
98
|
+
args: [{
|
|
99
|
+
providedIn: 'root'
|
|
100
|
+
}]
|
|
101
|
+
}] });
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2FwaS9zZXJ2aWNlcy9mb3JtLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUVqRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBZ0JqRCxNQUFNLE9BQU8sV0FBVztJQUV0QixNQUFNLENBQUMsY0FBYyxDQUFDLFNBQW9CLEVBQUUsVUFBa0I7UUFDNUQsU0FBUyxFQUFFLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRUQsTUFBTSxDQUFDLHNCQUFzQixDQUFDLFNBQW9CLEVBQUUsVUFBa0IsRUFBRSxLQUFXO1FBQ2pGLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQzNDLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxJQUFJLElBQUksS0FBSyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBb0IsRUFBRSxVQUFrQjtRQUMzRCxTQUFTLEVBQUUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxNQUFNLENBQUMsWUFBWSxDQUFJLFNBQW9CLEVBQUUsVUFBa0I7UUFDN0QsT0FBVSxTQUFTLEVBQUUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFFLEtBQUssQ0FBQztJQUNuRCxDQUFDO0lBRUQsTUFBTSxDQUFDLGVBQWUsQ0FBQyxTQUFvQixFQUFFLE9BQWUsRUFBRSxTQUFrQjtRQUM5RSxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFD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UUFBUTtJQUNSLElBQUk7SUFFSixNQUFNLENBQUMsZUFBZSxDQUFDLFNBQW9CLEVBQUUsVUFBa0IsRUFBRSxLQUFVO1FBQ3pFLFNBQVMsRUFBRSxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUUsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQW9CLEVBQUUsVUFBa0IsRUFBRSxVQUE4QztRQUMzRyxTQUFTLEVBQUUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFFLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMzRCxTQUFTLEVBQUUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFFLHNCQUFzQixFQUFFLENBQUM7SUFDNUQsQ0FBQztJQUVELE1BQU0sQ0FBQyxlQUFlLENBQUMsU0FBb0IsRUFBRSxVQUFrQjtRQUM3RCxTQUFTLEVBQUUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFFLHNCQUFzQixFQUFFLENBQUM7SUFDNUQsQ0FBQzs7d0dBekdVLFdBQVc7NEdBQVgsV0FBVyxjQUZWLE1BQU07MkZBRVAsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE9iamVjdFNlcnZpY2UgfSBmcm9tICcuL29iamVjdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIHBhcmFtc0RpYWxvZyB7XHJcbiAgaWQ/OiBhbnk7XHJcbiAgY2xvc2FibGU/OiBib29sZWFuO1xyXG4gIG1heGltaXphYmxlPzogYm9vbGVhbjtcclxuICBwb3B1cD86IGJvb2xlYW47XHJcbiAgaGVpZ2h0Pzogc3RyaW5nO1xyXG4gIHdpZHRoPzogc3RyaW5nO1xyXG4gIHN0eWxlQ2xhc3M/OiBzdHJpbmc7XHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEZvcm1TZXJ2aWNlIHtcclxuXHJcbiAgc3RhdGljIGRpc2FibGVDb250cm9sKGZvcm1Hcm91cDogRm9ybUdyb3VwLCBjb250cm9OYW1lOiBzdHJpbmcpIHtcclxuICAgIGZvcm1Hcm91cD8uY29udHJvbHNbY29udHJvTmFtZV0/LmRpc2FibGUoKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBkaXNhYmxlQW5kQ2xlYXJDb250cm9sKGZvcm1Hcm91cDogRm9ybUdyb3VwLCBjb250cm9OYW1lOiBzdHJpbmcsIHZhbHVlPzogYW55KSB7XHJcbiAgICB0aGlzLmRpc2FibGVDb250cm9sKGZvcm1Hcm91cCwgY29udHJvTmFtZSk7XHJcbiAgICB0aGlzLnNldENvbnRyb2xWYWx1ZShmb3JtR3JvdXAsIGNvbnRyb05hbWUsIG51bGwgfHwgdmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGVuYWJsZUNvbnRyb2woZm9ybUdyb3VwOiBGb3JtR3JvdXAsIGNvbnRyb05hbWU6IHN0cmluZykge1xyXG4gICAgZm9ybUdyb3VwPy5jb250cm9sc1tjb250cm9OYW1lXT8uZW5hYmxlKCk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZ2V0Rm9ybVZhbHVlPFQ+KGZvcm1Hcm91cDogRm9ybUdyb3VwLCBjb250cm9OYW1lOiBzdHJpbmcpOiBUIHtcclxuICAgIHJldHVybiA8VD5mb3JtR3JvdXA/LmNvbnRyb2xzW2NvbnRyb05hbWVdPy52YWx1ZTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBoYXNDb250cm9sRXJyb3IoZm9ybUdyb3VwOiBGb3JtR3JvdXAsIGNvbnRyb2w6IHN0cmluZywgZXJyb3JDb2RlPzogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBmb3JtQ29udHJvbCA9IGZvcm1Hcm91cC5nZXQoY29udHJvbCk7XHJcbiAgICBsZXQgaGFzRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBpZiAoIWZvcm1Db250cm9sKSByZXR1cm4gZmFsc2U7XHJcbiAgICBpZiAoZXJyb3JDb2RlKSBoYXNFcnJvciA9IGZvcm1Db250cm9sLmhhc0Vycm9yKGVycm9yQ29kZSk7XHJcbiAgICBlbHNlIGhhc0Vycm9yID0gZm9ybUNvbnRyb2wuZXJyb3JzID8gdHJ1ZSA6IGZhbHNlO1xyXG5cclxuICAgIHJldHVybiBoYXNFcnJvciAmJiBmb3JtQ29udHJvbC50b3VjaGVkO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGludmFsaWRGb3JtKGZvcm1Hcm91cDogRm9ybUdyb3VwLCBub3RpZmljYXRpb24/OiBhbnkpIHtcclxuICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhmb3JtR3JvdXAuZ2V0UmF3VmFsdWUoKSk7XHJcblxyXG4gICAga2V5cy5mb3JFYWNoKGsgPT4ge1xyXG4gICAgICBjb25zdCBjb250cm9sID0gZm9ybUdyb3VwLmNvbnRyb2xzW2tdO1xyXG5cclxuICAgICAgaWYgKG5vdGlmaWNhdGlvbikge1xyXG4gICAgICAgIGlmIChub3RpZmljYXRpb24/Lml0ZW0yKSB7XHJcbiAgICAgICAgICBjb25zdCBpdGVtID0gT2JqZWN0U2VydmljZS5maW5kT2JqZWN0KG5vdGlmaWNhdGlvbi5pdGVtMiwgJ3Byb3BlcnR5Jywgayk7XHJcbiAgICAgICAgICBpZiAoaXRlbSkgY29udHJvbC5zZXRFcnJvcnMoeyBiYWNrZW5kRXJyb3I6IHRydWUsIGVycm9NZXNzYWdlOiBpdGVtLm1lc3NhZ2UgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgY29uc3QgaXRlbSA9IE9iamVjdFNlcnZpY2UuZmluZE9iamVjdChub3RpZmljYXRpb24sICdrZXknLCBrKTtcclxuICAgICAgICAgIGlmIChpdGVtKSBjb250cm9sLnNldEVycm9ycyh7IGJhY2tlbmRFcnJvcjogdHJ1ZSwgZXJyb01lc3NhZ2U6IGl0ZW0ubWVzc2FnZSB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICghY29udHJvbC52YWxpZCkge1xyXG4gICAgICAgIGNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBvcGVuRGlhbG9nKFxyXG4gICAgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcclxuICAgIGNvbXBvbmVudFR5cGU6IFR5cGU8YW55PixcclxuICAgIGNhbGxCYWNrRnVuY3Rpb246IEZ1bmN0aW9uLFxyXG4gICAgcGFyYW1zRGlhbG9nPzogcGFyYW1zRGlhbG9nXHJcbiAgKSB7XHJcbiAgICBjb25zdCByZWYgPSBkaWFsb2dTZXJ2aWNlLm9wZW4oY29tcG9uZW50VHlwZSwge1xyXG4gICAgICBjbG9zYWJsZTogcGFyYW1zRGlhbG9nPy5jbG9zYWJsZSB8fCBmYWxzZSxcclxuICAgICAgbWF4aW1pemFibGU6IHBhcmFtc0RpYWxvZz8ubWF4aW1pemFibGUgfHwgdHJ1ZSxcclxuICAgICAgaGVpZ2h0OiBwYXJhbXNEaWFsb2c/LmhlaWdodCB8fCAnYXV0bycsXHJcbiAgICAgIHdpZHRoOiBwYXJhbXNEaWFsb2c/LndpZHRoLFxyXG4gICAgICBzdHlsZUNsYXNzOiBwYXJhbXNEaWFsb2c/LnN0eWxlQ2xhc3MsXHJcbiAgICAgIGRhdGE6IHsgaWQ6IHBhcmFtc0RpYWxvZz8uaWQsIHBvcHVwOiBwYXJhbXNEaWFsb2c/LnBvcHVwIHx8IHRydWUgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgcmVmLm9uQ2xvc2Uuc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcclxuICAgICAgaWYgKGRhdGEpIGNhbGxCYWNrRnVuY3Rpb24oZGF0YSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vIHN0YXRpYyBvcGVuRGlhbG9nKFxyXG4gIC8vICAgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcclxuICAvLyAgIGNvbXBvbmVudFR5cGU6IFR5cGU8YW55PixcclxuICAvLyAgIGNhbGxCYWNrRnVuY3Rpb246IEZ1bmN0aW9uLFxyXG4gIC8vICAgaWQ/OiBhbnksXHJcbiAgLy8gICB3aWR0aD86IHN0cmluZyxcclxuICAvLyAgIGhlaWdodD86IHN0cmluZ1xyXG4gIC8vICkge1xyXG4gIC8vICAgY29uc3QgcmVmID0gZGlhbG9nU2VydmljZS5vcGVuKGNvbXBvbmVudFR5cGUsIHtcclxuICAvLyAgICAgd2lkdGg6IHdpZHRoLFxyXG4gIC8vICAgICBoZWlnaHQ6IGhlaWdodCxcclxuICAvLyAgICAgY2xvc2FibGU6IGZhbHNlLFxyXG4gIC8vICAgICBtYXhpbWl6YWJsZTogdHJ1ZSxcclxuICAvLyAgICAgZGF0YTogeyBpZDogaWQsIHBvcHVwOiB0cnVlIH1cclxuICAvLyAgIH0pO1xyXG5cclxuICAvLyAgIHJlZi5vbkNsb3NlLnN1YnNjcmliZSgoZGF0YTogYW55KSA9PiB7XHJcbiAgLy8gICAgIGlmIChkYXRhKSBjYWxsQmFja0Z1bmN0aW9uKGRhdGEpO1xyXG4gIC8vICAgfSk7XHJcbiAgLy8gfVxyXG5cclxuICBzdGF0aWMgc2V0Q29udHJvbFZhbHVlKGZvcm1Hcm91cDogRm9ybUdyb3VwLCBjb250cm9OYW1lOiBzdHJpbmcsIHZhbHVlOiBhbnkpIHtcclxuICAgIGZvcm1Hcm91cD8uY29udHJvbHNbY29udHJvTmFtZV0/LnNldFZhbHVlKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBzZXRWYWxpZGF0b3JzKGZvcm1Hcm91cDogRm9ybUdyb3VwLCBjb250cm9OYW1lOiBzdHJpbmcsIHZhbGlkYXRvcnM6IFZhbGlkYXRvckZuIHwgVmFsaWRhdG9yRm5bXSB8IG51bGwpIHtcclxuICAgIGZvcm1Hcm91cD8uY29udHJvbHNbY29udHJvTmFtZV0/LnNldFZhbGlkYXRvcnModmFsaWRhdG9ycyk7XHJcbiAgICBmb3JtR3JvdXA/LmNvbnRyb2xzW2NvbnRyb05hbWVdPy51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgY2xlYXJWYWxpZGF0b3JzKGZvcm1Hcm91cDogRm9ybUdyb3VwLCBjb250cm9OYW1lOiBzdHJpbmcpIHtcclxuICAgIGZvcm1Hcm91cD8uY29udHJvbHNbY29udHJvTmFtZV0/LnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -9,9 +9,9 @@ export class ButtonPersonalizeComponent extends BaseComponentButton {
|
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
11
|
ButtonPersonalizeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ButtonPersonalizeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
-
ButtonPersonalizeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: ButtonPersonalizeComponent, selector: "kv-button-personalize", usesInheritance: true, ngImport: i0, template: "\r\n<button\r\n pButton\r\n pRipple\r\n [class]=\"color\"\r\n [icon]=\"icon\"\r\n [label]=\"label\"\r\n [loading]=\"loading\"\r\n (click)=\"click($event)\">\r\n</button>\r\n\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: i2.Ripple, selector: "[pRipple]" }] });
|
|
12
|
+
ButtonPersonalizeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: ButtonPersonalizeComponent, selector: "kv-button-personalize", usesInheritance: true, ngImport: i0, template: "\r\n<button\r\n pButton\r\n pRipple\r\n [class]=\"color\"\r\n [icon]=\"icon\"\r\n [label]=\"label\"\r\n [loading]=\"loading\"\r\n (click)=\"click($event)\"\r\n class=\"btn-personalize\">\r\n</button>\r\n\r\n", styles: [".btn-personalize{height:40px}\n"], dependencies: [{ kind: "directive", type: i1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: i2.Ripple, selector: "[pRipple]" }] });
|
|
13
13
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ButtonPersonalizeComponent, decorators: [{
|
|
14
14
|
type: Component,
|
|
15
|
-
args: [{ selector: 'kv-button-personalize', template: "\r\n<button\r\n pButton\r\n pRipple\r\n [class]=\"color\"\r\n [icon]=\"icon\"\r\n [label]=\"label\"\r\n [loading]=\"loading\"\r\n (click)=\"click($event)\">\r\n</button>\r\n\r\n" }]
|
|
15
|
+
args: [{ selector: 'kv-button-personalize', template: "\r\n<button\r\n pButton\r\n pRipple\r\n [class]=\"color\"\r\n [icon]=\"icon\"\r\n [label]=\"label\"\r\n [loading]=\"loading\"\r\n (click)=\"click($event)\"\r\n class=\"btn-personalize\">\r\n</button>\r\n\r\n", styles: [".btn-personalize{height:40px}\n"] }]
|
|
16
16
|
}], ctorParameters: function () { return []; } });
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLXBlcnNvbmFsaXplLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9idXR0b25zL2J1dHRvbi1wZXJzb25hbGl6ZS9idXR0b24tcGVyc29uYWxpemUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2J1dHRvbnMvYnV0dG9uLXBlcnNvbmFsaXplL2J1dHRvbi1wZXJzb25hbGl6ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDOzs7O0FBT3RGLE1BQU0sT0FBTywwQkFBMkIsU0FBUSxtQkFBbUI7SUFDakU7UUFDRSxLQUFLLEVBQUUsQ0FBQztJQUNWLENBQUM7O3VIQUhVLDBCQUEwQjsyR0FBMUIsMEJBQTBCLG9GQ1J2Qyx5TkFZQTsyRkRKYSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0UsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJhc2VDb21wb25lbnRCdXR0b24gfSBmcm9tICcuLi8uLi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWJ1dHRvbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2t2LWJ1dHRvbi1wZXJzb25hbGl6ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi1wZXJzb25hbGl6ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYnV0dG9uLXBlcnNvbmFsaXplLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEJ1dHRvblBlcnNvbmFsaXplQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudEJ1dHRvbiB7XHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxufVxyXG4iLCJcclxuPGJ1dHRvblxyXG4gIHBCdXR0b25cclxuICBwUmlwcGxlXHJcbiAgW2NsYXNzXT1cImNvbG9yXCJcclxuICBbaWNvbl09XCJpY29uXCJcclxuICBbbGFiZWxdPVwibGFiZWxcIlxyXG4gIFtsb2FkaW5nXT1cImxvYWRpbmdcIlxyXG4gIChjbGljayk9XCJjbGljaygkZXZlbnQpXCJcclxuICBjbGFzcz1cImJ0bi1wZXJzb25hbGl6ZVwiPlxyXG48L2J1dHRvbj5cclxuXHJcbiJdfQ==
|