ng-pli-commons 0.0.1737 → 0.0.1739
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/components/pdf-generator/pdf-generator.component.mjs +31 -40
- package/esm2020/version.mjs +8 -8
- package/fesm2015/ng-pli-commons.mjs +37 -45
- package/fesm2015/ng-pli-commons.mjs.map +1 -1
- package/fesm2020/ng-pli-commons.mjs +37 -45
- package/fesm2020/ng-pli-commons.mjs.map +1 -1
- package/lib/components/pdf-generator/pdf-generator.component.d.ts +5 -5
- package/package.json +1 -1
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { Component, HostListener, Input, ViewChild, Output, EventEmitter
|
|
2
|
-
import {
|
|
1
|
+
import { Component, HostListener, Input, ViewChild, Output, EventEmitter } from '@angular/core';
|
|
2
|
+
import { RequestPdf } from 'ng-pli-util';
|
|
3
3
|
import * as PDFJS_ from 'pdfjs-dist/build/pdf';
|
|
4
|
-
import Panzoom from 'panzoom/dist/panzoom';
|
|
5
4
|
import * as i0 from "@angular/core";
|
|
6
5
|
import * as i1 from "@angular/platform-browser";
|
|
7
6
|
import * as i2 from "../../services/data-form.service";
|
|
@@ -70,28 +69,41 @@ export class PdfGeneratorComponent {
|
|
|
70
69
|
return pathList.find((element) => element.classList && element.classList.contains(this.actionClass));
|
|
71
70
|
}
|
|
72
71
|
async htmltoPDF() {
|
|
73
|
-
|
|
74
|
-
|
|
72
|
+
const applicationData = await this.applicationService
|
|
73
|
+
.getById(this._applicationId)
|
|
74
|
+
.toPromise();
|
|
75
|
+
const promCodigo = applicationData.promCodigo;
|
|
76
|
+
this.allDataForms = await this.dataFormService
|
|
77
|
+
.getByApplicationId(this._applicationId)
|
|
78
|
+
.toPromise();
|
|
75
79
|
//get patCode
|
|
76
80
|
const patCode = this.pppService.getPatCodigoByPromCodigo(this.promCode);
|
|
77
81
|
//get header
|
|
78
82
|
if (this.configuration.header) {
|
|
79
|
-
const header = await this.pliCnfHeaderService
|
|
80
|
-
|
|
83
|
+
const header = await this.pliCnfHeaderService
|
|
84
|
+
.getByPromCodigo(this.promCode)
|
|
85
|
+
.toPromise();
|
|
86
|
+
const text = await this.tokenTransformationService
|
|
87
|
+
.transformByUsername(this.configuration.header, promCodigo, applicationData.username)
|
|
88
|
+
.toPromise();
|
|
81
89
|
this.headerHtml = text.txt;
|
|
82
90
|
}
|
|
83
91
|
//get footer
|
|
84
92
|
if (this.configuration.footer) {
|
|
85
|
-
const text = await this.tokenTransformationService
|
|
93
|
+
const text = await this.tokenTransformationService
|
|
94
|
+
.transformByUsername(this.configuration.footer, promCodigo, applicationData.username)
|
|
95
|
+
.toPromise();
|
|
86
96
|
this.footerHtml = text.txt;
|
|
87
97
|
}
|
|
88
|
-
if (this.configuration.
|
|
89
|
-
const text = await this.tokenTransformationService
|
|
98
|
+
if (this.configuration.body) {
|
|
99
|
+
const text = await this.tokenTransformationService
|
|
100
|
+
.transformByUsername(this.configuration.body, promCodigo, applicationData.username)
|
|
101
|
+
.toPromise();
|
|
90
102
|
this.BodyHtml = text.txt;
|
|
91
103
|
}
|
|
92
104
|
// filter dataforms by config
|
|
93
105
|
for (let df of this.allDataForms) {
|
|
94
|
-
if (this.configuration.forms.find(f => f === df.formId)) {
|
|
106
|
+
if (this.configuration.forms.find((f) => f === df.formId)) {
|
|
95
107
|
this.dataForms = [...this.dataForms, df];
|
|
96
108
|
}
|
|
97
109
|
}
|
|
@@ -103,7 +115,9 @@ export class PdfGeneratorComponent {
|
|
|
103
115
|
// get lookAndFeelModel
|
|
104
116
|
this.lookAndFeelModel = await this.lookAndFeelService.getById(patCode).toPromise();
|
|
105
117
|
if (this.lookAndFeelModel && this.lookAndFeelModel.clafeUrlLogoAplicacion) {
|
|
106
|
-
const logoBase64 = await this.commonService
|
|
118
|
+
const logoBase64 = await this.commonService
|
|
119
|
+
.getBase64ImageByUrl(this.lookAndFeelModel.clafeUrlLogoAplicacion)
|
|
120
|
+
.toPromise();
|
|
107
121
|
this.urlLogo = this.sanitizer.bypassSecurityTrustUrl('data:image/png;base64, ' + logoBase64.base64);
|
|
108
122
|
}
|
|
109
123
|
await this.exportAsPDF();
|
|
@@ -114,7 +128,7 @@ export class PdfGeneratorComponent {
|
|
|
114
128
|
requestPdf.html = this.BodyHtml;
|
|
115
129
|
requestPdf.header = this.headerHtml;
|
|
116
130
|
requestPdf.footer = this.footerHtml;
|
|
117
|
-
requestPdf.lang =
|
|
131
|
+
requestPdf.lang = 'es';
|
|
118
132
|
requestPdf.marginTop = this.configuration.marginTop;
|
|
119
133
|
requestPdf.marginRight = this.configuration.marginRight;
|
|
120
134
|
requestPdf.marginBottom = this.configuration.marginBottom;
|
|
@@ -137,7 +151,7 @@ export class PdfGeneratorComponent {
|
|
|
137
151
|
document.body.appendChild(a);
|
|
138
152
|
a.style.display = 'none';
|
|
139
153
|
a.href = blobUrl;
|
|
140
|
-
a.download =
|
|
154
|
+
a.download = 'resumenPdf';
|
|
141
155
|
a.click();
|
|
142
156
|
setTimeout(() => {
|
|
143
157
|
window.URL.revokeObjectURL(blobUrl);
|
|
@@ -193,34 +207,11 @@ export class PdfGeneratorComponent {
|
|
|
193
207
|
showBase64Pdf(result) {
|
|
194
208
|
this.base64 = result.base64;
|
|
195
209
|
this.download();
|
|
196
|
-
var data = atob(this.base64);
|
|
197
|
-
PDFJS.workerSrc = 'https://cdnjs.cloudflare.com/ajax/libs/pdf.js/2.16.105/pdf.worker.js';
|
|
198
|
-
if (PDFJS.GlobalWorkerOptions)
|
|
199
|
-
PDFJS.GlobalWorkerOptions.workerSrc =
|
|
200
|
-
'https://cdnjs.cloudflare.com/ajax/libs/pdf.js/2.16.105/pdf.worker.js';
|
|
201
|
-
// create instance of PdfDocument with the id of canvas
|
|
202
|
-
// create instance of PdfDocument with the id of canvas
|
|
203
|
-
this.pdfDocument = new PdfDocument(this.id_canvas);
|
|
204
|
-
// assign variables out of scope
|
|
205
|
-
let pdfdocument = this.pdfDocument;
|
|
206
|
-
Panzoom(this.pdfDocument.canvas, {
|
|
207
|
-
smoothScroll: false
|
|
208
|
-
});
|
|
209
|
-
let self = this;
|
|
210
|
-
let ready = this.ready;
|
|
211
|
-
const pdfLoadingTask = PDFJS.getDocument({ data: data });
|
|
212
|
-
// JP - here we ask if the promise supports the new version pdfLoadingTask.promise
|
|
213
|
-
const promise = pdfLoadingTask.promise ? pdfLoadingTask.promise : pdfLoadingTask;
|
|
214
|
-
promise.then(function (pdfDoc_) {
|
|
215
|
-
pdfdocument.pdfDoc = pdfDoc_;
|
|
216
|
-
this.renderPage(1);
|
|
217
|
-
ready = true;
|
|
218
|
-
});
|
|
219
210
|
}
|
|
220
211
|
deleteButtons(doc) {
|
|
221
|
-
const buttons = doc.querySelectorAll(
|
|
212
|
+
const buttons = doc.querySelectorAll('button');
|
|
222
213
|
for (let i = 0; i < buttons.length; i++) {
|
|
223
|
-
buttons[i].style.display =
|
|
214
|
+
buttons[i].style.display = 'none';
|
|
224
215
|
}
|
|
225
216
|
}
|
|
226
217
|
}
|
|
@@ -248,4 +239,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImpor
|
|
|
248
239
|
type: HostListener,
|
|
249
240
|
args: ['click', ['$event']]
|
|
250
241
|
}] } });
|
|
251
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLWdlbmVyYXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wbGktY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvcGRmLWdlbmVyYXRvci9wZGYtZ2VuZXJhdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXBsaS1jb21tb25zL3NyYy9saWIvY29tcG9uZW50cy9wZGYtZ2VuZXJhdG9yL3BkZi1nZW5lcmF0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFHVCxZQUFZLEVBQ1osS0FBSyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFHTCxXQUFXLEVBQ1EsVUFBVSxFQUM5QixNQUFNLGFBQWEsQ0FBQztBQWNyQixPQUFPLEtBQUssTUFBTSxNQUFNLHNCQUFzQixDQUFDO0FBRy9DLE9BQU8sT0FBTyxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0FBRDNDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQztBQU9yQixNQUFNLE9BQU8scUJBQXFCO0lBb0RoQyxZQUNtQixTQUF1QixFQUN2QixlQUFnQyxFQUNoQyxrQkFBc0MsRUFDdEMsVUFBc0IsRUFDdEIsYUFBNEIsRUFDNUIsa0JBQTRDLEVBQzVDLE1BQTJCLEVBQzNCLFFBQWtDLEVBQzNDLGNBQThCLEVBQzlCLFdBQXdCLEVBQ3hCLGdCQUFtQyxFQUNuQyxtQkFBd0MsRUFDeEMsMEJBQXNEO1FBWjdDLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFDdkIsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtR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bmVudCxcclxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgRWxlbWVudFJlZixcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgSW5wdXQsXHJcbiAgVmlld0NoaWxkLFxyXG4gIE91dHB1dCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7RG9tU2FuaXRpemVyLCBTYWZlSHRtbCwgU2FmZVVybH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCBodG1sMmNhbnZhcyBmcm9tICdodG1sMmNhbnZhcyc7XHJcbmltcG9ydCBodG1sMnBkZiBmcm9tICdodG1sMnBkZi5qcyc7XHJcbmltcG9ydCB7XHJcbiAgQXBwbGljYXRpb24sXHJcbiAgRGF0YUZvcm1BcHBsaWNhdGlvbixcclxuICBQZGZEb2N1bWVudCxcclxuICBQbGlDbmZMb29rQW5kRmVlbCwgUmVxdWVzdFBkZlxyXG59IGZyb20gJ25nLXBsaS11dGlsJztcclxuaW1wb3J0IHtQbGlDbmZQZGZ9IGZyb20gJ25nLXBsaS11dGlsL2xpYi9tb2RlbHMvcGxpLWNuZi1wZGYnO1xyXG5pbXBvcnQge01lbnVJdGVtfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcblxyXG5pbXBvcnQge0FwcGxpY2F0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvYXBwbGljYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7RGF0YUZvcm1TZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9kYXRhLWZvcm0uc2VydmljZSc7XHJcbmltcG9ydCB7UGxpQ25mSGVhZGVyU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGxpLWNuZi1oZWFkZXIuc2VydmljZSc7XHJcbmltcG9ydCB7UHBwU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvcHBwLnNlcnZpY2UnO1xyXG5pbXBvcnQge1BsaUNuZkxvb2tBbmRGZWVsU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGxpLWNuZi1sb29rLWFuZC1mZWVsLnNlcnZpY2UnO1xyXG5pbXBvcnQge0NvbW1vblNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9jb21tb24uc2VydmljZVwiO1xyXG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7Rm9ybVNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9mb3JtLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtQbGlDbmZQZGZzU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3BsaS1jbmYtcGRmcy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VG9rZW5UcmFuc2Zvcm1hdGlvblNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy90b2tlbi10cmFuc2Zvcm1hdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCAqIGFzIFBERkpTXyBmcm9tICdwZGZqcy1kaXN0L2J1aWxkL3BkZic7XHJcblxyXG5jb25zdCBQREZKUyA9IFBERkpTXztcclxuaW1wb3J0IFBhbnpvb20gZnJvbSAncGFuem9vbS9kaXN0L3Bhbnpvb20nO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3BsaS1wZGYtZ2VuZXJhdG9yJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcGRmLWdlbmVyYXRvci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcGRmLWdlbmVyYXRvci5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQZGZHZW5lcmF0b3JDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGNvbmZpZ3VyYXRpb25zKGNuZlBkZjogUGxpQ25mUGRmW10pIHtcclxuICAgIHRoaXMuaXRlbXMgPSBjbmZQZGYubWFwKChjKSA9PiAoe1xyXG4gICAgICBsYWJlbDogYy5uYW1lLFxyXG4gICAgICBjb21tYW5kOiBhc3luYyAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jb25maWd1cmF0aW9uID0gYztcclxuICAgICAgICBhd2FpdCB0aGlzLmh0bWx0b1BERigpO1xyXG4gICAgICB9XHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHNldCBhcHBsaWNhdGlvbklkKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX2FwcGxpY2F0aW9uSWQgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2NvbnRlbnQnKSBjb250ZW50RWxlbWVudDogRWxlbWVudFJlZjxhbnk+O1xyXG4gIEBJbnB1dCgpIHNob3dMYWJlbCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGFjdGlvbkNsYXNzID0gJ3JlZmVyZW5jZUNsYXNzJztcclxuICBASW5wdXQoKSBwcm9tQ29kZTogbnVtYmVyO1xyXG5cclxuICBkaXNwbGF5OiBib29sZWFuID0gdHJ1ZTtcclxuICBpdGVtczogTWVudUl0ZW1bXSA9IFtdO1xyXG4gIGNvbmZpZ3VyYXRpb246IFBsaUNuZlBkZjtcclxuICBoZWFkZXJIdG1sOiBzdHJpbmc7XHJcbiAgZm9vdGVySHRtbDogc3RyaW5nO1xyXG4gIEJvZHlIdG1sOiBzdHJpbmc7XHJcbiAgdXJsTG9nbzogU2FmZVVybDtcclxuICBfYXBwbGljYXRpb25JZDogc3RyaW5nO1xyXG4gIHBkZkRvY3VtZW50OiBQZGZEb2N1bWVudDtcclxuICBsb29rQW5kRmVlbE1vZGVsOiBQbGlDbmZMb29rQW5kRmVlbDtcclxuICBkYXRhRm9ybXM6IERhdGFGb3JtQXBwbGljYXRpb25bXSA9IFtdO1xyXG4gIGFsbERhdGFGb3JtczogRGF0YUZvcm1BcHBsaWNhdGlvbltdID0gW107XHJcbiAgZm9ybXM6IGFueSBbXSA9IFtdO1xyXG5cdC8qKiBiYXNlNjQgYXMgcmVzdWx0IG9mIGh0bWwgMiBwZGYgKi9cclxuXHRiYXNlNjQ6IHN0cmluZztcclxuXHJcbiAgXHQvKiogaXQgY29udGFpbnMgdGhlIGlkIG9mIGNhbnZhcyAqL1xyXG5cdGlkX2NhbnZhczogc3RyaW5nID0gJ3BkZi1jYW52YXMnO1xyXG5cclxuXHRyZWFkeTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cdEBPdXRwdXQoKSBvbkRvd25sb2FkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcclxuICBvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XHJcblxyXG5cclxuICAgICAgaWYgKCF0aGlzLl9hcHBsaWNhdGlvbklkKSB7XHJcbiAgICAgICAgdGhpcy5fYXBwbGljYXRpb25JZCA9IHRoaXMuZ2V0RWxlbWVudElkRnJvbUV2ZW50KCBldmVudC5jb21wb3NlZFBhdGgoKSk7XHJcbiAgICAgIH1cclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGF0YUZvcm1TZXJ2aWNlOiBEYXRhRm9ybVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFwcGxpY2F0aW9uU2VydmljZTogQXBwbGljYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBwcHBTZXJ2aWNlOiBQcHBTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb21tb25TZXJ2aWNlOiBDb21tb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBsb29rQW5kRmVlbFNlcnZpY2U6IFBsaUNuZkxvb2tBbmRGZWVsU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaGVhZGVyOiBQbGlDbmZIZWFkZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSByZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxyXG4gICAgcHJpdmF0ZSBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICBwcml2YXRlIGZvcm1TZXJ2aWNlOiBGb3JtU2VydmljZSxcclxuICAgIHByaXZhdGUgcGxpQ25mUGRmU2VydmljZTogUGxpQ25mUGRmc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHBsaUNuZkhlYWRlclNlcnZpY2U6IFBsaUNuZkhlYWRlclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHRva2VuVHJhbnNmb3JtYXRpb25TZXJ2aWNlOiBUb2tlblRyYW5zZm9ybWF0aW9uU2VydmljZSxcclxuICApIHtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0RWxlbWVudElkRnJvbUV2ZW50KHBhdGg6IGFueVtdKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmdldEVsZW1lbnQocGF0aCk7XHJcbiAgICByZXR1cm4gZWxlbWVudCA/IGVsZW1lbnQuZ2V0QXR0cmlidXRlKCdkYXRhLWVsZW1lbnQtaWQnKSA6ICcnO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRFbGVtZW50KHBhdGhMaXN0OiBhbnlbXSkge1xyXG4gICAgcmV0dXJuIHBhdGhMaXN0LmZpbmQoXHJcbiAgICAgIChlbGVtZW50KSA9PiBlbGVtZW50LmNsYXNzTGlzdCAmJiBlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyh0aGlzLmFjdGlvbkNsYXNzKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIGh0bWx0b1BERigpIHtcclxuICAgIC8vZ2V0IGRhdGFmb3Jtc1xyXG4gICAgdGhpcy5hbGxEYXRhRm9ybXMgPSBhd2FpdCB0aGlzLmRhdGFGb3JtU2VydmljZS5nZXRCeUFwcGxpY2F0aW9uSWQodGhpcy5fYXBwbGljYXRpb25JZCkudG9Qcm9taXNlKCk7XHJcbiAgICAvL2dldCBwYXRDb2RlXHJcbiAgICBjb25zdCBwYXRDb2RlID0gdGhpcy5wcHBTZXJ2aWNlLmdldFBhdENvZGlnb0J5UHJvbUNvZGlnbyh0aGlzLnByb21Db2RlKTtcclxuICAgIC8vZ2V0IGhlYWRlclxyXG4gICAgaWYgKHRoaXMuY29uZmlndXJhdGlvbi5oZWFkZXIpIHtcclxuICAgICAgY29uc3QgaGVhZGVyOiBhbnkgPSBhd2FpdCB0aGlzLnBsaUNuZkhlYWRlclNlcnZpY2UuZ2V0QnlQcm9tQ29kaWdvKHRoaXMucHJvbUNvZGUpLnRvUHJvbWlzZSgpO1xyXG4gICAgICBjb25zdCB0ZXh0ID0gYXdhaXQgdGhpcy50b2tlblRyYW5zZm9ybWF0aW9uU2VydmljZS50cmFuc2Zvcm0odGhpcy5jb25maWd1cmF0aW9uLmhlYWRlciwgdGhpcy5wcm9tQ29kZSwgdGhpcy5fYXBwbGljYXRpb25JZCkudG9Qcm9taXNlKCk7XHJcbiAgICAgIHRoaXMuaGVhZGVySHRtbCA9IHRleHQudHh0O1xyXG4gICAgfVxyXG5cclxuICAgIC8vZ2V0IGZvb3RlclxyXG4gICAgaWYgKHRoaXMuY29uZmlndXJhdGlvbi5mb290ZXIpIHtcclxuICAgICAgY29uc3QgdGV4dCA9IGF3YWl0IHRoaXMudG9rZW5UcmFuc2Zvcm1hdGlvblNlcnZpY2UudHJhbnNmb3JtKHRoaXMuY29uZmlndXJhdGlvbi5mb290ZXIsIHRoaXMucHJvbUNvZGUsIHRoaXMuX2FwcGxpY2F0aW9uSWQpLnRvUHJvbWlzZSgpO1xyXG4gICAgICB0aGlzLmZvb3Rlckh0bWwgPSB0ZXh0LnR4dDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5jb25maWd1cmF0aW9uLmZvcm1zKSB7XHJcbiAgICAgIGNvbnN0IHRleHQgPSBhd2FpdCB0aGlzLnRva2VuVHJhbnNmb3JtYXRpb25TZXJ2aWNlLnRyYW5zZm9ybSh0aGlzLmNvbmZpZ3VyYXRpb24uZm9ybXNbMF0sIHRoaXMucHJvbUNvZGUsIHRoaXMuX2FwcGxpY2F0aW9uSWQpLnRvUHJvbWlzZSgpO1xyXG4gICAgICB0aGlzLkJvZHlIdG1sID0gdGV4dC50eHQ7XHJcbiAgICB9XHJcbiAgICAvLyBmaWx0ZXIgZGF0YWZvcm1zIGJ5IGNvbmZpZ1xyXG4gICAgZm9yIChsZXQgZGYgb2YgdGhpcy5hbGxEYXRhRm9ybXMpIHtcclxuICAgICAgaWYgKHRoaXMuY29uZmlndXJhdGlvbi5mb3Jtcy5maW5kKGYgPT4gZiA9PT0gZGYuZm9ybUlkKSkge1xyXG4gICAgICAgIHRoaXMuZGF0YUZvcm1zID0gWy4uLnRoaXMuZGF0YUZvcm1zLCBkZl1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gZ2V0IGZvcm1zXHJcbiAgICBmb3IgKGNvbnN0IGRmIG9mIHRoaXMuZGF0YUZvcm1zKSB7XHJcbiAgICAgIGxldCBmb3JtID0gYXdhaXQgdGhpcy5mb3JtU2VydmljZS5nZXRCeUlkKGRmLmZvcm1JZCkudG9Qcm9taXNlKCk7XHJcbiAgICAgIHRoaXMuZm9ybXMucHVzaChmb3JtKTtcclxuICAgIH1cclxuICAgIC8vIGdldCBsb29rQW5kRmVlbE1vZGVsXHJcbiAgICB0aGlzLmxvb2tBbmRGZWVsTW9kZWwgPSBhd2FpdCB0aGlzLmxvb2tBbmRGZWVsU2VydmljZS5nZXRCeUlkKHBhdENvZGUpLnRvUHJvbWlzZSgpO1xyXG4gICAgaWYgKHRoaXMubG9va0FuZEZlZWxNb2RlbCAmJiB0aGlzLmxvb2tBbmRGZWVsTW9kZWwuY2xhZmVVcmxMb2dvQXBsaWNhY2lvbikge1xyXG4gICAgICBjb25zdCBsb2dvQmFzZTY0ID0gYXdhaXQgdGhpcy5jb21tb25TZXJ2aWNlLmdldEJhc2U2NEltYWdlQnlVcmwodGhpcy5sb29rQW5kRmVlbE1vZGVsLmNsYWZlVXJsTG9nb0FwbGljYWNpb24pLnRvUHJvbWlzZSgpO1xyXG4gICAgICB0aGlzLnVybExvZ28gPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0VXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsICcgKyBsb2dvQmFzZTY0LmJhc2U2NCk7XHJcbiAgICB9XHJcbiAgICBhd2FpdCB0aGlzLmV4cG9ydEFzUERGKCk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBleHBvcnRBc1BERigpIHtcclxuXHJcblxyXG5cclxuICAgIFx0Ly8gaWYgaHRtbCB3YXMgY2hhbmdlZFxyXG5cdFx0XHRsZXQgcmVxdWVzdFBkZjogUmVxdWVzdFBkZiA9IG5ldyBSZXF1ZXN0UGRmKCk7XHJcblx0XHRcdHJlcXVlc3RQZGYuaHRtbCA9IHRoaXMuQm9keUh0bWw7XHJcblx0XHRcdHJlcXVlc3RQZGYuaGVhZGVyID0gIHRoaXMuaGVhZGVySHRtbDtcclxuXHRcdFx0cmVxdWVzdFBkZi5mb290ZXIgPSB0aGlzLmZvb3Rlckh0bWw7XHJcblx0XHRcdHJlcXVlc3RQZGYubGFuZyA9IFwiZXNcIjtcclxuXHRcdFx0cmVxdWVzdFBkZi5tYXJnaW5Ub3AgPSB0aGlzLmNvbmZpZ3VyYXRpb24ubWFyZ2luVG9wO1xyXG5cdFx0XHRyZXF1ZXN0UGRmLm1hcmdpblJpZ2h0ID0gdGhpcy5jb25maWd1cmF0aW9uLm1hcmdpblJpZ2h0O1xyXG5cdFx0XHRyZXF1ZXN0UGRmLm1hcmdpbkJvdHRvbSA9dGhpcy5jb25maWd1cmF0aW9uLm1hcmdpbkJvdHRvbTtcclxuXHRcdFx0cmVxdWVzdFBkZi5tYXJnaW5MZWZ0ID0gdGhpcy5jb25maWd1cmF0aW9uLm1hcmdpbkxlZnQ7XHJcblxyXG5cclxuXHJcblx0XHRcdHJlcXVlc3RQZGYucmVwZWF0SGVhZGVyID10cnVlO1xyXG5cdFx0XHRyZXF1ZXN0UGRmLnJlcGVhdEZvb3RlciA9dHJ1ZTtcclxuXHRcdFx0cmVxdWVzdFBkZi5zaG93UGFnZXIgPXRydWU7XHJcblxyXG5cclxuXHRcdFx0dGhpcy5jb21tb25TZXJ2aWNlLmdldEJhc2U2NFBkZihyZXF1ZXN0UGRmKS5zdWJzY3JpYmUoXHJcblx0XHRcdFx0KHJlc3VsdCkgPT4ge1xyXG5cdFx0XHRcdFx0dGhpcy5zaG93QmFzZTY0UGRmKHJlc3VsdCk7XHJcblx0XHRcdFx0fSxcclxuXHRcdFx0XHQoZXJyb3IpID0+IHtcclxuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCdFcnJvciB0cnlpbmcgdG8gcmVuZGVyIFBERicsIGVycm9yKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdCk7XHJcblxyXG5cclxuXHJcbiAgfVxyXG5cclxuICBkb3dubG9hZCgpIHtcclxuXHJcblx0XHRjb25zdCBjb250ZW50VHlwZSA9ICdhcHBsaWNhdGlvbi9wZGYnO1xyXG5cdFx0Y29uc3QgYjY0RGF0YSA9IHRoaXMuYmFzZTY0O1xyXG5cdFx0Y29uc3QgYmxvYiA9IHRoaXMuYjY0dG9CbG9iKGI2NERhdGEsIGNvbnRlbnRUeXBlKTtcclxuXHRcdGNvbnN0IGJsb2JVcmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpO1xyXG5cclxuXHRcdHZhciBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xyXG5cdFx0ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTtcclxuXHRcdGEuc3R5bGUuZGlzcGxheSA9ICdub25lJztcclxuXHRcdGEuaHJlZiA9IGJsb2JVcmw7XHJcblx0XHRhLmRvd25sb2FkID1cInJlc3VtZW5QZGZcIjtcclxuXHRcdGEuY2xpY2soKTtcclxuXHRcdHNldFRpbWVvdXQoKCkgPT4ge1xyXG5cclxuXHRcdFx0d2luZG93LlVSTC5yZXZva2VPYmplY3RVUkwoYmxvYlVybCk7XHJcblx0XHRcdGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoYSk7XHJcblx0XHRcdHRoaXMub25Eb3dubG9hZC5lbWl0KHtcclxuXHRcdFx0XHRiYXNlNjQ6IHRoaXMuYmFzZTY0XHJcblx0XHRcdH0pO1xyXG5cdFx0fSwgMjAwKTtcclxuXHR9XHJcblxyXG4gIGI2NHRvQmxvYihiNjREYXRhLCBjb250ZW50VHlwZSA9ICcnLCBzbGljZVNpemUgPSA1MTIpIHtcclxuXHRcdGNvbnN0IGJ5dGVBcnJheXMgPSBbXTtcclxuXHRcdGNvbnN0IGJ5dGVDaGFyYWN0ZXJzID0gYXRvYihiNjREYXRhKTtcclxuXHRcdGZvciAobGV0IG9mZnNldCA9IDA7IG9mZnNldCA8IGJ5dGVDaGFyYWN0ZXJzLmxlbmd0aDsgb2Zmc2V0ICs9IHNsaWNlU2l6ZSkge1xyXG5cdFx0XHRjb25zdCBzbGljZSA9IGJ5dGVDaGFyYWN0ZXJzLnNsaWNlKG9mZnNldCwgb2Zmc2V0ICsgc2xpY2VTaXplKTtcclxuXHRcdFx0Y29uc3QgYnl0ZU51bWJlcnMgPSBuZXcgQXJyYXkoc2xpY2UubGVuZ3RoKTtcclxuXHRcdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBzbGljZS5sZW5ndGg7IGkrKykge1xyXG5cdFx0XHRcdGJ5dGVOdW1iZXJzW2ldID0gc2xpY2UuY2hhckNvZGVBdChpKTtcclxuXHRcdFx0fVxyXG5cdFx0XHRjb25zdCBieXRlQXJyYXkgPSBuZXcgVWludDhBcnJheShieXRlTnVtYmVycyk7XHJcblx0XHRcdGJ5dGVBcnJheXMucHVzaChieXRlQXJyYXkpO1xyXG5cdFx0fVxyXG5cdFx0Y29uc3QgYmxvYiA9IG5ldyBCbG9iKGJ5dGVBcnJheXMsIHsgdHlwZTogY29udGVudFR5cGUgfSk7XHJcblx0XHRyZXR1cm4gYmxvYjtcclxuXHR9XHJcblxyXG5cclxuICByZW5kZXJQYWdlKG51bSkge1xyXG5cdFx0dGhpcy5wZGZEb2N1bWVudC5wYWdlUmVuZGVyaW5nID0gdHJ1ZTtcclxuXHRcdC8vIGFzc2lnbiB2YXJpYWJsZXMgb3V0IG9mIHNjb3BlXHJcblx0XHRsZXQgc2VsZlBkZkRvY3VtZW50OiBQZGZEb2N1bWVudCA9IHRoaXMucGRmRG9jdW1lbnQ7XHJcblx0XHRsZXQgc2VsZiA9IHRoaXM7XHJcblx0XHQvLyBVc2luZyBwcm9taXNlIHRvIGZldGNoIHRoZSBwYWdlXHJcblx0XHR0aGlzLnBkZkRvY3VtZW50LnBkZkRvYy5nZXRQYWdlKG51bSkudGhlbihmdW5jdGlvbiAocGFnZSkge1xyXG5cdFx0XHR2YXIgc2NhbGUgPSBzZWxmUGRmRG9jdW1lbnQuc2NhbGUgPyBzZWxmUGRmRG9jdW1lbnQuc2NhbGUgOiAxLjU7XHJcblx0XHRcdHZhciB2aWV3cG9ydCA9IHBhZ2UuZ2V0Vmlld3BvcnQoe3NjYWxlOiBzY2FsZX0pO1xyXG5cdFx0XHRzZWxmUGRmRG9jdW1lbnQuY2FudmFzLmhlaWdodCA9IHZpZXdwb3J0LmhlaWdodDtcclxuXHRcdFx0c2VsZlBkZkRvY3VtZW50LmNhbnZhcy53aWR0aCA9IHZpZXdwb3J0LndpZHRoO1xyXG5cclxuXHRcdFx0Ly8gUmVuZGVyIFBERiBwYWdlIGludG8gY2FudmFzIGNvbnRleHRcclxuXHRcdFx0dmFyIHJlbmRlckNvbnRleHQgPSB7XHJcblx0XHRcdFx0Y2FudmFzQ29udGV4dDogc2VsZlBkZkRvY3VtZW50LmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpLFxyXG5cdFx0XHRcdHZpZXdwb3J0OiB2aWV3cG9ydFxyXG5cdFx0XHR9O1xyXG5cdFx0XHR2YXIgcmVuZGVyVGFzayA9IHBhZ2UucmVuZGVyKHJlbmRlckNvbnRleHQpO1xyXG5cclxuXHRcdFx0Ly8gV2FpdCBmb3IgcmVuZGVyaW5nIHRvIGZpbmlzaFxyXG5cdFx0XHRyZW5kZXJUYXNrLnByb21pc2UudGhlbihmdW5jdGlvbiAoKSB7XHJcblx0XHRcdFx0c2VsZlBkZkRvY3VtZW50LnBhZ2VSZW5kZXJpbmcgPSBmYWxzZTtcclxuXHRcdFx0XHRpZiAoc2VsZlBkZkRvY3VtZW50LnBhZ2VOdW1QZW5kaW5nICE9PSBudWxsKSB7XHJcblx0XHRcdFx0XHQvLyBOZXcgcGFnZSByZW5kZXJpbmcgaXMgcGVuZGluZ1xyXG5cdFx0XHRcdFx0dGhpcy5yZW5kZXJQYWdlKHNlbGZQZGZEb2N1bWVudC5wYWdlTnVtUGVuZGluZyk7XHJcblx0XHRcdFx0XHRzZWxmUGRmRG9jdW1lbnQucGFnZU51bVBlbmRpbmcgPSBudWxsO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSk7XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5zaG93QmFzZTY0UGRmKHJlc3VsdCkge1xyXG5cdFx0dGhpcy5iYXNlNjQgPSByZXN1bHQuYmFzZTY0O1xyXG4gICAgdGhpcy5kb3dubG9hZCgpXHJcblx0XHR2YXIgZGF0YSA9IGF0b2IodGhpcy5iYXNlNjQpO1xyXG4gICAgICBQREZKUy53b3JrZXJTcmMgID0gJ2h0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL3BkZi5qcy8yLjE2LjEwNS9wZGYud29ya2VyLmpzJztcclxuICAgICAgaWYgKFBERkpTLkdsb2JhbFdvcmtlck9wdGlvbnMpXHJcblx0XHRcdFBERkpTLkdsb2JhbFdvcmtlck9wdGlvbnMud29ya2VyU3JjID1cclxuICAgICAgICAnaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvcGRmLmpzLzIuMTYuMTA1L3BkZi53b3JrZXIuanMnO1xyXG5cdFx0Ly8gY3JlYXRlIGluc3RhbmNlIG9mIFBkZkRvY3VtZW50IHdpdGggdGhlIGlkIG9mIGNhbnZhc1xyXG5cdFx0Ly8gY3JlYXRlIGluc3RhbmNlIG9mIFBkZkRvY3VtZW50IHdpdGggdGhlIGlkIG9mIGNhbnZhc1xyXG5cdFx0dGhpcy5wZGZEb2N1bWVudCA9IG5ldyBQZGZEb2N1bWVudCh0aGlzLmlkX2NhbnZhcyk7XHJcblxyXG5cdFx0Ly8gYXNzaWduIHZhcmlhYmxlcyBvdXQgb2Ygc2NvcGVcclxuXHRcdGxldCBwZGZkb2N1bWVudDogUGRmRG9jdW1lbnQgPSB0aGlzLnBkZkRvY3VtZW50O1xyXG5cdFx0UGFuem9vbSh0aGlzLnBkZkRvY3VtZW50LmNhbnZhcywge1xyXG5cdFx0XHRzbW9vdGhTY3JvbGw6IGZhbHNlXHJcblx0XHR9KTtcclxuXHRcdGxldCBzZWxmID0gdGhpcztcclxuXHRcdGxldCByZWFkeSA9IHRoaXMucmVhZHk7XHJcblxyXG5cdFx0Y29uc3QgcGRmTG9hZGluZ1Rhc2sgPSBQREZKUy5nZXREb2N1bWVudCh7IGRhdGE6IGRhdGEgfSk7XHJcblx0XHQvLyBKUCAtIGhlcmUgd2UgYXNrIGlmIHRoZSBwcm9taXNlIHN1cHBvcnRzIHRoZSBuZXcgdmVyc2lvbiBwZGZMb2FkaW5nVGFzay5wcm9taXNlXHJcblx0XHRjb25zdCBwcm9taXNlID0gcGRmTG9hZGluZ1Rhc2sucHJvbWlzZSA/IHBkZkxvYWRpbmdUYXNrLnByb21pc2UgOiBwZGZMb2FkaW5nVGFzaztcclxuXHRcdHByb21pc2UudGhlbihmdW5jdGlvbiAocGRmRG9jXykge1xyXG5cdFx0XHRwZGZkb2N1bWVudC5wZGZEb2MgPSBwZGZEb2NfO1xyXG5cdFx0XHR0aGlzLnJlbmRlclBhZ2UoMSk7XHJcblx0XHRcdHJlYWR5ID0gdHJ1ZTtcclxuXHRcdH0pO1xyXG5cdH1cclxuICBkZWxldGVCdXR0b25zKGRvYykge1xyXG4gICAgY29uc3QgYnV0dG9ucyA9IGRvYy5xdWVyeVNlbGVjdG9yQWxsKFwiYnV0dG9uXCIpO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBidXR0b25zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGJ1dHRvbnNbaV0uc3R5bGUuZGlzcGxheSA9IFwibm9uZVwiO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2ICNjb250ZW50IGlkPVwiY29udGVudFwiIGNsYXNzPVwibWFpbi1jb250ZW50XCIgW2NsYXNzLm1haW4tY29udGVudC0tc2hvd109XCJkaXNwbGF5XCI+XHJcbiAgPGRpdiBjbGFzcz1cImhlYWRlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImhlYWRlci1pdGVtXCI+XHJcbiAgICAgIDxpbWcgW3NyY109XCJ1cmxMb2dvXCIgYWx0PVwibG9nb1wiIGNsYXNzPVwiaW1nLWxvZ29cIj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImhlYWRlci1pdGVtXCI+XHJcbiAgICAgIDxkaXYgW2lubmVySFRNTF09XCJoZWFkZXJIdG1sXCI+PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2ICpuZ0Zvcj1cImxldCBmIG9mIGRhdGFGb3JtczsgaW5kZXggYXMgaVwiPlxyXG4gICAgPGZvcm1pbyBbZm9ybV09XCJmb3Jtc1tpXVwiIFtzdWJtaXNzaW9uXT1cImRhdGFGb3Jtc1tpXVwiPjwvZm9ybWlvPlxyXG4gICAgPGRpdiBjbGFzcz1cImh0bWwycGRmX19wYWdlLWJyZWFrXCI+PC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBbaW5uZXJIVE1MXT1cImZvb3Rlckh0bWxcIj48L2Rpdj5cclxuPC9kaXY+XHJcbjxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IGJ0bi1zbVwiIChjbGljayk9XCJtZW51LnRvZ2dsZSgkZXZlbnQpXCIgdGl0bGU9XCJQREZcIj5cclxuICA8c3BhbiBjbGFzcz1cImZhIGZhLWZpbGUtcGRmXCI+PC9zcGFuPnt7IHNob3dMYWJlbCA/ICdHZW5lcmFyIFBERicgOiAnJyB9fVxyXG48L2J1dHRvbj5cclxuPHAtdGllcmVkTWVudSAjbWVudSBbbW9kZWxdPVwiaXRlbXNcIiBhcHBlbmRUbz1cImJvZHlcIiBbcG9wdXBdPVwidHJ1ZVwiPjwvcC10aWVyZWRNZW51PlxyXG4iXX0=
|
|
242
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLWdlbmVyYXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wbGktY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvcGRmLWdlbmVyYXRvci9wZGYtZ2VuZXJhdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXBsaS1jb21tb25zL3NyYy9saWIvY29tcG9uZW50cy9wZGYtZ2VuZXJhdG9yL3BkZi1nZW5lcmF0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLFNBQVMsRUFHVCxZQUFZLEVBQ1osS0FBSyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sWUFBWSxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFLTixVQUFVLEVBQ1YsTUFBTSxhQUFhLENBQUM7QUFjckIsT0FBTyxLQUFLLE1BQU0sTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztBQUUvQyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUM7QUFPckIsTUFBTSxPQUFPLHFCQUFxQjtJQWtEakMsWUFDa0IsU0FBdUIsRUFDdkIsZUFBZ0MsRUFDaEMsa0JBQXNDLEVBQ3RDLFVBQXNCLEVBQ3RCLGFBQTRCLEVBQzVCLGtCQUE0QyxFQUM1QyxNQUEyQixFQUMzQixRQUFrQyxFQUMzQyxjQUE4QixFQUM5QixXQUF3QixFQUN4QixnQkFBbUMsRUFDbkMsbUJBQXdDLEVBQ3hDLDBCQUFzRDtRQVo3QyxjQUFTLEdBQVQsU0FBUyxDQUFjO1FBQ3ZCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUEwQjtRQUM1QyxXQUFNLEdB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Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQXNCSSxVQUFVO3NCQUFuQixNQUFNO2dCQUVQLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG5cdENvbXBvbmVudCxcclxuXHRDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcblx0RWxlbWVudFJlZixcclxuXHRIb3N0TGlzdGVuZXIsXHJcblx0SW5wdXQsXHJcblx0Vmlld0NoaWxkLFxyXG5cdE91dHB1dCxcclxuXHRFdmVudEVtaXR0ZXJcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlSHRtbCwgU2FmZVVybCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQgaHRtbDJjYW52YXMgZnJvbSAnaHRtbDJjYW52YXMnO1xyXG5pbXBvcnQgaHRtbDJwZGYgZnJvbSAnaHRtbDJwZGYuanMnO1xyXG5pbXBvcnQge1xyXG5cdEFwcGxpY2F0aW9uLFxyXG5cdERhdGFGb3JtQXBwbGljYXRpb24sXHJcblx0UGRmRG9jdW1lbnQsXHJcblx0UGxpQ25mTG9va0FuZEZlZWwsXHJcblx0UmVxdWVzdFBkZlxyXG59IGZyb20gJ25nLXBsaS11dGlsJztcclxuaW1wb3J0IHsgUGxpQ25mUGRmIH0gZnJvbSAnbmctcGxpLXV0aWwvbGliL21vZGVscy9wbGktY25mLXBkZic7XHJcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAncHJpbWVuZy9hcGknO1xyXG5cclxuaW1wb3J0IHsgQXBwbGljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYXBwbGljYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IERhdGFGb3JtU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2RhdGEtZm9ybS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUGxpQ25mSGVhZGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3BsaS1jbmYtaGVhZGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQcHBTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcHBwLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQbGlDbmZMb29rQW5kRmVlbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9wbGktY25mLWxvb2stYW5kLWZlZWwuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbW1vblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb21tb24uc2VydmljZSc7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgRm9ybVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9mb3JtLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQbGlDbmZQZGZzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3BsaS1jbmYtcGRmcy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVG9rZW5UcmFuc2Zvcm1hdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90b2tlbi10cmFuc2Zvcm1hdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0ICogYXMgUERGSlNfIGZyb20gJ3BkZmpzLWRpc3QvYnVpbGQvcGRmJztcclxuXHJcbmNvbnN0IFBERkpTID0gUERGSlNfO1xyXG5pbXBvcnQgUGFuem9vbSBmcm9tICdwYW56b29tL2Rpc3QvcGFuem9vbSc7XHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAncGxpLXBkZi1nZW5lcmF0b3InLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9wZGYtZ2VuZXJhdG9yLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9wZGYtZ2VuZXJhdG9yLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFBkZkdlbmVyYXRvckNvbXBvbmVudCB7XHJcblx0QElucHV0KClcclxuXHRzZXQgY29uZmlndXJhdGlvbnMoY25mUGRmOiBQbGlDbmZQZGZbXSkge1xyXG5cdFx0dGhpcy5pdGVtcyA9IGNuZlBkZi5tYXAoKGMpID0+ICh7XHJcblx0XHRcdGxhYmVsOiBjLm5hbWUsXHJcblx0XHRcdGNvbW1hbmQ6IGFzeW5jICgpID0+IHtcclxuXHRcdFx0XHR0aGlzLmNvbmZpZ3VyYXRpb24gPSBjO1xyXG5cdFx0XHRcdGF3YWl0IHRoaXMuaHRtbHRvUERGKCk7XHJcblx0XHRcdH1cclxuXHRcdH0pKTtcclxuXHR9XHJcblxyXG5cdEBJbnB1dCgpXHJcblx0c2V0IGFwcGxpY2F0aW9uSWQodmFsdWU6IHN0cmluZykge1xyXG5cdFx0dGhpcy5fYXBwbGljYXRpb25JZCA9IHZhbHVlO1xyXG5cdH1cclxuXHJcblx0QFZpZXdDaGlsZCgnY29udGVudCcpIGNvbnRlbnRFbGVtZW50OiBFbGVtZW50UmVmPGFueT47XHJcblx0QElucHV0KCkgc2hvd0xhYmVsID0gZmFsc2U7XHJcblx0QElucHV0KCkgYWN0aW9uQ2xhc3MgPSAncmVmZXJlbmNlQ2xhc3MnO1xyXG5cdEBJbnB1dCgpIHByb21Db2RlOiBudW1iZXI7XHJcblxyXG5cdGRpc3BsYXk6IGJvb2xlYW4gPSB0cnVlO1xyXG5cdGl0ZW1zOiBNZW51SXRlbVtdID0gW107XHJcblx0Y29uZmlndXJhdGlvbjogUGxpQ25mUGRmO1xyXG5cdGhlYWRlckh0bWw6IHN0cmluZztcclxuXHRmb290ZXJIdG1sOiBzdHJpbmc7XHJcblx0Qm9keUh0bWw6IHN0cmluZztcclxuXHR1cmxMb2dvOiBTYWZlVXJsO1xyXG5cdF9hcHBsaWNhdGlvbklkOiBzdHJpbmc7XHJcblx0cGRmRG9jdW1lbnQ6IFBkZkRvY3VtZW50O1xyXG5cdGxvb2tBbmRGZWVsTW9kZWw6IFBsaUNuZkxvb2tBbmRGZWVsO1xyXG5cdGRhdGFGb3JtczogRGF0YUZvcm1BcHBsaWNhdGlvbltdID0gW107XHJcblx0YWxsRGF0YUZvcm1zOiBEYXRhRm9ybUFwcGxpY2F0aW9uW10gPSBbXTtcclxuXHRmb3JtczogYW55W10gPSBbXTtcclxuXHQvKiogYmFzZTY0IGFzIHJlc3VsdCBvZiBodG1sIDIgcGRmICovXHJcblx0YmFzZTY0OiBzdHJpbmc7XHJcblxyXG5cdC8qKiBpdCBjb250YWlucyB0aGUgaWQgb2YgY2FudmFzICovXHJcblx0aWRfY2FudmFzOiBzdHJpbmcgPSAncGRmLWNhbnZhcyc7XHJcblxyXG5cdHJlYWR5OiBib29sZWFuID0gZmFsc2U7XHJcblx0QE91dHB1dCgpIG9uRG93bmxvYWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblx0QEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxyXG5cdG9uQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuXHRcdGlmICghdGhpcy5fYXBwbGljYXRpb25JZCkge1xyXG5cdFx0XHR0aGlzLl9hcHBsaWNhdGlvbklkID0gdGhpcy5nZXRFbGVtZW50SWRGcm9tRXZlbnQoZXZlbnQuY29tcG9zZWRQYXRoKCkpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IHNhbml0aXplcjogRG9tU2FuaXRpemVyLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBkYXRhRm9ybVNlcnZpY2U6IERhdGFGb3JtU2VydmljZSxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgYXBwbGljYXRpb25TZXJ2aWNlOiBBcHBsaWNhdGlvblNlcnZpY2UsXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IHBwcFNlcnZpY2U6IFBwcFNlcnZpY2UsXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IGNvbW1vblNlcnZpY2U6IENvbW1vblNlcnZpY2UsXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IGxvb2tBbmRGZWVsU2VydmljZTogUGxpQ25mTG9va0FuZEZlZWxTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBoZWFkZXI6IFBsaUNuZkhlYWRlclNlcnZpY2UsXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IHJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcblx0XHRwcml2YXRlIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuXHRcdHByaXZhdGUgZm9ybVNlcnZpY2U6IEZvcm1TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBwbGlDbmZQZGZTZXJ2aWNlOiBQbGlDbmZQZGZzU2VydmljZSxcclxuXHRcdHByaXZhdGUgcGxpQ25mSGVhZGVyU2VydmljZTogUGxpQ25mSGVhZGVyU2VydmljZSxcclxuXHRcdHByaXZhdGUgdG9rZW5UcmFuc2Zvcm1hdGlvblNlcnZpY2U6IFRva2VuVHJhbnNmb3JtYXRpb25TZXJ2aWNlXHJcblx0KSB7fVxyXG5cclxuXHRwcml2YXRlIGdldEVsZW1lbnRJZEZyb21FdmVudChwYXRoOiBhbnlbXSk6IHN0cmluZyB7XHJcblx0XHRjb25zdCBlbGVtZW50ID0gdGhpcy5nZXRFbGVtZW50KHBhdGgpO1xyXG5cdFx0cmV0dXJuIGVsZW1lbnQgPyBlbGVtZW50LmdldEF0dHJpYnV0ZSgnZGF0YS1lbGVtZW50LWlkJykgOiAnJztcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgZ2V0RWxlbWVudChwYXRoTGlzdDogYW55W10pIHtcclxuXHRcdHJldHVybiBwYXRoTGlzdC5maW5kKFxyXG5cdFx0XHQoZWxlbWVudCkgPT4gZWxlbWVudC5jbGFzc0xpc3QgJiYgZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnModGhpcy5hY3Rpb25DbGFzcylcclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRhc3luYyBodG1sdG9QREYoKSB7XHJcblx0XHRjb25zdCBhcHBsaWNhdGlvbkRhdGEgPSBhd2FpdCB0aGlzLmFwcGxpY2F0aW9uU2VydmljZVxyXG5cdFx0XHQuZ2V0QnlJZCh0aGlzLl9hcHBsaWNhdGlvbklkKVxyXG5cdFx0XHQudG9Qcm9taXNlKCk7XHJcblxyXG5cdFx0Y29uc3QgcHJvbUNvZGlnbyA9IGFwcGxpY2F0aW9uRGF0YS5wcm9tQ29kaWdvO1xyXG5cclxuXHRcdHRoaXMuYWxsRGF0YUZvcm1zID0gYXdhaXQgdGhpcy5kYXRhRm9ybVNlcnZpY2VcclxuXHRcdFx0LmdldEJ5QXBwbGljYXRpb25JZCh0aGlzLl9hcHBsaWNhdGlvbklkKVxyXG5cdFx0XHQudG9Qcm9taXNlKCk7XHJcblx0XHQvL2dldCBwYXRDb2RlXHJcblx0XHRjb25zdCBwYXRDb2RlID0gdGhpcy5wcHBTZXJ2aWNlLmdldFBhdENvZGlnb0J5UHJvbUNvZGlnbyh0aGlzLnByb21Db2RlKTtcclxuXHRcdC8vZ2V0IGhlYWRlclxyXG5cclxuXHRcdGlmICh0aGlzLmNvbmZpZ3VyYXRpb24uaGVhZGVyKSB7XHJcblx0XHRcdGNvbnN0IGhlYWRlcjogYW55ID0gYXdhaXQgdGhpcy5wbGlDbmZIZWFkZXJTZXJ2aWNlXHJcblx0XHRcdFx0LmdldEJ5UHJvbUNvZGlnbyh0aGlzLnByb21Db2RlKVxyXG5cdFx0XHRcdC50b1Byb21pc2UoKTtcclxuXHRcdFx0Y29uc3QgdGV4dCA9IGF3YWl0IHRoaXMudG9rZW5UcmFuc2Zvcm1hdGlvblNlcnZpY2VcclxuXHRcdFx0XHQudHJhbnNmb3JtQnlVc2VybmFtZShcclxuXHRcdFx0XHRcdHRoaXMuY29uZmlndXJhdGlvbi5oZWFkZXIsXHJcblx0XHRcdFx0XHRwcm9tQ29kaWdvLFxyXG5cdFx0XHRcdFx0YXBwbGljYXRpb25EYXRhLnVzZXJuYW1lXHJcblx0XHRcdFx0KVxyXG5cdFx0XHRcdC50b1Byb21pc2UoKTtcclxuXHRcdFx0dGhpcy5oZWFkZXJIdG1sID0gdGV4dC50eHQ7XHJcblx0XHR9XHJcblxyXG5cdFx0Ly9nZXQgZm9vdGVyXHJcblx0XHRpZiAodGhpcy5jb25maWd1cmF0aW9uLmZvb3Rlcikge1xyXG5cdFx0XHRjb25zdCB0ZXh0ID0gYXdhaXQgdGhpcy50b2tlblRyYW5zZm9ybWF0aW9uU2VydmljZVxyXG5cdFx0XHRcdC50cmFuc2Zvcm1CeVVzZXJuYW1lKFxyXG5cdFx0XHRcdFx0dGhpcy5jb25maWd1cmF0aW9uLmZvb3RlcixcclxuXHRcdFx0XHRcdHByb21Db2RpZ28sXHJcblx0XHRcdFx0XHRhcHBsaWNhdGlvbkRhdGEudXNlcm5hbWVcclxuXHRcdFx0XHQpXHJcblx0XHRcdFx0LnRvUHJvbWlzZSgpO1xyXG5cdFx0XHR0aGlzLmZvb3Rlckh0bWwgPSB0ZXh0LnR4dDtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAodGhpcy5jb25maWd1cmF0aW9uLmJvZHkpIHtcclxuXHRcdFx0Y29uc3QgdGV4dCA9IGF3YWl0IHRoaXMudG9rZW5UcmFuc2Zvcm1hdGlvblNlcnZpY2VcclxuXHRcdFx0XHQudHJhbnNmb3JtQnlVc2VybmFtZSh0aGlzLmNvbmZpZ3VyYXRpb24uYm9keSwgcHJvbUNvZGlnbywgYXBwbGljYXRpb25EYXRhLnVzZXJuYW1lKVxyXG5cdFx0XHRcdC50b1Byb21pc2UoKTtcclxuXHRcdFx0dGhpcy5Cb2R5SHRtbCA9IHRleHQudHh0O1xyXG5cdFx0fVxyXG5cdFx0Ly8gZmlsdGVyIGRhdGFmb3JtcyBieSBjb25maWdcclxuXHRcdGZvciAobGV0IGRmIG9mIHRoaXMuYWxsRGF0YUZvcm1zKSB7XHJcblx0XHRcdGlmICh0aGlzLmNvbmZpZ3VyYXRpb24uZm9ybXMuZmluZCgoZikgPT4gZiA9PT0gZGYuZm9ybUlkKSkge1xyXG5cdFx0XHRcdHRoaXMuZGF0YUZvcm1zID0gWy4uLnRoaXMuZGF0YUZvcm1zLCBkZl07XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC8vIGdldCBmb3Jtc1xyXG5cdFx0Zm9yIChjb25zdCBkZiBvZiB0aGlzLmRhdGFGb3Jtcykge1xyXG5cdFx0XHRsZXQgZm9ybSA9IGF3YWl0IHRoaXMuZm9ybVNlcnZpY2UuZ2V0QnlJZChkZi5mb3JtSWQpLnRvUHJvbWlzZSgpO1xyXG5cdFx0XHR0aGlzLmZvcm1zLnB1c2goZm9ybSk7XHJcblx0XHR9XHJcblx0XHQvLyBnZXQgbG9va0FuZEZlZWxNb2RlbFxyXG5cdFx0dGhpcy5sb29rQW5kRmVlbE1vZGVsID0gYXdhaXQgdGhpcy5sb29rQW5kRmVlbFNlcnZpY2UuZ2V0QnlJZChwYXRDb2RlKS50b1Byb21pc2UoKTtcclxuXHRcdGlmICh0aGlzLmxvb2tBbmRGZWVsTW9kZWwgJiYgdGhpcy5sb29rQW5kRmVlbE1vZGVsLmNsYWZlVXJsTG9nb0FwbGljYWNpb24pIHtcclxuXHRcdFx0Y29uc3QgbG9nb0Jhc2U2NCA9IGF3YWl0IHRoaXMuY29tbW9uU2VydmljZVxyXG5cdFx0XHRcdC5nZXRCYXNlNjRJbWFnZUJ5VXJsKHRoaXMubG9va0FuZEZlZWxNb2RlbC5jbGFmZVVybExvZ29BcGxpY2FjaW9uKVxyXG5cdFx0XHRcdC50b1Byb21pc2UoKTtcclxuXHRcdFx0dGhpcy51cmxMb2dvID0gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFVybChcclxuXHRcdFx0XHQnZGF0YTppbWFnZS9wbmc7YmFzZTY0LCAnICsgbG9nb0Jhc2U2NC5iYXNlNjRcclxuXHRcdFx0KTtcclxuXHRcdH1cclxuXHRcdGF3YWl0IHRoaXMuZXhwb3J0QXNQREYoKTtcclxuXHR9XHJcblxyXG5cdGFzeW5jIGV4cG9ydEFzUERGKCkge1xyXG5cdFx0Ly8gaWYgaHRtbCB3YXMgY2hhbmdlZFxyXG5cdFx0bGV0IHJlcXVlc3RQZGY6IFJlcXVlc3RQZGYgPSBuZXcgUmVxdWVzdFBkZigpO1xyXG5cdFx0cmVxdWVzdFBkZi5odG1sID0gdGhpcy5Cb2R5SHRtbDtcclxuXHRcdHJlcXVlc3RQZGYuaGVhZGVyID0gdGhpcy5oZWFkZXJIdG1sO1xyXG5cdFx0cmVxdWVzdFBkZi5mb290ZXIgPSB0aGlzLmZvb3Rlckh0bWw7XHJcblx0XHRyZXF1ZXN0UGRmLmxhbmcgPSAnZXMnO1xyXG5cdFx0cmVxdWVzdFBkZi5tYXJnaW5Ub3AgPSB0aGlzLmNvbmZpZ3VyYXRpb24ubWFyZ2luVG9wO1xyXG5cdFx0cmVxdWVzdFBkZi5tYXJnaW5SaWdodCA9IHRoaXMuY29uZmlndXJhdGlvbi5tYXJnaW5SaWdodDtcclxuXHRcdHJlcXVlc3RQZGYubWFyZ2luQm90dG9tID0gdGhpcy5jb25maWd1cmF0aW9uLm1hcmdpbkJvdHRvbTtcclxuXHRcdHJlcXVlc3RQZGYubWFyZ2luTGVmdCA9IHRoaXMuY29uZmlndXJhdGlvbi5tYXJnaW5MZWZ0O1xyXG5cclxuXHRcdHJlcXVlc3RQZGYucmVwZWF0SGVhZGVyID0gdHJ1ZTtcclxuXHRcdHJlcXVlc3RQZGYucmVwZWF0Rm9vdGVyID0gdHJ1ZTtcclxuXHRcdHJlcXVlc3RQZGYuc2hvd1BhZ2VyID0gdHJ1ZTtcclxuXHJcblx0XHR0aGlzLmNvbW1vblNlcnZpY2UuZ2V0QmFzZTY0UGRmKHJlcXVlc3RQZGYpLnN1YnNjcmliZShcclxuXHRcdFx0KHJlc3VsdCkgPT4ge1xyXG5cdFx0XHRcdHRoaXMuc2hvd0Jhc2U2NFBkZihyZXN1bHQpO1xyXG5cdFx0XHR9LFxyXG5cdFx0XHQoZXJyb3IpID0+IHtcclxuXHRcdFx0XHRjb25zb2xlLmxvZygnRXJyb3IgdHJ5aW5nIHRvIHJlbmRlciBQREYnLCBlcnJvcik7XHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRkb3dubG9hZCgpIHtcclxuXHRcdGNvbnN0IGNvbnRlbnRUeXBlID0gJ2FwcGxpY2F0aW9uL3BkZic7XHJcblx0XHRjb25zdCBiNjREYXRhID0gdGhpcy5iYXNlNjQ7XHJcblx0XHRjb25zdCBibG9iID0gdGhpcy5iNjR0b0Jsb2IoYjY0RGF0YSwgY29udGVudFR5cGUpO1xyXG5cdFx0Y29uc3QgYmxvYlVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XHJcblxyXG5cdFx0dmFyIGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XHJcblx0XHRkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGEpO1xyXG5cdFx0YS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xyXG5cdFx0YS5ocmVmID0gYmxvYlVybDtcclxuXHRcdGEuZG93bmxvYWQgPSAncmVzdW1lblBkZic7XHJcblx0XHRhLmNsaWNrKCk7XHJcblx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0d2luZG93LlVSTC5yZXZva2VPYmplY3RVUkwoYmxvYlVybCk7XHJcblx0XHRcdGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoYSk7XHJcblx0XHRcdHRoaXMub25Eb3dubG9hZC5lbWl0KHtcclxuXHRcdFx0XHRiYXNlNjQ6IHRoaXMuYmFzZTY0XHJcblx0XHRcdH0pO1xyXG5cdFx0fSwgMjAwKTtcclxuXHR9XHJcblxyXG5cdGI2NHRvQmxvYihiNjREYXRhLCBjb250ZW50VHlwZSA9ICcnLCBzbGljZVNpemUgPSA1MTIpIHtcclxuXHRcdGNvbnN0IGJ5dGVBcnJheXMgPSBbXTtcclxuXHRcdGNvbnN0IGJ5dGVDaGFyYWN0ZXJzID0gYXRvYihiNjREYXRhKTtcclxuXHRcdGZvciAobGV0IG9mZnNldCA9IDA7IG9mZnNldCA8IGJ5dGVDaGFyYWN0ZXJzLmxlbmd0aDsgb2Zmc2V0ICs9IHNsaWNlU2l6ZSkge1xyXG5cdFx0XHRjb25zdCBzbGljZSA9IGJ5dGVDaGFyYWN0ZXJzLnNsaWNlKG9mZnNldCwgb2Zmc2V0ICsgc2xpY2VTaXplKTtcclxuXHRcdFx0Y29uc3QgYnl0ZU51bWJlcnMgPSBuZXcgQXJyYXkoc2xpY2UubGVuZ3RoKTtcclxuXHRcdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBzbGljZS5sZW5ndGg7IGkrKykge1xyXG5cdFx0XHRcdGJ5dGVOdW1iZXJzW2ldID0gc2xpY2UuY2hhckNvZGVBdChpKTtcclxuXHRcdFx0fVxyXG5cdFx0XHRjb25zdCBieXRlQXJyYXkgPSBuZXcgVWludDhBcnJheShieXRlTnVtYmVycyk7XHJcblx0XHRcdGJ5dGVBcnJheXMucHVzaChieXRlQXJyYXkpO1xyXG5cdFx0fVxyXG5cdFx0Y29uc3QgYmxvYiA9IG5ldyBCbG9iKGJ5dGVBcnJheXMsIHsgdHlwZTogY29udGVudFR5cGUgfSk7XHJcblx0XHRyZXR1cm4gYmxvYjtcclxuXHR9XHJcblxyXG5cdHJlbmRlclBhZ2UobnVtKSB7XHJcblx0XHR0aGlzLnBkZkRvY3VtZW50LnBhZ2VSZW5kZXJpbmcgPSB0cnVlO1xyXG5cdFx0Ly8gYXNzaWduIHZhcmlhYmxlcyBvdXQgb2Ygc2NvcGVcclxuXHRcdGxldCBzZWxmUGRmRG9jdW1lbnQ6IFBkZkRvY3VtZW50ID0gdGhpcy5wZGZEb2N1bWVudDtcclxuXHRcdGxldCBzZWxmID0gdGhpcztcclxuXHRcdC8vIFVzaW5nIHByb21pc2UgdG8gZmV0Y2ggdGhlIHBhZ2VcclxuXHRcdHRoaXMucGRmRG9jdW1lbnQucGRmRG9jLmdldFBhZ2UobnVtKS50aGVuKGZ1bmN0aW9uIChwYWdlKSB7XHJcblx0XHRcdHZhciBzY2FsZSA9IHNlbGZQZGZEb2N1bWVudC5zY2FsZSA/IHNlbGZQZGZEb2N1bWVudC5zY2FsZSA6IDEuNTtcclxuXHRcdFx0dmFyIHZpZXdwb3J0ID0gcGFnZS5nZXRWaWV3cG9ydCh7IHNjYWxlOiBzY2FsZSB9KTtcclxuXHRcdFx0c2VsZlBkZkRvY3VtZW50LmNhbnZhcy5oZWlnaHQgPSB2aWV3cG9ydC5oZWlnaHQ7XHJcblx0XHRcdHNlbGZQZGZEb2N1bWVudC5jYW52YXMud2lkdGggPSB2aWV3cG9ydC53aWR0aDtcclxuXHJcblx0XHRcdC8vIFJlbmRlciBQREYgcGFnZSBpbnRvIGNhbnZhcyBjb250ZXh0XHJcblx0XHRcdHZhciByZW5kZXJDb250ZXh0ID0ge1xyXG5cdFx0XHRcdGNhbnZhc0NvbnRleHQ6IHNlbGZQZGZEb2N1bWVudC5jYW52YXMuZ2V0Q29udGV4dCgnMmQnKSxcclxuXHRcdFx0XHR2aWV3cG9ydDogdmlld3BvcnRcclxuXHRcdFx0fTtcclxuXHRcdFx0dmFyIHJlbmRlclRhc2sgPSBwYWdlLnJlbmRlcihyZW5kZXJDb250ZXh0KTtcclxuXHJcblx0XHRcdC8vIFdhaXQgZm9yIHJlbmRlcmluZyB0byBmaW5pc2hcclxuXHRcdFx0cmVuZGVyVGFzay5wcm9taXNlLnRoZW4oZnVuY3Rpb24gKCkge1xyXG5cdFx0XHRcdHNlbGZQZGZEb2N1bWVudC5wYWdlUmVuZGVyaW5nID0gZmFsc2U7XHJcblx0XHRcdFx0aWYgKHNlbGZQZGZEb2N1bWVudC5wYWdlTnVtUGVuZGluZyAhPT0gbnVsbCkge1xyXG5cdFx0XHRcdFx0Ly8gTmV3IHBhZ2UgcmVuZGVyaW5nIGlzIHBlbmRpbmdcclxuXHRcdFx0XHRcdHRoaXMucmVuZGVyUGFnZShzZWxmUGRmRG9jdW1lbnQucGFnZU51bVBlbmRpbmcpO1xyXG5cdFx0XHRcdFx0c2VsZlBkZkRvY3VtZW50LnBhZ2VOdW1QZW5kaW5nID0gbnVsbDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0pO1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRzaG93QmFzZTY0UGRmKHJlc3VsdCkge1xyXG5cdFx0dGhpcy5iYXNlNjQgPSByZXN1bHQuYmFzZTY0O1xyXG5cdFx0dGhpcy5kb3dubG9hZCgpO1xyXG5cdH1cclxuXHRkZWxldGVCdXR0b25zKGRvYykge1xyXG5cdFx0Y29uc3QgYnV0dG9ucyA9IGRvYy5xdWVyeVNlbGVjdG9yQWxsKCdidXR0b24nKTtcclxuXHRcdGZvciAobGV0IGkgPSAwOyBpIDwgYnV0dG9ucy5sZW5ndGg7IGkrKykge1xyXG5cdFx0XHRidXR0b25zW2ldLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIjxkaXYgI2NvbnRlbnQgaWQ9XCJjb250ZW50XCIgY2xhc3M9XCJtYWluLWNvbnRlbnRcIiBbY2xhc3MubWFpbi1jb250ZW50LS1zaG93XT1cImRpc3BsYXlcIj5cclxuICA8ZGl2IGNsYXNzPVwiaGVhZGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLWl0ZW1cIj5cclxuICAgICAgPGltZyBbc3JjXT1cInVybExvZ29cIiBhbHQ9XCJsb2dvXCIgY2xhc3M9XCJpbWctbG9nb1wiPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLWl0ZW1cIj5cclxuICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cImhlYWRlckh0bWxcIj48L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgKm5nRm9yPVwibGV0IGYgb2YgZGF0YUZvcm1zOyBpbmRleCBhcyBpXCI+XHJcbiAgICA8Zm9ybWlvIFtmb3JtXT1cImZvcm1zW2ldXCIgW3N1Ym1pc3Npb25dPVwiZGF0YUZvcm1zW2ldXCI+PC9mb3JtaW8+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaHRtbDJwZGZfX3BhZ2UtYnJlYWtcIj48L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IFtpbm5lckhUTUxdPVwiZm9vdGVySHRtbFwiPjwvZGl2PlxyXG48L2Rpdj5cclxuPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgYnRuLXNtXCIgKGNsaWNrKT1cIm1lbnUudG9nZ2xlKCRldmVudClcIiB0aXRsZT1cIlBERlwiPlxyXG4gIDxzcGFuIGNsYXNzPVwiZmEgZmEtZmlsZS1wZGZcIj48L3NwYW4+e3sgc2hvd0xhYmVsID8gJ0dlbmVyYXIgUERGJyA6ICcnIH19XHJcbjwvYnV0dG9uPlxyXG48cC10aWVyZWRNZW51ICNtZW51IFttb2RlbF09XCJpdGVtc1wiIGFwcGVuZFRvPVwiYm9keVwiIFtwb3B1cF09XCJ0cnVlXCI+PC9wLXRpZXJlZE1lbnU+XHJcbiJdfQ==
|
package/esm2020/version.mjs
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
/* tslint:disable */
|
|
3
3
|
export const VERSION = {
|
|
4
4
|
"dirty": true,
|
|
5
|
-
"raw": "v0.0.18-
|
|
6
|
-
"hash": "
|
|
7
|
-
"distance":
|
|
5
|
+
"raw": "v0.0.18-2241-g750af2d2-dirty",
|
|
6
|
+
"hash": "g750af2d2",
|
|
7
|
+
"distance": 2241,
|
|
8
8
|
"tag": "v0.0.18",
|
|
9
9
|
"semver": {
|
|
10
10
|
"options": {
|
|
@@ -20,10 +20,10 @@ export const VERSION = {
|
|
|
20
20
|
"build": [],
|
|
21
21
|
"version": "0.0.18"
|
|
22
22
|
},
|
|
23
|
-
"suffix": "
|
|
24
|
-
"semverString": "0.0.18+
|
|
25
|
-
"version": "0.0.
|
|
26
|
-
"buildTimestamp": "2023-05-
|
|
23
|
+
"suffix": "2241-g750af2d2-dirty",
|
|
24
|
+
"semverString": "0.0.18+2241.g750af2d2",
|
|
25
|
+
"version": "0.0.1739",
|
|
26
|
+
"buildTimestamp": "2023-05-05T20:23:28.859Z"
|
|
27
27
|
};
|
|
28
28
|
/* tslint:enable */
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25nLXBsaS1jb21tb25zL3NyYy92ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDJFQUEyRTtBQUMzRSxvQkFBb0I7QUFDcEIsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHO0lBQ25CLE9BQU8sRUFBRSxJQUFJO0lBQ2IsS0FBSyxFQUFFLDhCQUE4QjtJQUNyQyxNQUFNLEVBQUUsV0FBVztJQUNuQixVQUFVLEVBQUUsSUFBSTtJQUNoQixLQUFLLEVBQUUsU0FBUztJQUNoQixRQUFRLEVBQUU7UUFDTixTQUFTLEVBQUU7WUFDUCxPQUFPLEVBQUUsS0FBSztZQUNkLG1CQUFtQixFQUFFLEtBQUs7U0FDN0I7UUFDRCxPQUFPLEVBQUUsS0FBSztRQUNkLEtBQUssRUFBRSxTQUFTO1FBQ2hCLE9BQU8sRUFBRSxDQUFDO1FBQ1YsT0FBTyxFQUFFLENBQUM7UUFDVixPQUFPLEVBQUUsRUFBRTtRQUNYLFlBQVksRUFBRSxFQUFFO1FBQ2hCLE9BQU8sRUFBRSxFQUFFO1FBQ1gsU0FBUyxFQUFFLFFBQVE7S0FDdEI7SUFDRCxRQUFRLEVBQUUsc0JBQXNCO0lBQ2hDLGNBQWMsRUFBRSx1QkFBdUI7SUFDdkMsU0FBUyxFQUFFLFVBQVU7SUFDckIsZ0JBQWdCLEVBQUUsMEJBQTBCO0NBQy9DLENBQUM7QUFDRixtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJTVBPUlRBTlQ6IFRISVMgRklMRSBJUyBBVVRPIEdFTkVSQVRFRCEgRE8gTk9UIE1BTlVBTExZIEVESVQgT1IgQ0hFQ0tJTiFcbi8qIHRzbGludDpkaXNhYmxlICovXG5leHBvcnQgY29uc3QgVkVSU0lPTiA9IHtcbiAgICBcImRpcnR5XCI6IHRydWUsXG4gICAgXCJyYXdcIjogXCJ2MC4wLjE4LTIyNDEtZzc1MGFmMmQyLWRpcnR5XCIsXG4gICAgXCJoYXNoXCI6IFwiZzc1MGFmMmQyXCIsXG4gICAgXCJkaXN0YW5jZVwiOiAyMjQxLFxuICAgIFwidGFnXCI6IFwidjAuMC4xOFwiLFxuICAgIFwic2VtdmVyXCI6IHtcbiAgICAgICAgXCJvcHRpb25zXCI6IHtcbiAgICAgICAgICAgIFwibG9vc2VcIjogZmFsc2UsXG4gICAgICAgICAgICBcImluY2x1ZGVQcmVyZWxlYXNlXCI6IGZhbHNlXG4gICAgICAgIH0sXG4gICAgICAgIFwibG9vc2VcIjogZmFsc2UsXG4gICAgICAgIFwicmF3XCI6IFwidjAuMC4xOFwiLFxuICAgICAgICBcIm1ham9yXCI6IDAsXG4gICAgICAgIFwibWlub3JcIjogMCxcbiAgICAgICAgXCJwYXRjaFwiOiAxOCxcbiAgICAgICAgXCJwcmVyZWxlYXNlXCI6IFtdLFxuICAgICAgICBcImJ1aWxkXCI6IFtdLFxuICAgICAgICBcInZlcnNpb25cIjogXCIwLjAuMThcIlxuICAgIH0sXG4gICAgXCJzdWZmaXhcIjogXCIyMjQxLWc3NTBhZjJkMi1kaXJ0eVwiLFxuICAgIFwic2VtdmVyU3RyaW5nXCI6IFwiMC4wLjE4KzIyNDEuZzc1MGFmMmQyXCIsXG4gICAgXCJ2ZXJzaW9uXCI6IFwiMC4wLjE3MzlcIixcbiAgICBcImJ1aWxkVGltZXN0YW1wXCI6IFwiMjAyMy0wNS0wNVQyMDoyMzoyOC44NTlaXCJcbn07XG4vKiB0c2xpbnQ6ZW5hYmxlICovXG4iXX0=
|
|
@@ -17,7 +17,7 @@ import { FormioModule, FormioComponent } from 'formioangular-colfuturo';
|
|
|
17
17
|
import * as i4$2 from '@tinymce/tinymce-angular';
|
|
18
18
|
import { EditorModule } from '@tinymce/tinymce-angular';
|
|
19
19
|
import * as i7 from 'ng-pli-util';
|
|
20
|
-
import { NumberUtil, AuthenticationUtil, JwtUtil, PliPatrocinador, PliPrograma, PliPromocion, HEADER_JSON, Moneda, Rubro, TasaCambio, Proceso, DateUtil, primeLocaleEs, UtilString, EPermission, EFormioKey, PliCnfPresupuestoGlobal, PliCnfPresupuestoGlobalRubro, PliCnfPresupuestoAsistente, PliCnfSnapshotToken, PliCnfGuaranteeToken, ETipoPresupuesto, Token, ETypeColumn, SegFilter, EPdfSize, EPdfOrientation, RequestPdf,
|
|
20
|
+
import { NumberUtil, AuthenticationUtil, JwtUtil, PliPatrocinador, PliPrograma, PliPromocion, HEADER_JSON, Moneda, Rubro, TasaCambio, Proceso, DateUtil, primeLocaleEs, UtilString, EPermission, EFormioKey, PliCnfPresupuestoGlobal, PliCnfPresupuestoGlobalRubro, PliCnfPresupuestoAsistente, PliCnfSnapshotToken, PliCnfGuaranteeToken, ETipoPresupuesto, Token, ETypeColumn, SegFilter, EPdfSize, EPdfOrientation, RequestPdf, EProceso, PdfDocument, PliUsuario, Email, InteractionApplicationUser, ETypeStaticInteraction, SendApplication, EDocumentState, Document, EBudgetError, EBudgetBuildType, ECnfPageSection, EProjectFrom, DatatableUtil, NgPliUtilModule, ApplicationBudgetTotal, Archive } from 'ng-pli-util';
|
|
21
21
|
import * as i5 from 'primeng/dialog';
|
|
22
22
|
import { DialogModule } from 'primeng/dialog';
|
|
23
23
|
import * as i2$1 from 'primeng/dropdown';
|
|
@@ -39,9 +39,9 @@ import { map, catchError } from 'rxjs/operators';
|
|
|
39
39
|
import * as i6 from 'primeng/api';
|
|
40
40
|
import * as XLSX from 'xlsx';
|
|
41
41
|
import * as PDFJS_ from 'pdfjs-dist/build/pdf';
|
|
42
|
+
import * as i1$1 from '@angular/platform-browser';
|
|
42
43
|
import * as Panzoom from 'panzoom/dist/panzoom';
|
|
43
44
|
import Panzoom__default from 'panzoom/dist/panzoom';
|
|
44
|
-
import * as i1$1 from '@angular/platform-browser';
|
|
45
45
|
import * as i1$2 from '@angular/fire/compat/auth';
|
|
46
46
|
import 'jquery';
|
|
47
47
|
import * as FileSaver from 'file-saver';
|
|
@@ -5582,28 +5582,41 @@ class PdfGeneratorComponent {
|
|
|
5582
5582
|
}
|
|
5583
5583
|
htmltoPDF() {
|
|
5584
5584
|
return __awaiter(this, void 0, void 0, function* () {
|
|
5585
|
-
|
|
5586
|
-
|
|
5585
|
+
const applicationData = yield this.applicationService
|
|
5586
|
+
.getById(this._applicationId)
|
|
5587
|
+
.toPromise();
|
|
5588
|
+
const promCodigo = applicationData.promCodigo;
|
|
5589
|
+
this.allDataForms = yield this.dataFormService
|
|
5590
|
+
.getByApplicationId(this._applicationId)
|
|
5591
|
+
.toPromise();
|
|
5587
5592
|
//get patCode
|
|
5588
5593
|
const patCode = this.pppService.getPatCodigoByPromCodigo(this.promCode);
|
|
5589
5594
|
//get header
|
|
5590
5595
|
if (this.configuration.header) {
|
|
5591
|
-
const header = yield this.pliCnfHeaderService
|
|
5592
|
-
|
|
5596
|
+
const header = yield this.pliCnfHeaderService
|
|
5597
|
+
.getByPromCodigo(this.promCode)
|
|
5598
|
+
.toPromise();
|
|
5599
|
+
const text = yield this.tokenTransformationService
|
|
5600
|
+
.transformByUsername(this.configuration.header, promCodigo, applicationData.username)
|
|
5601
|
+
.toPromise();
|
|
5593
5602
|
this.headerHtml = text.txt;
|
|
5594
5603
|
}
|
|
5595
5604
|
//get footer
|
|
5596
5605
|
if (this.configuration.footer) {
|
|
5597
|
-
const text = yield this.tokenTransformationService
|
|
5606
|
+
const text = yield this.tokenTransformationService
|
|
5607
|
+
.transformByUsername(this.configuration.footer, promCodigo, applicationData.username)
|
|
5608
|
+
.toPromise();
|
|
5598
5609
|
this.footerHtml = text.txt;
|
|
5599
5610
|
}
|
|
5600
|
-
if (this.configuration.
|
|
5601
|
-
const text = yield this.tokenTransformationService
|
|
5611
|
+
if (this.configuration.body) {
|
|
5612
|
+
const text = yield this.tokenTransformationService
|
|
5613
|
+
.transformByUsername(this.configuration.body, promCodigo, applicationData.username)
|
|
5614
|
+
.toPromise();
|
|
5602
5615
|
this.BodyHtml = text.txt;
|
|
5603
5616
|
}
|
|
5604
5617
|
// filter dataforms by config
|
|
5605
5618
|
for (let df of this.allDataForms) {
|
|
5606
|
-
if (this.configuration.forms.find(f => f === df.formId)) {
|
|
5619
|
+
if (this.configuration.forms.find((f) => f === df.formId)) {
|
|
5607
5620
|
this.dataForms = [...this.dataForms, df];
|
|
5608
5621
|
}
|
|
5609
5622
|
}
|
|
@@ -5615,7 +5628,9 @@ class PdfGeneratorComponent {
|
|
|
5615
5628
|
// get lookAndFeelModel
|
|
5616
5629
|
this.lookAndFeelModel = yield this.lookAndFeelService.getById(patCode).toPromise();
|
|
5617
5630
|
if (this.lookAndFeelModel && this.lookAndFeelModel.clafeUrlLogoAplicacion) {
|
|
5618
|
-
const logoBase64 = yield this.commonService
|
|
5631
|
+
const logoBase64 = yield this.commonService
|
|
5632
|
+
.getBase64ImageByUrl(this.lookAndFeelModel.clafeUrlLogoAplicacion)
|
|
5633
|
+
.toPromise();
|
|
5619
5634
|
this.urlLogo = this.sanitizer.bypassSecurityTrustUrl('data:image/png;base64, ' + logoBase64.base64);
|
|
5620
5635
|
}
|
|
5621
5636
|
yield this.exportAsPDF();
|
|
@@ -5628,7 +5643,7 @@ class PdfGeneratorComponent {
|
|
|
5628
5643
|
requestPdf.html = this.BodyHtml;
|
|
5629
5644
|
requestPdf.header = this.headerHtml;
|
|
5630
5645
|
requestPdf.footer = this.footerHtml;
|
|
5631
|
-
requestPdf.lang =
|
|
5646
|
+
requestPdf.lang = 'es';
|
|
5632
5647
|
requestPdf.marginTop = this.configuration.marginTop;
|
|
5633
5648
|
requestPdf.marginRight = this.configuration.marginRight;
|
|
5634
5649
|
requestPdf.marginBottom = this.configuration.marginBottom;
|
|
@@ -5652,7 +5667,7 @@ class PdfGeneratorComponent {
|
|
|
5652
5667
|
document.body.appendChild(a);
|
|
5653
5668
|
a.style.display = 'none';
|
|
5654
5669
|
a.href = blobUrl;
|
|
5655
|
-
a.download =
|
|
5670
|
+
a.download = 'resumenPdf';
|
|
5656
5671
|
a.click();
|
|
5657
5672
|
setTimeout(() => {
|
|
5658
5673
|
window.URL.revokeObjectURL(blobUrl);
|
|
@@ -5708,34 +5723,11 @@ class PdfGeneratorComponent {
|
|
|
5708
5723
|
showBase64Pdf(result) {
|
|
5709
5724
|
this.base64 = result.base64;
|
|
5710
5725
|
this.download();
|
|
5711
|
-
var data = atob(this.base64);
|
|
5712
|
-
PDFJS$2.workerSrc = 'https://cdnjs.cloudflare.com/ajax/libs/pdf.js/2.16.105/pdf.worker.js';
|
|
5713
|
-
if (PDFJS$2.GlobalWorkerOptions)
|
|
5714
|
-
PDFJS$2.GlobalWorkerOptions.workerSrc =
|
|
5715
|
-
'https://cdnjs.cloudflare.com/ajax/libs/pdf.js/2.16.105/pdf.worker.js';
|
|
5716
|
-
// create instance of PdfDocument with the id of canvas
|
|
5717
|
-
// create instance of PdfDocument with the id of canvas
|
|
5718
|
-
this.pdfDocument = new PdfDocument(this.id_canvas);
|
|
5719
|
-
// assign variables out of scope
|
|
5720
|
-
let pdfdocument = this.pdfDocument;
|
|
5721
|
-
Panzoom__default(this.pdfDocument.canvas, {
|
|
5722
|
-
smoothScroll: false
|
|
5723
|
-
});
|
|
5724
|
-
let self = this;
|
|
5725
|
-
let ready = this.ready;
|
|
5726
|
-
const pdfLoadingTask = PDFJS$2.getDocument({ data: data });
|
|
5727
|
-
// JP - here we ask if the promise supports the new version pdfLoadingTask.promise
|
|
5728
|
-
const promise = pdfLoadingTask.promise ? pdfLoadingTask.promise : pdfLoadingTask;
|
|
5729
|
-
promise.then(function (pdfDoc_) {
|
|
5730
|
-
pdfdocument.pdfDoc = pdfDoc_;
|
|
5731
|
-
this.renderPage(1);
|
|
5732
|
-
ready = true;
|
|
5733
|
-
});
|
|
5734
5726
|
}
|
|
5735
5727
|
deleteButtons(doc) {
|
|
5736
|
-
const buttons = doc.querySelectorAll(
|
|
5728
|
+
const buttons = doc.querySelectorAll('button');
|
|
5737
5729
|
for (let i = 0; i < buttons.length; i++) {
|
|
5738
|
-
buttons[i].style.display =
|
|
5730
|
+
buttons[i].style.display = 'none';
|
|
5739
5731
|
}
|
|
5740
5732
|
}
|
|
5741
5733
|
}
|
|
@@ -15937,9 +15929,9 @@ class CustomValidator {
|
|
|
15937
15929
|
/* tslint:disable */
|
|
15938
15930
|
const VERSION = {
|
|
15939
15931
|
"dirty": true,
|
|
15940
|
-
"raw": "v0.0.18-
|
|
15941
|
-
"hash": "
|
|
15942
|
-
"distance":
|
|
15932
|
+
"raw": "v0.0.18-2241-g750af2d2-dirty",
|
|
15933
|
+
"hash": "g750af2d2",
|
|
15934
|
+
"distance": 2241,
|
|
15943
15935
|
"tag": "v0.0.18",
|
|
15944
15936
|
"semver": {
|
|
15945
15937
|
"options": {
|
|
@@ -15955,10 +15947,10 @@ const VERSION = {
|
|
|
15955
15947
|
"build": [],
|
|
15956
15948
|
"version": "0.0.18"
|
|
15957
15949
|
},
|
|
15958
|
-
"suffix": "
|
|
15959
|
-
"semverString": "0.0.18+
|
|
15960
|
-
"version": "0.0.
|
|
15961
|
-
"buildTimestamp": "2023-05-
|
|
15950
|
+
"suffix": "2241-g750af2d2-dirty",
|
|
15951
|
+
"semverString": "0.0.18+2241.g750af2d2",
|
|
15952
|
+
"version": "0.0.1739",
|
|
15953
|
+
"buildTimestamp": "2023-05-05T20:23:28.859Z"
|
|
15962
15954
|
};
|
|
15963
15955
|
/* tslint:enable */
|
|
15964
15956
|
|