@stiunb/unb-lib-components 18.0.23 → 18.0.24
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/esm2022/lib/unb-mensagem/unb-mensagem.component.mjs +18 -26
- package/esm2022/lib/unb-mensagem/unb-mensagem.service.mjs +16 -21
- package/esm2022/lib/unb-pessoa/unb-pessoa-email-form/unb-pessoa-email-form.mjs +60 -29
- package/esm2022/lib/unb-pessoa/unb-pessoa-email-form/unb-pessoa-email-list.mjs +4 -4
- package/esm2022/lib/unb-pessoa/unb-pessoa-endereco-form/unb-pessoa-endereco-form.mjs +98 -67
- package/esm2022/lib/unb-pessoa/unb-pessoa-endereco-form/unb-pessoa-endereco-list.mjs +4 -4
- package/esm2022/lib/unb-pessoa/unb-pessoa-form/unb-pessoa-form.component.mjs +57 -73
- package/esm2022/lib/unb-pessoa/unb-pessoa-pesquisar/unb-pessoa-pesquisar.component.mjs +49 -36
- package/esm2022/lib/unb-pessoa/unb-pessoa-telefone-form/unb-pessoa-telefone-form.mjs +57 -29
- package/esm2022/lib/unb-pessoa/unb-pessoa-telefone-form/unb-pessoa-telefone-list.mjs +4 -4
- package/esm2022/lib/unb-pessoa/unb-pessoa.service.mjs +141 -45
- package/fesm2022/stiunb-unb-lib-components.mjs +467 -309
- package/fesm2022/stiunb-unb-lib-components.mjs.map +1 -1
- package/lib/unb-mensagem/unb-mensagem.component.d.ts +3 -17
- package/lib/unb-mensagem/unb-mensagem.service.d.ts +16 -18
- package/lib/unb-pessoa/unb-pessoa-email-form/unb-pessoa-email-form.d.ts +6 -2
- package/lib/unb-pessoa/unb-pessoa-email-form/unb-pessoa-email-list.d.ts +2 -5
- package/lib/unb-pessoa/unb-pessoa-endereco-form/unb-pessoa-endereco-form.d.ts +6 -3
- package/lib/unb-pessoa/unb-pessoa-endereco-form/unb-pessoa-endereco-list.d.ts +2 -5
- package/lib/unb-pessoa/unb-pessoa-form/unb-pessoa-form.component.d.ts +8 -8
- package/lib/unb-pessoa/unb-pessoa-pesquisar/unb-pessoa-pesquisar.component.d.ts +8 -8
- package/lib/unb-pessoa/unb-pessoa-telefone-form/unb-pessoa-telefone-form.d.ts +6 -4
- package/lib/unb-pessoa/unb-pessoa-telefone-form/unb-pessoa-telefone-list.d.ts +2 -5
- package/lib/unb-pessoa/unb-pessoa.service.d.ts +9 -13
- package/package.json +1 -1
|
@@ -8,47 +8,39 @@ export class UnbMensagemComponent {
|
|
|
8
8
|
this.mensagemService = mensagemService;
|
|
9
9
|
}
|
|
10
10
|
ngOnInit() {
|
|
11
|
-
this.subscription = this.mensagemService.getMessageSubject().subscribe(
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
this.subscription = this.mensagemService.getMessageSubject().subscribe(event => {
|
|
12
|
+
// LÓGICA DE FILTRAGEM:
|
|
13
|
+
// 1. Se a mensagem tem um targetId, mas este componente não tem ID ou o ID não bate: IGNORA
|
|
14
|
+
if (event.targetId && event.targetId !== this.identificador) {
|
|
15
|
+
return;
|
|
14
16
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
+
// 2. Se a mensagem tem targetId e bate com o meu ID: ACEITA
|
|
18
|
+
// 3. Se a mensagem NÃO tem targetId (global): ACEITA (comportamento padrão/antigo)
|
|
19
|
+
if (event.model) {
|
|
20
|
+
this.alertMessage = event.model;
|
|
17
21
|
}
|
|
18
22
|
});
|
|
19
23
|
}
|
|
20
24
|
ngAfterContentInit() {
|
|
21
25
|
if (this.mensagem != null && this.mensagem != undefined) {
|
|
26
|
+
// Aqui passamos o this.id para garantir que a mensagem inicial fique neste componente
|
|
22
27
|
this.showMessage(this.mensagem, this.getTipo());
|
|
23
28
|
}
|
|
24
29
|
}
|
|
25
|
-
/**
|
|
26
|
-
* Esconde o componente de mensagem
|
|
27
|
-
*/
|
|
28
30
|
hide() {
|
|
29
|
-
|
|
31
|
+
// Ao fechar pelo X, passamos o próprio ID para não fechar outros componentes sem querer
|
|
32
|
+
this.mensagemService.hideMessage(this.identificador);
|
|
30
33
|
}
|
|
31
|
-
/**
|
|
32
|
-
*
|
|
33
|
-
* @param message mensagem que vai aparecer na tela
|
|
34
|
-
* @param tipo tipo da mensagem: success, info, warning, danger.
|
|
35
|
-
*/
|
|
36
34
|
showMessage(message, tipo) {
|
|
37
|
-
this.mensagemService.showMessage(message, tipo);
|
|
35
|
+
this.mensagemService.showMessage(message, tipo, this.identificador);
|
|
38
36
|
}
|
|
39
37
|
ngOnDestroy() {
|
|
40
|
-
// unsubscribe to ensure no memory leaks
|
|
41
38
|
if (this.subscription) {
|
|
42
39
|
this.subscription.unsubscribe();
|
|
43
40
|
}
|
|
44
41
|
}
|
|
45
|
-
/**
|
|
46
|
-
* Recupera qual o tipo da mensagem.
|
|
47
|
-
* O método tenta achar o tipo conforme o valor informado, incluido erros de digitação
|
|
48
|
-
*
|
|
49
|
-
* @returns o valor correspondente do informa. Caso não encontra, emite um erro e coloca retorna o padrão info como default
|
|
50
|
-
*/
|
|
51
42
|
getTipo() {
|
|
43
|
+
// ... (mesma implementação anterior) ...
|
|
52
44
|
if (this.tipo != null && this.tipo != undefined) {
|
|
53
45
|
let valor = this.tipo.toLowerCase();
|
|
54
46
|
if (valor == 'warning' || valor == 'warn' || valor == 'aviso') {
|
|
@@ -64,12 +56,10 @@ export class UnbMensagemComponent {
|
|
|
64
56
|
return UnbTipoMensagemEnum.INFO;
|
|
65
57
|
}
|
|
66
58
|
}
|
|
67
|
-
// o padrao eh o info
|
|
68
|
-
console.log("Erro: Input [tipo] do componente unb-mensagem tem um valor inválido. Utilize: " + UnbTipoMensagemEnum.SUCCESS + " | " + UnbTipoMensagemEnum.INFO + " | " + UnbTipoMensagemEnum.WARNING + " | " + UnbTipoMensagemEnum.DANGER);
|
|
69
59
|
return UnbTipoMensagemEnum.INFO;
|
|
70
60
|
}
|
|
71
61
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: UnbMensagemComponent, deps: [{ token: i1.UnbMensagemService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
72
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.2", type: UnbMensagemComponent, selector: "unb-mensagem", inputs: { mensagem: "mensagem", tipo: "tipo" }, ngImport: i0, template: "\r\n<div class=\"alert\" *ngIf=\"alertMessage && alertMessage.message && alertMessage.message.length > 1\" [ngStyle]=\"{background: alertMessage.background_color, 'border-color': alertMessage.border_color}\"> \r\n <div class=\"mensagem\" [ngStyle]=\"{color: alertMessage.font_color}\" [innerHtml]= \"alertMessage.message\"></div>\r\n <a class=\"close\" (click)=\"hide()\" aria-label=\"fechar\" [ngStyle]=\"{color: alertMessage.font_color}\">x</a>\r\n</div> \r\n\r\n", styles: [".alert{display:flex;text-align:center;justify-content:space-between;border-top-color:darken(1px,5%);padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.42857143;font-weight:400;border-color:#fff}.mensagem{margin:0 auto}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;cursor:pointer;justify-content:flex-end}.close:hover{opacity:.7}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
62
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.2", type: UnbMensagemComponent, selector: "unb-mensagem", inputs: { mensagem: "mensagem", tipo: "tipo", identificador: "identificador" }, ngImport: i0, template: "\r\n<div class=\"alert\" *ngIf=\"alertMessage && alertMessage.message && alertMessage.message.length > 1\" [ngStyle]=\"{background: alertMessage.background_color, 'border-color': alertMessage.border_color}\"> \r\n <div class=\"mensagem\" [ngStyle]=\"{color: alertMessage.font_color}\" [innerHtml]= \"alertMessage.message\"></div>\r\n <a class=\"close\" (click)=\"hide()\" aria-label=\"fechar\" [ngStyle]=\"{color: alertMessage.font_color}\">x</a>\r\n</div> \r\n\r\n", styles: [".alert{display:flex;text-align:center;justify-content:space-between;border-top-color:darken(1px,5%);padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.42857143;font-weight:400;border-color:#fff}.mensagem{margin:0 auto}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;cursor:pointer;justify-content:flex-end}.close:hover{opacity:.7}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
73
63
|
}
|
|
74
64
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: UnbMensagemComponent, decorators: [{
|
|
75
65
|
type: Component,
|
|
@@ -78,5 +68,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
|
|
|
78
68
|
type: Input
|
|
79
69
|
}], tipo: [{
|
|
80
70
|
type: Input
|
|
71
|
+
}], identificador: [{
|
|
72
|
+
type: Input
|
|
81
73
|
}] } });
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLW1lbnNhZ2VtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuYi1saWItY29tcG9uZW50cy9zcmMvbGliL3VuYi1tZW5zYWdlbS91bmItbWVuc2FnZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5iLWxpYi1jb21wb25lbnRzL3NyYy9saWIvdW5iLW1lbnNhZ2VtL3VuYi1tZW5zYWdlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFzQixNQUFNLHdCQUF3QixDQUFDOzs7O0FBU2pGLE1BQU0sT0FBTyxvQkFBb0I7SUFXL0IsWUFBb0IsZUFBbUM7UUFBbkMsb0JBQWUsR0FBZixlQUFlLENBQW9CO0lBQUcsQ0FBQztJQUUzRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGlCQUFpQixFQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBRTdFLHVCQUF1QjtZQUV2Qiw0RkFBNEY7WUFDNUYsSUFBSSxLQUFLLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUM1RCxPQUFPO1lBQ1QsQ0FBQztZQUVELDREQUE0RDtZQUM1RCxtRkFBbUY7WUFFbkYsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2hCLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUNsQyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUN4RCxzRkFBc0Y7WUFDdEYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ2xELENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSTtRQUNGLHdGQUF3RjtRQUN4RixJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFlLEVBQUUsSUFBWTtRQUN2QyxJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbEMsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPO1FBQ0wseUNBQXlDO1FBQ3pDLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxTQUFTLEVBQUMsQ0FBQztZQUMvQyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3BDLElBQUksS0FBSyxJQUFJLFNBQVMsSUFBSSxLQUFLLElBQUksTUFBTSxJQUFJLEtBQUssSUFBSSxPQUFPLEVBQUMsQ0FBQztnQkFDN0QsT0FBTyxtQkFBbUIsQ0FBQyxPQUFPLENBQUU7WUFDdEMsQ0FBQztpQkFBTSxJQUFJLEtBQUssSUFBSSxTQUFTLElBQUksS0FBSyxJQUFJLFNBQVMsSUFBSSxLQUFLLElBQUksUUFBUSxFQUFDLENBQUM7Z0JBQ3hFLE9BQU8sbUJBQW1CLENBQUMsT0FBTyxDQUFDO1lBQ3JDLENBQUM7aUJBQU0sSUFBSSxLQUFLLElBQUksUUFBUSxJQUFJLEtBQUssSUFBSSxNQUFNLElBQUksS0FBSyxJQUFJLE9BQU8sRUFBQyxDQUFDO2dCQUNuRSxPQUFPLG1CQUFtQixDQUFDLE1BQU0sQ0FBQztZQUNwQyxDQUFDO2lCQUFNLElBQUksS0FBSyxJQUFJLE1BQU0sRUFBQyxDQUFDO2dCQUMxQixPQUFPLG1CQUFtQixDQUFDLElBQUksQ0FBQztZQUNsQyxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sbUJBQW1CLENBQUMsSUFBSSxDQUFDO0lBQ2xDLENBQUM7OEdBckVVLG9CQUFvQjtrR0FBcEIsb0JBQW9CLG9JQ1ZqQyw4ZEFNQTs7MkZESWEsb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLGNBQWM7dUZBTWYsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBR0csYUFBYTtzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFVuYlRpcG9NZW5zYWdlbUVudW0sIFVuYk1lbnNhZ2VtU2VydmljZSB9IGZyb20gJy4vdW5iLW1lbnNhZ2VtLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVbmJNZW5zYWdlbU1vZGVsIH0gZnJvbSAnLi91bmItbWVzc2FnZS5tb2RlbCc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd1bmItbWVuc2FnZW0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi91bmItbWVuc2FnZW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3VuYi1tZW5zYWdlbS5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFVuYk1lbnNhZ2VtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICBASW5wdXQoKSBtZW5zYWdlbSE6IHN0cmluZzsgXHJcbiAgQElucHV0KCkgdGlwbyE6IHN0cmluZztcclxuICBcclxuICAvLyBJbnB1dCBvcGNpb25hbCBwYXJhIGlkZW50aWZpY2FyIGVzdGUgY29tcG9uZW50ZSBlc3BlY8OtZmljb1xyXG4gIEBJbnB1dCgpIGlkZW50aWZpY2Fkb3I/OiBzdHJpbmc7XHJcbiBcclxuICBhbGVydE1lc3NhZ2UhOiBVbmJNZW5zYWdlbU1vZGVsO1xyXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uIHwgbnVsbDtcclxuICBcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1lbnNhZ2VtU2VydmljZTogVW5iTWVuc2FnZW1TZXJ2aWNlKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHsgIFxyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLm1lbnNhZ2VtU2VydmljZS5nZXRNZXNzYWdlU3ViamVjdCgpLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgIFxyXG4gICAgICAvLyBMw5NHSUNBIERFIEZJTFRSQUdFTTpcclxuICAgICAgXHJcbiAgICAgIC8vIDEuIFNlIGEgbWVuc2FnZW0gdGVtIHVtIHRhcmdldElkLCBtYXMgZXN0ZSBjb21wb25lbnRlIG7Do28gdGVtIElEIG91IG8gSUQgbsOjbyBiYXRlOiBJR05PUkFcclxuICAgICAgaWYgKGV2ZW50LnRhcmdldElkICYmIGV2ZW50LnRhcmdldElkICE9PSB0aGlzLmlkZW50aWZpY2Fkb3IpIHtcclxuICAgICAgICByZXR1cm47IFxyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyAyLiBTZSBhIG1lbnNhZ2VtIHRlbSB0YXJnZXRJZCBlIGJhdGUgY29tIG8gbWV1IElEOiBBQ0VJVEFcclxuICAgICAgLy8gMy4gU2UgYSBtZW5zYWdlbSBOw4NPIHRlbSB0YXJnZXRJZCAoZ2xvYmFsKTogQUNFSVRBIChjb21wb3J0YW1lbnRvIHBhZHLDo28vYW50aWdvKVxyXG4gICAgICBcclxuICAgICAgaWYgKGV2ZW50Lm1vZGVsKSB7XHJcbiAgICAgICAgdGhpcy5hbGVydE1lc3NhZ2UgPSBldmVudC5tb2RlbDtcclxuICAgICAgfVxyXG4gICAgfSk7IFxyXG4gIH1cclxuXHJcbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xyXG4gICAgaWYgKHRoaXMubWVuc2FnZW0gIT0gbnVsbCAmJiB0aGlzLm1lbnNhZ2VtICE9IHVuZGVmaW5lZCkge1xyXG4gICAgICAvLyBBcXVpIHBhc3NhbW9zIG8gdGhpcy5pZCBwYXJhIGdhcmFudGlyIHF1ZSBhIG1lbnNhZ2VtIGluaWNpYWwgZmlxdWUgbmVzdGUgY29tcG9uZW50ZVxyXG4gICAgICB0aGlzLnNob3dNZXNzYWdlKHRoaXMubWVuc2FnZW0sIHRoaXMuZ2V0VGlwbygpKTsgXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoaWRlKCk6IHZvaWQgeyBcclxuICAgIC8vIEFvIGZlY2hhciBwZWxvIFgsIHBhc3NhbW9zIG8gcHLDs3ByaW8gSUQgcGFyYSBuw6NvIGZlY2hhciBvdXRyb3MgY29tcG9uZW50ZXMgc2VtIHF1ZXJlclxyXG4gICAgdGhpcy5tZW5zYWdlbVNlcnZpY2UuaGlkZU1lc3NhZ2UodGhpcy5pZGVudGlmaWNhZG9yKTtcclxuICB9XHJcblxyXG4gIHNob3dNZXNzYWdlKG1lc3NhZ2U6IHN0cmluZywgdGlwbzogbnVtYmVyKSB7XHJcbiAgICB0aGlzLm1lbnNhZ2VtU2VydmljZS5zaG93TWVzc2FnZShtZXNzYWdlLCB0aXBvLCB0aGlzLmlkZW50aWZpY2Fkb3IpO1xyXG4gIH1cclxuICBcclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikgeyBcclxuICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldFRpcG8oKTogbnVtYmVyIHtcclxuICAgIC8vIC4uLiAobWVzbWEgaW1wbGVtZW50YcOnw6NvIGFudGVyaW9yKSAuLi5cclxuICAgIGlmICh0aGlzLnRpcG8gIT0gbnVsbCAmJiB0aGlzLnRpcG8gIT0gdW5kZWZpbmVkKXsgXHJcbiAgICAgIGxldCB2YWxvciA9IHRoaXMudGlwby50b0xvd2VyQ2FzZSgpO1xyXG4gICAgICBpZiAodmFsb3IgPT0gJ3dhcm5pbmcnIHx8IHZhbG9yID09ICd3YXJuJyB8fCB2YWxvciA9PSAnYXZpc28nKXtcclxuICAgICAgICByZXR1cm4gVW5iVGlwb01lbnNhZ2VtRW51bS5XQVJOSU5HIDtcclxuICAgICAgfSBlbHNlIGlmICh2YWxvciA9PSAnc3VjZXNzbycgfHwgdmFsb3IgPT0gJ3N1Y2Nlc3MnIHx8IHZhbG9yID09ICdzdWNlc3MnKXtcclxuICAgICAgICByZXR1cm4gVW5iVGlwb01lbnNhZ2VtRW51bS5TVUNDRVNTO1xyXG4gICAgICB9IGVsc2UgaWYgKHZhbG9yID09ICdkYW5nZXInIHx8IHZhbG9yID09ICdlcnJvJyB8fCB2YWxvciA9PSAnZXJyb3InKXtcclxuICAgICAgICByZXR1cm4gVW5iVGlwb01lbnNhZ2VtRW51bS5EQU5HRVI7XHJcbiAgICAgIH0gZWxzZSBpZiAodmFsb3IgPT0gJ2luZm8nKXtcclxuICAgICAgICByZXR1cm4gVW5iVGlwb01lbnNhZ2VtRW51bS5JTkZPO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gVW5iVGlwb01lbnNhZ2VtRW51bS5JTkZPO1xyXG4gIH1cclxufSIsIlxyXG48ZGl2IGNsYXNzPVwiYWxlcnRcIiAqbmdJZj1cImFsZXJ0TWVzc2FnZSAmJiBhbGVydE1lc3NhZ2UubWVzc2FnZSAmJiBhbGVydE1lc3NhZ2UubWVzc2FnZS5sZW5ndGggPiAxXCIgW25nU3R5bGVdPVwie2JhY2tncm91bmQ6IGFsZXJ0TWVzc2FnZS5iYWNrZ3JvdW5kX2NvbG9yLCAnYm9yZGVyLWNvbG9yJzogYWxlcnRNZXNzYWdlLmJvcmRlcl9jb2xvcn1cIj4gICAgIFxyXG4gICAgPGRpdiBjbGFzcz1cIm1lbnNhZ2VtXCIgW25nU3R5bGVdPVwie2NvbG9yOiBhbGVydE1lc3NhZ2UuZm9udF9jb2xvcn1cIiBbaW5uZXJIdG1sXT0gXCJhbGVydE1lc3NhZ2UubWVzc2FnZVwiPjwvZGl2PlxyXG4gICAgPGEgIGNsYXNzPVwiY2xvc2VcIiAoY2xpY2spPVwiaGlkZSgpXCIgYXJpYS1sYWJlbD1cImZlY2hhclwiIFtuZ1N0eWxlXT1cIntjb2xvcjogYWxlcnRNZXNzYWdlLmZvbnRfY29sb3J9XCI+eDwvYT5cclxuPC9kaXY+IFxyXG5cclxuIl19
|
|
@@ -2,7 +2,6 @@ import { Injectable } from '@angular/core';
|
|
|
2
2
|
import { Subject } from 'rxjs';
|
|
3
3
|
import { UnbMensagemModel } from './unb-message.model';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
-
// faz com que a enum seja uma contagem de 0 a 3
|
|
6
5
|
export var UnbTipoMensagemEnum;
|
|
7
6
|
(function (UnbTipoMensagemEnum) {
|
|
8
7
|
UnbTipoMensagemEnum[UnbTipoMensagemEnum["SUCCESS"] = 0] = "SUCCESS";
|
|
@@ -12,8 +11,8 @@ export var UnbTipoMensagemEnum;
|
|
|
12
11
|
})(UnbTipoMensagemEnum || (UnbTipoMensagemEnum = {}));
|
|
13
12
|
export class UnbMensagemService {
|
|
14
13
|
constructor() {
|
|
14
|
+
// Mudamos o tipo do Subject para aceitar o evento com ID
|
|
15
15
|
this.messageSubject = new Subject();
|
|
16
|
-
// [background_color, font_color, border_color]
|
|
17
16
|
this.cores = [
|
|
18
17
|
['#dff0d8', '#3c763d', '#d6e9c6'], // SUCCESS
|
|
19
18
|
['#d9edf7', '#31708f', '#bce8f1'], // INFO
|
|
@@ -22,30 +21,26 @@ export class UnbMensagemService {
|
|
|
22
21
|
];
|
|
23
22
|
}
|
|
24
23
|
/**
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
showMessage(message, type) {
|
|
30
|
-
this.
|
|
24
|
+
* @param message mensagem que vai aparecer na tela
|
|
25
|
+
* @param tipo tipo da mensagem: success, info, warning, danger.
|
|
26
|
+
* @param id (Opcional) Identificador do componente que deve exibir a mensagem
|
|
27
|
+
*/
|
|
28
|
+
showMessage(message, type, id) {
|
|
29
|
+
const model = this.createAlertMessage(message, ...this.cores[type]);
|
|
30
|
+
// Envia o modelo E o id alvo (se houver)
|
|
31
|
+
this.messageSubject.next({ model: model, targetId: id });
|
|
31
32
|
}
|
|
32
33
|
/**
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
* Esconde o componente.
|
|
35
|
+
* @param id (Opcional) Se informado, esconde apenas o componente com este ID.
|
|
36
|
+
*/
|
|
37
|
+
hideMessage(id) {
|
|
38
|
+
// Envia modelo vazio para esconder
|
|
39
|
+
this.messageSubject.next({ model: new UnbMensagemModel(), targetId: id });
|
|
37
40
|
}
|
|
38
41
|
getMessageSubject() {
|
|
39
42
|
return this.messageSubject.asObservable();
|
|
40
43
|
}
|
|
41
|
-
/**
|
|
42
|
-
*
|
|
43
|
-
* @param message Cria a mensagem passando os parametros com base nas cores criadas no construturo
|
|
44
|
-
* @param background_color cor de fundo
|
|
45
|
-
* @param font_color cor da fonte
|
|
46
|
-
* @param border_color cor da borda
|
|
47
|
-
* @returns
|
|
48
|
-
*/
|
|
49
44
|
createAlertMessage(message, background_color, font_color, border_color) {
|
|
50
45
|
return { message, background_color, font_color, border_color };
|
|
51
46
|
}
|
|
@@ -58,4 +53,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
|
|
|
58
53
|
providedIn: 'root'
|
|
59
54
|
}]
|
|
60
55
|
}], ctorParameters: () => [] });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLW1lbnNhZ2VtLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmItbGliLWNvbXBvbmVudHMvc3JjL2xpYi91bmItbWVuc2FnZW0vdW5iLW1lbnNhZ2VtLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUV2RCxNQUFNLENBQU4sSUFBWSxtQkFLWDtBQUxELFdBQVksbUJBQW1CO0lBQzdCLG1FQUFXLENBQUE7SUFDWCw2REFBSSxDQUFBO0lBQ0osbUVBQU8sQ0FBQTtJQUNQLGlFQUFNLENBQUE7QUFDUixDQUFDLEVBTFcsbUJBQW1CLEtBQW5CLG1CQUFtQixRQUs5QjtBQVdELE1BQU0sT0FBTyxrQkFBa0I7SUFXN0I7UUFUQSx5REFBeUQ7UUFDbEQsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBb0IsQ0FBQztRQUNqRCxVQUFLLEdBQStCO1lBQ3ZDLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsRUFBRSxVQUFVO1lBQzdDLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsRUFBRSxPQUFPO1lBQzFDLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsRUFBRSxVQUFVO1lBQzdDLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBRSxTQUFTO1NBQy9DLENBQUM7SUFFYSxDQUFDO0lBRWhCOzs7O09BSUc7SUFDSSxXQUFXLENBQUMsT0FBZSxFQUFFLElBQVksRUFBRSxFQUFXO1FBQzNELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDcEUseUNBQXlDO1FBQ3pDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksV0FBVyxDQUFDLEVBQVc7UUFDNUIsbUNBQW1DO1FBQ25DLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksZ0JBQWdCLEVBQUUsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRU0saUJBQWlCO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM1QyxDQUFDO0lBRU8sa0JBQWtCLENBQUMsT0FBZSxFQUFFLGdCQUF3QixFQUFFLFVBQWtCLEVBQUUsWUFBb0I7UUFDNUcsT0FBTyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLENBQUM7SUFDakUsQ0FBQzs4R0F2Q1Usa0JBQWtCO2tIQUFsQixrQkFBa0IsY0FGakIsTUFBTTs7MkZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBVbmJNZW5zYWdlbU1vZGVsIH0gZnJvbSAnLi91bmItbWVzc2FnZS5tb2RlbCc7XHJcblxyXG5leHBvcnQgZW51bSBVbmJUaXBvTWVuc2FnZW1FbnVtIHtcclxuICBTVUNDRVNTID0gMCxcclxuICBJTkZPLFxyXG4gIFdBUk5JTkcsXHJcbiAgREFOR0VSLFxyXG59XHJcblxyXG4vLyBJbnRlcmZhY2UgYXV4aWxpYXIgcGFyYSBvIGV2ZW50b1xyXG5pbnRlcmZhY2UgVW5iTWVuc2FnZW1FdmVudCB7XHJcbiAgbW9kZWw6IFVuYk1lbnNhZ2VtTW9kZWw7XHJcbiAgdGFyZ2V0SWQ/OiBzdHJpbmc7XHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFVuYk1lbnNhZ2VtU2VydmljZSB7XHJcblxyXG4gIC8vIE11ZGFtb3MgbyB0aXBvIGRvIFN1YmplY3QgcGFyYSBhY2VpdGFyIG8gZXZlbnRvIGNvbSBJRFxyXG4gIHB1YmxpYyBtZXNzYWdlU3ViamVjdCA9IG5ldyBTdWJqZWN0PFVuYk1lbnNhZ2VtRXZlbnQ+KCk7IFxyXG4gIHB1YmxpYyBjb3JlczogW3N0cmluZywgc3RyaW5nLCBzdHJpbmddW10gPSBbIC8vIEFqdXN0ZWkgYSB0aXBhZ2VtIGRvIGFycmF5XHJcbiAgICAgIFsnI2RmZjBkOCcsICcjM2M3NjNkJywgJyNkNmU5YzYnXSwgLy8gU1VDQ0VTU1xyXG4gICAgICBbJyNkOWVkZjcnLCAnIzMxNzA4ZicsICcjYmNlOGYxJ10sIC8vIElORk9cclxuICAgICAgWycjZmNmOGUzJywgJyM4YTZkM2InLCAnI2ZhZWJjYyddLCAvLyBXQVJOSU5HXHJcbiAgICAgIFsnI2YyZGVkZScsICcjYTk0NDQyJywgJyNlYmNjZDEnXSAgLy8gREFOR0VSXHJcbiAgXTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG5cclxuICAvKipcclxuICAgKiBAcGFyYW0gbWVzc2FnZSBtZW5zYWdlbSBxdWUgdmFpIGFwYXJlY2VyIG5hIHRlbGFcclxuICAgKiBAcGFyYW0gdGlwbyB0aXBvIGRhIG1lbnNhZ2VtOiBzdWNjZXNzLCBpbmZvLCB3YXJuaW5nLCBkYW5nZXIuXHJcbiAgICogQHBhcmFtIGlkIChPcGNpb25hbCkgSWRlbnRpZmljYWRvciBkbyBjb21wb25lbnRlIHF1ZSBkZXZlIGV4aWJpciBhIG1lbnNhZ2VtXHJcbiAgICovXHJcbiAgcHVibGljIHNob3dNZXNzYWdlKG1lc3NhZ2U6IHN0cmluZywgdHlwZTogbnVtYmVyLCBpZD86IHN0cmluZykge1xyXG4gICAgY29uc3QgbW9kZWwgPSB0aGlzLmNyZWF0ZUFsZXJ0TWVzc2FnZShtZXNzYWdlLCAuLi50aGlzLmNvcmVzW3R5cGVdKTtcclxuICAgIC8vIEVudmlhIG8gbW9kZWxvIEUgbyBpZCBhbHZvIChzZSBob3V2ZXIpXHJcbiAgICB0aGlzLm1lc3NhZ2VTdWJqZWN0Lm5leHQoeyBtb2RlbDogbW9kZWwsIHRhcmdldElkOiBpZCB9KTsgICAgXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFc2NvbmRlIG8gY29tcG9uZW50ZS4gXHJcbiAgICogQHBhcmFtIGlkIChPcGNpb25hbCkgU2UgaW5mb3JtYWRvLCBlc2NvbmRlIGFwZW5hcyBvIGNvbXBvbmVudGUgY29tIGVzdGUgSUQuXHJcbiAgICovXHJcbiAgcHVibGljIGhpZGVNZXNzYWdlKGlkPzogc3RyaW5nKSB7XHJcbiAgICAvLyBFbnZpYSBtb2RlbG8gdmF6aW8gcGFyYSBlc2NvbmRlclxyXG4gICAgdGhpcy5tZXNzYWdlU3ViamVjdC5uZXh0KHsgbW9kZWw6IG5ldyBVbmJNZW5zYWdlbU1vZGVsKCksIHRhcmdldElkOiBpZCB9KTsgXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0TWVzc2FnZVN1YmplY3QoKTogT2JzZXJ2YWJsZTxVbmJNZW5zYWdlbUV2ZW50PiB7XHJcbiAgICByZXR1cm4gdGhpcy5tZXNzYWdlU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICB9IFxyXG5cclxuICBwcml2YXRlIGNyZWF0ZUFsZXJ0TWVzc2FnZShtZXNzYWdlOiBzdHJpbmcsIGJhY2tncm91bmRfY29sb3I6IHN0cmluZywgZm9udF9jb2xvcjogc3RyaW5nLCBib3JkZXJfY29sb3I6IHN0cmluZyk6IFVuYk1lbnNhZ2VtTW9kZWwge1xyXG4gICAgcmV0dXJuIHsgbWVzc2FnZSwgYmFja2dyb3VuZF9jb2xvciwgZm9udF9jb2xvciwgYm9yZGVyX2NvbG9yIH07IFxyXG4gIH1cclxufSJdfQ==
|
|
@@ -1,25 +1,30 @@
|
|
|
1
1
|
import { Component, Inject } from '@angular/core';
|
|
2
2
|
import { UnbPessoaEmail } from '../unb-pessoa-models/unb-pessoa-email.model';
|
|
3
3
|
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
4
|
+
import { UnbTipoMensagemEnum } from '../../unb-mensagem/unb-mensagem.service';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
import * as i1 from "@angular/material/snack-bar";
|
|
6
7
|
import * as i2 from "../unb-pessoa.service";
|
|
7
|
-
import * as i3 from "
|
|
8
|
-
import * as i4 from "@angular/
|
|
9
|
-
import * as i5 from "@angular/
|
|
10
|
-
import * as i6 from "@angular/
|
|
11
|
-
import * as i7 from "@angular/material/
|
|
12
|
-
import * as i8 from "
|
|
13
|
-
import * as i9 from "@angular/material/
|
|
14
|
-
import * as i10 from "@angular/material/
|
|
8
|
+
import * as i3 from "../../unb-mensagem/unb-mensagem.service";
|
|
9
|
+
import * as i4 from "@angular/material/dialog";
|
|
10
|
+
import * as i5 from "@angular/common";
|
|
11
|
+
import * as i6 from "@angular/forms";
|
|
12
|
+
import * as i7 from "@angular/material/button";
|
|
13
|
+
import * as i8 from "../../unb-mensagem/unb-mensagem.component";
|
|
14
|
+
import * as i9 from "@angular/material/form-field";
|
|
15
|
+
import * as i10 from "@angular/material/input";
|
|
16
|
+
import * as i11 from "@angular/material/select";
|
|
17
|
+
import * as i12 from "@angular/material/core";
|
|
15
18
|
export class UnbPessoaEmailFormComponent {
|
|
16
|
-
constructor(snackBar, service, dialogRef, data) {
|
|
19
|
+
constructor(snackBar, service, alertService, dialogRef, data) {
|
|
17
20
|
this.snackBar = snackBar;
|
|
18
21
|
this.service = service;
|
|
22
|
+
this.alertService = alertService;
|
|
19
23
|
this.dialogRef = dialogRef;
|
|
20
24
|
this.data = data;
|
|
21
25
|
this.email = new UnbPessoaEmail();
|
|
22
26
|
this.listaTipoEmail = [];
|
|
27
|
+
this.idMensagemService = "UnbPessoaEmailForm";
|
|
23
28
|
this.email = JSON.parse(JSON.stringify(data.email)); // O e-mail específico para edição
|
|
24
29
|
// Verifique se a lista de e-mails foi passada e atribua-a
|
|
25
30
|
if (data.emailsList) {
|
|
@@ -33,23 +38,27 @@ export class UnbPessoaEmailFormComponent {
|
|
|
33
38
|
}
|
|
34
39
|
}
|
|
35
40
|
ngOnInit() {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
41
|
+
// Chamamos o serviço direto. Não guardamos o observable, apenas o resultado.
|
|
42
|
+
this.service.getTipoEmail().subscribe({
|
|
43
|
+
next: (lista) => {
|
|
44
|
+
// 1. Guarda a lista para o HTML usar
|
|
45
|
+
this.listaTipoEmail = lista;
|
|
46
|
+
// 2. Lógica de Seleção Automática (Match)
|
|
47
|
+
if (this.email.tipoEmailCodigo != null) {
|
|
48
|
+
const tipoEncontrado = lista.find(t => t.codigo === this.email.tipoEmailCodigo);
|
|
49
|
+
if (tipoEncontrado) {
|
|
50
|
+
this.email.tipo = tipoEncontrado.denominacao;
|
|
51
|
+
}
|
|
45
52
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
53
|
+
else if (this.email.tipo) {
|
|
54
|
+
const tipoEncontrado = lista.find(t => t.denominacao?.toLowerCase() === this.email.tipo?.toLowerCase());
|
|
55
|
+
if (tipoEncontrado) {
|
|
56
|
+
this.email.tipoEmailCodigo = tipoEncontrado.codigo;
|
|
57
|
+
}
|
|
51
58
|
}
|
|
52
|
-
}
|
|
59
|
+
},
|
|
60
|
+
// 3. Usa seu tratamento de erro novo
|
|
61
|
+
error: (err) => this.handleError(err)
|
|
53
62
|
});
|
|
54
63
|
}
|
|
55
64
|
salvar(form) {
|
|
@@ -127,19 +136,41 @@ export class UnbPessoaEmailFormComponent {
|
|
|
127
136
|
salvarclose() {
|
|
128
137
|
this.dialogRef.close(this.emailSalvo);
|
|
129
138
|
}
|
|
139
|
+
handleError(erro) {
|
|
140
|
+
let erroTratado;
|
|
141
|
+
// Converte string local em Objeto Padrão
|
|
142
|
+
if (typeof erro === 'string') {
|
|
143
|
+
erroTratado = {
|
|
144
|
+
status: 400,
|
|
145
|
+
mensagemSimples: erro,
|
|
146
|
+
mensagemHtml: `<strong>${erro}</strong>`
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
erroTratado = erro;
|
|
151
|
+
}
|
|
152
|
+
// 1. SnackBar
|
|
153
|
+
if (erroTratado.mensagemSimples) {
|
|
154
|
+
this.openSnackBar(erroTratado.mensagemSimples);
|
|
155
|
+
}
|
|
156
|
+
// 2. AlertService (Se houver tag <unb-mensagem> no HTML do dialog)
|
|
157
|
+
if (this.alertService && erroTratado.mensagemHtml) {
|
|
158
|
+
this.alertService.showMessage(erroTratado.mensagemHtml, UnbTipoMensagemEnum.DANGER, this.idMensagemService);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
130
161
|
openSnackBar(message) {
|
|
131
162
|
this.snackBar.open(message, 'x', {
|
|
132
163
|
duration: 5000,
|
|
133
164
|
});
|
|
134
165
|
}
|
|
135
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: UnbPessoaEmailFormComponent, deps: [{ token: i1.MatSnackBar }, { token: i2.UnBPessoaService }, { token: i3.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
136
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.2", type: UnbPessoaEmailFormComponent, selector: "lib-unb-pessoa-email-form", ngImport: i0, template: "<h1 mat-dialog-title>Cadastro de E-mail</h1>\r\n<form (ngSubmit)=\"salvar(form)\" #form=\"ngForm\">\r\n <mat-dialog-content>\r\n <div class=\"form-container\">\r\n <mat-form-field class=\"form-100\" appearance=\"outline\">\r\n <mat-label>Tipo</mat-label>\r\n <mat-select [(ngModel)]=\"email.tipoEmailCodigo\" [compareWith]=\"compararTipos\" name=\"tipoEmailCodigo\" (selectionChange)=\"onTipoSelecionado($event.value)\" required>\r\n <mat-option *ngFor=\"let tipo of
|
|
166
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: UnbPessoaEmailFormComponent, deps: [{ token: i1.MatSnackBar }, { token: i2.UnBPessoaService }, { token: i3.UnbMensagemService }, { token: i4.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
167
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.2", type: UnbPessoaEmailFormComponent, selector: "lib-unb-pessoa-email-form", ngImport: i0, template: "<h1 mat-dialog-title>Cadastro de E-mail</h1>\r\n<form (ngSubmit)=\"salvar(form)\" #form=\"ngForm\">\r\n <mat-dialog-content>\r\n <unb-mensagem [identificador]=\"idMensagemService\"></unb-mensagem>\r\n <div class=\"form-container\">\r\n <mat-form-field class=\"form-100\" appearance=\"outline\">\r\n <mat-label>Tipo</mat-label>\r\n <mat-select [(ngModel)]=\"email.tipoEmailCodigo\" [compareWith]=\"compararTipos\" name=\"tipoEmailCodigo\" (selectionChange)=\"onTipoSelecionado($event.value)\" required>\r\n <mat-option *ngFor=\"let tipo of listaTipoEmail\" [value]=\"tipo.codigo\">\r\n {{tipo.denominacao}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-100\" appearance=\"outline\">\r\n <mat-label>E-mail</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"email.email\" name=\"emailValue\" #emailValue=\"ngModel\" />\r\n </mat-form-field>\r\n\r\n </div>\r\n </mat-dialog-content>\r\n\r\n <mat-dialog-actions align=\"end\">\r\n <button mat-stroked-button type=\"button\" color=\"warn\" (click)=\"close()\">Fechar</button>\r\n <button mat-flat-button type=\"submit\" color=\"primary\">Salvar</button>\r\n </mat-dialog-actions>\r\n</form>", styles: [".card-actions-buttons{display:flex;gap:5px;flex-wrap:wrap}.form-container{display:flex;flex-wrap:wrap;column-gap:10px;margin:10px}@media (max-width: 1000px){.form-container{flex-direction:column;gap:5px}}.break{flex-basis:100%;height:0}.form-5{flex:1 1 5%}.inline-table-container{display:flex;align-items:center;justify-content:space-between;padding:5px}@media (max-width: 600px){.form-5,.form-10,.form-15{flex:1 1 100%}}.form-10{flex:1 1 10%}.form-15{flex:1 1 15%}.form-20{flex:1 1 20%}.form-25{flex:1 1 25%}.form-30{flex:1 1 30%}.form-35{flex:1 1 35%}.form-40{flex:1 1 40%}.form-45{flex:1 1 45%}.form-50{flex:1 1 50%}.form-60{flex:1 1 60%}.form-70{flex:1 1 70%}.form-80{flex:1 1 80%}.form-100{flex:1 1 100%;min-width:250px}.botoes-container{display:flex;gap:5px}@media (max-width: 600px){.botoes-container{margin-bottom:10px}.botoes-container button{flex:1;max-width:50%}}\n"], dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i7.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i8.UnbMensagemComponent, selector: "unb-mensagem", inputs: ["mensagem", "tipo", "identificador"] }, { kind: "component", type: i9.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i9.MatLabel, selector: "mat-label" }, { kind: "directive", type: i10.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i4.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i11.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i12.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }] }); }
|
|
137
168
|
}
|
|
138
169
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: UnbPessoaEmailFormComponent, decorators: [{
|
|
139
170
|
type: Component,
|
|
140
|
-
args: [{ standalone: false, selector: 'lib-unb-pessoa-email-form', template: "<h1 mat-dialog-title>Cadastro de E-mail</h1>\r\n<form (ngSubmit)=\"salvar(form)\" #form=\"ngForm\">\r\n <mat-dialog-content>\r\n <div class=\"form-container\">\r\n <mat-form-field class=\"form-100\" appearance=\"outline\">\r\n <mat-label>Tipo</mat-label>\r\n <mat-select [(ngModel)]=\"email.tipoEmailCodigo\" [compareWith]=\"compararTipos\" name=\"tipoEmailCodigo\" (selectionChange)=\"onTipoSelecionado($event.value)\" required>\r\n <mat-option *ngFor=\"let tipo of
|
|
141
|
-
}], ctorParameters: () => [{ type: i1.MatSnackBar }, { type: i2.UnBPessoaService }, { type: i3.MatDialogRef }, { type: undefined, decorators: [{
|
|
171
|
+
args: [{ standalone: false, selector: 'lib-unb-pessoa-email-form', template: "<h1 mat-dialog-title>Cadastro de E-mail</h1>\r\n<form (ngSubmit)=\"salvar(form)\" #form=\"ngForm\">\r\n <mat-dialog-content>\r\n <unb-mensagem [identificador]=\"idMensagemService\"></unb-mensagem>\r\n <div class=\"form-container\">\r\n <mat-form-field class=\"form-100\" appearance=\"outline\">\r\n <mat-label>Tipo</mat-label>\r\n <mat-select [(ngModel)]=\"email.tipoEmailCodigo\" [compareWith]=\"compararTipos\" name=\"tipoEmailCodigo\" (selectionChange)=\"onTipoSelecionado($event.value)\" required>\r\n <mat-option *ngFor=\"let tipo of listaTipoEmail\" [value]=\"tipo.codigo\">\r\n {{tipo.denominacao}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-100\" appearance=\"outline\">\r\n <mat-label>E-mail</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"email.email\" name=\"emailValue\" #emailValue=\"ngModel\" />\r\n </mat-form-field>\r\n\r\n </div>\r\n </mat-dialog-content>\r\n\r\n <mat-dialog-actions align=\"end\">\r\n <button mat-stroked-button type=\"button\" color=\"warn\" (click)=\"close()\">Fechar</button>\r\n <button mat-flat-button type=\"submit\" color=\"primary\">Salvar</button>\r\n </mat-dialog-actions>\r\n</form>", styles: [".card-actions-buttons{display:flex;gap:5px;flex-wrap:wrap}.form-container{display:flex;flex-wrap:wrap;column-gap:10px;margin:10px}@media (max-width: 1000px){.form-container{flex-direction:column;gap:5px}}.break{flex-basis:100%;height:0}.form-5{flex:1 1 5%}.inline-table-container{display:flex;align-items:center;justify-content:space-between;padding:5px}@media (max-width: 600px){.form-5,.form-10,.form-15{flex:1 1 100%}}.form-10{flex:1 1 10%}.form-15{flex:1 1 15%}.form-20{flex:1 1 20%}.form-25{flex:1 1 25%}.form-30{flex:1 1 30%}.form-35{flex:1 1 35%}.form-40{flex:1 1 40%}.form-45{flex:1 1 45%}.form-50{flex:1 1 50%}.form-60{flex:1 1 60%}.form-70{flex:1 1 70%}.form-80{flex:1 1 80%}.form-100{flex:1 1 100%;min-width:250px}.botoes-container{display:flex;gap:5px}@media (max-width: 600px){.botoes-container{margin-bottom:10px}.botoes-container button{flex:1;max-width:50%}}\n"] }]
|
|
172
|
+
}], ctorParameters: () => [{ type: i1.MatSnackBar }, { type: i2.UnBPessoaService }, { type: i3.UnbMensagemService }, { type: i4.MatDialogRef }, { type: undefined, decorators: [{
|
|
142
173
|
type: Inject,
|
|
143
174
|
args: [MAT_DIALOG_DATA]
|
|
144
175
|
}] }] });
|
|
145
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLXBlc3NvYS1lbWFpbC1mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5iLWxpYi1jb21wb25lbnRzL3NyYy9saWIvdW5iLXBlc3NvYS91bmItcGVzc29hLWVtYWlsLWZvcm0vdW5iLXBlc3NvYS1lbWFpbC1mb3JtLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5iLWxpYi1jb21wb25lbnRzL3NyYy9saWIvdW5iLXBlc3NvYS91bmItcGVzc29hLWVtYWlsLWZvcm0vdW5iLXBlc3NvYS1lbWFpbC1mb3JtLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHMUQsT0FBTyxFQUFFLGNBQWMsRUFBc0IsTUFBTSw2Q0FBNkMsQ0FBQztBQUVqRyxPQUFPLEVBQUUsZUFBZSxFQUFnQixNQUFNLDBCQUEwQixDQUFDOzs7Ozs7Ozs7Ozs7QUFVekUsTUFBTSxPQUFPLDJCQUEyQjtJQU90QyxZQUFvQixRQUFxQixFQUFVLE9BQXlCLEVBQVMsU0FBb0QsRUFBa0MsSUFBUztRQUFoSyxhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQVUsWUFBTyxHQUFQLE9BQU8sQ0FBa0I7UUFBUyxjQUFTLEdBQVQsU0FBUyxDQUEyQztRQUFrQyxTQUFJLEdBQUosSUFBSSxDQUFLO1FBTHBMLFVBQUssR0FBRyxJQUFJLGNBQWMsRUFBRSxDQUFDO1FBRzdCLG1CQUFjLEdBQXlCLEVBQUUsQ0FBQztRQUd4QyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLGtDQUFrQztRQUV2RiwwREFBMEQ7UUFDMUQsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLFVBQVUsR0FB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QU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0U25hY2tCYXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbmFjay1iYXInO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFVuYlBlc3NvYUVtYWlsLCBVbmJQZXNzb2FFbWFpbFRpcG8gfSBmcm9tICcuLi91bmItcGVzc29hLW1vZGVscy91bmItcGVzc29hLWVtYWlsLm1vZGVsJztcclxuaW1wb3J0IHsgVW5CUGVzc29hU2VydmljZSB9IGZyb20gJy4uL3VuYi1wZXNzb2Euc2VydmljZSc7XHJcbmltcG9ydCB7IE1BVF9ESUFMT0dfREFUQSwgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgTmdGb3JtIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxyXG4gIHNlbGVjdG9yOiAnbGliLXVuYi1wZXNzb2EtZW1haWwtZm9ybScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3VuYi1wZXNzb2EtZW1haWwtZm9ybS5odG1sJyxcclxuICBzdHlsZVVybDogJy4vdW5iLXBlc3NvYS1lbWFpbC1mb3JtLmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFVuYlBlc3NvYUVtYWlsRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgZW1haWxTYWx2byE6IFVuYlBlc3NvYUVtYWlsO1xyXG4gIGVtYWlsID0gbmV3IFVuYlBlc3NvYUVtYWlsKCk7XHJcbiAgZW1haWxzTGlzdDogVW5iUGVzc29hRW1haWxbXTtcclxuICB0aXBvRW1haWwhOiBPYnNlcnZhYmxlPFVuYlBlc3NvYUVtYWlsVGlwb1tdPjtcclxuICBsaXN0YVRpcG9FbWFpbDogVW5iUGVzc29hRW1haWxUaXBvW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzbmFja0JhcjogTWF0U25hY2tCYXIsIHByaXZhdGUgc2VydmljZTogVW5CUGVzc29hU2VydmljZSwgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFVuYlBlc3NvYUVtYWlsRm9ybUNvbXBvbmVudD4sIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogYW55KSB7XHJcbiAgICB0aGlzLmVtYWlsID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShkYXRhLmVtYWlsKSk7IC8vIE8gZS1tYWlsIGVzcGVjw61maWNvIHBhcmEgZWRpw6fDo29cclxuXHJcbiAgICAvLyBWZXJpZmlxdWUgc2UgYSBsaXN0YSBkZSBlLW1haWxzIGZvaSBwYXNzYWRhIGUgYXRyaWJ1YS1hXHJcbiAgICBpZiAoZGF0YS5lbWFpbHNMaXN0KSB7XHJcbiAgICAgIHRoaXMuZW1haWxzTGlzdCA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoZGF0YS5lbWFpbHNMaXN0KSk7IC8vIEZhw6dhIHVtYSBjw7NwaWEgcHJvZnVuZGEgc2UgZm9yIG1hbmlwdWxhclxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5lbWFpbHNMaXN0ID0gW107IC8vIEluaWNpYWxpemUgY29tbyB2YXppbyBzZSBuw6NvIGZvciBwYXNzYWRhXHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCF0aGlzLmVtYWlsKSB7XHJcbiAgICAgIHRoaXMuZW1haWwgPSBuZXcgVW5iUGVzc29hRW1haWwoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy50aXBvRW1haWwgPSB0aGlzLnNlcnZpY2UuZ2V0VGlwb0VtYWlsKCk7XHJcbiAgICAvLyBJbnNjcmV2ZSBwYXJhIGd1YXJkYXIgYSBsaXN0YSBlbSB1bWEgdmFyacOhdmVsIGNvbXVtXHJcbiAgICB0aGlzLnRpcG9FbWFpbC5zdWJzY3JpYmUobGlzdGEgPT4ge1xyXG4gICAgICB0aGlzLmxpc3RhVGlwb0VtYWlsID0gbGlzdGE7XHJcblxyXG4gICAgICAvLyBTZSBqw6EgdGl2ZXIgdGlwb0VtYWlsQ29kaWdvLCBwcmVlbmNoZSBvIG5vbWUgY29ycmVzcG9uZGVudGVcclxuICAgICAgaWYgKHRoaXMuZW1haWwudGlwb0VtYWlsQ29kaWdvICE9IG51bGwpIHtcclxuICAgICAgICBjb25zdCB0aXBvRW5jb250cmFkbyA9IGxpc3RhLmZpbmQodCA9PiB0LmNvZGlnbyA9PT0gdGhpcy5lbWFpbC50aXBvRW1haWxDb2RpZ28pO1xyXG4gICAgICAgIGlmICh0aXBvRW5jb250cmFkbykge1xyXG4gICAgICAgICAgdGhpcy5lbWFpbC50aXBvID0gdGlwb0VuY29udHJhZG8uZGVub21pbmFjYW87XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2UgaWYgKHRoaXMuZW1haWwudGlwbykge1xyXG4gICAgICAgIGNvbnN0IHRpcG9FbmNvbnRyYWRvID0gbGlzdGEuZmluZChcclxuICAgICAgICAgIHQgPT4gdC5kZW5vbWluYWNhbz8udG9Mb3dlckNhc2UoKSA9PT0gdGhpcy5lbWFpbC50aXBvPy50b0xvd2VyQ2FzZSgpXHJcbiAgICAgICAgKTtcclxuICAgICAgICBpZiAodGlwb0VuY29udHJhZG8pIHtcclxuICAgICAgICAgIHRoaXMuZW1haWwudGlwb0VtYWlsQ29kaWdvID0gdGlwb0VuY29udHJhZG8uY29kaWdvITtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2FsdmFyKGZvcm06IE5nRm9ybSkge1xyXG4gICAgaWYgKGZvcm0uaW52YWxpZCkge1xyXG4gICAgICB0aGlzLm9wZW5TbmFja0JhcignRXhpc3RlbSBlcnJvcyBubyBmb3JtdWzDoXJpbywgcG9yIGZhdm9yLCB2ZXJpZmljYXIuJyk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICAvLyAxLiBEZWZpbmUgbyAndGlwbycgcGFkcsOjbyAoZXg6IDEgcGFyYSAnUGVzc29hbCcpIHNlIG7Do28gZm9yIHByZWVuY2hpZG9cclxuICAgIGlmICghdGhpcy5lbWFpbC50aXBvRW1haWxDb2RpZ28pIHtcclxuICAgICAgdGhpcy5lbWFpbC50aXBvRW1haWxDb2RpZ28gPSAxOyAvLyAxIMOpIGdlcmFsbWVudGUgJ1Blc3NvYWwnXHJcbiAgICB9XHJcblxyXG4gICAgLy8gMi4gRGVmaW5lIGEgJ29yZGVtJyAocXVlIG8gYmFjay1lbmQgY2hhbWEgZGUgJ29yZGVtRW1haWwnKVxyXG4gICAgaWYgKCF0aGlzLmVtYWlsLm9yZGVtIHx8IHRoaXMuZW1haWwub3JkZW0gPT09IDApIHtcclxuICAgICAgbGV0IG1heE9yZGVtID0gMDtcclxuXHJcbiAgICAgIC8vIFZlcmlmaWNhIHNlIGEgbGlzdGEgZGUgZW1haWxzIGrDoSBleGlzdGUgZSB0ZW0gaXRlbnNcclxuICAgICAgaWYgKHRoaXMuZW1haWxzTGlzdCAmJiB0aGlzLmVtYWlsc0xpc3QubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIG1heE9yZGVtID0gTWF0aC5tYXgoLi4udGhpcy5lbWFpbHNMaXN0Lm1hcChlID0+IGUub3JkZW0gfHwgMCkpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBEZWZpbmUgYSBvcmRlbSBkbyBub3ZvIGVtYWlsIGNvbW8gYSBtYWlvciBvcmRlbSArIDFcclxuICAgICAgdGhpcy5lbWFpbC5vcmRlbSA9IG1heE9yZGVtICsgMTtcclxuICAgIH1cclxuICAgIC8vIC0tLSBGaW0gZGEgTW9kaWZpY2HDp8OjbyAtLS1cclxuXHJcbiAgICBpZiAodGhpcy52YWxpZGFyKHRoaXMuZW1haWwpID09IGZhbHNlKSByZXR1cm47XHJcblxyXG4gICAgdGhpcy5lbWFpbFNhbHZvID0gdGhpcy5lbWFpbDtcclxuICAgIHRoaXMuc2FsdmFyY2xvc2UoKVxyXG4gIH1cclxuXHJcbiAgY29tcGFyYXJUaXBvcyh0MTogYW55LCB0MjogYW55KTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdDEgJiYgdDIgJiYgdDEgPT09IHQyO1xyXG4gIH1cclxuXHJcbiAgb25UaXBvU2VsZWNpb25hZG8oY29kaWdvU2VsZWNpb25hZG86IG51bWJlcikge1xyXG4gICAgY29uc3QgdGlwb1NlbGVjaW9uYWRvID0gdGhpcy5saXN0YVRpcG9FbWFpbC5maW5kKHQgPT4gdC5jb2RpZ28gPT09IGNvZGlnb1NlbGVjaW9uYWRvKTtcclxuICAgIGlmICh0aXBvU2VsZWNpb25hZG8pIHtcclxuICAgICAgdGhpcy5lbWFpbC50aXBvID0gdGlwb1NlbGVjaW9uYWRvLmRlbm9taW5hY2FvO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVmFsaWRhIG8gb2JqZXRvIGRlIGUtbWFpbCwgcmVwbGljYW5kbyBhcyByZWdyYXMgZG8gdmFsaWRhZG9yIGRvIGJhY2tlbmQuXHJcbiAgICogUmV0b3JuYSB0cnVlIHNlIG8gZS1tYWlsIGZvciB2w6FsaWRvLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICovXHJcbiAgdmFsaWRhcihlbWFpbFRvVmFsaWRhdGU6IFVuYlBlc3NvYUVtYWlsKTogYm9vbGVhbiB7XHJcblxyXG4gICAgLy8gMS4gVmFsaWRhw6fDo28gZGUgY2FtcG8gb2JyaWdhdMOzcmlvIChkbyBKYXZhKVxyXG4gICAgaWYgKCFlbWFpbFRvVmFsaWRhdGUuZW1haWwgfHwgZW1haWxUb1ZhbGlkYXRlLmVtYWlsLnRyaW0oKSA9PT0gJycpIHtcclxuICAgICAgdGhpcy5vcGVuU25hY2tCYXIoXCJFLW1haWwgw6kgdW0gY2FtcG8gb2JyaWdhdMOzcmlvLlwiKTtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIDIuIFZhbGlkYcOnw6NvIGRlIFRhbWFuaG8gTcOheGltbyAoZG8gSmF2YSlcclxuICAgIGlmIChlbWFpbFRvVmFsaWRhdGUuZW1haWwudHJpbSgpLmxlbmd0aCA+IDYwKSB7XHJcbiAgICAgIHRoaXMub3BlblNuYWNrQmFyKFwiRS1tYWlsIGRldmUgdGVyIG5vIG3DoXhpbW8gNjAgY2FyYWN0ZXJlcy5cIik7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyAzLiBWYWxpZGHDp8OjbyBkZSBmb3JtYXRvIGRlIGUtbWFpbCAoZG8gSmF2YSBlIGRvIEFuZ3VsYXIpXHJcbiAgICAvLyAgICBbSmF2YTogIVZhbGlkYWRvcmVzLnZhbGlkYXJFbWFpbChyZXF1ZXN0LmdldEVtYWlsKCkpXVxyXG4gICAgY29uc3QgZW1haWxSZWdleCA9IC9eW2EtekEtWjAtOS5fJSstXStAW2EtekEtWjAtOS4tXStcXC5bYS16QS1aXXsyLH0kLztcclxuICAgIGlmICghZW1haWxSZWdleC50ZXN0KGVtYWlsVG9WYWxpZGF0ZS5lbWFpbCkpIHtcclxuICAgICAgdGhpcy5vcGVuU25hY2tCYXIoXCJEaWdpdGUgdW0gRS1tYWlsIHbDoWxpZG8uXCIpO1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gNC4gVmFsaWRhw6fDo28gZGUgZS1tYWlsIGR1cGxpY2FkbyAoZG8gc2V1IEFuZ3VsYXIpXHJcbiAgICBjb25zdCBpc0R1cGxpY2F0ZSA9IHRoaXMuZW1haWxzTGlzdC5zb21lKGV4aXN0aW5nRW1haWwgPT5cclxuICAgICAgZXhpc3RpbmdFbWFpbC5lbWFpbD8udG9Mb3dlckNhc2UoKSA9PT0gZW1haWxUb1ZhbGlkYXRlLmVtYWlsPy50b0xvd2VyQ2FzZSgpICYmXHJcbiAgICAgIGV4aXN0aW5nRW1haWwuY29kaWdvICE9PSBlbWFpbFRvVmFsaWRhdGUuY29kaWdvIC8vIElnbm9yYSBvIHByw7NwcmlvIGUtbWFpbCBzZSBlc3RpdmVyIHNlbmRvIGVkaXRhZG9cclxuICAgICk7XHJcblxyXG4gICAgaWYgKGlzRHVwbGljYXRlKSB7XHJcbiAgICAgIHRoaXMub3BlblNuYWNrQmFyKFwiRXN0ZSBlLW1haWwgasOhIGV4aXN0ZSBuYSBsaXN0YS5cIik7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBOb3RhOiBBcyB2YWxpZGHDp8O1ZXMgZGUgJ29yZGVtRW1haWwnIGUgJ3RpcG9FbWFpbENvZGlnbycgZG8gSmF2YVxyXG4gICAgLy8gasOhIHPDo28gdHJhdGFkYXMgbmEgc3VhIGZ1bsOnw6NvICdzYWx2YXIoKScsXHJcbiAgICAvLyBxdWUgYXRyaWJ1aSB2YWxvcmVzIHBhZHLDo28gYW50ZXMgZGVzdGEgZnVuw6fDo28gJ3ZhbGlkYXIoKScgc2VyIGNoYW1hZGEuXHJcblxyXG4gICAgcmV0dXJuIHRydWU7IC8vIFBhc3NvdSBlbSB0b2RhcyBhcyB2YWxpZGHDp8O1ZXMhXHJcbiAgfVxyXG5cclxuICBjbG9zZSgpIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKG51bGwpO1xyXG4gIH1cclxuXHJcbiAgc2FsdmFyY2xvc2UoKSB7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh0aGlzLmVtYWlsU2Fsdm8pO1xyXG4gIH1cclxuXHJcbiAgb3BlblNuYWNrQmFyKG1lc3NhZ2U6IHN0cmluZykge1xyXG4gICAgdGhpcy5zbmFja0Jhci5vcGVuKG1lc3NhZ2UsICd4Jywge1xyXG4gICAgICBkdXJhdGlvbjogNTAwMCxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbn0iLCI8aDEgbWF0LWRpYWxvZy10aXRsZT5DYWRhc3RybyBkZSBFLW1haWw8L2gxPlxyXG48Zm9ybSAobmdTdWJtaXQpPVwic2FsdmFyKGZvcm0pXCIgI2Zvcm09XCJuZ0Zvcm1cIj5cclxuICA8bWF0LWRpYWxvZy1jb250ZW50PlxyXG4gICAgPGRpdiBjbGFzcz1cImZvcm0tY29udGFpbmVyXCI+XHJcbiAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZvcm0tMTAwXCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cclxuICAgICAgICA8bWF0LWxhYmVsPlRpcG88L21hdC1sYWJlbD5cclxuICAgICAgICA8bWF0LXNlbGVjdCBbKG5nTW9kZWwpXT1cImVtYWlsLnRpcG9FbWFpbENvZGlnb1wiIFtjb21wYXJlV2l0aF09XCJjb21wYXJhclRpcG9zXCIgbmFtZT1cInRpcG9FbWFpbENvZGlnb1wiIChzZWxlY3Rpb25DaGFuZ2UpPVwib25UaXBvU2VsZWNpb25hZG8oJGV2ZW50LnZhbHVlKVwiIHJlcXVpcmVkPlxyXG4gICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHRpcG8gb2YgdGlwb0VtYWlsIHwgYXN5bmNcIiBbdmFsdWVdPVwidGlwby5jb2RpZ29cIj5cclxuICAgICAgICAgICAge3t0aXBvLmRlbm9taW5hY2FvfX1cclxuICAgICAgICAgIDwvbWF0LW9wdGlvbj5cclxuICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcblxyXG4gICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmb3JtLTEwMFwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XHJcbiAgICAgICAgPG1hdC1sYWJlbD5FLW1haWw8L21hdC1sYWJlbD5cclxuICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBtYXRJbnB1dCBbKG5nTW9kZWwpXT1cImVtYWlsLmVtYWlsXCIgbmFtZT1cImVtYWlsVmFsdWVcIiAjZW1haWxWYWx1ZT1cIm5nTW9kZWxcIiAvPlxyXG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuICAgIDwvZGl2PlxyXG4gIDwvbWF0LWRpYWxvZy1jb250ZW50PlxyXG5cclxuICA8bWF0LWRpYWxvZy1hY3Rpb25zIGFsaWduPVwiZW5kXCI+XHJcbiAgICA8YnV0dG9uIG1hdC1zdHJva2VkLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY29sb3I9XCJ3YXJuXCIgKGNsaWNrKT1cImNsb3NlKClcIj5GZWNoYXI8L2J1dHRvbj5cclxuICAgIDxidXR0b24gbWF0LWZsYXQtYnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBjb2xvcj1cInByaW1hcnlcIj5TYWx2YXI8L2J1dHRvbj5cclxuICA8L21hdC1kaWFsb2ctYWN0aW9ucz5cclxuPC9mb3JtPiJdfQ==
|
|
176
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLXBlc3NvYS1lbWFpbC1mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5iLWxpYi1jb21wb25lbnRzL3NyYy9saWIvdW5iLXBlc3NvYS91bmItcGVzc29hLWVtYWlsLWZvcm0vdW5iLXBlc3NvYS1lbWFpbC1mb3JtLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5iLWxpYi1jb21wb25lbnRzL3NyYy9saWIvdW5iLXBlc3NvYS91bmItcGVzc29hLWVtYWlsLWZvcm0vdW5iLXBlc3NvYS1lbWFpbC1mb3JtLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHMUQsT0FBTyxFQUFFLGNBQWMsRUFBc0IsTUFBTSw2Q0FBNkMsQ0FBQztBQUVqRyxPQUFPLEVBQUUsZUFBZSxFQUFnQixNQUFNLDBCQUEwQixDQUFDO0FBRXpFLE9BQU8sRUFBc0IsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFRbEcsTUFBTSxPQUFPLDJCQUEyQjtJQVF0QyxZQUFvQixRQUFxQixFQUFVLE9BQXlCLEVBQVUsWUFBZ0MsRUFBUyxTQUFvRCxFQUFrQyxJQUFTO1FBQTFNLGFBQVEsR0FBUixRQUFRLENBQWE7UUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFrQjtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtRQUFTLGNBQVMsR0FBVCxTQUFTLENBQTJDO1FBQWtDLFNBQUksR0FBSixJQUFJLENBQUs7UUFOOU4sVUFBSyxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7UUFHN0IsbUJBQWMsR0FBeUIsRUFBRSxDQUFDO1FBQzFDLHNCQUFpQixHQUFHLG9CQUFvQixDQUFDO1FBR3ZDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFD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LENBQUM7UUFFckMseUNBQXlDO1FBQ3pDLElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDN0IsV0FBVyxHQUFHO2dCQUNaLE1BQU0sRUFBRSxHQUFHO2dCQUNYLGVBQWUsRUFBRSxJQUFJO2dCQUNyQixZQUFZLEVBQUUsV0FBVyxJQUFJLFdBQVc7YUFDekMsQ0FBQztRQUNKLENBQUM7YUFBTSxDQUFDO1lBQ04sV0FBVyxHQUFHLElBQUksQ0FBQztRQUNyQixDQUFDO1FBRUQsY0FBYztRQUNkLElBQUksV0FBVyxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ2pELENBQUM7UUFFRCxtRUFBbUU7UUFDbkUsSUFBSSxJQUFJLENBQUMsWUFBWSxJQUFJLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNsRCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLG1CQUFtQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUM5RyxDQUFDO0lBQ0gsQ0FBQztJQUVELFlBQVksQ0FBQyxPQUFlO1FBQzFCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUU7WUFDL0IsUUFBUSxFQUFFLElBQUk7U0FDZixDQUFDLENBQUM7SUFDTCxDQUFDOzhHQTdLVSwyQkFBMkIsMklBUXVKLGVBQWU7a0dBUmpNLDJCQUEyQixpRUNmeEMsaXhDQTBCTzs7MkZEWE0sMkJBQTJCO2tCQU52QyxTQUFTO2lDQUNJLEtBQUssWUFDUCwyQkFBMkI7OzBCQVlpSixNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBVbmJQZXNzb2FFbWFpbCwgVW5iUGVzc29hRW1haWxUaXBvIH0gZnJvbSAnLi4vdW5iLXBlc3NvYS1tb2RlbHMvdW5iLXBlc3NvYS1lbWFpbC5tb2RlbCc7XHJcbmltcG9ydCB7IFVuYlBlc3NvYUVycm9QYWRyYW8sIFVuQlBlc3NvYVNlcnZpY2UgfSBmcm9tICcuLi91bmItcGVzc29hLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IE5nRm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgVW5iTWVuc2FnZW1TZXJ2aWNlLCBVbmJUaXBvTWVuc2FnZW1FbnVtIH0gZnJvbSAnLi4vLi4vdW5iLW1lbnNhZ2VtL3VuYi1tZW5zYWdlbS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxyXG4gIHNlbGVjdG9yOiAnbGliLXVuYi1wZXNzb2EtZW1haWwtZm9ybScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3VuYi1wZXNzb2EtZW1haWwtZm9ybS5odG1sJyxcclxuICBzdHlsZVVybDogJy4vdW5iLXBlc3NvYS1lbWFpbC1mb3JtLmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFVuYlBlc3NvYUVtYWlsRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgZW1haWxTYWx2byE6IFVuYlBlc3NvYUVtYWlsO1xyXG4gIGVtYWlsID0gbmV3IFVuYlBlc3NvYUVtYWlsKCk7XHJcbiAgZW1haWxzTGlzdDogVW5iUGVzc29hRW1haWxbXTtcclxuICB0aXBvRW1haWwhOiBPYnNlcnZhYmxlPFVuYlBlc3NvYUVtYWlsVGlwb1tdPjtcclxuICBsaXN0YVRpcG9FbWFpbDogVW5iUGVzc29hRW1haWxUaXBvW10gPSBbXTtcclxuICBpZE1lbnNhZ2VtU2VydmljZSA9IFwiVW5iUGVzc29hRW1haWxGb3JtXCI7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc25hY2tCYXI6IE1hdFNuYWNrQmFyLCBwcml2YXRlIHNlcnZpY2U6IFVuQlBlc3NvYVNlcnZpY2UsIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBVbmJNZW5zYWdlbVNlcnZpY2UsIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxVbmJQZXNzb2FFbWFpbEZvcm1Db21wb25lbnQ+LCBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IGFueSkge1xyXG4gICAgdGhpcy5lbWFpbCA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoZGF0YS5lbWFpbCkpOyAvLyBPIGUtbWFpbCBlc3BlY8OtZmljbyBwYXJhIGVkacOnw6NvXHJcblxyXG4gICAgLy8gVmVyaWZpcXVlIHNlIGEgbGlzdGEgZGUgZS1tYWlscyBmb2kgcGFzc2FkYSBlIGF0cmlidWEtYVxyXG4gICAgaWYgKGRhdGEuZW1haWxzTGlzdCkge1xyXG4gICAgICB0aGlzLmVtYWlsc0xpc3QgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGRhdGEuZW1haWxzTGlzdCkpOyAvLyBGYcOnYSB1bWEgY8OzcGlhIHByb2Z1bmRhIHNlIGZvciBtYW5pcHVsYXJcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZW1haWxzTGlzdCA9IFtdOyAvLyBJbmljaWFsaXplIGNvbW8gdmF6aW8gc2UgbsOjbyBmb3IgcGFzc2FkYVxyXG4gICAgfVxyXG5cclxuICAgIGlmICghdGhpcy5lbWFpbCkge1xyXG4gICAgICB0aGlzLmVtYWlsID0gbmV3IFVuYlBlc3NvYUVtYWlsKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIC8vIENoYW1hbW9zIG8gc2VydmnDp28gZGlyZXRvLiBOw6NvIGd1YXJkYW1vcyBvIG9ic2VydmFibGUsIGFwZW5hcyBvIHJlc3VsdGFkby5cclxuICAgIHRoaXMuc2VydmljZS5nZXRUaXBvRW1haWwoKS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAobGlzdGEpID0+IHtcclxuICAgICAgICAvLyAxLiBHdWFyZGEgYSBsaXN0YSBwYXJhIG8gSFRNTCB1c2FyXHJcbiAgICAgICAgdGhpcy5saXN0YVRpcG9FbWFpbCA9IGxpc3RhO1xyXG5cclxuICAgICAgICAvLyAyLiBMw7NnaWNhIGRlIFNlbGXDp8OjbyBBdXRvbcOhdGljYSAoTWF0Y2gpXHJcbiAgICAgICAgaWYgKHRoaXMuZW1haWwudGlwb0VtYWlsQ29kaWdvICE9IG51bGwpIHtcclxuICAgICAgICAgIGNvbnN0IHRpcG9FbmNvbnRyYWRvID0gbGlzdGEuZmluZCh0ID0+IHQuY29kaWdvID09PSB0aGlzLmVtYWlsLnRpcG9FbWFpbENvZGlnbyk7XHJcbiAgICAgICAgICBpZiAodGlwb0VuY29udHJhZG8pIHtcclxuICAgICAgICAgICAgdGhpcy5lbWFpbC50aXBvID0gdGlwb0VuY29udHJhZG8uZGVub21pbmFjYW87XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmVtYWlsLnRpcG8pIHtcclxuICAgICAgICAgIGNvbnN0IHRpcG9FbmNvbnRyYWRvID0gbGlzdGEuZmluZChcclxuICAgICAgICAgICAgdCA9PiB0LmRlbm9taW5hY2FvPy50b0xvd2VyQ2FzZSgpID09PSB0aGlzLmVtYWlsLnRpcG8/LnRvTG93ZXJDYXNlKClcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICBpZiAodGlwb0VuY29udHJhZG8pIHtcclxuICAgICAgICAgICAgdGhpcy5lbWFpbC50aXBvRW1haWxDb2RpZ28gPSB0aXBvRW5jb250cmFkby5jb2RpZ28hO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgLy8gMy4gVXNhIHNldSB0cmF0YW1lbnRvIGRlIGVycm8gbm92b1xyXG4gICAgICBlcnJvcjogKGVycjogVW5iUGVzc29hRXJyb1BhZHJhbykgPT4gdGhpcy5oYW5kbGVFcnJvcihlcnIpXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHNhbHZhcihmb3JtOiBOZ0Zvcm0pIHtcclxuICAgIGlmIChmb3JtLmludmFsaWQpIHtcclxuICAgICAgdGhpcy5vcGVuU25hY2tCYXIoJ0V4aXN0ZW0gZXJyb3Mgbm8gZm9ybXVsw6FyaW8sIHBvciBmYXZvciwgdmVyaWZpY2FyLicpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgLy8gMS4gRGVmaW5lIG8gJ3RpcG8nIHBhZHLDo28gKGV4OiAxIHBhcmEgJ1Blc3NvYWwnKSBzZSBuw6NvIGZvciBwcmVlbmNoaWRvXHJcbiAgICBpZiAoIXRoaXMuZW1haWwudGlwb0VtYWlsQ29kaWdvKSB7XHJcbiAgICAgIHRoaXMuZW1haWwudGlwb0VtYWlsQ29kaWdvID0gMTsgLy8gMSDDqSBnZXJhbG1lbnRlICdQZXNzb2FsJ1xyXG4gICAgfVxyXG5cclxuICAgIC8vIDIuIERlZmluZSBhICdvcmRlbScgKHF1ZSBvIGJhY2stZW5kIGNoYW1hIGRlICdvcmRlbUVtYWlsJylcclxuICAgIGlmICghdGhpcy5lbWFpbC5vcmRlbSB8fCB0aGlzLmVtYWlsLm9yZGVtID09PSAwKSB7XHJcbiAgICAgIGxldCBtYXhPcmRlbSA9IDA7XHJcblxyXG4gICAgICAvLyBWZXJpZmljYSBzZSBhIGxpc3RhIGRlIGVtYWlscyBqw6EgZXhpc3RlIGUgdGVtIGl0ZW5zXHJcbiAgICAgIGlmICh0aGlzLmVtYWlsc0xpc3QgJiYgdGhpcy5lbWFpbHNMaXN0Lmxlbmd0aCA+IDApIHtcclxuICAgICAgICBtYXhPcmRlbSA9IE1hdGgubWF4KC4uLnRoaXMuZW1haWxzTGlzdC5tYXAoZSA9PiBlLm9yZGVtIHx8IDApKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gRGVmaW5lIGEgb3JkZW0gZG8gbm92byBlbWFpbCBjb21vIGEgbWFpb3Igb3JkZW0gKyAxXHJcbiAgICAgIHRoaXMuZW1haWwub3JkZW0gPSBtYXhPcmRlbSArIDE7XHJcbiAgICB9XHJcbiAgICAvLyAtLS0gRmltIGRhIE1vZGlmaWNhw6fDo28gLS0tXHJcblxyXG4gICAgaWYgKHRoaXMudmFsaWRhcih0aGlzLmVtYWlsKSA9PSBmYWxzZSkgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMuZW1haWxTYWx2byA9IHRoaXMuZW1haWw7XHJcbiAgICB0aGlzLnNhbHZhcmNsb3NlKClcclxuICB9XHJcblxyXG4gIGNvbXBhcmFyVGlwb3ModDE6IGFueSwgdDI6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHQxICYmIHQyICYmIHQxID09PSB0MjtcclxuICB9XHJcblxyXG4gIG9uVGlwb1NlbGVjaW9uYWRvKGNvZGlnb1NlbGVjaW9uYWRvOiBudW1iZXIpIHtcclxuICAgIGNvbnN0IHRpcG9TZWxlY2lvbmFkbyA9IHRoaXMubGlzdGFUaXBvRW1haWwuZmluZCh0ID0+IHQuY29kaWdvID09PSBjb2RpZ29TZWxlY2lvbmFkbyk7XHJcbiAgICBpZiAodGlwb1NlbGVjaW9uYWRvKSB7XHJcbiAgICAgIHRoaXMuZW1haWwudGlwbyA9IHRpcG9TZWxlY2lvbmFkby5kZW5vbWluYWNhbztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFZhbGlkYSBvIG9iamV0byBkZSBlLW1haWwsIHJlcGxpY2FuZG8gYXMgcmVncmFzIGRvIHZhbGlkYWRvciBkbyBiYWNrZW5kLlxyXG4gICAqIFJldG9ybmEgdHJ1ZSBzZSBvIGUtbWFpbCBmb3IgdsOhbGlkbywgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAqL1xyXG4gIHZhbGlkYXIoZW1haWxUb1ZhbGlkYXRlOiBVbmJQZXNzb2FFbWFpbCk6IGJvb2xlYW4ge1xyXG5cclxuICAgIC8vIDEuIFZhbGlkYcOnw6NvIGRlIGNhbXBvIG9icmlnYXTDs3JpbyAoZG8gSmF2YSlcclxuICAgIGlmICghZW1haWxUb1ZhbGlkYXRlLmVtYWlsIHx8IGVtYWlsVG9WYWxpZGF0ZS5lbWFpbC50cmltKCkgPT09ICcnKSB7XHJcbiAgICAgIHRoaXMub3BlblNuYWNrQmFyKFwiRS1tYWlsIMOpIHVtIGNhbXBvIG9icmlnYXTDs3Jpby5cIik7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyAyLiBWYWxpZGHDp8OjbyBkZSBUYW1hbmhvIE3DoXhpbW8gKGRvIEphdmEpXHJcbiAgICBpZiAoZW1haWxUb1ZhbGlkYXRlLmVtYWlsLnRyaW0oKS5sZW5ndGggPiA2MCkge1xyXG4gICAgICB0aGlzLm9wZW5TbmFja0JhcihcIkUtbWFpbCBkZXZlIHRlciBubyBtw6F4aW1vIDYwIGNhcmFjdGVyZXMuXCIpO1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gMy4gVmFsaWRhw6fDo28gZGUgZm9ybWF0byBkZSBlLW1haWwgKGRvIEphdmEgZSBkbyBBbmd1bGFyKVxyXG4gICAgLy8gICAgW0phdmE6ICFWYWxpZGFkb3Jlcy52YWxpZGFyRW1haWwocmVxdWVzdC5nZXRFbWFpbCgpKV1cclxuICAgIGNvbnN0IGVtYWlsUmVnZXggPSAvXlthLXpBLVowLTkuXyUrLV0rQFthLXpBLVowLTkuLV0rXFwuW2EtekEtWl17Mix9JC87XHJcbiAgICBpZiAoIWVtYWlsUmVnZXgudGVzdChlbWFpbFRvVmFsaWRhdGUuZW1haWwpKSB7XHJcbiAgICAgIHRoaXMub3BlblNuYWNrQmFyKFwiRGlnaXRlIHVtIEUtbWFpbCB2w6FsaWRvLlwiKTtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIDQuIFZhbGlkYcOnw6NvIGRlIGUtbWFpbCBkdXBsaWNhZG8gKGRvIHNldSBBbmd1bGFyKVxyXG4gICAgY29uc3QgaXNEdXBsaWNhdGUgPSB0aGlzLmVtYWlsc0xpc3Quc29tZShleGlzdGluZ0VtYWlsID0+XHJcbiAgICAgIGV4aXN0aW5nRW1haWwuZW1haWw/LnRvTG93ZXJDYXNlKCkgPT09IGVtYWlsVG9WYWxpZGF0ZS5lbWFpbD8udG9Mb3dlckNhc2UoKSAmJlxyXG4gICAgICBleGlzdGluZ0VtYWlsLmNvZGlnbyAhPT0gZW1haWxUb1ZhbGlkYXRlLmNvZGlnbyAvLyBJZ25vcmEgbyBwcsOzcHJpbyBlLW1haWwgc2UgZXN0aXZlciBzZW5kbyBlZGl0YWRvXHJcbiAgICApO1xyXG5cclxuICAgIGlmIChpc0R1cGxpY2F0ZSkge1xyXG4gICAgICB0aGlzLm9wZW5TbmFja0JhcihcIkVzdGUgZS1tYWlsIGrDoSBleGlzdGUgbmEgbGlzdGEuXCIpO1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gTm90YTogQXMgdmFsaWRhw6fDtWVzIGRlICdvcmRlbUVtYWlsJyBlICd0aXBvRW1haWxDb2RpZ28nIGRvIEphdmFcclxuICAgIC8vIGrDoSBzw6NvIHRyYXRhZGFzIG5hIHN1YSBmdW7Dp8OjbyAnc2FsdmFyKCknLFxyXG4gICAgLy8gcXVlIGF0cmlidWkgdmFsb3JlcyBwYWRyw6NvIGFudGVzIGRlc3RhIGZ1bsOnw6NvICd2YWxpZGFyKCknIHNlciBjaGFtYWRhLlxyXG5cclxuICAgIHJldHVybiB0cnVlOyAvLyBQYXNzb3UgZW0gdG9kYXMgYXMgdmFsaWRhw6fDtWVzIVxyXG4gIH1cclxuXHJcbiAgY2xvc2UoKSB7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShudWxsKTtcclxuICB9XHJcblxyXG4gIHNhbHZhcmNsb3NlKCkge1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UodGhpcy5lbWFpbFNhbHZvKTtcclxuICB9XHJcblxyXG4gIGhhbmRsZUVycm9yKGVycm86IFVuYlBlc3NvYUVycm9QYWRyYW8gfCBzdHJpbmcpIHtcclxuICAgIGxldCBlcnJvVHJhdGFkbzogVW5iUGVzc29hRXJyb1BhZHJhbztcclxuXHJcbiAgICAvLyBDb252ZXJ0ZSBzdHJpbmcgbG9jYWwgZW0gT2JqZXRvIFBhZHLDo29cclxuICAgIGlmICh0eXBlb2YgZXJybyA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgZXJyb1RyYXRhZG8gPSB7XHJcbiAgICAgICAgc3RhdHVzOiA0MDAsXHJcbiAgICAgICAgbWVuc2FnZW1TaW1wbGVzOiBlcnJvLFxyXG4gICAgICAgIG1lbnNhZ2VtSHRtbDogYDxzdHJvbmc+JHtlcnJvfTwvc3Ryb25nPmBcclxuICAgICAgfTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGVycm9UcmF0YWRvID0gZXJybztcclxuICAgIH1cclxuXHJcbiAgICAvLyAxLiBTbmFja0JhclxyXG4gICAgaWYgKGVycm9UcmF0YWRvLm1lbnNhZ2VtU2ltcGxlcykge1xyXG4gICAgICB0aGlzLm9wZW5TbmFja0JhcihlcnJvVHJhdGFkby5tZW5zYWdlbVNpbXBsZXMpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIDIuIEFsZXJ0U2VydmljZSAoU2UgaG91dmVyIHRhZyA8dW5iLW1lbnNhZ2VtPiBubyBIVE1MIGRvIGRpYWxvZylcclxuICAgIGlmICh0aGlzLmFsZXJ0U2VydmljZSAmJiBlcnJvVHJhdGFkby5tZW5zYWdlbUh0bWwpIHtcclxuICAgICAgdGhpcy5hbGVydFNlcnZpY2Uuc2hvd01lc3NhZ2UoZXJyb1RyYXRhZG8ubWVuc2FnZW1IdG1sLCBVbmJUaXBvTWVuc2FnZW1FbnVtLkRBTkdFUiwgdGhpcy5pZE1lbnNhZ2VtU2VydmljZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvcGVuU25hY2tCYXIobWVzc2FnZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnNuYWNrQmFyLm9wZW4obWVzc2FnZSwgJ3gnLCB7XHJcbiAgICAgIGR1cmF0aW9uOiA1MDAwLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxufSIsIjxoMSBtYXQtZGlhbG9nLXRpdGxlPkNhZGFzdHJvIGRlIEUtbWFpbDwvaDE+XHJcbjxmb3JtIChuZ1N1Ym1pdCk9XCJzYWx2YXIoZm9ybSlcIiAjZm9ybT1cIm5nRm9ybVwiPlxyXG4gIDxtYXQtZGlhbG9nLWNvbnRlbnQ+XHJcbiAgICA8dW5iLW1lbnNhZ2VtIFtpZGVudGlmaWNhZG9yXT1cImlkTWVuc2FnZW1TZXJ2aWNlXCI+PC91bmItbWVuc2FnZW0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jb250YWluZXJcIj5cclxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZm9ybS0xMDBcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxyXG4gICAgICAgIDxtYXQtbGFiZWw+VGlwbzwvbWF0LWxhYmVsPlxyXG4gICAgICAgIDxtYXQtc2VsZWN0IFsobmdNb2RlbCldPVwiZW1haWwudGlwb0VtYWlsQ29kaWdvXCIgW2NvbXBhcmVXaXRoXT1cImNvbXBhcmFyVGlwb3NcIiBuYW1lPVwidGlwb0VtYWlsQ29kaWdvXCIgKHNlbGVjdGlvbkNoYW5nZSk9XCJvblRpcG9TZWxlY2lvbmFkbygkZXZlbnQudmFsdWUpXCIgcmVxdWlyZWQ+XHJcbiAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgdGlwbyBvZiBsaXN0YVRpcG9FbWFpbFwiIFt2YWx1ZV09XCJ0aXBvLmNvZGlnb1wiPlxyXG4gICAgICAgICAgICB7e3RpcG8uZGVub21pbmFjYW99fVxyXG4gICAgICAgICAgPC9tYXQtb3B0aW9uPlxyXG4gICAgICAgIDwvbWF0LXNlbGVjdD5cclxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcbiAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZvcm0tMTAwXCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cclxuICAgICAgICA8bWF0LWxhYmVsPkUtbWFpbDwvbWF0LWxhYmVsPlxyXG4gICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIG1hdElucHV0IFsobmdNb2RlbCldPVwiZW1haWwuZW1haWxcIiBuYW1lPVwiZW1haWxWYWx1ZVwiICNlbWFpbFZhbHVlPVwibmdNb2RlbFwiIC8+XHJcbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcblxyXG4gICAgPC9kaXY+XHJcbiAgPC9tYXQtZGlhbG9nLWNvbnRlbnQ+XHJcblxyXG4gIDxtYXQtZGlhbG9nLWFjdGlvbnMgYWxpZ249XCJlbmRcIj5cclxuICAgIDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIHR5cGU9XCJidXR0b25cIiBjb2xvcj1cIndhcm5cIiAoY2xpY2spPVwiY2xvc2UoKVwiPkZlY2hhcjwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBtYXQtZmxhdC1idXR0b24gdHlwZT1cInN1Ym1pdFwiIGNvbG9yPVwicHJpbWFyeVwiPlNhbHZhcjwvYnV0dG9uPlxyXG4gIDwvbWF0LWRpYWxvZy1hY3Rpb25zPlxyXG48L2Zvcm0+Il19
|
|
@@ -16,7 +16,7 @@ export class UnbPessoaEmailListComponent {
|
|
|
16
16
|
this.dialog = dialog;
|
|
17
17
|
this.podeEditar = true;
|
|
18
18
|
this.emails = [];
|
|
19
|
-
this.
|
|
19
|
+
this.backendURL = '';
|
|
20
20
|
this.emailsEmitted = new EventEmitter();
|
|
21
21
|
}
|
|
22
22
|
ngOnInit() {
|
|
@@ -141,7 +141,7 @@ export class UnbPessoaEmailListComponent {
|
|
|
141
141
|
this.emails.sort((a, b) => (a.ordem ?? 0) - (b.ordem ?? 0)); // <-- 'ordem'
|
|
142
142
|
}
|
|
143
143
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: UnbPessoaEmailListComponent, deps: [{ token: i1.MatSnackBar }, { token: i2.UnBPessoaService }, { token: i3.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
144
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.2", type: UnbPessoaEmailListComponent, selector: "lib-unb-pessoa-email-list", inputs: { podeEditar: "podeEditar", emails: "emails",
|
|
144
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.2", type: UnbPessoaEmailListComponent, selector: "lib-unb-pessoa-email-list", inputs: { podeEditar: "podeEditar", emails: "emails", backendURL: "backendURL" }, outputs: { emailsEmitted: "emailsEmitted" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"mes-container\">\r\n <div class=\"header-container\">\r\n <div class=\"mes-header\">\r\n <span class=\"titulo\">\r\n {{ emails?.length === 1 ? 'Email Cadastrado' : 'E-mails Cadastrados' }}\r\n </span>\r\n <span class=\"titulo\">({{ emails?.length || 0 }})</span>\r\n </div>\r\n\r\n <button type=\"button\" matTooltip=\"Novo Email\" mat-flat-button color=\"primary\" (click)=\"openFormDialog(null)\">\r\n Cadastrar Novo Email\r\n </button>\r\n </div>\r\n\r\n <!-- Exibe a tabela de despesas somente se houver despesas -->\r\n <table class=\"my-table\" *ngIf=\"emails && emails.length > 0\" cdkDropList (cdkDropListDropped)=\"moverLinha($event)\">\r\n\r\n <tr style=\"background-color: #e4e3e3cc;\">\r\n <th style=\"width: 5%; text-align: center;\">Ordem</th>\r\n <th>E-mail</th>\r\n <th>Tipo</th>\r\n <th style=\"width: 1%; text-align: center;\">A\u00E7\u00F5es</th>\r\n </tr>\r\n\r\n <tr *ngFor=\"let valor of emails; let i = index\" class=\"my-tr\" cdkDrag>\r\n\r\n <td style=\"text-align: center;\">\r\n <div class=\"drag-cell\" cdkDragHandle>\r\n <mat-icon>drag_indicator</mat-icon>\r\n <span>{{ i + 1 }}</span>\r\n </div>\r\n </td>\r\n\r\n <td>{{ valor.email }}</td>\r\n\r\n <td>{{ valor.tipo?.toUpperCase() }}</td>\r\n\r\n <td>\r\n <div class=\"actions-container\">\r\n <button type=\"button\" mat-icon-button aria-label=\"Salvar\" color=\"primary\" (click)=\"editar(valor)\">\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n <button type=\"button\" mat-icon-button aria-label=\"Deletar\" color=\"warn\" (click)=\"excluir(valor)\">\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n </div>\r\n </td>\r\n </tr>\r\n </table>\r\n</div>", styles: [".mes-container{padding:12px;margin-bottom:2px;border-radius:8px;box-shadow:0 2px 6px #0000001a;transition:background-color .3s ease,box-shadow .3s ease}.mes-container:nth-child(2n){background-color:#f9f9fc}.mes-container:nth-child(odd){background-color:#fff}.mes-container:hover{background-color:#f0f0f5;box-shadow:0 4px 8px #00000026}.header-container{display:flex;align-items:center;margin-bottom:2px}.header-container button{margin-left:auto}.mes-header{display:flex;align-items:center;gap:6px;font-size:1.2rem;font-weight:700;color:#333}.my-table{width:100%;border-collapse:collapse;border-radius:8px;overflow:hidden;box-shadow:0 4px 8px #0000001a;font-family:Arial,sans-serif}.my-table th,.my-table td{padding:5px;text-align:left;border-bottom:1px solid #ddd}.my-table th{background-color:#005dbb7b;color:#fff;font-weight:700}.my-table tr{transition:background-color .3s ease}.my-table tr:hover{background-color:#f1f1f1}.my-table td{background-color:#fff}.my-table td button{transition:transform .2s ease}.my-table td button:hover{transform:scale(1.1)}.my-table td:last-child{text-align:center}.order-input{width:40px;text-align:center;border:1px solid #ccc;border-radius:4px;padding:2px}.order-input:focus{border-color:#1976d2;outline:none}.drag-cell{display:inline-flex;align-items:center;justify-content:center;gap:4px;cursor:grab;-webkit-user-select:none;user-select:none}.drag-cell mat-icon{font-size:18px;line-height:1;vertical-align:middle}.cdk-drag-preview{background:#fff;border-radius:6px;box-shadow:0 4px 12px #0003;display:table;border-collapse:collapse}.cdk-drag-placeholder{opacity:0;display:table-row}.cdk-drag-animating{transition:transform .2s cubic-bezier(0,0,.2,1)}table[cdkDropList] tr{border-bottom:1px solid #e0e0e0}table[cdkDropList] td{padding:8px}.actions-container{display:flex;justify-content:flex-end;gap:4px}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i6.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: i7.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i7.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }] }); }
|
|
145
145
|
}
|
|
146
146
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: UnbPessoaEmailListComponent, decorators: [{
|
|
147
147
|
type: Component,
|
|
@@ -150,9 +150,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
|
|
|
150
150
|
type: Input
|
|
151
151
|
}], emails: [{
|
|
152
152
|
type: Input
|
|
153
|
-
}],
|
|
153
|
+
}], backendURL: [{
|
|
154
154
|
type: Input
|
|
155
155
|
}], emailsEmitted: [{
|
|
156
156
|
type: Output
|
|
157
157
|
}] } });
|
|
158
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLXBlc3NvYS1lbWFpbC1saXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5iLWxpYi1jb21wb25lbnRzL3NyYy9saWIvdW5iLXBlc3NvYS91bmItcGVzc29hLWVtYWlsLWZvcm0vdW5iLXBlc3NvYS1lbWFpbC1saXN0LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5iLWxpYi1jb21wb25lbnRzL3NyYy9saWIvdW5iLXBlc3NvYS91bmItcGVzc29hLWVtYWlsLWZvcm0vdW5iLXBlc3NvYS1lbWFpbC1saXN0Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBNEIsTUFBTSxlQUFlLENBQUM7QUFNekcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFdEUsT0FBTyxFQUFlLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7Ozs7QUFRdEUsTUFBTSxPQUFPLDJCQUEyQjtJQVN0QyxZQUFvQixRQUFxQixFQUFVLE9BQXlCLEVBQVMsTUFBaUI7UUFBbEYsYUFBUSxHQUFSLFFBQVEsQ0FBYTtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQWtCO1FBQVMsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQVA3RixlQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLFdBQU0sR0FBUSxFQUFFLENBQUM7UUFDakIsb0JBQWUsR0FBbUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUN4RSxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFvQixDQUFDO0lBTS9ELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRTdDLElBQUksQ0FBQyxrQkFBa0IsRUFB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WUFDSCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxxREFBcUQ7UUFDckQsa0JBQWtCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2pDLEtBQUssQ0FBQyxLQUFLLEdBQUcscUJBQXFCLEVBQUUsQ0FBQztZQUN0QyxlQUFlLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQyxDQUFDLENBQUMsQ0FBQztRQUVILGdDQUFnQztRQUNoQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWM7SUFDM0UsQ0FBQzs4R0F6SlEsMkJBQTJCO2tHQUEzQiwyQkFBMkIsK05DaEJ4Qyw4akVBaURNOzsyRkRqQ08sMkJBQTJCO2tCQU52QyxTQUFTO2lDQUNJLEtBQUssWUFDUCwyQkFBMkI7dUlBTTVCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0ksYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRTbmFja0JhciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XHJcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgVW5iUGVzc29hRW1haWwsIFVuYlBlc3NvYUVtYWlsVGlwbyB9IGZyb20gJy4uL3VuYi1wZXNzb2EtbW9kZWxzL3VuYi1wZXNzb2EtZW1haWwubW9kZWwnO1xyXG5pbXBvcnQgeyBVbkJQZXNzb2FTZXJ2aWNlIH0gZnJvbSAnLi4vdW5iLXBlc3NvYS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVW5iUGVzc29hRW1haWxGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi91bmItcGVzc29hLWVtYWlsLWZvcm0nO1xyXG5pbXBvcnQgeyBUaXBvUGVzc29hRW51bSB9IGZyb20gJy4uL3VuYi10aXBvLXBlc3NvYS5lbnVtJztcclxuaW1wb3J0IHsgQ2RrRHJhZ0Ryb3AsIG1vdmVJdGVtSW5BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc3RhbmRhbG9uZTogZmFsc2UsXHJcbiAgc2VsZWN0b3I6ICdsaWItdW5iLXBlc3NvYS1lbWFpbC1saXN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdW5iLXBlc3NvYS1lbWFpbC1saXN0Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi91bmItcGVzc29hLWVtYWlsLWxpc3QuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVW5iUGVzc29hRW1haWxMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG5cclxuICBASW5wdXQoKSBwb2RlRWRpdGFyID0gdHJ1ZTtcclxuICBASW5wdXQoKSBlbWFpbHM6IGFueSA9IFtdO1xyXG4gIEBJbnB1dCgpIGFwaVBlc3NvYUNvbmZpZzogeyB1cmw6IHN0cmluZzsgdG9rZW46IHN0cmluZyB9ID0geyB1cmw6ICcnLCB0b2tlbjogJycgfTtcclxuICBAT3V0cHV0KCkgZW1haWxzRW1pdHRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8VW5iUGVzc29hRW1haWxbXT4oKTtcclxuXHJcbiAgdGlwb0VtYWlsITogT2JzZXJ2YWJsZTxVbmJQZXNzb2FFbWFpbFRpcG9bXT47XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc25hY2tCYXI6IE1hdFNuYWNrQmFyLCBwcml2YXRlIHNlcnZpY2U6IFVuQlBlc3NvYVNlcnZpY2UsIHB1YmxpYyBkaWFsb2c6IE1hdERpYWxvZykge1xyXG5cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy50aXBvRW1haWwgPSB0aGlzLnNlcnZpY2UuZ2V0VGlwb0VtYWlsKCk7XHJcblxyXG4gICAgdGhpcy5zb3J0QW5kQXNzaWduT3JkZXIoKTsgLy8gb3JnYW5pemEgYSBsaXN0YSBkZSBlbWFpbHMuIEFzIHZlemVzIHRlbSBvcmRlbSBkdXBsaWNhZGEgb3UgZmFsdGFuZG8uXHJcbiAgfVxyXG5cclxuICAvLyB0ZW0gcXVlIGZhemVyIGlzc28gcHEgbm8gb24gaW5pdCBldSBhaW5kYSBuYW8gdGVuaG8gYSBsaXN0YVxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIC8vIFZlcmlmaWNhIHNlIGEgcHJvcHJpZWRhZGUgJ2VtYWlscycgbXVkb3VcclxuICAgIGlmIChjaGFuZ2VzWydlbWFpbHMnXSAmJiB0aGlzLmVtYWlscykge1xyXG4gICAgICAvLyBjaGFtYWRhIHF1YW5kbyBvcyBkYWRvcyByZWFsbWVudGUgY2hlZ2FyZW1cclxuICAgICAgdGhpcy5zb3J0QW5kQXNzaWduT3JkZXIoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGV4Y2x1aXIoZW1haWxQYXJhRXhjbHVpcjogVW5iUGVzc29hRW1haWwpIHsgLy8gPC0tIFRJUE8gQ09SUklHSURPXHJcblxyXG4gICAgaWYgKGVtYWlsUGFyYUV4Y2x1aXIuY29kaWdvKSB7XHJcbiAgICAgIC8vIFNlIHRlbSBjw7NkaWdvLCByZW1vdmUgcG9yIGVsZVxyXG4gICAgICB0aGlzLmVtYWlscyA9IHRoaXMuZW1haWxzLmZpbHRlcihlID0+IGUuY29kaWdvICE9PSBlbWFpbFBhcmFFeGNsdWlyLmNvZGlnbyk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAvLyBTZSBuw6NvIHRlbSBjw7NkaWdvIChub3ZvIGl0ZW0pLCByZW1vdmUgcGVsYSBvcmRlbVxyXG4gICAgICB0aGlzLmVtYWlscyA9IHRoaXMuZW1haWxzLmZpbHRlcihlID0+IGUub3JkZW0gIT09IGVtYWlsUGFyYUV4Y2x1aXIub3JkZW0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIENoYW1hIHN1YSBmdW7Dp8OjbyBleGlzdGVudGUgcXVlIHJlLWNhbGN1bGEgYXMgb3JkZW5zIGUgZW1pdGUgYSBsaXN0YVxyXG4gICAgdGhpcy5hdHVhbGl6YXJPcmRlbSgpO1xyXG4gIH1cclxuXHJcbiAgZWRpdGFyKGVtYWlsOiBVbmJQZXNzb2FFbWFpbFRpcG8pIHtcclxuICAgIHRoaXMub3BlbkZvcm1EaWFsb2coZW1haWwpO1xyXG4gIH1cclxuXHJcblxyXG4gIGF0dWFsaXphck9yZGVtKCkge1xyXG4gICAgdGhpcy5lbWFpbHMuZm9yRWFjaCgoZW1haWwsIGlkeCkgPT4ge1xyXG4gICAgICBlbWFpbC5vcmRlbSA9IGlkeCArIDE7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmVtYWlsc0VtaXR0ZWQuZW1pdChbLi4udGhpcy5lbWFpbHNdKTtcclxuICB9XHJcblxyXG4gIG9wZW5Gb3JtRGlhbG9nKGVtYWlsVG9FZGl0OiBhbnkpIHtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oVW5iUGVzc29hRW1haWxGb3JtQ29tcG9uZW50LCB7XHJcbiAgICAgIHdpZHRoOiAnOTAwcHgnLFxyXG4gICAgICBkYXRhOiB7XHJcbiAgICAgICAgZW1haWw6IGVtYWlsVG9FZGl0LCAvLyBFLW1haWwgYSBzZXIgZWRpdGFkbyBvdSB2YXppbyBwYXJhIG5vdm9cclxuICAgICAgICBlbWFpbHNMaXN0OiB0aGlzLmVtYWlscyAvLyBBIHN1YSBsaXN0YSBDT01QTEVUQSBkZSBlLW1haWxzXHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuXHJcbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcclxuICAgICAgaWYgKCFyZXN1bHQpIHtcclxuICAgICAgICByZXR1cm47IC8vIFVzdcOhcmlvIGNsaWNvdSBlbSAnRmVjaGFyJyBvdSAnQ2FuY2VsYXInXHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vICdyZXN1bHQnIMOpIG8gb2JqZXRvIHJldG9ybmFkbyBwZWxvIGRpYWxvZyAoZWRpdGFkbyBvdSBub3ZvKVxyXG4gICAgICBsZXQgaW5kZXggPSAtMTtcclxuXHJcbiAgICAgIC8vIDEuIFRlbnRhIGVuY29udHJhciBwZWxvICdjb2RpZ28nIChwYXJhIGl0ZW5zIHF1ZSBqw6EgdmllcmFtIGRvIGJhbmNvKVxyXG4gICAgICBpZiAocmVzdWx0LmNvZGlnbykge1xyXG4gICAgICAgIGluZGV4ID0gdGhpcy5lbWFpbHMuZmluZEluZGV4KGUgPT4gZS5jb2RpZ28gPT09IHJlc3VsdC5jb2RpZ28pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyAyLiBTZSBuw6NvIGFjaG91IHBlbG8gJ2NvZGlnbycsIHRlbnRhIHBlbGEgJ29yZGVtJy5cclxuICAgICAgaWYgKGluZGV4ID09PSAtMSAmJiByZXN1bHQub3JkZW0pIHtcclxuICAgICAgICBpbmRleCA9IHRoaXMuZW1haWxzLmZpbmRJbmRleChlID0+IGUub3JkZW0gPT09IHJlc3VsdC5vcmRlbSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChpbmRleCA+IC0xKSB7XHJcbiAgICAgICAgLy8gRU5DT05UUk9VIChwZWxvICdjb2RpZ28nIG91IHBlbGEgJ29yZGVtJyk6IEF0dWFsaXphIG8gaXRlbSBleGlzdGVudGVcclxuICAgICAgICB0aGlzLmVtYWlsc1tpbmRleF0gPSByZXN1bHQ7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgLy8gTsODTyBFTkNPTlRST1U6IMOJIHVtIGl0ZW0gMTAwJSBub3ZvIChuw6NvIHVtYSBlZGnDp8OjbylcclxuICAgICAgICB0aGlzLmVtYWlscy5wdXNoKHJlc3VsdCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIFJlLW9yZGVuYSBhIGxpc3RhIHBlbGEgJ29yZGVtJyBlIGVtaXRlIHVtYSAqbm92YSBjw7NwaWEqXHJcbiAgICAgIHRoaXMuZW1haWxzLnNvcnQoKGEsIGIpID0+IChhLm9yZGVtID8/IDApIC0gKGIub3JkZW0gPz8gMCkpO1xyXG4gICAgICB0aGlzLmVtYWlsc0VtaXR0ZWQuZW1pdChbLi4udGhpcy5lbWFpbHNdKTsgLy8gPC0tIEVtaXRlIG5vdmEgY8OzcGlhXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG1vdmVyTGluaGEoZXZlbnQ6IENka0RyYWdEcm9wPGFueVtdPikge1xyXG4gICAgbW92ZUl0ZW1JbkFycmF5KHRoaXMuZW1haWxzLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xyXG4gICAgdGhpcy5hdHVhbGl6YXJPcmRlbSgpXHJcbiAgfVxyXG5cclxucHJpdmF0ZSBzb3J0QW5kQXNzaWduT3JkZXIoKTogdm9pZCB7XHJcbiAgICAvLyAxLiBDcmllIHVtYSBjw7NwaWEgZGEgbGlzdGFcclxuICAgIGNvbnN0IHRlbXBFbWFpbHMgPSBbLi4udGhpcy5lbWFpbHNdOyAvLyA8LS0gTk9NRSBDT1JSSUdJRE9cclxuXHJcbiAgICAvLyAyLiBNYXBlaWUgYXMgb3JkZW5zIGV4aXN0ZW50ZXNcclxuICAgIGNvbnN0IG9yZGVyTWFwID0gbmV3IE1hcDxudW1iZXIsIFVuYlBlc3NvYUVtYWlsW10+KCk7XHJcbiAgICBjb25zdCBlbWFpbHNXaXRob3V0T3JkZXI6IFVuYlBlc3NvYUVtYWlsW10gPSBbXTtcclxuXHJcbiAgICB0ZW1wRW1haWxzLmZvckVhY2goZW1haWwgPT4ge1xyXG4gICAgICAvLyBDT1JSRcOHw4NPIEFRVUk6ICdvcmRlbScgZW0gdmV6IGRlICdvcmRlbUVtYWlsJ1xyXG4gICAgICBpZiAoZW1haWwub3JkZW0gIT09IHVuZGVmaW5lZCAmJiBlbWFpbC5vcmRlbSAhPT0gbnVsbCkge1xyXG4gICAgICAgIGlmICghb3JkZXJNYXAuaGFzKGVtYWlsLm9yZGVtKSkge1xyXG4gICAgICAgICAgb3JkZXJNYXAuc2V0KGVtYWlsLm9yZGVtLCBbXSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG9yZGVyTWFwLmdldChlbWFpbC5vcmRlbSk/LnB1c2goZW1haWwpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGVtYWlsc1dpdGhvdXRPcmRlci5wdXNoKGVtYWlsKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gMy4gLi4uIChGdW7Dp8O1ZXMgJ2ZpbmFsVXNlZE9yZGVycycsICduZXh0QXZhaWxhYmxlT3JkZXInIGNvbnRpbnVhbSBpZ3VhaXMpIC4uLlxyXG4gICAgY29uc3QgZmluYWxVc2VkT3JkZXJzID0gbmV3IFNldDxudW1iZXI+KCk7XHJcbiAgICBsZXQgbmV4dEF2YWlsYWJsZU9yZGVyID0gMDtcclxuICAgIGNvbnN0IGdldE5leHRBdmFpbGFibGVPcmRlciA9ICgpID0+IHtcclxuICAgICAgd2hpbGUgKGZpbmFsVXNlZE9yZGVycy5oYXMobmV4dEF2YWlsYWJsZU9yZGVyKSkge1xyXG4gICAgICAgIG5leHRBdmFpbGFibGVPcmRlcisrO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBuZXh0QXZhaWxhYmxlT3JkZXIrKztcclxuICAgIH07XHJcblxyXG4gICAgLy8gNC4gUHJvY2Vzc2UgZW1haWxzIGNvbSBvcmRlbSBkZWZpbmlkYTpcclxuICAgIHRoaXMuZW1haWxzLmZvckVhY2goZW1haWwgPT4geyAvLyA8LS0gTk9NRSBDT1JSSUdJRE9cclxuICAgICAgLy8gQ09SUkXDh8ODTyBBUVVJOiAnb3JkZW0nIGVtIHZleiBkZSAnb3JkZW1FbWFpbCdcclxuICAgICAgaWYgKGVtYWlsLm9yZGVtICE9PSB1bmRlZmluZWQgJiYgZW1haWwub3JkZW0gIT09IG51bGwpIHtcclxuICAgICAgICBpZiAoIWZpbmFsVXNlZE9yZGVycy5oYXMoZW1haWwub3JkZW0pKSB7XHJcbiAgICAgICAgICBmaW5hbFVzZWRPcmRlcnMuYWRkKGVtYWlsLm9yZGVtKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgLy8gRHVwbGljYXRhLCBhdHJpYnVhIHVtYSBub3ZhXHJcbiAgICAgICAgICBlbWFpbC5vcmRlbSA9IGdldE5leHRBdmFpbGFibGVPcmRlcigpO1xyXG4gICAgICAgICAgZmluYWxVc2VkT3JkZXJzLmFkZChlbWFpbC5vcmRlbSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyA1LiBBdHJpYnVhIG9yZGVucyBwYXJhIGVtYWlscyBxdWUgbsOjbyB0aW5oYW0gb3JkZW1cclxuICAgIGVtYWlsc1dpdGhvdXRPcmRlci5mb3JFYWNoKGVtYWlsID0+IHsgLy8gPC0tIE5PTUUgQ09SUklHSURPXHJcbiAgICAgIGVtYWlsLm9yZGVtID0gZ2V0TmV4dEF2YWlsYWJsZU9yZGVyKCk7IFxyXG4gICAgICBmaW5hbFVzZWRPcmRlcnMuYWRkKGVtYWlsLm9yZGVtKTsgXHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyA2LiBGaW5hbG1lbnRlLCBvcmRlbmUgYSBsaXN0YVxyXG4gICAgdGhpcy5lbWFpbHMuc29ydCgoYSwgYikgPT4gKGEub3JkZW0gPz8gMCkgLSAoYi5vcmRlbSA/PyAwKSk7IC8vIDwtLSAnb3JkZW0nXHJcbiAgICB9XHJcbiAgfSIsIjxkaXYgY2xhc3M9XCJtZXMtY29udGFpbmVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLWNvbnRhaW5lclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtZXMtaGVhZGVyXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0dWxvXCI+XHJcbiAgICAgICAgICAgICAgICB7eyBlbWFpbHM/Lmxlbmd0aCA9PT0gMSA/ICdFbWFpbCBDYWRhc3RyYWRvJyA6ICdFLW1haWxzIENhZGFzdHJhZG9zJyB9fVxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0dWxvXCI+KHt7IGVtYWlscz8ubGVuZ3RoIHx8IDAgfX0pPC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBtYXRUb29sdGlwPVwiTm92byBFbWFpbFwiIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwib3BlbkZvcm1EaWFsb2cobnVsbClcIj5cclxuICAgICAgICAgICAgQ2FkYXN0cmFyIE5vdm8gRW1haWxcclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDwhLS0gRXhpYmUgYSB0YWJlbGEgZGUgZGVzcGVzYXMgc29tZW50ZSBzZSBob3V2ZXIgZGVzcGVzYXMgLS0+XHJcbiAgICA8dGFibGUgY2xhc3M9XCJteS10YWJsZVwiICpuZ0lmPVwiZW1haWxzICYmIGVtYWlscy5sZW5ndGggPiAwXCIgY2RrRHJvcExpc3QgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJtb3ZlckxpbmhhKCRldmVudClcIj5cclxuXHJcbiAgICAgICAgPHRyIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogI2U0ZTNlM2NjO1wiPlxyXG4gICAgICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogNSU7IHRleHQtYWxpZ246IGNlbnRlcjtcIj5PcmRlbTwvdGg+XHJcbiAgICAgICAgICAgIDx0aD5FLW1haWw8L3RoPlxyXG4gICAgICAgICAgICA8dGg+VGlwbzwvdGg+XHJcbiAgICAgICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiAxJTsgdGV4dC1hbGlnbjogY2VudGVyO1wiPkHDp8O1ZXM8L3RoPlxyXG4gICAgICAgIDwvdHI+XHJcblxyXG4gICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgdmFsb3Igb2YgZW1haWxzOyBsZXQgaSA9IGluZGV4XCIgY2xhc3M9XCJteS10clwiIGNka0RyYWc+XHJcblxyXG4gICAgICAgICAgICA8dGQgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJhZy1jZWxsXCIgY2RrRHJhZ0hhbmRsZT5cclxuICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24+ZHJhZ19pbmRpY2F0b3I8L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGkgKyAxIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvdGQ+XHJcblxyXG4gICAgICAgICAgICA8dGQ+e3sgdmFsb3IuZW1haWwgfX08L3RkPlxyXG5cclxuICAgICAgICAgICAgPHRkPnt7IHZhbG9yLnRpcG8/LnRvVXBwZXJDYXNlKCkgfX08L3RkPlxyXG5cclxuICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbnMtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LWljb24tYnV0dG9uIGFyaWEtbGFiZWw9XCJTYWx2YXJcIiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiZWRpdGFyKHZhbG9yKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24+ZWRpdDwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LWljb24tYnV0dG9uIGFyaWEtbGFiZWw9XCJEZWxldGFyXCIgY29sb3I9XCJ3YXJuXCIgKGNsaWNrKT1cImV4Y2x1aXIodmFsb3IpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5kZWxldGU8L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgPC90cj5cclxuICAgIDwvdGFibGU+XHJcbjwvZGl2PiJdfQ==
|
|
158
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLXBlc3NvYS1lbWFpbC1saXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5iLWxpYi1jb21wb25lbnRzL3NyYy9saWIvdW5iLXBlc3NvYS91bmItcGVzc29hLWVtYWlsLWZvcm0vdW5iLXBlc3NvYS1lbWFpbC1saXN0LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5iLWxpYi1jb21wb25lbnRzL3NyYy9saWIvdW5iLXBlc3NvYS91bmItcGVzc29hLWVtYWlsLWZvcm0vdW5iLXBlc3NvYS1lbWFpbC1saXN0Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBNEIsTUFBTSxlQUFlLENBQUM7QUFNekcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFdEUsT0FBTyxFQUFlLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7Ozs7QUFRdEUsTUFBTSxPQUFPLDJCQUEyQjtJQVN0QyxZQUFvQixRQUFxQixFQUFVLE9BQXlCLEVBQVMsTUFBaUI7UUFBbEYsYUFBUSxHQUFSLFFBQVEsQ0FBYTtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQWtCO1FBQVMsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQVA3RixlQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLFdBQU0sR0FBUSxFQUFFLENBQUM7UUFDakIsZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUN2QixrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFvQixDQUFDO0lBTS9ELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRTdDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsd0VBQXdFO0lBQ3JHLENBQUM7SUFFRCw4REFBOEQ7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UUFDckQsa0JBQWtCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2pDLEtBQUssQ0FBQyxLQUFLLEdBQUcscUJBQXFCLEVBQUUsQ0FBQztZQUN0QyxlQUFlLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQyxDQUFDLENBQUMsQ0FBQztRQUVILGdDQUFnQztRQUNoQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWM7SUFDM0UsQ0FBQzs4R0F6SlEsMkJBQTJCO2tHQUEzQiwyQkFBMkIscU5DaEJ4Qyw4akVBaURNOzsyRkRqQ08sMkJBQTJCO2tCQU52QyxTQUFTO2lDQUNJLEtBQUssWUFDUCwyQkFBMkI7dUlBTTVCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRTbmFja0JhciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XHJcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgVW5iUGVzc29hRW1haWwsIFVuYlBlc3NvYUVtYWlsVGlwbyB9IGZyb20gJy4uL3VuYi1wZXNzb2EtbW9kZWxzL3VuYi1wZXNzb2EtZW1haWwubW9kZWwnO1xyXG5pbXBvcnQgeyBVbkJQZXNzb2FTZXJ2aWNlIH0gZnJvbSAnLi4vdW5iLXBlc3NvYS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVW5iUGVzc29hRW1haWxGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi91bmItcGVzc29hLWVtYWlsLWZvcm0nO1xyXG5pbXBvcnQgeyBUaXBvUGVzc29hRW51bSB9IGZyb20gJy4uL3VuYi10aXBvLXBlc3NvYS5lbnVtJztcclxuaW1wb3J0IHsgQ2RrRHJhZ0Ryb3AsIG1vdmVJdGVtSW5BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc3RhbmRhbG9uZTogZmFsc2UsXHJcbiAgc2VsZWN0b3I6ICdsaWItdW5iLXBlc3NvYS1lbWFpbC1saXN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdW5iLXBlc3NvYS1lbWFpbC1saXN0Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi91bmItcGVzc29hLWVtYWlsLWxpc3QuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVW5iUGVzc29hRW1haWxMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG5cclxuICBASW5wdXQoKSBwb2RlRWRpdGFyID0gdHJ1ZTtcclxuICBASW5wdXQoKSBlbWFpbHM6IGFueSA9IFtdO1xyXG4gIEBJbnB1dCgpIGJhY2tlbmRVUkw6IHN0cmluZyA9ICcnO1xyXG4gIEBPdXRwdXQoKSBlbWFpbHNFbWl0dGVkID0gbmV3IEV2ZW50RW1pdHRlcjxVbmJQZXNzb2FFbWFpbFtdPigpO1xyXG5cclxuICB0aXBvRW1haWwhOiBPYnNlcnZhYmxlPFVuYlBlc3NvYUVtYWlsVGlwb1tdPjtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzbmFja0JhcjogTWF0U25hY2tCYXIsIHByaXZhdGUgc2VydmljZTogVW5CUGVzc29hU2VydmljZSwgcHVibGljIGRpYWxvZzogTWF0RGlhbG9nKSB7XHJcblxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRpcG9FbWFpbCA9IHRoaXMuc2VydmljZS5nZXRUaXBvRW1haWwoKTtcclxuXHJcbiAgICB0aGlzLnNvcnRBbmRBc3NpZ25PcmRlcigpOyAvLyBvcmdhbml6YSBhIGxpc3RhIGRlIGVtYWlscy4gQXMgdmV6ZXMgdGVtIG9yZGVtIGR1cGxpY2FkYSBvdSBmYWx0YW5kby5cclxuICB9XHJcblxyXG4gIC8vIHRlbSBxdWUgZmF6ZXIgaXNzbyBwcSBubyBvbiBpbml0IGV1IGFpbmRhIG5hbyB0ZW5obyBhIGxpc3RhXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgLy8gVmVyaWZpY2Egc2UgYSBwcm9wcmllZGFkZSAnZW1haWxzJyBtdWRvdVxyXG4gICAgaWYgKGNoYW5nZXNbJ2VtYWlscyddICYmIHRoaXMuZW1haWxzKSB7XHJcbiAgICAgIC8vIGNoYW1hZGEgcXVhbmRvIG9zIGRhZG9zIHJlYWxtZW50ZSBjaGVnYXJlbVxyXG4gICAgICB0aGlzLnNvcnRBbmRBc3NpZ25PcmRlcigpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZXhjbHVpcihlbWFpbFBhcmFFeGNsdWlyOiBVbmJQZXNzb2FFbWFpbCkgeyAvLyA8LS0gVElQTyBDT1JSSUdJRE9cclxuXHJcbiAgICBpZiAoZW1haWxQYXJhRXhjbHVpci5jb2RpZ28pIHtcclxuICAgICAgLy8gU2UgdGVtIGPDs2RpZ28sIHJlbW92ZSBwb3IgZWxlXHJcbiAgICAgIHRoaXMuZW1haWxzID0gdGhpcy5lbWFpbHMuZmlsdGVyKGUgPT4gZS5jb2RpZ28gIT09IGVtYWlsUGFyYUV4Y2x1aXIuY29kaWdvKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIC8vIFNlIG7Do28gdGVtIGPDs2RpZ28gKG5vdm8gaXRlbSksIHJlbW92ZSBwZWxhIG9yZGVtXHJcbiAgICAgIHRoaXMuZW1haWxzID0gdGhpcy5lbWFpbHMuZmlsdGVyKGUgPT4gZS5vcmRlbSAhPT0gZW1haWxQYXJhRXhjbHVpci5vcmRlbSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQ2hhbWEgc3VhIGZ1bsOnw6NvIGV4aXN0ZW50ZSBxdWUgcmUtY2FsY3VsYSBhcyBvcmRlbnMgZSBlbWl0ZSBhIGxpc3RhXHJcbiAgICB0aGlzLmF0dWFsaXphck9yZGVtKCk7XHJcbiAgfVxyXG5cclxuICBlZGl0YXIoZW1haWw6IFVuYlBlc3NvYUVtYWlsVGlwbykge1xyXG4gICAgdGhpcy5vcGVuRm9ybURpYWxvZyhlbWFpbCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgYXR1YWxpemFyT3JkZW0oKSB7XHJcbiAgICB0aGlzLmVtYWlscy5mb3JFYWNoKChlbWFpbCwgaWR4KSA9PiB7XHJcbiAgICAgIGVtYWlsLm9yZGVtID0gaWR4ICsgMTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuZW1haWxzRW1pdHRlZC5lbWl0KFsuLi50aGlzLmVtYWlsc10pO1xyXG4gIH1cclxuXHJcbiAgb3BlbkZvcm1EaWFsb2coZW1haWxUb0VkaXQ6IGFueSkge1xyXG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihVbmJQZXNzb2FFbWFpbEZvcm1Db21wb25lbnQsIHtcclxuICAgICAgd2lkdGg6ICc5MDBweCcsXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICBlbWFpbDogZW1haWxUb0VkaXQsIC8vIEUtbWFpbCBhIHNlciBlZGl0YWRvIG91IHZhemlvIHBhcmEgbm92b1xyXG4gICAgICAgIGVtYWlsc0xpc3Q6IHRoaXMuZW1haWxzIC8vIEEgc3VhIGxpc3RhIENPTVBMRVRBIGRlIGUtbWFpbHNcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG5cclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZShyZXN1bHQgPT4ge1xyXG4gICAgICBpZiAoIXJlc3VsdCkge1xyXG4gICAgICAgIHJldHVybjsgLy8gVXN1w6FyaW8gY2xpY291IGVtICdGZWNoYXInIG91ICdDYW5jZWxhcidcclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gJ3Jlc3VsdCcgw6kgbyBvYmpldG8gcmV0b3JuYWRvIHBlbG8gZGlhbG9nIChlZGl0YWRvIG91IG5vdm8pXHJcbiAgICAgIGxldCBpbmRleCA9IC0xO1xyXG5cclxuICAgICAgLy8gMS4gVGVudGEgZW5jb250cmFyIHBlbG8gJ2NvZGlnbycgKHBhcmEgaXRlbnMgcXVlIGrDoSB2aWVyYW0gZG8gYmFuY28pXHJcbiAgICAgIGlmIChyZXN1bHQuY29kaWdvKSB7XHJcbiAgICAgICAgaW5kZXggPSB0aGlzLmVtYWlscy5maW5kSW5kZXgoZSA9PiBlLmNvZGlnbyA9PT0gcmVzdWx0LmNvZGlnbyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIDIuIFNlIG7Do28gYWNob3UgcGVsbyAnY29kaWdvJywgdGVudGEgcGVsYSAnb3JkZW0nLlxyXG4gICAgICBpZiAoaW5kZXggPT09IC0xICYmIHJlc3VsdC5vcmRlbSkge1xyXG4gICAgICAgIGluZGV4ID0gdGhpcy5lbWFpbHMuZmluZEluZGV4KGUgPT4gZS5vcmRlbSA9PT0gcmVzdWx0Lm9yZGVtKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKGluZGV4ID4gLTEpIHtcclxuICAgICAgICAvLyBFTkNPTlRST1UgKHBlbG8gJ2NvZGlnbycgb3UgcGVsYSAnb3JkZW0nKTogQXR1YWxpemEgbyBpdGVtIGV4aXN0ZW50ZVxyXG4gICAgICAgIHRoaXMuZW1haWxzW2luZGV4XSA9IHJlc3VsdDtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICAvLyBOw4NPIEVOQ09OVFJPVTogw4kgdW0gaXRlbSAxMDAlIG5vdm8gKG7Do28gdW1hIGVkacOnw6NvKVxyXG4gICAgICAgIHRoaXMuZW1haWxzLnB1c2gocmVzdWx0KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gUmUtb3JkZW5hIGEgbGlzdGEgcGVsYSAnb3JkZW0nIGUgZW1pdGUgdW1hICpub3ZhIGPDs3BpYSpcclxuICAgICAgdGhpcy5lbWFpbHMuc29ydCgoYSwgYikgPT4gKGEub3JkZW0gPz8gMCkgLSAoYi5vcmRlbSA/PyAwKSk7XHJcbiAgICAgIHRoaXMuZW1haWxzRW1pdHRlZC5lbWl0KFsuLi50aGlzLmVtYWlsc10pOyAvLyA8LS0gRW1pdGUgbm92YSBjw7NwaWFcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbW92ZXJMaW5oYShldmVudDogQ2RrRHJhZ0Ryb3A8YW55W10+KSB7XHJcbiAgICBtb3ZlSXRlbUluQXJyYXkodGhpcy5lbWFpbHMsIGV2ZW50LnByZXZpb3VzSW5kZXgsIGV2ZW50LmN1cnJlbnRJbmRleCk7XHJcbiAgICB0aGlzLmF0dWFsaXphck9yZGVtKClcclxuICB9XHJcblxyXG5wcml2YXRlIHNvcnRBbmRBc3NpZ25PcmRlcigpOiB2b2lkIHtcclxuICAgIC8vIDEuIENyaWUgdW1hIGPDs3BpYSBkYSBsaXN0YVxyXG4gICAgY29uc3QgdGVtcEVtYWlscyA9IFsuLi50aGlzLmVtYWlsc107IC8vIDwtLSBOT01FIENPUlJJR0lET1xyXG5cclxuICAgIC8vIDIuIE1hcGVpZSBhcyBvcmRlbnMgZXhpc3RlbnRlc1xyXG4gICAgY29uc3Qgb3JkZXJNYXAgPSBuZXcgTWFwPG51bWJlciwgVW5iUGVzc29hRW1haWxbXT4oKTtcclxuICAgIGNvbnN0IGVtYWlsc1dpdGhvdXRPcmRlcjogVW5iUGVzc29hRW1haWxbXSA9IFtdO1xyXG5cclxuICAgIHRlbXBFbWFpbHMuZm9yRWFjaChlbWFpbCA9PiB7XHJcbiAgICAgIC8vIENPUlJFw4fDg08gQVFVSTogJ29yZGVtJyBlbSB2ZXogZGUgJ29yZGVtRW1haWwnXHJcbiAgICAgIGlmIChlbWFpbC5vcmRlbSAhPT0gdW5kZWZpbmVkICYmIGVtYWlsLm9yZGVtICE9PSBudWxsKSB7XHJcbiAgICAgICAgaWYgKCFvcmRlck1hcC5oYXMoZW1haWwub3JkZW0pKSB7XHJcbiAgICAgICAgICBvcmRlck1hcC5zZXQoZW1haWwub3JkZW0sIFtdKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgb3JkZXJNYXAuZ2V0KGVtYWlsLm9yZGVtKT8ucHVzaChlbWFpbCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZW1haWxzV2l0aG91dE9yZGVyLnB1c2goZW1haWwpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyAzLiAuLi4gKEZ1bsOnw7VlcyAnZmluYWxVc2VkT3JkZXJzJywgJ25leHRBdmFpbGFibGVPcmRlcicgY29udGludWFtIGlndWFpcykgLi4uXHJcbiAgICBjb25zdCBmaW5hbFVzZWRPcmRlcnMgPSBuZXcgU2V0PG51bWJlcj4oKTtcclxuICAgIGxldCBuZXh0QXZhaWxhYmxlT3JkZXIgPSAwO1xyXG4gICAgY29uc3QgZ2V0TmV4dEF2YWlsYWJsZU9yZGVyID0gKCkgPT4ge1xyXG4gICAgICB3aGlsZSAoZmluYWxVc2VkT3JkZXJzLmhhcyhuZXh0QXZhaWxhYmxlT3JkZXIpKSB7XHJcbiAgICAgICAgbmV4dEF2YWlsYWJsZU9yZGVyKys7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG5leHRBdmFpbGFibGVPcmRlcisrO1xyXG4gICAgfTtcclxuXHJcbiAgICAvLyA0LiBQcm9jZXNzZSBlbWFpbHMgY29tIG9yZGVtIGRlZmluaWRhOlxyXG4gICAgdGhpcy5lbWFpbHMuZm9yRWFjaChlbWFpbCA9PiB7IC8vIDwtLSBOT01FIENPUlJJR0lET1xyXG4gICAgICAvLyBDT1JSRcOHw4NPIEFRVUk6ICdvcmRlbScgZW0gdmV6IGRlICdvcmRlbUVtYWlsJ1xyXG4gICAgICBpZiAoZW1haWwub3JkZW0gIT09IHVuZGVmaW5lZCAmJiBlbWFpbC5vcmRlbSAhPT0gbnVsbCkge1xyXG4gICAgICAgIGlmICghZmluYWxVc2VkT3JkZXJzLmhhcyhlbWFpbC5vcmRlbSkpIHtcclxuICAgICAgICAgIGZpbmFsVXNlZE9yZGVycy5hZGQoZW1haWwub3JkZW0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAvLyBEdXBsaWNhdGEsIGF0cmlidWEgdW1hIG5vdmFcclxuICAgICAgICAgIGVtYWlsLm9yZGVtID0gZ2V0TmV4dEF2YWlsYWJsZU9yZGVyKCk7XHJcbiAgICAgICAgICBmaW5hbFVzZWRPcmRlcnMuYWRkKGVtYWlsLm9yZGVtKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIC8vIDUuIEF0cmlidWEgb3JkZW5zIHBhcmEgZW1haWxzIHF1ZSBuw6NvIHRpbmhhbSBvcmRlbVxyXG4gICAgZW1haWxzV2l0aG91dE9yZGVyLmZvckVhY2goZW1haWwgPT4geyAvLyA8LS0gTk9NRSBDT1JSSUdJRE9cclxuICAgICAgZW1haWwub3JkZW0gPSBnZXROZXh0QXZhaWxhYmxlT3JkZXIoKTsgXHJcbiAgICAgIGZpbmFsVXNlZE9yZGVycy5hZGQoZW1haWwub3JkZW0pOyBcclxuICAgIH0pO1xyXG5cclxuICAgIC8vIDYuIEZpbmFsbWVudGUsIG9yZGVuZSBhIGxpc3RhXHJcbiAgICB0aGlzLmVtYWlscy5zb3J0KChhLCBiKSA9PiAoYS5vcmRlbSA/PyAwKSAtIChiLm9yZGVtID8/IDApKTsgLy8gPC0tICdvcmRlbSdcclxuICAgIH1cclxuICB9IiwiPGRpdiBjbGFzcz1cIm1lcy1jb250YWluZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItY29udGFpbmVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1lcy1oZWFkZXJcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXR1bG9cIj5cclxuICAgICAgICAgICAgICAgIHt7IGVtYWlscz8ubGVuZ3RoID09PSAxID8gJ0VtYWlsIENhZGFzdHJhZG8nIDogJ0UtbWFpbHMgQ2FkYXN0cmFkb3MnIH19XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXR1bG9cIj4oe3sgZW1haWxzPy5sZW5ndGggfHwgMCB9fSk8L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIG1hdFRvb2x0aXA9XCJOb3ZvIEVtYWlsXCIgbWF0LWZsYXQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJvcGVuRm9ybURpYWxvZyhudWxsKVwiPlxyXG4gICAgICAgICAgICBDYWRhc3RyYXIgTm92byBFbWFpbFxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPCEtLSBFeGliZSBhIHRhYmVsYSBkZSBkZXNwZXNhcyBzb21lbnRlIHNlIGhvdXZlciBkZXNwZXNhcyAtLT5cclxuICAgIDx0YWJsZSBjbGFzcz1cIm15LXRhYmxlXCIgKm5nSWY9XCJlbWFpbHMgJiYgZW1haWxzLmxlbmd0aCA+IDBcIiBjZGtEcm9wTGlzdCAoY2RrRHJvcExpc3REcm9wcGVkKT1cIm1vdmVyTGluaGEoJGV2ZW50KVwiPlxyXG5cclxuICAgICAgICA8dHIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlM2UzY2M7XCI+XHJcbiAgICAgICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA1JTsgdGV4dC1hbGlnbjogY2VudGVyO1wiPk9yZGVtPC90aD5cclxuICAgICAgICAgICAgPHRoPkUtbWFpbDwvdGg+XHJcbiAgICAgICAgICAgIDx0aD5UaXBvPC90aD5cclxuICAgICAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDElOyB0ZXh0LWFsaWduOiBjZW50ZXI7XCI+QcOnw7VlczwvdGg+XHJcbiAgICAgICAgPC90cj5cclxuXHJcbiAgICAgICAgPHRyICpuZ0Zvcj1cImxldCB2YWxvciBvZiBlbWFpbHM7IGxldCBpID0gaW5kZXhcIiBjbGFzcz1cIm15LXRyXCIgY2RrRHJhZz5cclxuXHJcbiAgICAgICAgICAgIDx0ZCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcmFnLWNlbGxcIiBjZGtEcmFnSGFuZGxlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5kcmFnX2luZGljYXRvcjwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgaSArIDEgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC90ZD5cclxuXHJcbiAgICAgICAgICAgIDx0ZD57eyB2YWxvci5lbWFpbCB9fTwvdGQ+XHJcblxyXG4gICAgICAgICAgICA8dGQ+e3sgdmFsb3IudGlwbz8udG9VcHBlckNhc2UoKSB9fTwvdGQ+XHJcblxyXG4gICAgICAgICAgICA8dGQ+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9ucy1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBtYXQtaWNvbi1idXR0b24gYXJpYS1sYWJlbD1cIlNhbHZhclwiIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJlZGl0YXIodmFsb3IpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5lZGl0PC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBtYXQtaWNvbi1idXR0b24gYXJpYS1sYWJlbD1cIkRlbGV0YXJcIiBjb2xvcj1cIndhcm5cIiAoY2xpY2spPVwiZXhjbHVpcih2YWxvcilcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPmRlbGV0ZTwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICA8L3RyPlxyXG4gICAgPC90YWJsZT5cclxuPC9kaXY+Il19
|