valtech-components 2.0.428 → 2.0.430
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/organisms/data-table/data-table.component.mjs +17 -3
- package/esm2022/lib/components/organisms/data-table/types.mjs +1 -1
- package/esm2022/lib/services/auth/auth-state.service.mjs +173 -0
- package/esm2022/lib/services/auth/auth.service.mjs +432 -0
- package/esm2022/lib/services/auth/config.mjs +76 -0
- package/esm2022/lib/services/auth/guards.mjs +194 -0
- package/esm2022/lib/services/auth/index.mjs +70 -0
- package/esm2022/lib/services/auth/interceptor.mjs +98 -0
- package/esm2022/lib/services/auth/storage.service.mjs +138 -0
- package/esm2022/lib/services/auth/sync.service.mjs +146 -0
- package/esm2022/lib/services/auth/token.service.mjs +113 -0
- package/esm2022/lib/services/auth/types.mjs +29 -0
- package/esm2022/public-api.mjs +4 -1
- package/fesm2022/valtech-components.mjs +1465 -8
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/organisms/data-table/types.d.ts +8 -0
- package/lib/services/auth/auth-state.service.d.ts +85 -0
- package/lib/services/auth/auth.service.d.ts +123 -0
- package/lib/services/auth/config.d.ts +38 -0
- package/lib/services/auth/guards.d.ts +123 -0
- package/lib/services/auth/index.d.ts +63 -0
- package/lib/services/auth/interceptor.d.ts +22 -0
- package/lib/services/auth/storage.service.d.ts +48 -0
- package/lib/services/auth/sync.service.d.ts +49 -0
- package/lib/services/auth/token.service.d.ts +51 -0
- package/lib/services/auth/types.d.ts +264 -0
- package/package.json +1 -9
- package/public-api.d.ts +1 -0
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { Injectable, inject } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import { VALTECH_AUTH_CONFIG } from './config';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
/**
|
|
6
|
+
* Servicio para sincronización de estado de autenticación entre pestañas.
|
|
7
|
+
* Usa BroadcastChannel API con fallback a storage events.
|
|
8
|
+
*/
|
|
9
|
+
export class AuthSyncService {
|
|
10
|
+
constructor() {
|
|
11
|
+
this.config = inject(VALTECH_AUTH_CONFIG);
|
|
12
|
+
this.channel = null;
|
|
13
|
+
this.eventSubject = new Subject();
|
|
14
|
+
this.storageListener = null;
|
|
15
|
+
/** Observable de eventos de sincronización */
|
|
16
|
+
this.onEvent$ = this.eventSubject.asObservable();
|
|
17
|
+
const prefix = this.config.storagePrefix || 'valtech_auth_';
|
|
18
|
+
this.channelName = `${prefix}sync_channel`;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Inicia la sincronización entre pestañas.
|
|
22
|
+
*/
|
|
23
|
+
start() {
|
|
24
|
+
if (!this.config.enableTabSync) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
// Intentar usar BroadcastChannel API (mejor rendimiento)
|
|
28
|
+
if (typeof BroadcastChannel !== 'undefined') {
|
|
29
|
+
this.initBroadcastChannel();
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
// Fallback a storage events
|
|
33
|
+
this.initStorageEvents();
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Detiene la sincronización.
|
|
38
|
+
*/
|
|
39
|
+
stop() {
|
|
40
|
+
if (this.channel) {
|
|
41
|
+
this.channel.close();
|
|
42
|
+
this.channel = null;
|
|
43
|
+
}
|
|
44
|
+
if (this.storageListener) {
|
|
45
|
+
window.removeEventListener('storage', this.storageListener);
|
|
46
|
+
this.storageListener = null;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Envía un evento a otras pestañas.
|
|
51
|
+
*/
|
|
52
|
+
broadcast(event) {
|
|
53
|
+
if (!this.config.enableTabSync) {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
const fullEvent = {
|
|
57
|
+
...event,
|
|
58
|
+
timestamp: Date.now(),
|
|
59
|
+
};
|
|
60
|
+
if (this.channel) {
|
|
61
|
+
this.channel.postMessage(fullEvent);
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
// Fallback: usar localStorage para notificar
|
|
65
|
+
this.broadcastViaStorage(fullEvent);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
ngOnDestroy() {
|
|
69
|
+
this.stop();
|
|
70
|
+
this.eventSubject.complete();
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Inicializa BroadcastChannel API.
|
|
74
|
+
*/
|
|
75
|
+
initBroadcastChannel() {
|
|
76
|
+
try {
|
|
77
|
+
this.channel = new BroadcastChannel(this.channelName);
|
|
78
|
+
this.channel.onmessage = (event) => {
|
|
79
|
+
this.handleEvent(event.data);
|
|
80
|
+
};
|
|
81
|
+
this.channel.onmessageerror = () => {
|
|
82
|
+
console.warn('[ValtechAuth] Error en BroadcastChannel, usando fallback');
|
|
83
|
+
this.channel?.close();
|
|
84
|
+
this.channel = null;
|
|
85
|
+
this.initStorageEvents();
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
// BroadcastChannel no disponible, usar fallback
|
|
90
|
+
this.initStorageEvents();
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Inicializa fallback con storage events.
|
|
95
|
+
*/
|
|
96
|
+
initStorageEvents() {
|
|
97
|
+
const storageKey = `${this.config.storagePrefix}sync_event`;
|
|
98
|
+
this.storageListener = (event) => {
|
|
99
|
+
if (event.key === storageKey && event.newValue) {
|
|
100
|
+
try {
|
|
101
|
+
const syncEvent = JSON.parse(event.newValue);
|
|
102
|
+
this.handleEvent(syncEvent);
|
|
103
|
+
}
|
|
104
|
+
catch {
|
|
105
|
+
// Ignorar eventos mal formados
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
window.addEventListener('storage', this.storageListener);
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Envía evento via localStorage (fallback).
|
|
113
|
+
*/
|
|
114
|
+
broadcastViaStorage(event) {
|
|
115
|
+
const storageKey = `${this.config.storagePrefix}sync_event`;
|
|
116
|
+
try {
|
|
117
|
+
// Escribir y luego limpiar para permitir múltiples eventos del mismo tipo
|
|
118
|
+
localStorage.setItem(storageKey, JSON.stringify(event));
|
|
119
|
+
// Usar setTimeout para permitir que otras pestañas lean el valor
|
|
120
|
+
setTimeout(() => {
|
|
121
|
+
localStorage.removeItem(storageKey);
|
|
122
|
+
}, 100);
|
|
123
|
+
}
|
|
124
|
+
catch {
|
|
125
|
+
console.warn('[ValtechAuth] Error enviando evento via storage');
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Maneja un evento recibido.
|
|
130
|
+
*/
|
|
131
|
+
handleEvent(event) {
|
|
132
|
+
// Verificar que el evento no sea muy antiguo (más de 5 segundos)
|
|
133
|
+
const age = Date.now() - event.timestamp;
|
|
134
|
+
if (age > 5000) {
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
137
|
+
this.eventSubject.next(event);
|
|
138
|
+
}
|
|
139
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AuthSyncService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
140
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AuthSyncService, providedIn: 'root' }); }
|
|
141
|
+
}
|
|
142
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AuthSyncService, decorators: [{
|
|
143
|
+
type: Injectable,
|
|
144
|
+
args: [{ providedIn: 'root' }]
|
|
145
|
+
}], ctorParameters: () => [] });
|
|
146
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoL3N5bmMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsT0FBTyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFHL0M7OztHQUdHO0FBRUgsTUFBTSxPQUFPLGVBQWU7SUFVMUI7UUFUUSxXQUFNLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDckMsWUFBTyxHQUE0QixJQUFJLENBQUM7UUFFeEMsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBaUIsQ0FBQztRQUM1QyxvQkFBZSxHQUEyQyxJQUFJLENBQUM7UUFFdkUsOENBQThDO1FBQ3JDLGFBQVEsR0FBOEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUc5RSxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsSUFBSSxlQUFlLENBQUM7UUFDNUQsSUFBSSxDQUFDLFdBQVcsR0FBRyxHQUFHLE1BQU0sY0FBYyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUs7UUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUMvQixPQUFPO1FBQ1QsQ0FBQztRQUVELHlEQUF5RDtRQUN6RCxJQUFJLE9BQU8sZ0JBQWdCLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDNUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDOUIsQ0FBQzthQUFNLENBQUM7WUFDTiw0QkFBNEI7WUFDNUIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDM0IsQ0FBQztJQUNI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bUIsQ0FBQyxLQUFvQjtRQUM5QyxNQUFNLFVBQVUsR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxZQUFZLENBQUM7UUFFNUQsSUFBSSxDQUFDO1lBQ0gsMEVBQTBFO1lBQzFFLFlBQVksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUN4RCxpRUFBaUU7WUFDakUsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZCxZQUFZLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3RDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNWLENBQUM7UUFBQyxNQUFNLENBQUM7WUFDUCxPQUFPLENBQUMsSUFBSSxDQUFDLGlEQUFpRCxDQUFDLENBQUM7UUFDbEUsQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNLLFdBQVcsQ0FBQyxLQUFvQjtRQUN0QyxpRUFBaUU7UUFDakUsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7UUFDekMsSUFBSSxHQUFHLEdBQUcsSUFBSSxFQUFFLENBQUM7WUFDZixPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLENBQUM7K0dBakpVLGVBQWU7bUhBQWYsZUFBZSxjQURGLE1BQU07OzRGQUNuQixlQUFlO2tCQUQzQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBWQUxURUNIX0FVVEhfQ09ORklHIH0gZnJvbSAnLi9jb25maWcnO1xuaW1wb3J0IHsgQXV0aFN5bmNFdmVudCwgQXV0aFN5bmNFdmVudFR5cGUgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiBTZXJ2aWNpbyBwYXJhIHNpbmNyb25pemFjacOzbiBkZSBlc3RhZG8gZGUgYXV0ZW50aWNhY2nDs24gZW50cmUgcGVzdGHDsWFzLlxuICogVXNhIEJyb2FkY2FzdENoYW5uZWwgQVBJIGNvbiBmYWxsYmFjayBhIHN0b3JhZ2UgZXZlbnRzLlxuICovXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEF1dGhTeW5jU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgY29uZmlnID0gaW5qZWN0KFZBTFRFQ0hfQVVUSF9DT05GSUcpO1xuICBwcml2YXRlIGNoYW5uZWw6IEJyb2FkY2FzdENoYW5uZWwgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBjaGFubmVsTmFtZTogc3RyaW5nO1xuICBwcml2YXRlIGV2ZW50U3ViamVjdCA9IG5ldyBTdWJqZWN0PEF1dGhTeW5jRXZlbnQ+KCk7XG4gIHByaXZhdGUgc3RvcmFnZUxpc3RlbmVyOiAoKGV2ZW50OiBTdG9yYWdlRXZlbnQpID0+IHZvaWQpIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIE9ic2VydmFibGUgZGUgZXZlbnRvcyBkZSBzaW5jcm9uaXphY2nDs24gKi9cbiAgcmVhZG9ubHkgb25FdmVudCQ6IE9ic2VydmFibGU8QXV0aFN5bmNFdmVudD4gPSB0aGlzLmV2ZW50U3ViamVjdC5hc09ic2VydmFibGUoKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBjb25zdCBwcmVmaXggPSB0aGlzLmNvbmZpZy5zdG9yYWdlUHJlZml4IHx8ICd2YWx0ZWNoX2F1dGhfJztcbiAgICB0aGlzLmNoYW5uZWxOYW1lID0gYCR7cHJlZml4fXN5bmNfY2hhbm5lbGA7XG4gIH1cblxuICAvKipcbiAgICogSW5pY2lhIGxhIHNpbmNyb25pemFjacOzbiBlbnRyZSBwZXN0YcOxYXMuXG4gICAqL1xuICBzdGFydCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuY29uZmlnLmVuYWJsZVRhYlN5bmMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBJbnRlbnRhciB1c2FyIEJyb2FkY2FzdENoYW5uZWwgQVBJIChtZWpvciByZW5kaW1pZW50bylcbiAgICBpZiAodHlwZW9mIEJyb2FkY2FzdENoYW5uZWwgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0aGlzLmluaXRCcm9hZGNhc3RDaGFubmVsKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEZhbGxiYWNrIGEgc3RvcmFnZSBldmVudHNcbiAgICAgIHRoaXMuaW5pdFN0b3JhZ2VFdmVudHMoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRGV0aWVuZSBsYSBzaW5jcm9uaXphY2nDs24uXG4gICAqL1xuICBzdG9wKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNoYW5uZWwpIHtcbiAgICAgIHRoaXMuY2hhbm5lbC5jbG9zZSgpO1xuICAgICAgdGhpcy5jaGFubmVsID0gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5zdG9yYWdlTGlzdGVuZXIpIHtcbiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdzdG9yYWdlJywgdGhpcy5zdG9yYWdlTGlzdGVuZXIpO1xuICAgICAgdGhpcy5zdG9yYWdlTGlzdGVuZXIgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBFbnbDrWEgdW4gZXZlbnRvIGEgb3RyYXMgcGVzdGHDsWFzLlxuICAgKi9cbiAgYnJvYWRjYXN0KGV2ZW50OiBPbWl0PEF1dGhTeW5jRXZlbnQsICd0aW1lc3RhbXAnPik6IHZvaWQge1xuICAgIGlmICghdGhpcy5jb25maWcuZW5hYmxlVGFiU3luYykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGZ1bGxFdmVudDogQXV0aFN5bmNFdmVudCA9IHtcbiAgICAgIC4uLmV2ZW50LFxuICAgICAgdGltZXN0YW1wOiBEYXRlLm5vdygpLFxuICAgIH07XG5cbiAgICBpZiAodGhpcy5jaGFubmVsKSB7XG4gICAgICB0aGlzLmNoYW5uZWwucG9zdE1lc3NhZ2UoZnVsbEV2ZW50KTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gRmFsbGJhY2s6IHVzYXIgbG9jYWxTdG9yYWdlIHBhcmEgbm90aWZpY2FyXG4gICAgICB0aGlzLmJyb2FkY2FzdFZpYVN0b3JhZ2UoZnVsbEV2ZW50KTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3AoKTtcbiAgICB0aGlzLmV2ZW50U3ViamVjdC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaWNpYWxpemEgQnJvYWRjYXN0Q2hhbm5lbCBBUEkuXG4gICAqL1xuICBwcml2YXRlIGluaXRCcm9hZGNhc3RDaGFubmVsKCk6IHZvaWQge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLmNoYW5uZWwgPSBuZXcgQnJvYWRjYXN0Q2hhbm5lbCh0aGlzLmNoYW5uZWxOYW1lKTtcblxuICAgICAgdGhpcy5jaGFubmVsLm9ubWVzc2FnZSA9IChldmVudDogTWVzc2FnZUV2ZW50PEF1dGhTeW5jRXZlbnQ+KSA9PiB7XG4gICAgICAgIHRoaXMuaGFuZGxlRXZlbnQoZXZlbnQuZGF0YSk7XG4gICAgICB9O1xuXG4gICAgICB0aGlzLmNoYW5uZWwub25tZXNzYWdlZXJyb3IgPSAoKSA9PiB7XG4gICAgICAgIGNvbnNvbGUud2FybignW1ZhbHRlY2hBdXRoXSBFcnJvciBlbiBCcm9hZGNhc3RDaGFubmVsLCB1c2FuZG8gZmFsbGJhY2snKTtcbiAgICAgICAgdGhpcy5jaGFubmVsPy5jbG9zZSgpO1xuICAgICAgICB0aGlzLmNoYW5uZWwgPSBudWxsO1xuICAgICAgICB0aGlzLmluaXRTdG9yYWdlRXZlbnRzKCk7XG4gICAgICB9O1xuICAgIH0gY2F0Y2gge1xuICAgICAgLy8gQnJvYWRjYXN0Q2hhbm5lbCBubyBkaXNwb25pYmxlLCB1c2FyIGZhbGxiYWNrXG4gICAgICB0aGlzLmluaXRTdG9yYWdlRXZlbnRzKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEluaWNpYWxpemEgZmFsbGJhY2sgY29uIHN0b3JhZ2UgZXZlbnRzLlxuICAgKi9cbiAgcHJpdmF0ZSBpbml0U3RvcmFnZUV2ZW50cygpOiB2b2lkIHtcbiAgICBjb25zdCBzdG9yYWdlS2V5ID0gYCR7dGhpcy5jb25maWcuc3RvcmFnZVByZWZpeH1zeW5jX2V2ZW50YDtcblxuICAgIHRoaXMuc3RvcmFnZUxpc3RlbmVyID0gKGV2ZW50OiBTdG9yYWdlRXZlbnQpID0+IHtcbiAgICAgIGlmIChldmVudC5rZXkgPT09IHN0b3JhZ2VLZXkgJiYgZXZlbnQubmV3VmFsdWUpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCBzeW5jRXZlbnQ6IEF1dGhTeW5jRXZlbnQgPSBKU09OLnBhcnNlKGV2ZW50Lm5ld1ZhbHVlKTtcbiAgICAgICAgICB0aGlzLmhhbmRsZUV2ZW50KHN5bmNFdmVudCk7XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgIC8vIElnbm9yYXIgZXZlbnRvcyBtYWwgZm9ybWFkb3NcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG5cbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignc3RvcmFnZScsIHRoaXMuc3RvcmFnZUxpc3RlbmVyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbnbDrWEgZXZlbnRvIHZpYSBsb2NhbFN0b3JhZ2UgKGZhbGxiYWNrKS5cbiAgICovXG4gIHByaXZhdGUgYnJvYWRjYXN0VmlhU3RvcmFnZShldmVudDogQXV0aFN5bmNFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IHN0b3JhZ2VLZXkgPSBgJHt0aGlzLmNvbmZpZy5zdG9yYWdlUHJlZml4fXN5bmNfZXZlbnRgO1xuXG4gICAgdHJ5IHtcbiAgICAgIC8vIEVzY3JpYmlyIHkgbHVlZ28gbGltcGlhciBwYXJhIHBlcm1pdGlyIG3Dumx0aXBsZXMgZXZlbnRvcyBkZWwgbWlzbW8gdGlwb1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oc3RvcmFnZUtleSwgSlNPTi5zdHJpbmdpZnkoZXZlbnQpKTtcbiAgICAgIC8vIFVzYXIgc2V0VGltZW91dCBwYXJhIHBlcm1pdGlyIHF1ZSBvdHJhcyBwZXN0YcOxYXMgbGVhbiBlbCB2YWxvclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHN0b3JhZ2VLZXkpO1xuICAgICAgfSwgMTAwKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIGNvbnNvbGUud2FybignW1ZhbHRlY2hBdXRoXSBFcnJvciBlbnZpYW5kbyBldmVudG8gdmlhIHN0b3JhZ2UnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTWFuZWphIHVuIGV2ZW50byByZWNpYmlkby5cbiAgICovXG4gIHByaXZhdGUgaGFuZGxlRXZlbnQoZXZlbnQ6IEF1dGhTeW5jRXZlbnQpOiB2b2lkIHtcbiAgICAvLyBWZXJpZmljYXIgcXVlIGVsIGV2ZW50byBubyBzZWEgbXV5IGFudGlndW8gKG3DoXMgZGUgNSBzZWd1bmRvcylcbiAgICBjb25zdCBhZ2UgPSBEYXRlLm5vdygpIC0gZXZlbnQudGltZXN0YW1wO1xuICAgIGlmIChhZ2UgPiA1MDAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5ldmVudFN1YmplY3QubmV4dChldmVudCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Servicio para manejo de tokens JWT.
|
|
5
|
+
* Parseo y validación de tokens sin dependencias externas.
|
|
6
|
+
*/
|
|
7
|
+
export class TokenService {
|
|
8
|
+
/**
|
|
9
|
+
* Parsea un token JWT y extrae los claims.
|
|
10
|
+
* @param token - Token JWT
|
|
11
|
+
* @returns Claims del token o null si es inválido
|
|
12
|
+
*/
|
|
13
|
+
parseToken(token) {
|
|
14
|
+
try {
|
|
15
|
+
const parts = token.split('.');
|
|
16
|
+
if (parts.length !== 3) {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
const payload = parts[1];
|
|
20
|
+
const decoded = this.base64UrlDecode(payload);
|
|
21
|
+
return JSON.parse(decoded);
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
24
|
+
console.warn('[ValtechAuth] Error al parsear token JWT');
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Verifica si un token es válido (no expirado).
|
|
30
|
+
* @param token - Token JWT
|
|
31
|
+
* @returns true si el token es válido
|
|
32
|
+
*/
|
|
33
|
+
isTokenValid(token) {
|
|
34
|
+
const claims = this.parseToken(token);
|
|
35
|
+
if (!claims) {
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
// exp está en segundos, Date.now() en milisegundos
|
|
39
|
+
const expirationMs = claims.exp * 1000;
|
|
40
|
+
return Date.now() < expirationMs;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Obtiene el tiempo restante del token en segundos.
|
|
44
|
+
* @param token - Token JWT
|
|
45
|
+
* @returns Segundos restantes o 0 si expirado
|
|
46
|
+
*/
|
|
47
|
+
getTimeToExpiry(token) {
|
|
48
|
+
const claims = this.parseToken(token);
|
|
49
|
+
if (!claims) {
|
|
50
|
+
return 0;
|
|
51
|
+
}
|
|
52
|
+
const expirationMs = claims.exp * 1000;
|
|
53
|
+
const remaining = expirationMs - Date.now();
|
|
54
|
+
return remaining > 0 ? Math.floor(remaining / 1000) : 0;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Obtiene el timestamp de expiración del token.
|
|
58
|
+
* @param token - Token JWT
|
|
59
|
+
* @returns Timestamp en milisegundos o null
|
|
60
|
+
*/
|
|
61
|
+
getExpirationTime(token) {
|
|
62
|
+
const claims = this.parseToken(token);
|
|
63
|
+
if (!claims) {
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
return claims.exp * 1000;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Extrae el user ID del token.
|
|
70
|
+
* @param token - Token JWT
|
|
71
|
+
* @returns User ID o null
|
|
72
|
+
*/
|
|
73
|
+
getUserId(token) {
|
|
74
|
+
const claims = this.parseToken(token);
|
|
75
|
+
return claims?.uid || null;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Extrae el email del token.
|
|
79
|
+
* @param token - Token JWT
|
|
80
|
+
* @returns Email o null
|
|
81
|
+
*/
|
|
82
|
+
getEmail(token) {
|
|
83
|
+
const claims = this.parseToken(token);
|
|
84
|
+
return claims?.email || null;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Decodifica base64url a string.
|
|
88
|
+
* Base64url usa - y _ en lugar de + y /
|
|
89
|
+
*/
|
|
90
|
+
base64UrlDecode(str) {
|
|
91
|
+
// Reemplazar caracteres base64url por base64 estándar
|
|
92
|
+
let base64 = str.replace(/-/g, '+').replace(/_/g, '/');
|
|
93
|
+
// Agregar padding si es necesario
|
|
94
|
+
const padding = base64.length % 4;
|
|
95
|
+
if (padding) {
|
|
96
|
+
base64 += '='.repeat(4 - padding);
|
|
97
|
+
}
|
|
98
|
+
// Decodificar
|
|
99
|
+
const decoded = atob(base64);
|
|
100
|
+
// Manejar caracteres UTF-8
|
|
101
|
+
return decodeURIComponent(decoded
|
|
102
|
+
.split('')
|
|
103
|
+
.map((c) => '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2))
|
|
104
|
+
.join(''));
|
|
105
|
+
}
|
|
106
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TokenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
107
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TokenService, providedIn: 'root' }); }
|
|
108
|
+
}
|
|
109
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TokenService, decorators: [{
|
|
110
|
+
type: Injectable,
|
|
111
|
+
args: [{ providedIn: 'root' }]
|
|
112
|
+
}] });
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2VydmljZXMvYXV0aC90b2tlbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRzNDOzs7R0FHRztBQUVILE1BQU0sT0FBTyxZQUFZO0lBQ3ZCOzs7O09BSUc7SUFDSCxVQUFVLENBQUMsS0FBYTtRQUN0QixJQUFJLENBQUM7WUFDSCxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQy9CLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDdkIsT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1lBRUQsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDOUMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzdCLENBQUM7UUFBQyxNQUFNLENBQUM7WUFDUCxPQUFPLENBQUMsSUFBSSxDQUFDLDBDQUEwQyxDQUFDLENBQUM7WUFDekQsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxZQUFZLENBQUMsS0FBYTtRQUN4QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNaLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztRQUVELG1EQUFtRDtRQUNuRCxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQztRQUN2QyxPQUFPLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxZQUFZLENBQUM7SUFDbkMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxlQUFlLENBQUMsS0FBYTtRQUMzQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNaLE9BQU8sQ0FBQyxDQUFDO1FBQ1gsQ0FBQztRQUVELE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDO1FBQ3ZDLE1BQU0sU0FBUyxHQUFHLFlBQVksR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDNUMsT0FBTyxTQUFTLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsaUJBQWlCLENBQUMsS0FBYTtRQUM3QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNaLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELE9BQU8sTUFBTSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUM7SUFDM0IsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxTQUFTLENBQUMsS0FBYTtRQUNyQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLE9BQU8sTUFBTSxFQUFFLEdBQUcsSUFBSSxJQUFJLENBQUM7SUFDN0IsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxRQUFRLENBQUMsS0FBYTtRQUNwQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLE9BQU8sTUFBTSxFQUFFLEtBQUssSUFBSSxJQUFJLENBQUM7SUFDL0IsQ0FBQztJQUVEOzs7T0FHRztJQUNLLGVBQWUsQ0FBQyxHQUFXO1FBQ2pDLHNEQUFzRDtRQUN0RCxJQUFJLE1BQU0sR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRXZELGtDQUFrQztRQUNsQyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUNsQyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osTUFBTSxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDO1FBQ3BDLENBQUM7UUFFRCxjQUFjO1FBQ2QsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTdCLDJCQUEyQjtRQUMzQixPQUFPLGtCQUFrQixDQUN2QixPQUFPO2FBQ0osS0FBSyxDQUFDLEVBQUUsQ0FBQzthQUNULEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDakUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUNaLENBQUM7SUFDSixDQUFDOytHQWhIVSxZQUFZO21IQUFaLFlBQVksY0FEQyxNQUFNOzs0RkFDbkIsWUFBWTtrQkFEeEIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBKV1RDbGFpbXMgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiBTZXJ2aWNpbyBwYXJhIG1hbmVqbyBkZSB0b2tlbnMgSldULlxuICogUGFyc2VvIHkgdmFsaWRhY2nDs24gZGUgdG9rZW5zIHNpbiBkZXBlbmRlbmNpYXMgZXh0ZXJuYXMuXG4gKi9cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgVG9rZW5TZXJ2aWNlIHtcbiAgLyoqXG4gICAqIFBhcnNlYSB1biB0b2tlbiBKV1QgeSBleHRyYWUgbG9zIGNsYWltcy5cbiAgICogQHBhcmFtIHRva2VuIC0gVG9rZW4gSldUXG4gICAqIEByZXR1cm5zIENsYWltcyBkZWwgdG9rZW4gbyBudWxsIHNpIGVzIGludsOhbGlkb1xuICAgKi9cbiAgcGFyc2VUb2tlbih0b2tlbjogc3RyaW5nKTogSldUQ2xhaW1zIHwgbnVsbCB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHBhcnRzID0gdG9rZW4uc3BsaXQoJy4nKTtcbiAgICAgIGlmIChwYXJ0cy5sZW5ndGggIT09IDMpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHBheWxvYWQgPSBwYXJ0c1sxXTtcbiAgICAgIGNvbnN0IGRlY29kZWQgPSB0aGlzLmJhc2U2NFVybERlY29kZShwYXlsb2FkKTtcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKGRlY29kZWQpO1xuICAgIH0gY2F0Y2gge1xuICAgICAgY29uc29sZS53YXJuKCdbVmFsdGVjaEF1dGhdIEVycm9yIGFsIHBhcnNlYXIgdG9rZW4gSldUJyk7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVmVyaWZpY2Egc2kgdW4gdG9rZW4gZXMgdsOhbGlkbyAobm8gZXhwaXJhZG8pLlxuICAgKiBAcGFyYW0gdG9rZW4gLSBUb2tlbiBKV1RcbiAgICogQHJldHVybnMgdHJ1ZSBzaSBlbCB0b2tlbiBlcyB2w6FsaWRvXG4gICAqL1xuICBpc1Rva2VuVmFsaWQodG9rZW46IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGNsYWltcyA9IHRoaXMucGFyc2VUb2tlbih0b2tlbik7XG4gICAgaWYgKCFjbGFpbXMpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBleHAgZXN0w6EgZW4gc2VndW5kb3MsIERhdGUubm93KCkgZW4gbWlsaXNlZ3VuZG9zXG4gICAgY29uc3QgZXhwaXJhdGlvbk1zID0gY2xhaW1zLmV4cCAqIDEwMDA7XG4gICAgcmV0dXJuIERhdGUubm93KCkgPCBleHBpcmF0aW9uTXM7XG4gIH1cblxuICAvKipcbiAgICogT2J0aWVuZSBlbCB0aWVtcG8gcmVzdGFudGUgZGVsIHRva2VuIGVuIHNlZ3VuZG9zLlxuICAgKiBAcGFyYW0gdG9rZW4gLSBUb2tlbiBKV1RcbiAgICogQHJldHVybnMgU2VndW5kb3MgcmVzdGFudGVzIG8gMCBzaSBleHBpcmFkb1xuICAgKi9cbiAgZ2V0VGltZVRvRXhwaXJ5KHRva2VuOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIGNvbnN0IGNsYWltcyA9IHRoaXMucGFyc2VUb2tlbih0b2tlbik7XG4gICAgaWYgKCFjbGFpbXMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cblxuICAgIGNvbnN0IGV4cGlyYXRpb25NcyA9IGNsYWltcy5leHAgKiAxMDAwO1xuICAgIGNvbnN0IHJlbWFpbmluZyA9IGV4cGlyYXRpb25NcyAtIERhdGUubm93KCk7XG4gICAgcmV0dXJuIHJlbWFpbmluZyA+IDAgPyBNYXRoLmZsb29yKHJlbWFpbmluZyAvIDEwMDApIDogMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBPYnRpZW5lIGVsIHRpbWVzdGFtcCBkZSBleHBpcmFjacOzbiBkZWwgdG9rZW4uXG4gICAqIEBwYXJhbSB0b2tlbiAtIFRva2VuIEpXVFxuICAgKiBAcmV0dXJucyBUaW1lc3RhbXAgZW4gbWlsaXNlZ3VuZG9zIG8gbnVsbFxuICAgKi9cbiAgZ2V0RXhwaXJhdGlvblRpbWUodG9rZW46IHN0cmluZyk6IG51bWJlciB8IG51bGwge1xuICAgIGNvbnN0IGNsYWltcyA9IHRoaXMucGFyc2VUb2tlbih0b2tlbik7XG4gICAgaWYgKCFjbGFpbXMpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiBjbGFpbXMuZXhwICogMTAwMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeHRyYWUgZWwgdXNlciBJRCBkZWwgdG9rZW4uXG4gICAqIEBwYXJhbSB0b2tlbiAtIFRva2VuIEpXVFxuICAgKiBAcmV0dXJucyBVc2VyIElEIG8gbnVsbFxuICAgKi9cbiAgZ2V0VXNlcklkKHRva2VuOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICBjb25zdCBjbGFpbXMgPSB0aGlzLnBhcnNlVG9rZW4odG9rZW4pO1xuICAgIHJldHVybiBjbGFpbXM/LnVpZCB8fCBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIEV4dHJhZSBlbCBlbWFpbCBkZWwgdG9rZW4uXG4gICAqIEBwYXJhbSB0b2tlbiAtIFRva2VuIEpXVFxuICAgKiBAcmV0dXJucyBFbWFpbCBvIG51bGxcbiAgICovXG4gIGdldEVtYWlsKHRva2VuOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICBjb25zdCBjbGFpbXMgPSB0aGlzLnBhcnNlVG9rZW4odG9rZW4pO1xuICAgIHJldHVybiBjbGFpbXM/LmVtYWlsIHx8IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogRGVjb2RpZmljYSBiYXNlNjR1cmwgYSBzdHJpbmcuXG4gICAqIEJhc2U2NHVybCB1c2EgLSB5IF8gZW4gbHVnYXIgZGUgKyB5IC9cbiAgICovXG4gIHByaXZhdGUgYmFzZTY0VXJsRGVjb2RlKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAvLyBSZWVtcGxhemFyIGNhcmFjdGVyZXMgYmFzZTY0dXJsIHBvciBiYXNlNjQgZXN0w6FuZGFyXG4gICAgbGV0IGJhc2U2NCA9IHN0ci5yZXBsYWNlKC8tL2csICcrJykucmVwbGFjZSgvXy9nLCAnLycpO1xuXG4gICAgLy8gQWdyZWdhciBwYWRkaW5nIHNpIGVzIG5lY2VzYXJpb1xuICAgIGNvbnN0IHBhZGRpbmcgPSBiYXNlNjQubGVuZ3RoICUgNDtcbiAgICBpZiAocGFkZGluZykge1xuICAgICAgYmFzZTY0ICs9ICc9Jy5yZXBlYXQoNCAtIHBhZGRpbmcpO1xuICAgIH1cblxuICAgIC8vIERlY29kaWZpY2FyXG4gICAgY29uc3QgZGVjb2RlZCA9IGF0b2IoYmFzZTY0KTtcblxuICAgIC8vIE1hbmVqYXIgY2FyYWN0ZXJlcyBVVEYtOFxuICAgIHJldHVybiBkZWNvZGVVUklDb21wb25lbnQoXG4gICAgICBkZWNvZGVkXG4gICAgICAgIC5zcGxpdCgnJylcbiAgICAgICAgLm1hcCgoYykgPT4gJyUnICsgKCcwMCcgKyBjLmNoYXJDb2RlQXQoMCkudG9TdHJpbmcoMTYpKS5zbGljZSgtMikpXG4gICAgICAgIC5qb2luKCcnKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tipos e interfaces para el servicio de autenticación de Valtech.
|
|
3
|
+
* Alineados con el backend AuthV2.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Estado inicial de autenticación.
|
|
7
|
+
*/
|
|
8
|
+
export const INITIAL_AUTH_STATE = {
|
|
9
|
+
isAuthenticated: false,
|
|
10
|
+
isLoading: true,
|
|
11
|
+
accessToken: null,
|
|
12
|
+
refreshToken: null,
|
|
13
|
+
userId: null,
|
|
14
|
+
email: null,
|
|
15
|
+
roles: [],
|
|
16
|
+
permissions: [],
|
|
17
|
+
isSuperAdmin: false,
|
|
18
|
+
expiresAt: null,
|
|
19
|
+
error: null,
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Estado inicial de MFA.
|
|
23
|
+
*/
|
|
24
|
+
export const INITIAL_MFA_STATE = {
|
|
25
|
+
required: false,
|
|
26
|
+
mfaToken: null,
|
|
27
|
+
method: null,
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2F1dGgvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBa0ZIOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQWM7SUFDM0MsZUFBZSxFQUFFLEtBQUs7SUFDdEIsU0FBUyxFQUFFLElBQUk7SUFDZixXQUFXLEVBQUUsSUFBSTtJQUNqQixZQUFZLEVBQUUsSUFBSTtJQUNsQixNQUFNLEVBQUUsSUFBSTtJQUNaLEtBQUssRUFBRSxJQUFJO0lBQ1gsS0FBSyxFQUFFLEVBQUU7SUFDVCxXQUFXLEVBQUUsRUFBRTtJQUNmLFlBQVksRUFBRSxLQUFLO0lBQ25CLFNBQVMsRUFBRSxJQUFJO0lBQ2YsS0FBSyxFQUFFLElBQUk7Q0FDWixDQUFDO0FBa0JGOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQW9CO0lBQ2hELFFBQVEsRUFBRSxLQUFLO0lBQ2YsUUFBUSxFQUFFLElBQUk7SUFDZCxNQUFNLEVBQUUsSUFBSTtDQUNiLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRpcG9zIGUgaW50ZXJmYWNlcyBwYXJhIGVsIHNlcnZpY2lvIGRlIGF1dGVudGljYWNpw7NuIGRlIFZhbHRlY2guXG4gKiBBbGluZWFkb3MgY29uIGVsIGJhY2tlbmQgQXV0aFYyLlxuICovXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDT05GSUdVUkFDScOTTlxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBDb25maWd1cmFjacOzbiBwYXJhIGVsIHNlcnZpY2lvIGRlIGF1dGVudGljYWNpw7NuLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZhbHRlY2hBdXRoQ29uZmlnIHtcbiAgLyoqIFVSTCBiYXNlIGRlIGxhIEFQSSAoZWo6ICdodHRwczovL2FwaS5teXZhbHRlY2guY29tJykgKi9cbiAgYXBpVXJsOiBzdHJpbmc7XG4gIC8qKiBQcmVmaWpvIHBhcmEgZW5kcG9pbnRzIGRlIGF1dGggKGRlZmF1bHQ6ICcvdjIvYXV0aCcpICovXG4gIGF1dGhQcmVmaXg/OiBzdHJpbmc7XG4gIC8qKiBQcmVmaWpvIHBhcmEgbGFzIGNsYXZlcyBkZSBsb2NhbFN0b3JhZ2UgKGRlZmF1bHQ6ICd2YWx0ZWNoX2F1dGhfJykgKi9cbiAgc3RvcmFnZVByZWZpeD86IHN0cmluZztcbiAgLyoqIFRpZW1wbyBhbnRlcyBkZSBleHBpcmFjacOzbiBwYXJhIHJlZnJlc2NhciB0b2tlbiBlbiBzZWd1bmRvcyAoZGVmYXVsdDogNjApICovXG4gIHJlZnJlc2hCZWZvcmVFeHBpcnk/OiBudW1iZXI7XG4gIC8qKiBIYWJpbGl0YXIgc2luY3Jvbml6YWNpw7NuIGVudHJlIHBlc3Rhw7FhcyAoZGVmYXVsdDogdHJ1ZSkgKi9cbiAgZW5hYmxlVGFiU3luYz86IGJvb2xlYW47XG4gIC8qKiBSdXRhIGRlIHJlZGlyZWNjacOzbiBjdWFuZG8gbm8gYXV0ZW50aWNhZG8gKGRlZmF1bHQ6ICcvbG9naW4nKSAqL1xuICBsb2dpblJvdXRlPzogc3RyaW5nO1xuICAvKiogUnV0YSBkZSByZWRpcmVjY2nDs24gY3VhbmRvIHlhIGF1dGVudGljYWRvIChkZWZhdWx0OiAnLycpICovXG4gIGhvbWVSb3V0ZT86IHN0cmluZztcbiAgLyoqIFJ1dGEgcGFyYSBhY2Nlc28gZGVuZWdhZG8gKGRlZmF1bHQ6ICcvdW5hdXRob3JpemVkJykgKi9cbiAgdW5hdXRob3JpemVkUm91dGU/OiBzdHJpbmc7XG4gIC8qKiBIYWJpbGl0YXIgaW50ZWdyYWNpw7NuIGNvbiBGaXJlYmFzZVNlcnZpY2UgKGRlZmF1bHQ6IGZhbHNlKSAqL1xuICBlbmFibGVGaXJlYmFzZUludGVncmF0aW9uPzogYm9vbGVhbjtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEVTVEFETyBERSBBVVRFTlRJQ0FDScOTTlxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBFc3RhZG8gY29tcGxldG8gZGUgYXV0ZW50aWNhY2nDs24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aFN0YXRlIHtcbiAgLyoqIFVzdWFyaW8gZXN0w6EgYXV0ZW50aWNhZG8gKi9cbiAgaXNBdXRoZW50aWNhdGVkOiBib29sZWFuO1xuICAvKiogRXN0YWRvIGRlIGNhcmdhIGluaWNpYWwgKi9cbiAgaXNMb2FkaW5nOiBib29sZWFuO1xuICAvKiogVG9rZW4gZGUgYWNjZXNvIGFjdHVhbCAqL1xuICBhY2Nlc3NUb2tlbjogc3RyaW5nIHwgbnVsbDtcbiAgLyoqIFRva2VuIGRlIHJlZnJlc2NvIGFjdHVhbCAqL1xuICByZWZyZXNoVG9rZW46IHN0cmluZyB8IG51bGw7XG4gIC8qKiBJRCBkZWwgdXN1YXJpbyAqL1xuICB1c2VySWQ6IHN0cmluZyB8IG51bGw7XG4gIC8qKiBFbWFpbCBkZWwgdXN1YXJpbyAqL1xuICBlbWFpbDogc3RyaW5nIHwgbnVsbDtcbiAgLyoqIFJvbGVzIGRlbCB1c3VhcmlvICovXG4gIHJvbGVzOiBzdHJpbmdbXTtcbiAgLyoqIFBlcm1pc29zIGRlbCB1c3VhcmlvIChmb3JtYXRvICdyZXNvdXJjZTphY3Rpb24nKSAqL1xuICBwZXJtaXNzaW9uczogc3RyaW5nW107XG4gIC8qKiBVc3VhcmlvIGVzIHN1cGVyIGFkbWluICovXG4gIGlzU3VwZXJBZG1pbjogYm9vbGVhbjtcbiAgLyoqIFRpbWVzdGFtcCBkZSBleHBpcmFjacOzbiBkZWwgYWNjZXNzVG9rZW4gKG1zKSAqL1xuICBleHBpcmVzQXQ6IG51bWJlciB8IG51bGw7XG4gIC8qKiBFcnJvciBkZSBhdXRlbnRpY2FjacOzbiAoc2kgZXhpc3RlKSAqL1xuICBlcnJvcjogQXV0aEVycm9yIHwgbnVsbDtcbn1cblxuLyoqXG4gKiBJbmZvcm1hY2nDs24gZGVsIHVzdWFyaW8gYXV0ZW50aWNhZG8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aFVzZXIge1xuICB1c2VySWQ6IHN0cmluZztcbiAgZW1haWw6IHN0cmluZztcbiAgbmFtZT86IHN0cmluZztcbiAgcm9sZXM6IHN0cmluZ1tdO1xuICBwZXJtaXNzaW9uczogc3RyaW5nW107XG4gIGlzU3VwZXJBZG1pbjogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBFcnJvciBkZSBhdXRlbnRpY2FjacOzbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdXRoRXJyb3Ige1xuICBjb2RlOiBzdHJpbmc7XG4gIG1lc3NhZ2U6IHN0cmluZztcbn1cblxuLyoqXG4gKiBFc3RhZG8gaW5pY2lhbCBkZSBhdXRlbnRpY2FjacOzbi5cbiAqL1xuZXhwb3J0IGNvbnN0IElOSVRJQUxfQVVUSF9TVEFURTogQXV0aFN0YXRlID0ge1xuICBpc0F1dGhlbnRpY2F0ZWQ6IGZhbHNlLFxuICBpc0xvYWRpbmc6IHRydWUsXG4gIGFjY2Vzc1Rva2VuOiBudWxsLFxuICByZWZyZXNoVG9rZW46IG51bGwsXG4gIHVzZXJJZDogbnVsbCxcbiAgZW1haWw6IG51bGwsXG4gIHJvbGVzOiBbXSxcbiAgcGVybWlzc2lvbnM6IFtdLFxuICBpc1N1cGVyQWRtaW46IGZhbHNlLFxuICBleHBpcmVzQXQ6IG51bGwsXG4gIGVycm9yOiBudWxsLFxufTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1GQVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqIE3DqXRvZG9zIGRlIE1GQSBzb3BvcnRhZG9zICovXG5leHBvcnQgdHlwZSBNRkFNZXRob2QgPSAnRU1BSUwnIHwgJ1NNUyc7XG5cbi8qKlxuICogRXN0YWRvIGRlIE1GQSBwZW5kaWVudGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTUZBUGVuZGluZ1N0YXRlIHtcbiAgcmVxdWlyZWQ6IGJvb2xlYW47XG4gIG1mYVRva2VuOiBzdHJpbmcgfCBudWxsO1xuICBtZXRob2Q6IE1GQU1ldGhvZCB8IG51bGw7XG59XG5cbi8qKlxuICogRXN0YWRvIGluaWNpYWwgZGUgTUZBLlxuICovXG5leHBvcnQgY29uc3QgSU5JVElBTF9NRkFfU1RBVEU6IE1GQVBlbmRpbmdTdGF0ZSA9IHtcbiAgcmVxdWlyZWQ6IGZhbHNlLFxuICBtZmFUb2tlbjogbnVsbCxcbiAgbWV0aG9kOiBudWxsLFxufTtcblxuLyoqXG4gKiBSZXN1bHRhZG8gZGUgc2V0dXAgZGUgTUZBLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1GQVNldHVwUmVzdWx0IHtcbiAgY29kZVNlbnQ6IGJvb2xlYW47XG4gIG1lc3NhZ2U6IHN0cmluZztcbn1cblxuLyoqXG4gKiBFc3RhZG8gZGUgTUZBIGRlbCB1c3VhcmlvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1GQVN0YXR1cyB7XG4gIGVuYWJsZWQ6IGJvb2xlYW47XG4gIG1ldGhvZDogTUZBTWV0aG9kIHwgbnVsbDtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJFUVVFU1RTL1JFU1BPTlNFUyAoYWxpbmVhZG9zIGNvbiBiYWNrZW5kIEF1dGhWMilcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIHNpZ25pbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTaWduaW5SZXF1ZXN0IHtcbiAgZW1haWw6IHN0cmluZztcbiAgcGFzc3dvcmQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBzaWduaW4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmluUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBhY2Nlc3NUb2tlbj86IHN0cmluZztcbiAgcmVmcmVzaFRva2VuPzogc3RyaW5nO1xuICBmaXJlYmFzZVRva2VuPzogc3RyaW5nO1xuICBleHBpcmVzSW4/OiBudW1iZXI7XG4gIHRva2VuVHlwZT86IHN0cmluZztcbiAgbWZhUmVxdWlyZWQ/OiBib29sZWFuO1xuICBtZmFUb2tlbj86IHN0cmluZztcbiAgbWZhTWV0aG9kPzogTUZBTWV0aG9kO1xuICByb2xlcz86IHN0cmluZ1tdO1xuICBwZXJtaXNzaW9ucz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSB2ZXJpZmljYXIgTUZBLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1GQVZlcmlmeVJlcXVlc3Qge1xuICBtZmFUb2tlbjogc3RyaW5nO1xuICBjb2RlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgdmVyaWZpY2FyIE1GQS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNRkFWZXJpZnlSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIGFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIHJlZnJlc2hUb2tlbjogc3RyaW5nO1xuICBmaXJlYmFzZVRva2VuPzogc3RyaW5nO1xuICBleHBpcmVzSW46IG51bWJlcjtcbiAgdG9rZW5UeXBlOiBzdHJpbmc7XG4gIHJvbGVzPzogc3RyaW5nW107XG4gIHBlcm1pc3Npb25zPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIHJlZnJlc2NhciB0b2tlbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZWZyZXNoUmVxdWVzdCB7XG4gIHJlZnJlc2hUb2tlbjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIHJlZnJlc2NhciB0b2tlbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZWZyZXNoUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBhY2Nlc3NUb2tlbjogc3RyaW5nO1xuICBleHBpcmVzSW46IG51bWJlcjtcbn1cblxuLyoqXG4gKiBSZXF1ZXN0IHBhcmEgbG9nb3V0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvZ291dFJlcXVlc3Qge1xuICByZWZyZXNoVG9rZW46IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBkZSBsb2dvdXQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9nb3V0UmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBzdWNjZXNzOiBib29sZWFuO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIG9idGVuZXIgcGVybWlzb3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0UGVybWlzc2lvbnNSZXNwb25zZSB7XG4gIG9wZXJhdGlvbklkOiBzdHJpbmc7XG4gIHJvbGVzOiBzdHJpbmdbXTtcbiAgcGVybWlzc2lvbnM6IHN0cmluZ1tdO1xuICBpc1N1cGVyQWRtaW46IGJvb2xlYW47XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIHNldHVwIGRlIE1GQS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNRkFTZXR1cFJlcXVlc3Qge1xuICBtZXRob2Q6IE1GQU1ldGhvZDtcbiAgcGhvbmU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVzcG9uc2UgZGUgc2V0dXAgZGUgTUZBLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1GQVNldHVwUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBjb2RlU2VudDogYm9vbGVhbjtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgcGFyYSBjb25maXJtYXIgTUZBLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1GQUNvbmZpcm1SZXF1ZXN0IHtcbiAgY29kZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGNvbmZpcm1hciBNRkEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTUZBQ29uZmlybVJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgbWZhRW5hYmxlZDogYm9vbGVhbjtcbiAgbWV0aG9kOiBNRkFNZXRob2Q7XG59XG5cbi8qKlxuICogUmVxdWVzdCBwYXJhIGRlc2hhYmlsaXRhciBNRkEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTUZBRGlzYWJsZVJlcXVlc3Qge1xuICBwYXNzd29yZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlc3BvbnNlIGRlIGRlc2hhYmlsaXRhciBNRkEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTUZBRGlzYWJsZVJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgbWZhRGlzYWJsZWQ6IGJvb2xlYW47XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBFVkVOVE9TIERFIFNJTkNST05JWkFDScOTTlxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqIFRpcG9zIGRlIGV2ZW50b3MgZGUgc2luY3Jvbml6YWNpw7NuIGVudHJlIHBlc3Rhw7FhcyAqL1xuZXhwb3J0IHR5cGUgQXV0aFN5bmNFdmVudFR5cGUgPVxuICB8ICdMT0dJTidcbiAgfCAnTE9HT1VUJ1xuICB8ICdUT0tFTl9SRUZSRVNIJ1xuICB8ICdQRVJNSVNTSU9OU19VUERBVEUnO1xuXG4vKipcbiAqIEV2ZW50byBkZSBzaW5jcm9uaXphY2nDs24gZW50cmUgcGVzdGHDsWFzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dGhTeW5jRXZlbnQge1xuICB0eXBlOiBBdXRoU3luY0V2ZW50VHlwZTtcbiAgdGltZXN0YW1wOiBudW1iZXI7XG4gIHBheWxvYWQ/OiB7XG4gICAgYWNjZXNzVG9rZW4/OiBzdHJpbmc7XG4gICAgZXhwaXJlc0F0PzogbnVtYmVyO1xuICB9O1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gSldUIENMQUlNU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBDbGFpbXMgZGVsIEpXVCBkZSBhY2Nlc28uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSldUQ2xhaW1zIHtcbiAgLyoqIFVzZXIgSUQgKi9cbiAgdWlkOiBzdHJpbmc7XG4gIC8qKiBFbWFpbCAqL1xuICBlbWFpbDogc3RyaW5nO1xuICAvKiogU2Vzc2lvbiBJRCAqL1xuICBzaWQ/OiBzdHJpbmc7XG4gIC8qKiBJc3N1ZWQgYXQgKi9cbiAgaWF0OiBudW1iZXI7XG4gIC8qKiBFeHBpcmF0aW9uICovXG4gIGV4cDogbnVtYmVyO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU1RPUkFHRVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBEYXRvcyBwZXJzaXN0aWRvcyBlbiBzdG9yYWdlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0b3JlZEF1dGhTdGF0ZSB7XG4gIGFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIHJlZnJlc2hUb2tlbjogc3RyaW5nO1xuICByb2xlczogc3RyaW5nW107XG4gIHBlcm1pc3Npb25zOiBzdHJpbmdbXTtcbiAgaXNTdXBlckFkbWluOiBib29sZWFuO1xuICBleHBpcmVzQXQ/OiBudW1iZXI7XG59XG4iXX0=
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -216,10 +216,13 @@ export * from './lib/services/modal/types';
|
|
|
216
216
|
// Firebase Services
|
|
217
217
|
// Los servicios de Firebase requieren provideValtechFirebase() en el bootstrap de la app
|
|
218
218
|
export * from './lib/services/firebase';
|
|
219
|
+
// Auth Services
|
|
220
|
+
// Los servicios de Auth requieren provideValtechAuth() en el bootstrap de la app
|
|
221
|
+
export * from './lib/services/auth';
|
|
219
222
|
export * from './lib/components/types';
|
|
220
223
|
export * from './lib/shared/pipes/process-links.pipe';
|
|
221
224
|
export * from './lib/shared/utils/dom';
|
|
222
225
|
export * from './lib/shared/utils/form-defaults';
|
|
223
226
|
export * from './lib/shared/utils/styles';
|
|
224
227
|
export * from './lib/shared/utils/text';
|
|
225
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyx3Q0FB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RCxjQUFjLGtFQUFrRSxDQUFDO0FBQ2pGLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYywrQ0FBK0MsQ0FBQztBQUU5RCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDRCQUE0QixDQUFDO0FBRTNDLG9CQUFvQjtBQUNwQix5RkFBeUY7QUFDekYsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgdmFsdGVjaC1jb21wb25lbnRzXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2F2YXRhci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2JveC9ib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvYm94L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9idXR0b24vZmFjdG9yeSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2Rpc3BsYXkvZGlzcGxheS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9kaXNwbGF5L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvZGl2aWRlci9kaXZpZGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2RpdmlkZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9ocmVmL2hyZWYuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvaHJlZi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2ljb24vaWNvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9pY29uL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvaW1hZ2UvaW1hZ2UuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvaW1hZ2UvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL3Byb2dyZXNzLWJhci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL3RleHQvdGV4dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy90ZXh0L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvdGl0bGUvdGl0bGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvdGl0bGUvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9za2VsZXRvbi9za2VsZXRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9za2VsZXRvbi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL3Byb2dyZXNzLXJpbmcvcHJvZ3Jlc3MtcmluZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9wcm9ncmVzcy1yaW5nL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvZmFiL2ZhYi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9mYWIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9xci1jb2RlL3FyLWNvZGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvcXItY29kZS90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2NvdW50ZG93bi9jb3VudGRvd24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvY291bnRkb3duL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvcHJpY2UtdGFnL3ByaWNlLXRhZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9wcmljZS10YWcvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9ob3Jpem9udGFsLXNjcm9sbC9ob3Jpem9udGFsLXNjcm9sbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9ob3Jpem9udGFsLXNjcm9sbC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL3JpZ2h0cy1mb290ZXIvcmlnaHRzLWZvb3Rlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9yaWdodHMtZm9vdGVyL3R5cGVzJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvYWxlcnQtYm94L2FsZXJ0LWJveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvYWxlcnQtYm94L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2J1dHRvbi1ncm91cC9idXR0b24tZ3JvdXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2J1dHRvbi1ncm91cC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jYXJkL2NhcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NhcmQvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY2hlY2staW5wdXQvY2hlY2staW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvbW1lbnQtaW5wdXQvY29tbWVudC1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY29udGVudC1sb2FkZXIvY29udGVudC1sb2FkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvbnRlbnQtbG9hZGVyL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2RhdGUtaW5wdXQvZGF0ZS1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvZW1haWwtaW5wdXQvZW1haWwtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2V4cGFuZGFibGUtdGV4dC9leHBhbmRhYmxlLXRleHQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2V4cGFuZGFibGUtdGV4dC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9maWxlLWlucHV0L2ZpbGUtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2hpbnQvaGludC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvaG91ci1pbnB1dC9ob3VyLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9sYW5ndWFnZS1zZWxlY3Rvci9sYW5ndWFnZS1zZWxlY3Rvci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvbGFuZ3VhZ2Utc2VsZWN0b3IvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvbGF5ZXJlZC1jYXJkL2xheWVyZWQtY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvbGF5ZXJlZC1jYXJkL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2xpbmsvbGluay5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvbGluay90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9saW5rcy1jYWtlL2xpbmtzLWNha2UuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2xpbmtzLWNha2UvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvbm90ZXMtYm94L25vdGVzLWJveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvbm90ZXMtYm94L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL251bWJlci1pbnB1dC9udW1iZXItaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL251bWJlci1mcm9tLXRvL251bWJlci1mcm9tLXRvLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9wYXNzd29yZC1pbnB1dC9wYXNzd29yZC1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcGluLWlucHV0L3Bpbi1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcG9wb3Zlci1zZWxlY3Rvci9wb3BvdmVyLXNlbGVjdG9yLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9wb3BvdmVyLXNlbGVjdG9yL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3Byb2dyZXNzLXN0YXR1cy9wcm9ncmVzcy1zdGF0dXMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3Byb2dyZXNzLXN0YXR1cy90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9wcm9tcHRlci9wcm9tcHRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcHJvbXB0ZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcmFkaW8taW5wdXQvcmFkaW8taW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3JhbmdlLWlucHV0L3JhbmdlLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9yYW5nZS1pbnB1dC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9zZWFyY2hiYXIvc2VhcmNoYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9zZWxlY3QtaW5wdXQvc2VsZWN0LWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9zZWxlY3Qtc2VhcmNoL3NlbGVjdC1zZWFyY2guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3NlZ21lbnQtY29udHJvbC9zZWdtZW50LWNvbnRyb2wuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3NlZ21lbnQtY29udHJvbC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90ZXh0LWlucHV0L3RleHQtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3RvZ2dsZS1pbnB1dC90b2dnbGUtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3RvZ2dsZS1pbnB1dC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90aXRsZS1ibG9jay90aXRsZS1ibG9jay5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvdGl0bGUtYmxvY2svdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY29kZS1kaXNwbGF5L2NvZGUtZGlzcGxheS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY29kZS1kaXNwbGF5L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2FjdGlvbi1oZWFkZXIvYWN0aW9uLWhlYWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvYWN0aW9uLWhlYWRlci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9waWxsL3BpbGwuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3BpbGwvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY29tbWFuZC1kaXNwbGF5L2NvbW1hbmQtZGlzcGxheS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY29tbWFuZC1kaXNwbGF5L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2luZm8vaW5mby5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvaW5mby90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9wbGFpbi1jb2RlLWJveC9wbGFpbi1jb2RlLWJveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcGxhaW4tY29kZS1ib3gvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvYWNjb3JkaW9uL2FjY29yZGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvYWNjb3JkaW9uL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3RhYnMvdGFicy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvdGFicy90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2JyZWFkY3J1bWIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9wYWdpbmF0aW9uL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3N0ZXBwZXIvc3RlcHBlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc3RlcHBlci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jaGlwLWdyb3VwL2NoaXAtZ3JvdXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NoaXAtZ3JvdXAvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcmF0aW5nL3JhdGluZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcmF0aW5nL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3RpbWVsaW5lL3RpbWVsaW5lLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90aW1lbGluZS90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9zdGF0cy1jYXJkL3N0YXRzLWNhcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3N0YXRzLWNhcmQvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY29tbWVudC9jb21tZW50LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jb21tZW50L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL211bHRpLXNlbGVjdC1zZWFyY2gvbXVsdGktc2VsZWN0LXNlYXJjaC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcXVvdGUtYm94L3F1b3RlLWJveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvdGV4dGFyZWEtaW5wdXQvdGV4dGFyZWEtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3RleHRhcmVhLWlucHV0L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3Bob25lLWlucHV0L3Bob25lLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9waG9uZS1pbnB1dC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jdXJyZW5jeS1pbnB1dC9jdXJyZW5jeS1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY3VycmVuY3ktaW5wdXQvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvZGF0ZS1yYW5nZS1pbnB1dC9kYXRlLXJhbmdlLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9kYXRlLXJhbmdlLWlucHV0L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL251bWJlci1zdGVwcGVyL251bWJlci1zdGVwcGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9udW1iZXItc3RlcHBlci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90aWNrZXQtZ3JpZC90aWNrZXQtZ3JpZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvdGlja2V0LWdyaWQvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc2hhcmUtYnV0dG9ucy9zaGFyZS1idXR0b25zLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9zaGFyZS1idXR0b25zL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3dpbm5lci1kaXNwbGF5L3dpbm5lci1kaXNwbGF5LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy93aW5uZXItZGlzcGxheS90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9yYWZmbGUtc3RhdHVzLWNhcmQvcmFmZmxlLXN0YXR1cy1jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9yYWZmbGUtc3RhdHVzLWNhcmQvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcGFydGljaXBhbnQtY2FyZC9wYXJ0aWNpcGFudC1jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9wYXJ0aWNpcGFudC1jYXJkL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2dsb3ctY2FyZC9nbG93LWNhcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2dsb3ctY2FyZC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9zd2lwZS1jYXJvdXNlbC9zd2lwZS1jYXJvdXNlbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc3dpcGUtY2Fyb3VzZWwvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcmVjYXAtY2FyZC9yZWNhcC1jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9yZWNhcC1jYXJkL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3Rlc3RpbW9uaWFsLWNhcmQvdGVzdGltb25pYWwtY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvdGVzdGltb25pYWwtY2FyZC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9mb290ZXItbGlua3MvZm9vdGVyLWxpbmtzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9mb290ZXItbGlua3MvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvbGlua3MtYWNjb3JkaW9uL2xpbmtzLWFjY29yZGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvbGlua3MtYWNjb3JkaW9uL3R5cGVzJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvYXJ0aWNsZS9hcnRpY2xlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9hcnRpY2xlL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2Jhbm5lci9iYW5uZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2Jhbm5lci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9mb290ZXIvZm9vdGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9mb3JtL2ZhY3RvcnknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvZm9ybS9mb3JtLWZvb3Rlci9mb3JtLWZvb3Rlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvZm9ybS9mb3JtLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9oZWFkZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvaXRlbS1saXN0L2l0ZW0tbGlzdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvaXRlbS1saXN0L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL25vLWNvbnRlbnQvbm8tY29udGVudC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvbm8tY29udGVudC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy90b29sYmFyL3Rvb2xiYXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL3Rvb2xiYXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvd2l6YXJkL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL3dpemFyZC93aXphcmQtZm9vdGVyL3dpemFyZC1mb290ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL3dpemFyZC93aXphcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2NvbW1lbnQtc2VjdGlvbi9jb21tZW50LXNlY3Rpb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2NvbW1lbnQtc2VjdGlvbi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9kYXRhLXRhYmxlL2RhdGEtdGFibGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2RhdGEtdGFibGUvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvY2FyZHMtY2Fyb3VzZWwvY2FyZHMtY2Fyb3VzZWwuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2NhcmRzLWNhcm91c2VsL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL3Rlc3RpbW9uaWFsLWNhcm91c2VsL3Rlc3RpbW9uaWFsLWNhcm91c2VsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy90ZXN0aW1vbmlhbC1jYXJvdXNlbC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9mdW4taGVhZGVyL2Z1bi1oZWFkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2Z1bi1oZWFkZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvY29tcGFueS1mb290ZXIvY29tcGFueS1mb290ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2NvbXBhbnktZm9vdGVyL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL21lbnUvbWVudS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvbWVudS90eXBlcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL2xheW91dC9sYXlvdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL3NpbXBsZS9zaW1wbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL3NpbXBsZS90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RlbXBsYXRlcy9wYWdlLXRlbXBsYXRlL3BhZ2UtdGVtcGxhdGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL3BhZ2UtdGVtcGxhdGUvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90ZW1wbGF0ZXMvcGFnZS1jb250ZW50L3BhZ2UtY29udGVudC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90ZW1wbGF0ZXMvcGFnZS1jb250ZW50L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL3BhZ2Utd3JhcHBlci9wYWdlLXdyYXBwZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL3BhZ2Utd3JhcHBlci90eXBlcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2Rvd25sb2FkLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvaWNvbnMuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9pbi1hcHAtYnJvd3Nlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2xpbmstcHJvY2Vzc29yLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvbG9jYWwtc3RvcmFnZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2xvY2FsZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL25hdmlnYXRpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy90aGVtZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3RvYXN0LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvY29uZmlybWF0aW9uLWRpYWxvZy9jb25maXJtYXRpb24tZGlhbG9nLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvY29uZmlybWF0aW9uLWRpYWxvZy90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9xci1nZW5lcmF0b3IvcXItZ2VuZXJhdG9yLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvcXItZ2VuZXJhdG9yL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL21vZGFsL21vZGFsLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvbW9kYWwvdHlwZXMnO1xuXG4vLyBGaXJlYmFzZSBTZXJ2aWNlc1xuLy8gTG9zIHNlcnZpY2lvcyBkZSBGaXJlYmFzZSByZXF1aWVyZW4gcHJvdmlkZVZhbHRlY2hGaXJlYmFzZSgpIGVuIGVsIGJvb3RzdHJhcCBkZSBsYSBhcHBcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2ZpcmViYXNlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaGFyZWQvcGlwZXMvcHJvY2Vzcy1saW5rcy5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC91dGlscy9kb20nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL3V0aWxzL2Zvcm0tZGVmYXVsdHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL3V0aWxzL3N0eWxlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaGFyZWQvdXRpbHMvdGV4dCc7XG4iXX0=
|
|
228
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyx3Q0FB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RCxjQUFjLGtFQUFrRSxDQUFDO0FBQ2pGLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYywrQ0FBK0MsQ0FBQztBQUU5RCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDRCQUE0QixDQUFDO0FBRTNDLG9CQUFvQjtBQUNwQix5RkFBeUY7QUFDekYsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxnQkFBZ0I7QUFDaEIsaUZBQWlGO0FBQ2pGLGNBQWMscUJBQXFCLENBQUM7QUFFcEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIHZhbHRlY2gtY29tcG9uZW50c1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvYXZhdGFyL2F2YXRhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9hdmF0YXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9ib3gvYm94LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2JveC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvYnV0dG9uL2ZhY3RvcnknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9kaXNwbGF5L2Rpc3BsYXkuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvZGlzcGxheS90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2RpdmlkZXIvZGl2aWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9kaXZpZGVyL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvaHJlZi9ocmVmLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2hyZWYvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9pY29uL2ljb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvaWNvbi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2ltYWdlL2ltYWdlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2ltYWdlL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvcHJvZ3Jlc3MtYmFyL3Byb2dyZXNzLWJhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9wcm9ncmVzcy1iYXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy90ZXh0L3RleHQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvdGV4dC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL3RpdGxlL3RpdGxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL3RpdGxlL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvc2tlbGV0b24vc2tlbGV0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvc2tlbGV0b24vdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9wcm9ncmVzcy1yaW5nL3Byb2dyZXNzLXJpbmcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvcHJvZ3Jlc3MtcmluZy90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2ZhYi9mYWIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvZmFiL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvcXItY29kZS9xci1jb2RlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL3FyLWNvZGUvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9jb3VudGRvd24vY291bnRkb3duLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2NvdW50ZG93bi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL3ByaWNlLXRhZy9wcmljZS10YWcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvcHJpY2UtdGFnL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvaG9yaXpvbnRhbC1zY3JvbGwvaG9yaXpvbnRhbC1zY3JvbGwuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvaG9yaXpvbnRhbC1zY3JvbGwvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9yaWdodHMtZm9vdGVyL3JpZ2h0cy1mb290ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvcmlnaHRzLWZvb3Rlci90eXBlcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2FsZXJ0LWJveC9hbGVydC1ib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2FsZXJ0LWJveC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9idXR0b24tZ3JvdXAvYnV0dG9uLWdyb3VwLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9idXR0b24tZ3JvdXAvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY2FyZC9jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jYXJkL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NoZWNrLWlucHV0L2NoZWNrLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jb21tZW50LWlucHV0L2NvbW1lbnQtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvbnRlbnQtbG9hZGVyL2NvbnRlbnQtbG9hZGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jb250ZW50LWxvYWRlci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9kYXRlLWlucHV0L2RhdGUtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2VtYWlsLWlucHV0L2VtYWlsLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9leHBhbmRhYmxlLXRleHQvZXhwYW5kYWJsZS10ZXh0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9leHBhbmRhYmxlLXRleHQvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvZmlsZS1pbnB1dC9maWxlLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9oaW50L2hpbnQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2hvdXItaW5wdXQvaG91ci1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvbGFuZ3VhZ2Utc2VsZWN0b3IvbGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2xhbmd1YWdlLXNlbGVjdG9yL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2xheWVyZWQtY2FyZC9sYXllcmVkLWNhcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2xheWVyZWQtY2FyZC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9saW5rL2xpbmsuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2xpbmsvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvbGlua3MtY2FrZS9saW5rcy1jYWtlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9saW5rcy1jYWtlL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL25vdGVzLWJveC9ub3Rlcy1ib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL25vdGVzLWJveC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9udW1iZXItaW5wdXQvbnVtYmVyLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9udW1iZXItZnJvbS10by9udW1iZXItZnJvbS10by5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcGFzc3dvcmQtaW5wdXQvcGFzc3dvcmQtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3Bpbi1pbnB1dC9waW4taW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3BvcG92ZXItc2VsZWN0b3IvcG9wb3Zlci1zZWxlY3Rvci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcG9wb3Zlci1zZWxlY3Rvci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9wcm9ncmVzcy1zdGF0dXMvcHJvZ3Jlc3Mtc3RhdHVzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9wcm9ncmVzcy1zdGF0dXMvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcHJvbXB0ZXIvcHJvbXB0ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3Byb21wdGVyL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3JhZGlvLWlucHV0L3JhZGlvLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9yYW5nZS1pbnB1dC9yYW5nZS1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcmFuZ2UtaW5wdXQvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc2VhcmNoYmFyL3NlYXJjaGJhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc2VsZWN0LWlucHV0L3NlbGVjdC1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc2VsZWN0LXNlYXJjaC9zZWxlY3Qtc2VhcmNoLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9zZWdtZW50LWNvbnRyb2wvc2VnbWVudC1jb250cm9sLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9zZWdtZW50LWNvbnRyb2wvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvdGV4dC1pbnB1dC90ZXh0LWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90b2dnbGUtaW5wdXQvdG9nZ2xlLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90b2dnbGUtaW5wdXQvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvdGl0bGUtYmxvY2svdGl0bGUtYmxvY2suY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3RpdGxlLWJsb2NrL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvZGUtZGlzcGxheS9jb2RlLWRpc3BsYXkuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvZGUtZGlzcGxheS90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9hY3Rpb24taGVhZGVyL2FjdGlvbi1oZWFkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2FjdGlvbi1oZWFkZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcGlsbC9waWxsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9waWxsL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvbW1hbmQtZGlzcGxheS9jb21tYW5kLWRpc3BsYXkuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvbW1hbmQtZGlzcGxheS90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9pbmZvL2luZm8uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2luZm8vdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcGxhaW4tY29kZS1ib3gvcGxhaW4tY29kZS1ib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3BsYWluLWNvZGUtYm94L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2FjY29yZGlvbi9hY2NvcmRpb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2FjY29yZGlvbi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90YWJzL3RhYnMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3RhYnMvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9icmVhZGNydW1iL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcGFnaW5hdGlvbi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9zdGVwcGVyL3N0ZXBwZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3N0ZXBwZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY2hpcC1ncm91cC9jaGlwLWdyb3VwLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jaGlwLWdyb3VwL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3JhdGluZy9yYXRpbmcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3JhdGluZy90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90aW1lbGluZS90aW1lbGluZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvdGltZWxpbmUvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc3RhdHMtY2FyZC9zdGF0cy1jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9zdGF0cy1jYXJkL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvbW1lbnQvY29tbWVudC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY29tbWVudC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9tdWx0aS1zZWxlY3Qtc2VhcmNoL211bHRpLXNlbGVjdC1zZWFyY2guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3F1b3RlLWJveC9xdW90ZS1ib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3RleHRhcmVhLWlucHV0L3RleHRhcmVhLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90ZXh0YXJlYS1pbnB1dC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9waG9uZS1pbnB1dC9waG9uZS1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcGhvbmUtaW5wdXQvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY3VycmVuY3ktaW5wdXQvY3VycmVuY3ktaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2N1cnJlbmN5LWlucHV0L3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2RhdGUtcmFuZ2UtaW5wdXQvZGF0ZS1yYW5nZS1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvZGF0ZS1yYW5nZS1pbnB1dC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9udW1iZXItc3RlcHBlci9udW1iZXItc3RlcHBlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvbnVtYmVyLXN0ZXBwZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvdGlja2V0LWdyaWQvdGlja2V0LWdyaWQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3RpY2tldC1ncmlkL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3NoYXJlLWJ1dHRvbnMvc2hhcmUtYnV0dG9ucy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc2hhcmUtYnV0dG9ucy90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy93aW5uZXItZGlzcGxheS93aW5uZXItZGlzcGxheS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvd2lubmVyLWRpc3BsYXkvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcmFmZmxlLXN0YXR1cy1jYXJkL3JhZmZsZS1zdGF0dXMtY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcmFmZmxlLXN0YXR1cy1jYXJkL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3BhcnRpY2lwYW50LWNhcmQvcGFydGljaXBhbnQtY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcGFydGljaXBhbnQtY2FyZC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9nbG93LWNhcmQvZ2xvdy1jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9nbG93LWNhcmQvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc3dpcGUtY2Fyb3VzZWwvc3dpcGUtY2Fyb3VzZWwuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3N3aXBlLWNhcm91c2VsL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3JlY2FwLWNhcmQvcmVjYXAtY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcmVjYXAtY2FyZC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90ZXN0aW1vbmlhbC1jYXJkL3Rlc3RpbW9uaWFsLWNhcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3Rlc3RpbW9uaWFsLWNhcmQvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvZm9vdGVyLWxpbmtzL2Zvb3Rlci1saW5rcy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvZm9vdGVyLWxpbmtzL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2xpbmtzLWFjY29yZGlvbi9saW5rcy1hY2NvcmRpb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2xpbmtzLWFjY29yZGlvbi90eXBlcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2FydGljbGUvYXJ0aWNsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvYXJ0aWNsZS90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9iYW5uZXIvYmFubmVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9iYW5uZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvZm9ybS9mYWN0b3J5JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2Zvcm0vZm9ybS1mb290ZXIvZm9ybS1mb290ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2Zvcm0vZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvaGVhZGVyL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2l0ZW0tbGlzdC9pdGVtLWxpc3QuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2l0ZW0tbGlzdC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9uby1jb250ZW50L25vLWNvbnRlbnQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL25vLWNvbnRlbnQvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvdG9vbGJhci90b29sYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy90b29sYmFyL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL3dpemFyZC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy93aXphcmQvd2l6YXJkLWZvb3Rlci93aXphcmQtZm9vdGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy93aXphcmQvd2l6YXJkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9jb21tZW50LXNlY3Rpb24vY29tbWVudC1zZWN0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9jb21tZW50LXNlY3Rpb24vdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvZGF0YS10YWJsZS9kYXRhLXRhYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9kYXRhLXRhYmxlL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2NhcmRzLWNhcm91c2VsL2NhcmRzLWNhcm91c2VsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9jYXJkcy1jYXJvdXNlbC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy90ZXN0aW1vbmlhbC1jYXJvdXNlbC90ZXN0aW1vbmlhbC1jYXJvdXNlbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvdGVzdGltb25pYWwtY2Fyb3VzZWwvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvZnVuLWhlYWRlci9mdW4taGVhZGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9mdW4taGVhZGVyL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2NvbXBhbnktZm9vdGVyL2NvbXBhbnktZm9vdGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9jb21wYW55LWZvb3Rlci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9tZW51L21lbnUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL21lbnUvdHlwZXMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RlbXBsYXRlcy9sYXlvdXQvbGF5b3V0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RlbXBsYXRlcy9zaW1wbGUvc2ltcGxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RlbXBsYXRlcy9zaW1wbGUvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90ZW1wbGF0ZXMvcGFnZS10ZW1wbGF0ZS9wYWdlLXRlbXBsYXRlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RlbXBsYXRlcy9wYWdlLXRlbXBsYXRlL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL3BhZ2UtY29udGVudC9wYWdlLWNvbnRlbnQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL3BhZ2UtY29udGVudC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RlbXBsYXRlcy9wYWdlLXdyYXBwZXIvcGFnZS13cmFwcGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RlbXBsYXRlcy9wYWdlLXdyYXBwZXIvdHlwZXMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9kb3dubG9hZC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2ljb25zLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvaW4tYXBwLWJyb3dzZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9saW5rLXByb2Nlc3Nvci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2xvY2FsLXN0b3JhZ2Uuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9sb2NhbGUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9uYXZpZ2F0aW9uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvdGhlbWUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy90b2FzdC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2NvbmZpcm1hdGlvbi1kaWFsb2cvY29uZmlybWF0aW9uLWRpYWxvZy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2NvbmZpcm1hdGlvbi1kaWFsb2cvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvcXItZ2VuZXJhdG9yL3FyLWdlbmVyYXRvci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3FyLWdlbmVyYXRvci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9tb2RhbC9tb2RhbC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL21vZGFsL3R5cGVzJztcblxuLy8gRmlyZWJhc2UgU2VydmljZXNcbi8vIExvcyBzZXJ2aWNpb3MgZGUgRmlyZWJhc2UgcmVxdWllcmVuIHByb3ZpZGVWYWx0ZWNoRmlyZWJhc2UoKSBlbiBlbCBib290c3RyYXAgZGUgbGEgYXBwXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9maXJlYmFzZSc7XG5cbi8vIEF1dGggU2VydmljZXNcbi8vIExvcyBzZXJ2aWNpb3MgZGUgQXV0aCByZXF1aWVyZW4gcHJvdmlkZVZhbHRlY2hBdXRoKCkgZW4gZWwgYm9vdHN0cmFwIGRlIGxhIGFwcFxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvYXV0aCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL3BpcGVzL3Byb2Nlc3MtbGlua3MucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaGFyZWQvdXRpbHMvZG9tJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC91dGlscy9mb3JtLWRlZmF1bHRzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC91dGlscy9zdHlsZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL3V0aWxzL3RleHQnO1xuIl19
|