keevo-components 2.0.258 → 2.0.260

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,205 @@
1
+ import { Component, Input, Output, EventEmitter, ViewChild, input, computed } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { ButtonModule } from 'primeng/button';
4
+ import { KvProgressBarModule } from '../kv-progress-bar/kv-progress-bar.module';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../api/services/notification.service";
7
+ import * as i2 from "@angular/common";
8
+ import * as i3 from "primeng/button";
9
+ export class KvFileUploadNewComponent {
10
+ // No topo da classe
11
+ constructor(notificationService) {
12
+ this.notificationService = notificationService;
13
+ this.widthComponent = '400px';
14
+ this.heightComponent = 'auto';
15
+ this.validFileTypes = ['image/', 'application/pdf', 'text/html', 'text/xml', 'application/xml', 'text/plain'];
16
+ this.tamanhoMaximoPermitido = '';
17
+ this.includeOfficeTypes = false; // Propriedade para controlar os tipos de Office
18
+ this.maxSizeFile = input(10);
19
+ this.fileEmit = new EventEmitter();
20
+ this.removeFileEmit = new EventEmitter();
21
+ // returnMbSize = computed(() => (bytes: any) => {
22
+ // if (bytes === null || bytes === undefined) {
23
+ // return '0 MB';
24
+ // }
25
+ // const mbSize = bytes / (1024 * 1024);
26
+ // return this.formatBytes(mbSize, 2);
27
+ // });
28
+ this.progressValue = computed(() => (bytes) => {
29
+ if (bytes === null || bytes === undefined) {
30
+ return 0;
31
+ }
32
+ const mbSize = bytes / (1024 * 1024);
33
+ let progressValue = (Number(mbSize) / this.maxSizeFile()) * 100;
34
+ // Limita o valor do progresso entre 0 e 100
35
+ return Math.min(Math.max(progressValue, 0), 100);
36
+ });
37
+ this.returnProgressLabel = computed(() => (bytes) => {
38
+ if (bytes === null || bytes === undefined) {
39
+ return '0 MB';
40
+ }
41
+ const mbSize = bytes / (1024 * 1024);
42
+ // let progressValue = (Number(mbSize) / this.maxSizeFile()) * 100;
43
+ // this.progressValue.set(progressValue);
44
+ // this.progressValue.set((mbSize / this.maxSizeFile())*100);
45
+ return `${mbSize.toFixed(2)}/${this.maxSizeFile()} MB`;
46
+ });
47
+ }
48
+ // Método para disparar o clique sem erro de propriedade
49
+ triggerClick() {
50
+ if (!this.formGroup.get(this.formControlName)?.value) {
51
+ this.fileInput.nativeElement.click();
52
+ }
53
+ }
54
+ onFileSelected(event) {
55
+ let validTypes = [...this.validFileTypes];
56
+ if (this.includeOfficeTypes) {
57
+ validTypes.push('application/msword', // .doc
58
+ 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', // .docx
59
+ 'application/vnd.ms-powerpoint', // .ppt
60
+ 'application/vnd.openxmlformats-officedocument.presentationml.presentation' // .pptx
61
+ );
62
+ }
63
+ if (event.target.files.length == 0)
64
+ return;
65
+ const isValidFileType = validTypes.some(type => event.target.files[0].type.startsWith(type) ||
66
+ (type === 'application/xml' && event.target.files[0].type === 'application/xml') ||
67
+ (type === 'text/xml' && event.target.files[0].type === 'text/xml'));
68
+ if (!isValidFileType) {
69
+ this.notificationService.toastError('Tipo de arquivo inválido');
70
+ this.formGroup.controls[this.formControlName].setValue(null);
71
+ event.target.value = '';
72
+ return;
73
+ }
74
+ this.formGroup.controls[this.formControlName].setValue(event.target.files[0]);
75
+ this.fileEmit.emit(event.target.files[0]);
76
+ }
77
+ deleteFile() {
78
+ this.formGroup.controls[this.formControlName].setValue(null);
79
+ this.fileInput.nativeElement.value = '';
80
+ this.removeFileEmit.emit();
81
+ }
82
+ formatBytes(bytes, decimals = 2) {
83
+ if (!bytes) {
84
+ return "0 Bytes";
85
+ }
86
+ const k = 1024;
87
+ const dm = decimals <= 0 ? 0 : decimals;
88
+ const sizes = ["Bytes", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"];
89
+ const i = Math.floor(Math.log(bytes) / Math.log(k));
90
+ return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + " " + sizes[i];
91
+ }
92
+ addDragOverClass(event) {
93
+ const container = event.target;
94
+ container.classList.add('dragover');
95
+ }
96
+ removeDragOverClass(event) {
97
+ const container = event.target;
98
+ container.classList.remove('dragover');
99
+ }
100
+ handleFile(file) {
101
+ if (this.includeOfficeTypes) {
102
+ let validTypes = [...this.validFileTypes];
103
+ validTypes.push('application/msword', // .doc
104
+ 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', // .docx
105
+ 'application/vnd.ms-powerpoint', // .ppt
106
+ 'application/vnd.openxmlformats-officedocument.presentationml.presentation' // .pptx
107
+ );
108
+ }
109
+ const isValidFileType = this.validFileTypes.some(type => file.type.startsWith(type) ||
110
+ file.type === 'application/xml' ||
111
+ file.type === 'text/xml');
112
+ if (!isValidFileType) {
113
+ this.notificationService.toastError('Tipo de arquivo inválido');
114
+ this.formGroup.controls[this.formControlName].setValue(null);
115
+ return;
116
+ }
117
+ this.formGroup.controls[this.formControlName].setValue(file);
118
+ const reader = new FileReader();
119
+ if (file.type.startsWith('image/')) {
120
+ reader.readAsDataURL(file);
121
+ }
122
+ else if (file.type === 'application/xml' || file.type === 'text/xml') {
123
+ reader.readAsText(file);
124
+ }
125
+ else {
126
+ reader.readAsArrayBuffer(file);
127
+ }
128
+ this.fileEmit.emit(file);
129
+ }
130
+ onDragOver(event) {
131
+ event.preventDefault();
132
+ event.stopPropagation();
133
+ this.addDragOverClass(event);
134
+ }
135
+ onDragLeave(event) {
136
+ event.preventDefault();
137
+ event.stopPropagation();
138
+ this.removeDragOverClass(event);
139
+ }
140
+ onDrop(event) {
141
+ event.preventDefault();
142
+ event.stopPropagation();
143
+ this.removeDragOverClass(event);
144
+ if (event.dataTransfer && event.dataTransfer.files.length > 0) {
145
+ this.handleFile(event.dataTransfer.files[0]);
146
+ }
147
+ }
148
+ setAccept() {
149
+ let types = '';
150
+ this.validFileTypes.forEach(type => {
151
+ if (type.includes('image'))
152
+ types += '.jpg, .png, .bmp, ';
153
+ if (type.includes('html'))
154
+ types += '.html, ';
155
+ if (type.includes('pdf'))
156
+ types += '.pdf, ';
157
+ if (type.includes('xml'))
158
+ types += '.xml, ';
159
+ if (type.includes('plain'))
160
+ types += '.txt, ';
161
+ });
162
+ // Adiciona tipos de arquivos do Office se includeOfficeTypes for true
163
+ if (this.includeOfficeTypes) {
164
+ types += '.doc, .docx, .ppt, .pptx, ';
165
+ }
166
+ return types.slice(0, -2); // Remove a última vírgula e espaço
167
+ }
168
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvFileUploadNewComponent, deps: [{ token: i1.NotificationService }], target: i0.ɵɵFactoryTarget.Component }); }
169
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.8", type: KvFileUploadNewComponent, isStandalone: true, selector: "kv-file-upload-new", inputs: { formGroup: { classPropertyName: "formGroup", publicName: "formGroup", isSignal: false, isRequired: false, transformFunction: null }, formControlName: { classPropertyName: "formControlName", publicName: "formControlName", isSignal: false, isRequired: false, transformFunction: null }, widthComponent: { classPropertyName: "widthComponent", publicName: "widthComponent", isSignal: false, isRequired: false, transformFunction: null }, heightComponent: { classPropertyName: "heightComponent", publicName: "heightComponent", isSignal: false, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: false, isRequired: false, transformFunction: null }, validFileTypes: { classPropertyName: "validFileTypes", publicName: "validFileTypes", isSignal: false, isRequired: false, transformFunction: null }, tamanhoMaximoPermitido: { classPropertyName: "tamanhoMaximoPermitido", publicName: "tamanhoMaximoPermitido", isSignal: false, isRequired: false, transformFunction: null }, includeOfficeTypes: { classPropertyName: "includeOfficeTypes", publicName: "includeOfficeTypes", isSignal: false, isRequired: false, transformFunction: null }, maxSizeFile: { classPropertyName: "maxSizeFile", publicName: "maxSizeFile", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { fileEmit: "fileEmit", removeFileEmit: "removeFileEmit" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }, { propertyName: "inputUpload", first: true, predicate: ["inputUpload"], descendants: true }], ngImport: i0, template: "<div\r\n *ngIf=\"formGroup\"\r\n class=\"file-upload-container w-full\"\r\n [ngClass]=\"{\r\n 'invalid-border':\r\n formGroup.get(formControlName)?.invalid &&\r\n formGroup.get(formControlName)?.touched,\r\n 'has-file': formGroup.get(formControlName)?.value,\r\n }\"\r\n (dragover)=\"onDragOver($event)\"\r\n (dragleave)=\"onDragLeave($event)\"\r\n (drop)=\"onDrop($event)\"\r\n (click)=\"triggerClick()\"\r\n [style.width]=\"widthComponent\"\r\n>\r\n <input\r\n type=\"file\"\r\n #fileInput\r\n (change)=\"onFileSelected($event)\"\r\n [accept]=\"setAccept()\"\r\n hidden\r\n />\r\n\r\n <div *ngIf=\"!formGroup.get(formControlName)?.value\" class=\"dropzone-content\">\r\n <div class=\"cloud-icon-wrapper\">\r\n <span class=\"material-symbols-outlined\">cloud_upload</span>\r\n </div>\r\n <div class=\"text-center\">\r\n <p class=\"main-text\">\r\n <span class=\"blue-text\">Clique para selecionar</span> ou arraste aqui\r\n </p>\r\n <p class=\"sub-text\">PDF, Imagens (max. {{ maxSizeFile() }}MB)</p>\r\n </div>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"formGroup.get(formControlName)?.value as file\"\r\n class=\"selected-file-card\"\r\n >\r\n <div class=\"card-header\">\r\n <div class=\"file-info\">\r\n <span class=\"material-symbols-outlined file-icon\">description</span>\r\n <span class=\"file-name\" [title]=\"file.name\">{{ file.name }}</span>\r\n </div>\r\n <button\r\n pButton\r\n icon=\"pi pi-times\"\r\n class=\"p-button-rounded p-button-text p-button-danger close-btn\"\r\n (click)=\"deleteFile(); $event.stopPropagation()\"\r\n ></button>\r\n </div>\r\n\r\n <div class=\"card-footer\">\r\n <div class=\"progress-container\">\r\n <div\r\n class=\"progress-bar\"\r\n [style.width.%]=\"progressValue()(file.size)\"\r\n [class.limit-exceeded]=\"progressValue()(file.size) >= 100\"\r\n ></div>\r\n </div>\r\n <div class=\"flex justify-content-between align-items-center mt-1\">\r\n <small class=\"error-text\" *ngIf=\"progressValue()(file.size) >= 100\"\r\n >Limite excedido</small\r\n >\r\n <span class=\"file-size-label ml-auto\">{{\r\n formatBytes(file.size)\r\n }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<p\r\n *ngIf=\"\r\n formGroup.get(formControlName)?.invalid &&\r\n formGroup.get(formControlName)?.touched\r\n \"\r\n class=\"error-message\"\r\n>\r\n Campo obrigat\u00F3rio\r\n</p>\r\n", styles: [".file-upload-container{border:2px dashed #cbd5e1;border-radius:1.25rem;background-color:#f8fafc;min-height:160px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease-in-out;position:relative}.file-upload-container:hover,.file-upload-container.dragover{border-color:#3b82f6;background-color:#eff6ff}.file-upload-container.has-file{cursor:default;background-color:#f1f5f9;padding:0;border-style:solid}.selected-file-card{background:#fff;border-radius:1.25rem;padding:1.5rem;width:100%;height:100%;min-height:160px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;display:flex;flex-direction:column;justify-content:center;gap:1rem;animation:fadeIn .3s ease-out;box-sizing:border-box}.selected-file-card .card-header{display:flex;justify-content:space-between;align-items:center}.selected-file-card .card-header .file-info{display:flex;align-items:center;gap:.75rem;overflow:hidden}.selected-file-card .card-header .file-info .file-icon{color:#64748b;font-size:24px}.selected-file-card .card-header .file-info .file-name{font-size:1rem;font-weight:500;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selected-file-card .card-header .close-btn{width:32px!important;height:32px!important;padding:0!important}.selected-file-card .card-header .close-btn ::ng-deep .p-button-icon{font-size:1rem}.selected-file-card .card-footer .progress-container{height:8px;background:#e2e8f0;border-radius:10px;overflow:hidden}.selected-file-card .card-footer .progress-container .progress-bar{height:100%;background:#3b82f6;transition:width .4s cubic-bezier(.4,0,.2,1)}.selected-file-card .card-footer .progress-container .progress-bar.limit-exceeded{background:#ef4444}.selected-file-card .card-footer .file-size-label{font-size:.85rem;color:#94a3b8;font-weight:500}.selected-file-card .card-footer .error-text{color:#ef4444;font-size:.75rem;font-weight:600}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}::ng-deep .file-upload-container .p-button.p-button-text{background-color:transparent!important;border:none}::ng-deep .file-upload-container .p-button.p-button-text:hover{background-color:#fee2e2!important}.cloud-icon-wrapper{background-color:#e0f2fe;color:#3b82f6;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto .75rem}.cloud-icon-wrapper span{font-size:24px}.main-text{font-size:.9rem;color:#334155}.main-text .blue-text{color:#3b82f6;font-weight:600}.sub-text{color:#64748b;font-size:.8rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: KvProgressBarModule }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }] }); }
170
+ }
171
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvFileUploadNewComponent, decorators: [{
172
+ type: Component,
173
+ args: [{ selector: 'kv-file-upload-new', standalone: true, imports: [
174
+ CommonModule,
175
+ KvProgressBarModule,
176
+ ButtonModule
177
+ ], template: "<div\r\n *ngIf=\"formGroup\"\r\n class=\"file-upload-container w-full\"\r\n [ngClass]=\"{\r\n 'invalid-border':\r\n formGroup.get(formControlName)?.invalid &&\r\n formGroup.get(formControlName)?.touched,\r\n 'has-file': formGroup.get(formControlName)?.value,\r\n }\"\r\n (dragover)=\"onDragOver($event)\"\r\n (dragleave)=\"onDragLeave($event)\"\r\n (drop)=\"onDrop($event)\"\r\n (click)=\"triggerClick()\"\r\n [style.width]=\"widthComponent\"\r\n>\r\n <input\r\n type=\"file\"\r\n #fileInput\r\n (change)=\"onFileSelected($event)\"\r\n [accept]=\"setAccept()\"\r\n hidden\r\n />\r\n\r\n <div *ngIf=\"!formGroup.get(formControlName)?.value\" class=\"dropzone-content\">\r\n <div class=\"cloud-icon-wrapper\">\r\n <span class=\"material-symbols-outlined\">cloud_upload</span>\r\n </div>\r\n <div class=\"text-center\">\r\n <p class=\"main-text\">\r\n <span class=\"blue-text\">Clique para selecionar</span> ou arraste aqui\r\n </p>\r\n <p class=\"sub-text\">PDF, Imagens (max. {{ maxSizeFile() }}MB)</p>\r\n </div>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"formGroup.get(formControlName)?.value as file\"\r\n class=\"selected-file-card\"\r\n >\r\n <div class=\"card-header\">\r\n <div class=\"file-info\">\r\n <span class=\"material-symbols-outlined file-icon\">description</span>\r\n <span class=\"file-name\" [title]=\"file.name\">{{ file.name }}</span>\r\n </div>\r\n <button\r\n pButton\r\n icon=\"pi pi-times\"\r\n class=\"p-button-rounded p-button-text p-button-danger close-btn\"\r\n (click)=\"deleteFile(); $event.stopPropagation()\"\r\n ></button>\r\n </div>\r\n\r\n <div class=\"card-footer\">\r\n <div class=\"progress-container\">\r\n <div\r\n class=\"progress-bar\"\r\n [style.width.%]=\"progressValue()(file.size)\"\r\n [class.limit-exceeded]=\"progressValue()(file.size) >= 100\"\r\n ></div>\r\n </div>\r\n <div class=\"flex justify-content-between align-items-center mt-1\">\r\n <small class=\"error-text\" *ngIf=\"progressValue()(file.size) >= 100\"\r\n >Limite excedido</small\r\n >\r\n <span class=\"file-size-label ml-auto\">{{\r\n formatBytes(file.size)\r\n }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<p\r\n *ngIf=\"\r\n formGroup.get(formControlName)?.invalid &&\r\n formGroup.get(formControlName)?.touched\r\n \"\r\n class=\"error-message\"\r\n>\r\n Campo obrigat\u00F3rio\r\n</p>\r\n", styles: [".file-upload-container{border:2px dashed #cbd5e1;border-radius:1.25rem;background-color:#f8fafc;min-height:160px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease-in-out;position:relative}.file-upload-container:hover,.file-upload-container.dragover{border-color:#3b82f6;background-color:#eff6ff}.file-upload-container.has-file{cursor:default;background-color:#f1f5f9;padding:0;border-style:solid}.selected-file-card{background:#fff;border-radius:1.25rem;padding:1.5rem;width:100%;height:100%;min-height:160px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;display:flex;flex-direction:column;justify-content:center;gap:1rem;animation:fadeIn .3s ease-out;box-sizing:border-box}.selected-file-card .card-header{display:flex;justify-content:space-between;align-items:center}.selected-file-card .card-header .file-info{display:flex;align-items:center;gap:.75rem;overflow:hidden}.selected-file-card .card-header .file-info .file-icon{color:#64748b;font-size:24px}.selected-file-card .card-header .file-info .file-name{font-size:1rem;font-weight:500;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selected-file-card .card-header .close-btn{width:32px!important;height:32px!important;padding:0!important}.selected-file-card .card-header .close-btn ::ng-deep .p-button-icon{font-size:1rem}.selected-file-card .card-footer .progress-container{height:8px;background:#e2e8f0;border-radius:10px;overflow:hidden}.selected-file-card .card-footer .progress-container .progress-bar{height:100%;background:#3b82f6;transition:width .4s cubic-bezier(.4,0,.2,1)}.selected-file-card .card-footer .progress-container .progress-bar.limit-exceeded{background:#ef4444}.selected-file-card .card-footer .file-size-label{font-size:.85rem;color:#94a3b8;font-weight:500}.selected-file-card .card-footer .error-text{color:#ef4444;font-size:.75rem;font-weight:600}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}::ng-deep .file-upload-container .p-button.p-button-text{background-color:transparent!important;border:none}::ng-deep .file-upload-container .p-button.p-button-text:hover{background-color:#fee2e2!important}.cloud-icon-wrapper{background-color:#e0f2fe;color:#3b82f6;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto .75rem}.cloud-icon-wrapper span{font-size:24px}.main-text{font-size:.9rem;color:#334155}.main-text .blue-text{color:#3b82f6;font-weight:600}.sub-text{color:#64748b;font-size:.8rem}\n"] }]
178
+ }], ctorParameters: () => [{ type: i1.NotificationService }], propDecorators: { formGroup: [{
179
+ type: Input
180
+ }], formControlName: [{
181
+ type: Input
182
+ }], widthComponent: [{
183
+ type: Input
184
+ }], heightComponent: [{
185
+ type: Input
186
+ }], description: [{
187
+ type: Input
188
+ }], validFileTypes: [{
189
+ type: Input
190
+ }], tamanhoMaximoPermitido: [{
191
+ type: Input
192
+ }], includeOfficeTypes: [{
193
+ type: Input
194
+ }], fileEmit: [{
195
+ type: Output
196
+ }], removeFileEmit: [{
197
+ type: Output
198
+ }], fileInput: [{
199
+ type: ViewChild,
200
+ args: ['fileInput']
201
+ }], inputUpload: [{
202
+ type: ViewChild,
203
+ args: ['inputUpload']
204
+ }] } });
205
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtZmlsZS11cGxvYWQtbmV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWZpbGUtdXBsb2FkLW5ldy9rdi1maWxlLXVwbG9hZC1uZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtZmlsZS11cGxvYWQtbmV3L2t2LWZpbGUtdXBsb2FkLW5ldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQUUsUUFBUSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBR3ZILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7Ozs7O0FBYWhGLE1BQU0sT0FBTyx3QkFBd0I7SUFpQm5DLG9CQUFvQjtJQUVwQixZQUFvQixtQkFBd0M7UUFBeEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQWhCbkQsbUJBQWMsR0FBVyxPQUFPLENBQUM7UUFDakMsb0JBQWUsR0FBVyxNQUFNLENBQUM7UUFFakMsbUJBQWMsR0FBYSxDQUFDLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQ25ILDJCQUFzQixHQUFXLEVBQUUsQ0FBQztRQUNwQyx1QkFBa0IsR0FBWSxLQUFLLENBQUMsQ0FBQyxnREFBZ0Q7UUFFOUYsZ0JBQVcsR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUE7UUFFckIsYUFBUSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2pELG1CQUFjLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFzRGpFLGtEQUFrRDtRQUNsRCxpREFBaUQ7UUFDakQscUJBQXFCO1FBQ3JCLE1BQU07UUFFTiwwQ0FBMEM7UUFFMUMsd0NBQXdDO1FBQ3hDLE1BQU07UUFFTixrQkFBYSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO1lBQzVDLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQzFDLE9BQU8sQ0FBQyxDQUFDO1lBQ1gsQ0FBQztZQUVELE1BQU0sTUFBTSxHQUFHLEtBQUssR0FBRyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQztZQUNyQyxJQUFJLGFBQWEsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUM7WUFFaEUsNENBQTRDO1lBQzVDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNuRCxDQUFDLENBQUMsQ0FBQztRQUVILHdCQUFtQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO1lBQ2xELElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQzFDLE9BQU8sTUFBTSxDQUFDO1lBQ2hCLENBQUM7WUFFRCxNQUFNLE1BQU0sR0FBRyxLQUFLLEdBQUcsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDckMsbUVBQW1FO1lBQ25FLHlDQUF5QztZQUN6Qyw2REFBNkQ7WUFDN0QsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUM7UUFDekQsQ0FBQyxDQUFDLENBQUE7SUFoRjhELENBQUM7SUFFakUsd0RBQXdEO0lBQ3hELFlBQVk7UUFDVixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQ3JELElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3ZDLENBQUM7SUFDSCxDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxVQUFVLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUUxQyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBRTVCLFVBQVUsQ0FBQyxJQUFJLENBQ2Isb0JBQW9CLEVBQUUsT0FBTztZQUM3Qix5RUFBeUUsRUFBRSxRQUFRO1lBQ25GLCtCQUErQixFQUFFLE9BQU87WUFDeEMsMkVBQTJFLENBQUMsUUFBUTthQUNyRixDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUM7WUFBRSxPQUFPO1FBRTNDLE1BQU0sZUFBZSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztZQUN6RixDQUFDLElBQUksS0FBSyxpQkFBaUIsSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssaUJBQWlCLENBQUM7WUFDaEYsQ0FBQyxJQUFJLEtBQUssVUFBVSxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxVQUFVLENBQUMsQ0FDbkUsQ0FBQztRQUVGLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLDBCQUEwQixDQUFDLENBQUM7WUFDaEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUU3RCxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7WUFFeEIsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDOUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUN4QyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFvQ0QsV0FBVyxDQUFDLEtBQVUsRUFBRSxRQUFRLEdBQUcsQ0FBQztRQUNsQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDWCxPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO1FBQ0QsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ2YsTUFBTSxFQUFFLEdBQUcsUUFBUSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7UUFDeEMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEQsT0FBTyxVQUFVLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxLQUFnQjtRQUMvQixNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsTUFBcUIsQ0FBQztRQUM5QyxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsbUJBQW1CLENBQUMsS0FBZ0I7UUFDbEMsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLE1BQXFCLENBQUM7UUFDOUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFVO1FBRW5CLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDNUIsSUFBSSxVQUFVLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUUxQyxVQUFVLENBQUMsSUFBSSxDQUNiLG9CQUFvQixFQUFFLE9BQU87WUFDN0IseUVBQXlFLEVBQUUsUUFBUTtZQUNuRiwrQkFBK0IsRUFBRSxPQUFPO1lBQ3hDLDJFQUEyRSxDQUFDLFFBQVE7YUFDckYsQ0FBQztRQUNKLENBQUM7UUFFRCxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUN0RCxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUM7WUFDMUIsSUFBSSxDQUFDLElBQUksS0FBSyxpQkFBaUI7WUFDL0IsSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVLENBQ3pCLENBQUM7UUFFRixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1lBQ2hFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0QsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTdELE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFFaEMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQ25DLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxpQkFBaUIsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQ3ZFLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUIsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBZ0I7UUFDekIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFnQjtRQUMxQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWdCO1FBQ3JCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWhDLElBQUksS0FBSyxDQUFDLFlBQVksSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDOUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9DLENBQUM7SUFDSCxDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksS0FBSyxHQUFHLEVBQUUsQ0FBQTtRQUVkLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7Z0JBQUUsS0FBSyxJQUFJLG9CQUFvQixDQUFDO1lBQzFELElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7Z0JBQUUsS0FBSyxJQUFJLFNBQVMsQ0FBQztZQUM5QyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO2dCQUFFLEtBQUssSUFBSSxRQUFRLENBQUM7WUFDNUMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztnQkFBRSxLQUFLLElBQUksUUFBUSxDQUFDO1lBQzVDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7Z0JBQUUsS0FBSyxJQUFJLFFBQVEsQ0FBQztRQUNoRCxDQUFDLENBQUMsQ0FBQztRQUVILHNFQUFzRTtRQUN0RSxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQzVCLEtBQUssSUFBSSw0QkFBNEIsQ0FBQztRQUN4QyxDQUFDO1FBRUQsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsbUNBQW1DO0lBQ2hFLENBQUM7OEdBek1VLHdCQUF3QjtrR0FBeEIsd0JBQXdCLGdxRENsQnJDLHlpRkFpRkEsbWtGRHRFSSxZQUFZLGdPQUNaLG1CQUFtQiw4QkFDbkIsWUFBWTs7MkZBS0gsd0JBQXdCO2tCQVhwQyxTQUFTOytCQUNFLG9CQUFvQixjQUNsQixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLFlBQVk7cUJBQ2I7d0ZBS1EsU0FBUztzQkFBakIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csc0JBQXNCO3NCQUE5QixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFJSSxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU07Z0JBRWlCLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVztnQkFDSSxXQUFXO3NCQUFwQyxTQUFTO3VCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgVmlld0NoaWxkLCBFbGVtZW50UmVmLCBpbnB1dCwgY29tcHV0ZWQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9hcGkvc2VydmljZXMvbm90aWZpY2F0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBCdXR0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2J1dHRvbic7XHJcbmltcG9ydCB7IEt2UHJvZ3Jlc3NCYXJNb2R1bGUgfSBmcm9tICcuLi9rdi1wcm9ncmVzcy1iYXIva3YtcHJvZ3Jlc3MtYmFyLm1vZHVsZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2t2LWZpbGUtdXBsb2FkLW5ldycsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBLdlByb2dyZXNzQmFyTW9kdWxlLCBcclxuICAgIEJ1dHRvbk1vZHVsZVxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2t2LWZpbGUtdXBsb2FkLW5ldy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL2t2LWZpbGUtdXBsb2FkLW5ldy5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIEt2RmlsZVVwbG9hZE5ld0NvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgZm9ybUdyb3VwITogRm9ybUdyb3VwO1xyXG4gIEBJbnB1dCgpIGZvcm1Db250cm9sTmFtZSE6IHN0cmluZztcclxuICBASW5wdXQoKSB3aWR0aENvbXBvbmVudDogc3RyaW5nID0gJzQwMHB4JztcclxuICBASW5wdXQoKSBoZWlnaHRDb21wb25lbnQ6IHN0cmluZyA9ICdhdXRvJztcclxuICBASW5wdXQoKSBkZXNjcmlwdGlvbiE6IHN0cmluZztcclxuICBASW5wdXQoKSB2YWxpZEZpbGVUeXBlczogc3RyaW5nW10gPSBbJ2ltYWdlLycsICdhcHBsaWNhdGlvbi9wZGYnLCAndGV4dC9odG1sJywgJ3RleHQveG1sJywgJ2FwcGxpY2F0aW9uL3htbCcsICd0ZXh0L3BsYWluJ107XHJcbiAgQElucHV0KCkgdGFtYW5ob01heGltb1Blcm1pdGlkbzogc3RyaW5nID0gJyc7XHJcbiAgQElucHV0KCkgaW5jbHVkZU9mZmljZVR5cGVzOiBib29sZWFuID0gZmFsc2U7IC8vIFByb3ByaWVkYWRlIHBhcmEgY29udHJvbGFyIG9zIHRpcG9zIGRlIE9mZmljZVxyXG5cclxuICBtYXhTaXplRmlsZSA9IGlucHV0PG51bWJlcj4oMTApXHJcblxyXG4gIEBPdXRwdXQoKSBmaWxlRW1pdDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIHJlbW92ZUZpbGVFbWl0OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnZmlsZUlucHV0JykgZmlsZUlucHV0ITogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcclxuICBAVmlld0NoaWxkKCdpbnB1dFVwbG9hZCcpIGlucHV0VXBsb2FkITogRWxlbWVudFJlZjtcclxuICAvLyBObyB0b3BvIGRhIGNsYXNzZVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG5vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2UpIHsgfVxyXG5cclxuICAvLyBNw6l0b2RvIHBhcmEgZGlzcGFyYXIgbyBjbGlxdWUgc2VtIGVycm8gZGUgcHJvcHJpZWRhZGVcclxuICB0cmlnZ2VyQ2xpY2soKSB7XHJcbiAgICBpZiAoIXRoaXMuZm9ybUdyb3VwLmdldCh0aGlzLmZvcm1Db250cm9sTmFtZSk/LnZhbHVlKSB7XHJcbiAgICAgIHRoaXMuZmlsZUlucHV0Lm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uRmlsZVNlbGVjdGVkKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIGxldCB2YWxpZFR5cGVzID0gWy4uLnRoaXMudmFsaWRGaWxlVHlwZXNdO1xyXG5cclxuICAgIGlmICh0aGlzLmluY2x1ZGVPZmZpY2VUeXBlcykge1xyXG5cclxuICAgICAgdmFsaWRUeXBlcy5wdXNoKFxyXG4gICAgICAgICdhcHBsaWNhdGlvbi9tc3dvcmQnLCAvLyAuZG9jXHJcbiAgICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC53b3JkcHJvY2Vzc2luZ21sLmRvY3VtZW50JywgLy8gLmRvY3hcclxuICAgICAgICAnYXBwbGljYXRpb24vdm5kLm1zLXBvd2VycG9pbnQnLCAvLyAucHB0XHJcbiAgICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5wcmVzZW50YXRpb25tbC5wcmVzZW50YXRpb24nIC8vIC5wcHR4XHJcbiAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGV2ZW50LnRhcmdldC5maWxlcy5sZW5ndGggPT0gMCkgcmV0dXJuO1xyXG5cclxuICAgIGNvbnN0IGlzVmFsaWRGaWxlVHlwZSA9IHZhbGlkVHlwZXMuc29tZSh0eXBlID0+IGV2ZW50LnRhcmdldC5maWxlc1swXS50eXBlLnN0YXJ0c1dpdGgodHlwZSkgfHxcclxuICAgICAgKHR5cGUgPT09ICdhcHBsaWNhdGlvbi94bWwnICYmIGV2ZW50LnRhcmdldC5maWxlc1swXS50eXBlID09PSAnYXBwbGljYXRpb24veG1sJykgfHxcclxuICAgICAgKHR5cGUgPT09ICd0ZXh0L3htbCcgJiYgZXZlbnQudGFyZ2V0LmZpbGVzWzBdLnR5cGUgPT09ICd0ZXh0L3htbCcpXHJcbiAgICApO1xyXG5cclxuICAgIGlmICghaXNWYWxpZEZpbGVUeXBlKSB7XHJcbiAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS50b2FzdEVycm9yKCdUaXBvIGRlIGFycXVpdm8gaW52w6FsaWRvJyk7XHJcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzW3RoaXMuZm9ybUNvbnRyb2xOYW1lXS5zZXRWYWx1ZShudWxsKTtcclxuXHJcbiAgICAgIGV2ZW50LnRhcmdldC52YWx1ZSA9ICcnO1xyXG5cclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzW3RoaXMuZm9ybUNvbnRyb2xOYW1lXS5zZXRWYWx1ZShldmVudC50YXJnZXQuZmlsZXNbMF0pO1xyXG4gICAgdGhpcy5maWxlRW1pdC5lbWl0KGV2ZW50LnRhcmdldC5maWxlc1swXSk7XHJcbiAgfVxyXG5cclxuICBkZWxldGVGaWxlKCkge1xyXG4gICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbdGhpcy5mb3JtQ29udHJvbE5hbWVdLnNldFZhbHVlKG51bGwpO1xyXG4gICAgdGhpcy5maWxlSW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xyXG4gICAgdGhpcy5yZW1vdmVGaWxlRW1pdC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICAvLyByZXR1cm5NYlNpemUgPSBjb21wdXRlZCgoKSA9PiAoYnl0ZXM6IGFueSkgPT4ge1xyXG4gIC8vICAgaWYgKGJ5dGVzID09PSBudWxsIHx8IGJ5dGVzID09PSB1bmRlZmluZWQpIHtcclxuICAvLyAgICAgcmV0dXJuICcwIE1CJztcclxuICAvLyAgIH1cclxuXHJcbiAgLy8gICBjb25zdCBtYlNpemUgPSBieXRlcyAvICgxMDI0ICogMTAyNCk7XHJcblxyXG4gIC8vICAgcmV0dXJuIHRoaXMuZm9ybWF0Qnl0ZXMobWJTaXplLCAyKTtcclxuICAvLyB9KTtcclxuXHJcbiAgcHJvZ3Jlc3NWYWx1ZSA9IGNvbXB1dGVkKCgpID0+IChieXRlczogYW55KSA9PiB7XHJcbiAgICBpZiAoYnl0ZXMgPT09IG51bGwgfHwgYnl0ZXMgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICByZXR1cm4gMDtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBtYlNpemUgPSBieXRlcyAvICgxMDI0ICogMTAyNCk7XHJcbiAgICBsZXQgcHJvZ3Jlc3NWYWx1ZSA9IChOdW1iZXIobWJTaXplKSAvIHRoaXMubWF4U2l6ZUZpbGUoKSkgKiAxMDA7XHJcblxyXG4gICAgLy8gTGltaXRhIG8gdmFsb3IgZG8gcHJvZ3Jlc3NvIGVudHJlIDAgZSAxMDBcclxuICAgIHJldHVybiBNYXRoLm1pbihNYXRoLm1heChwcm9ncmVzc1ZhbHVlLCAwKSwgMTAwKTtcclxuICB9KTtcclxuXHJcbiAgcmV0dXJuUHJvZ3Jlc3NMYWJlbCA9IGNvbXB1dGVkKCgpID0+IChieXRlczogYW55KSA9PiB7XHJcbiAgICBpZiAoYnl0ZXMgPT09IG51bGwgfHwgYnl0ZXMgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICByZXR1cm4gJzAgTUInO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IG1iU2l6ZSA9IGJ5dGVzIC8gKDEwMjQgKiAxMDI0KTtcclxuICAgIC8vIGxldCBwcm9ncmVzc1ZhbHVlID0gKE51bWJlcihtYlNpemUpIC8gdGhpcy5tYXhTaXplRmlsZSgpKSAqIDEwMDtcclxuICAgIC8vIHRoaXMucHJvZ3Jlc3NWYWx1ZS5zZXQocHJvZ3Jlc3NWYWx1ZSk7XHJcbiAgICAvLyB0aGlzLnByb2dyZXNzVmFsdWUuc2V0KChtYlNpemUgLyB0aGlzLm1heFNpemVGaWxlKCkpKjEwMCk7XHJcbiAgICByZXR1cm4gYCR7bWJTaXplLnRvRml4ZWQoMil9LyR7dGhpcy5tYXhTaXplRmlsZSgpfSBNQmA7XHJcbiAgfSlcclxuXHJcbiAgZm9ybWF0Qnl0ZXMoYnl0ZXM6IGFueSwgZGVjaW1hbHMgPSAyKSB7XHJcbiAgICBpZiAoIWJ5dGVzKSB7XHJcbiAgICAgIHJldHVybiBcIjAgQnl0ZXNcIjtcclxuICAgIH1cclxuICAgIGNvbnN0IGsgPSAxMDI0O1xyXG4gICAgY29uc3QgZG0gPSBkZWNpbWFscyA8PSAwID8gMCA6IGRlY2ltYWxzO1xyXG4gICAgY29uc3Qgc2l6ZXMgPSBbXCJCeXRlc1wiLCBcIktCXCIsIFwiTUJcIiwgXCJHQlwiLCBcIlRCXCIsIFwiUEJcIiwgXCJFQlwiLCBcIlpCXCIsIFwiWUJcIl07XHJcbiAgICBjb25zdCBpID0gTWF0aC5mbG9vcihNYXRoLmxvZyhieXRlcykgLyBNYXRoLmxvZyhrKSk7XHJcbiAgICByZXR1cm4gcGFyc2VGbG9hdCgoYnl0ZXMgLyBNYXRoLnBvdyhrLCBpKSkudG9GaXhlZChkbSkpICsgXCIgXCIgKyBzaXplc1tpXTtcclxuICB9XHJcblxyXG4gIGFkZERyYWdPdmVyQ2xhc3MoZXZlbnQ6IERyYWdFdmVudCkge1xyXG4gICAgY29uc3QgY29udGFpbmVyID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgY29udGFpbmVyLmNsYXNzTGlzdC5hZGQoJ2RyYWdvdmVyJyk7XHJcbiAgfVxyXG5cclxuICByZW1vdmVEcmFnT3ZlckNsYXNzKGV2ZW50OiBEcmFnRXZlbnQpIHtcclxuICAgIGNvbnN0IGNvbnRhaW5lciA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcclxuICAgIGNvbnRhaW5lci5jbGFzc0xpc3QucmVtb3ZlKCdkcmFnb3ZlcicpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlRmlsZShmaWxlOiBGaWxlKSB7XHJcblxyXG4gICAgaWYgKHRoaXMuaW5jbHVkZU9mZmljZVR5cGVzKSB7XHJcbiAgICAgIGxldCB2YWxpZFR5cGVzID0gWy4uLnRoaXMudmFsaWRGaWxlVHlwZXNdO1xyXG5cclxuICAgICAgdmFsaWRUeXBlcy5wdXNoKFxyXG4gICAgICAgICdhcHBsaWNhdGlvbi9tc3dvcmQnLCAvLyAuZG9jXHJcbiAgICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC53b3JkcHJvY2Vzc2luZ21sLmRvY3VtZW50JywgLy8gLmRvY3hcclxuICAgICAgICAnYXBwbGljYXRpb24vdm5kLm1zLXBvd2VycG9pbnQnLCAvLyAucHB0XHJcbiAgICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5wcmVzZW50YXRpb25tbC5wcmVzZW50YXRpb24nIC8vIC5wcHR4XHJcbiAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgaXNWYWxpZEZpbGVUeXBlID0gdGhpcy52YWxpZEZpbGVUeXBlcy5zb21lKHR5cGUgPT5cclxuICAgICAgZmlsZS50eXBlLnN0YXJ0c1dpdGgodHlwZSkgfHxcclxuICAgICAgZmlsZS50eXBlID09PSAnYXBwbGljYXRpb24veG1sJyB8fFxyXG4gICAgICBmaWxlLnR5cGUgPT09ICd0ZXh0L3htbCdcclxuICAgICk7XHJcblxyXG4gICAgaWYgKCFpc1ZhbGlkRmlsZVR5cGUpIHtcclxuICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnRvYXN0RXJyb3IoJ1RpcG8gZGUgYXJxdWl2byBpbnbDoWxpZG8nKTtcclxuICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbdGhpcy5mb3JtQ29udHJvbE5hbWVdLnNldFZhbHVlKG51bGwpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbdGhpcy5mb3JtQ29udHJvbE5hbWVdLnNldFZhbHVlKGZpbGUpO1xyXG5cclxuICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XHJcblxyXG4gICAgaWYgKGZpbGUudHlwZS5zdGFydHNXaXRoKCdpbWFnZS8nKSkge1xyXG4gICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcclxuICAgIH0gZWxzZSBpZiAoZmlsZS50eXBlID09PSAnYXBwbGljYXRpb24veG1sJyB8fCBmaWxlLnR5cGUgPT09ICd0ZXh0L3htbCcpIHtcclxuICAgICAgcmVhZGVyLnJlYWRBc1RleHQoZmlsZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZWFkZXIucmVhZEFzQXJyYXlCdWZmZXIoZmlsZSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5maWxlRW1pdC5lbWl0KGZpbGUpO1xyXG4gIH1cclxuXHJcbiAgb25EcmFnT3ZlcihldmVudDogRHJhZ0V2ZW50KSB7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLmFkZERyYWdPdmVyQ2xhc3MoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgb25EcmFnTGVhdmUoZXZlbnQ6IERyYWdFdmVudCkge1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5yZW1vdmVEcmFnT3ZlckNsYXNzKGV2ZW50KTtcclxuICB9XHJcblxyXG4gIG9uRHJvcChldmVudDogRHJhZ0V2ZW50KSB7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLnJlbW92ZURyYWdPdmVyQ2xhc3MoZXZlbnQpO1xyXG5cclxuICAgIGlmIChldmVudC5kYXRhVHJhbnNmZXIgJiYgZXZlbnQuZGF0YVRyYW5zZmVyLmZpbGVzLmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5oYW5kbGVGaWxlKGV2ZW50LmRhdGFUcmFuc2Zlci5maWxlc1swXSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRBY2NlcHQoKTogc3RyaW5nIHtcclxuICAgIGxldCB0eXBlcyA9ICcnXHJcblxyXG4gICAgdGhpcy52YWxpZEZpbGVUeXBlcy5mb3JFYWNoKHR5cGUgPT4ge1xyXG4gICAgICBpZiAodHlwZS5pbmNsdWRlcygnaW1hZ2UnKSkgdHlwZXMgKz0gJy5qcGcsIC5wbmcsIC5ibXAsICc7XHJcbiAgICAgIGlmICh0eXBlLmluY2x1ZGVzKCdodG1sJykpIHR5cGVzICs9ICcuaHRtbCwgJztcclxuICAgICAgaWYgKHR5cGUuaW5jbHVkZXMoJ3BkZicpKSB0eXBlcyArPSAnLnBkZiwgJztcclxuICAgICAgaWYgKHR5cGUuaW5jbHVkZXMoJ3htbCcpKSB0eXBlcyArPSAnLnhtbCwgJztcclxuICAgICAgaWYgKHR5cGUuaW5jbHVkZXMoJ3BsYWluJykpIHR5cGVzICs9ICcudHh0LCAnO1xyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gQWRpY2lvbmEgdGlwb3MgZGUgYXJxdWl2b3MgZG8gT2ZmaWNlIHNlIGluY2x1ZGVPZmZpY2VUeXBlcyBmb3IgdHJ1ZVxyXG4gICAgaWYgKHRoaXMuaW5jbHVkZU9mZmljZVR5cGVzKSB7XHJcbiAgICAgIHR5cGVzICs9ICcuZG9jLCAuZG9jeCwgLnBwdCwgLnBwdHgsICc7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHR5cGVzLnNsaWNlKDAsIC0yKTsgLy8gUmVtb3ZlIGEgw7psdGltYSB2w61yZ3VsYSBlIGVzcGHDp29cclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gICpuZ0lmPVwiZm9ybUdyb3VwXCJcclxuICBjbGFzcz1cImZpbGUtdXBsb2FkLWNvbnRhaW5lciB3LWZ1bGxcIlxyXG4gIFtuZ0NsYXNzXT1cIntcclxuICAgICdpbnZhbGlkLWJvcmRlcic6XHJcbiAgICAgIGZvcm1Hcm91cC5nZXQoZm9ybUNvbnRyb2xOYW1lKT8uaW52YWxpZCAmJlxyXG4gICAgICBmb3JtR3JvdXAuZ2V0KGZvcm1Db250cm9sTmFtZSk/LnRvdWNoZWQsXHJcbiAgICAnaGFzLWZpbGUnOiBmb3JtR3JvdXAuZ2V0KGZvcm1Db250cm9sTmFtZSk/LnZhbHVlLFxyXG4gIH1cIlxyXG4gIChkcmFnb3Zlcik9XCJvbkRyYWdPdmVyKCRldmVudClcIlxyXG4gIChkcmFnbGVhdmUpPVwib25EcmFnTGVhdmUoJGV2ZW50KVwiXHJcbiAgKGRyb3ApPVwib25Ecm9wKCRldmVudClcIlxyXG4gIChjbGljayk9XCJ0cmlnZ2VyQ2xpY2soKVwiXHJcbiAgW3N0eWxlLndpZHRoXT1cIndpZHRoQ29tcG9uZW50XCJcclxuPlxyXG4gIDxpbnB1dFxyXG4gICAgdHlwZT1cImZpbGVcIlxyXG4gICAgI2ZpbGVJbnB1dFxyXG4gICAgKGNoYW5nZSk9XCJvbkZpbGVTZWxlY3RlZCgkZXZlbnQpXCJcclxuICAgIFthY2NlcHRdPVwic2V0QWNjZXB0KClcIlxyXG4gICAgaGlkZGVuXHJcbiAgLz5cclxuXHJcbiAgPGRpdiAqbmdJZj1cIiFmb3JtR3JvdXAuZ2V0KGZvcm1Db250cm9sTmFtZSk/LnZhbHVlXCIgY2xhc3M9XCJkcm9wem9uZS1jb250ZW50XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY2xvdWQtaWNvbi13cmFwcGVyXCI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZFwiPmNsb3VkX3VwbG9hZDwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyXCI+XHJcbiAgICAgIDxwIGNsYXNzPVwibWFpbi10ZXh0XCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJibHVlLXRleHRcIj5DbGlxdWUgcGFyYSBzZWxlY2lvbmFyPC9zcGFuPiBvdSBhcnJhc3RlIGFxdWlcclxuICAgICAgPC9wPlxyXG4gICAgICA8cCBjbGFzcz1cInN1Yi10ZXh0XCI+UERGLCBJbWFnZW5zIChtYXguIHt7IG1heFNpemVGaWxlKCkgfX1NQik8L3A+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdlxyXG4gICAgKm5nSWY9XCJmb3JtR3JvdXAuZ2V0KGZvcm1Db250cm9sTmFtZSk/LnZhbHVlIGFzIGZpbGVcIlxyXG4gICAgY2xhc3M9XCJzZWxlY3RlZC1maWxlLWNhcmRcIlxyXG4gID5cclxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsZS1pbmZvXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIGZpbGUtaWNvblwiPmRlc2NyaXB0aW9uPC9zcGFuPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZmlsZS1uYW1lXCIgW3RpdGxlXT1cImZpbGUubmFtZVwiPnt7IGZpbGUubmFtZSB9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBwQnV0dG9uXHJcbiAgICAgICAgaWNvbj1cInBpIHBpLXRpbWVzXCJcclxuICAgICAgICBjbGFzcz1cInAtYnV0dG9uLXJvdW5kZWQgcC1idXR0b24tdGV4dCBwLWJ1dHRvbi1kYW5nZXIgY2xvc2UtYnRuXCJcclxuICAgICAgICAoY2xpY2spPVwiZGVsZXRlRmlsZSgpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxyXG4gICAgICA+PC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiY2FyZC1mb290ZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInByb2dyZXNzLWNvbnRhaW5lclwiPlxyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgIGNsYXNzPVwicHJvZ3Jlc3MtYmFyXCJcclxuICAgICAgICAgIFtzdHlsZS53aWR0aC4lXT1cInByb2dyZXNzVmFsdWUoKShmaWxlLnNpemUpXCJcclxuICAgICAgICAgIFtjbGFzcy5saW1pdC1leGNlZWRlZF09XCJwcm9ncmVzc1ZhbHVlKCkoZmlsZS5zaXplKSA+PSAxMDBcIlxyXG4gICAgICAgID48L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGFsaWduLWl0ZW1zLWNlbnRlciBtdC0xXCI+XHJcbiAgICAgICAgPHNtYWxsIGNsYXNzPVwiZXJyb3ItdGV4dFwiICpuZ0lmPVwicHJvZ3Jlc3NWYWx1ZSgpKGZpbGUuc2l6ZSkgPj0gMTAwXCJcclxuICAgICAgICAgID5MaW1pdGUgZXhjZWRpZG88L3NtYWxsXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZmlsZS1zaXplLWxhYmVsIG1sLWF1dG9cIj57e1xyXG4gICAgICAgICAgZm9ybWF0Qnl0ZXMoZmlsZS5zaXplKVxyXG4gICAgICAgIH19PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxwXHJcbiAgKm5nSWY9XCJcclxuICAgIGZvcm1Hcm91cC5nZXQoZm9ybUNvbnRyb2xOYW1lKT8uaW52YWxpZCAmJlxyXG4gICAgZm9ybUdyb3VwLmdldChmb3JtQ29udHJvbE5hbWUpPy50b3VjaGVkXHJcbiAgXCJcclxuICBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIlxyXG4+XHJcbiAgQ2FtcG8gb2JyaWdhdMOzcmlvXHJcbjwvcD5cclxuIl19
@@ -22,10 +22,10 @@ export class KvIconComponent {
22
22
  this.size = input('medium');
23
23
  }
24
24
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvIconComponent, selector: "kv-icon", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: true, transformFunction: null }, shape: { classPropertyName: "shape", publicName: "shape", isSignal: true, isRequired: true, transformFunction: null }, severity: { classPropertyName: "severity", publicName: "severity", isSignal: true, isRequired: true, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"main-container\">\n\n <div class=\"shape-icon {{ size() }} {{ shape() }} {{ severity() }}\">\n\n @if(icon()) {\n <span class=\"material-symbols-outlined text-white\">\n {{ icon() }}\n </span>\n }\n \n </div>\n \n</div>", styles: ["@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0\";::ng-deep :root{--kv-color-system: 10,58,120;--kv-color-system-cta: 76, 175, 80;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255;--kv-primary-color: 41, 185, 45;--kv-secondary-color: 0, 37, 66;--kv-tertiary-color: 165, 165, 165;--kv-danger-color: 220, 53, 69;--kv-success-color: 75, 181, 67;--kv-info-color: 58, 170, 208;--kv-warn-color: 241, 90, 36;--kv-contrast-color: 33, 37, 41}::ng-deep .padrao{--kv-color-system: 10,58,120;--kv-color-system-cta: 76, 175, 80;--kv-color-text: 0, 0, 0;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255}::ng-deep .theme-keevocenter{--kv-color-system: 88,25,153;--kv-color-system-cta: 0, 116, 217;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255}::ng-deep .theme-holos{--kv-color-system: 241,90,36;--kv-color-system-cta: 224, 168, 35;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 240,240,240;--kv-background-card: 2255,255,255}.system-color{color:rgb(var(--kv-color-system),1)}.bg-system-100{background:rgb(var(--kv-color-system),1)}.bg-system-75{background:rgb(var(--kv-color-system),.75)}.bg-system-50{background:rgb(var(--kv-color-system),.5)}.bg-system-25{background:rgb(var(--kv-color-system),.25)}.material-symbols-outlined{font-family:Material Symbols Outlined!important}*{font-family:Inter,Inter var,sans-serif!important}::ng-deep .p-accordion,::ng-deep .p-accordion-header,::ng-deep .p-accordion-content,::ng-deep .p-badge,::ng-deep .p-overlay-badge,::ng-deep .p-breadcrumb,::ng-deep .p-breadcrumb-item,::ng-deep .p-breadcrumb-link,::ng-deep .p-button,::ng-deep .p-calendar,::ng-deep .p-card,::ng-deep .p-card-title,::ng-deep .p-card-subtitle,::ng-deep .p-card-content,::ng-deep .p-checkbox,::ng-deep .p-chip,::ng-deep .p-confirm-dialog,::ng-deep .p-confirm-dialog-message,::ng-deep .p-contextmenu,::ng-deep .p-contextmenu-item,::ng-deep .p-dataview,::ng-deep .p-dataview-content,::ng-deep .p-dialog,::ng-deep .p-dialog-title,::ng-deep .p-dialog-content,::ng-deep .p-dropdown,::ng-deep .p-dropdown-label,::ng-deep .p-dropdown-item,::ng-deep .p-dynamic-dialog,::ng-deep .p-dynamic-dialog-title,::ng-deep .p-dynamic-dialog-content,::ng-deep .p-editor,::ng-deep .p-fieldset,::ng-deep .p-fieldset-legend,::ng-deep .p-fieldset-content,::ng-deep .p-fileupload,::ng-deep .p-inputmask,::ng-deep .p-inputnumber,::ng-deep .p-inputtextarea,::ng-deep .p-inputtext,::ng-deep .p-menu,::ng-deep .p-menuitem,::ng-deep .p-menuitem-text,::ng-deep .p-message,::ng-deep .p-messages,::ng-deep .p-multiselect,::ng-deep .p-multiselect-label,::ng-deep .p-multiselect-item,::ng-deep .p-panelmenu,::ng-deep .p-panelmenu-header,::ng-deep .p-panelmenu-content,::ng-deep .p-panel,::ng-deep .p-panel-header,::ng-deep .p-panel-content,::ng-deep .p-password,::ng-deep .p-picklist,::ng-deep .p-progressbar,::ng-deep .p-radiobutton,::ng-deep .p-rating,::ng-deep .p-sidebar,::ng-deep .p-splitbutton,::ng-deep .p-steps,::ng-deep .p-step,::ng-deep .p-table,::ng-deep .p-datatable,::ng-deep .p-tabview,::ng-deep .p-tabpanel,::ng-deep .p-tag,::ng-deep .p-toast,::ng-deep .p-toolbar,::ng-deep .p-tooltip,::ng-deep .p-tree,::ng-deep .p-treetable,::ng-deep .p-selectbutton,::ng-deep .p-stepper,::ng-deep .p-inputgroup,::ng-deep .p-inputgroup-addon,::ng-deep .p-text{font-family:Inter,Inter var,sans-serif!important}::ng-deep .p-icon,svg{height:.6rem}:host ::ng-deep .inputs{height:1.875rem}:host ::ng-deep .inputs,.p-inputtext,.p-inputtextarea{font-size:.875rem}::ng-deep .p-dialog .p-dialog-header{color:rgb(var(--kv-color-text))!important;background:linear-gradient(0deg,#00000005 .44%,#0000 49.5%),#fff!important;display:flex!important;flex-wrap:wrap;word-wrap:break-word;border-bottom:1px solid rgb(var(--kv-color-text),.15)}::ng-deep .p-dialog{min-width:320px}::ng-deep *::-webkit-scrollbar{width:5px}::ng-deep *::-webkit-scrollbar-thumb{background-color:#00000080}::ng-deep *::-webkit-scrollbar-track{background-color:#dededebf}::ng-deep .p-dialog-content{overflow-x:hidden}::ng-deep .p-dialog-footer{display:flex;justify-content:flex-end;padding:10px;gap:10px}::ng-deep .p-tooltip{font-size:.825rem!important}::ng-deep svg.p-icon{width:.65rem;height:.65rem}::ng-deep .p-checkbox .p-checkbox-box.p-highlight{border-color:#004172;background:#004172}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:hover{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:active{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:disabled{background-color:#002542;opacity:.4;cursor:auto}input{height:1.75rem}::ng-deep .p-checkbox .p-checkbox-box{width:1.125rem;height:1.125rem;border:1.5px solid #d1d5db}::ng-deep p-tablecheckbox p-tableheadercheckbox .p-checkbox{display:flex!important;align-items:center!important;justify-content:right}::ng-deep .p-checkbox{display:flex!important;align-items:center!important;justify-content:center}::ng-deep .p-checkbox-label{font-size:.875rem}:host *{padding:0;margin:0;box-sizing:border-box}.main-container{height:auto}.shape-icon{position:relative;display:flex;justify-content:center;align-items:center;container-type:inline-size;container-name:shape-container}.shape-icon.small{width:1.9rem;height:1.9rem}.shape-icon.medium{width:2.2rem;height:2.2rem}.shape-icon.large{width:2.6rem;height:2.6rem}.shape-icon.system{background-color:rgba(var(--kv-color-system),1)}.shape-icon.success{background-color:rgba(var(--kv-success-color),1)}.shape-icon.info{background-color:rgba(var(--kv-info-color),.4)}.shape-icon.warning{background-color:rgba(var(--kv-warn-color),1)}.shape-icon.danger{background-color:rgba(var(--kv-danger-color),1)}.shape-icon.contrast{background-color:rgba(var(--kv-contrast-color),1)}.shape-icon.circle{border-radius:50%}.shape-icon.square{border-radius:20%}.shape-icon.hexagon{clip-path:polygon(50% 0%,95.5% 27.67%,95.5% 70.1%,50% 100%,4.5% 70.1%,4.5% 27.67%)}.shape-icon .material-symbols-outlined{font-size:70cqi!important}\n"] }); }
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvIconComponent, selector: "kv-icon", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: true, transformFunction: null }, shape: { classPropertyName: "shape", publicName: "shape", isSignal: true, isRequired: true, transformFunction: null }, severity: { classPropertyName: "severity", publicName: "severity", isSignal: true, isRequired: true, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"main-container\">\r\n\r\n <div class=\"shape-icon {{ size() }} {{ shape() }} {{ severity() }}\">\r\n\r\n @if(icon()) {\r\n <span class=\"material-symbols-outlined text-white\">\r\n {{ icon() }}\r\n </span>\r\n }\r\n \r\n </div>\r\n \r\n</div>", styles: ["@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0\";::ng-deep :root{--kv-color-system: 10,58,120;--kv-color-system-cta: 76, 175, 80;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255;--kv-primary-color: 41, 185, 45;--kv-secondary-color: 0, 37, 66;--kv-tertiary-color: 165, 165, 165;--kv-danger-color: 220, 53, 69;--kv-success-color: 75, 181, 67;--kv-info-color: 58, 170, 208;--kv-warn-color: 241, 90, 36;--kv-contrast-color: 33, 37, 41}::ng-deep .padrao{--kv-color-system: 10,58,120;--kv-color-system-cta: 76, 175, 80;--kv-color-text: 0, 0, 0;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255}::ng-deep .theme-keevocenter{--kv-color-system: 88,25,153;--kv-color-system-cta: 0, 116, 217;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255}::ng-deep .theme-holos{--kv-color-system: 241,90,36;--kv-color-system-cta: 224, 168, 35;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 240,240,240;--kv-background-card: 2255,255,255}.system-color{color:rgb(var(--kv-color-system),1)}.bg-system-100{background:rgb(var(--kv-color-system),1)}.bg-system-75{background:rgb(var(--kv-color-system),.75)}.bg-system-50{background:rgb(var(--kv-color-system),.5)}.bg-system-25{background:rgb(var(--kv-color-system),.25)}.material-symbols-outlined{font-family:Material Symbols Outlined!important}*{font-family:Inter,Inter var,sans-serif!important}::ng-deep .p-accordion,::ng-deep .p-accordion-header,::ng-deep .p-accordion-content,::ng-deep .p-badge,::ng-deep .p-overlay-badge,::ng-deep .p-breadcrumb,::ng-deep .p-breadcrumb-item,::ng-deep .p-breadcrumb-link,::ng-deep .p-button,::ng-deep .p-calendar,::ng-deep .p-card,::ng-deep .p-card-title,::ng-deep .p-card-subtitle,::ng-deep .p-card-content,::ng-deep .p-checkbox,::ng-deep .p-chip,::ng-deep .p-confirm-dialog,::ng-deep .p-confirm-dialog-message,::ng-deep .p-contextmenu,::ng-deep .p-contextmenu-item,::ng-deep .p-dataview,::ng-deep .p-dataview-content,::ng-deep .p-dialog,::ng-deep .p-dialog-title,::ng-deep .p-dialog-content,::ng-deep .p-dropdown,::ng-deep .p-dropdown-label,::ng-deep .p-dropdown-item,::ng-deep .p-dynamic-dialog,::ng-deep .p-dynamic-dialog-title,::ng-deep .p-dynamic-dialog-content,::ng-deep .p-editor,::ng-deep .p-fieldset,::ng-deep .p-fieldset-legend,::ng-deep .p-fieldset-content,::ng-deep .p-fileupload,::ng-deep .p-inputmask,::ng-deep .p-inputnumber,::ng-deep .p-inputtextarea,::ng-deep .p-inputtext,::ng-deep .p-menu,::ng-deep .p-menuitem,::ng-deep .p-menuitem-text,::ng-deep .p-message,::ng-deep .p-messages,::ng-deep .p-multiselect,::ng-deep .p-multiselect-label,::ng-deep .p-multiselect-item,::ng-deep .p-panelmenu,::ng-deep .p-panelmenu-header,::ng-deep .p-panelmenu-content,::ng-deep .p-panel,::ng-deep .p-panel-header,::ng-deep .p-panel-content,::ng-deep .p-password,::ng-deep .p-picklist,::ng-deep .p-progressbar,::ng-deep .p-radiobutton,::ng-deep .p-rating,::ng-deep .p-sidebar,::ng-deep .p-splitbutton,::ng-deep .p-steps,::ng-deep .p-step,::ng-deep .p-table,::ng-deep .p-datatable,::ng-deep .p-tabview,::ng-deep .p-tabpanel,::ng-deep .p-tag,::ng-deep .p-toast,::ng-deep .p-toolbar,::ng-deep .p-tooltip,::ng-deep .p-tree,::ng-deep .p-treetable,::ng-deep .p-selectbutton,::ng-deep .p-stepper,::ng-deep .p-inputgroup,::ng-deep .p-inputgroup-addon,::ng-deep .p-text{font-family:Inter,Inter var,sans-serif!important}::ng-deep .p-icon,svg{height:.6rem}:host ::ng-deep .inputs{height:1.875rem}:host ::ng-deep .inputs,.p-inputtext,.p-inputtextarea{font-size:.875rem}::ng-deep .p-dialog .p-dialog-header{color:rgb(var(--kv-color-text))!important;background:linear-gradient(0deg,#00000005 .44%,#0000 49.5%),#fff!important;display:flex!important;flex-wrap:wrap;word-wrap:break-word;border-bottom:1px solid rgb(var(--kv-color-text),.15)}::ng-deep .p-dialog{min-width:320px}::ng-deep *::-webkit-scrollbar{width:5px}::ng-deep *::-webkit-scrollbar-thumb{background-color:#00000080}::ng-deep *::-webkit-scrollbar-track{background-color:#dededebf}::ng-deep .p-dialog-content{overflow-x:hidden}::ng-deep .p-dialog-footer{display:flex;justify-content:flex-end;padding:10px;gap:10px}::ng-deep .p-tooltip{font-size:.825rem!important}::ng-deep svg.p-icon{width:.65rem;height:.65rem}::ng-deep .p-checkbox .p-checkbox-box.p-highlight{border-color:#004172;background:#004172}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:hover{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:active{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:disabled{background-color:#002542;opacity:.4;cursor:auto}input{height:1.75rem}::ng-deep .p-checkbox .p-checkbox-box{width:1.125rem;height:1.125rem;border:1.5px solid #d1d5db}::ng-deep p-tablecheckbox p-tableheadercheckbox .p-checkbox{display:flex!important;align-items:center!important;justify-content:right}::ng-deep .p-checkbox{display:flex!important;align-items:center!important;justify-content:center}::ng-deep .p-checkbox-label{font-size:.875rem}:host *{padding:0;margin:0;box-sizing:border-box}.main-container{height:auto}.shape-icon{position:relative;display:flex;justify-content:center;align-items:center;container-type:inline-size;container-name:shape-container}.shape-icon.small{width:1.9rem;height:1.9rem}.shape-icon.medium{width:2.2rem;height:2.2rem}.shape-icon.large{width:2.6rem;height:2.6rem}.shape-icon.system{background-color:rgba(var(--kv-color-system),1)}.shape-icon.success{background-color:rgba(var(--kv-success-color),1)}.shape-icon.info{background-color:rgba(var(--kv-info-color),.4)}.shape-icon.warning{background-color:rgba(var(--kv-warn-color),1)}.shape-icon.danger{background-color:rgba(var(--kv-danger-color),1)}.shape-icon.contrast{background-color:rgba(var(--kv-contrast-color),1)}.shape-icon.circle{border-radius:50%}.shape-icon.square{border-radius:20%}.shape-icon.hexagon{clip-path:polygon(50% 0%,95.5% 27.67%,95.5% 70.1%,50% 100%,4.5% 70.1%,4.5% 27.67%)}.shape-icon .material-symbols-outlined{font-size:70cqi!important}\n"] }); }
26
26
  }
27
27
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvIconComponent, decorators: [{
28
28
  type: Component,
29
- args: [{ selector: 'kv-icon', template: "<div class=\"main-container\">\n\n <div class=\"shape-icon {{ size() }} {{ shape() }} {{ severity() }}\">\n\n @if(icon()) {\n <span class=\"material-symbols-outlined text-white\">\n {{ icon() }}\n </span>\n }\n \n </div>\n \n</div>", styles: ["@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0\";::ng-deep :root{--kv-color-system: 10,58,120;--kv-color-system-cta: 76, 175, 80;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255;--kv-primary-color: 41, 185, 45;--kv-secondary-color: 0, 37, 66;--kv-tertiary-color: 165, 165, 165;--kv-danger-color: 220, 53, 69;--kv-success-color: 75, 181, 67;--kv-info-color: 58, 170, 208;--kv-warn-color: 241, 90, 36;--kv-contrast-color: 33, 37, 41}::ng-deep .padrao{--kv-color-system: 10,58,120;--kv-color-system-cta: 76, 175, 80;--kv-color-text: 0, 0, 0;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255}::ng-deep .theme-keevocenter{--kv-color-system: 88,25,153;--kv-color-system-cta: 0, 116, 217;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255}::ng-deep .theme-holos{--kv-color-system: 241,90,36;--kv-color-system-cta: 224, 168, 35;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 240,240,240;--kv-background-card: 2255,255,255}.system-color{color:rgb(var(--kv-color-system),1)}.bg-system-100{background:rgb(var(--kv-color-system),1)}.bg-system-75{background:rgb(var(--kv-color-system),.75)}.bg-system-50{background:rgb(var(--kv-color-system),.5)}.bg-system-25{background:rgb(var(--kv-color-system),.25)}.material-symbols-outlined{font-family:Material Symbols Outlined!important}*{font-family:Inter,Inter var,sans-serif!important}::ng-deep .p-accordion,::ng-deep .p-accordion-header,::ng-deep .p-accordion-content,::ng-deep .p-badge,::ng-deep .p-overlay-badge,::ng-deep .p-breadcrumb,::ng-deep .p-breadcrumb-item,::ng-deep .p-breadcrumb-link,::ng-deep .p-button,::ng-deep .p-calendar,::ng-deep .p-card,::ng-deep .p-card-title,::ng-deep .p-card-subtitle,::ng-deep .p-card-content,::ng-deep .p-checkbox,::ng-deep .p-chip,::ng-deep .p-confirm-dialog,::ng-deep .p-confirm-dialog-message,::ng-deep .p-contextmenu,::ng-deep .p-contextmenu-item,::ng-deep .p-dataview,::ng-deep .p-dataview-content,::ng-deep .p-dialog,::ng-deep .p-dialog-title,::ng-deep .p-dialog-content,::ng-deep .p-dropdown,::ng-deep .p-dropdown-label,::ng-deep .p-dropdown-item,::ng-deep .p-dynamic-dialog,::ng-deep .p-dynamic-dialog-title,::ng-deep .p-dynamic-dialog-content,::ng-deep .p-editor,::ng-deep .p-fieldset,::ng-deep .p-fieldset-legend,::ng-deep .p-fieldset-content,::ng-deep .p-fileupload,::ng-deep .p-inputmask,::ng-deep .p-inputnumber,::ng-deep .p-inputtextarea,::ng-deep .p-inputtext,::ng-deep .p-menu,::ng-deep .p-menuitem,::ng-deep .p-menuitem-text,::ng-deep .p-message,::ng-deep .p-messages,::ng-deep .p-multiselect,::ng-deep .p-multiselect-label,::ng-deep .p-multiselect-item,::ng-deep .p-panelmenu,::ng-deep .p-panelmenu-header,::ng-deep .p-panelmenu-content,::ng-deep .p-panel,::ng-deep .p-panel-header,::ng-deep .p-panel-content,::ng-deep .p-password,::ng-deep .p-picklist,::ng-deep .p-progressbar,::ng-deep .p-radiobutton,::ng-deep .p-rating,::ng-deep .p-sidebar,::ng-deep .p-splitbutton,::ng-deep .p-steps,::ng-deep .p-step,::ng-deep .p-table,::ng-deep .p-datatable,::ng-deep .p-tabview,::ng-deep .p-tabpanel,::ng-deep .p-tag,::ng-deep .p-toast,::ng-deep .p-toolbar,::ng-deep .p-tooltip,::ng-deep .p-tree,::ng-deep .p-treetable,::ng-deep .p-selectbutton,::ng-deep .p-stepper,::ng-deep .p-inputgroup,::ng-deep .p-inputgroup-addon,::ng-deep .p-text{font-family:Inter,Inter var,sans-serif!important}::ng-deep .p-icon,svg{height:.6rem}:host ::ng-deep .inputs{height:1.875rem}:host ::ng-deep .inputs,.p-inputtext,.p-inputtextarea{font-size:.875rem}::ng-deep .p-dialog .p-dialog-header{color:rgb(var(--kv-color-text))!important;background:linear-gradient(0deg,#00000005 .44%,#0000 49.5%),#fff!important;display:flex!important;flex-wrap:wrap;word-wrap:break-word;border-bottom:1px solid rgb(var(--kv-color-text),.15)}::ng-deep .p-dialog{min-width:320px}::ng-deep *::-webkit-scrollbar{width:5px}::ng-deep *::-webkit-scrollbar-thumb{background-color:#00000080}::ng-deep *::-webkit-scrollbar-track{background-color:#dededebf}::ng-deep .p-dialog-content{overflow-x:hidden}::ng-deep .p-dialog-footer{display:flex;justify-content:flex-end;padding:10px;gap:10px}::ng-deep .p-tooltip{font-size:.825rem!important}::ng-deep svg.p-icon{width:.65rem;height:.65rem}::ng-deep .p-checkbox .p-checkbox-box.p-highlight{border-color:#004172;background:#004172}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:hover{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:active{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:disabled{background-color:#002542;opacity:.4;cursor:auto}input{height:1.75rem}::ng-deep .p-checkbox .p-checkbox-box{width:1.125rem;height:1.125rem;border:1.5px solid #d1d5db}::ng-deep p-tablecheckbox p-tableheadercheckbox .p-checkbox{display:flex!important;align-items:center!important;justify-content:right}::ng-deep .p-checkbox{display:flex!important;align-items:center!important;justify-content:center}::ng-deep .p-checkbox-label{font-size:.875rem}:host *{padding:0;margin:0;box-sizing:border-box}.main-container{height:auto}.shape-icon{position:relative;display:flex;justify-content:center;align-items:center;container-type:inline-size;container-name:shape-container}.shape-icon.small{width:1.9rem;height:1.9rem}.shape-icon.medium{width:2.2rem;height:2.2rem}.shape-icon.large{width:2.6rem;height:2.6rem}.shape-icon.system{background-color:rgba(var(--kv-color-system),1)}.shape-icon.success{background-color:rgba(var(--kv-success-color),1)}.shape-icon.info{background-color:rgba(var(--kv-info-color),.4)}.shape-icon.warning{background-color:rgba(var(--kv-warn-color),1)}.shape-icon.danger{background-color:rgba(var(--kv-danger-color),1)}.shape-icon.contrast{background-color:rgba(var(--kv-contrast-color),1)}.shape-icon.circle{border-radius:50%}.shape-icon.square{border-radius:20%}.shape-icon.hexagon{clip-path:polygon(50% 0%,95.5% 27.67%,95.5% 70.1%,50% 100%,4.5% 70.1%,4.5% 27.67%)}.shape-icon .material-symbols-outlined{font-size:70cqi!important}\n"] }]
29
+ args: [{ selector: 'kv-icon', template: "<div class=\"main-container\">\r\n\r\n <div class=\"shape-icon {{ size() }} {{ shape() }} {{ severity() }}\">\r\n\r\n @if(icon()) {\r\n <span class=\"material-symbols-outlined text-white\">\r\n {{ icon() }}\r\n </span>\r\n }\r\n \r\n </div>\r\n \r\n</div>", styles: ["@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0\";::ng-deep :root{--kv-color-system: 10,58,120;--kv-color-system-cta: 76, 175, 80;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255;--kv-primary-color: 41, 185, 45;--kv-secondary-color: 0, 37, 66;--kv-tertiary-color: 165, 165, 165;--kv-danger-color: 220, 53, 69;--kv-success-color: 75, 181, 67;--kv-info-color: 58, 170, 208;--kv-warn-color: 241, 90, 36;--kv-contrast-color: 33, 37, 41}::ng-deep .padrao{--kv-color-system: 10,58,120;--kv-color-system-cta: 76, 175, 80;--kv-color-text: 0, 0, 0;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255}::ng-deep .theme-keevocenter{--kv-color-system: 88,25,153;--kv-color-system-cta: 0, 116, 217;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255}::ng-deep .theme-holos{--kv-color-system: 241,90,36;--kv-color-system-cta: 224, 168, 35;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 240,240,240;--kv-background-card: 2255,255,255}.system-color{color:rgb(var(--kv-color-system),1)}.bg-system-100{background:rgb(var(--kv-color-system),1)}.bg-system-75{background:rgb(var(--kv-color-system),.75)}.bg-system-50{background:rgb(var(--kv-color-system),.5)}.bg-system-25{background:rgb(var(--kv-color-system),.25)}.material-symbols-outlined{font-family:Material Symbols Outlined!important}*{font-family:Inter,Inter var,sans-serif!important}::ng-deep .p-accordion,::ng-deep .p-accordion-header,::ng-deep .p-accordion-content,::ng-deep .p-badge,::ng-deep .p-overlay-badge,::ng-deep .p-breadcrumb,::ng-deep .p-breadcrumb-item,::ng-deep .p-breadcrumb-link,::ng-deep .p-button,::ng-deep .p-calendar,::ng-deep .p-card,::ng-deep .p-card-title,::ng-deep .p-card-subtitle,::ng-deep .p-card-content,::ng-deep .p-checkbox,::ng-deep .p-chip,::ng-deep .p-confirm-dialog,::ng-deep .p-confirm-dialog-message,::ng-deep .p-contextmenu,::ng-deep .p-contextmenu-item,::ng-deep .p-dataview,::ng-deep .p-dataview-content,::ng-deep .p-dialog,::ng-deep .p-dialog-title,::ng-deep .p-dialog-content,::ng-deep .p-dropdown,::ng-deep .p-dropdown-label,::ng-deep .p-dropdown-item,::ng-deep .p-dynamic-dialog,::ng-deep .p-dynamic-dialog-title,::ng-deep .p-dynamic-dialog-content,::ng-deep .p-editor,::ng-deep .p-fieldset,::ng-deep .p-fieldset-legend,::ng-deep .p-fieldset-content,::ng-deep .p-fileupload,::ng-deep .p-inputmask,::ng-deep .p-inputnumber,::ng-deep .p-inputtextarea,::ng-deep .p-inputtext,::ng-deep .p-menu,::ng-deep .p-menuitem,::ng-deep .p-menuitem-text,::ng-deep .p-message,::ng-deep .p-messages,::ng-deep .p-multiselect,::ng-deep .p-multiselect-label,::ng-deep .p-multiselect-item,::ng-deep .p-panelmenu,::ng-deep .p-panelmenu-header,::ng-deep .p-panelmenu-content,::ng-deep .p-panel,::ng-deep .p-panel-header,::ng-deep .p-panel-content,::ng-deep .p-password,::ng-deep .p-picklist,::ng-deep .p-progressbar,::ng-deep .p-radiobutton,::ng-deep .p-rating,::ng-deep .p-sidebar,::ng-deep .p-splitbutton,::ng-deep .p-steps,::ng-deep .p-step,::ng-deep .p-table,::ng-deep .p-datatable,::ng-deep .p-tabview,::ng-deep .p-tabpanel,::ng-deep .p-tag,::ng-deep .p-toast,::ng-deep .p-toolbar,::ng-deep .p-tooltip,::ng-deep .p-tree,::ng-deep .p-treetable,::ng-deep .p-selectbutton,::ng-deep .p-stepper,::ng-deep .p-inputgroup,::ng-deep .p-inputgroup-addon,::ng-deep .p-text{font-family:Inter,Inter var,sans-serif!important}::ng-deep .p-icon,svg{height:.6rem}:host ::ng-deep .inputs{height:1.875rem}:host ::ng-deep .inputs,.p-inputtext,.p-inputtextarea{font-size:.875rem}::ng-deep .p-dialog .p-dialog-header{color:rgb(var(--kv-color-text))!important;background:linear-gradient(0deg,#00000005 .44%,#0000 49.5%),#fff!important;display:flex!important;flex-wrap:wrap;word-wrap:break-word;border-bottom:1px solid rgb(var(--kv-color-text),.15)}::ng-deep .p-dialog{min-width:320px}::ng-deep *::-webkit-scrollbar{width:5px}::ng-deep *::-webkit-scrollbar-thumb{background-color:#00000080}::ng-deep *::-webkit-scrollbar-track{background-color:#dededebf}::ng-deep .p-dialog-content{overflow-x:hidden}::ng-deep .p-dialog-footer{display:flex;justify-content:flex-end;padding:10px;gap:10px}::ng-deep .p-tooltip{font-size:.825rem!important}::ng-deep svg.p-icon{width:.65rem;height:.65rem}::ng-deep .p-checkbox .p-checkbox-box.p-highlight{border-color:#004172;background:#004172}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:hover{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:active{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:disabled{background-color:#002542;opacity:.4;cursor:auto}input{height:1.75rem}::ng-deep .p-checkbox .p-checkbox-box{width:1.125rem;height:1.125rem;border:1.5px solid #d1d5db}::ng-deep p-tablecheckbox p-tableheadercheckbox .p-checkbox{display:flex!important;align-items:center!important;justify-content:right}::ng-deep .p-checkbox{display:flex!important;align-items:center!important;justify-content:center}::ng-deep .p-checkbox-label{font-size:.875rem}:host *{padding:0;margin:0;box-sizing:border-box}.main-container{height:auto}.shape-icon{position:relative;display:flex;justify-content:center;align-items:center;container-type:inline-size;container-name:shape-container}.shape-icon.small{width:1.9rem;height:1.9rem}.shape-icon.medium{width:2.2rem;height:2.2rem}.shape-icon.large{width:2.6rem;height:2.6rem}.shape-icon.system{background-color:rgba(var(--kv-color-system),1)}.shape-icon.success{background-color:rgba(var(--kv-success-color),1)}.shape-icon.info{background-color:rgba(var(--kv-info-color),.4)}.shape-icon.warning{background-color:rgba(var(--kv-warn-color),1)}.shape-icon.danger{background-color:rgba(var(--kv-danger-color),1)}.shape-icon.contrast{background-color:rgba(var(--kv-contrast-color),1)}.shape-icon.circle{border-radius:50%}.shape-icon.square{border-radius:20%}.shape-icon.hexagon{clip-path:polygon(50% 0%,95.5% 27.67%,95.5% 70.1%,50% 100%,4.5% 70.1%,4.5% 27.67%)}.shape-icon .material-symbols-outlined{font-size:70cqi!important}\n"] }]
30
30
  }] });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9rdi1pY29uL2t2LWljb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtaWNvbi9rdi1pY29uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOztBQUl6RDs7Ozs7Ozs7Ozs7OztHQWFHO0FBTUgsTUFBTSxPQUFPLGVBQWU7SUFMNUI7UUFPRSxTQUFJLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBVSxDQUFDO1FBQ2hDLFVBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFtQyxDQUFDO1FBQzFELGFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFxRSxDQUFDO1FBQy9GLFNBQUksR0FBRyxLQUFLLENBQStCLFFBQVEsQ0FBQyxDQUFDO0tBRXREOzhHQVBZLGVBQWU7a0dBQWYsZUFBZSwyaEJDdkI1QixvUUFZTTs7MkZEV08sZUFBZTtrQkFMM0IsU0FBUzsrQkFDRSxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBzZXZlcml0eUNvbG9yQWN0aXZlIH0gZnJvbSAnLi4vLi4vYXBpL2hlbHBlcnMvc2V2ZXJpdHktY29sb3InO1xuaW1wb3J0ICogYXMgSWNvbk1vZGVscyBmcm9tICcuL2t2LWljb24ubW9kZWwnO1xuXG4vKipcbiAqIENvbXBvbmVudGUgcGFyYSBleGliacOnw6NvIGRlIMOtY29uZXMgbmEgYXBsaWNhw6fDo28uXG4gKiBcbiAqIE8gY29tcG9uZW50ZSBga3YtaWNvbmAgcGVybWl0ZSByZW5kZXJpemFyIMOtY29uZXMgYmFzZWFkb3Mgbm8gbW9kZWxvIGZvcm5lY2lkby5cbiAqIFxuICogQGV4YW1wbGVcbiAqIGBgYGh0bWxcbiAqIDxrdi1pY29uIFtpY29uXT1cIidpbmZvJ1wiIFtzZXZlcml0eV09XCInc3lzdGVtJ1wiIFtzaGFwZV09XCInY2lyY2xlJ1wiPjwva3YtaWNvbj5cbiAqIGBgYFxuICogXG4gKiBAaW5wdXQgaWNvbiAtIERlZmluZSBvIMOtY29uZSBhIHNlciBleGliaWRvLlxuICogQGlucHV0IHNoYXBlIC0gRGVmaW5lIGEgZm9ybWEgZG8gw61jb25lIChvcMOnw7VlczogJ2NpcmNsZScsICdoZXhhZ29uJywgJ3NxdWFyZScpLlxuICogQGlucHV0IHNldmVyaXR5IC0gRGVmaW5lIGEgc2V2ZXJpZGFkZSBkbyDDrWNvbmUgKG9ww6fDtWVzOiAnc3lzdGVtJywgJ3dhcm5pbmcnLCAnZGFuZ2VyJywgJ3N1Y2Nlc3MnKS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAna3YtaWNvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9rdi1pY29uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4va3YtaWNvbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEt2SWNvbkNvbXBvbmVudCB7XG5cbiAgaWNvbiA9IGlucHV0LnJlcXVpcmVkPHN0cmluZz4oKTtcbiAgc2hhcGUgPSBpbnB1dC5yZXF1aXJlZDwnY2lyY2xlJyB8ICdoZXhhZ29uJyB8ICdzcXVhcmUnPigpO1xuICBzZXZlcml0eSA9IGlucHV0LnJlcXVpcmVkPCdzeXN0ZW0nIHwgJ3dhcm5pbmcnIHwgJ2RhbmdlcicgfCAnc3VjY2VzcycgfCAnY29udHJhc3QnIHwgJ2luZm8nPigpO1xuICBzaXplID0gaW5wdXQ8J3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJz4oJ21lZGl1bScpO1xuXG59XG4iLCI8ZGl2IGNsYXNzPVwibWFpbi1jb250YWluZXJcIj5cblxuICA8ZGl2IGNsYXNzPVwic2hhcGUtaWNvbiB7eyBzaXplKCkgfX0ge3sgc2hhcGUoKSB9fSB7eyBzZXZlcml0eSgpIH19XCI+XG5cbiAgICBAaWYoaWNvbigpKSB7XG4gICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgdGV4dC13aGl0ZVwiPlxuICAgICAgICB7eyBpY29uKCkgfX1cbiAgICAgIDwvc3Bhbj5cbiAgICB9XG4gIFxuICA8L2Rpdj5cbiAgXG48L2Rpdj4iXX0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9rdi1pY29uL2t2LWljb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtaWNvbi9rdi1pY29uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOztBQUl6RDs7Ozs7Ozs7Ozs7OztHQWFHO0FBTUgsTUFBTSxPQUFPLGVBQWU7SUFMNUI7UUFPRSxTQUFJLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBVSxDQUFDO1FBQ2hDLFVBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFtQyxDQUFDO1FBQzFELGFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFxRSxDQUFDO1FBQy9GLFNBQUksR0FBRyxLQUFLLENBQStCLFFBQVEsQ0FBQyxDQUFDO0tBRXREOzhHQVBZLGVBQWU7a0dBQWYsZUFBZSwyaEJDdkI1Qiw0UkFZTTs7MkZEV08sZUFBZTtrQkFMM0IsU0FBUzsrQkFDRSxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IHNldmVyaXR5Q29sb3JBY3RpdmUgfSBmcm9tICcuLi8uLi9hcGkvaGVscGVycy9zZXZlcml0eS1jb2xvcic7XHJcbmltcG9ydCAqIGFzIEljb25Nb2RlbHMgZnJvbSAnLi9rdi1pY29uLm1vZGVsJztcclxuXHJcbi8qKlxyXG4gKiBDb21wb25lbnRlIHBhcmEgZXhpYmnDp8OjbyBkZSDDrWNvbmVzIG5hIGFwbGljYcOnw6NvLlxyXG4gKiBcclxuICogTyBjb21wb25lbnRlIGBrdi1pY29uYCBwZXJtaXRlIHJlbmRlcml6YXIgw61jb25lcyBiYXNlYWRvcyBubyBtb2RlbG8gZm9ybmVjaWRvLlxyXG4gKiBcclxuICogQGV4YW1wbGVcclxuICogYGBgaHRtbFxyXG4gKiA8a3YtaWNvbiBbaWNvbl09XCInaW5mbydcIiBbc2V2ZXJpdHldPVwiJ3N5c3RlbSdcIiBbc2hhcGVdPVwiJ2NpcmNsZSdcIj48L2t2LWljb24+XHJcbiAqIGBgYFxyXG4gKiBcclxuICogQGlucHV0IGljb24gLSBEZWZpbmUgbyDDrWNvbmUgYSBzZXIgZXhpYmlkby5cclxuICogQGlucHV0IHNoYXBlIC0gRGVmaW5lIGEgZm9ybWEgZG8gw61jb25lIChvcMOnw7VlczogJ2NpcmNsZScsICdoZXhhZ29uJywgJ3NxdWFyZScpLlxyXG4gKiBAaW5wdXQgc2V2ZXJpdHkgLSBEZWZpbmUgYSBzZXZlcmlkYWRlIGRvIMOtY29uZSAob3DDp8O1ZXM6ICdzeXN0ZW0nLCAnd2FybmluZycsICdkYW5nZXInLCAnc3VjY2VzcycpLlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdrdi1pY29uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4va3YtaWNvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4va3YtaWNvbi5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBLdkljb25Db21wb25lbnQge1xyXG5cclxuICBpY29uID0gaW5wdXQucmVxdWlyZWQ8c3RyaW5nPigpO1xyXG4gIHNoYXBlID0gaW5wdXQucmVxdWlyZWQ8J2NpcmNsZScgfCAnaGV4YWdvbicgfCAnc3F1YXJlJz4oKTtcclxuICBzZXZlcml0eSA9IGlucHV0LnJlcXVpcmVkPCdzeXN0ZW0nIHwgJ3dhcm5pbmcnIHwgJ2RhbmdlcicgfCAnc3VjY2VzcycgfCAnY29udHJhc3QnIHwgJ2luZm8nPigpO1xyXG4gIHNpemUgPSBpbnB1dDwnc21hbGwnIHwgJ21lZGl1bScgfCAnbGFyZ2UnPignbWVkaXVtJyk7XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJtYWluLWNvbnRhaW5lclwiPlxyXG5cclxuICA8ZGl2IGNsYXNzPVwic2hhcGUtaWNvbiB7eyBzaXplKCkgfX0ge3sgc2hhcGUoKSB9fSB7eyBzZXZlcml0eSgpIH19XCI+XHJcblxyXG4gICAgQGlmKGljb24oKSkge1xyXG4gICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgdGV4dC13aGl0ZVwiPlxyXG4gICAgICAgIHt7IGljb24oKSB9fVxyXG4gICAgICA8L3NwYW4+XHJcbiAgICB9XHJcbiAgXHJcbiAgPC9kaXY+XHJcbiAgXHJcbjwvZGl2PiJdfQ==
@@ -48,10 +48,10 @@ export class KvChipsComponent {
48
48
  this.selectionChange.emit(val);
49
49
  }
50
50
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvChipsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
51
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvChipsComponent, isStandalone: true, selector: "kv-chips", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: true, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, selection: { classPropertyName: "selection", publicName: "selection", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selection: "selectionChange", selectionChange: "selectionChange" }, ngImport: i0, template: "<div class=\"chip-container\">\r\n @for (option of options(); track option.value) {\r\n <button\r\n type=\"button\"\r\n class=\"chip\"\r\n [class.selected]=\"isActive(option)\"\r\n (click)=\"toggle(option)\"\r\n >\r\n {{ option.label }}\r\n </button>\r\n }\r\n</div>\r\n", styles: [".chip-container{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.chip{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;padding:.25rem 1rem;background-color:#f8fafc;border:1px solid #cbd5e1;border-radius:999px;color:#64748b;font-family:inherit;font-size:.875rem;font-weight:500;white-space:nowrap;cursor:pointer;transition:all .2s ease-in-out;-webkit-user-select:none;user-select:none}.chip:hover{border-color:#abbbce;color:#4f5b6d}.chip.selected{background-color:#e0f2fe;border-color:#0ea5e9;color:#0b83b9}.chip:focus-visible{outline:2px solid #0ea5e9;outline-offset:2px}\n"] }); }
51
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvChipsComponent, isStandalone: true, selector: "kv-chips", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: true, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, selection: { classPropertyName: "selection", publicName: "selection", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selection: "selectionChange", selectionChange: "selectionChange" }, ngImport: i0, template: "<div class=\"chip-container\">\r\n @for (option of options(); track option.value) {\r\n <button\r\n type=\"button\"\r\n class=\"chip\"\r\n [class.selected]=\"isActive(option)\"\r\n (click)=\"toggle(option)\"\r\n >\r\n {{ option.label }}\r\n </button>\r\n }\r\n</div>\r\n", styles: [".chip-container{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.chip{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;padding:.25rem 1rem;background-color:#f8fafc;border:1px solid #cbd5e1;border-radius:.5rem;color:#64748b;font-family:inherit;font-size:.875rem;font-weight:500;white-space:nowrap;cursor:pointer;transition:all .2s ease-in-out;-webkit-user-select:none;user-select:none}.chip:hover{border-color:#abbbce;color:#4f5b6d}.chip.selected{background-color:#e0f2fe;border-color:#3b82f6;color:#0b63f3}.chip:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}\n"] }); }
52
52
  }
53
53
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvChipsComponent, decorators: [{
54
54
  type: Component,
55
- args: [{ selector: 'kv-chips', standalone: true, imports: [], template: "<div class=\"chip-container\">\r\n @for (option of options(); track option.value) {\r\n <button\r\n type=\"button\"\r\n class=\"chip\"\r\n [class.selected]=\"isActive(option)\"\r\n (click)=\"toggle(option)\"\r\n >\r\n {{ option.label }}\r\n </button>\r\n }\r\n</div>\r\n", styles: [".chip-container{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.chip{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;padding:.25rem 1rem;background-color:#f8fafc;border:1px solid #cbd5e1;border-radius:999px;color:#64748b;font-family:inherit;font-size:.875rem;font-weight:500;white-space:nowrap;cursor:pointer;transition:all .2s ease-in-out;-webkit-user-select:none;user-select:none}.chip:hover{border-color:#abbbce;color:#4f5b6d}.chip.selected{background-color:#e0f2fe;border-color:#0ea5e9;color:#0b83b9}.chip:focus-visible{outline:2px solid #0ea5e9;outline-offset:2px}\n"] }]
55
+ args: [{ selector: 'kv-chips', standalone: true, imports: [], template: "<div class=\"chip-container\">\r\n @for (option of options(); track option.value) {\r\n <button\r\n type=\"button\"\r\n class=\"chip\"\r\n [class.selected]=\"isActive(option)\"\r\n (click)=\"toggle(option)\"\r\n >\r\n {{ option.label }}\r\n </button>\r\n }\r\n</div>\r\n", styles: [".chip-container{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.chip{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;padding:.25rem 1rem;background-color:#f8fafc;border:1px solid #cbd5e1;border-radius:.5rem;color:#64748b;font-family:inherit;font-size:.875rem;font-weight:500;white-space:nowrap;cursor:pointer;transition:all .2s ease-in-out;-webkit-user-select:none;user-select:none}.chip:hover{border-color:#abbbce;color:#4f5b6d}.chip.selected{background-color:#e0f2fe;border-color:#3b82f6;color:#0b63f3}.chip:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}\n"] }]
56
56
  }] });
57
57
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtY2hpcHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWNoaXBzL2t2LWNoaXBzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1jaGlwcy9rdi1jaGlwcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQWNoRSxNQUFNLE9BQU8sZ0JBQWdCO0lBUDdCO1FBUUUsZ0VBQWdFO1FBQ2hFLFlBQU8sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFnQixDQUFDO1FBRXpDLGlFQUFpRTtRQUNqRSxhQUFRLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBRWpDLGdEQUFnRDtRQUNoRCxrRUFBa0U7UUFDbEUsY0FBUyxHQUFHLEtBQUssQ0FBTSxJQUFJLENBQUMsQ0FBQztRQUU3Qiw2QkFBNkI7UUFDN0Isb0JBQWUsR0FBRyxNQUFNLEVBQU8sQ0FBQztLQXdDakM7SUF0Q0MsTUFBTSxDQUFDLE1BQWtCO1FBQ3ZCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNoQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDakMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUUzQixJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osdUNBQXVDO1lBQ3ZDLElBQUksUUFBUSxHQUFVLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBRWpFLElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUM3QixRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDekQsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxXQUFXO1lBQ25DLENBQUM7WUFDRCxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRWpDLENBQUM7YUFBTSxDQUFDO1lBQ04sNENBQTRDO1lBQzVDLDRFQUE0RTtZQUM1RSxJQUFJLE9BQU8sS0FBSyxLQUFLLEVBQUUsQ0FBQztnQkFDdEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM5QixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxtREFBbUQ7SUFDbkQsUUFBUSxDQUFDLE1BQWtCO1FBQ3pCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO1lBQ3BCLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsRSxDQUFDO1FBQ0QsT0FBTyxPQUFPLEtBQUssTUFBTSxDQUFDLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBRU8sZUFBZSxDQUFDLEdBQVE7UUFDOUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDakMsQ0FBQzs4R0FuRFUsZ0JBQWdCO2tHQUFoQixnQkFBZ0IsaWlCQ2Q3QixvVEFZQTs7MkZERWEsZ0JBQWdCO2tCQVA1QixTQUFTOytCQUNFLFVBQVUsY0FDUixJQUFJLFdBQ1AsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5wdXQsIG1vZGVsLCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ2hpcE9wdGlvbiB7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICB2YWx1ZTogYW55O1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2t2LWNoaXBzJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9rdi1jaGlwcy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL2t2LWNoaXBzLmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgS3ZDaGlwc0NvbXBvbmVudCB7XHJcbiAgLy8gUmVjZWJlIGFzIG9ww6fDtWVzIChleDogW3tsYWJlbDogJ1BvciBmaWxpYWwnLCB2YWx1ZTogMX0sIC4uLl0pXHJcbiAgb3B0aW9ucyA9IGlucHV0LnJlcXVpcmVkPENoaXBPcHRpb25bXT4oKTtcclxuXHJcbiAgLy8gRGVmaW5lIHNlIGFjZWl0YSBtw7psdGlwbG9zIG91IGFwZW5hcyB1bSAocGFkcsOjbzogZmFsc2Uvc2luZ2xlKVxyXG4gIG11bHRpcGxlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cclxuICAvLyBPIHZhbG9yIHNlbGVjaW9uYWRvIChwb2RlIHNlciDDum5pY28gb3UgYXJyYXkpXHJcbiAgLy8gVXNhbW9zICdtb2RlbCcgcGFyYSB0d28td2F5IGJpbmRpbmcgZsOhY2lsIFsoc2VsZWN0aW9uKV09XCJ2YWxvclwiXHJcbiAgc2VsZWN0aW9uID0gbW9kZWw8YW55PihudWxsKTtcclxuXHJcbiAgLy8gRXZlbnRvIG9wY2lvbmFsIGRlIG11ZGFuw6dhXHJcbiAgc2VsZWN0aW9uQ2hhbmdlID0gb3V0cHV0PGFueT4oKTtcclxuXHJcbiAgdG9nZ2xlKG9wdGlvbjogQ2hpcE9wdGlvbikge1xyXG4gICAgY29uc3QgaXNNdWx0aSA9IHRoaXMubXVsdGlwbGUoKTtcclxuICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLnNlbGVjdGlvbigpO1xyXG4gICAgY29uc3QgdmFsdWUgPSBvcHRpb24udmFsdWU7XHJcblxyXG4gICAgaWYgKGlzTXVsdGkpIHtcclxuICAgICAgLy8gTMOzZ2ljYSBwYXJhIE3Dumx0aXBsYSBTZWxlw6fDo28gKEFycmF5KVxyXG4gICAgICBsZXQgbmV3VmFsdWU6IGFueVtdID0gQXJyYXkuaXNBcnJheShjdXJyZW50KSA/IFsuLi5jdXJyZW50XSA6IFtdO1xyXG5cclxuICAgICAgaWYgKG5ld1ZhbHVlLmluY2x1ZGVzKHZhbHVlKSkge1xyXG4gICAgICAgIG5ld1ZhbHVlID0gbmV3VmFsdWUuZmlsdGVyKHYgPT4gdiAhPT0gdmFsdWUpOyAvLyBSZW1vdmVcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBuZXdWYWx1ZS5wdXNoKHZhbHVlKTsgLy8gQWRpY2lvbmFcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnVwZGF0ZVNlbGVjdGlvbihuZXdWYWx1ZSk7XHJcblxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gTMOzZ2ljYSBwYXJhIFNlbGXDp8OjbyDDmm5pY2EgKFZhbG9yIHNpbXBsZXMpXHJcbiAgICAgIC8vIFNlIGNsaWNhciBubyBtZXNtbywgbsOjbyBmYXogbmFkYSAob3UgcG9kZXJpYSBkZXNtYXJjYXIsIGRlcGVuZGUgZGEgcmVncmEpXHJcbiAgICAgIGlmIChjdXJyZW50ICE9PSB2YWx1ZSkge1xyXG4gICAgICAgIHRoaXMudXBkYXRlU2VsZWN0aW9uKHZhbHVlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gVmVyaWZpY2Egc2UgZXN0w6EgYXRpdm8gcGFyYSBhcGxpY2FyIGEgY2xhc3NlIENTU1xyXG4gIGlzQWN0aXZlKG9wdGlvbjogQ2hpcE9wdGlvbik6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgY3VycmVudCA9IHRoaXMuc2VsZWN0aW9uKCk7XHJcbiAgICBpZiAodGhpcy5tdWx0aXBsZSgpKSB7XHJcbiAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KGN1cnJlbnQpICYmIGN1cnJlbnQuaW5jbHVkZXMob3B0aW9uLnZhbHVlKTtcclxuICAgIH1cclxuICAgIHJldHVybiBjdXJyZW50ID09PSBvcHRpb24udmFsdWU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVNlbGVjdGlvbih2YWw6IGFueSkge1xyXG4gICAgdGhpcy5zZWxlY3Rpb24uc2V0KHZhbCk7XHJcbiAgICB0aGlzLnNlbGVjdGlvbkNoYW5nZS5lbWl0KHZhbCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjaGlwLWNvbnRhaW5lclwiPlxyXG4gIEBmb3IgKG9wdGlvbiBvZiBvcHRpb25zKCk7IHRyYWNrIG9wdGlvbi52YWx1ZSkge1xyXG4gICAgPGJ1dHRvblxyXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgY2xhc3M9XCJjaGlwXCJcclxuICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cImlzQWN0aXZlKG9wdGlvbilcIlxyXG4gICAgICAoY2xpY2spPVwidG9nZ2xlKG9wdGlvbilcIlxyXG4gICAgPlxyXG4gICAgICB7eyBvcHRpb24ubGFiZWwgfX1cclxuICAgIDwvYnV0dG9uPlxyXG4gIH1cclxuPC9kaXY+XHJcbiJdfQ==
@@ -97,4 +97,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
97
97
  type: Component,
98
98
  args: [{ standalone: true, selector: 'kv-kanban', imports: [CommonModule, DragDropModule, MenuModule, TooltipModule], template: "<div class=\"flex w-full h-full\">\r\n <div class=\"board-wrapper flex-column lg:flex-row\" cdkDropListGroup>\r\n \r\n @for(config of columnConfigs(); track $index) {\r\n\r\n <div class=\"board-column\" [style.flex]=\"getColumnFlex()\">\r\n \r\n <div class=\"column-header\" [style.backgroundColor]=\"config.corTitulo\">\r\n <span class=\"text-base font-semibold\">{{ config.nome }}</span>\r\n @if(this.showColumnsCounter()) {\r\n <span class=\"column-count-badge px-2 py-1\" [style.color]=\"config.corTitulo\">{{ config.contador | number:'2.0' }}</span>\r\n }\r\n </div>\r\n\r\n <div \r\n class=\"column-content\"\r\n cdkDropList\r\n [id]=\"config.id.toString()\"\r\n [cdkDropListData]=\"getColumnList()(config.id)\"\r\n (cdkDropListDropped)=\"drop($event)\"\r\n (scroll)=\"onScroll($event, config.id)\">\r\n\r\n\r\n @for(item of getColumnList()(config.id); track $index) {\r\n \r\n <div class=\"kanban-card\" cdkDrag [cdkDragDisabled]=\"!enableDrag()\">\r\n\r\n @if(actions().length > 0) {\r\n <span class=\"material-symbols-outlined card-menu-btn text-xl text-black-alpha-50 hover:surface-200 border-round-lg\" (click)=\"openCardMenu($event, item)\">\r\n more_vert\r\n </span>\r\n }\r\n \r\n\r\n @if (item.status && item.status.length > 0) {\r\n <div class=\"card-header mt-1 mr-3 gap-2 overflow-hidden\" \r\n [pTooltip]=\"getStatusTooltip(item.status)\" \r\n tooltipPosition=\"top\">\r\n @for(statusItem of item.status; track $index) {\r\n <span class=\"status-tag font-semibold text-xs border-round-3xl py-1 px-2\" \r\n [style.backgroundColor]=\"statusItem.statusColor\"\r\n [style.color]=\"statusItem.statusLabelColor\">\r\n {{ statusItem.label }}\r\n </span>\r\n }\r\n </div>\r\n }\r\n\r\n <div class=\"card-body overflow-hidden ml-1\">\r\n <p class=\"p-0 m-0 text-sm text-black-alpha-70 font-semibold mb-2 pr-4 white-space-nowrap\" pTooltip=\"{{item.titulo}}\" tooltipPosition=\"top\">\r\n {{ item.titulo }}\r\n </p>\r\n \r\n <ng-container [ngTemplateOutlet]=\"cardTemplate()\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-container>\r\n </div>\r\n\r\n <div *cdkDragPlaceholder class=\"custom-placeholder\"></div>\r\n </div>\r\n }\r\n\r\n </div>\r\n\r\n <div class=\"column-footer text-xs text-black-alpha-80\">\r\n Ver {{ getColumnList()(config.id).length }} de {{ config.contador }}\r\n </div>\r\n\r\n </div>\r\n\r\n }\r\n\r\n </div>\r\n</div>\r\n\r\n<p-menu #sharedMenu [model]=\"currentMenuOptions\" [popup]=\"true\" appendTo=\"body\"></p-menu>", styles: [".board-wrapper{display:flex;flex:1 1 0%;gap:16px;overflow-x:auto;padding:20px;height:100%;min-height:0}.board-column{display:flex;flex-direction:column;background-color:#f0f2f5;border-radius:18px;min-width:280px;overflow:visible;min-height:400px;max-height:600px}@media (min-width: 1024px){.board-column{height:100%;max-height:100%;min-height:0}}.column-header{padding:10px 20px;margin:7px;border-radius:18px;color:#fff;display:flex;justify-content:space-between;align-items:center;font-weight:600;gap:8px}.column-header span:first-child{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.column-header .column-count-badge{background-color:#ffffffe6;border-radius:12px;font-size:.85rem;font-weight:700;flex-shrink:0}.column-content{flex:1 1 0;overflow-y:auto;overflow-x:visible;padding:12px;min-height:0}.column-content::-webkit-scrollbar{width:6px}.column-content::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.kanban-card{background:#fff;border-radius:16px;padding:12px;margin-bottom:8px;box-shadow:0 4px 6px #0000001a;cursor:grab;transition:box-shadow .2s;position:relative}.kanban-card:active{cursor:grabbing}.kanban-card:hover{box-shadow:0 4px 8px #0000001a}.kanban-card.cdk-drag-disabled,.kanban-card.cdk-drag-disabled:active{cursor:default}.card-header{display:flex;margin-bottom:8px;flex-wrap:nowrap}.card-header .status-tag{white-space:nowrap;flex-shrink:0}.card-menu-btn{position:absolute;top:12px;right:8px;cursor:pointer;z-index:10;-webkit-user-select:none;user-select:none}.column-footer{padding:10px;text-align:center}.cdk-drag-preview{box-sizing:border-box;border-radius:8px;box-shadow:0 5px 15px #0003;background:#fff}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.column-content.cdk-drop-list-dragging .kanban-card:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}::ng-deep .p-menu{scale:.8;z-index:1000!important}\n"] }]
99
99
  }] });
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3Yta2FuYmFuLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWthbmJhbi9rdi1rYW5iYW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3Yta2FuYmFuL2t2LWthbmJhbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFlLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRyxPQUFPLEVBQWUsY0FBYyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsVUFBVSxFQUFRLE1BQU0sY0FBYyxDQUFDO0FBRWhELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7O0FBU2hELE1BQU0sT0FBTyxpQkFBaUI7SUFQOUI7UUFTRSxlQUFVLEdBQUcsU0FBUyxDQUFPLFlBQVksQ0FBQyxDQUFDO1FBRTNDLHVCQUFrQixHQUFlLEVBQUUsQ0FBQztRQUNwQyxnQkFBVyxHQUFzQixJQUFJLENBQUM7UUFFdEMsWUFBTyxHQUFHLEtBQUssQ0FBYSxFQUFFLENBQUMsQ0FBQztRQUNoQyxrQkFBYSxHQUFHLEtBQUssQ0FBdUIsRUFBRSxDQUFDLENBQUM7UUFDaEQsZ0JBQVcsR0FBRyxLQUFLLENBQXFCLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLGlCQUFZLEdBQUcsS0FBSyxDQUEwQixJQUFJLENBQUMsQ0FBQztRQUNwRCx1QkFBa0IsR0FBRyxLQUFLLENBQVUsSUFBSSxD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QUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7OEdBdkdVLGlCQUFpQjtrR0FBakIsaUJBQWlCLHlxQ0NmOUIsMmpHQXlFeUYsNDlERDVEN0UsWUFBWSw2UEFBRSxjQUFjLHd0Q0FBRSxVQUFVLGlxQkFBRSxhQUFhOzsyRkFFdEQsaUJBQWlCO2tCQVA3QixTQUFTO2lDQUNJLElBQUksWUFDTixXQUFXLFdBR1osQ0FBQyxZQUFZLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBpbnB1dCwgT25Jbml0LCBvdXRwdXQsIFRlbXBsYXRlUmVmLCB2aWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEthbmJhbkNvbHVtbiwgS2FuYmFuQ2FyZCwgS2FuYmFuQWN0aW9uLCBLYW5iYW5Db2x1bW5Db25maWcsIEthbmJhbkNvbHVtbkxpc3QgfSBmcm9tICcuL2t2LWthbmJhbi1tb2RlbHMubW9kZWwnO1xuaW1wb3J0IHsgQ2RrRHJhZ0Ryb3AsIERyYWdEcm9wTW9kdWxlLCBtb3ZlSXRlbUluQXJyYXksIHRyYW5zZmVyQXJyYXlJdGVtIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWVudU1vZHVsZSwgTWVudSB9IGZyb20gJ3ByaW1lbmcvbWVudSc7XG5pbXBvcnQgeyBNZW51SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Rvb2x0aXAnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdrdi1rYW5iYW4nLFxuICB0ZW1wbGF0ZVVybDogJy4va3Yta2FuYmFuLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4va3Yta2FuYmFuLmNvbXBvbmVudC5zY3NzJ10sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIERyYWdEcm9wTW9kdWxlLCBNZW51TW9kdWxlLCBUb29sdGlwTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBLdkthbmJhbkNvbXBvbmVudCB7XG5cbiAgc2hhcmVkTWVudSA9IHZpZXdDaGlsZDxNZW51Pignc2hhcmVkTWVudScpO1xuXG4gIGN1cnJlbnRNZW51T3B0aW9uczogTWVudUl0ZW1bXSA9IFtdO1xuICBjdXJyZW50Q2FyZDogS2FuYmFuQ2FyZCB8IG51bGwgPSBudWxsO1xuXG4gIGFjdGlvbnMgPSBpbnB1dDxNZW51SXRlbVtdPihbXSk7XG4gIGNvbHVtbkNvbmZpZ3MgPSBpbnB1dDxLYW5iYW5Db2x1bW5Db25maWdbXT4oW10pO1xuICBjb2x1bW5MaXN0cyA9IGlucHV0PEthbmJhbkNvbHVtbkxpc3RbXT4oW10pO1xuICBjYXJkVGVtcGxhdGUgPSBpbnB1dDxUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbD4obnVsbCk7XG4gIHNob3dDb2x1bW5zQ291bnRlciA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuICBlbmFibGVEcmFnID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XG4gIG9uQ2FyZE1vdmVkID0gb3V0cHV0PGFueT4oKTtcbiAgb25BY3Rpb25DbGlja2VkID0gb3V0cHV0PHsgYWN0aW9uOiBzdHJpbmcsIGNhcmQ6IEthbmJhbkNhcmQgfT4oKTtcbiAgb25Mb2FkTW9yZUNhcmRzID0gb3V0cHV0PHsgY29sdW1uSWQ6IG51bWJlciB9PigpO1xuICBvblNlbGVjdGVkQ2FyZCA9IG91dHB1dDxLYW5iYW5DYXJkPigpO1xuXG4gIGdldENvbHVtbkxpc3QgPSBjb21wdXRlZCgoKSA9PiAoY29sdW1uSWQ6IG51bWJlcikgPT4ge1xuICAgIGNvbnN0IGxpc3QgPSB0aGlzLmNvbHVtbkxpc3RzKCkuZmluZChsID0+IGwuaWRDb2x1bmEgPT09IGNvbHVtbklkKTtcbiAgICByZXR1cm4gbGlzdD8ubGlzdGFnZW0gfHwgW10gYXMgS2FuYmFuQ2FyZFtdO1xuICB9KTtcblxuICBkcm9wKGV2ZW50OiBDZGtEcmFnRHJvcDxLYW5iYW5DYXJkW10+KSB7XG4gICAgaWYgKGV2ZW50LnByZXZpb3VzQ29udGFpbmVyID09PSBldmVudC5jb250YWluZXIpIHtcbiAgICAgIG1vdmVJdGVtSW5BcnJheShldmVudC5jb250YWluZXIuZGF0YSwgZXZlbnQucHJldmlvdXNJbmRleCwgZXZlbnQuY3VycmVudEluZGV4KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdHJhbnNmZXJBcnJheUl0ZW0oXG4gICAgICAgIGV2ZW50LnByZXZpb3VzQ29udGFpbmVyLmRhdGEsXG4gICAgICAgIGV2ZW50LmNvbnRhaW5lci5kYXRhLFxuICAgICAgICBldmVudC5wcmV2aW91c0luZGV4LFxuICAgICAgICBldmVudC5jdXJyZW50SW5kZXgsXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IG1vdmVkQ2FyZCA9IGV2ZW50LmNvbnRhaW5lci5kYXRhW2V2ZW50LmN1cnJlbnRJbmRleF07XG4gICAgXG4gICAgdGhpcy5vbkNhcmRNb3ZlZC5lbWl0KHtcbiAgICAgIGl0ZW06IG1vdmVkQ2FyZCxcbiAgICAgIGZyb21Db2x1bW5JZDogZXZlbnQucHJldmlvdXNDb250YWluZXIuaWQsXG4gICAgICB0b0NvbHVtbklkOiBldmVudC5jb250YWluZXIuaWRcbiAgICB9KTtcbiAgICBcbiAgICB0aGlzLm9uU2VsZWN0ZWRDYXJkLmVtaXQobW92ZWRDYXJkKTtcbiAgfVxuXG4gIG9uQWN0aW9uQ2xpY2soYWN0aW9uQ29kZTogc3RyaW5nLCBjYXJkOiBLYW5iYW5DYXJkKSB7XG4gICAgdGhpcy5vbkFjdGlvbkNsaWNrZWQuZW1pdCh7IGFjdGlvbjogYWN0aW9uQ29kZSwgY2FyZCB9KTtcbiAgICBcbiAgICB0aGlzLm9uU2VsZWN0ZWRDYXJkLmVtaXQoY2FyZCk7XG4gIH1cblxuICBvcGVuQ2FyZE1lbnUoZXZlbnQ6IE1vdXNlRXZlbnQsIGl0ZW06IGFueSkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgdGhpcy5jdXJyZW50Q2FyZCA9IGl0ZW07XG4gICAgdGhpcy5jdXJyZW50TWVudU9wdGlvbnMgPSB0aGlzLmdldEFjdGlvbnNGb3JDYXJkKGl0ZW0pO1xuXG4gICAgdGhpcy5vblNlbGVjdGVkQ2FyZC5lbWl0KGl0ZW0pO1xuICAgIFxuICAgIHRoaXMuc2hhcmVkTWVudSgpPy50b2dnbGUoZXZlbnQpO1xuICB9XG5cbiAgb25TY3JvbGwoZXZlbnQ6IEV2ZW50LCBjb2x1bW5JZDogbnVtYmVyKSB7XG4gICAgY29uc3QgZWxlbWVudCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcbiAgICBjb25zdCB0aHJlc2hvbGQgPSA1MDtcbiAgICBjb25zdCBhdEJvdHRvbSA9IGVsZW1lbnQuc2Nyb2xsSGVpZ2h0IC0gZWxlbWVudC5zY3JvbGxUb3AgLSBlbGVtZW50LmNsaWVudEhlaWdodCA8IHRocmVzaG9sZDtcbiAgICBcbiAgICBpZiAoYXRCb3R0b20pIHtcbiAgICAgIHRoaXMub25Mb2FkTW9yZUNhcmRzLmVtaXQoeyBjb2x1bW5JZCB9KTtcbiAgICB9XG4gIH1cblxuICBnZXRDb2x1bW5Ub3RhbEl0ZW1zKGNvbHVtbklkOiBudW1iZXIpOiBudW1iZXIge1xuICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuY29sdW1uQ29uZmlncygpLmZpbmQoYyA9PiBjLmlkID09PSBjb2x1bW5JZCk7XG4gICAgcmV0dXJuIGNvbmZpZz8uY29udGFkb3IgfHwgMDtcbiAgfVxuXG4gIGdldEFjdGlvbnNGb3JDYXJkKGNhcmQ6IEthbmJhbkNhcmQpOiBNZW51SXRlbVtdIHtcbiAgICByZXR1cm4gdGhpcy5hY3Rpb25zKCkubWFwKGFjdGlvbiA9PiAoe1xuICAgICAgLi4uYWN0aW9uLFxuICAgICAgY29tbWFuZDogKGV2ZW50PzogYW55KSA9PiB7XG4gICAgICAgIGlmIChhY3Rpb24uY29tbWFuZCkge1xuICAgICAgICAgIGFjdGlvbi5jb21tYW5kKGV2ZW50KTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaWYgKGFjdGlvbi5sYWJlbCAmJiB0aGlzLmN1cnJlbnRDYXJkKSB7XG4gICAgICAgICAgdGhpcy5vbkFjdGlvbkNsaWNrKGFjdGlvbi5sYWJlbCwgdGhpcy5jdXJyZW50Q2FyZCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KSk7XG4gIH1cblxuICBnZXRDb2x1bW5GbGV4KCk6IHN0cmluZyB7XG4gICAgY29uc3QgdG90YWxDb2x1bW5zID0gdGhpcy5jb2x1bW5Db25maWdzKCkubGVuZ3RoO1xuICAgIGlmICh0b3RhbENvbHVtbnMgPT09IDApIHJldHVybiAnMSAxIDI4MHB4JztcbiAgICBcbiAgICByZXR1cm4gYDEgMSBjYWxjKCgxMDAlIC0gJHsodG90YWxDb2x1bW5zIC0gMSkgKiAxNn1weCkgLyAke3RvdGFsQ29sdW1uc30pYDtcbiAgfVxuXG4gIGdldFN0YXR1c1Rvb2x0aXAoc3RhdHVzOiBhbnlbXSk6IHN0cmluZyB7XG4gICAgaWYgKCFzdGF0dXMgfHwgc3RhdHVzLmxlbmd0aCA9PT0gMCkgcmV0dXJuICcnO1xuICAgIHJldHVybiBzdGF0dXMubWFwKHMgPT4gcy5sYWJlbCkuam9pbignLCAnKTtcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwiZmxleCB3LWZ1bGwgaC1mdWxsXCI+XHJcbiAgPGRpdiBjbGFzcz1cImJvYXJkLXdyYXBwZXIgZmxleC1jb2x1bW4gbGc6ZmxleC1yb3dcIiBjZGtEcm9wTGlzdEdyb3VwPlxyXG4gICAgXHJcbiAgICBAZm9yKGNvbmZpZyBvZiBjb2x1bW5Db25maWdzKCk7IHRyYWNrICRpbmRleCkge1xyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImJvYXJkLWNvbHVtblwiIFtzdHlsZS5mbGV4XT1cImdldENvbHVtbkZsZXgoKVwiPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW4taGVhZGVyXCIgW3N0eWxlLmJhY2tncm91bmRDb2xvcl09XCJjb25maWcuY29yVGl0dWxvXCI+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtYmFzZSBmb250LXNlbWlib2xkXCI+e3sgY29uZmlnLm5vbWUgfX08L3NwYW4+XHJcbiAgICAgICAgICBAaWYodGhpcy5zaG93Q29sdW1uc0NvdW50ZXIoKSkge1xyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNvbHVtbi1jb3VudC1iYWRnZSBweC0yIHB5LTFcIiBbc3R5bGUuY29sb3JdPVwiY29uZmlnLmNvclRpdHVsb1wiPnt7IGNvbmZpZy5jb250YWRvciB8IG51bWJlcjonMi4wJyB9fTwvc3Bhbj5cclxuICAgICAgICAgIH1cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBcclxuICAgICAgICAgIGNsYXNzPVwiY29sdW1uLWNvbnRlbnRcIlxyXG4gICAgICAgICAgY2RrRHJvcExpc3RcclxuICAgICAgICAgIFtpZF09XCJjb25maWcuaWQudG9TdHJpbmcoKVwiXHJcbiAgICAgICAgICBbY2RrRHJvcExpc3REYXRhXT1cImdldENvbHVtbkxpc3QoKShjb25maWcuaWQpXCJcclxuICAgICAgICAgIChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJvcCgkZXZlbnQpXCJcclxuICAgICAgICAgIChzY3JvbGwpPVwib25TY3JvbGwoJGV2ZW50LCBjb25maWcuaWQpXCI+XHJcblxyXG5cclxuICAgICAgICAgIEBmb3IoaXRlbSBvZiBnZXRDb2x1bW5MaXN0KCkoY29uZmlnLmlkKTsgdHJhY2sgJGluZGV4KSB7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwia2FuYmFuLWNhcmRcIiBjZGtEcmFnIFtjZGtEcmFnRGlzYWJsZWRdPVwiIWVuYWJsZURyYWcoKVwiPlxyXG5cclxuICAgICAgICAgICAgICBAaWYoYWN0aW9ucygpLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBjYXJkLW1lbnUtYnRuIHRleHQteGwgdGV4dC1ibGFjay1hbHBoYS01MCBob3ZlcjpzdXJmYWNlLTIwMCBib3JkZXItcm91bmQtbGdcIiAoY2xpY2spPVwib3BlbkNhcmRNZW51KCRldmVudCwgaXRlbSlcIj5cclxuICAgICAgICAgICAgICAgICAgbW9yZV92ZXJ0XHJcbiAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIFxyXG5cclxuICAgICAgICAgICAgICBAaWYgKGl0ZW0uc3RhdHVzICYmIGl0ZW0uc3RhdHVzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBtdC0xIG1yLTMgZ2FwLTIgb3ZlcmZsb3ctaGlkZGVuXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgIFtwVG9vbHRpcF09XCJnZXRTdGF0dXNUb29sdGlwKGl0ZW0uc3RhdHVzKVwiIFxyXG4gICAgICAgICAgICAgICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3BcIj5cclxuICAgICAgICAgICAgICAgICAgQGZvcihzdGF0dXNJdGVtIG9mIGl0ZW0uc3RhdHVzOyB0cmFjayAkaW5kZXgpIHtcclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN0YXR1cy10YWcgZm9udC1zZW1pYm9sZCB0ZXh0LXhzIGJvcmRlci1yb3VuZC0zeGwgcHktMSBweC0yXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmJhY2tncm91bmRDb2xvcl09XCJzdGF0dXNJdGVtLnN0YXR1c0NvbG9yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGUuY29sb3JdPVwic3RhdHVzSXRlbS5zdGF0dXNMYWJlbENvbG9yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICB7eyBzdGF0dXNJdGVtLmxhYmVsIH19XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgb3ZlcmZsb3ctaGlkZGVuIG1sLTFcIj5cclxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwicC0wIG0tMCB0ZXh0LXNtIHRleHQtYmxhY2stYWxwaGEtNzAgZm9udC1zZW1pYm9sZCBtYi0yIHByLTQgd2hpdGUtc3BhY2Utbm93cmFwXCIgcFRvb2x0aXA9XCJ7e2l0ZW0udGl0dWxvfX1cIiB0b29sdGlwUG9zaXRpb249XCJ0b3BcIj5cclxuICAgICAgICAgICAgICAgICAge3sgaXRlbS50aXR1bG8gfX1cclxuICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjYXJkVGVtcGxhdGUoKVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogaXRlbSB9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgIDxkaXYgKmNka0RyYWdQbGFjZWhvbGRlciBjbGFzcz1cImN1c3RvbS1wbGFjZWhvbGRlclwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW4tZm9vdGVyIHRleHQteHMgdGV4dC1ibGFjay1hbHBoYS04MFwiPlxyXG4gICAgICAgICAgVmVyIHt7IGdldENvbHVtbkxpc3QoKShjb25maWcuaWQpLmxlbmd0aCB9fSBkZSB7eyBjb25maWcuY29udGFkb3IgfX1cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgIH1cclxuXHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPHAtbWVudSAjc2hhcmVkTWVudSBbbW9kZWxdPVwiY3VycmVudE1lbnVPcHRpb25zXCIgW3BvcHVwXT1cInRydWVcIiBhcHBlbmRUbz1cImJvZHlcIj48L3AtbWVudT4iXX0=
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3Yta2FuYmFuLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWthbmJhbi9rdi1rYW5iYW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3Yta2FuYmFuL2t2LWthbmJhbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFlLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRyxPQUFPLEVBQWUsY0FBYyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsVUFBVSxFQUFRLE1BQU0sY0FBYyxDQUFDO0FBRWhELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7O0FBU2hELE1BQU0sT0FBTyxpQkFBaUI7SUFQOUI7UUFTRSxlQUFVLEdBQUcsU0FBUyxDQUFPLFlBQVksQ0FBQyxDQUFDO1FBRTNDLHVCQUFrQixHQUFlLEVBQUUsQ0FBQztRQUNwQyxnQkFBVyxHQUFzQixJQUFJLENBQUM7UUFFdEMsWUFBTyxHQUFHLEtBQUssQ0FBYSxFQUFFLENBQUMsQ0FBQztRQUNoQyxrQkFBYSxHQUFHLEtBQUssQ0FBdUIsRUFBRSxDQUFDLENBQUM7UUFDaEQsZ0JBQVcsR0FBRyxLQUFLLENBQXFCLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLGlCQUFZLEdBQUcsS0FBSyxDQUEwQixJQUFJLENBQUMsQ0FBQztRQUNwRCx1QkFBa0IsR0FBRyxLQUFLLENBQVUsSUFBSSxDQUFDLENBQUM7UUFDMUMsZUFBVSxHQUFHLEtBQUssQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUNsQyxnQkFBVyxHQUFHLE1BQU0sRUFBTyxDQUFDO1FBQzVCLG9CQUFlLEdBQUcsTUFBTSxFQUF3QyxDQUFDO1FBQ2pFLG9CQUFlLEdBQUcsTUFBTSxFQUF3QixDQUFDO1FBQ2pELG1CQUFjLEdBQUcsTUFBTSxFQUFjLENBQUM7UUFFdEMsa0JBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxRQUFnQixFQUFFLEVBQUU7WUFDbEQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEtBQUssUUFBUSxDQUFDLENBQUM7WUFDbkUsT0FBTyxJQUFJLEVBQUUsUUFBUSxJQUFJLEVBQWtCLENBQUM7UUFDOUMsQ0FBQyxDQUFDLENBQUM7S0FvRko7SUFsRkMsSUFBSSxDQUFDLEtBQWdDO1FBQ25DLElBQUksS0FBSyxDQUFDLGlCQUFpQixLQUFLLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNoRCxlQUFlLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDakYsQ0FBQzthQUFNLENBQUM7WUFDTixpQkFBaUIsQ0FDZixLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUM1QixLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksRUFDcEIsS0FBSyxDQUFDLGFBQWEsRUFDbkIsS0FBSyxDQUFDLFlBQVksQ0FDbkIsQ0FBQztRQUNKLENBQUM7UUFFRCxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFM0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7WUFDcEIsSUFBSSxFQUFFLFNBQVM7WUFDZixZQUFZLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLEVBQUU7WUFDeEMsVUFBVSxFQUFFLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBRTtTQUMvQixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsYUFBYSxDQUFDLFVBQWtCLEVBQUUsSUFBZ0I7UUFDaEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFeEQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUFpQixFQUFFLElBQVM7UUFDdkMsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXhCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFdkQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFL0IsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQVksRUFBRSxRQUFnQjtRQUNyQyxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsTUFBcUIsQ0FBQztRQUM1QyxNQUFNLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDckIsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxZQUFZLEdBQUcsU0FBUyxDQUFDO1FBRTdGLElBQUksUUFBUSxFQUFFLENBQUM7WUFDYixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDMUMsQ0FBQztJQUNILENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxRQUFnQjtRQUNsQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxRQUFRLENBQUMsQ0FBQztRQUNqRSxPQUFPLE1BQU0sRUFBRSxRQUFRLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxJQUFnQjtRQUNoQyxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ25DLEdBQUcsTUFBTTtZQUNULE9BQU8sRUFBRSxDQUFDLEtBQVcsRUFBRSxFQUFFO2dCQUN2QixJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFDbkIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDeEIsQ0FBQztnQkFFRCxJQUFJLE1BQU0sQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO29CQUNyQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUNyRCxDQUFDO1lBQ0gsQ0FBQztTQUNGLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUVELGFBQWE7UUFDWCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsTUFBTSxDQUFDO1FBQ2pELElBQUksWUFBWSxLQUFLLENBQUM7WUFBRSxPQUFPLFdBQVcsQ0FBQztRQUUzQyxPQUFPLG9CQUFvQixDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLFNBQVMsWUFBWSxHQUFHLENBQUM7SUFDN0UsQ0FBQztJQUVELGdCQUFnQixDQUFDLE1BQWE7UUFDNUIsSUFBSSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUM7WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUM5QyxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7OEdBdkdVLGlCQUFpQjtrR0FBakIsaUJBQWlCLHlxQ0NmOUIsMmpHQXlFeUYsNDlERDVEN0UsWUFBWSw2UEFBRSxjQUFjLHd0Q0FBRSxVQUFVLGlxQkFBRSxhQUFhOzsyRkFFdEQsaUJBQWlCO2tCQVA3QixTQUFTO2lDQUNJLElBQUksWUFDTixXQUFXLFdBR1osQ0FBQyxZQUFZLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBpbnB1dCwgT25Jbml0LCBvdXRwdXQsIFRlbXBsYXRlUmVmLCB2aWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgS2FuYmFuQ29sdW1uLCBLYW5iYW5DYXJkLCBLYW5iYW5BY3Rpb24sIEthbmJhbkNvbHVtbkNvbmZpZywgS2FuYmFuQ29sdW1uTGlzdCB9IGZyb20gJy4va3Yta2FuYmFuLW1vZGVscy5tb2RlbCc7XHJcbmltcG9ydCB7IENka0RyYWdEcm9wLCBEcmFnRHJvcE1vZHVsZSwgbW92ZUl0ZW1JbkFycmF5LCB0cmFuc2ZlckFycmF5SXRlbSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBNZW51TW9kdWxlLCBNZW51IH0gZnJvbSAncHJpbWVuZy9tZW51JztcclxuaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Rvb2x0aXAnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBzZWxlY3RvcjogJ2t2LWthbmJhbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2t2LWthbmJhbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4va3Yta2FuYmFuLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRHJhZ0Ryb3BNb2R1bGUsIE1lbnVNb2R1bGUsIFRvb2x0aXBNb2R1bGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBLdkthbmJhbkNvbXBvbmVudCB7XHJcblxyXG4gIHNoYXJlZE1lbnUgPSB2aWV3Q2hpbGQ8TWVudT4oJ3NoYXJlZE1lbnUnKTtcclxuXHJcbiAgY3VycmVudE1lbnVPcHRpb25zOiBNZW51SXRlbVtdID0gW107XHJcbiAgY3VycmVudENhcmQ6IEthbmJhbkNhcmQgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgYWN0aW9ucyA9IGlucHV0PE1lbnVJdGVtW10+KFtdKTtcclxuICBjb2x1bW5Db25maWdzID0gaW5wdXQ8S2FuYmFuQ29sdW1uQ29uZmlnW10+KFtdKTtcclxuICBjb2x1bW5MaXN0cyA9IGlucHV0PEthbmJhbkNvbHVtbkxpc3RbXT4oW10pO1xyXG4gIGNhcmRUZW1wbGF0ZSA9IGlucHV0PFRlbXBsYXRlUmVmPGFueT4gfCBudWxsPihudWxsKTtcclxuICBzaG93Q29sdW1uc0NvdW50ZXIgPSBpbnB1dDxib29sZWFuPih0cnVlKTtcclxuICBlbmFibGVEcmFnID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XHJcbiAgb25DYXJkTW92ZWQgPSBvdXRwdXQ8YW55PigpO1xyXG4gIG9uQWN0aW9uQ2xpY2tlZCA9IG91dHB1dDx7IGFjdGlvbjogc3RyaW5nLCBjYXJkOiBLYW5iYW5DYXJkIH0+KCk7XHJcbiAgb25Mb2FkTW9yZUNhcmRzID0gb3V0cHV0PHsgY29sdW1uSWQ6IG51bWJlciB9PigpO1xyXG4gIG9uU2VsZWN0ZWRDYXJkID0gb3V0cHV0PEthbmJhbkNhcmQ+KCk7XHJcblxyXG4gIGdldENvbHVtbkxpc3QgPSBjb21wdXRlZCgoKSA9PiAoY29sdW1uSWQ6IG51bWJlcikgPT4ge1xyXG4gICAgY29uc3QgbGlzdCA9IHRoaXMuY29sdW1uTGlzdHMoKS5maW5kKGwgPT4gbC5pZENvbHVuYSA9PT0gY29sdW1uSWQpO1xyXG4gICAgcmV0dXJuIGxpc3Q/Lmxpc3RhZ2VtIHx8IFtdIGFzIEthbmJhbkNhcmRbXTtcclxuICB9KTtcclxuXHJcbiAgZHJvcChldmVudDogQ2RrRHJhZ0Ryb3A8S2FuYmFuQ2FyZFtdPikge1xyXG4gICAgaWYgKGV2ZW50LnByZXZpb3VzQ29udGFpbmVyID09PSBldmVudC5jb250YWluZXIpIHtcclxuICAgICAgbW92ZUl0ZW1JbkFycmF5KGV2ZW50LmNvbnRhaW5lci5kYXRhLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdHJhbnNmZXJBcnJheUl0ZW0oXHJcbiAgICAgICAgZXZlbnQucHJldmlvdXNDb250YWluZXIuZGF0YSxcclxuICAgICAgICBldmVudC5jb250YWluZXIuZGF0YSxcclxuICAgICAgICBldmVudC5wcmV2aW91c0luZGV4LFxyXG4gICAgICAgIGV2ZW50LmN1cnJlbnRJbmRleCxcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBtb3ZlZENhcmQgPSBldmVudC5jb250YWluZXIuZGF0YVtldmVudC5jdXJyZW50SW5kZXhdO1xyXG4gICAgXHJcbiAgICB0aGlzLm9uQ2FyZE1vdmVkLmVtaXQoe1xyXG4gICAgICBpdGVtOiBtb3ZlZENhcmQsXHJcbiAgICAgIGZyb21Db2x1bW5JZDogZXZlbnQucHJldmlvdXNDb250YWluZXIuaWQsXHJcbiAgICAgIHRvQ29sdW1uSWQ6IGV2ZW50LmNvbnRhaW5lci5pZFxyXG4gICAgfSk7XHJcbiAgICBcclxuICAgIHRoaXMub25TZWxlY3RlZENhcmQuZW1pdChtb3ZlZENhcmQpO1xyXG4gIH1cclxuXHJcbiAgb25BY3Rpb25DbGljayhhY3Rpb25Db2RlOiBzdHJpbmcsIGNhcmQ6IEthbmJhbkNhcmQpIHtcclxuICAgIHRoaXMub25BY3Rpb25DbGlja2VkLmVtaXQoeyBhY3Rpb246IGFjdGlvbkNvZGUsIGNhcmQgfSk7XHJcbiAgICBcclxuICAgIHRoaXMub25TZWxlY3RlZENhcmQuZW1pdChjYXJkKTtcclxuICB9XHJcblxyXG4gIG9wZW5DYXJkTWVudShldmVudDogTW91c2VFdmVudCwgaXRlbTogYW55KSB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuXHJcbiAgICB0aGlzLmN1cnJlbnRDYXJkID0gaXRlbTtcclxuICAgIHRoaXMuY3VycmVudE1lbnVPcHRpb25zID0gdGhpcy5nZXRBY3Rpb25zRm9yQ2FyZChpdGVtKTtcclxuXHJcbiAgICB0aGlzLm9uU2VsZWN0ZWRDYXJkLmVtaXQoaXRlbSk7XHJcbiAgICBcclxuICAgIHRoaXMuc2hhcmVkTWVudSgpPy50b2dnbGUoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgb25TY3JvbGwoZXZlbnQ6IEV2ZW50LCBjb2x1bW5JZDogbnVtYmVyKSB7XHJcbiAgICBjb25zdCBlbGVtZW50ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgY29uc3QgdGhyZXNob2xkID0gNTA7XHJcbiAgICBjb25zdCBhdEJvdHRvbSA9IGVsZW1lbnQuc2Nyb2xsSGVpZ2h0IC0gZWxlbWVudC5zY3JvbGxUb3AgLSBlbGVtZW50LmNsaWVudEhlaWdodCA8IHRocmVzaG9sZDtcclxuICAgIFxyXG4gICAgaWYgKGF0Qm90dG9tKSB7XHJcbiAgICAgIHRoaXMub25Mb2FkTW9yZUNhcmRzLmVtaXQoeyBjb2x1bW5JZCB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldENvbHVtblRvdGFsSXRlbXMoY29sdW1uSWQ6IG51bWJlcik6IG51bWJlciB7XHJcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmNvbHVtbkNvbmZpZ3MoKS5maW5kKGMgPT4gYy5pZCA9PT0gY29sdW1uSWQpO1xyXG4gICAgcmV0dXJuIGNvbmZpZz8uY29udGFkb3IgfHwgMDtcclxuICB9XHJcblxyXG4gIGdldEFjdGlvbnNGb3JDYXJkKGNhcmQ6IEthbmJhbkNhcmQpOiBNZW51SXRlbVtdIHtcclxuICAgIHJldHVybiB0aGlzLmFjdGlvbnMoKS5tYXAoYWN0aW9uID0+ICh7XHJcbiAgICAgIC4uLmFjdGlvbixcclxuICAgICAgY29tbWFuZDogKGV2ZW50PzogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKGFjdGlvbi5jb21tYW5kKSB7XHJcbiAgICAgICAgICBhY3Rpb24uY29tbWFuZChldmVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIGlmIChhY3Rpb24ubGFiZWwgJiYgdGhpcy5jdXJyZW50Q2FyZCkge1xyXG4gICAgICAgICAgdGhpcy5vbkFjdGlvbkNsaWNrKGFjdGlvbi5sYWJlbCwgdGhpcy5jdXJyZW50Q2FyZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICBnZXRDb2x1bW5GbGV4KCk6IHN0cmluZyB7XHJcbiAgICBjb25zdCB0b3RhbENvbHVtbnMgPSB0aGlzLmNvbHVtbkNvbmZpZ3MoKS5sZW5ndGg7XHJcbiAgICBpZiAodG90YWxDb2x1bW5zID09PSAwKSByZXR1cm4gJzEgMSAyODBweCc7XHJcbiAgICBcclxuICAgIHJldHVybiBgMSAxIGNhbGMoKDEwMCUgLSAkeyh0b3RhbENvbHVtbnMgLSAxKSAqIDE2fXB4KSAvICR7dG90YWxDb2x1bW5zfSlgO1xyXG4gIH1cclxuXHJcbiAgZ2V0U3RhdHVzVG9vbHRpcChzdGF0dXM6IGFueVtdKTogc3RyaW5nIHtcclxuICAgIGlmICghc3RhdHVzIHx8IHN0YXR1cy5sZW5ndGggPT09IDApIHJldHVybiAnJztcclxuICAgIHJldHVybiBzdGF0dXMubWFwKHMgPT4gcy5sYWJlbCkuam9pbignLCAnKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJmbGV4IHctZnVsbCBoLWZ1bGxcIj5cclxuICA8ZGl2IGNsYXNzPVwiYm9hcmQtd3JhcHBlciBmbGV4LWNvbHVtbiBsZzpmbGV4LXJvd1wiIGNka0Ryb3BMaXN0R3JvdXA+XHJcbiAgICBcclxuICAgIEBmb3IoY29uZmlnIG9mIGNvbHVtbkNvbmZpZ3MoKTsgdHJhY2sgJGluZGV4KSB7XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiYm9hcmQtY29sdW1uXCIgW3N0eWxlLmZsZXhdPVwiZ2V0Q29sdW1uRmxleCgpXCI+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbi1oZWFkZXJcIiBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cImNvbmZpZy5jb3JUaXR1bG9cIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1iYXNlIGZvbnQtc2VtaWJvbGRcIj57eyBjb25maWcubm9tZSB9fTwvc3Bhbj5cclxuICAgICAgICAgIEBpZih0aGlzLnNob3dDb2x1bW5zQ291bnRlcigpKSB7XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY29sdW1uLWNvdW50LWJhZGdlIHB4LTIgcHktMVwiIFtzdHlsZS5jb2xvcl09XCJjb25maWcuY29yVGl0dWxvXCI+e3sgY29uZmlnLmNvbnRhZG9yIHwgbnVtYmVyOicyLjAnIH19PC9zcGFuPlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IFxyXG4gICAgICAgICAgY2xhc3M9XCJjb2x1bW4tY29udGVudFwiXHJcbiAgICAgICAgICBjZGtEcm9wTGlzdFxyXG4gICAgICAgICAgW2lkXT1cImNvbmZpZy5pZC50b1N0cmluZygpXCJcclxuICAgICAgICAgIFtjZGtEcm9wTGlzdERhdGFdPVwiZ2V0Q29sdW1uTGlzdCgpKGNvbmZpZy5pZClcIlxyXG4gICAgICAgICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcm9wKCRldmVudClcIlxyXG4gICAgICAgICAgKHNjcm9sbCk9XCJvblNjcm9sbCgkZXZlbnQsIGNvbmZpZy5pZClcIj5cclxuXHJcblxyXG4gICAgICAgICAgQGZvcihpdGVtIG9mIGdldENvbHVtbkxpc3QoKShjb25maWcuaWQpOyB0cmFjayAkaW5kZXgpIHtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJrYW5iYW4tY2FyZFwiIGNka0RyYWcgW2Nka0RyYWdEaXNhYmxlZF09XCIhZW5hYmxlRHJhZygpXCI+XHJcblxyXG4gICAgICAgICAgICAgIEBpZihhY3Rpb25zKCkubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIGNhcmQtbWVudS1idG4gdGV4dC14bCB0ZXh0LWJsYWNrLWFscGhhLTUwIGhvdmVyOnN1cmZhY2UtMjAwIGJvcmRlci1yb3VuZC1sZ1wiIChjbGljayk9XCJvcGVuQ2FyZE1lbnUoJGV2ZW50LCBpdGVtKVwiPlxyXG4gICAgICAgICAgICAgICAgICBtb3JlX3ZlcnRcclxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgXHJcblxyXG4gICAgICAgICAgICAgIEBpZiAoaXRlbS5zdGF0dXMgJiYgaXRlbS5zdGF0dXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIG10LTEgbXItMyBnYXAtMiBvdmVyZmxvdy1oaWRkZW5cIiBcclxuICAgICAgICAgICAgICAgICAgICAgW3BUb29sdGlwXT1cImdldFN0YXR1c1Rvb2x0aXAoaXRlbS5zdGF0dXMpXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiPlxyXG4gICAgICAgICAgICAgICAgICBAZm9yKHN0YXR1c0l0ZW0gb2YgaXRlbS5zdGF0dXM7IHRyYWNrICRpbmRleCkge1xyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3RhdHVzLXRhZyBmb250LXNlbWlib2xkIHRleHQteHMgYm9yZGVyLXJvdW5kLTN4bCBweS0xIHB4LTJcIiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cInN0YXR1c0l0ZW0uc3RhdHVzQ29sb3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJzdGF0dXNJdGVtLnN0YXR1c0xhYmVsQ29sb3JcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIHt7IHN0YXR1c0l0ZW0ubGFiZWwgfX1cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBvdmVyZmxvdy1oaWRkZW4gbWwtMVwiPlxyXG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJwLTAgbS0wIHRleHQtc20gdGV4dC1ibGFjay1hbHBoYS03MCBmb250LXNlbWlib2xkIG1iLTIgcHItNCB3aGl0ZS1zcGFjZS1ub3dyYXBcIiBwVG9vbHRpcD1cInt7aXRlbS50aXR1bG99fVwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiPlxyXG4gICAgICAgICAgICAgICAgICB7eyBpdGVtLnRpdHVsbyB9fVxyXG4gICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNhcmRUZW1wbGF0ZSgpXCIgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiAqY2RrRHJhZ1BsYWNlaG9sZGVyIGNsYXNzPVwiY3VzdG9tLXBsYWNlaG9sZGVyXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbi1mb290ZXIgdGV4dC14cyB0ZXh0LWJsYWNrLWFscGhhLTgwXCI+XHJcbiAgICAgICAgICBWZXIge3sgZ2V0Q29sdW1uTGlzdCgpKGNvbmZpZy5pZCkubGVuZ3RoIH19IGRlIHt7IGNvbmZpZy5jb250YWRvciB9fVxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgfVxyXG5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48cC1tZW51ICNzaGFyZWRNZW51IFttb2RlbF09XCJjdXJyZW50TWVudU9wdGlvbnNcIiBbcG9wdXBdPVwidHJ1ZVwiIGFwcGVuZFRvPVwiYm9keVwiPjwvcC1tZW51PiJdfQ==
@@ -11,10 +11,10 @@ export class KvSelectCardsComponent {
11
11
  this.selection.set(option.value);
12
12
  }
13
13
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvSelectCardsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvSelectCardsComponent, isStandalone: true, selector: "kv-select-cards", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: true, transformFunction: null }, selection: { classPropertyName: "selection", publicName: "selection", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selection: "selectionChange" }, ngImport: i0, template: "<div class=\"cards-container\">\r\n @for (option of options(); track option.value) {\r\n <div\r\n class=\"card-option\"\r\n [class.selected]=\"selection() === option.value\"\r\n (click)=\"select(option)\"\r\n >\r\n <div class=\"icon-box\">\r\n <span class=\"material-symbols-outlined\">{{ option.icon }}</span>\r\n </div>\r\n\r\n <div class=\"content\">\r\n <div class=\"title\">{{ option.title }}</div>\r\n <div class=\"description\">{{ option.description }}</div>\r\n </div>\r\n\r\n <div class=\"radio-indicator\">\r\n <div class=\"dot\"></div>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n", styles: [".cards-container{display:flex;flex-direction:column;gap:1rem;width:100%}.card-option{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;cursor:pointer;transition:all .2s ease-in-out;-webkit-user-select:none;user-select:none}.card-option:hover{border-color:#b0c0d6;background:#f8fafc}.card-option.selected{background:#f0f9ff;border-color:#0ea5e9;box-shadow:0 4px 6px -1px #0ea5e91a}.card-option.selected .icon-box{background:#0ea5e91a;color:#0ea5e9}.card-option.selected .title{color:#0284c7}.card-option.selected .radio-indicator{border-color:#0ea5e9;background:#fff}.card-option.selected .radio-indicator .dot{transform:scale(1);background:#0ea5e9}.icon-box{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:.5rem;background:#f1f5f9;color:#64748b;flex-shrink:0;transition:all .2s}.icon-box span{font-size:1.5rem}.content{flex:1;display:flex;flex-direction:column;gap:.25rem}.title{font-size:.95rem;font-weight:700;color:#0f172a;transition:color .2s}.description{font-size:.8rem;color:#64748b;line-height:1.4}.radio-indicator{width:1.25rem;height:1.25rem;border-radius:50%;border:2px solid #e2e8f0;display:flex;align-items:center;justify-content:center;transition:all .2s;background:#fff}.radio-indicator .dot{width:.625rem;height:.625rem;border-radius:50%;background:transparent;transform:scale(0);transition:transform .2s cubic-bezier(.4,0,.2,1)}\n"] }); }
14
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvSelectCardsComponent, isStandalone: true, selector: "kv-select-cards", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: true, transformFunction: null }, selection: { classPropertyName: "selection", publicName: "selection", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selection: "selectionChange" }, ngImport: i0, template: "<div class=\"cards-container\">\r\n @for (option of options(); track option.value) {\r\n <div\r\n class=\"card-option\"\r\n [class.selected]=\"selection() === option.value\"\r\n (click)=\"select(option)\"\r\n >\r\n <div class=\"icon-box\">\r\n <span class=\"material-symbols-outlined\">{{ option.icon }}</span>\r\n </div>\r\n\r\n <div class=\"content\">\r\n <div class=\"title\">{{ option.title }}</div>\r\n <div class=\"description\">{{ option.description }}</div>\r\n </div>\r\n\r\n <div class=\"radio-indicator\">\r\n <div class=\"dot\"></div>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n", styles: [".cards-container{display:flex;flex-direction:column;gap:1rem;width:100%}.card-option{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;cursor:pointer;transition:all .2s ease-in-out;-webkit-user-select:none;user-select:none}.card-option:hover{border-color:#b0c0d6;background:#f8fafc}.card-option.selected{background:#eff4ff;border-color:#3b82f6;box-shadow:0 4px 6px -1px #0ea5e91a}.card-option.selected .icon-box{background:#3b82f61a;color:#3b82f6}.card-option.selected .title{color:#3b82f6}.card-option.selected .radio-indicator{border-color:#3b82f6;background:#fff}.card-option.selected .radio-indicator .dot{transform:scale(1);background:#3b82f6}.icon-box{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:.5rem;background:#f1f5f9;color:#64748b;flex-shrink:0;transition:all .2s}.icon-box span{font-size:1.5rem}.content{flex:1;display:flex;flex-direction:column;gap:.25rem}.title{font-size:.95rem;font-weight:700;color:#0f172a;transition:color .2s}.description{font-size:.8rem;color:#64748b;line-height:1.4}.radio-indicator{width:1.25rem;height:1.25rem;border-radius:50%;border:2px solid #e2e8f0;display:flex;align-items:center;justify-content:center;transition:all .2s;background:#fff}.radio-indicator .dot{width:.625rem;height:.625rem;border-radius:50%;background:transparent;transform:scale(0);transition:transform .2s cubic-bezier(.4,0,.2,1)}\n"] }); }
15
15
  }
16
16
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvSelectCardsComponent, decorators: [{
17
17
  type: Component,
18
- args: [{ selector: 'kv-select-cards', standalone: true, imports: [], template: "<div class=\"cards-container\">\r\n @for (option of options(); track option.value) {\r\n <div\r\n class=\"card-option\"\r\n [class.selected]=\"selection() === option.value\"\r\n (click)=\"select(option)\"\r\n >\r\n <div class=\"icon-box\">\r\n <span class=\"material-symbols-outlined\">{{ option.icon }}</span>\r\n </div>\r\n\r\n <div class=\"content\">\r\n <div class=\"title\">{{ option.title }}</div>\r\n <div class=\"description\">{{ option.description }}</div>\r\n </div>\r\n\r\n <div class=\"radio-indicator\">\r\n <div class=\"dot\"></div>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n", styles: [".cards-container{display:flex;flex-direction:column;gap:1rem;width:100%}.card-option{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;cursor:pointer;transition:all .2s ease-in-out;-webkit-user-select:none;user-select:none}.card-option:hover{border-color:#b0c0d6;background:#f8fafc}.card-option.selected{background:#f0f9ff;border-color:#0ea5e9;box-shadow:0 4px 6px -1px #0ea5e91a}.card-option.selected .icon-box{background:#0ea5e91a;color:#0ea5e9}.card-option.selected .title{color:#0284c7}.card-option.selected .radio-indicator{border-color:#0ea5e9;background:#fff}.card-option.selected .radio-indicator .dot{transform:scale(1);background:#0ea5e9}.icon-box{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:.5rem;background:#f1f5f9;color:#64748b;flex-shrink:0;transition:all .2s}.icon-box span{font-size:1.5rem}.content{flex:1;display:flex;flex-direction:column;gap:.25rem}.title{font-size:.95rem;font-weight:700;color:#0f172a;transition:color .2s}.description{font-size:.8rem;color:#64748b;line-height:1.4}.radio-indicator{width:1.25rem;height:1.25rem;border-radius:50%;border:2px solid #e2e8f0;display:flex;align-items:center;justify-content:center;transition:all .2s;background:#fff}.radio-indicator .dot{width:.625rem;height:.625rem;border-radius:50%;background:transparent;transform:scale(0);transition:transform .2s cubic-bezier(.4,0,.2,1)}\n"] }]
18
+ args: [{ selector: 'kv-select-cards', standalone: true, imports: [], template: "<div class=\"cards-container\">\r\n @for (option of options(); track option.value) {\r\n <div\r\n class=\"card-option\"\r\n [class.selected]=\"selection() === option.value\"\r\n (click)=\"select(option)\"\r\n >\r\n <div class=\"icon-box\">\r\n <span class=\"material-symbols-outlined\">{{ option.icon }}</span>\r\n </div>\r\n\r\n <div class=\"content\">\r\n <div class=\"title\">{{ option.title }}</div>\r\n <div class=\"description\">{{ option.description }}</div>\r\n </div>\r\n\r\n <div class=\"radio-indicator\">\r\n <div class=\"dot\"></div>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n", styles: [".cards-container{display:flex;flex-direction:column;gap:1rem;width:100%}.card-option{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;cursor:pointer;transition:all .2s ease-in-out;-webkit-user-select:none;user-select:none}.card-option:hover{border-color:#b0c0d6;background:#f8fafc}.card-option.selected{background:#eff4ff;border-color:#3b82f6;box-shadow:0 4px 6px -1px #0ea5e91a}.card-option.selected .icon-box{background:#3b82f61a;color:#3b82f6}.card-option.selected .title{color:#3b82f6}.card-option.selected .radio-indicator{border-color:#3b82f6;background:#fff}.card-option.selected .radio-indicator .dot{transform:scale(1);background:#3b82f6}.icon-box{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:.5rem;background:#f1f5f9;color:#64748b;flex-shrink:0;transition:all .2s}.icon-box span{font-size:1.5rem}.content{flex:1;display:flex;flex-direction:column;gap:.25rem}.title{font-size:.95rem;font-weight:700;color:#0f172a;transition:color .2s}.description{font-size:.8rem;color:#64748b;line-height:1.4}.radio-indicator{width:1.25rem;height:1.25rem;border-radius:50%;border:2px solid #e2e8f0;display:flex;align-items:center;justify-content:center;transition:all .2s;background:#fff}.radio-indicator .dot{width:.625rem;height:.625rem;border-radius:50%;background:transparent;transform:scale(0);transition:transform .2s cubic-bezier(.4,0,.2,1)}\n"] }]
19
19
  }] });
20
20
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3Ytc2VsZWN0LWNhcmRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LXNlbGVjdC1jYXJkcy9rdi1zZWxlY3QtY2FyZHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3Ytc2VsZWN0LWNhcmRzL2t2LXNlbGVjdC1jYXJkcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBZ0J4RCxNQUFNLE9BQU8sc0JBQXNCO0lBUG5DO1FBU0UsbUJBQW1CO1FBQ25CLFlBQU8sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFzQixDQUFDO1FBRS9DLDJDQUEyQztRQUMzQyxjQUFTLEdBQUcsS0FBSyxDQUFNLElBQUksQ0FBQyxDQUFDO0tBSzlCO0lBSEMsTUFBTSxDQUFDLE1BQXdCO1FBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDOzhHQVZVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLG1ZQ2hCbkMsa3FCQXNCQTs7MkZETmEsc0JBQXNCO2tCQVBsQyxTQUFTOytCQUNFLGlCQUFpQixjQUNmLElBQUksV0FDUCxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbnB1dCwgbW9kZWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0Q2FyZE9wdGlvbiB7XHJcbiAgdGl0bGU6IHN0cmluZztcclxuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gIHZhbHVlOiBhbnk7XHJcbiAgaWNvbjogc3RyaW5nOyAvLyBOb21lIGRvIE1hdGVyaWFsIFN5bWJvbFxyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2t2LXNlbGVjdC1jYXJkcycsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXSxcclxuICB0ZW1wbGF0ZVVybDogJy4va3Ytc2VsZWN0LWNhcmRzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4va3Ytc2VsZWN0LWNhcmRzLmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgS3ZTZWxlY3RDYXJkc0NvbXBvbmVudCB7XHJcblxyXG4gIC8vIFJlY2ViZSBhcyBvcMOnw7Vlc1xyXG4gIG9wdGlvbnMgPSBpbnB1dC5yZXF1aXJlZDxTZWxlY3RDYXJkT3B0aW9uW10+KCk7XHJcblxyXG4gIC8vIFR3by13YXkgYmluZGluZyBwYXJhIG8gdmFsb3Igc2VsZWNpb25hZG9cclxuICBzZWxlY3Rpb24gPSBtb2RlbDxhbnk+KG51bGwpO1xyXG5cclxuICBzZWxlY3Qob3B0aW9uOiBTZWxlY3RDYXJkT3B0aW9uKSB7XHJcbiAgICB0aGlzLnNlbGVjdGlvbi5zZXQob3B0aW9uLnZhbHVlKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImNhcmRzLWNvbnRhaW5lclwiPlxyXG4gIEBmb3IgKG9wdGlvbiBvZiBvcHRpb25zKCk7IHRyYWNrIG9wdGlvbi52YWx1ZSkge1xyXG4gICAgPGRpdlxyXG4gICAgICBjbGFzcz1cImNhcmQtb3B0aW9uXCJcclxuICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cInNlbGVjdGlvbigpID09PSBvcHRpb24udmFsdWVcIlxyXG4gICAgICAoY2xpY2spPVwic2VsZWN0KG9wdGlvbilcIlxyXG4gICAgPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaWNvbi1ib3hcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWRcIj57eyBvcHRpb24uaWNvbiB9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29udGVudFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0aXRsZVwiPnt7IG9wdGlvbi50aXRsZSB9fTwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvblwiPnt7IG9wdGlvbi5kZXNjcmlwdGlvbiB9fTwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyYWRpby1pbmRpY2F0b3JcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZG90XCI+PC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgfVxyXG48L2Rpdj5cclxuIl19