ngx-vector-components 2.12.0 → 2.14.0
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/CHANGELOG.md +47 -0
- package/assets/styles/_primeng-custom-theme.scss +39 -21
- package/esm2020/lib/components/breadcrumb/breadcrumb.component.mjs +2 -2
- package/esm2020/lib/components/fields/currency-field/currency-field.component.mjs +11 -3
- package/esm2020/lib/components/fields/filters/filters.component.mjs +1 -1
- package/esm2020/lib/components/fields/radio-button-field/radio-button-field.component.mjs +6 -3
- package/esm2020/lib/components/fields/range-value/range-value.component.mjs +24 -8
- package/esm2020/lib/components/fields/text-field/text-field.component.mjs +2 -2
- package/esm2020/lib/components/menu/menu.component.mjs +11 -15
- package/esm2020/lib/guards/token-is-present.guard.mjs +15 -6
- package/esm2020/lib/models/ipInfo.mjs +2 -0
- package/esm2020/lib/services/auth.service.mjs +1 -1
- package/esm2020/lib/services/geolocation.service.mjs +23 -0
- package/esm2020/lib/services/index.mjs +2 -1
- package/esm2020/lib/utils/mask.util.mjs +17 -3
- package/fesm2015/ngx-vector-components.mjs +104 -39
- package/fesm2015/ngx-vector-components.mjs.map +1 -1
- package/fesm2020/ngx-vector-components.mjs +104 -39
- package/fesm2020/ngx-vector-components.mjs.map +1 -1
- package/lib/components/fields/currency-field/currency-field.component.d.ts +4 -1
- package/lib/components/fields/radio-button-field/radio-button-field.component.d.ts +2 -1
- package/lib/components/fields/range-value/range-value.component.d.ts +3 -2
- package/lib/components/menu/menu.component.d.ts +0 -1
- package/lib/guards/token-is-present.guard.d.ts +5 -4
- package/lib/models/ipInfo.d.ts +6 -0
- package/lib/services/auth.service.d.ts +1 -1
- package/lib/services/geolocation.service.d.ts +13 -0
- package/lib/services/index.d.ts +1 -0
- package/lib/utils/mask.util.d.ts +1 -0
- package/package.json +7 -6
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { HttpClient } from '@angular/common/http';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common/http";
|
|
5
|
+
export class GeolocationService {
|
|
6
|
+
constructor(http, backend) {
|
|
7
|
+
this.http = http;
|
|
8
|
+
this.backend = backend;
|
|
9
|
+
this.customHttpClient = new HttpClient(backend);
|
|
10
|
+
}
|
|
11
|
+
getGeoLoc() {
|
|
12
|
+
return this.customHttpClient.get("http://api.ipify.org/?format=json");
|
|
13
|
+
}
|
|
14
|
+
createUserLoginInfo(userInfo) {
|
|
15
|
+
return this.http.post(`Telemetry/CreateUserLogInfo`, userInfo);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
GeolocationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: GeolocationService, deps: [{ token: i1.HttpClient }, { token: i1.HttpBackend }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
19
|
+
GeolocationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: GeolocationService });
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: GeolocationService, decorators: [{
|
|
21
|
+
type: Injectable
|
|
22
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i1.HttpBackend }]; } });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvbG9jYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12ZWN0b3ItY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL2dlb2xvY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQWUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUcvRCxNQUFNLE9BQU8sa0JBQWtCO0lBSTdCLFlBQW9CLElBQWdCLEVBQVUsT0FBb0I7UUFBOUMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQWE7UUFFOUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFSSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFTLG1DQUFtQyxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVNLG1CQUFtQixDQUFDLFFBQWE7UUFDcEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyw2QkFBNkIsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNuRSxDQUFDOzsrR0FmVSxrQkFBa0I7bUhBQWxCLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBpcEluZm8gfSBmcm9tICcuLi9tb2RlbHMvaXBJbmZvJztcclxuaW1wb3J0IHsgSHR0cEJhY2tlbmQsIEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBHZW9sb2NhdGlvblNlcnZpY2Uge1xyXG5cclxuICBwcml2YXRlIGN1c3RvbUh0dHBDbGllbnQ6IEh0dHBDbGllbnQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSBiYWNrZW5kOiBIdHRwQmFja2VuZCxcclxuICAgICkgeyBcclxuICAgICAgdGhpcy5jdXN0b21IdHRwQ2xpZW50ID0gbmV3IEh0dHBDbGllbnQoYmFja2VuZCk7XHJcbiAgICB9XHJcblxyXG4gIHB1YmxpYyBnZXRHZW9Mb2MoKXtcclxuICAgIHJldHVybiB0aGlzLmN1c3RvbUh0dHBDbGllbnQuZ2V0PGlwSW5mbz4oXCJodHRwOi8vYXBpLmlwaWZ5Lm9yZy8/Zm9ybWF0PWpzb25cIik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY3JlYXRlVXNlckxvZ2luSW5mbyh1c2VySW5mbzogYW55KSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgVGVsZW1ldHJ5L0NyZWF0ZVVzZXJMb2dJbmZvYCwgdXNlckluZm8pO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -3,9 +3,10 @@ export * from './base-dropdown';
|
|
|
3
3
|
export * from './crud-base.service';
|
|
4
4
|
export * from './enum.service';
|
|
5
5
|
export * from './error-message.service';
|
|
6
|
+
export * from './geolocation.service';
|
|
6
7
|
export * from './loading.service';
|
|
7
8
|
export * from './menu.service';
|
|
8
9
|
export * from './modal.service';
|
|
9
10
|
export * from './profile.service';
|
|
10
11
|
export * from './storage.service';
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9zZXJ2aWNlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F1dGguc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYmFzZS1kcm9wZG93bic7XHJcbmV4cG9ydCAqIGZyb20gJy4vY3J1ZC1iYXNlLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2VudW0uc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZXJyb3ItbWVzc2FnZS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9nZW9sb2NhdGlvbi5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9sb2FkaW5nLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL21lbnUuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kYWwuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcHJvZmlsZS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9zdG9yYWdlLnNlcnZpY2UnO1xyXG4iXX0=
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
const CPF_PATTERN = '###.###.###-##';
|
|
2
2
|
const CNPJ_PATTERN = '##.###.###/####-##';
|
|
3
3
|
const BOLETO_PATTERN = '#####.##### #####.###### #####.###### # ##############';
|
|
4
|
-
const
|
|
4
|
+
const POSTALCODE_PATTERN = '#####-###';
|
|
5
|
+
const CELLPHONE_PATTERN = '(##) #####-####';
|
|
6
|
+
const PHONE_PATTERN = '(##) ####-####';
|
|
5
7
|
export class MaskUtil {
|
|
6
8
|
static formatDocument(stringValue) {
|
|
7
9
|
if (!stringValue) {
|
|
@@ -16,11 +18,23 @@ export class MaskUtil {
|
|
|
16
18
|
return stringValue;
|
|
17
19
|
}
|
|
18
20
|
static formatPostalCode(stringValue) {
|
|
19
|
-
return this.doMaskString(stringValue,
|
|
21
|
+
return this.doMaskString(stringValue, POSTALCODE_PATTERN);
|
|
20
22
|
}
|
|
21
23
|
static formatBoleto(stringValue) {
|
|
22
24
|
return this.doMaskString(stringValue, BOLETO_PATTERN);
|
|
23
25
|
}
|
|
26
|
+
static formatPhone(stringValue) {
|
|
27
|
+
if (!stringValue) {
|
|
28
|
+
return '';
|
|
29
|
+
}
|
|
30
|
+
if (stringValue.length === 11) {
|
|
31
|
+
return this.doMaskString(stringValue, CELLPHONE_PATTERN);
|
|
32
|
+
}
|
|
33
|
+
else if (stringValue.length === 10) {
|
|
34
|
+
return this.doMaskString(stringValue, PHONE_PATTERN);
|
|
35
|
+
}
|
|
36
|
+
return stringValue;
|
|
37
|
+
}
|
|
24
38
|
static doMaskString(str, pattern) {
|
|
25
39
|
let i = 0;
|
|
26
40
|
return pattern.replace(/#/g, () => str[i++]);
|
|
@@ -32,4 +46,4 @@ MaskUtil.BOLETO_TEXT_FIELD_PATTERN = '99999.99999 99999.999999 99999.999999 9 99
|
|
|
32
46
|
MaskUtil.CELLPHONE_TEXT_FIELD_PATTERN = '(99) 99999-9999';
|
|
33
47
|
MaskUtil.PHONE_TEXT_FIELD_PATTERN = '(99) 9999-9999';
|
|
34
48
|
MaskUtil.POSTALCODE_TEXT_FIELD_PATTERN = '99999-999';
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFzay51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZlY3Rvci1jb21wb25lbnRzL3NyYy9saWIvdXRpbHMvbWFzay51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sV0FBVyxHQUFHLGdCQUFnQixDQUFDO0FBQ3JDLE1BQU0sWUFBWSxHQUFHLG9CQUFvQixDQUFDO0FBQzFDLE1BQU0sY0FBYyxHQUFHLHdEQUF3RCxDQUFDO0FBQ2hGLE1BQU0sa0JBQWtCLEdBQUcsV0FBVyxDQUFDO0FBQ3ZDLE1BQU0saUJBQWlCLEdBQUcsaUJBQWlCLENBQUM7QUFDNUMsTUFBTSxhQUFhLEdBQUcsZ0JBQWdCLENBQUM7QUFFdkMsTUFBTSxPQUFPLFFBQVE7SUFRWixNQUFNLENBQUMsY0FBYyxDQUFDLFdBQW1CO1FBQzlDLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDaEIsT0FBTyxFQUFFLENBQUM7U0FDWDtRQUVELElBQUksV0FBVyxDQUFDLE1BQU0sS0FBSyxFQUFFLEVBQUU7WUFDN0IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQztTQUNwRDtRQUVELElBQUksV0FBVyxDQUFDLE1BQU0sS0FBSyxFQUFFLEVBQUU7WUFDN0IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxZQUFZLENBQUMsQ0FBQztTQUNyRDtRQUVELE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFTSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsV0FBbUI7UUFDaEQsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFTSxNQUFNLENBQUMsWUFBWSxDQUFDLFdBQW1CO1FBQzVDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxXQUFXLENBQUMsV0FBbUI7UUFDM0MsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNoQixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBRUQsSUFBSSxXQUFXLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRTtZQUM3QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLGlCQUFpQixDQUFDLENBQUM7U0FDMUQ7YUFBTSxJQUFJLFdBQVcsQ0FBQyxNQUFNLEtBQUssRUFBRSxFQUFFO1lBQ3BDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLENBQUM7U0FDdEQ7UUFFRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDO0lBRU8sTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFXLEVBQUUsT0FBZTtRQUN0RCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDVixPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDL0MsQ0FBQzs7QUFoRGEsK0JBQXNCLEdBQUcsZ0JBQWdCLENBQUM7QUFDMUMsZ0NBQXVCLEdBQUcsb0JBQW9CLENBQUM7QUFDL0Msa0NBQXlCLEdBQUcsd0RBQXdELENBQUM7QUFDckYscUNBQTRCLEdBQUcsaUJBQWlCLENBQUM7QUFDakQsaUNBQXdCLEdBQUcsZ0JBQWdCLENBQUM7QUFDNUMsc0NBQTZCLEdBQUcsV0FBVyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgQ1BGX1BBVFRFUk4gPSAnIyMjLiMjIy4jIyMtIyMnO1xyXG5jb25zdCBDTlBKX1BBVFRFUk4gPSAnIyMuIyMjLiMjIy8jIyMjLSMjJztcclxuY29uc3QgQk9MRVRPX1BBVFRFUk4gPSAnIyMjIyMuIyMjIyMgIyMjIyMuIyMjIyMjICMjIyMjLiMjIyMjIyAjICMjIyMjIyMjIyMjIyMjJztcclxuY29uc3QgUE9TVEFMQ09ERV9QQVRURVJOID0gJyMjIyMjLSMjIyc7XHJcbmNvbnN0IENFTExQSE9ORV9QQVRURVJOID0gJygjIykgIyMjIyMtIyMjIyc7XHJcbmNvbnN0IFBIT05FX1BBVFRFUk4gPSAnKCMjKSAjIyMjLSMjIyMnO1xyXG5cclxuZXhwb3J0IGNsYXNzIE1hc2tVdGlsIHtcclxuICBwdWJsaWMgc3RhdGljIENQRl9URVhUX0ZJRUxEX1BBVFRFUk4gPSAnOTk5Ljk5OS45OTktOTknO1xyXG4gIHB1YmxpYyBzdGF0aWMgQ05QSl9URVhUX0ZJRUxEX1BBVFRFUk4gPSAnOTkuOTk5Ljk5OS85OTk5LTk5JztcclxuICBwdWJsaWMgc3RhdGljIEJPTEVUT19URVhUX0ZJRUxEX1BBVFRFUk4gPSAnOTk5OTkuOTk5OTkgOTk5OTkuOTk5OTk5IDk5OTk5Ljk5OTk5OSA5IDk5OTk5OTk5OTk5OTk5JztcclxuICBwdWJsaWMgc3RhdGljIENFTExQSE9ORV9URVhUX0ZJRUxEX1BBVFRFUk4gPSAnKDk5KSA5OTk5OS05OTk5JztcclxuICBwdWJsaWMgc3RhdGljIFBIT05FX1RFWFRfRklFTERfUEFUVEVSTiA9ICcoOTkpIDk5OTktOTk5OSc7XHJcbiAgcHVibGljIHN0YXRpYyBQT1NUQUxDT0RFX1RFWFRfRklFTERfUEFUVEVSTiA9ICc5OTk5OS05OTknO1xyXG5cclxuICBwdWJsaWMgc3RhdGljIGZvcm1hdERvY3VtZW50KHN0cmluZ1ZhbHVlOiBzdHJpbmcpIHtcclxuICAgIGlmICghc3RyaW5nVmFsdWUpIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChzdHJpbmdWYWx1ZS5sZW5ndGggPT09IDExKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmRvTWFza1N0cmluZyhzdHJpbmdWYWx1ZSwgQ1BGX1BBVFRFUk4pO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChzdHJpbmdWYWx1ZS5sZW5ndGggPT09IDE0KSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmRvTWFza1N0cmluZyhzdHJpbmdWYWx1ZSwgQ05QSl9QQVRURVJOKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gc3RyaW5nVmFsdWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIGZvcm1hdFBvc3RhbENvZGUoc3RyaW5nVmFsdWU6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuZG9NYXNrU3RyaW5nKHN0cmluZ1ZhbHVlLCBQT1NUQUxDT0RFX1BBVFRFUk4pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyBmb3JtYXRCb2xldG8oc3RyaW5nVmFsdWU6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuZG9NYXNrU3RyaW5nKHN0cmluZ1ZhbHVlLCBCT0xFVE9fUEFUVEVSTik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIGZvcm1hdFBob25lKHN0cmluZ1ZhbHVlOiBzdHJpbmcpIHtcclxuICAgIGlmICghc3RyaW5nVmFsdWUpIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChzdHJpbmdWYWx1ZS5sZW5ndGggPT09IDExKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmRvTWFza1N0cmluZyhzdHJpbmdWYWx1ZSwgQ0VMTFBIT05FX1BBVFRFUk4pO1xyXG4gICAgfSBlbHNlIGlmIChzdHJpbmdWYWx1ZS5sZW5ndGggPT09IDEwKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmRvTWFza1N0cmluZyhzdHJpbmdWYWx1ZSwgUEhPTkVfUEFUVEVSTik7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHN0cmluZ1ZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzdGF0aWMgZG9NYXNrU3RyaW5nKHN0cjogc3RyaW5nLCBwYXR0ZXJuOiBzdHJpbmcpIHtcclxuICAgIGxldCBpID0gMDtcclxuICAgIHJldHVybiBwYXR0ZXJuLnJlcGxhY2UoLyMvZywgKCkgPT4gc3RyW2krK10pO1xyXG4gIH1cclxufVxyXG4iXX0=
|