ontimize-web-ngx 15.2.1 → 15.2.2
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/assets/svg/ontimize-icon-set.svg +0 -1
- package/esm2020/lib/components/form/navigation/o-form.navigation.class.mjs +5 -4
- package/esm2020/lib/components/input/currency-input/o-currency-input.component.mjs +3 -3
- package/esm2020/lib/components/input/integer-input/o-integer-input.component.mjs +6 -6
- package/esm2020/lib/components/input/percent-input/o-percent-input.component.mjs +3 -3
- package/esm2020/lib/components/input/real-input/o-real-input.component.mjs +3 -3
- package/esm2020/lib/components/input/text-input/o-text-input.component.mjs +15 -13
- package/esm2020/lib/components/table/column/cell-editor/integer/o-table-cell-editor-integer.component.mjs +6 -6
- package/esm2020/lib/components/table/column/cell-editor/real/o-table-cell-editor-real.component.mjs +6 -6
- package/esm2020/lib/components/table/column/cell-renderer/cell-renderer.mjs +5 -3
- package/esm2020/lib/components/table/column/o-table-column.component.mjs +2 -2
- package/esm2020/lib/components/table/extensions/dialog/export/o-table-export-dialog.component.mjs +80 -19
- package/esm2020/lib/components/table/extensions/export-button/o-table-export-button.component.mjs +10 -11
- package/esm2020/lib/components/table/extensions/header/table-menu/o-table-export-configuration.class.mjs +1 -1
- package/esm2020/lib/components/table/extensions/header/table-menu/o-table-menu.component.mjs +10 -1
- package/esm2020/lib/components/table/o-table.component.mjs +7 -6
- package/esm2020/lib/config/o-directives.mjs +4 -2
- package/esm2020/lib/directives/index.mjs +2 -1
- package/esm2020/lib/directives/input-regulate.directive.mjs +70 -0
- package/esm2020/lib/i18n/i18n.mjs +21 -3
- package/esm2020/lib/interfaces/export-service.interface.mjs +1 -1
- package/esm2020/lib/services/ontimize/ontimize-export-3xx.service.mjs +7 -5
- package/esm2020/lib/services/ontimize-export-data-provider-3x.service.mjs +6 -3
- package/esm2020/lib/shared/shared.module.mjs +4 -3
- package/esm2020/lib/validators/o-validators.mjs +1 -1
- package/fesm2015/ontimize-web-ngx.mjs +2994 -2833
- package/fesm2015/ontimize-web-ngx.mjs.map +1 -1
- package/fesm2020/ontimize-web-ngx.mjs +2972 -2811
- package/fesm2020/ontimize-web-ngx.mjs.map +1 -1
- package/lib/components/input/text-input/o-text-input.component.d.ts +2 -1
- package/lib/components/table/column/o-table-column.component.d.ts +1 -1
- package/lib/components/table/extensions/dialog/export/o-table-export-dialog.component.d.ts +24 -1
- package/lib/components/table/extensions/dialog/o-table-dialog-components.d.ts +1 -1
- package/lib/components/table/extensions/export-button/o-table-export-button.component.d.ts +2 -2
- package/lib/components/table/extensions/footer/o-table-footer-components.d.ts +1 -1
- package/lib/components/table/extensions/header/o-table-header-components.d.ts +2 -2
- package/lib/components/table/extensions/header/table-menu/o-table-export-configuration.class.d.ts +1 -0
- package/lib/components/table/extensions/header/table-menu/o-table-menu.component.d.ts +1 -0
- package/lib/components/table/o-table.component.d.ts +4 -3
- package/lib/directives/index.d.ts +1 -0
- package/lib/directives/input-regulate.directive.d.ts +23 -0
- package/lib/i18n/i18n.d.ts +18 -0
- package/lib/interfaces/export-service.interface.d.ts +1 -1
- package/lib/services/ontimize/ontimize-export-3xx.service.d.ts +1 -1
- package/lib/shared/shared.module.d.ts +15 -14
- package/package.json +1 -1
|
@@ -26,7 +26,7 @@ export class OntimizeExportService3X extends OntimizeBaseService {
|
|
|
26
26
|
}
|
|
27
27
|
return headers;
|
|
28
28
|
}
|
|
29
|
-
exportData(format) {
|
|
29
|
+
exportData(format, columns, landscape, filename) {
|
|
30
30
|
const url = `${this.urlBase}${this.exportPath}/${format}`;
|
|
31
31
|
const options = {
|
|
32
32
|
headers: this.buildHeaders().append('Content-Type', 'application/json;charset=UTF-8'),
|
|
@@ -35,7 +35,9 @@ export class OntimizeExportService3X extends OntimizeBaseService {
|
|
|
35
35
|
};
|
|
36
36
|
let paramExport = {
|
|
37
37
|
format: format,
|
|
38
|
-
path: this.servicePath
|
|
38
|
+
path: this.servicePath,
|
|
39
|
+
columns: columns,
|
|
40
|
+
landscape: landscape
|
|
39
41
|
};
|
|
40
42
|
let exportData = this.exportDataProvider.getExportConfiguration(paramExport);
|
|
41
43
|
const body = JSON.stringify(exportData);
|
|
@@ -43,10 +45,10 @@ export class OntimizeExportService3X extends OntimizeBaseService {
|
|
|
43
45
|
this.httpClient.post(url, body, options).subscribe((resp) => {
|
|
44
46
|
const fileData = resp.body;
|
|
45
47
|
const contentDisposition = resp.headers.get('content-disposition');
|
|
46
|
-
let fileName = 'file.' + format;
|
|
48
|
+
let fileName = filename && filename.trim() !== '' ? filename + '.' + format : 'file.' + format;
|
|
47
49
|
const fileNameRegex = /filename[^;=\n]*=((['"]).*?\2|[^;\n]*)/;
|
|
48
50
|
const matches = fileNameRegex.exec(contentDisposition);
|
|
49
|
-
if (
|
|
51
|
+
if (!filename && matches?.[1]) {
|
|
50
52
|
fileName = matches[1].replace(/['"]/g, '');
|
|
51
53
|
}
|
|
52
54
|
const fileURL = URL.createObjectURL(fileData);
|
|
@@ -68,4 +70,4 @@ OntimizeExportService3X.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.
|
|
|
68
70
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OntimizeExportService3X, decorators: [{
|
|
69
71
|
type: Injectable
|
|
70
72
|
}], ctorParameters: function () { return [{ type: i0.Injector }]; } });
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib250aW1pemUtZXhwb3J0LTN4eC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL3NlcnZpY2VzL29udGltaXplL29udGltaXplLWV4cG9ydC0zeHguc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBR3BELE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzdGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFJdkMsTUFBTSxPQUFPLHVCQUF3QixTQUFRLG1CQUFtQjtJQU05RCxZQUFzQixRQUFrQjtRQUN0QyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFESSxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBRXRDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQVksU0FBUyxDQUFDLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDMUUsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFvQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBQ3BILENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxNQUFXO1FBQ2pDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMs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QixDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ1YsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQzdCLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3hCLEdBQUcsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDL0IsQ0FBQyxFQUNELEtBQUssQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFDOUIsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUMxQixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN0QyxDQUFDOztxSEE1RVUsdUJBQXVCO3lIQUF2Qix1QkFBdUI7NEZBQXZCLHVCQUF1QjtrQkFEbkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHNoYXJlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQXBwQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29uZmlnL2FwcC1jb25maWcnO1xuaW1wb3J0IHsgSUV4cG9ydERhdGFQcm92aWRlciB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvZXhwb3J0LWRhdGEtcHJvdmlkZXIuaW50ZXJmYWNlJztcbmltcG9ydCB7IElFeHBvcnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9leHBvcnQtc2VydmljZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgT250aW1pemVFeHBvcnREYXRhUHJvdmlkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vb250aW1pemUtZXhwb3J0LWRhdGEtcHJvdmlkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBPbnRpbWl6ZUJhc2VTZXJ2aWNlIH0gZnJvbSAnLi9vbnRpbWl6ZS1iYXNlLXNlcnZpY2UuY2xhc3MnO1xuaW1wb3J0IHsgVXRpbCB9IGZyb20gJy4uLy4uL3V0aWwvdXRpbCc7XG5pbXBvcnQgeyBIdHRwUmVxdWVzdE9wdGlvbnMgfSBmcm9tICcuLi8uLi90eXBlcy9odHRwLXJlcXVlc3Qtb3B0aW9ucy50eXBlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE9udGltaXplRXhwb3J0U2VydmljZTNYIGV4dGVuZHMgT250aW1pemVCYXNlU2VydmljZSBpbXBsZW1lbnRzIElFeHBvcnRTZXJ2aWNlIHtcblxuICBwdWJsaWMgZXhwb3J0UGF0aDogc3RyaW5nO1xuICBwdWJsaWMgc2VydmljZVBhdGg6IHN0cmluZztcbiAgcHJvdGVjdGVkIGV4cG9ydERhdGFQcm92aWRlcjogSUV4cG9ydERhdGFQcm92aWRlcjtcblxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgc3VwZXIoaW5qZWN0b3IpO1xuICAgIHRoaXMuZXhwb3J0UGF0aCA9IHRoaXMuaW5qZWN0b3IuZ2V0PEFwcENvbmZpZz4oQXBwQ29uZmlnKS5nZXRFeHBvcnRQYXRoKCk7XG4gICAgdGhpcy5leHBvcnREYXRhUHJvdmlkZXIgPSB0aGlzLmluamVjdG9yLmdldDxPbnRpbWl6ZUV4cG9ydERhdGFQcm92aWRlclNlcnZpY2U+KE9udGltaXplRXhwb3J0RGF0YVByb3ZpZGVyU2VydmljZSk7XG4gIH1cblxuICBwdWJsaWMgY29uZmlndXJlU2VydmljZShjb25maWc6IGFueSk6IHZvaWQge1xuICAgIHN1cGVyLmNvbmZpZ3VyZVNlcnZpY2UoY29uZmlnKTtcbiAgICB0aGlzLnNlcnZpY2VQYXRoID0gY29uZmlnLnBhdGg7XG4gIH1cblxuICBwcm90ZWN0ZWQgYnVpbGRIZWFkZXJzKCk6IEh0dHBIZWFkZXJzIHtcbiAgICBsZXQgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycyh7ICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4nOiAnKicsICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1IZWFkZXJzJzogJ1gtUmVxdWVzdGVkLVdpdGgsY29udGVudC10eXBlJyB9KTtcbiAgICBjb25zdCBzZXNzaW9uSWQgPSB0aGlzLmF1dGhTZXJ2aWNlLmdldFNlc3Npb25JbmZvKCkuaWQ7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKHNlc3Npb25JZCkpIHtcbiAgICAgIGhlYWRlcnMgPSBoZWFkZXJzLmFwcGVuZCgnQXV0aG9yaXphdGlvbicsICdCZWFyZXIgJyArIHNlc3Npb25JZCk7XG4gICAgfVxuICAgIHJldHVybiBoZWFkZXJzO1xuICB9XG5cbiAgcHVibGljIGV4cG9ydERhdGEoZm9ybWF0OiBzdHJpbmcsIGNvbHVtbnM/OiBzdHJpbmdbXSwgbGFuZHNjYXBlPzogYm9vbGVhbiwgZmlsZW5hbWU/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuXG4gICAgY29uc3QgdXJsID0gYCR7dGhpcy51cmxCYXNlfSR7dGhpcy5leHBvcnRQYXRofS8ke2Zvcm1hdH1gO1xuXG4gICAgY29uc3Qgb3B0aW9uczogSHR0cFJlcXVlc3RPcHRpb25zID0ge1xuICAgICAgaGVhZGVyczogdGhpcy5idWlsZEhlYWRlcnMoKS5hcHBlbmQoJ0NvbnRlbnQtVHlwZScsICdhcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9VVRGLTgnKSxcbiAgICAgIG9ic2VydmU6ICdyZXNwb25zZScsXG4gICAgICByZXNwb25zZVR5cGU6ICdibG9iJ1xuICAgIH07XG5cbiAgICBsZXQgcGFyYW1FeHBvcnQgPSB7XG4gICAgICBmb3JtYXQ6IGZvcm1hdCxcbiAgICAgIHBhdGg6IHRoaXMuc2VydmljZVBhdGgsXG4gICAgICBjb2x1bW5zOiBjb2x1bW5zLFxuICAgICAgbGFuZHNjYXBlOiBsYW5kc2NhcGVcbiAgICB9O1xuXG4gICAgbGV0IGV4cG9ydERhdGE6IGFueSA9IHRoaXMuZXhwb3J0RGF0YVByb3ZpZGVyLmdldEV4cG9ydENvbmZpZ3VyYXRpb24ocGFyYW1FeHBvcnQpO1xuXG4gICAgY29uc3QgYm9keSA9IEpTT04uc3RyaW5naWZ5KGV4cG9ydERhdGEpO1xuXG4gICAgY29uc3QgZGF0YU9ic2VydmFibGUgPSBuZXcgT2JzZXJ2YWJsZShvYnNlcnZlciA9PiB7XG4gICAgICB0aGlzLmh0dHBDbGllbnQucG9zdCh1cmwsIGJvZHksIG9wdGlvbnMpLnN1YnNjcmliZShcbiAgICAgICAgKHJlc3A6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGZpbGVEYXRhID0gcmVzcC5ib2R5O1xuICAgICAgICAgIGNvbnN0IGNvbnRlbnREaXNwb3NpdGlvbiA9IHJlc3AuaGVhZGVycy5nZXQoJ2NvbnRlbnQtZGlzcG9zaXRpb24nKTtcbiAgICAgICAgICBsZXQgZmlsZU5hbWUgPSBmaWxlbmFtZSAmJiBmaWxlbmFtZS50cmltKCkgIT09ICcnID8gZmlsZW5hbWUgKyAnLicgKyBmb3JtYXQgOiAnZmlsZS4nICsgZm9ybWF0O1xuXG4gICAgICAgICAgY29uc3QgZmlsZU5hbWVSZWdleCA9IC9maWxlbmFtZVteOz1cXG5dKj0oKFsnXCJdKS4qP1xcMnxbXjtcXG5dKikvO1xuICAgICAgICAgIGNvbnN0IG1hdGNoZXMgPSBmaWxlTmFtZVJlZ2V4LmV4ZWMoY29udGVudERpc3Bvc2l0aW9uKTtcbiAgICAgICAgICBpZiAoIWZpbGVuYW1lICYmIG1hdGNoZXM/LlsxXSkge1xuICAgICAgICAgICAgZmlsZU5hbWUgPSBtYXRjaGVzWzFdLnJlcGxhY2UoL1snXCJdL2csICcnKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBmaWxlVVJMID0gVVJMLmNyZWF0ZU9iamVjdFVSTChmaWxlRGF0YSk7XG4gICAgICAgICAgY29uc3QgYSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcbiAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGEpO1xuICAgICAgICAgIGEuaHJlZiA9IGZpbGVVUkw7XG4gICAgICAgICAgYS5kb3dubG9hZCA9IGZpbGVOYW1lO1xuICAgICAgICAgIGEuY2xpY2soKTtcbiAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGEpO1xuICAgICAgICAgIG9ic2VydmVyLm5leHQoZmlsZURhdGEpO1xuICAgICAgICAgIFVSTC5yZXZva2VPYmplY3RVUkwoZmlsZVVSTCk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yID0+IG9ic2VydmVyLmVycm9yKGVycm9yKSxcbiAgICAgICAgKCkgPT4gb2JzZXJ2ZXIuY29tcGxldGUoKVxuICAgICAgKTtcbiAgICB9KTtcblxuICAgIHJldHVybiBkYXRhT2JzZXJ2YWJsZS5waXBlKHNoYXJlKCkpO1xuICB9XG59XG4iXX0=
|
|
@@ -15,7 +15,7 @@ export class OntimizeExportDataProviderService3X extends OntimizeExportDataBaseP
|
|
|
15
15
|
let exportData = {
|
|
16
16
|
type: param.format,
|
|
17
17
|
queryParam: {
|
|
18
|
-
columns:
|
|
18
|
+
columns: param.columns,
|
|
19
19
|
sqltypes: this.sqlTypes,
|
|
20
20
|
offset: this.table.pageable ? currentPage * this.table.queryRows : -1,
|
|
21
21
|
pageSize: this.table.queryRows,
|
|
@@ -27,7 +27,7 @@ export class OntimizeExportDataProviderService3X extends OntimizeExportDataBaseP
|
|
|
27
27
|
dao: this.entity
|
|
28
28
|
};
|
|
29
29
|
if (param.format === 'xlsx' || 'pdf') {
|
|
30
|
-
exportData.columns = this.parseColumns(
|
|
30
|
+
exportData.columns = this.parseColumns(param.columns);
|
|
31
31
|
exportData.columnTitles = this.columnNames;
|
|
32
32
|
exportData.styles = {};
|
|
33
33
|
exportData.rowStyles = {};
|
|
@@ -35,6 +35,9 @@ export class OntimizeExportDataProviderService3X extends OntimizeExportDataBaseP
|
|
|
35
35
|
exportData.columnTypes = {};
|
|
36
36
|
exportData.cellStyles = {};
|
|
37
37
|
}
|
|
38
|
+
if (param.format === 'pdf') {
|
|
39
|
+
exportData.landscape = param.landscape;
|
|
40
|
+
}
|
|
38
41
|
return exportData;
|
|
39
42
|
}
|
|
40
43
|
parseColumns(columns) {
|
|
@@ -50,4 +53,4 @@ OntimizeExportDataProviderService3X.ɵprov = i0.ɵɵngDeclareInjectable({ minVer
|
|
|
50
53
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OntimizeExportDataProviderService3X, decorators: [{
|
|
51
54
|
type: Injectable
|
|
52
55
|
}], ctorParameters: function () { return [{ type: i0.Injector }]; } });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib250aW1pemUtZXhwb3J0LWRhdGEtcHJvdmlkZXItM3guc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9zZXJ2aWNlcy9vbnRpbWl6ZS1leHBvcnQtZGF0YS1wcm92aWRlci0zeC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXJELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFFLHFDQUFxQyxFQUFFLE1BQU0sOENBQThDLENBQUM7O0FBR3JHLE1BQU0sT0FBTyxtQ0FBb0MsU0FBUSxxQ0FBcUM7SUFFNUYsWUFBc0IsUUFBa0I7UUFDdEMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBREksYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUV4QyxDQUFDO0lBRUQsc0JBQXNCLENBQUMsS0FBVTtRQUcvQixJQUFJLFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDcEIsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDakUsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDO1NBQ3RDO1FBQ0QsSUFBSSxVQUFVLEdBQVE7WUFDcEIsSUFBSSxFQUFFLEtBQUssQ0FBQyxNQUFNO1lBQ2xCLFVBQVUsRUFBRTtnQkFDVixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87Z0JBQ3RCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtnQkFDdkIsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDckUsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUztnQkFDOUIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO2dCQUNuQixPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZO2FBRWpDO1lBQ0QsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQzlDLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixHQUFHLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDakIsQ0FBQztRQUVGLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxNQUFNLElBQUksS0FBSyxFQUFFO1lBQ3BDLFVBQVUsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDdEQsVUFBVSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1lBQzNDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO1lBQ3ZCLFVBQVUsQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1lBQzFCLFVBQVUsQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1lBQzdCLFVBQVUsQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO1lBQzVCLFVBQVUsQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1NBQzVCO1FBQ0QsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLEtBQUssRUFBRTtZQUMxQixVQUFVLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7U0FDeEM7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUdwQixDQUFDO0lBRU8sWUFBWSxDQUFDLE9BQWM7UUFDakMsSUFBSSxHQUFHLEdBQUcsRUFBRSxDQUFDO1FBQ2IsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQWMsRUFBRSxFQUFFO1lBQ2pDLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLEdBQUcsQ0FBQTtJQUNaLENBQUM7O2lJQXJEVSxtQ0FBbUM7cUlBQW5DLG1DQUFtQzs0RkFBbkMsbUNBQW1DO2tCQUQvQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHR5cGUgeyBJRXhwb3J0RGF0YVByb3ZpZGVyIH0gZnJvbSBcIi4uL2ludGVyZmFjZXMvZXhwb3J0LWRhdGEtcHJvdmlkZXIuaW50ZXJmYWNlXCI7XG5pbXBvcnQgeyBVdGlsIH0gZnJvbSBcIi4uL3V0aWwvdXRpbFwiO1xuaW1wb3J0IHsgT250aW1pemVFeHBvcnREYXRhQmFzZVByb3ZpZGVyU2VydmljZSB9IGZyb20gXCIuL29udGltaXplLWV4cG9ydC1kYXRhLWJhc2UtcHJvdmlkZXIuc2VydmljZVwiO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgT250aW1pemVFeHBvcnREYXRhUHJvdmlkZXJTZXJ2aWNlM1ggZXh0ZW5kcyBPbnRpbWl6ZUV4cG9ydERhdGFCYXNlUHJvdmlkZXJTZXJ2aWNlIGltcGxlbWVudHMgSUV4cG9ydERhdGFQcm92aWRlciB7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHN1cGVyKGluamVjdG9yKTtcbiAgfVxuXG4gIGdldEV4cG9ydENvbmZpZ3VyYXRpb24ocGFyYW06IGFueSk6IGFueSB7XG5cbiAgICAvLyBUYWJsZSBkYXRhL2ZpbHRlcnMvcXVlcnlQYXJhbVxuICAgIGxldCBjdXJyZW50UGFnZSA9IDA7XG4gICAgaWYgKHRoaXMudGFibGUucGFnZWFibGUgJiYgVXRpbC5pc0RlZmluZWQodGhpcy50YWJsZS5jdXJyZW50UGFnZSkpIHtcbiAgICAgIGN1cnJlbnRQYWdlID0gdGhpcy50YWJsZS5jdXJyZW50UGFnZTtcbiAgICB9XG4gICAgbGV0IGV4cG9ydERhdGE6IGFueSA9IHtcbiAgICAgIHR5cGU6IHBhcmFtLmZvcm1hdCxcbiAgICAgIHF1ZXJ5UGFyYW06IHtcbiAgICAgICAgY29sdW1uczogcGFyYW0uY29sdW1ucyxcbiAgICAgICAgc3FsdHlwZXM6IHRoaXMuc3FsVHlwZXMsXG4gICAgICAgIG9mZnNldDogdGhpcy50YWJsZS5wYWdlYWJsZSA/IGN1cnJlbnRQYWdlICogdGhpcy50YWJsZS5xdWVyeVJvd3MgOiAtMSxcbiAgICAgICAgcGFnZVNpemU6IHRoaXMudGFibGUucXVlcnlSb3dzLFxuICAgICAgICBmaWx0ZXI6IHRoaXMuZmlsdGVyLFxuICAgICAgICBvcmRlckJ5OiB0aGlzLnRhYmxlLnNvcnRDb2xBcnJheVxuXG4gICAgICB9LFxuICAgICAgYWR2UXVlcnk6ICh0aGlzLnRhYmxlLnBhZ2VhYmxlID8gdHJ1ZSA6IGZhbHNlKSxcbiAgICAgIHBhdGg6IHBhcmFtLnBhdGgsXG4gICAgICBkYW86IHRoaXMuZW50aXR5XG4gICAgfTtcblxuICAgIGlmIChwYXJhbS5mb3JtYXQgPT09ICd4bHN4JyB8fCAncGRmJykge1xuICAgICAgZXhwb3J0RGF0YS5jb2x1bW5zID0gdGhpcy5wYXJzZUNvbHVtbnMocGFyYW0uY29sdW1ucyk7XG4gICAgICBleHBvcnREYXRhLmNvbHVtblRpdGxlcyA9IHRoaXMuY29sdW1uTmFtZXM7XG4gICAgICBleHBvcnREYXRhLnN0eWxlcyA9IHt9O1xuICAgICAgZXhwb3J0RGF0YS5yb3dTdHlsZXMgPSB7fTtcbiAgICAgIGV4cG9ydERhdGEuY29sdW1uU3R5bGVzID0ge307XG4gICAgICBleHBvcnREYXRhLmNvbHVtblR5cGVzID0ge307XG4gICAgICBleHBvcnREYXRhLmNlbGxTdHlsZXMgPSB7fTtcbiAgICB9XG4gICAgaWYgKHBhcmFtLmZvcm1hdCA9PT0gJ3BkZicpIHtcbiAgICAgIGV4cG9ydERhdGEubGFuZHNjYXBlID0gcGFyYW0ubGFuZHNjYXBlO1xuICAgIH1cblxuICAgIHJldHVybiBleHBvcnREYXRhO1xuXG5cbiAgfVxuXG4gIHByaXZhdGUgcGFyc2VDb2x1bW5zKGNvbHVtbnM6IGFueVtdKTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSB7XG4gICAgbGV0IG9iaiA9IHt9O1xuICAgIGNvbHVtbnMuZm9yRWFjaCgoY29sdW1uOiBzdHJpbmcpID0+IHtcbiAgICAgIG9ialtjb2x1bW5dID0ge307XG4gICAgfSk7XG4gICAgcmV0dXJuIG9ialxuICB9XG5cblxuXG59Il19
|
|
@@ -32,6 +32,7 @@ import * as i6 from "../directives/o-mat-error.directive";
|
|
|
32
32
|
import * as i7 from "../directives/o-file-drag-and-drop.directive";
|
|
33
33
|
import * as i8 from "../directives/o-mat-prefix.directive";
|
|
34
34
|
import * as i9 from "../directives/o-mat-suffix.directive";
|
|
35
|
+
import * as i10 from "../directives/input-regulate.directive";
|
|
35
36
|
export class OSharedModule {
|
|
36
37
|
}
|
|
37
38
|
OSharedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OSharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
@@ -43,7 +44,7 @@ OSharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
|
|
|
43
44
|
OCurrencyPipe,
|
|
44
45
|
OPercentPipe,
|
|
45
46
|
OIconPipe,
|
|
46
|
-
OSafePipe, i1.OKeyboardListenerDirective, i2.OListItemDirective, i3.OTabGroupDirective, i4.OLockerDirective, i5.OHiddenDirective, i6.OMatErrorDirective, i7.OFileDragAndDropDirective, i8.OMatPrefix, i9.OMatSuffix, Error403Component,
|
|
47
|
+
OSafePipe, i1.OKeyboardListenerDirective, i2.OListItemDirective, i3.OTabGroupDirective, i4.OLockerDirective, i5.OHiddenDirective, i6.OMatErrorDirective, i7.OFileDragAndDropDirective, i8.OMatPrefix, i9.OMatSuffix, i10.InputRegulateDirective, Error403Component,
|
|
47
48
|
ODialogComponent,
|
|
48
49
|
ODialogInternalComponent,
|
|
49
50
|
OErrorComponent,
|
|
@@ -67,7 +68,7 @@ OSharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
|
|
|
67
68
|
OCurrencyPipe,
|
|
68
69
|
OPercentPipe,
|
|
69
70
|
OIconPipe,
|
|
70
|
-
OSafePipe, i1.OKeyboardListenerDirective, i2.OListItemDirective, i3.OTabGroupDirective, i4.OLockerDirective, i5.OHiddenDirective, i6.OMatErrorDirective, i7.OFileDragAndDropDirective, i8.OMatPrefix, i9.OMatSuffix, OCustomMaterialModule,
|
|
71
|
+
OSafePipe, i1.OKeyboardListenerDirective, i2.OListItemDirective, i3.OTabGroupDirective, i4.OLockerDirective, i5.OHiddenDirective, i6.OMatErrorDirective, i7.OFileDragAndDropDirective, i8.OMatPrefix, i9.OMatSuffix, i10.InputRegulateDirective, OCustomMaterialModule,
|
|
71
72
|
Error403Component,
|
|
72
73
|
OErrorComponent,
|
|
73
74
|
OValidatorComponent,
|
|
@@ -140,4 +141,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
140
141
|
]
|
|
141
142
|
}]
|
|
142
143
|
}] });
|
|
143
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
144
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9zaGFyZWQvc2hhcmVkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNoRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUM1RyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQztBQUMvRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNoRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDNUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDcEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDMUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saURBQWlELENBQUM7Ozs7Ozs7Ozs7OztBQXVEM0YsTUFBTSxPQUFPLGFBQWE7OzJHQUFiLGFBQWE7NEdBQWIsYUFBYSxpQkEzQ3RCLGlCQUFpQjtRQUNqQixXQUFXO1FBQ1gsWUFBWTtRQUNaLFNBQVM7UUFDVCxXQUFXO1FBQ1gsYUFBYTtRQUNiLFlBQVk7UUFDWixTQUFTO1FBQ1QsU0FBUyx3T0FFVCxpQkFBaUI7UUFDakIsZ0JBQWdCO1FBQ2hCLHdCQUF3QjtRQUN4QixlQUFlO1FBQ2YsbUJBQW1CO1FBQ25CLGtCQUFrQjtRQUNsQiwwQkFBMEI7UUFDMUIsMkJBQTJCLGFBekIzQixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGdCQUFnQjtRQUNoQixxQkFBcUI7UUFDckIsV0FBVztRQUNYLG1CQUFtQixhQXVCbkIsZ0JBQWdCO1FBQ2hCLFdBQVc7UUFDWCxtQkFBbUI7UUFDbkIsZ0JBQWdCO1FBQ2hCLGlCQUFpQjtRQUNqQixXQUFXO1FBQ1gsWUFBWTtRQUNaLFNBQVM7UUFDVCxXQUFXO1FBQ1gsYUFBYTtRQUNiLFlBQVk7UUFDWixTQUFTO1FBQ1QsU0FBUyx3T0FFVCxxQkFBcUI7UUFDckIsaUJBQWlCO1FBQ2pCLGVBQWU7UUFDZixtQkFBbUI7UUFDbkIsa0JBQWtCO1FBQ2xCLDBCQUEwQjtRQUMxQiwyQkFBMkI7NEdBR2xCLGFBQWEsWUFuRHRCLFlBQVk7UUFDWixnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLHFCQUFxQjtRQUNyQixXQUFXO1FBQ1gsbUJBQW1CLEVBdUJuQixnQkFBZ0I7UUFDaEIsV0FBVztRQUNYLG1CQUFtQjtRQUNuQixnQkFBZ0I7UUFXaEIscUJBQXFCOzRGQVNaLGFBQWE7a0JBckR6QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixxQkFBcUI7d0JBQ3JCLFdBQVc7d0JBQ1gsbUJBQW1CO3FCQUNwQjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osaUJBQWlCO3dCQUNqQixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osU0FBUzt3QkFDVCxXQUFXO3dCQUNYLGFBQWE7d0JBQ2IsWUFBWTt3QkFDWixTQUFTO3dCQUNULFNBQVM7d0JBQ1QsbUJBQW1CO3dCQUNuQixpQkFBaUI7d0JBQ2pCLGdCQUFnQjt3QkFDaEIsd0JBQXdCO3dCQUN4QixlQUFlO3dCQUNmLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQiwwQkFBMEI7d0JBQzFCLDJCQUEyQjtxQkFDNUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGdCQUFnQjt3QkFDaEIsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3dCQUNqQixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osU0FBUzt3QkFDVCxXQUFXO3dCQUNYLGFBQWE7d0JBQ2IsWUFBWTt3QkFDWixTQUFTO3dCQUNULFNBQVM7d0JBQ1QsbUJBQW1CO3dCQUNuQixxQkFBcUI7d0JBQ3JCLGlCQUFpQjt3QkFDakIsZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsMEJBQTBCO3dCQUMxQiwyQkFBMkI7cUJBQzVCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGbGV4TGF5b3V0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZmxleC1sYXlvdXQnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IE9OVElNSVpFX0RJUkVDVElWRVMgfSBmcm9tICcuLi9jb25maWcvby1kaXJlY3RpdmVzJztcbmltcG9ydCB7IENvbHVtbnNGaWx0ZXJQaXBlIH0gZnJvbSAnLi4vcGlwZXMvY29sdW1ucy1maWx0ZXIucGlwZSc7XG5pbXBvcnQgeyBPQ3VycmVuY3lQaXBlIH0gZnJvbSAnLi4vcGlwZXMvby1jdXJyZW5jeS5waXBlJztcbmltcG9ydCB7IE9JY29uUGlwZSB9IGZyb20gJy4uL3BpcGVzL28taWNvbi5waXBlJztcbmltcG9ydCB7IE9JbnRlZ2VyUGlwZSB9IGZyb20gJy4uL3BpcGVzL28taW50ZWdlci5waXBlJztcbmltcG9ydCB7IE9Nb21lbnRQaXBlIH0gZnJvbSAnLi4vcGlwZXMvby1tb21lbnQucGlwZSc7XG5pbXBvcnQgeyBPUGVyY2VudFBpcGUgfSBmcm9tICcuLi9waXBlcy9vLXBlcmNlbnRhZ2UucGlwZSc7XG5pbXBvcnQgeyBPUmVhbFBpcGUgfSBmcm9tICcuLi9waXBlcy9vLXJlYWwucGlwZSc7XG5pbXBvcnQgeyBPU2FmZVBpcGUgfSBmcm9tICcuLi9waXBlcy9vLXNhZmUucGlwZSc7XG5pbXBvcnQgeyBPVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnLi4vcGlwZXMvby10cmFuc2xhdGUucGlwZSc7XG5pbXBvcnQgeyBPcmRlckJ5UGlwZSB9IGZyb20gJy4uL3BpcGVzL29yZGVyLWJ5LnBpcGUnO1xuaW1wb3J0IHsgT0RpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9kaWFsb2cvby1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IEVycm9yNDAzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Vycm9yNDAzL28tZXJyb3ItNDAzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPTG9hZEZpbHRlckRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9maWx0ZXIvbG9hZC1maWx0ZXIvby1sb2FkLWZpbHRlci1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IE9TdG9yZUZpbHRlckRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9maWx0ZXIvc3RvcmUtZmlsdGVyL28tc3RvcmUtZmlsdGVyLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgT1NuYWNrQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NuYWNrYmFyL28tc25hY2tiYXIuY29tcG9uZW50JztcbmltcG9ydCB7IE9FcnJvckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy92YWxpZGF0aW9uL28tZXJyb3IuY29tcG9uZW50JztcbmltcG9ydCB7IE9WYWxpZGF0b3JDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdmFsaWRhdGlvbi9vLXZhbGlkYXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgT0N1c3RvbU1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnLi9tYXRlcmlhbC9jdXN0b20ubWF0ZXJpYWwubW9kdWxlJztcbmltcG9ydCB7IE9EaWFsb2dJbnRlcm5hbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9kaWFsb2cvby1kaWFsb2ctaW50ZXJuYWwuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBPVHJhbnNsYXRlTW9kdWxlLFxuICAgIEZsZXhMYXlvdXRNb2R1bGUsXG4gICAgT0N1c3RvbU1hdGVyaWFsTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGVcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgQ29sdW1uc0ZpbHRlclBpcGUsXG4gICAgT3JkZXJCeVBpcGUsXG4gICAgT0ludGVnZXJQaXBlLFxuICAgIE9SZWFsUGlwZSxcbiAgICBPTW9tZW50UGlwZSxcbiAgICBPQ3VycmVuY3lQaXBlLFxuICAgIE9QZXJjZW50UGlwZSxcbiAgICBPSWNvblBpcGUsXG4gICAgT1NhZmVQaXBlLFxuICAgIE9OVElNSVpFX0RJUkVDVElWRVMsXG4gICAgRXJyb3I0MDNDb21wb25lbnQsXG4gICAgT0RpYWxvZ0NvbXBvbmVudCxcbiAgICBPRGlhbG9nSW50ZXJuYWxDb21wb25lbnQsXG4gICAgT0Vycm9yQ29tcG9uZW50LFxuICAgIE9WYWxpZGF0b3JDb21wb25lbnQsXG4gICAgT1NuYWNrQmFyQ29tcG9uZW50LFxuICAgIE9Mb2FkRmlsdGVyRGlhbG9nQ29tcG9uZW50LFxuICAgIE9TdG9yZUZpbHRlckRpYWxvZ0NvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRmxleExheW91dE1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIE9UcmFuc2xhdGVNb2R1bGUsXG4gICAgQ29sdW1uc0ZpbHRlclBpcGUsXG4gICAgT3JkZXJCeVBpcGUsXG4gICAgT0ludGVnZXJQaXBlLFxuICAgIE9SZWFsUGlwZSxcbiAgICBPTW9tZW50UGlwZSxcbiAgICBPQ3VycmVuY3lQaXBlLFxuICAgIE9QZXJjZW50UGlwZSxcbiAgICBPSWNvblBpcGUsXG4gICAgT1NhZmVQaXBlLFxuICAgIE9OVElNSVpFX0RJUkVDVElWRVMsXG4gICAgT0N1c3RvbU1hdGVyaWFsTW9kdWxlLFxuICAgIEVycm9yNDAzQ29tcG9uZW50LFxuICAgIE9FcnJvckNvbXBvbmVudCxcbiAgICBPVmFsaWRhdG9yQ29tcG9uZW50LFxuICAgIE9TbmFja0JhckNvbXBvbmVudCxcbiAgICBPTG9hZEZpbHRlckRpYWxvZ0NvbXBvbmVudCxcbiAgICBPU3RvcmVGaWx0ZXJEaWFsb2dDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBPU2hhcmVkTW9kdWxlIHtcbn1cbiJdfQ==
|
|
@@ -152,4 +152,4 @@ export class OValidators {
|
|
|
152
152
|
return validator;
|
|
153
153
|
}
|
|
154
154
|
}
|
|
155
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby12YWxpZGF0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL3ZhbGlkYXRvcnMvby12YWxpZGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxLQUFLLEdBQUcsTUFBTSx1QkFBdUIsQ0FBQztBQUU3QyxNQUFNLFlBQVksR0FBRyxpS0FBaUssQ0FBQztBQUd2TCxNQUFNLFdBQVcsR0FBRyxtQ0FBbUMsQ0FBQztBQUN4RCxNQUFNLFdBQVcsR0FBRyxzREFBc0QsQ0FBQztBQUMzRSxNQUFNLFNBQVMsR0FBRywwQkFBMEIsQ0FBQztBQUM3QyxNQUFNLE9BQU8sR0FBRyxZQUFZLENBQUM7QUFDN0IsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsOERBQThELENBQUM7QUFDekcsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsa0RBQWtELENBQUM7QUFFbEcsTUFBTSxPQUFPLFdBQVc7SUFLZixNQUFNLENBQUMseUJBQXlCLENBQUMsT0FBMkI7UUFDakUsTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUN0RCxJQUFJLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxPQUFPLENBQUMsS0FBSyxLQUFLLFFBQVEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3JGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsQ0FBQztTQUNwQztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUtNLE1BQU0sQ0FBQyw2QkFBNkIsQ0FBQyxPQUEyQjtRQUNyRSxNQUFNLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1FBQzNELElBQUksT0FBTyxD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Q0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssUUFBUSxFQUFFO2dCQUN2QyxJQUFJO29CQUNGLEdBQUcsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztpQkFDbkM7Z0JBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQ1YsR0FBRyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7aUJBQ3JCO2FBQ0Y7WUFDRCxJQUFJLEdBQUcsR0FBRyxHQUFHLEVBQUU7Z0JBQ2IsT0FBTztvQkFDTCxHQUFHLEVBQUU7d0JBQ0gsV0FBVyxFQUFFLEdBQUc7cUJBQ2pCO2lCQUNGLENBQUM7YUFDSDtZQUNELE9BQU8sRUFBRSxDQUFDO1FBQ1osQ0FBQyxDQUFBO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFV0aWwgfSBmcm9tICcuLi91dGlsL3V0aWwnO1xuaW1wb3J0ICogYXMgbHBuIGZyb20gJ2dvb2dsZS1saWJwaG9uZW51bWJlcic7XG5cbmNvbnN0IEVNQUlMX1JFR0VYUCA9IC9eW2EtekEtWjAtOSEjJCUmJyorLz0/Xl9ge3x9fi1dKyg/OlxcLlthLXpBLVowLTkhIyQlJicqKy89P15fYHt8fX4tXSspKkAoPzpbYS16QS1aMC05XSg/OlthLXpBLVowLTktXSpbYS16QS1aMC05XSk/XFwuKStbYS16QS1aMC05XSg/OlthLXpBLVowLTktXSpbYS16QS1aMC05XSk/JC87XG5cbi8vIE5JRiBSZWd1bGFyIEV4cHJlc3Npb25zXG5jb25zdCBETklfUEFUVEVSTiA9ICdeKChbMC05XXs4fSkoWy1dPykoW2EtekEtWl17MX0pKSQnO1xuY29uc3QgTklFX1BBVFRFUk4gPSAnXigoW3gtelgtWl17MX0pKFstXT8pKFswLTldezd9KShbLV0/KShbYS16QS1aXXsxfSkpJCc7XG5jb25zdCBETklfQ0hFQ0sgPSAnVFJXQUdNWUZQRFhCTkpaU1FWSExDS0VUJztcbmNvbnN0IE5VTUJFUlMgPSAnMDEyMzQ1Njc4OSc7XG5leHBvcnQgY29uc3QgVFdFTFZFX0hPVVJfRk9STUFUX1BBVFRFUk4gPSAnXigoWzAtOV18KFswMV0/WzAtOV0pKTooWzAtOV18KFswLTVdWzAtOV0pKSAqKFtBYVBwXVtNbV0pKikkJztcbmV4cG9ydCBjb25zdCBUV0VOVFlfRk9VUl9IT1VSX0ZPUk1BVF9QQVRURVJOID0gJ14oWzAtOV18KFswMV0/WzAtOV18MlswLTNdKSk6WzAtOV18KFswLTVdWzAtOV0pJCc7XG5cbmV4cG9ydCBjbGFzcyBPVmFsaWRhdG9ycyB7XG5cbiAgLyoqXG4gICAqIEhvdXIgdmFsaWRhdG9yIGhoOm1tIGFtL3BtIGZvcm1hdFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB0d2VsdmVIb3VyRm9ybWF0VmFsaWRhdG9yKGNvbnRyb2w6IFVudHlwZWRGb3JtQ29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMge1xuICAgIGNvbnN0IHJlZ0V4cCA9IG5ldyBSZWdFeHAoVFdFTFZFX0hPVVJfRk9STUFUX1BBVFRFUk4pO1xuICAgIGlmIChjb250cm9sLnZhbHVlICYmIHR5cGVvZiBjb250cm9sLnZhbHVlID09PSAnc3RyaW5nJyAmJiAhcmVnRXhwLnRlc3QoY29udHJvbC52YWx1ZSkpIHtcbiAgICAgIHJldHVybiB7IGludmFsaWRGb3JtYXRIb3VyOiB0cnVlIH07XG4gICAgfVxuICAgIHJldHVybiB7fTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIb3VyIHZhbGlkYXRvciBISDptbSBmb3JtYXRcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgdHdlbnR5Rm91ckhvdXJGb3JtYXRWYWxpZGF0b3IoY29udHJvbDogVW50eXBlZEZvcm1Db250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB7XG4gICAgY29uc3QgcmVnRXhwID0gbmV3IFJlZ0V4cChUV0VOVFlfRk9VUl9IT1VSX0ZPUk1BVF9QQVRURVJOKTtcbiAgICBpZiAoY29udHJvbC52YWx1ZSAmJiB0eXBlb2YgY29udHJvbC52YWx1ZSA9PT0gJ3N0cmluZycgJiYgIXJlZ0V4cC50ZXN0KGNvbnRyb2wudmFsdWUpKSB7XG4gICAgICByZXR1cm4geyBpbnZhbGlkRm9ybWF0SG91cjogdHJ1ZSB9O1xuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH1cblxuICAvKipcbiAgICogRW1haWwgdmFsaWRhdG9yXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGVtYWlsVmFsaWRhdG9yKGNvbnRyb2w6IFVudHlwZWRGb3JtQ29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMge1xuICAgIGlmIChjb250cm9sLnZhbHVlICYmIGNvbnRyb2wudmFsdWUubGVuZ3RoID4gMCAmJiAhRU1BSUxfUkVHRVhQLnRlc3QoY29udHJvbC52YWx1ZSkpIHtcbiAgICAgIHJldHVybiB7IGludmFsaWRFbWFpbEFkZHJlc3M6IHRydWUgfTtcbiAgICB9XG4gICAgcmV0dXJuIHt9O1xuICB9XG5cbiAgLyoqXG4gICAqIFBob25lIHZhbGlkYXRvclxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBwaG9uZVZhbGlkYXRvcihjb250cm9sOiBVbnR5cGVkRm9ybUNvbnRyb2wsIGNvdW50cnlDb2RlPzogYW55KTogVmFsaWRhdGlvbkVycm9ycyB7XG4gICAgaWYgKCFjb250cm9sIHx8ICFjb250cm9sLnZhbHVlKSB7XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuICAgIGNvbnN0IHBob25lTnVtYmVyVXRpbEluc3RhbmNlID0gbHBuLlBob25lTnVtYmVyVXRpbC5nZXRJbnN0YW5jZSgpO1xuICAgIGNvbnN0IGVycm9yID0geyB2YWxpZGF0ZVBob25lTnVtYmVyOiB7IHZhbGlkOiBmYWxzZSB9IH07XG5cbiAgICBsZXQgbnVtYmVyOiBscG4uUGhvbmVOdW1iZXI7XG4gICAgbGV0IGlzVmFsaWRGb3JSZWdpb246IGJvb2xlYW4gPSBmYWxzZVxuICAgIHRyeSB7XG4gICAgICBudW1iZXIgPSBwaG9uZU51bWJlclV0aWxJbnN0YW5jZS5wYXJzZShcbiAgICAgICAgY29udHJvbC52YWx1ZSxcbiAgICAgICAgY291bnRyeUNvZGVcbiAgICAgICk7XG4gICAgICBpZiAobnVtYmVyKSB7XG4gICAgICAgIGlzVmFsaWRGb3JSZWdpb24gPSBwaG9uZU51bWJlclV0aWxJbnN0YW5jZS5pc1ZhbGlkTnVtYmVyRm9yUmVnaW9uKFxuICAgICAgICAgIG51bWJlcixcbiAgICAgICAgICBjb3VudHJ5Q29kZVxuICAgICAgICApXG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgcmV0dXJuIGVycm9yO1xuICAgIH1cbiAgICBpZiAoY29udHJvbC52YWx1ZSAmJiAoIW51bWJlciB8fCAhaXNWYWxpZEZvclJlZ2lvbikpIHtcbiAgICAgIHJldHVybiBlcnJvclxuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH1cblxuICAvKipcbiAgICogTklGIHZhbGlkYXRvclxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBuaWZWYWxpZGF0b3IoY29udHJvbDogVW50eXBlZEZvcm1Db250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB7XG4gICAgY29uc3QgbmV3VmFsdWUgPSBjb250cm9sLnZhbHVlO1xuICAgIGNvbnN0IHJlZ0V4cCA9IG5ldyBSZWdFeHAoRE5JX1BBVFRFUk4gKyAnfCcgKyBOSUVfUEFUVEVSTik7XG5cbiAgICAvLyByZW1vdmluZyBkYXNoZXNcbiAgICBsZXQgdmFsdWVXaXRob3V0RGFzaGVzID0gJyc7XG4gICAgZm9yIChjb25zdCBpIGluIG5ld1ZhbHVlKSB7XG4gICAgICBpZiAobmV3VmFsdWVbaV0gIT09ICctJykge1xuICAgICAgICB2YWx1ZVdpdGhvdXREYXNoZXMgPSB2YWx1ZVdpdGhvdXREYXNoZXMgKyBuZXdWYWx1ZVtpXTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHZhbHVlV2l0aG91dERhc2hlcy5sZW5ndGggPiAxKSB7XG4gICAgICBjb25zdCBmaXJzdENoYXIgPSB2YWx1ZVdpdGhvdXREYXNoZXMuY2hhckF0KDApO1xuICAgICAgaWYgKE5VTUJFUlMuaW5kZXhPZihmaXJzdENoYXIpICE9PSAtMSkge1xuICAgICAgICBjb25zdCBudW1iZXIgPSB2YWx1ZVdpdGhvdXREYXNoZXMuc3Vic3RyaW5nKDAsIHZhbHVlV2l0aG91dERhc2hlcy5sZW5ndGggLSAxKTtcbiAgICAgICAgY29uc3QgcG9zID0gcGFyc2VJbnQobnVtYmVyLCAxMCkgJSAyMztcbiAgICAgICAgY29uc3QgZXhwZWN0ZWRMZXR0ZXIgPSBETklfQ0hFQ0suc3Vic3RyaW5nKHBvcywgcG9zICsgMSk7XG4gICAgICAgIGNvbnN0IGxldHRlciA9IHZhbHVlV2l0aG91dERhc2hlcy5jaGFyQXQodmFsdWVXaXRob3V0RGFzaGVzLmxlbmd0aCAtIDEpO1xuICAgICAgICBjb25zdCBkbmlMZXR0ZXJFcnJvciA9IChleHBlY3RlZExldHRlciAhPT0gbGV0dGVyLnRvVXBwZXJDYXNlKCkpO1xuICAgICAgICBpZiAoZG5pTGV0dGVyRXJyb3IpIHtcbiAgICAgICAgICByZXR1cm4geyBpbnZhbGlkTklGTGV0dGVyOiB0cnVlIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKCFyZWdFeHAudGVzdCh2YWx1ZVdpdGhvdXREYXNoZXMpKSB7XG4gICAgICAgICAgICByZXR1cm4geyBpbnZhbGlkTklGOiB0cnVlIH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoIXJlZ0V4cC50ZXN0KHZhbHVlV2l0aG91dERhc2hlcykpIHtcbiAgICAgICAgICByZXR1cm4geyBpbnZhbGlkTklGOiB0cnVlIH07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBQYXR0ZXJucyB2YWxpZGF0b3JcbiAgICogQHBhcmFtIHJlZ2V4XG4gICAqIEBwYXJhbSBrZXlcbiAgICogQHJldHVybnMgdmFsaWRhdG9yXG4gICAqXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHBhdHRlcm5WYWxpZGF0b3IocmVnZXg6IFJlZ0V4cCwga2V5OiBzdHJpbmcpOiBWYWxpZGF0b3JGbiB7XG4gICAgaWYgKCFVdGlsLmlzRGVmaW5lZChyZWdleCkpIHtcbiAgICAgIGNvbnNvbGUud2FybignUmVnZXggcGFyYW0gbXVzdCBiZSBkZWZpbmVkIGluIHBhdHRlcm5WYWxpZGF0b3IgJylcbiAgICB9XG5cbiAgICBpZiAoIVV0aWwuaXNEZWZpbmVkKGtleSkpIHtcbiAgICAgIGNvbnNvbGUud2FybignVmFsaWRhdGlvbiBrZXkgcGFyYW0gbXVzdCBiZSBkZWZpbmVkIGluIHBhdHRlcm5WYWxpZGF0b3IgJylcbiAgICB9XG5cbiAgICBsZXQgdmFsaWRhdG9yOiBWYWxpZGF0b3JGbiA9IChjb250cm9sOiBVbnR5cGVkRm9ybUNvbnRyb2wpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0+IHtcbiAgICAgIGlmICghVXRpbC5pc0RlZmluZWQocmVnZXgpIHx8ICFVdGlsLmlzRGVmaW5lZChrZXkpIHx8ICFjb250cm9sLnZhbHVlKSB7XG4gICAgICAgIC8vIGlmIHJlZ2V4IGlzIG5vdCBkZWZpbmVkIG9yIGtleSBpcyBub3QgZGVmaW5lZCBvciBjb250cm9sIGlzIGVtcHR5IHJldHVybiBubyBlcnJvclxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuXG4gICAgICAvLyB0ZXN0IHRoZSB2YWx1ZSBvZiB0aGUgY29udHJvbCBhZ2FpbnN0IHRoZSByZWdleHAgc3VwcGxpZWRcbiAgICAgIGNvbnN0IHZhbGlkID0gcmVnZXgudGVzdChjb250cm9sLnZhbHVlKTtcblxuICAgICAgbGV0IHJlc3VsdCA9IHt9O1xuXG4gICAgICAvLyBpZiB0cnVlLCByZXR1cm4gbm8gZXJyb3IgKG5vIGVycm9yKSwgZWxzZSByZXR1cm4gZXJyb3IgcGFzc2VkIGluIHRoZSBzZWNvbmQgcGFyYW1ldGVyXG4gICAgICBpZiAodmFsaWQpIHtcbiAgICAgICAgcmVzdWx0ID0gdW5kZWZpbmVkO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzdWx0W2tleV0gPSAhdmFsaWQ7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH07XG4gICAgcmV0dXJuIHZhbGlkYXRvcjtcblxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBjcmVhdGVNaW5WYWxpZGF0b3IobWluOiBudW1iZXIpOiBWYWxpZGF0b3JGbiB7XG4gICAgY29uc3QgdmFsaWRhdG9yOiBWYWxpZGF0b3JGbiA9IChjb250cm9sOiBVbnR5cGVkRm9ybUNvbnRyb2wpID0+IHtcbiAgICAgIGxldCB2YWwgPSBjb250cm9sLnZhbHVlO1xuICAgICAgaWYgKHR5cGVvZiAoY29udHJvbC52YWx1ZSkgIT09ICdudW1iZXInKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgdmFsID0gcGFyc2VJbnQoY29udHJvbC52YWx1ZSwgMTApO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgdmFsID0gY29udHJvbC52YWx1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHZhbCA8IG1pbikge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG1pbjoge1xuICAgICAgICAgICAgcmVxdWlyZWRNaW46IG1pblxuICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gICAgcmV0dXJuIHZhbGlkYXRvcjtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgY3JlYXRlTWF4VmFsaWRhdG9yKG1heDogbnVtYmVyKTogVmFsaWRhdG9yRm4ge1xuICAgIGNvbnN0IHZhbGlkYXRvcjogVmFsaWRhdG9yRm4gPSAoY29udHJvbDogVW50eXBlZEZvcm1Db250cm9sKSA9PiB7XG4gICAgICBsZXQgdmFsID0gY29udHJvbC52YWx1ZTtcbiAgICAgIGlmICh0eXBlb2YgKGNvbnRyb2wudmFsdWUpICE9PSAnbnVtYmVyJykge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIHZhbCA9IHBhcnNlSW50KGNvbnRyb2wudmFsdWUsIDEwKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIHZhbCA9IGNvbnRyb2wudmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmIChtYXggPCB2YWwpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBtYXg6IHtcbiAgICAgICAgICAgIHJlcXVpcmVkTWF4OiBtYXhcbiAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuICAgIHJldHVybiB2YWxpZGF0b3I7XG4gIH1cbn1cbiJdfQ==
|
|
155
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby12YWxpZGF0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL3ZhbGlkYXRvcnMvby12YWxpZGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxLQUFLLEdBQUcsTUFBTSx1QkFBdUIsQ0FBQztBQUU3QyxNQUFNLFlBQVksR0FBRyxpS0FBaUssQ0FBQztBQUd2TCxNQUFNLFdBQVcsR0FBRyxtQ0FBbUMsQ0FBQztBQUN4RCxNQUFNLFdBQVcsR0FBRyxzREFBc0QsQ0FBQztBQUMzRSxNQUFNLFNBQVMsR0FBRywwQkFBMEIsQ0FBQztBQUM3QyxNQUFNLE9BQU8sR0FBRyxZQUFZLENBQUM7QUFDN0IsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsOERBQThELENBQUM7QUFDekcsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsa0RBQWtELENBQUM7QUFFbEcsTUFBTSxPQUFPLFdBQVc7SUFLZixNQUFNLENBQUMseUJBQXlCLENBQUMsT0FBMkI7UUFDakUsTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUN0RCxJQUFJLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxPQUFPLENBQUMsS0FBSyxLQUFLLFFBQVEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3JGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsQ0FBQztTQUNwQztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUtNLE1BQU0sQ0FBQyw2QkFBNkIsQ0FBQyxPQUEyQjtRQUNyRSxNQUFNLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1FBQzNELElBQUksT0FBTyxD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Q0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssUUFBUSxFQUFFO2dCQUN2QyxJQUFJO29CQUNGLEdBQUcsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztpQkFDbkM7Z0JBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQ1YsR0FBRyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7aUJBQ3JCO2FBQ0Y7WUFDRCxJQUFJLEdBQUcsR0FBRyxHQUFHLEVBQUU7Z0JBQ2IsT0FBTztvQkFDTCxHQUFHLEVBQUU7d0JBQ0gsV0FBVyxFQUFFLEdBQUc7cUJBQ2pCO2lCQUNGLENBQUM7YUFDSDtZQUNELE9BQU8sRUFBRSxDQUFDO1FBQ1osQ0FBQyxDQUFBO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFV0aWwgfSBmcm9tICcuLi91dGlsL3V0aWwnO1xuaW1wb3J0ICogYXMgbHBuIGZyb20gJ2dvb2dsZS1saWJwaG9uZW51bWJlcic7XG5cbmNvbnN0IEVNQUlMX1JFR0VYUCA9IC9eW2EtekEtWjAtOSEjJCUmJyorLz0/Xl9ge3x9fi1dKyg/OlxcLlthLXpBLVowLTkhIyQlJicqKy89P15fYHt8fX4tXSspKkAoPzpbYS16QS1aMC05XSg/OlthLXpBLVowLTktXSpbYS16QS1aMC05XSk/XFwuKStbYS16QS1aMC05XSg/OlthLXpBLVowLTktXSpbYS16QS1aMC05XSk/JC87XG5cbi8vIE5JRiBSZWd1bGFyIEV4cHJlc3Npb25zXG5jb25zdCBETklfUEFUVEVSTiA9ICdeKChbMC05XXs4fSkoWy1dPykoW2EtekEtWl17MX0pKSQnO1xuY29uc3QgTklFX1BBVFRFUk4gPSAnXigoW3gtelgtWl17MX0pKFstXT8pKFswLTldezd9KShbLV0/KShbYS16QS1aXXsxfSkpJCc7XG5jb25zdCBETklfQ0hFQ0sgPSAnVFJXQUdNWUZQRFhCTkpaU1FWSExDS0VUJztcbmNvbnN0IE5VTUJFUlMgPSAnMDEyMzQ1Njc4OSc7XG5leHBvcnQgY29uc3QgVFdFTFZFX0hPVVJfRk9STUFUX1BBVFRFUk4gPSAnXigoWzAtOV18KFswMV0/WzAtOV0pKTooWzAtOV18KFswLTVdWzAtOV0pKSAqKFtBYVBwXVtNbV0pKikkJztcbmV4cG9ydCBjb25zdCBUV0VOVFlfRk9VUl9IT1VSX0ZPUk1BVF9QQVRURVJOID0gJ14oWzAtOV18KFswMV0/WzAtOV18MlswLTNdKSk6WzAtOV18KFswLTVdWzAtOV0pJCc7XG5cbmV4cG9ydCBjbGFzcyBPVmFsaWRhdG9ycyB7XG5cbiAgLyoqXG4gICAqIEhvdXIgdmFsaWRhdG9yIGhoOm1tIGFtL3BtIGZvcm1hdFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB0d2VsdmVIb3VyRm9ybWF0VmFsaWRhdG9yKGNvbnRyb2w6IFVudHlwZWRGb3JtQ29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMge1xuICAgIGNvbnN0IHJlZ0V4cCA9IG5ldyBSZWdFeHAoVFdFTFZFX0hPVVJfRk9STUFUX1BBVFRFUk4pO1xuICAgIGlmIChjb250cm9sLnZhbHVlICYmIHR5cGVvZiBjb250cm9sLnZhbHVlID09PSAnc3RyaW5nJyAmJiAhcmVnRXhwLnRlc3QoY29udHJvbC52YWx1ZSkpIHtcbiAgICAgIHJldHVybiB7IGludmFsaWRGb3JtYXRIb3VyOiB0cnVlIH07XG4gICAgfVxuICAgIHJldHVybiB7fTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIb3VyIHZhbGlkYXRvciBISDptbSBmb3JtYXRcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgdHdlbnR5Rm91ckhvdXJGb3JtYXRWYWxpZGF0b3IoY29udHJvbDogVW50eXBlZEZvcm1Db250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB7XG4gICAgY29uc3QgcmVnRXhwID0gbmV3IFJlZ0V4cChUV0VOVFlfRk9VUl9IT1VSX0ZPUk1BVF9QQVRURVJOKTtcbiAgICBpZiAoY29udHJvbC52YWx1ZSAmJiB0eXBlb2YgY29udHJvbC52YWx1ZSA9PT0gJ3N0cmluZycgJiYgIXJlZ0V4cC50ZXN0KGNvbnRyb2wudmFsdWUpKSB7XG4gICAgICByZXR1cm4geyBpbnZhbGlkRm9ybWF0SG91cjogdHJ1ZSB9O1xuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH1cblxuICAvKipcbiAgICogRW1haWwgdmFsaWRhdG9yXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGVtYWlsVmFsaWRhdG9yKGNvbnRyb2w6IFVudHlwZWRGb3JtQ29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMge1xuICAgIGlmIChjb250cm9sLnZhbHVlICYmIGNvbnRyb2wudmFsdWUubGVuZ3RoID4gMCAmJiAhRU1BSUxfUkVHRVhQLnRlc3QoY29udHJvbC52YWx1ZSkpIHtcbiAgICAgIHJldHVybiB7IGludmFsaWRFbWFpbEFkZHJlc3M6IHRydWUgfTtcbiAgICB9XG4gICAgcmV0dXJuIHt9O1xuICB9XG5cbiAgLyoqXG4gICAqIFBob25lIHZhbGlkYXRvclxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBwaG9uZVZhbGlkYXRvcihjb250cm9sOiBVbnR5cGVkRm9ybUNvbnRyb2wsIGNvdW50cnlDb2RlPzogYW55KTogVmFsaWRhdGlvbkVycm9ycyB7XG4gICAgaWYgKCFjb250cm9sIHx8ICFjb250cm9sLnZhbHVlKSB7XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuICAgIGNvbnN0IHBob25lTnVtYmVyVXRpbEluc3RhbmNlID0gbHBuLlBob25lTnVtYmVyVXRpbC5nZXRJbnN0YW5jZSgpO1xuICAgIGNvbnN0IGVycm9yID0geyB2YWxpZGF0ZVBob25lTnVtYmVyOiB7IHZhbGlkOiBmYWxzZSB9IH07XG5cbiAgICBsZXQgbnVtYmVyOiBscG4uUGhvbmVOdW1iZXI7XG4gICAgbGV0IGlzVmFsaWRGb3JSZWdpb246IGJvb2xlYW4gPSBmYWxzZVxuICAgIHRyeSB7XG4gICAgICBudW1iZXIgPSBwaG9uZU51bWJlclV0aWxJbnN0YW5jZS5wYXJzZShcbiAgICAgICAgY29udHJvbC52YWx1ZSxcbiAgICAgICAgY291bnRyeUNvZGVcbiAgICAgICk7XG4gICAgICBpZiAobnVtYmVyKSB7XG4gICAgICAgIGlzVmFsaWRGb3JSZWdpb24gPSBwaG9uZU51bWJlclV0aWxJbnN0YW5jZS5pc1ZhbGlkTnVtYmVyRm9yUmVnaW9uKFxuICAgICAgICAgIG51bWJlcixcbiAgICAgICAgICBjb3VudHJ5Q29kZVxuICAgICAgICApXG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgcmV0dXJuIGVycm9yO1xuICAgIH1cbiAgICBpZiAoY29udHJvbC52YWx1ZSAmJiAoIW51bWJlciB8fCAhaXNWYWxpZEZvclJlZ2lvbikpIHtcbiAgICAgIHJldHVybiBlcnJvclxuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH1cblxuICAvKipcbiAgICogTklGIHZhbGlkYXRvclxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBuaWZWYWxpZGF0b3IoY29udHJvbDogVW50eXBlZEZvcm1Db250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB7XG4gICAgY29uc3QgbmV3VmFsdWUgPSBjb250cm9sLnZhbHVlO1xuICAgIGNvbnN0IHJlZ0V4cCA9IG5ldyBSZWdFeHAoRE5JX1BBVFRFUk4gKyAnfCcgKyBOSUVfUEFUVEVSTik7XG5cbiAgICAvLyByZW1vdmluZyBkYXNoZXNcbiAgICBsZXQgdmFsdWVXaXRob3V0RGFzaGVzID0gJyc7XG4gICAgZm9yIChjb25zdCBpIGluIG5ld1ZhbHVlKSB7XG4gICAgICBpZiAobmV3VmFsdWVbaV0gIT09ICctJykge1xuICAgICAgICB2YWx1ZVdpdGhvdXREYXNoZXMgPSB2YWx1ZVdpdGhvdXREYXNoZXMgKyBuZXdWYWx1ZVtpXTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHZhbHVlV2l0aG91dERhc2hlcy5sZW5ndGggPiAxKSB7XG4gICAgICBjb25zdCBmaXJzdENoYXIgPSB2YWx1ZVdpdGhvdXREYXNoZXMuY2hhckF0KDApO1xuICAgICAgaWYgKE5VTUJFUlMuaW5kZXhPZihmaXJzdENoYXIpICE9PSAtMSkge1xuICAgICAgICBjb25zdCBudW1iZXIgPSB2YWx1ZVdpdGhvdXREYXNoZXMuc3Vic3RyaW5nKDAsIHZhbHVlV2l0aG91dERhc2hlcy5sZW5ndGggLSAxKTtcbiAgICAgICAgY29uc3QgcG9zID0gcGFyc2VJbnQobnVtYmVyLCAxMCkgJSAyMztcbiAgICAgICAgY29uc3QgZXhwZWN0ZWRMZXR0ZXIgPSBETklfQ0hFQ0suc3Vic3RyaW5nKHBvcywgcG9zICsgMSk7XG4gICAgICAgIGNvbnN0IGxldHRlciA9IHZhbHVlV2l0aG91dERhc2hlcy5jaGFyQXQodmFsdWVXaXRob3V0RGFzaGVzLmxlbmd0aCAtIDEpO1xuICAgICAgICBjb25zdCBkbmlMZXR0ZXJFcnJvciA9IChleHBlY3RlZExldHRlciAhPT0gbGV0dGVyLnRvVXBwZXJDYXNlKCkpO1xuICAgICAgICBpZiAoZG5pTGV0dGVyRXJyb3IpIHtcbiAgICAgICAgICByZXR1cm4geyBpbnZhbGlkTklGTGV0dGVyOiB0cnVlIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKCFyZWdFeHAudGVzdCh2YWx1ZVdpdGhvdXREYXNoZXMpKSB7XG4gICAgICAgICAgICByZXR1cm4geyBpbnZhbGlkTklGOiB0cnVlIH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoIXJlZ0V4cC50ZXN0KHZhbHVlV2l0aG91dERhc2hlcykpIHtcbiAgICAgICAgICByZXR1cm4geyBpbnZhbGlkTklGOiB0cnVlIH07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBQYXR0ZXJucyB2YWxpZGF0b3JcbiAgICogQHBhcmFtIHJlZ2V4XG4gICAqIEBwYXJhbSBrZXlcbiAgICogQHJldHVybnMgdmFsaWRhdG9yXG4gICAqXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHBhdHRlcm5WYWxpZGF0b3IocmVnZXg6IFJlZ0V4cCwga2V5OiBzdHJpbmcpOiBWYWxpZGF0b3JGbiB7XG4gICAgaWYgKCFVdGlsLmlzRGVmaW5lZChyZWdleCkpIHtcbiAgICAgIGNvbnNvbGUud2FybignUmVnZXggcGFyYW0gbXVzdCBiZSBkZWZpbmVkIGluIHBhdHRlcm5WYWxpZGF0b3IgJylcbiAgICB9XG5cbiAgICBpZiAoIVV0aWwuaXNEZWZpbmVkKGtleSkpIHtcbiAgICAgIGNvbnNvbGUud2FybignVmFsaWRhdGlvbiBrZXkgcGFyYW0gbXVzdCBiZSBkZWZpbmVkIGluIHBhdHRlcm5WYWxpZGF0b3IgJylcbiAgICB9XG5cbiAgICBsZXQgdmFsaWRhdG9yOiBWYWxpZGF0b3JGbiA9IChjb250cm9sOiBVbnR5cGVkRm9ybUNvbnRyb2wpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0+IHtcbiAgICAgIGlmICghVXRpbC5pc0RlZmluZWQocmVnZXgpIHx8ICFVdGlsLmlzRGVmaW5lZChrZXkpIHx8ICFjb250cm9sLnZhbHVlKSB7XG4gICAgICAgIC8vIGlmIHJlZ2V4IGlzIG5vdCBkZWZpbmVkIG9yIGtleSBpcyBub3QgZGVmaW5lZCBvciBjb250cm9sIGlzIGVtcHR5IHJldHVybiBubyBlcnJvclxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuXG4gICAgICAvLyB0ZXN0IHRoZSB2YWx1ZSBvZiB0aGUgY29udHJvbCBhZ2FpbnN0IHRoZSByZWdleHAgc3VwcGxpZWRcbiAgICAgIGNvbnN0IHZhbGlkID0gcmVnZXgudGVzdChjb250cm9sLnZhbHVlKTtcblxuICAgICAgbGV0IHJlc3VsdCA9IHt9O1xuXG4gICAgICAvLyBpZiB0cnVlLCByZXR1cm4gbm8gZXJyb3IgKG5vIGVycm9yKSwgZWxzZSByZXR1cm4gZXJyb3IgcGFzc2VkIGluIHRoZSBzZWNvbmQgcGFyYW1ldGVyXG4gICAgICBpZiAodmFsaWQpIHtcbiAgICAgICAgcmVzdWx0ID0gdW5kZWZpbmVkO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzdWx0W2tleV0gPSAhdmFsaWQ7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH07XG4gICAgcmV0dXJuIHZhbGlkYXRvcjtcblxuICB9XG5cbiAgLyoqXG4gKiBAZGVwcmVjYXRlZCBVc2UgYFZhbGlkYXRvci5taW5gIGluc3RlYWRcbiAqL1xuICBwdWJsaWMgc3RhdGljIGNyZWF0ZU1pblZhbGlkYXRvcihtaW46IG51bWJlcik6IFZhbGlkYXRvckZuIHtcbiAgICBjb25zdCB2YWxpZGF0b3I6IFZhbGlkYXRvckZuID0gKGNvbnRyb2w6IFVudHlwZWRGb3JtQ29udHJvbCkgPT4ge1xuICAgICAgbGV0IHZhbCA9IGNvbnRyb2wudmFsdWU7XG4gICAgICBpZiAodHlwZW9mIChjb250cm9sLnZhbHVlKSAhPT0gJ251bWJlcicpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICB2YWwgPSBwYXJzZUludChjb250cm9sLnZhbHVlLCAxMCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICB2YWwgPSBjb250cm9sLnZhbHVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAodmFsIDwgbWluKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgbWluOiB7XG4gICAgICAgICAgICByZXF1aXJlZE1pbjogbWluXG4gICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cbiAgICByZXR1cm4gdmFsaWRhdG9yO1xuICB9XG4gIC8qKlxuICogQGRlcHJlY2F0ZWQgVXNlIGBWYWxpZGF0b3IubWF4YCBpbnN0ZWFkXG4gKi9cbiAgcHVibGljIHN0YXRpYyBjcmVhdGVNYXhWYWxpZGF0b3IobWF4OiBudW1iZXIpOiBWYWxpZGF0b3JGbiB7XG4gICAgY29uc3QgdmFsaWRhdG9yOiBWYWxpZGF0b3JGbiA9IChjb250cm9sOiBVbnR5cGVkRm9ybUNvbnRyb2wpID0+IHtcbiAgICAgIGxldCB2YWwgPSBjb250cm9sLnZhbHVlO1xuICAgICAgaWYgKHR5cGVvZiAoY29udHJvbC52YWx1ZSkgIT09ICdudW1iZXInKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgdmFsID0gcGFyc2VJbnQoY29udHJvbC52YWx1ZSwgMTApO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgdmFsID0gY29udHJvbC52YWx1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKG1heCA8IHZhbCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG1heDoge1xuICAgICAgICAgICAgcmVxdWlyZWRNYXg6IG1heFxuICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gICAgcmV0dXJuIHZhbGlkYXRvcjtcbiAgfVxufVxuIl19
|