valtech-components 4.0.166 → 4.0.168
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/molecules/ticket-card/ticket-card.component.mjs +4 -1
- package/esm2022/lib/components/molecules/ticket-card/types.mjs +1 -1
- package/esm2022/lib/services/app-version/app-version.service.mjs +57 -6
- package/esm2022/lib/services/ticket-card-image/ticket-card-image.service.mjs +117 -41
- package/esm2022/lib/services/ticket-card-image/types.mjs +1 -1
- package/esm2022/lib/version.mjs +2 -2
- package/fesm2022/valtech-components.mjs +175 -45
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/molecules/ticket-card/types.d.ts +7 -1
- package/lib/services/app-version/app-version.service.d.ts +8 -0
- package/lib/services/ticket-card-image/ticket-card-image.service.d.ts +3 -0
- package/lib/services/ticket-card-image/types.d.ts +6 -0
- package/lib/version.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
const CANVAS_WIDTH = 560;
|
|
4
|
-
const HEADER_H =
|
|
5
|
-
const QR_ZONE_H =
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const
|
|
4
|
+
const HEADER_H = 210;
|
|
5
|
+
const QR_ZONE_H = 340;
|
|
6
|
+
const PERF_H = 28;
|
|
7
|
+
const FOOTER_H = 220;
|
|
8
|
+
const CANVAS_HEIGHT = HEADER_H + QR_ZONE_H + PERF_H + FOOTER_H;
|
|
9
|
+
const QR_SIZE = 260;
|
|
9
10
|
const DEFAULT_BRAND_COLOR = '#9b1fde';
|
|
10
11
|
const DEFAULT_BRAND_COLOR_TO = '#c93075';
|
|
11
|
-
const FONT_STACK = 'Khula, Arial, sans-serif';
|
|
12
|
+
const FONT_STACK = '"Plus Jakarta Sans", Khula, Arial, sans-serif';
|
|
12
13
|
export class TicketCardImageService {
|
|
13
14
|
async generate(config) {
|
|
14
15
|
const width = config.width ?? CANVAS_WIDTH;
|
|
@@ -26,6 +27,7 @@ export class TicketCardImageService {
|
|
|
26
27
|
}
|
|
27
28
|
await this.drawHeader(ctx, config, width);
|
|
28
29
|
await this.drawQrZone(ctx, config, width);
|
|
30
|
+
this.drawPerforated(ctx, config, width);
|
|
29
31
|
this.drawFooter(ctx, config, width);
|
|
30
32
|
if (canvas instanceof OffscreenCanvas) {
|
|
31
33
|
return canvas.convertToBlob({ type: 'image/png' });
|
|
@@ -79,31 +81,41 @@ export class TicketCardImageService {
|
|
|
79
81
|
grad.addColorStop(1, colorTo);
|
|
80
82
|
ctx.fillStyle = grad;
|
|
81
83
|
ctx.fillRect(0, 0, width, HEADER_H);
|
|
82
|
-
const logoH =
|
|
83
|
-
const
|
|
84
|
-
let
|
|
84
|
+
const logoH = 48;
|
|
85
|
+
const logoPadTop = 28;
|
|
86
|
+
let cursorY = logoPadTop;
|
|
85
87
|
if (config.logoUrl) {
|
|
86
88
|
try {
|
|
87
89
|
const logoImg = await this.loadImage(config.logoUrl);
|
|
88
90
|
const ratio = logoImg.width / logoImg.height;
|
|
89
91
|
const logoW = logoH * ratio;
|
|
90
|
-
const logoX =
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
if (config.brandName) {
|
|
94
|
-
textY = logoY + logoH + 14;
|
|
95
|
-
}
|
|
92
|
+
const logoX = (width - logoW) / 2;
|
|
93
|
+
ctx.drawImage(logoImg, logoX, cursorY, logoW, logoH);
|
|
94
|
+
cursorY += logoH + 14;
|
|
96
95
|
}
|
|
97
96
|
catch {
|
|
98
|
-
// logo failed —
|
|
97
|
+
// logo failed — continue without it
|
|
99
98
|
}
|
|
100
99
|
}
|
|
101
100
|
if (config.brandName) {
|
|
102
101
|
ctx.fillStyle = '#ffffff';
|
|
103
|
-
ctx.font = `bold 1.
|
|
102
|
+
ctx.font = `bold 1.625rem ${FONT_STACK}`;
|
|
103
|
+
ctx.textAlign = 'center';
|
|
104
|
+
ctx.textBaseline = 'top';
|
|
105
|
+
ctx.fillText(config.brandName, width / 2, cursorY, width - 48);
|
|
106
|
+
cursorY += 32;
|
|
107
|
+
}
|
|
108
|
+
const metaParts = [];
|
|
109
|
+
if (config.eventDate)
|
|
110
|
+
metaParts.push(config.eventDate);
|
|
111
|
+
if (config.eventLocation)
|
|
112
|
+
metaParts.push(config.eventLocation);
|
|
113
|
+
if (metaParts.length > 0) {
|
|
114
|
+
ctx.fillStyle = 'rgba(255,255,255,0.78)';
|
|
115
|
+
ctx.font = `0.875rem ${FONT_STACK}`;
|
|
104
116
|
ctx.textAlign = 'center';
|
|
105
|
-
ctx.textBaseline = '
|
|
106
|
-
ctx.fillText(
|
|
117
|
+
ctx.textBaseline = 'top';
|
|
118
|
+
ctx.fillText(metaParts.join(' · '), width / 2, cursorY, width - 48);
|
|
107
119
|
}
|
|
108
120
|
}
|
|
109
121
|
async drawQrZone(ctx, config, width) {
|
|
@@ -111,7 +123,7 @@ export class TicketCardImageService {
|
|
|
111
123
|
ctx.fillStyle = '#ffffff';
|
|
112
124
|
ctx.fillRect(0, zoneTop, width, QR_ZONE_H);
|
|
113
125
|
const qrX = (width - QR_SIZE) / 2;
|
|
114
|
-
const qrY = zoneTop + (QR_ZONE_H - QR_SIZE -
|
|
126
|
+
const qrY = zoneTop + (QR_ZONE_H - QR_SIZE - 40) / 2;
|
|
115
127
|
try {
|
|
116
128
|
const qrImg = await this.loadImage(config.qrDataUrl);
|
|
117
129
|
ctx.drawImage(qrImg, qrX, qrY, QR_SIZE, QR_SIZE);
|
|
@@ -120,42 +132,106 @@ export class TicketCardImageService {
|
|
|
120
132
|
ctx.strokeStyle = '#e0e0e0';
|
|
121
133
|
ctx.strokeRect(qrX, qrY, QR_SIZE, QR_SIZE);
|
|
122
134
|
}
|
|
123
|
-
|
|
124
|
-
ctx.
|
|
135
|
+
const hint = config.scanHint ?? 'Muestra este QR en la puerta para canjear tu entrada.';
|
|
136
|
+
ctx.fillStyle = '#6b6675';
|
|
137
|
+
ctx.font = `0.875rem ${FONT_STACK}`;
|
|
125
138
|
ctx.textAlign = 'center';
|
|
126
139
|
ctx.textBaseline = 'top';
|
|
127
|
-
|
|
140
|
+
const hintY = qrY + QR_SIZE + 14;
|
|
141
|
+
this.fillWrappedText(ctx, hint, width / 2, hintY, width - 80, 22);
|
|
142
|
+
}
|
|
143
|
+
drawPerforated(ctx, config, width) {
|
|
144
|
+
const y = HEADER_H + QR_ZONE_H;
|
|
145
|
+
const notchR = PERF_H / 2;
|
|
146
|
+
const colorFrom = config.brandColor ?? DEFAULT_BRAND_COLOR;
|
|
147
|
+
ctx.fillStyle = '#ffffff';
|
|
148
|
+
ctx.fillRect(0, y, width, PERF_H);
|
|
149
|
+
// Left notch (semicircle cut from edge)
|
|
150
|
+
ctx.fillStyle = '#f8f8f8';
|
|
151
|
+
ctx.beginPath();
|
|
152
|
+
ctx.arc(-1, y + notchR, notchR + 1, -Math.PI / 2, Math.PI / 2);
|
|
153
|
+
ctx.fill();
|
|
154
|
+
// Right notch
|
|
155
|
+
ctx.beginPath();
|
|
156
|
+
ctx.arc(width + 1, y + notchR, notchR + 1, Math.PI / 2, -Math.PI / 2);
|
|
157
|
+
ctx.fill();
|
|
158
|
+
// Dashed line in middle
|
|
159
|
+
ctx.setLineDash([8, 6]);
|
|
160
|
+
ctx.strokeStyle = colorFrom + '55';
|
|
161
|
+
ctx.lineWidth = 1.5;
|
|
162
|
+
ctx.beginPath();
|
|
163
|
+
ctx.moveTo(notchR * 2 + 8, y + notchR);
|
|
164
|
+
ctx.lineTo(width - notchR * 2 - 8, y + notchR);
|
|
165
|
+
ctx.stroke();
|
|
166
|
+
ctx.setLineDash([]);
|
|
128
167
|
}
|
|
129
168
|
drawFooter(ctx, config, width) {
|
|
130
|
-
const footerTop = HEADER_H + QR_ZONE_H;
|
|
169
|
+
const footerTop = HEADER_H + QR_ZONE_H + PERF_H;
|
|
170
|
+
const colorFrom = config.brandColor ?? DEFAULT_BRAND_COLOR;
|
|
131
171
|
ctx.fillStyle = '#ffffff';
|
|
132
172
|
ctx.fillRect(0, footerTop, width, FOOTER_H);
|
|
133
|
-
|
|
134
|
-
ctx.fillStyle = colorFrom;
|
|
135
|
-
ctx.fillRect(0, footerTop, width, 3);
|
|
136
|
-
let contentY = footerTop + 40;
|
|
173
|
+
let contentY = footerTop + 32;
|
|
137
174
|
if (config.folio !== undefined && config.folio !== null && config.folio !== '') {
|
|
138
|
-
const label = config.folioLabel ?? '
|
|
139
|
-
|
|
140
|
-
ctx.fillStyle =
|
|
141
|
-
ctx.font = `
|
|
175
|
+
const label = (config.folioLabel ?? 'Cartón').toUpperCase();
|
|
176
|
+
// Label small — brand color, letter-spaced
|
|
177
|
+
ctx.fillStyle = colorFrom;
|
|
178
|
+
ctx.font = `600 0.8125rem ${FONT_STACK}`;
|
|
142
179
|
ctx.textAlign = 'center';
|
|
143
180
|
ctx.textBaseline = 'top';
|
|
144
|
-
|
|
145
|
-
contentY +=
|
|
181
|
+
this.fillLetterSpaced(ctx, label, width / 2, contentY, 3);
|
|
182
|
+
contentY += 24;
|
|
183
|
+
// Folio number — large, bold, brand color
|
|
184
|
+
ctx.fillStyle = colorFrom;
|
|
185
|
+
ctx.font = `800 3.5rem ${FONT_STACK}`;
|
|
186
|
+
ctx.textAlign = 'center';
|
|
187
|
+
ctx.textBaseline = 'top';
|
|
188
|
+
ctx.fillText(`#${config.folio}`, width / 2, contentY, width - 40);
|
|
189
|
+
contentY += 68;
|
|
146
190
|
}
|
|
147
191
|
if (config.buyerName) {
|
|
148
|
-
ctx.fillStyle = '#
|
|
149
|
-
ctx.font = `
|
|
192
|
+
ctx.fillStyle = '#6b6675';
|
|
193
|
+
ctx.font = `0.9375rem ${FONT_STACK}`;
|
|
150
194
|
ctx.textAlign = 'center';
|
|
151
195
|
ctx.textBaseline = 'top';
|
|
152
196
|
ctx.fillText(config.buyerName, width / 2, contentY, width - 40);
|
|
153
197
|
}
|
|
154
|
-
|
|
155
|
-
ctx.
|
|
156
|
-
ctx.
|
|
198
|
+
// Copyright
|
|
199
|
+
ctx.fillStyle = '#b0a8bc';
|
|
200
|
+
ctx.font = `0.6875rem ${FONT_STACK}`;
|
|
201
|
+
ctx.textAlign = 'center';
|
|
157
202
|
ctx.textBaseline = 'bottom';
|
|
158
|
-
ctx.fillText('Valtech', width
|
|
203
|
+
ctx.fillText('© 2026 Valtech. Todos los derechos reservados.', width / 2, footerTop + FOOTER_H - 14);
|
|
204
|
+
}
|
|
205
|
+
fillWrappedText(ctx, text, x, y, maxWidth, lineHeight) {
|
|
206
|
+
const words = text.split(' ');
|
|
207
|
+
let line = '';
|
|
208
|
+
let curY = y;
|
|
209
|
+
for (const word of words) {
|
|
210
|
+
const test = line ? `${line} ${word}` : word;
|
|
211
|
+
if (ctx.measureText(test).width > maxWidth && line) {
|
|
212
|
+
ctx.fillText(line, x, curY);
|
|
213
|
+
line = word;
|
|
214
|
+
curY += lineHeight;
|
|
215
|
+
}
|
|
216
|
+
else {
|
|
217
|
+
line = test;
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
if (line)
|
|
221
|
+
ctx.fillText(line, x, curY);
|
|
222
|
+
}
|
|
223
|
+
fillLetterSpaced(ctx, text, cx, y, spacing) {
|
|
224
|
+
// Measure total width with spacing and center
|
|
225
|
+
const chars = text.split('');
|
|
226
|
+
const charWidths = chars.map(c => ctx.measureText(c).width);
|
|
227
|
+
const totalW = charWidths.reduce((s, w) => s + w, 0) + spacing * (chars.length - 1);
|
|
228
|
+
let x = cx - totalW / 2;
|
|
229
|
+
ctx.textAlign = 'left';
|
|
230
|
+
for (let i = 0; i < chars.length; i++) {
|
|
231
|
+
ctx.fillText(chars[i], x, y);
|
|
232
|
+
x += charWidths[i] + spacing;
|
|
233
|
+
}
|
|
234
|
+
ctx.textAlign = 'center';
|
|
159
235
|
}
|
|
160
236
|
loadImage(src) {
|
|
161
237
|
return new Promise((resolve, reject) => {
|
|
@@ -172,4 +248,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
172
248
|
type: Injectable,
|
|
173
249
|
args: [{ providedIn: 'root' }]
|
|
174
250
|
}] });
|
|
175
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlja2V0LWNhcmQtaW1hZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2VydmljZXMvdGlja2V0LWNhcmQtaW1hZ2UvdGlja2V0LWNhcmQtaW1hZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUczQyxNQUFNLFlBQVksR0FBRyxHQUFHLENBQUM7QUFDekIsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDO0FBQ3JCLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQztBQUN0QixNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUM7QUFDckIsTUFBTSxhQUFhLEdBQUcsUUFBUSxHQUFHLFNBQVMsR0FBRyxRQUFRLENBQUM7QUFDdEQsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDO0FBRXBCLE1BQU0sbUJBQW1CLEdBQUcsU0FBUyxDQUFDO0FBQ3RDLE1BQU0sc0JBQXNCLEdBQUcsU0FBUyxDQUFDO0FBQ3pDLE1BQU0sVUFBVSxHQUFHLDBCQUEwQixDQUFDO0FBRzlDLE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUE2QjtRQUMxQyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxJQUFJLFlBQVksQ0FBQztRQUUzQyxJQUFJLE1BQTJDLENBQUM7UUFDaEQsSUFBSSxHQUFpRSxDQUFDO1FBRXRFLElBQUksT0FBTyxlQUFlLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDM0MsTUFBTSxHQUFHLElBQUksZUFBZSxDQUFDLEtBQUssRUFBRSxhQUFhLENBQUMsQ0FBQztZQUNuRCxHQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQXNDLENBQUM7UUFDckUsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FB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QUMsU0FBUyxFQUFFLEtBQUssR0FBRyxFQUFFLEVBQUUsU0FBUyxHQUFHLFFBQVEsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRU8sU0FBUyxDQUFDLEdBQVc7UUFDM0IsT0FBTyxJQUFJLE9BQU8sQ0FBbUIsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDdkQsTUFBTSxHQUFHLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUN4QixHQUFHLENBQUMsTUFBTSxHQUFHLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNoQyxHQUFHLENBQUMsT0FBTyxHQUFHLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3RFLEdBQUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrR0FoTVUsc0JBQXNCO21IQUF0QixzQkFBc0IsY0FEVCxNQUFNOzs0RkFDbkIsc0JBQXNCO2tCQURsQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRpY2tldENhcmRJbWFnZUNvbmZpZyB9IGZyb20gJy4vdHlwZXMnO1xuXG5jb25zdCBDQU5WQVNfV0lEVEggPSA1NjA7XG5jb25zdCBIRUFERVJfSCA9IDE2MDtcbmNvbnN0IFFSX1pPTkVfSCA9IDM4MDtcbmNvbnN0IEZPT1RFUl9IID0gMjQwO1xuY29uc3QgQ0FOVkFTX0hFSUdIVCA9IEhFQURFUl9IICsgUVJfWk9ORV9IICsgRk9PVEVSX0g7XG5jb25zdCBRUl9TSVpFID0gMjgwO1xuXG5jb25zdCBERUZBVUxUX0JSQU5EX0NPTE9SID0gJyM5YjFmZGUnO1xuY29uc3QgREVGQVVMVF9CUkFORF9DT0xPUl9UTyA9ICcjYzkzMDc1JztcbmNvbnN0IEZPTlRfU1RBQ0sgPSAnS2h1bGEsIEFyaWFsLCBzYW5zLXNlcmlmJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBUaWNrZXRDYXJkSW1hZ2VTZXJ2aWNlIHtcbiAgYXN5bmMgZ2VuZXJhdGUoY29uZmlnOiBUaWNrZXRDYXJkSW1hZ2VDb25maWcpOiBQcm9taXNlPEJsb2I+IHtcbiAgICBjb25zdCB3aWR0aCA9IGNvbmZpZy53aWR0aCA/PyBDQU5WQVNfV0lEVEg7XG5cbiAgICBsZXQgY2FudmFzOiBIVE1MQ2FudmFzRWxlbWVudCB8IE9mZnNjcmVlbkNhbnZhcztcbiAgICBsZXQgY3R4OiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQgfCBPZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ7XG5cbiAgICBpZiAodHlwZW9mIE9mZnNjcmVlbkNhbnZhcyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIGNhbnZhcyA9IG5ldyBPZmZzY3JlZW5DYW52YXMod2lkdGgsIENBTlZBU19IRUlHSFQpO1xuICAgICAgY3R4ID0gY2FudmFzLmdldENvbnRleHQoJzJkJykgYXMgT2Zmc2NyZWVuQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEO1xuICAgIH0gZWxzZSB7XG4gICAgICBjYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTtcbiAgICAgIChjYW52YXMgYXMgSFRNTENhbnZhc0VsZW1lbnQpLndpZHRoID0gd2lkdGg7XG4gICAgICAoY2FudmFzIGFzIEhUTUxDYW52YXNFbGVtZW50KS5oZWlnaHQgPSBDQU5WQVNfSEVJR0hUO1xuICAgICAgY3R4ID0gKGNhbnZhcyBhcyBIVE1MQ2FudmFzRWxlbWVudCkuZ2V0Q29udGV4dCgnMmQnKSBhcyBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ7XG4gICAgfVxuXG4gICAgYXdhaXQgdGhpcy5kcmF3SGVhZGVyKGN0eCwgY29uZmlnLCB3aWR0aCk7XG4gICAgYXdhaXQgdGhpcy5kcmF3UXJab25lKGN0eCwgY29uZmlnLCB3aWR0aCk7XG4gICAgdGhpcy5kcmF3Rm9vdGVyKGN0eCwgY29uZmlnLCB3aWR0aCk7XG5cbiAgICBpZiAoY2FudmFzIGluc3RhbmNlb2YgT2Zmc2NyZWVuQ2FudmFzKSB7XG4gICAgICByZXR1cm4gY2FudmFzLmNvbnZlcnRUb0Jsb2IoeyB0eXBlOiAnaW1hZ2UvcG5nJyB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IFByb21pc2U8QmxvYj4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgKGNhbnZhcyBhcyBIVE1MQ2FudmFzRWxlbWVudCkudG9CbG9iKGJsb2IgPT4ge1xuICAgICAgICBpZiAoYmxvYikge1xuICAgICAgICAgIHJlc29sdmUoYmxvYik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVqZWN0KG5ldyBFcnJvcignQ2FudmFzIHRvQmxvYiByZXR1cm5lZCBudWxsJykpO1xuICAgICAgICB9XG4gICAgICB9LCAnaW1hZ2UvcG5nJyk7XG4gICAgfSk7XG4gIH1cblxuICBhc3luYyBzaGFyZShjb25maWc6IFRpY2tldENhcmRJbWFnZUNvbmZpZywgc2hhcmVUaXRsZT86IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGlmICghbmF2aWdhdG9yLnNoYXJlIHx8ICFuYXZpZ2F0b3IuY2FuU2hhcmUpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBsZXQgYmxvYjogQmxvYjtcbiAgICB0cnkge1xuICAgICAgYmxvYiA9IGF3YWl0IHRoaXMuZ2VuZXJhdGUoY29uZmlnKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCBmaWxlbmFtZSA9ICdlbnRyYWRhLnBuZyc7XG4gICAgY29uc3QgZmlsZSA9IG5ldyBGaWxlKFtibG9iXSwgZmlsZW5hbWUsIHsgdHlwZTogJ2ltYWdlL3BuZycgfSk7XG5cbiAgICBpZiAoIW5hdmlnYXRvci5jYW5TaGFyZSh7IGZpbGVzOiBbZmlsZV0gfSkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgYXdhaXQgbmF2aWdhdG9yLnNoYXJlKHtcbiAgICAgICAgdGl0bGU6IHNoYXJlVGl0bGUgPz8gY29uZmlnLmJyYW5kTmFtZSA/PyAnRW50cmFkYScsXG4gICAgICAgIGZpbGVzOiBbZmlsZV0sXG4gICAgICB9KTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiAmJiBlcnIubmFtZSA9PT0gJ0Fib3J0RXJyb3InKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGRyYXdIZWFkZXIoXG4gICAgY3R4OiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQgfCBPZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQsXG4gICAgY29uZmlnOiBUaWNrZXRDYXJkSW1hZ2VDb25maWcsXG4gICAgd2lkdGg6IG51bWJlclxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBjb2xvckZyb20gPSBjb25maWcuYnJhbmRDb2xvciA/PyBERUZBVUxUX0JSQU5EX0NPTE9SO1xuICAgIGNvbnN0IGNvbG9yVG8gPVxuICAgICAgY29uZmlnLmJyYW5kQ29sb3JUbyA/PyAoY29uZmlnLmJyYW5kQ29sb3IgPyBjb25maWcuYnJhbmRDb2xvciA6IERFRkFVTFRfQlJBTkRfQ09MT1JfVE8pO1xuXG4gICAgY29uc3QgZ3JhZCA9IGN0eC5jcmVhdGVMaW5lYXJHcmFkaWVudCgwLCAwLCB3aWR0aCwgSEVBREVSX0gpO1xuICAgIGdyYWQuYWRkQ29sb3JTdG9wKDAsIGNvbG9yRnJvbSk7XG4gICAgZ3JhZC5hZGRDb2xvclN0b3AoMSwgY29sb3JUbyk7XG5cbiAgICBjdHguZmlsbFN0eWxlID0gZ3JhZDtcbiAgICBjdHguZmlsbFJlY3QoMCwgMCwgd2lkdGgsIEhFQURFUl9IKTtcblxuICAgIGNvbnN0IGxvZ29IID0gNDQ7XG4gICAgY29uc3QgbG9nb1BhZCA9IDI4O1xuICAgIGxldCB0ZXh0WSA9IEhFQURFUl9IIC8gMjtcblxuICAgIGlmIChjb25maWcubG9nb1VybCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgbG9nb0ltZyA9IGF3YWl0IHRoaXMubG9hZEltYWdlKGNvbmZpZy5sb2dvVXJsKTtcbiAgICAgICAgY29uc3QgcmF0aW8gPSBsb2dvSW1nLndpZHRoIC8gbG9nb0ltZy5oZWlnaHQ7XG4gICAgICAgIGNvbnN0IGxvZ29XID0gbG9nb0ggKiByYXRpbztcbiAgICAgICAgY29uc3QgbG9nb1ggPSBsb2dvUGFkO1xuICAgICAgICBjb25zdCBsb2dvWSA9IChIRUFERVJfSCAtIGxvZ29IKSAvIDI7XG4gICAgICAgIGN0eC5kcmF3SW1hZ2UobG9nb0ltZywgbG9nb1gsIGxvZ29ZLCBsb2dvVywgbG9nb0gpO1xuXG4gICAgICAgIGlmIChjb25maWcuYnJhbmROYW1lKSB7XG4gICAgICAgICAgdGV4dFkgPSBsb2dvWSArIGxvZ29IICsgMTQ7XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2gge1xuICAgICAgICAvLyBsb2dvIGZhaWxlZCDigJQgcmVuZGVyIGJyYW5kIG5hbWUgY2VudGVyZWQgYXMgZmFsbGJhY2tcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoY29uZmlnLmJyYW5kTmFtZSkge1xuICAgICAgY3R4LmZpbGxTdHlsZSA9ICcjZmZmZmZmJztcbiAgICAgIGN0eC5mb250ID0gYGJvbGQgMS43NXJlbSAke0ZPTlRfU1RBQ0t9YDtcbiAgICAgIGN0eC50ZXh0QWxpZ24gPSAnY2VudGVyJztcbiAgICAgIGN0eC50ZXh0QmFzZWxpbmUgPSAnbWlkZGxlJztcbiAgICAgIGN0eC5maWxsVGV4dChjb25maWcuYnJhbmROYW1lLCB3aWR0aCAvIDIsIHRleHRZLCB3aWR0aCAtIGxvZ29QYWQgKiAyKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGRyYXdRclpvbmUoXG4gICAgY3R4OiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQgfCBPZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQsXG4gICAgY29uZmlnOiBUaWNrZXRDYXJkSW1hZ2VDb25maWcsXG4gICAgd2lkdGg6IG51bWJlclxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCB6b25lVG9wID0gSEVBREVSX0g7XG5cbiAgICBjdHguZmlsbFN0eWxlID0gJyNmZmZmZmYnO1xuICAgIGN0eC5maWxsUmVjdCgwLCB6b25lVG9wLCB3aWR0aCwgUVJfWk9ORV9IKTtcblxuICAgIGNvbnN0IHFyWCA9ICh3aWR0aCAtIFFSX1NJWkUpIC8gMjtcbiAgICBjb25zdCBxclkgPSB6b25lVG9wICsgKFFSX1pPTkVfSCAtIFFSX1NJWkUgLSAyOCkgLyAyO1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHFySW1nID0gYXdhaXQgdGhpcy5sb2FkSW1hZ2UoY29uZmlnLnFyRGF0YVVybCk7XG4gICAgICBjdHguZHJhd0ltYWdlKHFySW1nLCBxclgsIHFyWSwgUVJfU0laRSwgUVJfU0laRSk7XG4gICAgfSBjYXRjaCB7XG4gICAgICBjdHguc3Ryb2tlU3R5bGUgPSAnI2UwZTBlMCc7XG4gICAgICBjdHguc3Ryb2tlUmVjdChxclgsIHFyWSwgUVJfU0laRSwgUVJfU0laRSk7XG4gICAgfVxuXG4gICAgY3R4LmZpbGxTdHlsZSA9ICcjMmYyYTM2JztcbiAgICBjdHguZm9udCA9IGAwLjkzNzVyZW0gJHtGT05UX1NUQUNLfWA7XG4gICAgY3R4LnRleHRBbGlnbiA9ICdjZW50ZXInO1xuICAgIGN0eC50ZXh0QmFzZWxpbmUgPSAndG9wJztcbiAgICBjdHguZmlsbFRleHQoJ0VzY2FuZWEgcGFyYSB2ZXJpZmljYXInLCB3aWR0aCAvIDIsIHFyWSArIFFSX1NJWkUgKyAxMik7XG4gIH1cblxuICBwcml2YXRlIGRyYXdGb290ZXIoXG4gICAgY3R4OiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQgfCBPZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQsXG4gICAgY29uZmlnOiBUaWNrZXRDYXJkSW1hZ2VDb25maWcsXG4gICAgd2lkdGg6IG51bWJlclxuICApOiB2b2lkIHtcbiAgICBjb25zdCBmb290ZXJUb3AgPSBIRUFERVJfSCArIFFSX1pPTkVfSDtcblxuICAgIGN0eC5maWxsU3R5bGUgPSAnI2ZmZmZmZic7XG4gICAgY3R4LmZpbGxSZWN0KDAsIGZvb3RlclRvcCwgd2lkdGgsIEZPT1RFUl9IKTtcblxuICAgIGNvbnN0IGNvbG9yRnJvbSA9IGNvbmZpZy5icmFuZENvbG9yID8/IERFRkFVTFRfQlJBTkRfQ09MT1I7XG4gICAgY3R4LmZpbGxTdHlsZSA9IGNvbG9yRnJvbTtcbiAgICBjdHguZmlsbFJlY3QoMCwgZm9vdGVyVG9wLCB3aWR0aCwgMyk7XG5cbiAgICBsZXQgY29udGVudFkgPSBmb290ZXJUb3AgKyA0MDtcblxuICAgIGlmIChjb25maWcuZm9saW8gIT09IHVuZGVmaW5lZCAmJiBjb25maWcuZm9saW8gIT09IG51bGwgJiYgY29uZmlnLmZvbGlvICE9PSAnJykge1xuICAgICAgY29uc3QgbGFiZWwgPSBjb25maWcuZm9saW9MYWJlbCA/PyAnRW50cmFkYSc7XG4gICAgICBjb25zdCBmb2xpb1RleHQgPSBgJHtsYWJlbH0gIyR7Y29uZmlnLmZvbGlvfWA7XG4gICAgICBjdHguZmlsbFN0eWxlID0gJyMxYTBiMmUnO1xuICAgICAgY3R4LmZvbnQgPSBgYm9sZCAzcmVtICR7Rk9OVF9TVEFDS31gO1xuICAgICAgY3R4LnRleHRBbGlnbiA9ICdjZW50ZXInO1xuICAgICAgY3R4LnRleHRCYXNlbGluZSA9ICd0b3AnO1xuICAgICAgY3R4LmZpbGxUZXh0KGZvbGlvVGV4dCwgd2lkdGggLyAyLCBjb250ZW50WSwgd2lkdGggLSA0MCk7XG4gICAgICBjb250ZW50WSArPSA1NjtcbiAgICB9XG5cbiAgICBpZiAoY29uZmlnLmJ1eWVyTmFtZSkge1xuICAgICAgY3R4LmZpbGxTdHlsZSA9ICcjMmYyYTM2JztcbiAgICAgIGN0eC5mb250ID0gYDEuMjVyZW0gJHtGT05UX1NUQUNLfWA7XG4gICAgICBjdHgudGV4dEFsaWduID0gJ2NlbnRlcic7XG4gICAgICBjdHgudGV4dEJhc2VsaW5lID0gJ3RvcCc7XG4gICAgICBjdHguZmlsbFRleHQoY29uZmlnLmJ1eWVyTmFtZSwgd2lkdGggLyAyLCBjb250ZW50WSwgd2lkdGggLSA0MCk7XG4gICAgfVxuXG4gICAgY3R4LmZpbGxTdHlsZSA9ICcjNmI2Njc1JztcbiAgICBjdHguZm9udCA9IGAwLjc1cmVtICR7Rk9OVF9TVEFDS31gO1xuICAgIGN0eC50ZXh0QWxpZ24gPSAncmlnaHQnO1xuICAgIGN0eC50ZXh0QmFzZWxpbmUgPSAnYm90dG9tJztcbiAgICBjdHguZmlsbFRleHQoJ1ZhbHRlY2gnLCB3aWR0aCAtIDE2LCBmb290ZXJUb3AgKyBGT09URVJfSCAtIDEyKTtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZEltYWdlKHNyYzogc3RyaW5nKTogUHJvbWlzZTxIVE1MSW1hZ2VFbGVtZW50PiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPEhUTUxJbWFnZUVsZW1lbnQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNvbnN0IGltZyA9IG5ldyBJbWFnZSgpO1xuICAgICAgaW1nLm9ubG9hZCA9ICgpID0+IHJlc29sdmUoaW1nKTtcbiAgICAgIGltZy5vbmVycm9yID0gKCkgPT4gcmVqZWN0KG5ldyBFcnJvcihgRmFpbGVkIHRvIGxvYWQgaW1hZ2U6ICR7c3JjfWApKTtcbiAgICAgIGltZy5zcmMgPSBzcmM7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
251
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlja2V0LWNhcmQtaW1hZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2VydmljZXMvdGlja2V0LWNhcmQtaW1hZ2UvdGlja2V0LWNhcmQtaW1hZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUczQyxNQUFNLFlBQVksR0FBRyxHQUFHLENBQUM7QUFDekIsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDO0FBQ3JCLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQztBQUN0QixNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUM7QUFDbEIsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDO0FBQ3JCLE1BQU0sYUFBYSxHQUFHLFFBQVEsR0FBRyxTQUFTLEdBQUcsTUFBTSxHQUFHLFFBQVEsQ0FBQztBQUMvRCxNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUM7QUFFcEIsTUFBTSxtQkFBbUIsR0FBRyxTQUFTLENBQUM7QUFDdEMsTUFBTSxzQkFBc0IsR0FBRyxTQUFTLENBQUM7QUFDekMsTUFBTSxVQUFVLEdBQUcsK0NBQStDLENBQUM7QUFHbkUsTUFBTSxPQUFPLHNCQUFzQjtJQUNqQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQTZCO1FBQzFDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLElBQUksWUFBWSxDQUFDO1FBRTNDLElBQUksTUFBMkMsQ0FBQztRQUNoRCxJQUFJLEdBQWlFLENBQUM7UUFFdEUsSUFBSSxPQUFPLGVBQWUsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUMzQyxNQUFNLEdBQUcsSUFBSSxlQUFlLENBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1lBQ25ELEdBQUcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBc0MsQ0FBQztRQUNyRSxDQUFDO2FBQU0sQ0FBQztZQUNOLE1B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O1FBQzNCLE9BQU8sSUFBSSxPQUFPLENBQW1CLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3ZELE1BQU0sR0FBRyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7WUFDeEIsR0FBRyxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDaEMsR0FBRyxDQUFDLE9BQU8sR0FBRyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMseUJBQXlCLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUN0RSxHQUFHLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBblNVLHNCQUFzQjttSEFBdEIsc0JBQXNCLGNBRFQsTUFBTTs7NEZBQ25CLHNCQUFzQjtrQkFEbEMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaWNrZXRDYXJkSW1hZ2VDb25maWcgfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgQ0FOVkFTX1dJRFRIID0gNTYwO1xuY29uc3QgSEVBREVSX0ggPSAyMTA7XG5jb25zdCBRUl9aT05FX0ggPSAzNDA7XG5jb25zdCBQRVJGX0ggPSAyODtcbmNvbnN0IEZPT1RFUl9IID0gMjIwO1xuY29uc3QgQ0FOVkFTX0hFSUdIVCA9IEhFQURFUl9IICsgUVJfWk9ORV9IICsgUEVSRl9IICsgRk9PVEVSX0g7XG5jb25zdCBRUl9TSVpFID0gMjYwO1xuXG5jb25zdCBERUZBVUxUX0JSQU5EX0NPTE9SID0gJyM5YjFmZGUnO1xuY29uc3QgREVGQVVMVF9CUkFORF9DT0xPUl9UTyA9ICcjYzkzMDc1JztcbmNvbnN0IEZPTlRfU1RBQ0sgPSAnXCJQbHVzIEpha2FydGEgU2Fuc1wiLCBLaHVsYSwgQXJpYWwsIHNhbnMtc2VyaWYnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFRpY2tldENhcmRJbWFnZVNlcnZpY2Uge1xuICBhc3luYyBnZW5lcmF0ZShjb25maWc6IFRpY2tldENhcmRJbWFnZUNvbmZpZyk6IFByb21pc2U8QmxvYj4ge1xuICAgIGNvbnN0IHdpZHRoID0gY29uZmlnLndpZHRoID8/IENBTlZBU19XSURUSDtcblxuICAgIGxldCBjYW52YXM6IEhUTUxDYW52YXNFbGVtZW50IHwgT2Zmc2NyZWVuQ2FudmFzO1xuICAgIGxldCBjdHg6IENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCB8IE9mZnNjcmVlbkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyRDtcblxuICAgIGlmICh0eXBlb2YgT2Zmc2NyZWVuQ2FudmFzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgY2FudmFzID0gbmV3IE9mZnNjcmVlbkNhbnZhcyh3aWR0aCwgQ0FOVkFTX0hFSUdIVCk7XG4gICAgICBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKSBhcyBPZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpO1xuICAgICAgKGNhbnZhcyBhcyBIVE1MQ2FudmFzRWxlbWVudCkud2lkdGggPSB3aWR0aDtcbiAgICAgIChjYW52YXMgYXMgSFRNTENhbnZhc0VsZW1lbnQpLmhlaWdodCA9IENBTlZBU19IRUlHSFQ7XG4gICAgICBjdHggPSAoY2FudmFzIGFzIEhUTUxDYW52YXNFbGVtZW50KS5nZXRDb250ZXh0KCcyZCcpIGFzIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRDtcbiAgICB9XG5cbiAgICBhd2FpdCB0aGlzLmRyYXdIZWFkZXIoY3R4LCBjb25maWcsIHdpZHRoKTtcbiAgICBhd2FpdCB0aGlzLmRyYXdRclpvbmUoY3R4LCBjb25maWcsIHdpZHRoKTtcbiAgICB0aGlzLmRyYXdQZXJmb3JhdGVkKGN0eCwgY29uZmlnLCB3aWR0aCk7XG4gICAgdGhpcy5kcmF3Rm9vdGVyKGN0eCwgY29uZmlnLCB3aWR0aCk7XG5cbiAgICBpZiAoY2FudmFzIGluc3RhbmNlb2YgT2Zmc2NyZWVuQ2FudmFzKSB7XG4gICAgICByZXR1cm4gY2FudmFzLmNvbnZlcnRUb0Jsb2IoeyB0eXBlOiAnaW1hZ2UvcG5nJyB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IFByb21pc2U8QmxvYj4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgKGNhbnZhcyBhcyBIVE1MQ2FudmFzRWxlbWVudCkudG9CbG9iKGJsb2IgPT4ge1xuICAgICAgICBpZiAoYmxvYikge1xuICAgICAgICAgIHJlc29sdmUoYmxvYik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVqZWN0KG5ldyBFcnJvcignQ2FudmFzIHRvQmxvYiByZXR1cm5lZCBudWxsJykpO1xuICAgICAgICB9XG4gICAgICB9LCAnaW1hZ2UvcG5nJyk7XG4gICAgfSk7XG4gIH1cblxuICBhc3luYyBzaGFyZShjb25maWc6IFRpY2tldENhcmRJbWFnZUNvbmZpZywgc2hhcmVUaXRsZT86IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGlmICghbmF2aWdhdG9yLnNoYXJlIHx8ICFuYXZpZ2F0b3IuY2FuU2hhcmUpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBsZXQgYmxvYjogQmxvYjtcbiAgICB0cnkge1xuICAgICAgYmxvYiA9IGF3YWl0IHRoaXMuZ2VuZXJhdGUoY29uZmlnKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCBmaWxlbmFtZSA9ICdlbnRyYWRhLnBuZyc7XG4gICAgY29uc3QgZmlsZSA9IG5ldyBGaWxlKFtibG9iXSwgZmlsZW5hbWUsIHsgdHlwZTogJ2ltYWdlL3BuZycgfSk7XG5cbiAgICBpZiAoIW5hdmlnYXRvci5jYW5TaGFyZSh7IGZpbGVzOiBbZmlsZV0gfSkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgYXdhaXQgbmF2aWdhdG9yLnNoYXJlKHtcbiAgICAgICAgdGl0bGU6IHNoYXJlVGl0bGUgPz8gY29uZmlnLmJyYW5kTmFtZSA/PyAnRW50cmFkYScsXG4gICAgICAgIGZpbGVzOiBbZmlsZV0sXG4gICAgICB9KTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiAmJiBlcnIubmFtZSA9PT0gJ0Fib3J0RXJyb3InKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGRyYXdIZWFkZXIoXG4gICAgY3R4OiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQgfCBPZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQsXG4gICAgY29uZmlnOiBUaWNrZXRDYXJkSW1hZ2VDb25maWcsXG4gICAgd2lkdGg6IG51bWJlclxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBjb2xvckZyb20gPSBjb25maWcuYnJhbmRDb2xvciA/PyBERUZBVUxUX0JSQU5EX0NPTE9SO1xuICAgIGNvbnN0IGNvbG9yVG8gPVxuICAgICAgY29uZmlnLmJyYW5kQ29sb3JUbyA/PyAoY29uZmlnLmJyYW5kQ29sb3IgPyBjb25maWcuYnJhbmRDb2xvciA6IERFRkFVTFRfQlJBTkRfQ09MT1JfVE8pO1xuXG4gICAgY29uc3QgZ3JhZCA9IGN0eC5jcmVhdGVMaW5lYXJHcmFkaWVudCgwLCAwLCB3aWR0aCwgSEVBREVSX0gpO1xuICAgIGdyYWQuYWRkQ29sb3JTdG9wKDAsIGNvbG9yRnJvbSk7XG4gICAgZ3JhZC5hZGRDb2xvclN0b3AoMSwgY29sb3JUbyk7XG4gICAgY3R4LmZpbGxTdHlsZSA9IGdyYWQ7XG4gICAgY3R4LmZpbGxSZWN0KDAsIDAsIHdpZHRoLCBIRUFERVJfSCk7XG5cbiAgICBjb25zdCBsb2dvSCA9IDQ4O1xuICAgIGNvbnN0IGxvZ29QYWRUb3AgPSAyODtcbiAgICBsZXQgY3Vyc29yWSA9IGxvZ29QYWRUb3A7XG5cbiAgICBpZiAoY29uZmlnLmxvZ29VcmwpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGxvZ29JbWcgPSBhd2FpdCB0aGlzLmxvYWRJbWFnZShjb25maWcubG9nb1VybCk7XG4gICAgICAgIGNvbnN0IHJhdGlvID0gbG9nb0ltZy53aWR0aCAvIGxvZ29JbWcuaGVpZ2h0O1xuICAgICAgICBjb25zdCBsb2dvVyA9IGxvZ29IICogcmF0aW87XG4gICAgICAgIGNvbnN0IGxvZ29YID0gKHdpZHRoIC0gbG9nb1cpIC8gMjtcbiAgICAgICAgY3R4LmRyYXdJbWFnZShsb2dvSW1nLCBsb2dvWCwgY3Vyc29yWSwgbG9nb1csIGxvZ29IKTtcbiAgICAgICAgY3Vyc29yWSArPSBsb2dvSCArIDE0O1xuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIC8vIGxvZ28gZmFpbGVkIOKAlCBjb250aW51ZSB3aXRob3V0IGl0XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGNvbmZpZy5icmFuZE5hbWUpIHtcbiAgICAgIGN0eC5maWxsU3R5bGUgPSAnI2ZmZmZmZic7XG4gICAgICBjdHguZm9udCA9IGBib2xkIDEuNjI1cmVtICR7Rk9OVF9TVEFDS31gO1xuICAgICAgY3R4LnRleHRBbGlnbiA9ICdjZW50ZXInO1xuICAgICAgY3R4LnRleHRCYXNlbGluZSA9ICd0b3AnO1xuICAgICAgY3R4LmZpbGxUZXh0KGNvbmZpZy5icmFuZE5hbWUsIHdpZHRoIC8gMiwgY3Vyc29yWSwgd2lkdGggLSA0OCk7XG4gICAgICBjdXJzb3JZICs9IDMyO1xuICAgIH1cblxuICAgIGNvbnN0IG1ldGFQYXJ0czogc3RyaW5nW10gPSBbXTtcbiAgICBpZiAoY29uZmlnLmV2ZW50RGF0ZSkgbWV0YVBhcnRzLnB1c2goY29uZmlnLmV2ZW50RGF0ZSk7XG4gICAgaWYgKGNvbmZpZy5ldmVudExvY2F0aW9uKSBtZXRhUGFydHMucHVzaChjb25maWcuZXZlbnRMb2NhdGlvbik7XG4gICAgaWYgKG1ldGFQYXJ0cy5sZW5ndGggPiAwKSB7XG4gICAgICBjdHguZmlsbFN0eWxlID0gJ3JnYmEoMjU1LDI1NSwyNTUsMC43OCknO1xuICAgICAgY3R4LmZvbnQgPSBgMC44NzVyZW0gJHtGT05UX1NUQUNLfWA7XG4gICAgICBjdHgudGV4dEFsaWduID0gJ2NlbnRlcic7XG4gICAgICBjdHgudGV4dEJhc2VsaW5lID0gJ3RvcCc7XG4gICAgICBjdHguZmlsbFRleHQobWV0YVBhcnRzLmpvaW4oJyAgwrcgICcpLCB3aWR0aCAvIDIsIGN1cnNvclksIHdpZHRoIC0gNDgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZHJhd1FyWm9uZShcbiAgICBjdHg6IENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCB8IE9mZnNjcmVlbkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCxcbiAgICBjb25maWc6IFRpY2tldENhcmRJbWFnZUNvbmZpZyxcbiAgICB3aWR0aDogbnVtYmVyXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHpvbmVUb3AgPSBIRUFERVJfSDtcblxuICAgIGN0eC5maWxsU3R5bGUgPSAnI2ZmZmZmZic7XG4gICAgY3R4LmZpbGxSZWN0KDAsIHpvbmVUb3AsIHdpZHRoLCBRUl9aT05FX0gpO1xuXG4gICAgY29uc3QgcXJYID0gKHdpZHRoIC0gUVJfU0laRSkgLyAyO1xuICAgIGNvbnN0IHFyWSA9IHpvbmVUb3AgKyAoUVJfWk9ORV9IIC0gUVJfU0laRSAtIDQwKSAvIDI7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcXJJbWcgPSBhd2FpdCB0aGlzLmxvYWRJbWFnZShjb25maWcucXJEYXRhVXJsKTtcbiAgICAgIGN0eC5kcmF3SW1hZ2UocXJJbWcsIHFyWCwgcXJZLCBRUl9TSVpFLCBRUl9TSVpFKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIGN0eC5zdHJva2VTdHlsZSA9ICcjZTBlMGUwJztcbiAgICAgIGN0eC5zdHJva2VSZWN0KHFyWCwgcXJZLCBRUl9TSVpFLCBRUl9TSVpFKTtcbiAgICB9XG5cbiAgICBjb25zdCBoaW50ID0gY29uZmlnLnNjYW5IaW50ID8/ICdNdWVzdHJhIGVzdGUgUVIgZW4gbGEgcHVlcnRhIHBhcmEgY2FuamVhciB0dSBlbnRyYWRhLic7XG4gICAgY3R4LmZpbGxTdHlsZSA9ICcjNmI2Njc1JztcbiAgICBjdHguZm9udCA9IGAwLjg3NXJlbSAke0ZPTlRfU1RBQ0t9YDtcbiAgICBjdHgudGV4dEFsaWduID0gJ2NlbnRlcic7XG4gICAgY3R4LnRleHRCYXNlbGluZSA9ICd0b3AnO1xuICAgIGNvbnN0IGhpbnRZID0gcXJZICsgUVJfU0laRSArIDE0O1xuICAgIHRoaXMuZmlsbFdyYXBwZWRUZXh0KGN0eCwgaGludCwgd2lkdGggLyAyLCBoaW50WSwgd2lkdGggLSA4MCwgMjIpO1xuICB9XG5cbiAgcHJpdmF0ZSBkcmF3UGVyZm9yYXRlZChcbiAgICBjdHg6IENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCB8IE9mZnNjcmVlbkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCxcbiAgICBjb25maWc6IFRpY2tldENhcmRJbWFnZUNvbmZpZyxcbiAgICB3aWR0aDogbnVtYmVyXG4gICk6IHZvaWQge1xuICAgIGNvbnN0IHkgPSBIRUFERVJfSCArIFFSX1pPTkVfSDtcbiAgICBjb25zdCBub3RjaFIgPSBQRVJGX0ggLyAyO1xuICAgIGNvbnN0IGNvbG9yRnJvbSA9IGNvbmZpZy5icmFuZENvbG9yID8/IERFRkFVTFRfQlJBTkRfQ09MT1I7XG5cbiAgICBjdHguZmlsbFN0eWxlID0gJyNmZmZmZmYnO1xuICAgIGN0eC5maWxsUmVjdCgwLCB5LCB3aWR0aCwgUEVSRl9IKTtcblxuICAgIC8vIExlZnQgbm90Y2ggKHNlbWljaXJjbGUgY3V0IGZyb20gZWRnZSlcbiAgICBjdHguZmlsbFN0eWxlID0gJyNmOGY4ZjgnO1xuICAgIGN0eC5iZWdpblBhdGgoKTtcbiAgICBjdHguYXJjKC0xLCB5ICsgbm90Y2hSLCBub3RjaFIgKyAxLCAtTWF0aC5QSSAvIDIsIE1hdGguUEkgLyAyKTtcbiAgICBjdHguZmlsbCgpO1xuXG4gICAgLy8gUmlnaHQgbm90Y2hcbiAgICBjdHguYmVnaW5QYXRoKCk7XG4gICAgY3R4LmFyYyh3aWR0aCArIDEsIHkgKyBub3RjaFIsIG5vdGNoUiArIDEsIE1hdGguUEkgLyAyLCAtTWF0aC5QSSAvIDIpO1xuICAgIGN0eC5maWxsKCk7XG5cbiAgICAvLyBEYXNoZWQgbGluZSBpbiBtaWRkbGVcbiAgICBjdHguc2V0TGluZURhc2goWzgsIDZdKTtcbiAgICBjdHguc3Ryb2tlU3R5bGUgPSBjb2xvckZyb20gKyAnNTUnO1xuICAgIGN0eC5saW5lV2lkdGggPSAxLjU7XG4gICAgY3R4LmJlZ2luUGF0aCgpO1xuICAgIGN0eC5tb3ZlVG8obm90Y2hSICogMiArIDgsIHkgKyBub3RjaFIpO1xuICAgIGN0eC5saW5lVG8od2lkdGggLSBub3RjaFIgKiAyIC0gOCwgeSArIG5vdGNoUik7XG4gICAgY3R4LnN0cm9rZSgpO1xuICAgIGN0eC5zZXRMaW5lRGFzaChbXSk7XG4gIH1cblxuICBwcml2YXRlIGRyYXdGb290ZXIoXG4gICAgY3R4OiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQgfCBPZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQsXG4gICAgY29uZmlnOiBUaWNrZXRDYXJkSW1hZ2VDb25maWcsXG4gICAgd2lkdGg6IG51bWJlclxuICApOiB2b2lkIHtcbiAgICBjb25zdCBmb290ZXJUb3AgPSBIRUFERVJfSCArIFFSX1pPTkVfSCArIFBFUkZfSDtcbiAgICBjb25zdCBjb2xvckZyb20gPSBjb25maWcuYnJhbmRDb2xvciA/PyBERUZBVUxUX0JSQU5EX0NPTE9SO1xuXG4gICAgY3R4LmZpbGxTdHlsZSA9ICcjZmZmZmZmJztcbiAgICBjdHguZmlsbFJlY3QoMCwgZm9vdGVyVG9wLCB3aWR0aCwgRk9PVEVSX0gpO1xuXG4gICAgbGV0IGNvbnRlbnRZID0gZm9vdGVyVG9wICsgMzI7XG5cbiAgICBpZiAoY29uZmlnLmZvbGlvICE9PSB1bmRlZmluZWQgJiYgY29uZmlnLmZvbGlvICE9PSBudWxsICYmIGNvbmZpZy5mb2xpbyAhPT0gJycpIHtcbiAgICAgIGNvbnN0IGxhYmVsID0gKGNvbmZpZy5mb2xpb0xhYmVsID8/ICdDYXJ0w7NuJykudG9VcHBlckNhc2UoKTtcblxuICAgICAgLy8gTGFiZWwgc21hbGwg4oCUIGJyYW5kIGNvbG9yLCBsZXR0ZXItc3BhY2VkXG4gICAgICBjdHguZmlsbFN0eWxlID0gY29sb3JGcm9tO1xuICAgICAgY3R4LmZvbnQgPSBgNjAwIDAuODEyNXJlbSAke0ZPTlRfU1RBQ0t9YDtcbiAgICAgIGN0eC50ZXh0QWxpZ24gPSAnY2VudGVyJztcbiAgICAgIGN0eC50ZXh0QmFzZWxpbmUgPSAndG9wJztcbiAgICAgIHRoaXMuZmlsbExldHRlclNwYWNlZChjdHgsIGxhYmVsLCB3aWR0aCAvIDIsIGNvbnRlbnRZLCAzKTtcbiAgICAgIGNvbnRlbnRZICs9IDI0O1xuXG4gICAgICAvLyBGb2xpbyBudW1iZXIg4oCUIGxhcmdlLCBib2xkLCBicmFuZCBjb2xvclxuICAgICAgY3R4LmZpbGxTdHlsZSA9IGNvbG9yRnJvbTtcbiAgICAgIGN0eC5mb250ID0gYDgwMCAzLjVyZW0gJHtGT05UX1NUQUNLfWA7XG4gICAgICBjdHgudGV4dEFsaWduID0gJ2NlbnRlcic7XG4gICAgICBjdHgudGV4dEJhc2VsaW5lID0gJ3RvcCc7XG4gICAgICBjdHguZmlsbFRleHQoYCMke2NvbmZpZy5mb2xpb31gLCB3aWR0aCAvIDIsIGNvbnRlbnRZLCB3aWR0aCAtIDQwKTtcbiAgICAgIGNvbnRlbnRZICs9IDY4O1xuICAgIH1cblxuICAgIGlmIChjb25maWcuYnV5ZXJOYW1lKSB7XG4gICAgICBjdHguZmlsbFN0eWxlID0gJyM2YjY2NzUnO1xuICAgICAgY3R4LmZvbnQgPSBgMC45Mzc1cmVtICR7Rk9OVF9TVEFDS31gO1xuICAgICAgY3R4LnRleHRBbGlnbiA9ICdjZW50ZXInO1xuICAgICAgY3R4LnRleHRCYXNlbGluZSA9ICd0b3AnO1xuICAgICAgY3R4LmZpbGxUZXh0KGNvbmZpZy5idXllck5hbWUsIHdpZHRoIC8gMiwgY29udGVudFksIHdpZHRoIC0gNDApO1xuICAgIH1cblxuICAgIC8vIENvcHlyaWdodFxuICAgIGN0eC5maWxsU3R5bGUgPSAnI2IwYThiYyc7XG4gICAgY3R4LmZvbnQgPSBgMC42ODc1cmVtICR7Rk9OVF9TVEFDS31gO1xuICAgIGN0eC50ZXh0QWxpZ24gPSAnY2VudGVyJztcbiAgICBjdHgudGV4dEJhc2VsaW5lID0gJ2JvdHRvbSc7XG4gICAgY3R4LmZpbGxUZXh0KFxuICAgICAgJ8KpIDIwMjYgVmFsdGVjaC4gVG9kb3MgbG9zIGRlcmVjaG9zIHJlc2VydmFkb3MuJyxcbiAgICAgIHdpZHRoIC8gMixcbiAgICAgIGZvb3RlclRvcCArIEZPT1RFUl9IIC0gMTRcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBmaWxsV3JhcHBlZFRleHQoXG4gICAgY3R4OiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQgfCBPZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQsXG4gICAgdGV4dDogc3RyaW5nLFxuICAgIHg6IG51bWJlcixcbiAgICB5OiBudW1iZXIsXG4gICAgbWF4V2lkdGg6IG51bWJlcixcbiAgICBsaW5lSGVpZ2h0OiBudW1iZXJcbiAgKTogdm9pZCB7XG4gICAgY29uc3Qgd29yZHMgPSB0ZXh0LnNwbGl0KCcgJyk7XG4gICAgbGV0IGxpbmUgPSAnJztcbiAgICBsZXQgY3VyWSA9IHk7XG4gICAgZm9yIChjb25zdCB3b3JkIG9mIHdvcmRzKSB7XG4gICAgICBjb25zdCB0ZXN0ID0gbGluZSA/IGAke2xpbmV9ICR7d29yZH1gIDogd29yZDtcbiAgICAgIGlmIChjdHgubWVhc3VyZVRleHQodGVzdCkud2lkdGggPiBtYXhXaWR0aCAmJiBsaW5lKSB7XG4gICAgICAgIGN0eC5maWxsVGV4dChsaW5lLCB4LCBjdXJZKTtcbiAgICAgICAgbGluZSA9IHdvcmQ7XG4gICAgICAgIGN1clkgKz0gbGluZUhlaWdodDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxpbmUgPSB0ZXN0O1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAobGluZSkgY3R4LmZpbGxUZXh0KGxpbmUsIHgsIGN1clkpO1xuICB9XG5cbiAgcHJpdmF0ZSBmaWxsTGV0dGVyU3BhY2VkKFxuICAgIGN0eDogQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEIHwgT2Zmc2NyZWVuQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELFxuICAgIHRleHQ6IHN0cmluZyxcbiAgICBjeDogbnVtYmVyLFxuICAgIHk6IG51bWJlcixcbiAgICBzcGFjaW5nOiBudW1iZXJcbiAgKTogdm9pZCB7XG4gICAgLy8gTWVhc3VyZSB0b3RhbCB3aWR0aCB3aXRoIHNwYWNpbmcgYW5kIGNlbnRlclxuICAgIGNvbnN0IGNoYXJzID0gdGV4dC5zcGxpdCgnJyk7XG4gICAgY29uc3QgY2hhcldpZHRocyA9IGNoYXJzLm1hcChjID0+IGN0eC5tZWFzdXJlVGV4dChjKS53aWR0aCk7XG4gICAgY29uc3QgdG90YWxXID0gY2hhcldpZHRocy5yZWR1Y2UoKHMsIHcpID0+IHMgKyB3LCAwKSArIHNwYWNpbmcgKiAoY2hhcnMubGVuZ3RoIC0gMSk7XG4gICAgbGV0IHggPSBjeCAtIHRvdGFsVyAvIDI7XG4gICAgY3R4LnRleHRBbGlnbiA9ICdsZWZ0JztcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNoYXJzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjdHguZmlsbFRleHQoY2hhcnNbaV0sIHgsIHkpO1xuICAgICAgeCArPSBjaGFyV2lkdGhzW2ldICsgc3BhY2luZztcbiAgICB9XG4gICAgY3R4LnRleHRBbGlnbiA9ICdjZW50ZXInO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkSW1hZ2Uoc3JjOiBzdHJpbmcpOiBQcm9taXNlPEhUTUxJbWFnZUVsZW1lbnQ+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2U8SFRNTEltYWdlRWxlbWVudD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgY29uc3QgaW1nID0gbmV3IEltYWdlKCk7XG4gICAgICBpbWcub25sb2FkID0gKCkgPT4gcmVzb2x2ZShpbWcpO1xuICAgICAgaW1nLm9uZXJyb3IgPSAoKSA9PiByZWplY3QobmV3IEVycm9yKGBGYWlsZWQgdG8gbG9hZCBpbWFnZTogJHtzcmN9YCkpO1xuICAgICAgaW1nLnNyYyA9IHNyYztcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL3RpY2tldC1jYXJkLWltYWdlL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFRpY2tldENhcmRJbWFnZUNvbmZpZyB7XG4gIC8qKiBRUiBjb2RlIGFzIGRhdGFVcmwgKFBORy9iYXNlNjQpICovXG4gIHFyRGF0YVVybDogc3RyaW5nO1xuICAvKiogTG9nbyB0byBzaG93IGluIHRoZSBoZWFkZXIuIFVSTCBvciBkYXRhVXJsLiBPcHRpb25hbC4gKi9cbiAgbG9nb1VybD86IHN0cmluZztcbiAgLyoqIEhlYWRlciBiYWNrZ3JvdW5kIGNvbG9yIChDU1MgY29sb3IpLiBEZWZhdWx0OiBiaW5nbyBncmFkaWVudCAnIzliMWZkZScgLT4gJyNjOTMwNzUnLiAqL1xuICBicmFuZENvbG9yPzogc3RyaW5nO1xuICAvKiogU2Vjb25kIGNvbG9yIGZvciBncmFkaWVudC4gSWYgYWJzZW50LCB1c2Ugc29saWQgYnJhbmRDb2xvci4gKi9cbiAgYnJhbmRDb2xvclRvPzogc3RyaW5nO1xuICAvKiogQnJhbmQvZXZlbnQgbmFtZSBzaG93biBpbiBoZWFkZXIuICovXG4gIGJyYW5kTmFtZT86IHN0cmluZztcbiAgLyoqIEZvbGlvIG51bWJlciBvciBzdHJpbmcuICovXG4gIGZvbGlvPzogbnVtYmVyIHwgc3RyaW5nO1xuICAvKiogTGFiZWwgZm9yIGZvbGlvLiBEZWZhdWx0OiBcIkVudHJhZGFcIi4gKi9cbiAgZm9saW9MYWJlbD86IHN0cmluZztcbiAgLyoqIEJ1eWVyIG5hbWUuIE9wdGlvbmFsLiAqL1xuICBidXllck5hbWU/OiBzdHJpbmc7XG4gIC8qKiBDYW52YXMgd2lkdGggKGRlZmF1bHQgNTYwKS4gKi9cbiAgd2lkdGg/
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL3RpY2tldC1jYXJkLWltYWdlL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFRpY2tldENhcmRJbWFnZUNvbmZpZyB7XG4gIC8qKiBRUiBjb2RlIGFzIGRhdGFVcmwgKFBORy9iYXNlNjQpICovXG4gIHFyRGF0YVVybDogc3RyaW5nO1xuICAvKiogTG9nbyB0byBzaG93IGluIHRoZSBoZWFkZXIuIFVSTCBvciBkYXRhVXJsLiBPcHRpb25hbC4gKi9cbiAgbG9nb1VybD86IHN0cmluZztcbiAgLyoqIEhlYWRlciBiYWNrZ3JvdW5kIGNvbG9yIChDU1MgY29sb3IpLiBEZWZhdWx0OiBiaW5nbyBncmFkaWVudCAnIzliMWZkZScgLT4gJyNjOTMwNzUnLiAqL1xuICBicmFuZENvbG9yPzogc3RyaW5nO1xuICAvKiogU2Vjb25kIGNvbG9yIGZvciBncmFkaWVudC4gSWYgYWJzZW50LCB1c2Ugc29saWQgYnJhbmRDb2xvci4gKi9cbiAgYnJhbmRDb2xvclRvPzogc3RyaW5nO1xuICAvKiogQnJhbmQvZXZlbnQgbmFtZSBzaG93biBpbiBoZWFkZXIuICovXG4gIGJyYW5kTmFtZT86IHN0cmluZztcbiAgLyoqIEZvbGlvIG51bWJlciBvciBzdHJpbmcuICovXG4gIGZvbGlvPzogbnVtYmVyIHwgc3RyaW5nO1xuICAvKiogTGFiZWwgZm9yIGZvbGlvLiBEZWZhdWx0OiBcIkVudHJhZGFcIi4gKi9cbiAgZm9saW9MYWJlbD86IHN0cmluZztcbiAgLyoqIEJ1eWVyIG5hbWUuIE9wdGlvbmFsLiAqL1xuICBidXllck5hbWU/OiBzdHJpbmc7XG4gIC8qKiBDYW52YXMgd2lkdGggKGRlZmF1bHQgNTYwKS4gKi9cbiAgd2lkdGg/OiBudW1iZXI7XG4gIC8qKiBFdmVudCBkYXRlIHN0cmluZyB0byBzaG93IGluIGhlYWRlciAoYWxyZWFkeSBmb3JtYXR0ZWQgZm9yIGRpc3BsYXksIGUuZy4gXCJtYXJ0ZXMsIDI0IGRlIGp1bmlvXCIpLiAqL1xuICBldmVudERhdGU/OiBzdHJpbmc7XG4gIC8qKiBFdmVudCBsb2NhdGlvbiB0byBzaG93IGluIGhlYWRlci4gKi9cbiAgZXZlbnRMb2NhdGlvbj86IHN0cmluZztcbiAgLyoqIEhpbnQgdGV4dCBiZWxvdyB0aGUgUVIgY29kZS4gRGVmYXVsdDogXCJNdWVzdHJhIGVzdGUgUVIgZW4gbGEgcHVlcnRhIHBhcmEgY2FuamVhciB0dSBlbnRyYWRhLlwiICovXG4gIHNjYW5IaW50Pzogc3RyaW5nO1xufVxuIl19
|
package/esm2022/lib/version.mjs
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* Current version of valtech-components.
|
|
3
3
|
* This is automatically updated during the publish process.
|
|
4
4
|
*/
|
|
5
|
-
export const VERSION = '4.0.
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
export const VERSION = '4.0.168';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDdXJyZW50IHZlcnNpb24gb2YgdmFsdGVjaC1jb21wb25lbnRzLlxuICogVGhpcyBpcyBhdXRvbWF0aWNhbGx5IHVwZGF0ZWQgZHVyaW5nIHRoZSBwdWJsaXNoIHByb2Nlc3MuXG4gKi9cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzQuMC4xNjgnO1xuIl19
|