@elderbyte/ngx-starter 14.6.0 → 14.7.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/esm2020/lib/common/data/data-context/data-context-active-page.mjs +1 -1
- package/esm2020/lib/common/data/data-context/data-context-base.mjs +2 -2
- package/esm2020/lib/common/data/data-context/data-context-continuable-base.mjs +1 -1
- package/esm2020/lib/common/data/data-context/data-context.mjs +1 -1
- package/esm2020/lib/common/data/datasource/data-source-adapter.mjs +1 -1
- package/esm2020/lib/common/data/datasource/data-source-processor.mjs +1 -1
- package/esm2020/lib/common/data/datasource/data-source.mjs +1 -1
- package/esm2020/lib/common/data/datasource/fetcher/delegate-data-source.mjs +1 -1
- package/esm2020/lib/common/data/datasource/local/local-list-data-source.mjs +1 -1
- package/esm2020/lib/common/data/datasource/local/local-paged-data-source.mjs +1 -1
- package/esm2020/lib/common/data/datasource/rest/rest-client.mjs +2 -2
- package/esm2020/lib/common/data/filters/filter-context.mjs +141 -0
- package/esm2020/lib/common/data/filters/filter.mjs +109 -0
- package/esm2020/lib/common/data/http-params-builder.mjs +2 -2
- package/esm2020/lib/common/data/public_api.mjs +3 -3
- package/esm2020/lib/common/data/required-filter-evaluator.mjs +1 -1
- package/esm2020/lib/common/data/token-chunk-request.mjs +1 -1
- package/esm2020/lib/common/utils/filter-util.mjs +1 -1
- package/esm2020/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +1 -1
- package/esm2020/lib/components/csv/elder-csv-stream-exporter.mjs +1 -1
- package/esm2020/lib/components/data-view/base/elder-data-view-options.mjs +1 -1
- package/esm2020/lib/components/forms/search/elder-search-context.directive.mjs +33 -19
- package/esm2020/lib/components/http-support/elder-http-client.service.mjs +1 -1
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +2 -2
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +2 -2
- package/esm2020/lib/components/measures/directives/elder-unit-select.directive.mjs +2 -2
- package/esm2020/lib/components/select/elder-select-base.mjs +2 -2
- package/esm2020/lib/components/select/popup/selection-model-popup.directive.mjs +1 -1
- package/fesm2015/elderbyte-ngx-starter.mjs +90 -27
- package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -1
- package/fesm2020/elderbyte-ngx-starter.mjs +90 -27
- package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/common/data/data-context/data-context-active-page.d.ts +1 -1
- package/lib/common/data/data-context/data-context-base.d.ts +2 -2
- package/lib/common/data/data-context/data-context-continuable-base.d.ts +1 -1
- package/lib/common/data/data-context/data-context.d.ts +2 -2
- package/lib/common/data/datasource/data-source-adapter.d.ts +1 -1
- package/lib/common/data/datasource/data-source-processor.d.ts +1 -1
- package/lib/common/data/datasource/data-source.d.ts +1 -1
- package/lib/common/data/datasource/fetcher/delegate-data-source.d.ts +1 -1
- package/lib/common/data/datasource/local/local-list-data-source.d.ts +1 -1
- package/lib/common/data/datasource/local/local-paged-data-source.d.ts +1 -1
- package/lib/common/data/datasource/rest/rest-client.d.ts +1 -1
- package/lib/common/data/{filter-context.d.ts → filters/filter-context.d.ts} +3 -1
- package/lib/common/data/{filter.d.ts → filters/filter.d.ts} +15 -3
- package/lib/common/data/http-params-builder.d.ts +1 -1
- package/lib/common/data/public_api.d.ts +2 -2
- package/lib/common/data/required-filter-evaluator.d.ts +2 -2
- package/lib/common/data/token-chunk-request.d.ts +1 -1
- package/lib/common/utils/filter-util.d.ts +1 -1
- package/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.d.ts +1 -1
- package/lib/components/csv/elder-csv-stream-exporter.d.ts +1 -1
- package/lib/components/data-view/base/elder-data-view-options.d.ts +1 -1
- package/lib/components/forms/search/elder-search-context.directive.d.ts +15 -12
- package/lib/components/http-support/elder-http-client.service.d.ts +1 -1
- package/lib/components/input/autocomplete/elder-autocomplete-many.directive.d.ts +1 -1
- package/lib/components/input/autocomplete/elder-autocomplete.directive.d.ts +1 -1
- package/lib/components/select/elder-select-base.d.ts +1 -1
- package/lib/components/select/popup/selection-model-popup.directive.d.ts +1 -1
- package/package.json +1 -1
- package/esm2020/lib/common/data/filter-context.mjs +0 -129
- package/esm2020/lib/common/data/filter.mjs +0 -72
|
@@ -2,7 +2,7 @@ import { Directive, HostListener, Input } from '@angular/core';
|
|
|
2
2
|
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
3
3
|
import { merge, Subject } from 'rxjs';
|
|
4
4
|
import { debounceTime, filter, map, skipWhile, takeUntil } from 'rxjs/operators';
|
|
5
|
-
import { Filter } from '../../../common/data/filter';
|
|
5
|
+
import { Filter } from '../../../common/data/filters/filter';
|
|
6
6
|
import { WordPositionFinder } from './many/word-position-finder';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "@angular/material/autocomplete";
|
|
@@ -194,4 +194,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
194
194
|
type: HostListener,
|
|
195
195
|
args: ['keyup', ['$event']]
|
|
196
196
|
}] } });
|
|
197
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItYXV0b2NvbXBsZXRlLW1hbnkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9pbnB1dC9hdXRvY29tcGxldGUvZWxkZXItYXV0b2NvbXBsZXRlLW1hbnkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFDNUYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBUSxLQUFLLEVBQUUsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBQyxZQUFZLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFHL0UsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBSW5ELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDZCQUE2QixDQUFDOzs7QUFNL0QsTUFBTSxPQUFPLDhCQUE4QjtJQStDekM7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ21CLG1CQUEyQyxFQUMzQyxRQUFzQztRQUR0Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXdCO1FBQzNDLGFBQVEsR0FBUixRQUFRLENBQThCO1FBdER6RDs7OztvRkFJNEU7UUFHckUsZ0JBQVcsR0FBRyxPQUFPLENBQUM7UUFHdEIsWUFBTyxHQUFhLEVBQUUsQ0FBQztRQUd2QixVQUFLLEdBQVcsRUFBRSxDQUFDO1FBVW5CLDJCQUFzQixHQUFtQixDQUFDLE1BQVcsRUFBRSxFQUFFO1lBQzlELElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ1gsT0FBTyxNQUFNLENBQUM7YUFDZjtpQkFBTSxJQUFJLE9B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QkFBOEI7K0dBQTlCLDhCQUE4QjsyRkFBOUIsOEJBQThCO2tCQUgxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7aUJBQ3BDO3NJQVNRLFdBQVc7c0JBRGpCLEtBQUs7Z0JBSUMsT0FBTztzQkFEYixLQUFLO2dCQUlDLEtBQUs7c0JBRFgsS0FBSztnQkFRQyxZQUFZO3NCQURsQixLQUFLO2dCQUlDLHNCQUFzQjtzQkFENUIsS0FBSztnQkE0Q0ssWUFBWTtzQkFEdEIsS0FBSzt1QkFBQyx1QkFBdUI7Z0JBK0N2QixPQUFPO3NCQURiLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtFTVBUWSwgbWVyZ2UsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtkZWJvdW5jZVRpbWUsIGZpbHRlciwgbWFwLCBza2lwV2hpbGUsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtFbGRlckF1dG9jb21wbGV0ZUNvbXBvbmVudH0gZnJvbSAnLi9lbGRlci1hdXRvY29tcGxldGUvZWxkZXItYXV0b2NvbXBsZXRlLmNvbXBvbmVudCc7XG5pbXBvcnQge01hdEF1dG9jb21wbGV0ZVRyaWdnZXJ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZSc7XG5pbXBvcnQge0ZpbHRlcn0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2RhdGEvZmlsdGVyJztcbmltcG9ydCB7U29ydH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2RhdGEvc29ydCc7XG5pbXBvcnQge0lEYXRhQ29udGV4dH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L2RhdGEtY29udGV4dCc7XG5pbXBvcnQge1RleHRSZXNvbHZlckZufSBmcm9tICcuLi8uLi9zZWxlY3QvZWxkZXItc2VsZWN0LWJhc2UnO1xuaW1wb3J0IHtXb3JkUG9zaXRpb25GaW5kZXJ9IGZyb20gJy4vbWFueS93b3JkLXBvc2l0aW9uLWZpbmRlcic7XG5pbXBvcnQge0VsZGVyQXV0b2NvbXBsZXRlT3B0aW9uU2VsZWN0ZWR9IGZyb20gJy4vZWxkZXItYXV0b2NvbXBsZXRlL2VsZGVyLWF1dG9jb21wbGV0ZS1vcHRpb24tc2VsZWN0ZWQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZWxkZXJBdXRvY29tcGxldGVNYW55XSdcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJBdXRvY29tcGxldGVNYW55RGlyZWN0aXZlPFQ+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASW5wdXQoKVxuICBwdWJsaWMgcXVlcnlGaWx0ZXIgPSAncXVlcnknO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmaWx0ZXJzOiBGaWx0ZXJbXSA9IFtdO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzb3J0czogU29ydFtdID0gW107XG5cbiAgLyoqXG4gICAqIFRoZSBwcm9wZXJ0eSBvbiBhIHN1Z2dlc3Rpb24gb2JqZWN0IHdoaWNoIGlzIHVzZWRcbiAgICogYXMgdGhlIGRpc3BsYXkgYW5kIGluc2VydCB2YWx1ZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0ZXh0UHJvcGVydHk6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgdGV4dFByb3BlcnR5UmVzb2x2ZXJGbjogVGV4dFJlc29sdmVyRm4gPSAob3B0aW9uOiBhbnkpID0+IHtcbiAgICBpZiAoIW9wdGlvbikge1xuICAgICAgcmV0dXJuIG9wdGlvbjtcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBvcHRpb24gPT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gb3B0aW9uIGFzIHN0cmluZztcbiAgICB9IGVsc2UgaWYgKHRoaXMudGV4dFByb3BlcnR5KSB7XG4gICAgICByZXR1cm4gb3B0aW9uW3RoaXMudGV4dFByb3BlcnR5XSBhcyBzdHJpbmc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICB9O1xuXG4gIHB1YmxpYyByZWFkb25seSBpbnB1dEtleXVwJCA9IG5ldyBTdWJqZWN0PEtleWJvYXJkRXZlbnQ+KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBpZ25vcmVLZXlzID0gWydBcnJvd1JpZ2h0JywgJ0Fycm93VXAnLCAnQXJyb3dEb3duJywgJ0Fycm93TGVmdCddO1xuICBwcml2YXRlIHJlYWRvbmx5IGxvZyA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgd29yZEZpbmRlcjogV29yZFBvc2l0aW9uRmluZGVyO1xuXG4gIHByaXZhdGUgX2VsZGVyQXV0b2NvbXBsZXRlOiBFbGRlckF1dG9jb21wbGV0ZUNvbXBvbmVudDtcblxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95QXV0b2NvbXBsZXRlQmluZGluZyQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0b0NvbXBsZXRlVHJpZ2dlcjogTWF0QXV0b2NvbXBsZXRlVHJpZ2dlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGlucHV0UmVmOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+XG4gICkge1xuICAgIHRoaXMud29yZEZpbmRlciA9IG5ldyBXb3JkUG9zaXRpb25GaW5kZXIoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBJbnB1dCgnZWxkZXJBdXRvY29tcGxldGVNYW55JylcbiAgcHVibGljIHNldCBhdXRvY29tcGxldGUoYXV0bzogRWxkZXJBdXRvY29tcGxldGVDb21wb25lbnQpIHtcbiAgICB0aGlzLl9lbGRlckF1dG9jb21wbGV0ZSA9IGF1dG87XG4gICAgdGhpcy5kZXN0cm95QXV0b2NvbXBsZXRlQmluZGluZyQubmV4dCgpO1xuICAgIGlmIChhdXRvKSB7XG4gICAgICBhdXRvLm1hdEF1dG9jb21wbGV0ZSRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveUF1dG9jb21wbGV0ZUJpbmRpbmckKSxcbiAgICAgICAgICBmaWx0ZXIobWF0QXV0byA9PiAhIW1hdEF1dG8pXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZShtYXRBdXRvID0+IHRoaXMuYXV0b0NvbXBsZXRlVHJpZ2dlci5hdXRvY29tcGxldGUgPSBtYXRBdXRvKTtcblxuICAgICAgYXV0by5vcHRpb25TZWxlY3RlZC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95QXV0b2NvbXBsZXRlQmluZGluZyQpXG4gICAgICApLnN1YnNjcmliZShldmVudCA9PiB0aGlzLm9uT3B0aW9uU2VsZWN0ZWQoZXZlbnQpKVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXV0b2NvbXBsZXRlKCk6IEVsZGVyQXV0b2NvbXBsZXRlQ29tcG9uZW50IHtcbiAgICByZXR1cm4gdGhpcy5fZWxkZXJBdXRvY29tcGxldGU7XG4gIH1cblxuICBwcml2YXRlIGdldCBjdXJzb3JQb3NpdGlvbigpOiBudW1iZXIgfCBudWxsIHtcbiAgICBpZiAodGhpcy5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudCkge1xuICAgICAgcmV0dXJuIHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydDtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBwcml2YXRlIHNldCBjdXJzb3JQb3NpdGlvbihwb3NpdGlvbjogbnVtYmVyKSB7XG4gICAgaWYgKHRoaXMuaW5wdXRSZWY/Lm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydCA9IHBvc2l0aW9uO1xuICAgICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnNlbGVjdGlvbkVuZCA9IHBvc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGRhdGFDb250ZXh0KCk6IElEYXRhQ29udGV4dDxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5fZWxkZXJBdXRvY29tcGxldGUuZGF0YUNvbnRleHQ7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogSG9zdCBMaXN0ZW5lciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASG9zdExpc3RlbmVyKCdrZXl1cCcsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbktleVVwKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgaWYgKHRoaXMuaWdub3JlS2V5cy5zb21lKGsgPT4gayA9PT0gZXZlbnQua2V5KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmlucHV0S2V5dXAkLm5leHQoZXZlbnQpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX2VsZGVyQXV0b2NvbXBsZXRlLmRpc3BsYXlQcm9wZXJ0eVJlc29sdmVyID0gdGhpcy50ZXh0UHJvcGVydHlSZXNvbHZlckZuO1xuICAgIHRoaXMuX2VsZGVyQXV0b2NvbXBsZXRlLm9wdGlvblZhbHVlQ29udmVydGVyRm4gPSAob3B0aW9uOiBUKSA9PiB7XG4gICAgICBjb25zdCBzdWdnZXN0aW9uID0gdGhpcy5yZXNvbHZlU3VnZ2VzdGlvblRleHQob3B0aW9uKTtcbiAgICAgIHJldHVybiB0aGlzLmluc2VydFN1Z2dlc3Rpb24oc3VnZ2VzdGlvbik7XG4gICAgfTtcblxuICAgIG1lcmdlKFxuICAgICAgdGhpcy5pbnB1dEtleXVwJC5waXBlKFxuICAgICAgICBza2lwV2hpbGUoZSA9PiAhdGhpcy5fZWxkZXJBdXRvY29tcGxldGUuZW5hYmxlZCksXG4gICAgICAgIGRlYm91bmNlVGltZSgxNTApLFxuICAgICAgICBtYXAoZSA9PiAoZT8udGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpPy52YWx1ZSksXG4gICAgICAgIG1hcCh2YWx1ZSA9PiB0aGlzLmV4dHJhY3RXb3JkQXRDdXJzb3IodmFsdWUpKVxuICAgICAgKSxcbiAgICAgIHRoaXMuYXV0b2NvbXBsZXRlLnRyaWdnZXJSZWxvYWQkXG4gICAgKS5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgZmlsdGVyKHZhbHVlID0+ICF2YWx1ZSB8fCB0eXBlb2YgKHZhbHVlKSA9PT0gJ3N0cmluZycgfHwgdHlwZW9mICh2YWx1ZSkgPT09ICdudW1iZXInKVxuICAgICkuc3Vic2NyaWJlKFxuICAgICAgdmFsdWUgPT4gdGhpcy51cGRhdGVTdWdnZXN0aW9ucyh2YWx1ZSlcbiAgICApO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgICB0aGlzLmRlc3Ryb3lBdXRvY29tcGxldGVCaW5kaW5nJC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95QXV0b2NvbXBsZXRlQmluZGluZyQuY29tcGxldGUoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbiAgcHJpdmF0ZSBleHRyYWN0V29yZEF0Q3Vyc29yKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmN1cnNvclBvc2l0aW9uKSB7XG4gICAgICBjb25zdCBjdXJzb3IgPSB0aGlzLmN1cnNvclBvc2l0aW9uO1xuICAgICAgcmV0dXJuIHRoaXMuZXh0cmFjdFdvcmRGcm9tKHZhbHVlLCBjdXJzb3IpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGN1cnNvckJlZm9yZUF1dG9jb21wbGV0ZTogbnVtYmVyO1xuICBwcml2YXRlIHJlbWVtYmVyQ3Vyc29yUG9zaXRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5jdXJzb3JCZWZvcmVBdXRvY29tcGxldGUgPSB0aGlzLmN1cnNvclBvc2l0aW9uO1xuICB9XG5cbiAgcHJpdmF0ZSBleHRyYWN0V29yZEZyb20odGV4dDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBjb25zdCB3b3JkID0gdGhpcy53b3JkRmluZGVyLmZpbmRXb3JkKHRleHQsIHBvc2l0aW9uKTtcbiAgICByZXR1cm4gd29yZC52YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlU3VnZ2VzdGlvbnModmFsdWU6IHN0cmluZyB8IG51bWJlciB8IHVuZGVmaW5lZCB8IG51bGwpOiB2b2lkIHtcbiAgICBjb25zdCBmaWx0ZXJzID0gWy4uLnRoaXMuZmlsdGVycywgbmV3IEZpbHRlcih0aGlzLnF1ZXJ5RmlsdGVyLCA8YW55PnZhbHVlKV07XG4gICAgY29uc3Qgc29ydHMgPSB0aGlzLnNvcnRzO1xuICAgIGlmICh0aGlzLmRhdGFDb250ZXh0KSB7XG4gICAgICB0cnkge1xuICAgICAgICB0aGlzLnJlbWVtYmVyQ3Vyc29yUG9zaXRpb24oKTtcbiAgICAgICAgdGhpcy5kYXRhQ29udGV4dC5zdGFydChzb3J0cywgZmlsdGVycyk7XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgdGhpcy5sb2cuZXJyb3IoJ0ZhaWxlZCB0byBzdGFydCBEYXRhQ29udGV4dCEnLCBlcnIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5zZXJ0U3VnZ2VzdGlvbihzdWdnZXN0aW9uOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGN1cnJlbnRWYWx1ZSA9IHRoaXMuY3VycmVudElucHV0VmFsdWUoKTtcbiAgICBpZighc3VnZ2VzdGlvbil7XG4gICAgICByZXR1cm4gY3VycmVudFZhbHVlO1xuICAgIH1cbiAgICBpZiAodGhpcy5jdXJzb3JQb3NpdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb25zdCBjdXJzb3IgPSB0aGlzLmN1cnNvclBvc2l0aW9uO1xuICAgICAgY29uc3QgcmVwbGFjZW1lbnQgPSB0aGlzLndvcmRGaW5kZXIucmVwbGFjZVdvcmQoY3VycmVudFZhbHVlLCBjdXJzb3IsIHN1Z2dlc3Rpb24pO1xuICAgICAgcmV0dXJuIHJlcGxhY2VtZW50Lm5ld1RleHQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubG9nLndhcm4oJ0luc2VydCBub3QgcG9zc2libGUgYXMgbm8gY3Vyc29yLXBvc2l0aW9uIHdhcyBhdmFpbGFibGUhJyk7XG4gICAgICByZXR1cm4gY3VycmVudFZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY3VycmVudElucHV0VmFsdWUoKTogc3RyaW5nIHtcbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuaW5wdXRSZWY/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgcmV0dXJuIGlucHV0Py52YWx1ZSA/PyAnJztcbiAgfVxuXG4gIHByaXZhdGUgcmVzb2x2ZVN1Z2dlc3Rpb25UZXh0KG9wdGlvbjogVCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudGV4dFByb3BlcnR5UmVzb2x2ZXJGbihvcHRpb24pO1xuICB9XG5cbiAgcHJpdmF0ZSBvbk9wdGlvblNlbGVjdGVkKFxuICAgIGV2ZW50OiBFbGRlckF1dG9jb21wbGV0ZU9wdGlvblNlbGVjdGVkXG4gICk6IHZvaWQge1xuICAgIGNvbnN0IHdvcmRBdEN1cnNvciA9IHRoaXMud29yZEZpbmRlci5maW5kV29yZCh0aGlzLmN1cnJlbnRJbnB1dFZhbHVlKCksIHRoaXMuY3Vyc29yQmVmb3JlQXV0b2NvbXBsZXRlKTtcbiAgICBjb25zdCBhdXRvY29tcGxldGVkUGhyYXNlID0gdGhpcy5yZXNvbHZlU3VnZ2VzdGlvblRleHQoZXZlbnQuZW50aXR5KTtcbiAgICAvLyBUaGUgd29yZEF0Q3Vyc29yIG1pZ2h0IG5vdCBiZSB0aGUgZnVsbCBhdXRvY29tcGxldGVkIHBocmFzZSAoaWYgdGhlcmUgYXJlIG11bHRpcGxlIHdvcmRzKVxuICAgIHRoaXMuY3Vyc29yUG9zaXRpb24gPSB3b3JkQXRDdXJzb3Iuc3RhcnQgKyBhdXRvY29tcGxldGVkUGhyYXNlLmxlbmd0aDtcbiAgfVxufVxuIl19
|
|
197
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItYXV0b2NvbXBsZXRlLW1hbnkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9pbnB1dC9hdXRvY29tcGxldGUvZWxkZXItYXV0b2NvbXBsZXRlLW1hbnkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFDNUYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBUSxLQUFLLEVBQUUsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBQyxZQUFZLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFHL0UsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBSTNELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDZCQUE2QixDQUFDOzs7QUFNL0QsTUFBTSxPQUFPLDhCQUE4QjtJQStDekM7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ21CLG1CQUEyQyxFQUMzQyxRQUFzQztRQUR0Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXdCO1FBQzNDLGFBQVEsR0FBUixRQUFRLENBQThCO1FBdER6RDs7OztvRkFJNEU7UUFHckUsZ0JBQVcsR0FBRyxPQUFPLENBQUM7UUFHdEIsWUFBTyxHQUFhLEVBQUUsQ0FBQztRQUd2QixVQUFLLEdBQVcsRUFBRSxDQUFDO1FBVW5CLDJCQUFzQixHQUFtQixDQUFDLE1BQVcsRUFBRSxFQUFFO1lBQzlELElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ1gsT0FBTyxNQUFNLENBQUM7YUFDZjtpQkFBTSxJQUFJLE9B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QkFBOEI7K0dBQTlCLDhCQUE4QjsyRkFBOUIsOEJBQThCO2tCQUgxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7aUJBQ3BDO3NJQVNRLFdBQVc7c0JBRGpCLEtBQUs7Z0JBSUMsT0FBTztzQkFEYixLQUFLO2dCQUlDLEtBQUs7c0JBRFgsS0FBSztnQkFRQyxZQUFZO3NCQURsQixLQUFLO2dCQUlDLHNCQUFzQjtzQkFENUIsS0FBSztnQkE0Q0ssWUFBWTtzQkFEdEIsS0FBSzt1QkFBQyx1QkFBdUI7Z0JBK0N2QixPQUFPO3NCQURiLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtFTVBUWSwgbWVyZ2UsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtkZWJvdW5jZVRpbWUsIGZpbHRlciwgbWFwLCBza2lwV2hpbGUsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtFbGRlckF1dG9jb21wbGV0ZUNvbXBvbmVudH0gZnJvbSAnLi9lbGRlci1hdXRvY29tcGxldGUvZWxkZXItYXV0b2NvbXBsZXRlLmNvbXBvbmVudCc7XG5pbXBvcnQge01hdEF1dG9jb21wbGV0ZVRyaWdnZXJ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZSc7XG5pbXBvcnQge0ZpbHRlcn0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2RhdGEvZmlsdGVycy9maWx0ZXInO1xuaW1wb3J0IHtTb3J0fSBmcm9tICcuLi8uLi8uLi9jb21tb24vZGF0YS9zb3J0JztcbmltcG9ydCB7SURhdGFDb250ZXh0fSBmcm9tICcuLi8uLi8uLi9jb21tb24vZGF0YS9kYXRhLWNvbnRleHQvZGF0YS1jb250ZXh0JztcbmltcG9ydCB7VGV4dFJlc29sdmVyRm59IGZyb20gJy4uLy4uL3NlbGVjdC9lbGRlci1zZWxlY3QtYmFzZSc7XG5pbXBvcnQge1dvcmRQb3NpdGlvbkZpbmRlcn0gZnJvbSAnLi9tYW55L3dvcmQtcG9zaXRpb24tZmluZGVyJztcbmltcG9ydCB7RWxkZXJBdXRvY29tcGxldGVPcHRpb25TZWxlY3RlZH0gZnJvbSAnLi9lbGRlci1hdXRvY29tcGxldGUvZWxkZXItYXV0b2NvbXBsZXRlLW9wdGlvbi1zZWxlY3RlZCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tlbGRlckF1dG9jb21wbGV0ZU1hbnldJ1xufSlcbmV4cG9ydCBjbGFzcyBFbGRlckF1dG9jb21wbGV0ZU1hbnlEaXJlY3RpdmU8VD4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBxdWVyeUZpbHRlciA9ICdxdWVyeSc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGZpbHRlcnM6IEZpbHRlcltdID0gW107XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNvcnRzOiBTb3J0W10gPSBbXTtcblxuICAvKipcbiAgICogVGhlIHByb3BlcnR5IG9uIGEgc3VnZ2VzdGlvbiBvYmplY3Qgd2hpY2ggaXMgdXNlZFxuICAgKiBhcyB0aGUgZGlzcGxheSBhbmQgaW5zZXJ0IHZhbHVlLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHRleHRQcm9wZXJ0eTogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0ZXh0UHJvcGVydHlSZXNvbHZlckZuOiBUZXh0UmVzb2x2ZXJGbiA9IChvcHRpb246IGFueSkgPT4ge1xuICAgIGlmICghb3B0aW9uKSB7XG4gICAgICByZXR1cm4gb3B0aW9uO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIG9wdGlvbiA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiBvcHRpb24gYXMgc3RyaW5nO1xuICAgIH0gZWxzZSBpZiAodGhpcy50ZXh0UHJvcGVydHkpIHtcbiAgICAgIHJldHVybiBvcHRpb25bdGhpcy50ZXh0UHJvcGVydHldIGFzIHN0cmluZztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gIH07XG5cbiAgcHVibGljIHJlYWRvbmx5IGlucHV0S2V5dXAkID0gbmV3IFN1YmplY3Q8S2V5Ym9hcmRFdmVudD4oKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGlnbm9yZUtleXMgPSBbJ0Fycm93UmlnaHQnLCAnQXJyb3dVcCcsICdBcnJvd0Rvd24nLCAnQXJyb3dMZWZ0J107XG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcbiAgcHJpdmF0ZSByZWFkb25seSB3b3JkRmluZGVyOiBXb3JkUG9zaXRpb25GaW5kZXI7XG5cbiAgcHJpdmF0ZSBfZWxkZXJBdXRvY29tcGxldGU6IEVsZGVyQXV0b2NvbXBsZXRlQ29tcG9uZW50O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lBdXRvY29tcGxldGVCaW5kaW5nJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBhdXRvQ29tcGxldGVUcmlnZ2VyOiBNYXRBdXRvY29tcGxldGVUcmlnZ2VyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5wdXRSZWY6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD5cbiAgKSB7XG4gICAgdGhpcy53b3JkRmluZGVyID0gbmV3IFdvcmRQb3NpdGlvbkZpbmRlcigpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KCdlbGRlckF1dG9jb21wbGV0ZU1hbnknKVxuICBwdWJsaWMgc2V0IGF1dG9jb21wbGV0ZShhdXRvOiBFbGRlckF1dG9jb21wbGV0ZUNvbXBvbmVudCkge1xuICAgIHRoaXMuX2VsZGVyQXV0b2NvbXBsZXRlID0gYXV0bztcbiAgICB0aGlzLmRlc3Ryb3lBdXRvY29tcGxldGVCaW5kaW5nJC5uZXh0KCk7XG4gICAgaWYgKGF1dG8pIHtcbiAgICAgIGF1dG8ubWF0QXV0b2NvbXBsZXRlJFxuICAgICAgICAucGlwZShcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95QXV0b2NvbXBsZXRlQmluZGluZyQpLFxuICAgICAgICAgIGZpbHRlcihtYXRBdXRvID0+ICEhbWF0QXV0bylcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKG1hdEF1dG8gPT4gdGhpcy5hdXRvQ29tcGxldGVUcmlnZ2VyLmF1dG9jb21wbGV0ZSA9IG1hdEF1dG8pO1xuXG4gICAgICBhdXRvLm9wdGlvblNlbGVjdGVkLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3lBdXRvY29tcGxldGVCaW5kaW5nJClcbiAgICAgICkuc3Vic2NyaWJlKGV2ZW50ID0+IHRoaXMub25PcHRpb25TZWxlY3RlZChldmVudCkpXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBhdXRvY29tcGxldGUoKTogRWxkZXJBdXRvY29tcGxldGVDb21wb25lbnQge1xuICAgIHJldHVybiB0aGlzLl9lbGRlckF1dG9jb21wbGV0ZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGN1cnNvclBvc2l0aW9uKCk6IG51bWJlciB8IG51bGwge1xuICAgIGlmICh0aGlzLmlucHV0UmVmPy5uYXRpdmVFbGVtZW50KSB7XG4gICAgICByZXR1cm4gdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnNlbGVjdGlvblN0YXJ0O1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0IGN1cnNvclBvc2l0aW9uKHBvc2l0aW9uOiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudCkge1xuICAgICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnNlbGVjdGlvblN0YXJ0ID0gcG9zaXRpb247XG4gICAgICB0aGlzLmlucHV0UmVmLm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uRW5kID0gcG9zaXRpb247XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXQgZGF0YUNvbnRleHQoKTogSURhdGFDb250ZXh0PGFueT4ge1xuICAgIHJldHVybiB0aGlzLl9lbGRlckF1dG9jb21wbGV0ZS5kYXRhQ29udGV4dDtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBIb3N0IExpc3RlbmVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2tleXVwJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uS2V5VXAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBpZiAodGhpcy5pZ25vcmVLZXlzLnNvbWUoayA9PiBrID09PSBldmVudC5rZXkpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuaW5wdXRLZXl1cCQubmV4dChldmVudCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fZWxkZXJBdXRvY29tcGxldGUuZGlzcGxheVByb3BlcnR5UmVzb2x2ZXIgPSB0aGlzLnRleHRQcm9wZXJ0eVJlc29sdmVyRm47XG4gICAgdGhpcy5fZWxkZXJBdXRvY29tcGxldGUub3B0aW9uVmFsdWVDb252ZXJ0ZXJGbiA9IChvcHRpb246IFQpID0+IHtcbiAgICAgIGNvbnN0IHN1Z2dlc3Rpb24gPSB0aGlzLnJlc29sdmVTdWdnZXN0aW9uVGV4dChvcHRpb24pO1xuICAgICAgcmV0dXJuIHRoaXMuaW5zZXJ0U3VnZ2VzdGlvbihzdWdnZXN0aW9uKTtcbiAgICB9O1xuXG4gICAgbWVyZ2UoXG4gICAgICB0aGlzLmlucHV0S2V5dXAkLnBpcGUoXG4gICAgICAgIHNraXBXaGlsZShlID0+ICF0aGlzLl9lbGRlckF1dG9jb21wbGV0ZS5lbmFibGVkKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKDE1MCksXG4gICAgICAgIG1hcChlID0+IChlPy50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCk/LnZhbHVlKSxcbiAgICAgICAgbWFwKHZhbHVlID0+IHRoaXMuZXh0cmFjdFdvcmRBdEN1cnNvcih2YWx1ZSkpXG4gICAgICApLFxuICAgICAgdGhpcy5hdXRvY29tcGxldGUudHJpZ2dlclJlbG9hZCRcbiAgICApLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICBmaWx0ZXIodmFsdWUgPT4gIXZhbHVlIHx8IHR5cGVvZiAodmFsdWUpID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgKHZhbHVlKSA9PT0gJ251bWJlcicpXG4gICAgKS5zdWJzY3JpYmUoXG4gICAgICB2YWx1ZSA9PiB0aGlzLnVwZGF0ZVN1Z2dlc3Rpb25zKHZhbHVlKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICAgIHRoaXMuZGVzdHJveUF1dG9jb21wbGV0ZUJpbmRpbmckLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3lBdXRvY29tcGxldGVCaW5kaW5nJC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuICBwcml2YXRlIGV4dHJhY3RXb3JkQXRDdXJzb3IodmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuY3Vyc29yUG9zaXRpb24pIHtcbiAgICAgIGNvbnN0IGN1cnNvciA9IHRoaXMuY3Vyc29yUG9zaXRpb247XG4gICAgICByZXR1cm4gdGhpcy5leHRyYWN0V29yZEZyb20odmFsdWUsIGN1cnNvcik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY3Vyc29yQmVmb3JlQXV0b2NvbXBsZXRlOiBudW1iZXI7XG4gIHByaXZhdGUgcmVtZW1iZXJDdXJzb3JQb3NpdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLmN1cnNvckJlZm9yZUF1dG9jb21wbGV0ZSA9IHRoaXMuY3Vyc29yUG9zaXRpb247XG4gIH1cblxuICBwcml2YXRlIGV4dHJhY3RXb3JkRnJvbSh0ZXh0OiBzdHJpbmcsIHBvc2l0aW9uOiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGNvbnN0IHdvcmQgPSB0aGlzLndvcmRGaW5kZXIuZmluZFdvcmQodGV4dCwgcG9zaXRpb24pO1xuICAgIHJldHVybiB3b3JkLnZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVTdWdnZXN0aW9ucyh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgdW5kZWZpbmVkIHwgbnVsbCk6IHZvaWQge1xuICAgIGNvbnN0IGZpbHRlcnMgPSBbLi4udGhpcy5maWx0ZXJzLCBuZXcgRmlsdGVyKHRoaXMucXVlcnlGaWx0ZXIsIDxhbnk+dmFsdWUpXTtcbiAgICBjb25zdCBzb3J0cyA9IHRoaXMuc29ydHM7XG4gICAgaWYgKHRoaXMuZGF0YUNvbnRleHQpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHRoaXMucmVtZW1iZXJDdXJzb3JQb3NpdGlvbigpO1xuICAgICAgICB0aGlzLmRhdGFDb250ZXh0LnN0YXJ0KHNvcnRzLCBmaWx0ZXJzKTtcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICB0aGlzLmxvZy5lcnJvcignRmFpbGVkIHRvIHN0YXJ0IERhdGFDb250ZXh0IScsIGVycik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbnNlcnRTdWdnZXN0aW9uKHN1Z2dlc3Rpb246IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgY3VycmVudFZhbHVlID0gdGhpcy5jdXJyZW50SW5wdXRWYWx1ZSgpO1xuICAgIGlmKCFzdWdnZXN0aW9uKXtcbiAgICAgIHJldHVybiBjdXJyZW50VmFsdWU7XG4gICAgfVxuICAgIGlmICh0aGlzLmN1cnNvclBvc2l0aW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnN0IGN1cnNvciA9IHRoaXMuY3Vyc29yUG9zaXRpb247XG4gICAgICBjb25zdCByZXBsYWNlbWVudCA9IHRoaXMud29yZEZpbmRlci5yZXBsYWNlV29yZChjdXJyZW50VmFsdWUsIGN1cnNvciwgc3VnZ2VzdGlvbik7XG4gICAgICByZXR1cm4gcmVwbGFjZW1lbnQubmV3VGV4dDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5sb2cud2FybignSW5zZXJ0IG5vdCBwb3NzaWJsZSBhcyBubyBjdXJzb3ItcG9zaXRpb24gd2FzIGF2YWlsYWJsZSEnKTtcbiAgICAgIHJldHVybiBjdXJyZW50VmFsdWU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjdXJyZW50SW5wdXRWYWx1ZSgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGlucHV0ID0gdGhpcy5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudDtcbiAgICByZXR1cm4gaW5wdXQ/LnZhbHVlID8/ICcnO1xuICB9XG5cbiAgcHJpdmF0ZSByZXNvbHZlU3VnZ2VzdGlvblRleHQob3B0aW9uOiBUKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50ZXh0UHJvcGVydHlSZXNvbHZlckZuKG9wdGlvbik7XG4gIH1cblxuICBwcml2YXRlIG9uT3B0aW9uU2VsZWN0ZWQoXG4gICAgZXZlbnQ6IEVsZGVyQXV0b2NvbXBsZXRlT3B0aW9uU2VsZWN0ZWRcbiAgKTogdm9pZCB7XG4gICAgY29uc3Qgd29yZEF0Q3Vyc29yID0gdGhpcy53b3JkRmluZGVyLmZpbmRXb3JkKHRoaXMuY3VycmVudElucHV0VmFsdWUoKSwgdGhpcy5jdXJzb3JCZWZvcmVBdXRvY29tcGxldGUpO1xuICAgIGNvbnN0IGF1dG9jb21wbGV0ZWRQaHJhc2UgPSB0aGlzLnJlc29sdmVTdWdnZXN0aW9uVGV4dChldmVudC5lbnRpdHkpO1xuICAgIC8vIFRoZSB3b3JkQXRDdXJzb3IgbWlnaHQgbm90IGJlIHRoZSBmdWxsIGF1dG9jb21wbGV0ZWQgcGhyYXNlIChpZiB0aGVyZSBhcmUgbXVsdGlwbGUgd29yZHMpXG4gICAgdGhpcy5jdXJzb3JQb3NpdGlvbiA9IHdvcmRBdEN1cnNvci5zdGFydCArIGF1dG9jb21wbGV0ZWRQaHJhc2UubGVuZ3RoO1xuICB9XG59XG4iXX0=
|
|
@@ -2,7 +2,7 @@ import { Directive, HostListener, Input } from '@angular/core';
|
|
|
2
2
|
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
3
3
|
import { merge, Subject } from 'rxjs';
|
|
4
4
|
import { debounceTime, filter, map, skipWhile, takeUntil } from 'rxjs/operators';
|
|
5
|
-
import { Filter } from '../../../common/data/filter';
|
|
5
|
+
import { Filter } from '../../../common/data/filters/filter';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "@angular/material/autocomplete";
|
|
8
8
|
export class ElderAutocompleteDirective {
|
|
@@ -111,4 +111,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
111
111
|
type: Input,
|
|
112
112
|
args: ['elderAutocomplete']
|
|
113
113
|
}] } });
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXQvYXV0b2NvbXBsZXRlL2VsZGVyLWF1dG9jb21wbGV0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBR25ELE9BQU8sRUFBQyxLQUFLLEVBQUUsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBQyxZQUFZLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0UsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLDZCQUE2QixDQUFDOzs7QUFPbkQsTUFBTSxPQUFPLDBCQUEwQjtJQTJCckM7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ21CLG1CQUEyQztRQUEzQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXdCO1FBaEM5RDs7OztvRkFJNEU7UUFFM0QsV0FBTSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV4RCxlQUFVLEdBQUcsQ0FBQyxZQUFZLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNsRSxnQkFBVyxHQUFHLElBQUksT0FBTyxFQUFpQixDQUFDO1FBR3BELGdCQUFXLEdBQUcsT0FBTyxDQUFDO1FBR3RCLFlBQU8sR0FBYSxFQUFFLENBQUM7UUFHdkIsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUlULDJCQUFzQixHQUFHLElBQUks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QUFPLEdBQUcsRUFBRTtnQkFDWixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDOUMsMERBQTBEO2FBQzNEO1NBQ0Y7SUFDSCxDQUFDOzt1SEFsSVUsMEJBQTBCOzJHQUExQiwwQkFBMEI7MkZBQTFCLDBCQUEwQjtrQkFIdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO2lCQUNoQzs2R0FlUSxXQUFXO3NCQURqQixLQUFLO2dCQUlDLE9BQU87c0JBRGIsS0FBSztnQkFJQyxLQUFLO3NCQURYLEtBQUs7Z0JBNEJDLE9BQU87c0JBRGIsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBNEN0QixZQUFZO3NCQUR0QixLQUFLO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7TWF0QXV0b2NvbXBsZXRlVHJpZ2dlcn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7RWxkZXJBdXRvY29tcGxldGVDb21wb25lbnR9IGZyb20gJy4vZWxkZXItYXV0b2NvbXBsZXRlL2VsZGVyLWF1dG9jb21wbGV0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHttZXJnZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2RlYm91bmNlVGltZSwgZmlsdGVyLCBtYXAsIHNraXBXaGlsZSwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0ZpbHRlcn0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2RhdGEvZmlsdGVyJztcbmltcG9ydCB7SURhdGFDb250ZXh0fSBmcm9tICcuLi8uLi8uLi9jb21tb24vZGF0YS9kYXRhLWNvbnRleHQvZGF0YS1jb250ZXh0JztcbmltcG9ydCB7U29ydH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2RhdGEvc29ydCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tlbGRlckF1dG9jb21wbGV0ZV0nXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyQXV0b2NvbXBsZXRlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGlnbm9yZUtleXMgPSBbJ0Fycm93UmlnaHQnLCAnQXJyb3dVcCcsICdBcnJvd0Rvd24nLCAnQXJyb3dMZWZ0J107XG4gIHB1YmxpYyByZWFkb25seSBpbnB1dEtleXVwJCA9IG5ldyBTdWJqZWN0PEtleWJvYXJkRXZlbnQ+KCk7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHF1ZXJ5RmlsdGVyID0gJ3F1ZXJ5JztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZmlsdGVyczogRmlsdGVyW10gPSBbXTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc29ydHM6IFNvcnRbXSA9IFtdO1xuXG4gIHByaXZhdGUgX2VsZGVyQXV0b2NvbXBsZXRlOiBFbGRlckF1dG9jb21wbGV0ZUNvbXBvbmVudDtcblxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lNYXRBdXRvQmluZGluZyQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGF1dG9Db21wbGV0ZVRyaWdnZXI6IE1hdEF1dG9jb21wbGV0ZVRyaWdnZXJcbiAgKSB7XG4gIH1cblxuXG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEhvc3QgTGlzdGVuZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQEhvc3RMaXN0ZW5lcigna2V5dXAnLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25LZXlVcChldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmICh0aGlzLmlnbm9yZUtleXMuc29tZShrID0+IGsgPT09IGV2ZW50LmtleSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5pbnB1dEtleXVwJC5uZXh0KGV2ZW50KTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaWZlIEN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBtZXJnZShcbiAgICAgIHRoaXMuaW5wdXRLZXl1cCQucGlwZShcbiAgICAgICAgc2tpcFdoaWxlKGUgPT4gIXRoaXMuX2VsZGVyQXV0b2NvbXBsZXRlLmVuYWJsZWQpLFxuICAgICAgICBkZWJvdW5jZVRpbWUoMTUwKSxcbiAgICAgICAgbWFwKGUgPT4gKGU/LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KT8udmFsdWUpLFxuICAgICAgKSxcbiAgICAgIHRoaXMuYXV0b2NvbXBsZXRlLnRyaWdnZXJSZWxvYWQkXG4gICAgKS5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgZmlsdGVyKHZhbHVlID0+ICF2YWx1ZSB8fCB0eXBlb2YgKHZhbHVlKSA9PT0gJ3N0cmluZycgfHwgdHlwZW9mICh2YWx1ZSkgPT09ICdudW1iZXInKVxuICAgICkuc3Vic2NyaWJlKFxuICAgICAgdmFsdWUgPT4gdGhpcy51cGRhdGVTdWdnZXN0aW9ucyh2YWx1ZSlcbiAgICApO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgICB0aGlzLmRlc3Ryb3lNYXRBdXRvQmluZGluZyQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveU1hdEF1dG9CaW5kaW5nJC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KCdlbGRlckF1dG9jb21wbGV0ZScpXG4gIHB1YmxpYyBzZXQgYXV0b2NvbXBsZXRlKGF1dG86IEVsZGVyQXV0b2NvbXBsZXRlQ29tcG9uZW50KSB7XG4gICAgdGhpcy5fZWxkZXJBdXRvY29tcGxldGUgPSBhdXRvO1xuICAgIHRoaXMuZGVzdHJveU1hdEF1dG9CaW5kaW5nJC5uZXh0KCk7XG4gICAgaWYgKGF1dG8pIHtcbiAgICAgIGF1dG8ubWF0QXV0b2NvbXBsZXRlJFxuICAgICAgICAucGlwZShcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95TWF0QXV0b0JpbmRpbmckKSxcbiAgICAgICAgICBmaWx0ZXIobWF0QXV0byA9PiAhIW1hdEF1dG8pXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICBtYXRBdXRvID0+IHRoaXMuYXV0b0NvbXBsZXRlVHJpZ2dlci5hdXRvY29tcGxldGUgPSBtYXRBdXRvXG4gICAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBhdXRvY29tcGxldGUoKTogRWxkZXJBdXRvY29tcGxldGVDb21wb25lbnQge1xuICAgIHJldHVybiB0aGlzLl9lbGRlckF1dG9jb21wbGV0ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGF0YUNvbnRleHQoKTogSURhdGFDb250ZXh0PGFueT4ge1xuICAgIHJldHVybiB0aGlzLl9lbGRlckF1dG9jb21wbGV0ZS5kYXRhQ29udGV4dDtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgdXBkYXRlU3VnZ2VzdGlvbnModmFsdWU6IHN0cmluZyB8IG51bWJlciB8IHVuZGVmaW5lZCB8IG51bGwpOiB2b2lkIHtcbiAgICBjb25zdCBmaWx0ZXJzID0gWy4uLnRoaXMuZmlsdGVycywgbmV3IEZpbHRlcih0aGlzLnF1ZXJ5RmlsdGVyLCA8YW55PnZhbHVlKV07XG4gICAgY29uc3Qgc29ydHMgPSB0aGlzLnNvcnRzO1xuICAgIGlmICh0aGlzLmRhdGFDb250ZXh0KSB7XG4gICAgICB0cnkge1xuICAgICAgICB0aGlzLmRhdGFDb250ZXh0LnN0YXJ0KHNvcnRzLCBmaWx0ZXJzKTtcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcignRmFpbGVkIHRvIHN0YXJ0IERDIScsIGVycik7XG4gICAgICAgIC8vIHRoaXMudXBkYXRlU3RhdGUoRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZS5lcnJvcihlcnIpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXQvYXV0b2NvbXBsZXRlL2VsZGVyLWF1dG9jb21wbGV0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBR25ELE9BQU8sRUFBQyxLQUFLLEVBQUUsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBQyxZQUFZLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0UsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFDQUFxQyxDQUFDOzs7QUFPM0QsTUFBTSxPQUFPLDBCQUEwQjtJQTJCckM7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ21CLG1CQUEyQztRQUEzQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXdCO1FBaEM5RDs7OztvRkFJNEU7UUFFM0QsV0FBTSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV4RCxlQUFVLEdBQUcsQ0FBQyxZQUFZLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNsRSxnQkFBVyxHQUFHLElBQUksT0FBTyxFQUFpQixDQUFDO1FBR3BELGdCQUFXLEdBQUcsT0FBTyxDQUFDO1FBR3RCLFlBQU8sR0FBYSxFQUFFLENBQUM7UUFHdkIsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUlULDJCQUFzQixHQUFHLElBQUks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QUFPLEdBQUcsRUFBRTtnQkFDWixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDOUMsMERBQTBEO2FBQzNEO1NBQ0Y7SUFDSCxDQUFDOzt1SEFsSVUsMEJBQTBCOzJHQUExQiwwQkFBMEI7MkZBQTFCLDBCQUEwQjtrQkFIdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO2lCQUNoQzs2R0FlUSxXQUFXO3NCQURqQixLQUFLO2dCQUlDLE9BQU87c0JBRGIsS0FBSztnQkFJQyxLQUFLO3NCQURYLEtBQUs7Z0JBNEJDLE9BQU87c0JBRGIsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBNEN0QixZQUFZO3NCQUR0QixLQUFLO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7TWF0QXV0b2NvbXBsZXRlVHJpZ2dlcn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7RWxkZXJBdXRvY29tcGxldGVDb21wb25lbnR9IGZyb20gJy4vZWxkZXItYXV0b2NvbXBsZXRlL2VsZGVyLWF1dG9jb21wbGV0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHttZXJnZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2RlYm91bmNlVGltZSwgZmlsdGVyLCBtYXAsIHNraXBXaGlsZSwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0ZpbHRlcn0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2RhdGEvZmlsdGVycy9maWx0ZXInO1xuaW1wb3J0IHtJRGF0YUNvbnRleHR9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9kYXRhLWNvbnRleHQnO1xuaW1wb3J0IHtTb3J0fSBmcm9tICcuLi8uLi8uLi9jb21tb24vZGF0YS9zb3J0JztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2VsZGVyQXV0b2NvbXBsZXRlXSdcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJBdXRvY29tcGxldGVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgaWdub3JlS2V5cyA9IFsnQXJyb3dSaWdodCcsICdBcnJvd1VwJywgJ0Fycm93RG93bicsICdBcnJvd0xlZnQnXTtcbiAgcHVibGljIHJlYWRvbmx5IGlucHV0S2V5dXAkID0gbmV3IFN1YmplY3Q8S2V5Ym9hcmRFdmVudD4oKTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcXVlcnlGaWx0ZXIgPSAncXVlcnknO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmaWx0ZXJzOiBGaWx0ZXJbXSA9IFtdO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzb3J0czogU29ydFtdID0gW107XG5cbiAgcHJpdmF0ZSBfZWxkZXJBdXRvY29tcGxldGU6IEVsZGVyQXV0b2NvbXBsZXRlQ29tcG9uZW50O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveU1hdEF1dG9CaW5kaW5nJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0b0NvbXBsZXRlVHJpZ2dlcjogTWF0QXV0b2NvbXBsZXRlVHJpZ2dlclxuICApIHtcbiAgfVxuXG5cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogSG9zdCBMaXN0ZW5lciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASG9zdExpc3RlbmVyKCdrZXl1cCcsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbktleVVwKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgaWYgKHRoaXMuaWdub3JlS2V5cy5zb21lKGsgPT4gayA9PT0gZXZlbnQua2V5KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmlucHV0S2V5dXAkLm5leHQoZXZlbnQpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIG1lcmdlKFxuICAgICAgdGhpcy5pbnB1dEtleXVwJC5waXBlKFxuICAgICAgICBza2lwV2hpbGUoZSA9PiAhdGhpcy5fZWxkZXJBdXRvY29tcGxldGUuZW5hYmxlZCksXG4gICAgICAgIGRlYm91bmNlVGltZSgxNTApLFxuICAgICAgICBtYXAoZSA9PiAoZT8udGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpPy52YWx1ZSksXG4gICAgICApLFxuICAgICAgdGhpcy5hdXRvY29tcGxldGUudHJpZ2dlclJlbG9hZCRcbiAgICApLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICBmaWx0ZXIodmFsdWUgPT4gIXZhbHVlIHx8IHR5cGVvZiAodmFsdWUpID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgKHZhbHVlKSA9PT0gJ251bWJlcicpXG4gICAgKS5zdWJzY3JpYmUoXG4gICAgICB2YWx1ZSA9PiB0aGlzLnVwZGF0ZVN1Z2dlc3Rpb25zKHZhbHVlKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICAgIHRoaXMuZGVzdHJveU1hdEF1dG9CaW5kaW5nJC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95TWF0QXV0b0JpbmRpbmckLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASW5wdXQoJ2VsZGVyQXV0b2NvbXBsZXRlJylcbiAgcHVibGljIHNldCBhdXRvY29tcGxldGUoYXV0bzogRWxkZXJBdXRvY29tcGxldGVDb21wb25lbnQpIHtcbiAgICB0aGlzLl9lbGRlckF1dG9jb21wbGV0ZSA9IGF1dG87XG4gICAgdGhpcy5kZXN0cm95TWF0QXV0b0JpbmRpbmckLm5leHQoKTtcbiAgICBpZiAoYXV0bykge1xuICAgICAgYXV0by5tYXRBdXRvY29tcGxldGUkXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3lNYXRBdXRvQmluZGluZyQpLFxuICAgICAgICAgIGZpbHRlcihtYXRBdXRvID0+ICEhbWF0QXV0bylcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgIG1hdEF1dG8gPT4gdGhpcy5hdXRvQ29tcGxldGVUcmlnZ2VyLmF1dG9jb21wbGV0ZSA9IG1hdEF1dG9cbiAgICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IGF1dG9jb21wbGV0ZSgpOiBFbGRlckF1dG9jb21wbGV0ZUNvbXBvbmVudCB7XG4gICAgcmV0dXJuIHRoaXMuX2VsZGVyQXV0b2NvbXBsZXRlO1xuICB9XG5cbiAgcHVibGljIGdldCBkYXRhQ29udGV4dCgpOiBJRGF0YUNvbnRleHQ8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuX2VsZGVyQXV0b2NvbXBsZXRlLmRhdGFDb250ZXh0O1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSB1cGRhdGVTdWdnZXN0aW9ucyh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgdW5kZWZpbmVkIHwgbnVsbCk6IHZvaWQge1xuICAgIGNvbnN0IGZpbHRlcnMgPSBbLi4udGhpcy5maWx0ZXJzLCBuZXcgRmlsdGVyKHRoaXMucXVlcnlGaWx0ZXIsIDxhbnk+dmFsdWUpXTtcbiAgICBjb25zdCBzb3J0cyA9IHRoaXMuc29ydHM7XG4gICAgaWYgKHRoaXMuZGF0YUNvbnRleHQpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHRoaXMuZGF0YUNvbnRleHQuc3RhcnQoc29ydHMsIGZpbHRlcnMpO1xuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKCdGYWlsZWQgdG8gc3RhcnQgREMhJywgZXJyKTtcbiAgICAgICAgLy8gdGhpcy51cGRhdGVTdGF0ZShFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlLmVycm9yKGVycikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Directive, Input } from '@angular/core';
|
|
2
2
|
import { LocalListDataSource } from '../../../common/data/datasource/local/local-list-data-source';
|
|
3
|
-
import { Filter } from '../../../common/data/filter';
|
|
3
|
+
import { Filter } from '../../../common/data/filters/filter';
|
|
4
4
|
import { SortUtil } from '../../../common/utils/sort-util';
|
|
5
5
|
import { FilterUtil } from '../../../common/utils/filter-util';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
@@ -61,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
61
61
|
}], baseUnit: [{
|
|
62
62
|
type: Input
|
|
63
63
|
}] } });
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItdW5pdC1zZWxlY3QuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9tZWFzdXJlcy9kaXJlY3RpdmVzL2VsZGVyLXVuaXQtc2VsZWN0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUcvQyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSw4REFBOEQsQ0FBQztBQUdqRyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDM0QsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQzs7OztBQUs3RCxNQUFNLE9BQU8sd0JBQXdCO0lBRW5DOzs7O2dGQUk0RTtJQUU1RSxZQUNVLE1BQTRCLEVBQzVCLFdBQTZCO1FBRDdCLFdBQU0sR0FBTixNQUFNLENBQXNCO1FBQzVCLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtRQUVyQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsR0FBRyxjQUFjLENBQUM7UUFDekMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLEdBQUcsWUFBWSxDQUFDO1FBQzNDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxHQUFHLG1CQUFtQixDQUFDLElBQUksQ0FDL0MsV0FBVyxDQUFDLGVBQWUsRUFBRSxFQUM3QixNQUFNLEVBQ04sUUFBUSxDQUFDLFFBQVEsRUFDakIsVUFBVSxDQUFDLFVBQVUsQ0FDdEIsQ0FBQztJQUNKLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUUsSUFDVyxhQUFhLENBQUMsYUFBNEI7UUFDbkQsSUFBSSxhQUFhLEVBQUU7WUFDakIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQztTQUNoRTthQUFNO1lBQ0wsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3JCO0lBQ0gsQ0FBQztJQUVELElBQ1csUUFBUSxDQUFDLFFBQWM7UUFDaEMsSUFBSSxRQUFRLEVBQUU7WUFDWixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDbEU7YUFBTTtZQUNMLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztTQUNyQjtJQUNILENBQUM7SUFFRDs7OztnRkFJNEU7SUFFcEUsWUFBWTtRQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7cUhBdERVLHdCQUF3Qjt5R0FBeEIsd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBSHBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtpQkFDOUI7MElBOEJZLGFBQWE7c0JBRHZCLEtBQUs7Z0JBVUssUUFBUTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0VsZGVyU2VsZWN0Q29tcG9uZW50fSBmcm9tICcuLi8uLi9zZWxlY3Qvc2luZ2xlL2VsZGVyLXNlbGVjdC9lbGRlci1zZWxlY3QuY29tcG9uZW50JztcbmltcG9ydCB7RWxkZXJVbml0U2VydmljZX0gZnJvbSAnLi4vZWxkZXItdW5pdC5zZXJ2aWNlJztcbmltcG9ydCB7TG9jYWxMaXN0RGF0YVNvdXJjZX0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2RhdGEvZGF0YXNvdXJjZS9sb2NhbC9sb2NhbC1saXN0LWRhdGEtc291cmNlJztcbmltcG9ydCB7VW5pdH0gZnJvbSAnLi4vbW9kZWwvdW5pdCc7XG5pbXBvcnQge1VuaXREaW1lbnNpb259IGZyb20gJy4uL21vZGVsL3VuaXQtZGltZW5zaW9uJztcbmltcG9ydCB7RmlsdGVyfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZGF0YS9maWx0ZXJzL2ZpbHRlcic7XG5pbXBvcnQge1NvcnRVdGlsfSBmcm9tICcuLi8uLi8uLi9jb21tb24vdXRpbHMvc29ydC11dGlsJztcbmltcG9ydCB7RmlsdGVyVXRpbH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3V0aWxzL2ZpbHRlci11dGlsJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2VsZGVyVW5pdFNlbGVjdF0nXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyVW5pdFNlbGVjdERpcmVjdGl2ZSB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzZWxlY3Q6IEVsZGVyU2VsZWN0Q29tcG9uZW50LFxuICAgIHByaXZhdGUgdW5pdFNlcnZpY2U6IEVsZGVyVW5pdFNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5zZWxlY3QucGxhY2Vob2xkZXIgPSAnY29udGV4dC51bml0JztcbiAgICB0aGlzLnNlbGVjdC5kaXNwbGF5UHJvcGVydHkgPSAndW5pdFN5bWJvbCc7XG4gICAgdGhpcy5zZWxlY3QuZGF0YVNvdXJjZSA9IExvY2FsTGlzdERhdGFTb3VyY2UuZnJvbShcbiAgICAgIHVuaXRTZXJ2aWNlLmdldEFsbFVuaXRJbmZvcygpLFxuICAgICAgJ3VuaXQnLFxuICAgICAgU29ydFV0aWwuc29ydERhdGEsXG4gICAgICBGaWx0ZXJVdGlsLmZpbHRlckRhdGFcbiAgICApO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCB1bml0RGltZW5zaW9uKHVuaXREaW1lbnNpb246IFVuaXREaW1lbnNpb24pIHtcbiAgICBpZiAodW5pdERpbWVuc2lvbikge1xuICAgICAgdGhpcy5zZWxlY3QuZmlsdGVycyA9IFtuZXcgRmlsdGVyKCdkaW1lbnNpb24nLCB1bml0RGltZW5zaW9uKV07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmVzZXRGaWx0ZXJzKCk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBiYXNlVW5pdChiYXNlVW5pdDogVW5pdCkge1xuICAgIGlmIChiYXNlVW5pdCkge1xuICAgICAgdGhpcy51bml0RGltZW5zaW9uID0gdGhpcy51bml0U2VydmljZS5nZXRVbml0RGltZW5zaW9uKGJhc2VVbml0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5yZXNldEZpbHRlcnMoKTtcbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlc2V0RmlsdGVycygpIHtcbiAgICB0aGlzLnNlbGVjdC5maWx0ZXJzID0gW107XG4gIH1cblxufVxuIl19
|
|
@@ -6,7 +6,7 @@ import { ElderSelectValueDirective } from './elder-select-value.directive';
|
|
|
6
6
|
import { SelectionModelPopupDirective } from './popup/selection-model-popup.directive';
|
|
7
7
|
import { filter, map, switchMap } from 'rxjs/operators';
|
|
8
8
|
import { runInZone } from '../../common/utils/ng-zone-utils';
|
|
9
|
-
import { FilterContext } from '../../common/data/filter-context';
|
|
9
|
+
import { FilterContext } from '../../common/data/filters/filter-context';
|
|
10
10
|
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
11
11
|
import { ElderFormFieldControlBase } from '../../common/forms/elder-form-field-control-base.directive';
|
|
12
12
|
import * as i0 from "@angular/core";
|
|
@@ -281,4 +281,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
281
281
|
}], valueTemplate: [{
|
|
282
282
|
type: Input
|
|
283
283
|
}] } });
|
|
284
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2VsZWN0LWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3NlbGVjdC9lbGRlci1zZWxlY3QtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsV0FBVyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BJLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBQ2hFLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUduRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxxREFBcUQsQ0FBQztBQUd2RixPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RSxPQUFPLEVBQUMsNEJBQTRCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUVyRixPQUFPLEVBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDM0QsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQy9ELE9BQU8sRUFBZSxxQkFBcUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQzFFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDREQUE0RCxDQUFDOzs7OztBQU9yRyxNQUFNLE9BQU8seUJBQXlCO0lBeUJwQyxZQUNrQixJQUFhLEVBQ2IsT0FBZ0IsRUFDaEIsS0FBYTtRQUZiLFNBQUksR0FBSixJQUFJLENBQVM7UUFDYixZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQ2hCLFVBQUssR0FBTCxLQUFL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QkFLbkUsY0FBYztzQkFEcEIsWUFBWTt1QkFBQyw0QkFBNEI7Z0JBSW5DLGtCQUFrQjtzQkFEeEIsS0FBSztnQkFJQyxnQkFBZ0I7c0JBRHRCLEtBQUs7Z0JBUVUsY0FBYztzQkFEN0IsTUFBTTtnQkE0Q0ksU0FBUztzQkFEbkIsS0FBSztnQkFhSyxlQUFlO3NCQUR6QixLQUFLO2dCQU1LLHVCQUF1QjtzQkFEakMsS0FBSztnQkFNSyxPQUFPO3NCQURqQixLQUFLO2dCQVVLLFVBQVU7c0JBRHBCLEtBQUs7Z0JBUUssSUFBSTtzQkFEZCxLQUFLO2dCQThCSyxhQUFhO3NCQUR2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb250ZW50Q2hpbGQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbmplY3Rpb25Ub2tlbiwgSW5wdXQsIE5nWm9uZSwgT3V0cHV0LCBUZW1wbGF0ZVJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7SURhdGFDb250ZXh0fSBmcm9tICcuLi8uLi9jb21tb24vZGF0YS9kYXRhLWNvbnRleHQvZGF0YS1jb250ZXh0JztcbmltcG9ydCB7SURhdGFTb3VyY2V9IGZyb20gJy4uLy4uL2NvbW1vbi9kYXRhL2RhdGFzb3VyY2UvZGF0YS1zb3VyY2UnO1xuaW1wb3J0IHtEYXRhQ29udGV4dEJ1aWxkZXJ9IGZyb20gJy4uLy4uL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9kYXRhLWNvbnRleHQtYnVpbGRlcic7XG5pbXBvcnQge0ZpbHRlcn0gZnJvbSAnLi4vLi4vY29tbW9uL2RhdGEvZmlsdGVyJztcbmltcG9ydCB7U29ydH0gZnJvbSAnLi4vLi4vY29tbW9uL2RhdGEvc29ydCc7XG5pbXBvcnQge0VsZGVyU2VsZWN0VmFsdWVEaXJlY3RpdmV9IGZyb20gJy4vZWxkZXItc2VsZWN0LXZhbHVlLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1NlbGVjdGlvbk1vZGVsUG9wdXBEaXJlY3RpdmV9IGZyb20gJy4vcG9wdXAvc2VsZWN0aW9uLW1vZGVsLXBvcHVwLmRpcmVjdGl2ZSc7XG5pbXBvcnQge0RhdGFDb250ZXh0U3RhdHVzfSBmcm9tICcuLi8uLi9jb21tb24vZGF0YS9kYXRhLWNvbnRleHQvZGF0YS1jb250ZXh0LXN0YXR1cyc7XG5pbXBvcnQge2ZpbHRlciwgbWFwLCBzd2l0Y2hNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7cnVuSW5ab25lfSBmcm9tICcuLi8uLi9jb21tb24vdXRpbHMvbmctem9uZS11dGlscyc7XG5pbXBvcnQge0ZpbHRlckNvbnRleHR9IGZyb20gJy4uLy4uL2NvbW1vbi9kYXRhL2ZpbHRlci1jb250ZXh0JztcbmltcG9ydCB7Qm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHl9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQge0VsZGVyRm9ybUZpZWxkQ29udHJvbEJhc2V9IGZyb20gJy4uLy4uL2NvbW1vbi9mb3Jtcy9lbGRlci1mb3JtLWZpZWxkLWNvbnRyb2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtOZ0NvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7Rm9jdXNNb25pdG9yfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5leHBvcnQgdHlwZSBUZXh0UmVzb2x2ZXJGbiA9ICh2YWx1ZTogYW55KSA9PiBzdHJpbmc7XG5cbmV4cG9ydCBjbGFzcyBFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlIHtcblxuICBwdWJsaWMgc3RhdGljIGZyb21EYXRhQ29udGV4dChkY1N0YXRlOiBEYXRhQ29udGV4dFN0YXR1cyk6IEVsZGVyU2VsZWN0Q29tcG9uZW50U3RhdGUge1xuICAgIGlmIChkY1N0YXRlLmxvYWRpbmcpIHtcbiAgICAgIHJldHVybiBFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlLmxvYWRpbmcoKTtcbiAgICB9IGVsc2UgaWYgKGRjU3RhdGUuZXJyb3IpIHtcbiAgICAgIHJldHVybiBFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlLmVycm9yKGRjU3RhdGUuZXJyb3IpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZS5pZGxlKCk7XG4gICAgfVxuICB9XG5cblxuICBwdWJsaWMgc3RhdGljIGlkbGUoKTogRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZSB7XG4gICAgcmV0dXJuIG5ldyBFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlKHRydWUsIGZhbHNlLCBudWxsKTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgbG9hZGluZygpOiBFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlIHtcbiAgICByZXR1cm4gbmV3IEVsZGVyU2VsZWN0Q29tcG9uZW50U3RhdGUoZmFsc2UsIHRydWUsIG51bGwpO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBlcnJvcihlcnJvcjogc3RyaW5nKTogRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZSB7XG4gICAgcmV0dXJuIG5ldyBFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlKGZhbHNlLCBmYWxzZSwgZXJyb3IpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGlkbGU6IGJvb2xlYW4sXG4gICAgcHVibGljIHJlYWRvbmx5IGxvYWRpbmc6IGJvb2xlYW4sXG4gICAgcHVibGljIHJlYWRvbmx5IGVycm9yOiBzdHJpbmdcbiAgKSB7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IEVMREVSX1NFTEVDVF9CQVNFID0gbmV3IEluamVjdGlvblRva2VuPEVsZGVyU2VsZWN0QmFzZTxhbnksIGFueSwgYW55Pj4oJ0VsZGVyU2VsZWN0QmFzZScpO1xuXG5cbi8qKlxuICogQmFzZSBjb21wb25lbnQgZm9yIEVsZGVyIFNlbGVjdGlvbiBDb250cm9scy5cbiAqXG4gKiAgRWxkZXIgU2VsZWN0aW9uIGhhcyB0aGUgZm9sbG93aW5nIGFic3RyYWN0IGNvbmNlcHQ6XG4gKlxuICogLSBTdWdnZXN0aW9uLU1vZGVsOiBBIERhdGFTb3VyY2UgYW5kIGRlcml2ZWQgRGF0YUNvbnRleHQgZm9yIHRoZSAoYXV0by1jb21wbGV0ZSkgc3VnZ2VzdGlvbnMuXG4gKlxuICogQHBhcmFtIFRJRCBFbnRpdHkgSWQgVHlwZVxuICogQHBhcmFtIFQgRW50aXR5IFR5cGVcbiAqIEBwYXJhbSBUVmFsdWUgVmFsdWUgYmFja2luZyB0aGUgY29udHJvbC4gQ2FuIGJlIHRoZSBlbnRpdHksIHRoZSBpZCBvciBzb21ldGhpbmcgZWxzZS5cbiAqL1xuQERpcmVjdGl2ZSgpXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1jbGFzcy1zdWZmaXhcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBFbGRlclNlbGVjdEJhc2U8VElkLCBURW50aXR5LCBUVmFsdWU+IGV4dGVuZHMgRWxkZXJGb3JtRmllbGRDb250cm9sQmFzZTxUVmFsdWU+IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IF9sb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9maWx0ZXJDb250ZXh0ID0gbmV3IEZpbHRlckNvbnRleHQoKTtcblxuICBwcml2YXRlIF92YWx1ZUFzSWQ6IGJvb2xlYW47XG5cbiAgcHJvdGVjdGVkIHRpbWVvdXRBZnRlck1zID0gNTAwMDtcblxuICAvKipcbiAgICogRGVmaW5lIGlmIGVsZGVyLXNlbGVjdCBzaG91bGQgY2xlYW4gdXAgdGhlXG4gICAqIGRhdGEtY29udGV4dCByZXNvdXJjZXMgZm9yIHlvdS5cbiAgICpcbiAgICogSW4gbW9yZSBhZHZhbmNlZCBzY2VuYXJpb3Mgd2hlcmUgeW91IHBsYW4gdG8gcmV1c2UgdGhlIHNhbWUgZGF0YS1jb250ZXh0XG4gICAqIHNldCB0aGlzIHRvIGZhbHNlIGFuZCByZWxlYXNlIHRoZSByZXNvdXJjZXMgeW91cnNlbGYuIChkYXRhQ29udGV4dC5jbG9zZSlcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjbGVhblVwID0gdHJ1ZTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZGlzcGxheVByb3BlcnR5UmVzb2x2ZXIkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUZXh0UmVzb2x2ZXJGbj4oKHZhbHVlOiBURW50aXR5KSA9PiB0aGlzLnByb3BlcnR5U3RyaW5nVmFsdWUodmFsdWUsIG51bGwpKTtcblxuICAvKipcbiAgICogRW50aXR5IERhdGFDb250ZXh0LCB3aGljaCBpcyB1c2VkXG4gICAqIHRvIHNpZGUgbG9hZCBlbnRpdGllcyBieSBpZCBhbmQgYWxzb1xuICAgKiB0byBsb2FkIHN1Z2dlc3Rpb25zIHdoZW4gYXV0by1jb21wbGV0aW5nLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRhdGFDb250ZXh0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SURhdGFDb250ZXh0PFRFbnRpdHk+PihudWxsKTtcblxuICAvKipcbiAgICogUGFnZSBzaXplLiAoVXNlZCBmb3IgaW5maW5pdGUgc2Nyb2xsaW5nIGNodW5rcylcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwYWdlU2l6ZSA9IDEwO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBxdWVyeUZpbHRlciA9ICdxdWVyeSc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNvcnRzOiBTb3J0W10gPSBbXTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaWNvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgb3B0aW9uIHRlbXBsYXRlIHRvIGN1c3RvbWl6ZSB0aGUgdWkgbG9vay5cbiAgICovXG4gIEBDb250ZW50Q2hpbGQoRWxkZXJTZWxlY3RWYWx1ZURpcmVjdGl2ZSwge3JlYWQ6IFRlbXBsYXRlUmVmLCBzdGF0aWM6IHRydWV9KVxuICBwdWJsaWMgdmFsdWVUZW1wbGF0ZVF1ZXJ5OiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBwcml2YXRlIF92YWx1ZVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBDb250ZW50Q2hpbGQoU2VsZWN0aW9uTW9kZWxQb3B1cERpcmVjdGl2ZSlcbiAgcHVibGljIHNlbGVjdGlvblBvcHVwOiBTZWxlY3Rpb25Nb2RlbFBvcHVwRGlyZWN0aXZlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpc09wdGlvbkRpc2FibGVkRm46IChvcHRpb246IFRFbnRpdHkpID0+IGJvb2xlYW47XG5cbiAgQElucHV0KClcbiAgcHVibGljIGlzT3B0aW9uSGlkZGVuRm46IChvcHRpb246IFRFbnRpdHkpID0+IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEVtaXRzIGFuIGV2ZW50IHdoZW4gdGhlIHVzZXIgaGFzIGNsaWNrZWQgb24gdGhlIGN1cnJlbnRcbiAgICogc2VsZWN0ZWQgZW50aXR5LlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBjdXJyZW50Q2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8VEVudGl0eT4oKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgc3RhdGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlPihFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlLmlkbGUoKSk7XG4gIHB1YmxpYyByZWFkb25seSBtZXJnZWRTdGF0ZSQ6IE9ic2VydmFibGU8RWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZT47XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgem9uZTogTmdab25lLFxuICAgIGhvc3RSZWY6IEVsZW1lbnRSZWYsXG4gICAgY29udHJvbFR5cGU6IHN0cmluZyxcbiAgICBmb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvcixcbiAgICB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIG5nQ29udHJvbD86IE5nQ29udHJvbFxuICApIHtcbiAgICBzdXBlcihob3N0UmVmLCBjb250cm9sVHlwZSwgZm9jdXNNb25pdG9yLCB0cmFuc2xhdGVTZXJ2aWNlLCBuZ0NvbnRyb2wpO1xuXG4gICAgdGhpcy5tZXJnZWRTdGF0ZSQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuZGF0YUNvbnRleHQkLnBpcGUoZmlsdGVyKGRjID0+ICEhZGMpLCBzd2l0Y2hNYXAoZGMgPT4gZGMuc3RhdHVzKSksXG4gICAgICB0aGlzLnN0YXRlJFxuICAgIF0pLnBpcGUoXG4gICAgICBtYXAoKFtkY1N0YXRlLCBzdGF0ZV0pID0+IHtcbiAgICAgICAgaWYgKGRjU3RhdGUuaWRsZSkge1xuICAgICAgICAgIHJldHVybiBzdGF0ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZS5mcm9tRGF0YUNvbnRleHQoZGNTdGF0ZSk7XG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgcnVuSW5ab25lKHRoaXMuem9uZSlcbiAgICApO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCB2YWx1ZUFzSWQodmFsdWVBc0lkOiBCb29sZWFuSW5wdXQpIHtcbiAgICB0aGlzLl92YWx1ZUFzSWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWVBc0lkKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmFsdWVBc0lkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZUFzSWQ7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHByb3BlcnR5IHVzZWQgdG8gZGlzcGxheSB0aGUgdmFsdWVzLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBkaXNwbGF5UHJvcGVydHkocHJvcGVydHk6IHN0cmluZykge1xuICAgIHRoaXMuZGlzcGxheVByb3BlcnR5UmVzb2x2ZXIgPSAodmFsdWUgPT4gdGhpcy5wcm9wZXJ0eVN0cmluZ1ZhbHVlKHZhbHVlLCBwcm9wZXJ0eSkpO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBkaXNwbGF5UHJvcGVydHlSZXNvbHZlcihyZXNvbHZlcjogVGV4dFJlc29sdmVyRm4pIHtcbiAgICB0aGlzLmRpc3BsYXlQcm9wZXJ0eVJlc29sdmVyJC5uZXh0KHJlc29sdmVyKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZmlsdGVycyhmaWx0ZXJzOiBGaWx0ZXJbXSkge1xuICAgIHRoaXMucmVwbGFjZUZpbHRlcnMoZmlsdGVycyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZpbHRlcnMoKTogRmlsdGVyW10ge1xuICAgIHJldHVybiB0aGlzLl9maWx0ZXJDb250ZXh0LmZpbHRlcnNTbmFwc2hvdDtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGF0YVNvdXJjZShzb3VyY2U6IElEYXRhU291cmNlPFRFbnRpdHk+KSB7XG4gICAgdGhpcy5kYXRhQ29udGV4dCA9IERhdGFDb250ZXh0QnVpbGRlci5zdGFydDxURW50aXR5PigpXG4gICAgICAucGFnZVNpemUodGhpcy5wYWdlU2l6ZSlcbiAgICAgIC5idWlsZChzb3VyY2UpO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBkYXRhKGRhdGE6IEFycmF5PFRFbnRpdHk+IHwgSURhdGFDb250ZXh0PFRFbnRpdHk+KSB7XG5cbiAgICB0aGlzLmF1dG9DbGVhblVwKCk7XG5cbiAgICBpZiAoZGF0YSBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgICB0aGlzLmRhdGFDb250ZXh0ID0gRGF0YUNvbnRleHRCdWlsZGVyLnN0YXJ0PFRFbnRpdHk+KClcbiAgICAgICAgLmxvY2FsU29ydCgpXG4gICAgICAgIC5idWlsZExvY2FsKGRhdGEpOyAvLyBNZW1vcnkgbGVha1xuICAgICAgdGhpcy5kYXRhQ29udGV4dC5zdGFydCgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoZGF0YSkge1xuICAgICAgICB0aGlzLmRhdGFDb250ZXh0ID0gZGF0YTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZGF0YUNvbnRleHQgPSBEYXRhQ29udGV4dEJ1aWxkZXIuc3RhcnQ8VEVudGl0eT4oKS5idWlsZEVtcHR5KCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNldCBkYXRhQ29udGV4dChkYXRhOiBJRGF0YUNvbnRleHQ8VEVudGl0eT4pIHtcbiAgICB0aGlzLmF1dG9DbGVhblVwKCk7XG4gICAgdGhpcy5kYXRhQ29udGV4dCQubmV4dChkYXRhKTtcbiAgICB0aGlzLm9uRGF0YUNvbnRleHRDaGFuZ2VkKGRhdGEpO1xuICB9XG5cbiAgcHVibGljIGdldCBkYXRhQ29udGV4dCgpOiBJRGF0YUNvbnRleHQ8VEVudGl0eT4ge1xuICAgIHJldHVybiB0aGlzLmRhdGFDb250ZXh0JC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCB2YWx1ZVRlbXBsYXRlKHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+KSB7XG4gICAgdGhpcy5fdmFsdWVUZW1wbGF0ZSA9IHRlbXBsYXRlO1xuICB9XG5cbiAgcHVibGljIGdldCB2YWx1ZVRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPGFueT4ge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZVRlbXBsYXRlIHx8IHRoaXMudmFsdWVUZW1wbGF0ZVF1ZXJ5O1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGdldCBlcnJvclN0YXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuc3RhdGUkLmdldFZhbHVlKCkuZXJyb3IgfHwgc3VwZXIuZXJyb3JTdGF0ZTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBvbkN1cnJlbnRDbGlja2VkKGVudGl0eTogVEVudGl0eSk6IHZvaWQge1xuICAgIHRoaXMuY3VycmVudENsaWNrZWQuZW1pdChlbnRpdHkpO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZUZpbHRlcih1cGRhdGVkRmlsdGVyPzogRmlsdGVyKTogdm9pZCB7XG4gICAgdGhpcy5fZmlsdGVyQ29udGV4dC51cGRhdGVGaWx0ZXIodXBkYXRlZEZpbHRlcik7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlRmlsdGVycyh1cGRhdGVkRmlsdGVycz86IEZpbHRlcltdKTogdm9pZCB7XG4gICAgdGhpcy5fZmlsdGVyQ29udGV4dC51cGRhdGVGaWx0ZXJzKHVwZGF0ZWRGaWx0ZXJzKTtcbiAgfVxuXG4gIHB1YmxpYyByZXBsYWNlRmlsdGVycyhuZXdGaWx0ZXJzPzogRmlsdGVyW10pIHtcbiAgICB0aGlzLl9maWx0ZXJDb250ZXh0LnJlcGxhY2VGaWx0ZXJzKG5ld0ZpbHRlcnMpO1xuICB9XG5cbiAgcHVibGljIGNsZWFyRmlsdGVycygpOiB2b2lkIHtcbiAgICB0aGlzLl9maWx0ZXJDb250ZXh0LmNsZWFyKCk7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlU3RhdGUoc3RhdGU6IEVsZGVyU2VsZWN0Q29tcG9uZW50U3RhdGUpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlJC5uZXh0KHN0YXRlKTtcbiAgICB0aGlzLmVtaXRTdGF0ZUNoYW5nZSgpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGdldCBzaG91bGRMYWJlbEZsb2F0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmVycm9yU3RhdGUgfHwgISF0aGlzLmljb24gfHwgc3VwZXIuc2hvdWxkTGFiZWxGbG9hdDtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBBYnN0cmFjdCBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBPY2N1cnMgd2hlbiB0aGUgc3VnZ2VzdGlvbnMgZGF0YS1jb250ZXh0IGhhcyBjaGFuZ2VkXG4gICAqL1xuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgb25EYXRhQ29udGV4dENoYW5nZWQoZGF0YTogSURhdGFDb250ZXh0PFRFbnRpdHk+KTogdm9pZDtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogSW50ZXJuYWwgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcm90ZWN0ZWQgZ2V0RW50aXR5SWQoZW50aXR5OiBURW50aXR5KTogVElkIHtcbiAgICByZXR1cm4gdGhpcy5kYXRhQ29udGV4dD8uZGF0YVNvdXJjZT8uZ2V0SWQoZW50aXR5KSB8fCBlbnRpdHk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaXNFcXVhbChhOiBURW50aXR5LCBiOiBURW50aXR5KTogYm9vbGVhbiB7XG4gICAgaWYgKGEgPT09IGIpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBpZiAodGhpcy5pc0VtcHR5KGEpICYmIHRoaXMuaXNFbXB0eShiKSkgeyAvLyBIQUNLOiBIYW5kbGUgZW1wdHkgc3RyaW5nIGFzIHVuZGVmaW5lZC5cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5nZXRFbnRpdHlJZChhKSA9PT0gdGhpcy5nZXRFbnRpdHlJZChiKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpc0VtcHR5KGE6IFRFbnRpdHkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKGEgPT09IG51bGwgfHwgYSA9PT0gdW5kZWZpbmVkIHx8IDxhbnk+YSA9PT0gJycpO1xuICB9XG5cbiAgLyoqXG4gICAqIFBlcmZvcm1zIGNsZWFuIHVwIG9mIHRoZSBjdXJyZW50IGRhdGEgY29udGV4dCBpZiBhdXRvIGNsZWFuIHVwIGlzIGVuYWJsZWQuXG4gICAqL1xuICBwcm90ZWN0ZWQgYXV0b0NsZWFuVXAoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY2xlYW5VcCAmJiB0aGlzLmRhdGFDb250ZXh0KSB7XG4gICAgICB0aGlzLl9sb2dnZXIuZGVidWcoJ1JlbGVhc2luZyBEYXRhQ29udGV4dCByZXNvdXJjZXMgdG8gcHJldmVudCBtZW1vcnkgbGVhay4gW2NsZWFuVXBdPVwidHJ1ZVwiJyk7XG4gICAgICB0aGlzLmRhdGFDb250ZXh0LmNsb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIHByb3BlcnR5U3RyaW5nVmFsdWUodmFsdWU6IFRFbnRpdHksIHByb3BlcnR5OiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKHByb3BlcnR5KSB7XG4gICAgICByZXR1cm4gKDxhbnk+dmFsdWUpW3Byb3BlcnR5XTtcbiAgICB9XG5cbiAgICByZXR1cm4gU3RyaW5nKHZhbHVlKTtcbiAgfVxufVxuIl19
|
|
284
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2VsZWN0LWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3NlbGVjdC9lbGRlci1zZWxlY3QtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsV0FBVyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BJLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBQ2hFLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUduRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxxREFBcUQsQ0FBQztBQUd2RixPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RSxPQUFPLEVBQUMsNEJBQTRCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUVyRixPQUFPLEVBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDM0QsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBZSxxQkFBcUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQzFFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDREQUE0RCxDQUFDOzs7OztBQU9yRyxNQUFNLE9BQU8seUJBQXlCO0lBeUJwQyxZQUNrQixJQUFhLEVBQ2IsT0FBZ0IsRUFDaEIsS0FBYTtRQUZiLFNBQUksR0FBSixJQUFJLENBQVM7UUFDYixZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQ2hCLFVBQUssR0FBTCxLQUFL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QkFLbkUsY0FBYztzQkFEcEIsWUFBWTt1QkFBQyw0QkFBNEI7Z0JBSW5DLGtCQUFrQjtzQkFEeEIsS0FBSztnQkFJQyxnQkFBZ0I7c0JBRHRCLEtBQUs7Z0JBUVUsY0FBYztzQkFEN0IsTUFBTTtnQkE0Q0ksU0FBUztzQkFEbkIsS0FBSztnQkFhSyxlQUFlO3NCQUR6QixLQUFLO2dCQU1LLHVCQUF1QjtzQkFEakMsS0FBSztnQkFNSyxPQUFPO3NCQURqQixLQUFLO2dCQVVLLFVBQVU7c0JBRHBCLEtBQUs7Z0JBUUssSUFBSTtzQkFEZCxLQUFLO2dCQThCSyxhQUFhO3NCQUR2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb250ZW50Q2hpbGQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbmplY3Rpb25Ub2tlbiwgSW5wdXQsIE5nWm9uZSwgT3V0cHV0LCBUZW1wbGF0ZVJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7SURhdGFDb250ZXh0fSBmcm9tICcuLi8uLi9jb21tb24vZGF0YS9kYXRhLWNvbnRleHQvZGF0YS1jb250ZXh0JztcbmltcG9ydCB7SURhdGFTb3VyY2V9IGZyb20gJy4uLy4uL2NvbW1vbi9kYXRhL2RhdGFzb3VyY2UvZGF0YS1zb3VyY2UnO1xuaW1wb3J0IHtEYXRhQ29udGV4dEJ1aWxkZXJ9IGZyb20gJy4uLy4uL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9kYXRhLWNvbnRleHQtYnVpbGRlcic7XG5pbXBvcnQge0ZpbHRlcn0gZnJvbSAnLi4vLi4vY29tbW9uL2RhdGEvZmlsdGVycy9maWx0ZXInO1xuaW1wb3J0IHtTb3J0fSBmcm9tICcuLi8uLi9jb21tb24vZGF0YS9zb3J0JztcbmltcG9ydCB7RWxkZXJTZWxlY3RWYWx1ZURpcmVjdGl2ZX0gZnJvbSAnLi9lbGRlci1zZWxlY3QtdmFsdWUuZGlyZWN0aXZlJztcbmltcG9ydCB7U2VsZWN0aW9uTW9kZWxQb3B1cERpcmVjdGl2ZX0gZnJvbSAnLi9wb3B1cC9zZWxlY3Rpb24tbW9kZWwtcG9wdXAuZGlyZWN0aXZlJztcbmltcG9ydCB7RGF0YUNvbnRleHRTdGF0dXN9IGZyb20gJy4uLy4uL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9kYXRhLWNvbnRleHQtc3RhdHVzJztcbmltcG9ydCB7ZmlsdGVyLCBtYXAsIHN3aXRjaE1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtydW5JblpvbmV9IGZyb20gJy4uLy4uL2NvbW1vbi91dGlscy9uZy16b25lLXV0aWxzJztcbmltcG9ydCB7RmlsdGVyQ29udGV4dH0gZnJvbSAnLi4vLi4vY29tbW9uL2RhdGEvZmlsdGVycy9maWx0ZXItY29udGV4dCc7XG5pbXBvcnQge0Jvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5fSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHtFbGRlckZvcm1GaWVsZENvbnRyb2xCYXNlfSBmcm9tICcuLi8uLi9jb21tb24vZm9ybXMvZWxkZXItZm9ybS1maWVsZC1jb250cm9sLWJhc2UuZGlyZWN0aXZlJztcbmltcG9ydCB7TmdDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0ZvY3VzTW9uaXRvcn0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcblxuZXhwb3J0IHR5cGUgVGV4dFJlc29sdmVyRm4gPSAodmFsdWU6IGFueSkgPT4gc3RyaW5nO1xuXG5leHBvcnQgY2xhc3MgRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZSB7XG5cbiAgcHVibGljIHN0YXRpYyBmcm9tRGF0YUNvbnRleHQoZGNTdGF0ZTogRGF0YUNvbnRleHRTdGF0dXMpOiBFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlIHtcbiAgICBpZiAoZGNTdGF0ZS5sb2FkaW5nKSB7XG4gICAgICByZXR1cm4gRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZS5sb2FkaW5nKCk7XG4gICAgfSBlbHNlIGlmIChkY1N0YXRlLmVycm9yKSB7XG4gICAgICByZXR1cm4gRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZS5lcnJvcihkY1N0YXRlLmVycm9yKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIEVsZGVyU2VsZWN0Q29tcG9uZW50U3RhdGUuaWRsZSgpO1xuICAgIH1cbiAgfVxuXG5cbiAgcHVibGljIHN0YXRpYyBpZGxlKCk6IEVsZGVyU2VsZWN0Q29tcG9uZW50U3RhdGUge1xuICAgIHJldHVybiBuZXcgRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZSh0cnVlLCBmYWxzZSwgbnVsbCk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGxvYWRpbmcoKTogRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZSB7XG4gICAgcmV0dXJuIG5ldyBFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlKGZhbHNlLCB0cnVlLCBudWxsKTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZXJyb3IoZXJyb3I6IHN0cmluZyk6IEVsZGVyU2VsZWN0Q29tcG9uZW50U3RhdGUge1xuICAgIHJldHVybiBuZXcgRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZShmYWxzZSwgZmFsc2UsIGVycm9yKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBpZGxlOiBib29sZWFuLFxuICAgIHB1YmxpYyByZWFkb25seSBsb2FkaW5nOiBib29sZWFuLFxuICAgIHB1YmxpYyByZWFkb25seSBlcnJvcjogc3RyaW5nXG4gICkge1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBFTERFUl9TRUxFQ1RfQkFTRSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxFbGRlclNlbGVjdEJhc2U8YW55LCBhbnksIGFueT4+KCdFbGRlclNlbGVjdEJhc2UnKTtcblxuXG4vKipcbiAqIEJhc2UgY29tcG9uZW50IGZvciBFbGRlciBTZWxlY3Rpb24gQ29udHJvbHMuXG4gKlxuICogIEVsZGVyIFNlbGVjdGlvbiBoYXMgdGhlIGZvbGxvd2luZyBhYnN0cmFjdCBjb25jZXB0OlxuICpcbiAqIC0gU3VnZ2VzdGlvbi1Nb2RlbDogQSBEYXRhU291cmNlIGFuZCBkZXJpdmVkIERhdGFDb250ZXh0IGZvciB0aGUgKGF1dG8tY29tcGxldGUpIHN1Z2dlc3Rpb25zLlxuICpcbiAqIEBwYXJhbSBUSUQgRW50aXR5IElkIFR5cGVcbiAqIEBwYXJhbSBUIEVudGl0eSBUeXBlXG4gKiBAcGFyYW0gVFZhbHVlIFZhbHVlIGJhY2tpbmcgdGhlIGNvbnRyb2wuIENhbiBiZSB0aGUgZW50aXR5LCB0aGUgaWQgb3Igc29tZXRoaW5nIGVsc2UuXG4gKi9cbkBEaXJlY3RpdmUoKVxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtY2xhc3Mtc3VmZml4XG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRWxkZXJTZWxlY3RCYXNlPFRJZCwgVEVudGl0eSwgVFZhbHVlPiBleHRlbmRzIEVsZGVyRm9ybUZpZWxkQ29udHJvbEJhc2U8VFZhbHVlPiB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZmlsdGVyQ29udGV4dCA9IG5ldyBGaWx0ZXJDb250ZXh0KCk7XG5cbiAgcHJpdmF0ZSBfdmFsdWVBc0lkOiBib29sZWFuO1xuXG4gIHByb3RlY3RlZCB0aW1lb3V0QWZ0ZXJNcyA9IDUwMDA7XG5cbiAgLyoqXG4gICAqIERlZmluZSBpZiBlbGRlci1zZWxlY3Qgc2hvdWxkIGNsZWFuIHVwIHRoZVxuICAgKiBkYXRhLWNvbnRleHQgcmVzb3VyY2VzIGZvciB5b3UuXG4gICAqXG4gICAqIEluIG1vcmUgYWR2YW5jZWQgc2NlbmFyaW9zIHdoZXJlIHlvdSBwbGFuIHRvIHJldXNlIHRoZSBzYW1lIGRhdGEtY29udGV4dFxuICAgKiBzZXQgdGhpcyB0byBmYWxzZSBhbmQgcmVsZWFzZSB0aGUgcmVzb3VyY2VzIHlvdXJzZWxmLiAoZGF0YUNvbnRleHQuY2xvc2UpXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgY2xlYW5VcCA9IHRydWU7XG5cbiAgcHVibGljIHJlYWRvbmx5IGRpc3BsYXlQcm9wZXJ0eVJlc29sdmVyJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VGV4dFJlc29sdmVyRm4+KCh2YWx1ZTogVEVudGl0eSkgPT4gdGhpcy5wcm9wZXJ0eVN0cmluZ1ZhbHVlKHZhbHVlLCBudWxsKSk7XG5cbiAgLyoqXG4gICAqIEVudGl0eSBEYXRhQ29udGV4dCwgd2hpY2ggaXMgdXNlZFxuICAgKiB0byBzaWRlIGxvYWQgZW50aXRpZXMgYnkgaWQgYW5kIGFsc29cbiAgICogdG8gbG9hZCBzdWdnZXN0aW9ucyB3aGVuIGF1dG8tY29tcGxldGluZy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBkYXRhQ29udGV4dCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElEYXRhQ29udGV4dDxURW50aXR5Pj4obnVsbCk7XG5cbiAgLyoqXG4gICAqIFBhZ2Ugc2l6ZS4gKFVzZWQgZm9yIGluZmluaXRlIHNjcm9sbGluZyBjaHVua3MpXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcGFnZVNpemUgPSAxMDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcXVlcnlGaWx0ZXIgPSAncXVlcnknO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzb3J0czogU29ydFtdID0gW107XG5cbiAgQElucHV0KClcbiAgcHVibGljIGljb246IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG9wdGlvbiB0ZW1wbGF0ZSB0byBjdXN0b21pemUgdGhlIHVpIGxvb2suXG4gICAqL1xuICBAQ29udGVudENoaWxkKEVsZGVyU2VsZWN0VmFsdWVEaXJlY3RpdmUsIHtyZWFkOiBUZW1wbGF0ZVJlZiwgc3RhdGljOiB0cnVlfSlcbiAgcHVibGljIHZhbHVlVGVtcGxhdGVRdWVyeTogVGVtcGxhdGVSZWY8YW55PjtcbiAgcHJpdmF0ZSBfdmFsdWVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAQ29udGVudENoaWxkKFNlbGVjdGlvbk1vZGVsUG9wdXBEaXJlY3RpdmUpXG4gIHB1YmxpYyBzZWxlY3Rpb25Qb3B1cDogU2VsZWN0aW9uTW9kZWxQb3B1cERpcmVjdGl2ZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaXNPcHRpb25EaXNhYmxlZEZuOiAob3B0aW9uOiBURW50aXR5KSA9PiBib29sZWFuO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpc09wdGlvbkhpZGRlbkZuOiAob3B0aW9uOiBURW50aXR5KSA9PiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBFbWl0cyBhbiBldmVudCB3aGVuIHRoZSB1c2VyIGhhcyBjbGlja2VkIG9uIHRoZSBjdXJyZW50XG4gICAqIHNlbGVjdGVkIGVudGl0eS5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgY3VycmVudENsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFRFbnRpdHk+KCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IHN0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZT4oRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZS5pZGxlKCkpO1xuICBwdWJsaWMgcmVhZG9ubHkgbWVyZ2VkU3RhdGUkOiBPYnNlcnZhYmxlPEVsZGVyU2VsZWN0Q29tcG9uZW50U3RhdGU+O1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHpvbmU6IE5nWm9uZSxcbiAgICBob3N0UmVmOiBFbGVtZW50UmVmLFxuICAgIGNvbnRyb2xUeXBlOiBzdHJpbmcsXG4gICAgZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBuZ0NvbnRyb2w/OiBOZ0NvbnRyb2xcbiAgKSB7XG4gICAgc3VwZXIoaG9zdFJlZiwgY29udHJvbFR5cGUsIGZvY3VzTW9uaXRvciwgdHJhbnNsYXRlU2VydmljZSwgbmdDb250cm9sKTtcblxuICAgIHRoaXMubWVyZ2VkU3RhdGUkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLmRhdGFDb250ZXh0JC5waXBlKGZpbHRlcihkYyA9PiAhIWRjKSwgc3dpdGNoTWFwKGRjID0+IGRjLnN0YXR1cykpLFxuICAgICAgdGhpcy5zdGF0ZSRcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKChbZGNTdGF0ZSwgc3RhdGVdKSA9PiB7XG4gICAgICAgIGlmIChkY1N0YXRlLmlkbGUpIHtcbiAgICAgICAgICByZXR1cm4gc3RhdGU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIEVsZGVyU2VsZWN0Q29tcG9uZW50U3RhdGUuZnJvbURhdGFDb250ZXh0KGRjU3RhdGUpO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIHJ1bkluWm9uZSh0aGlzLnpvbmUpXG4gICAgKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdmFsdWVBc0lkKHZhbHVlQXNJZDogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fdmFsdWVBc0lkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlQXNJZCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZhbHVlQXNJZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWVBc0lkO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBwcm9wZXJ0eSB1c2VkIHRvIGRpc3BsYXkgdGhlIHZhbHVlcy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGlzcGxheVByb3BlcnR5KHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICB0aGlzLmRpc3BsYXlQcm9wZXJ0eVJlc29sdmVyID0gKHZhbHVlID0+IHRoaXMucHJvcGVydHlTdHJpbmdWYWx1ZSh2YWx1ZSwgcHJvcGVydHkpKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGlzcGxheVByb3BlcnR5UmVzb2x2ZXIocmVzb2x2ZXI6IFRleHRSZXNvbHZlckZuKSB7XG4gICAgdGhpcy5kaXNwbGF5UHJvcGVydHlSZXNvbHZlciQubmV4dChyZXNvbHZlcik7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGZpbHRlcnMoZmlsdGVyczogRmlsdGVyW10pIHtcbiAgICB0aGlzLnJlcGxhY2VGaWx0ZXJzKGZpbHRlcnMpO1xuICB9XG5cbiAgcHVibGljIGdldCBmaWx0ZXJzKCk6IEZpbHRlcltdIHtcbiAgICByZXR1cm4gdGhpcy5fZmlsdGVyQ29udGV4dC5maWx0ZXJzU25hcHNob3Q7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRhdGFTb3VyY2Uoc291cmNlOiBJRGF0YVNvdXJjZTxURW50aXR5Pikge1xuICAgIHRoaXMuZGF0YUNvbnRleHQgPSBEYXRhQ29udGV4dEJ1aWxkZXIuc3RhcnQ8VEVudGl0eT4oKVxuICAgICAgLnBhZ2VTaXplKHRoaXMucGFnZVNpemUpXG4gICAgICAuYnVpbGQoc291cmNlKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGF0YShkYXRhOiBBcnJheTxURW50aXR5PiB8IElEYXRhQ29udGV4dDxURW50aXR5Pikge1xuXG4gICAgdGhpcy5hdXRvQ2xlYW5VcCgpO1xuXG4gICAgaWYgKGRhdGEgaW5zdGFuY2VvZiBBcnJheSkge1xuICAgICAgdGhpcy5kYXRhQ29udGV4dCA9IERhdGFDb250ZXh0QnVpbGRlci5zdGFydDxURW50aXR5PigpXG4gICAgICAgIC5sb2NhbFNvcnQoKVxuICAgICAgICAuYnVpbGRMb2NhbChkYXRhKTsgLy8gTWVtb3J5IGxlYWtcbiAgICAgIHRoaXMuZGF0YUNvbnRleHQuc3RhcnQoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgdGhpcy5kYXRhQ29udGV4dCA9IGRhdGE7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmRhdGFDb250ZXh0ID0gRGF0YUNvbnRleHRCdWlsZGVyLnN0YXJ0PFRFbnRpdHk+KCkuYnVpbGRFbXB0eSgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZXQgZGF0YUNvbnRleHQoZGF0YTogSURhdGFDb250ZXh0PFRFbnRpdHk+KSB7XG4gICAgdGhpcy5hdXRvQ2xlYW5VcCgpO1xuICAgIHRoaXMuZGF0YUNvbnRleHQkLm5leHQoZGF0YSk7XG4gICAgdGhpcy5vbkRhdGFDb250ZXh0Q2hhbmdlZChkYXRhKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGF0YUNvbnRleHQoKTogSURhdGFDb250ZXh0PFRFbnRpdHk+IHtcbiAgICByZXR1cm4gdGhpcy5kYXRhQ29udGV4dCQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdmFsdWVUZW1wbGF0ZSh0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xuICAgIHRoaXMuX3ZhbHVlVGVtcGxhdGUgPSB0ZW1wbGF0ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmFsdWVUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlZjxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWVUZW1wbGF0ZSB8fCB0aGlzLnZhbHVlVGVtcGxhdGVRdWVyeTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgZXJyb3JTdGF0ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLnN0YXRlJC5nZXRWYWx1ZSgpLmVycm9yIHx8IHN1cGVyLmVycm9yU3RhdGU7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgb25DdXJyZW50Q2xpY2tlZChlbnRpdHk6IFRFbnRpdHkpOiB2b2lkIHtcbiAgICB0aGlzLmN1cnJlbnRDbGlja2VkLmVtaXQoZW50aXR5KTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVGaWx0ZXIodXBkYXRlZEZpbHRlcj86IEZpbHRlcik6IHZvaWQge1xuICAgIHRoaXMuX2ZpbHRlckNvbnRleHQudXBkYXRlRmlsdGVyKHVwZGF0ZWRGaWx0ZXIpO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZUZpbHRlcnModXBkYXRlZEZpbHRlcnM/OiBGaWx0ZXJbXSk6IHZvaWQge1xuICAgIHRoaXMuX2ZpbHRlckNvbnRleHQudXBkYXRlRmlsdGVycyh1cGRhdGVkRmlsdGVycyk7XG4gIH1cblxuICBwdWJsaWMgcmVwbGFjZUZpbHRlcnMobmV3RmlsdGVycz86IEZpbHRlcltdKSB7XG4gICAgdGhpcy5fZmlsdGVyQ29udGV4dC5yZXBsYWNlRmlsdGVycyhuZXdGaWx0ZXJzKTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhckZpbHRlcnMoKTogdm9pZCB7XG4gICAgdGhpcy5fZmlsdGVyQ29udGV4dC5jbGVhcigpO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZVN0YXRlKHN0YXRlOiBFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZSQubmV4dChzdGF0ZSk7XG4gICAgdGhpcy5lbWl0U3RhdGVDaGFuZ2UoKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgc2hvdWxkTGFiZWxGbG9hdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5lcnJvclN0YXRlIHx8ICEhdGhpcy5pY29uIHx8IHN1cGVyLnNob3VsZExhYmVsRmxvYXQ7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQWJzdHJhY3QgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogT2NjdXJzIHdoZW4gdGhlIHN1Z2dlc3Rpb25zIGRhdGEtY29udGV4dCBoYXMgY2hhbmdlZFxuICAgKi9cbiAgcHJvdGVjdGVkIGFic3RyYWN0IG9uRGF0YUNvbnRleHRDaGFuZ2VkKGRhdGE6IElEYXRhQ29udGV4dDxURW50aXR5Pik6IHZvaWQ7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEludGVybmFsIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJvdGVjdGVkIGdldEVudGl0eUlkKGVudGl0eTogVEVudGl0eSk6IFRJZCB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YUNvbnRleHQ/LmRhdGFTb3VyY2U/LmdldElkKGVudGl0eSkgfHwgZW50aXR5O1xuICB9XG5cbiAgcHJvdGVjdGVkIGlzRXF1YWwoYTogVEVudGl0eSwgYjogVEVudGl0eSk6IGJvb2xlYW4ge1xuICAgIGlmIChhID09PSBiKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgaWYgKHRoaXMuaXNFbXB0eShhKSAmJiB0aGlzLmlzRW1wdHkoYikpIHsgLy8gSEFDSzogSGFuZGxlIGVtcHR5IHN0cmluZyBhcyB1bmRlZmluZWQuXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZ2V0RW50aXR5SWQoYSkgPT09IHRoaXMuZ2V0RW50aXR5SWQoYik7XG4gIH1cblxuICBwcm90ZWN0ZWQgaXNFbXB0eShhOiBURW50aXR5KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChhID09PSBudWxsIHx8IGEgPT09IHVuZGVmaW5lZCB8fCA8YW55PmEgPT09ICcnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQZXJmb3JtcyBjbGVhbiB1cCBvZiB0aGUgY3VycmVudCBkYXRhIGNvbnRleHQgaWYgYXV0byBjbGVhbiB1cCBpcyBlbmFibGVkLlxuICAgKi9cbiAgcHJvdGVjdGVkIGF1dG9DbGVhblVwKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNsZWFuVXAgJiYgdGhpcy5kYXRhQ29udGV4dCkge1xuICAgICAgdGhpcy5fbG9nZ2VyLmRlYnVnKCdSZWxlYXNpbmcgRGF0YUNvbnRleHQgcmVzb3VyY2VzIHRvIHByZXZlbnQgbWVtb3J5IGxlYWsuIFtjbGVhblVwXT1cInRydWVcIicpO1xuICAgICAgdGhpcy5kYXRhQ29udGV4dC5jbG9zZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBwcm9wZXJ0eVN0cmluZ1ZhbHVlKHZhbHVlOiBURW50aXR5LCBwcm9wZXJ0eTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmIChwcm9wZXJ0eSkge1xuICAgICAgcmV0dXJuICg8YW55PnZhbHVlKVtwcm9wZXJ0eV07XG4gICAgfVxuXG4gICAgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -123,4 +123,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
123
123
|
type: Input,
|
|
124
124
|
args: ['elderSelectionModelPopupTransform']
|
|
125
125
|
}] } });
|
|
126
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLW1vZGVsLXBvcHVwLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0L3BvcHVwL3NlbGVjdGlvbi1tb2RlbC1wb3B1cC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsS0FBSyxFQUFnQyxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsT0FBTyxFQUVMLGlDQUFpQyxFQUNsQyxNQUFNLG1FQUFtRSxDQUFDO0FBQzNFLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQUMsS0FBSyxFQUFjLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQWMsY0FBYyxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFHdEYsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDM0YsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sdURBQXVELENBQUM7Ozs7O0FBSW5HLE1BQU0sVUFBVSxvQkFBb0I7SUFDbEMsT0FBTyxJQUFJLGNBQWMsRUFBTyxDQUFDO0FBQ25DLENBQUM7QUFFRCxNQUFNLFVBQVUsNkJBQTZCO0lBQzNDLE9BQU8sSUFBSSw0QkFBNEIsRUFBRSxDQUFDO0FBQzVDLENBQUM7QUFpQkQsTUFBTSxPQUFPLDRCQUE0QjtJQWlCdkM7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ21CLFdBQTZCLEVBQzdCLGFBQStCLEVBQy9CLE1BQWlCLEVBQ2pCLHVCQUFxRCxFQUNyRCxjQUFtQyxFQUNuQyxpQkFBb0M7UUFMcEMsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO1FBQzdCLGtCQUFhLEdBQWIs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U0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsNEJBQTRCO29CQUN0QyxRQUFRLEVBQUUsMEJBQTBCO29CQUNwQyxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGNBQWM7NEJBQ3ZCLFVBQVUsRUFBRSxvQkFBb0I7eUJBQ2pDO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSw0QkFBNEI7NEJBQ3JDLFVBQVUsRUFBRSw2QkFBNkI7eUJBQzFDO3dCQUNELG1CQUFtQixDQUFDLGVBQWUsQ0FBQyx1RUFBdUU7cUJBQzVHO2lCQUNGO2lRQWNZLGlDQUFpQztzQkFEM0MsS0FBSzt1QkFBQyxtQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBEaXJlY3RpdmUsIElucHV0LCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7TWF0RGlhbG9nLCBNYXREaWFsb2dSZWZ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQge1xuICBJU2VsZWN0aW9uTW9kZWxEaWFsb2dPcHRpb25zLFxuICBUZW1wbGF0ZWRTZWxlY3Rpb25EaWFsb2dDb21wb25lbnRcbn0gZnJvbSAnLi90ZW1wbGF0ZWQtc2VsZWN0aW9uLWRpYWxvZy90ZW1wbGF0ZWQtc2VsZWN0aW9uLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHtzd2l0Y2hNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7RU1QVFksIE9ic2VydmFibGUsIG9mfSBmcm9tICdyeGpzJztcbmltcG9ydCB7S2V5R2V0dGVyRm4sIFNlbGVjdGlvbk1vZGVsfSBmcm9tICcuLi8uLi8uLi9jb21tb24vc2VsZWN0aW9uL3NlbGVjdGlvbi1tb2RlbCc7XG5pbXBvcnQge1NvcnR9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9kYXRhL3NvcnQnO1xuaW1wb3J0IHtGaWx0ZXJ9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9kYXRhL2ZpbHRlcic7XG5pbXBvcnQge0VsZGVyVGFibGVQcm92aWRlcnN9IGZyb20gJy4uLy4uL2RhdGEtdmlldy90YWJsZS9tb2RlbC9lbGRlci10YWJsZS1tb2RlbC1wcm92aWRlcic7XG5pbXBvcnQge0VsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXJ9IGZyb20gJy4uLy4uL2RhdGEtdmlldy9iYXNlL2VsZGVyLWRhdGEtdmlldy1vcHRpb25zLXByb3ZpZGVyJztcblxuXG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTZWxlY3Rpb25Nb2RlbCgpOiBTZWxlY3Rpb25Nb2RlbDxhbnk+IHtcbiAgcmV0dXJuIG5ldyBTZWxlY3Rpb25Nb2RlbDxhbnk+KCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVEYXRhVmlld09wdGlvbnNQcm92aWRlcigpOiBFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyIHtcbiAgcmV0dXJuIG5ldyBFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyKCk7XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tlbGRlclNlbGVjdGlvbk1vZGVsUG9wdXBdJyxcbiAgZXhwb3J0QXM6ICdlbGRlclNlbGVjdGlvbk1vZGVsUG9wdXAnLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBTZWxlY3Rpb25Nb2RlbCxcbiAgICAgIHVzZUZhY3Rvcnk6IGNyZWF0ZVNlbGVjdGlvbk1vZGVsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyLFxuICAgICAgdXNlRmFjdG9yeTogY3JlYXRlRGF0YVZpZXdPcHRpb25zUHJvdmlkZXJcbiAgICB9LFxuICAgIEVsZGVyVGFibGVQcm92aWRlcnMuQ2xlYXJUYWJsZU1vZGVsIC8vIFNpbmNlIHRoaXMgcG9wdXAgaXMgZnJlcXVlbnRseSB1c2VkIGluc2lkZSBhbiBlbGRlci10YWJsZSBzZWFyY2ggYm94XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0aW9uTW9kZWxQb3B1cERpcmVjdGl2ZSB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgX3RyYW5zZm9ybWVyRm46IChvOiBhbnkpID0+IGFueTtcblxuICBASW5wdXQoJ2VsZGVyU2VsZWN0aW9uTW9kZWxQb3B1cFRyYW5zZm9ybScpXG4gIHB1YmxpYyBzZXQgZWxkZXJTZWxlY3Rpb25Nb2RlbFBvcHVwVHJhbnNmb3JtKGZuOiAobzogYW55KSA9PiBhbnkpIHtcbiAgICB0aGlzLl90cmFuc2Zvcm1lckZuID0gZm47XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRpYWxvZzogTWF0RGlhbG9nLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGF0YVZpZXdPcHRpb25zUHJvdmlkZXI6IEVsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXIsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZWxlY3Rpb25Nb2RlbDogU2VsZWN0aW9uTW9kZWw8YW55PixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7IH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogTGV0IHRoZSB1c2VyIGNob29zZSBzb21lIGVudGl0aWVzIGFuZCByZXR1cm4gdGhlIHNlbGVjdGlvbi5cbiAgICovXG4gIHB1YmxpYyBjaG9vc2UoXG4gICAga2V5R2V0dGVyOiBLZXlHZXR0ZXJGbjxhbnk+LFxuICAgIGN1cnJlbnRTZWxlY3Rpb246IGFueVtdLFxuICAgIGZpbHRlcnM/OiBGaWx0ZXJbXSxcbiAgICBzb3J0cz86IFNvcnRbXSxcbiAgICBtdWx0aSA9IGZhbHNlXG4gICk6IE9ic2VydmFibGU8YW55W10+IHtcblxuICAgIHRoaXMuZGF0YVZpZXdPcHRpb25zUHJvdmlkZXIudXBkYXRlT3B0aW9ucyhcbiAgICAgIG9wdGlvbnMgPT4gb3B0aW9uc1xuICAgICAgICAud2l0aEZpbHRlcnMoZmlsdGVycyB8fCBbXSlcbiAgICAgICAgLndpdGhTb3J0cyhzb3J0cyB8fCBbXSlcbiAgICAgICAgLndpdGhTZWxlY3Rpb25NdWx0aUVuYWJsZWQobXVsdGkpXG4gICAgICAgIC53aXRoSW50ZXJhY3Rpb25Nb2RlKCdzZWxlY3Rpb24nKVxuICAgIClcblxuICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwuaXNNdWx0aXBsZVNlbGVjdGlvbiA9IG11bHRpO1xuICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwua2V5R2V0dGVyRm4gPSBrZXlHZXR0ZXI7XG4gICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC5yZXBsYWNlU2VsZWN0aW9uKGN1cnJlbnRTZWxlY3Rpb24pO1xuXG4gICAgdGhpcy5sb2cuaW5mbygnUmVwbGFjZWQgc2VsZWN0aW9uIHBvcHVwIHdpdGggY3VycmVudCAnK2N1cnJlbnRTZWxlY3Rpb24ubGVuZ3RoKycgZW50aXRpZXM6JywgY3VycmVudFNlbGVjdGlvbilcblxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMub3BlblNlbGVjdERpYWxvZygpO1xuXG4gICAgLy8gVGhpcyBmaXhlcyBkaWFsb2cgcmVuZGVyaW5nIHdoZW4gdGhlIGJyb3dzZXIgdGVtcGxhdGVcbiAgICAvLyB2aWV3IGNvbnRhaW5lciBpcyBvdXRzaWRlIHRoZSBpbnZva2luZyBjb250cm9sLCB3aGljaFxuICAgIC8vIGhhcHBlbnMgd2hlbiB1c2luZyBuZy1jb250ZW50IHByb2plY3Rpb24uXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcblxuICAgIHJldHVybiBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKChjaG9zZW5FbnRpdGllczogYW55W10pID0+IHtcbiAgICAgICAgaWYgKGNob3NlbkVudGl0aWVzKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuX3RyYW5zZm9ybWVyRm5cbiAgICAgICAgICAgID8gb2YoY2hvc2VuRW50aXRpZXMubWFwKHZhbHVlID0+IHRoaXMuX3RyYW5zZm9ybWVyRm4odmFsdWUpKSlcbiAgICAgICAgICAgIDogb2YoY2hvc2VuRW50aXRpZXMpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBFTVBUWTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBvcGVuU2VsZWN0RGlhbG9nKCk6IE1hdERpYWxvZ1JlZjxUZW1wbGF0ZWRTZWxlY3Rpb25EaWFsb2dDb21wb25lbnQ+IHtcbiAgICByZXR1cm4gdGhpcy5kaWFsb2cub3BlbihcbiAgICAgIFRlbXBsYXRlZFNlbGVjdGlvbkRpYWxvZ0NvbXBvbmVudCxcbiAgICAgIHtcbiAgICAgICAgd2lkdGg6ICc5MHZ3JyxcbiAgICAgICAgaGVpZ2h0OiAnOTB2aCcsXG4gICAgICAgIHBhbmVsQ2xhc3M6ICdjdXN0b20tZGlhbG9nLWNvbnRhaW5lcicsXG4gICAgICAgIGRhdGE6IDxJU2VsZWN0aW9uTW9kZWxEaWFsb2dPcHRpb25zPiB7XG4gICAgICAgICAgc2VsZWN0aW9uQ29tcG9uZW50VGVtcGxhdGU6IHRoaXMudGVtcGxhdGVSZWZcbiAgICAgICAgfSxcbiAgICAgICAgdmlld0NvbnRhaW5lclJlZjogdGhpcy52aWV3Q29udGFpbmVyXG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG59XG4iXX0=
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLW1vZGVsLXBvcHVwLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0L3BvcHVwL3NlbGVjdGlvbi1tb2RlbC1wb3B1cC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsS0FBSyxFQUFnQyxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsT0FBTyxFQUVMLGlDQUFpQyxFQUNsQyxNQUFNLG1FQUFtRSxDQUFDO0FBQzNFLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQUMsS0FBSyxFQUFjLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQWMsY0FBYyxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFHdEYsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDM0YsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sdURBQXVELENBQUM7Ozs7O0FBSW5HLE1BQU0sVUFBVSxvQkFBb0I7SUFDbEMsT0FBTyxJQUFJLGNBQWMsRUFBTyxDQUFDO0FBQ25DLENBQUM7QUFFRCxNQUFNLFVBQVUsNkJBQTZCO0lBQzNDLE9BQU8sSUFBSSw0QkFBNEIsRUFBRSxDQUFDO0FBQzVDLENBQUM7QUFpQkQsTUFBTSxPQUFPLDRCQUE0QjtJQWlCdkM7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ21CLFdBQTZCLEVBQzdCLGFBQStCLEVBQy9CLE1BQWlCLEVBQ2pCLHVCQUFxRCxFQUNyRCxjQUFtQyxFQUNuQyxpQkFBb0M7UUFMcEMsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO1FBQzdCLGtCQUFhLEdBQWIs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U0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsNEJBQTRCO29CQUN0QyxRQUFRLEVBQUUsMEJBQTBCO29CQUNwQyxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGNBQWM7NEJBQ3ZCLFVBQVUsRUFBRSxvQkFBb0I7eUJBQ2pDO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSw0QkFBNEI7NEJBQ3JDLFVBQVUsRUFBRSw2QkFBNkI7eUJBQzFDO3dCQUNELG1CQUFtQixDQUFDLGVBQWUsQ0FBQyx1RUFBdUU7cUJBQzVHO2lCQUNGO2lRQWNZLGlDQUFpQztzQkFEM0MsS0FBSzt1QkFBQyxtQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBEaXJlY3RpdmUsIElucHV0LCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7TWF0RGlhbG9nLCBNYXREaWFsb2dSZWZ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQge1xuICBJU2VsZWN0aW9uTW9kZWxEaWFsb2dPcHRpb25zLFxuICBUZW1wbGF0ZWRTZWxlY3Rpb25EaWFsb2dDb21wb25lbnRcbn0gZnJvbSAnLi90ZW1wbGF0ZWQtc2VsZWN0aW9uLWRpYWxvZy90ZW1wbGF0ZWQtc2VsZWN0aW9uLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHtzd2l0Y2hNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7RU1QVFksIE9ic2VydmFibGUsIG9mfSBmcm9tICdyeGpzJztcbmltcG9ydCB7S2V5R2V0dGVyRm4sIFNlbGVjdGlvbk1vZGVsfSBmcm9tICcuLi8uLi8uLi9jb21tb24vc2VsZWN0aW9uL3NlbGVjdGlvbi1tb2RlbCc7XG5pbXBvcnQge1NvcnR9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9kYXRhL3NvcnQnO1xuaW1wb3J0IHtGaWx0ZXJ9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9kYXRhL2ZpbHRlcnMvZmlsdGVyJztcbmltcG9ydCB7RWxkZXJUYWJsZVByb3ZpZGVyc30gZnJvbSAnLi4vLi4vZGF0YS12aWV3L3RhYmxlL21vZGVsL2VsZGVyLXRhYmxlLW1vZGVsLXByb3ZpZGVyJztcbmltcG9ydCB7RWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcn0gZnJvbSAnLi4vLi4vZGF0YS12aWV3L2Jhc2UvZWxkZXItZGF0YS12aWV3LW9wdGlvbnMtcHJvdmlkZXInO1xuXG5cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVNlbGVjdGlvbk1vZGVsKCk6IFNlbGVjdGlvbk1vZGVsPGFueT4ge1xuICByZXR1cm4gbmV3IFNlbGVjdGlvbk1vZGVsPGFueT4oKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZURhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyKCk6IEVsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXIge1xuICByZXR1cm4gbmV3IEVsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXIoKTtcbn1cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2VsZGVyU2VsZWN0aW9uTW9kZWxQb3B1cF0nLFxuICBleHBvcnRBczogJ2VsZGVyU2VsZWN0aW9uTW9kZWxQb3B1cCcsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNlbGVjdGlvbk1vZGVsLFxuICAgICAgdXNlRmFjdG9yeTogY3JlYXRlU2VsZWN0aW9uTW9kZWxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEVsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXIsXG4gICAgICB1c2VGYWN0b3J5OiBjcmVhdGVEYXRhVmlld09wdGlvbnNQcm92aWRlclxuICAgIH0sXG4gICAgRWxkZXJUYWJsZVByb3ZpZGVycy5DbGVhclRhYmxlTW9kZWwgLy8gU2luY2UgdGhpcyBwb3B1cCBpcyBmcmVxdWVudGx5IHVzZWQgaW5zaWRlIGFuIGVsZGVyLXRhYmxlIHNlYXJjaCBib3hcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3Rpb25Nb2RlbFBvcHVwRGlyZWN0aXZlIHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZyA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHJpdmF0ZSBfdHJhbnNmb3JtZXJGbjogKG86IGFueSkgPT4gYW55O1xuXG4gIEBJbnB1dCgnZWxkZXJTZWxlY3Rpb25Nb2RlbFBvcHVwVHJhbnNmb3JtJylcbiAgcHVibGljIHNldCBlbGRlclNlbGVjdGlvbk1vZGVsUG9wdXBUcmFuc2Zvcm0oZm46IChvOiBhbnkpID0+IGFueSkge1xuICAgIHRoaXMuX3RyYW5zZm9ybWVyRm4gPSBmbjtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXG4gICAgcHJpdmF0ZSByZWFkb25seSB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlhbG9nOiBNYXREaWFsb2csXG4gICAgcHJpdmF0ZSByZWFkb25seSBkYXRhVmlld09wdGlvbnNQcm92aWRlcjogRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlbGVjdGlvbk1vZGVsOiBTZWxlY3Rpb25Nb2RlbDxhbnk+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHsgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBMZXQgdGhlIHVzZXIgY2hvb3NlIHNvbWUgZW50aXRpZXMgYW5kIHJldHVybiB0aGUgc2VsZWN0aW9uLlxuICAgKi9cbiAgcHVibGljIGNob29zZShcbiAgICBrZXlHZXR0ZXI6IEtleUdldHRlckZuPGFueT4sXG4gICAgY3VycmVudFNlbGVjdGlvbjogYW55W10sXG4gICAgZmlsdGVycz86IEZpbHRlcltdLFxuICAgIHNvcnRzPzogU29ydFtdLFxuICAgIG11bHRpID0gZmFsc2VcbiAgKTogT2JzZXJ2YWJsZTxhbnlbXT4ge1xuXG4gICAgdGhpcy5kYXRhVmlld09wdGlvbnNQcm92aWRlci51cGRhdGVPcHRpb25zKFxuICAgICAgb3B0aW9ucyA9PiBvcHRpb25zXG4gICAgICAgIC53aXRoRmlsdGVycyhmaWx0ZXJzIHx8IFtdKVxuICAgICAgICAud2l0aFNvcnRzKHNvcnRzIHx8IFtdKVxuICAgICAgICAud2l0aFNlbGVjdGlvbk11bHRpRW5hYmxlZChtdWx0aSlcbiAgICAgICAgLndpdGhJbnRlcmFjdGlvbk1vZGUoJ3NlbGVjdGlvbicpXG4gICAgKVxuXG4gICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC5pc011bHRpcGxlU2VsZWN0aW9uID0gbXVsdGk7XG4gICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC5rZXlHZXR0ZXJGbiA9IGtleUdldHRlcjtcbiAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLnJlcGxhY2VTZWxlY3Rpb24oY3VycmVudFNlbGVjdGlvbik7XG5cbiAgICB0aGlzLmxvZy5pbmZvKCdSZXBsYWNlZCBzZWxlY3Rpb24gcG9wdXAgd2l0aCBjdXJyZW50ICcrY3VycmVudFNlbGVjdGlvbi5sZW5ndGgrJyBlbnRpdGllczonLCBjdXJyZW50U2VsZWN0aW9uKVxuXG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5vcGVuU2VsZWN0RGlhbG9nKCk7XG5cbiAgICAvLyBUaGlzIGZpeGVzIGRpYWxvZyByZW5kZXJpbmcgd2hlbiB0aGUgYnJvd3NlciB0ZW1wbGF0ZVxuICAgIC8vIHZpZXcgY29udGFpbmVyIGlzIG91dHNpZGUgdGhlIGludm9raW5nIGNvbnRyb2wsIHdoaWNoXG4gICAgLy8gaGFwcGVucyB3aGVuIHVzaW5nIG5nLWNvbnRlbnQgcHJvamVjdGlvbi5cbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgcmV0dXJuIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKGNob3NlbkVudGl0aWVzOiBhbnlbXSkgPT4ge1xuICAgICAgICBpZiAoY2hvc2VuRW50aXRpZXMpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5fdHJhbnNmb3JtZXJGblxuICAgICAgICAgICAgPyBvZihjaG9zZW5FbnRpdGllcy5tYXAodmFsdWUgPT4gdGhpcy5fdHJhbnNmb3JtZXJGbih2YWx1ZSkpKVxuICAgICAgICAgICAgOiBvZihjaG9zZW5FbnRpdGllcyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIG9wZW5TZWxlY3REaWFsb2coKTogTWF0RGlhbG9nUmVmPFRlbXBsYXRlZFNlbGVjdGlvbkRpYWxvZ0NvbXBvbmVudD4ge1xuICAgIHJldHVybiB0aGlzLmRpYWxvZy5vcGVuKFxuICAgICAgVGVtcGxhdGVkU2VsZWN0aW9uRGlhbG9nQ29tcG9uZW50LFxuICAgICAge1xuICAgICAgICB3aWR0aDogJzkwdncnLFxuICAgICAgICBoZWlnaHQ6ICc5MHZoJyxcbiAgICAgICAgcGFuZWxDbGFzczogJ2N1c3RvbS1kaWFsb2ctY29udGFpbmVyJyxcbiAgICAgICAgZGF0YTogPElTZWxlY3Rpb25Nb2RlbERpYWxvZ09wdGlvbnM+IHtcbiAgICAgICAgICBzZWxlY3Rpb25Db21wb25lbnRUZW1wbGF0ZTogdGhpcy50ZW1wbGF0ZVJlZlxuICAgICAgICB9LFxuICAgICAgICB2aWV3Q29udGFpbmVyUmVmOiB0aGlzLnZpZXdDb250YWluZXJcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbn1cbiJdfQ==
|