@netgrif/components-core 6.4.0-beta.4 → 6.4.0-beta.6
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/assets/i18n/de.json +9 -0
- package/esm2020/assets/i18n/en.json +9 -0
- package/esm2020/assets/i18n/sk.json +9 -0
- package/esm2020/lib/actions/front-action.module.mjs +28 -0
- package/esm2020/lib/actions/model/front-action-definition.mjs +2 -0
- package/esm2020/lib/actions/model/router-action-definitions.mjs +8 -0
- package/esm2020/lib/actions/model/task-action-definitions.mjs +16 -0
- package/esm2020/lib/actions/public-api.mjs +6 -0
- package/esm2020/lib/actions/services/front-action.service.mjs +27 -0
- package/esm2020/lib/data-fields/case-ref-field/case-ref-default/case-ref-default.component.mjs +6 -2
- package/esm2020/lib/data-fields/case-ref-field/model/case-ref-injection-tokens.mjs +2 -1
- package/esm2020/lib/data-fields/data-fields.module.mjs +1 -1
- package/esm2020/lib/data-fields/enumeration-field/enumeration-caseref-field/abstract-enumeration-caseref-field.component.mjs +67 -0
- package/esm2020/lib/data-fields/enumeration-field/models/enumeration-field.mjs +9 -1
- package/esm2020/lib/data-fields/models/changed-fields.mjs +1 -1
- package/esm2020/lib/data-fields/multichoice-field/models/multichoice-field.mjs +9 -1
- package/esm2020/lib/data-fields/multichoice-field/multichoice-caseref-field/abstract-multichoice-caseref-field.component.mjs +67 -0
- package/esm2020/lib/data-fields/public-api.mjs +3 -1
- package/esm2020/lib/event/model/event-constants.mjs +5 -1
- package/esm2020/lib/event/services/event.service.mjs +23 -1
- package/esm2020/lib/filter/user-filters.service.mjs +1 -1
- package/esm2020/lib/header/abstract-header.component.mjs +8 -2
- package/esm2020/lib/header/header-modes/abstract-header-mode.component.mjs +10 -2
- package/esm2020/lib/navigation/model/group-navigation-constants.mjs +5 -1
- package/esm2020/lib/navigation/navigation-double-drawer/abstract-navigation-double-drawer.mjs +96 -37
- package/esm2020/lib/navigation/service/uri.service.mjs +22 -1
- package/esm2020/lib/navigation/utility/filter-extraction.service.mjs +2 -2
- package/esm2020/lib/panel/case-panel/abstract-case-panel.component.mjs +9 -2
- package/esm2020/lib/panel/task-panel/abstract-task-panel.component.mjs +5 -2
- package/esm2020/lib/panel/task-panel-list/task-panel-list-pagination/abstract-task-list-pagination.component.mjs +5 -3
- package/esm2020/lib/panel/task-panel-single/abstract-single-task.component.mjs +11 -5
- package/esm2020/lib/public/factories/public-search-factory.mjs +15 -4
- package/esm2020/lib/registry/front-action-registry.service.mjs +34 -0
- package/esm2020/lib/registry/public-api.mjs +2 -1
- package/esm2020/lib/resources/interface/event-outcome.mjs +1 -1
- package/esm2020/lib/search/fulltext-search-component/abstract-fulltext-search.component.mjs +14 -4
- package/esm2020/lib/search/search-component/abstract-search.component.mjs +5 -3
- package/esm2020/lib/side-menu/content-components/injection-tokens.mjs +2 -1
- package/esm2020/lib/side-menu/content-components/public-api.mjs +2 -1
- package/esm2020/lib/side-menu/content-components/task-view/model/task-view-injection-data.mjs +2 -0
- package/esm2020/lib/task/services/task-data.service.mjs +11 -9
- package/esm2020/lib/task-content/services/single-task-content.service.mjs +4 -4
- package/esm2020/lib/task-content/services/task-content.service.mjs +22 -22
- package/esm2020/lib/task-content/services/unlimited-task-content.service.mjs +4 -4
- package/esm2020/lib/utility/navigation-item-default-headers-factory.mjs +12 -7
- package/esm2020/lib/view/abstract/netgrif-paginator-intl.mjs +36 -0
- package/esm2020/lib/view/case-view/components/case-list-paginator/abstract-case-list-paginator.component.mjs +8 -4
- package/esm2020/lib/view/public-api.mjs +2 -1
- package/esm2020/lib/view/task-view/abstract-single-task-view.component.mjs +18 -34
- package/esm2020/public-api.mjs +2 -1
- package/fesm2015/netgrif-components-core.mjs +1041 -589
- package/fesm2015/netgrif-components-core.mjs.map +1 -1
- package/fesm2020/netgrif-components-core.mjs +1027 -583
- package/fesm2020/netgrif-components-core.mjs.map +1 -1
- package/lib/actions/front-action.module.d.ts +9 -0
- package/lib/actions/model/front-action-definition.d.ts +5 -0
- package/lib/actions/model/router-action-definitions.d.ts +2 -0
- package/lib/actions/model/task-action-definitions.d.ts +3 -0
- package/lib/actions/public-api.d.ts +5 -0
- package/lib/actions/services/front-action.service.d.ts +15 -0
- package/lib/data-fields/case-ref-field/model/case-ref-injection-tokens.d.ts +2 -0
- package/lib/data-fields/enumeration-field/enumeration-caseref-field/abstract-enumeration-caseref-field.component.d.ts +16 -0
- package/lib/data-fields/enumeration-field/models/enumeration-field.d.ts +4 -1
- package/lib/data-fields/models/changed-fields.d.ts +7 -6
- package/lib/data-fields/multichoice-field/models/multichoice-field.d.ts +4 -0
- package/lib/data-fields/multichoice-field/multichoice-caseref-field/abstract-multichoice-caseref-field.component.d.ts +16 -0
- package/lib/data-fields/public-api.d.ts +2 -0
- package/lib/event/model/event-constants.d.ts +5 -1
- package/lib/event/services/event.service.d.ts +3 -0
- package/lib/header/abstract-header.component.d.ts +4 -1
- package/lib/header/header-modes/abstract-header-mode.component.d.ts +6 -1
- package/lib/navigation/model/group-navigation-constants.d.ts +5 -1
- package/lib/navigation/navigation-double-drawer/abstract-navigation-double-drawer.d.ts +9 -1
- package/lib/navigation/service/uri.service.d.ts +6 -0
- package/lib/panel/case-panel/abstract-case-panel.component.d.ts +5 -1
- package/lib/panel/task-panel/abstract-task-panel.component.d.ts +2 -1
- package/lib/panel/task-panel-list/task-panel-list-pagination/abstract-task-list-pagination.component.d.ts +2 -1
- package/lib/panel/task-panel-single/abstract-single-task.component.d.ts +5 -3
- package/lib/public/factories/public-search-factory.d.ts +3 -0
- package/lib/registry/front-action-registry.service.d.ts +13 -0
- package/lib/registry/public-api.d.ts +1 -0
- package/lib/resources/interface/event-outcome.d.ts +5 -0
- package/lib/search/fulltext-search-component/abstract-fulltext-search.component.d.ts +2 -1
- package/lib/search/search-component/abstract-search.component.d.ts +2 -1
- package/lib/side-menu/content-components/injection-tokens.d.ts +1 -0
- package/lib/side-menu/content-components/public-api.d.ts +1 -0
- package/lib/side-menu/content-components/task-view/model/task-view-injection-data.d.ts +4 -0
- package/lib/task/services/task-data.service.d.ts +4 -2
- package/lib/task-content/services/single-task-content.service.d.ts +2 -2
- package/lib/task-content/services/task-content.service.d.ts +7 -16
- package/lib/task-content/services/unlimited-task-content.service.d.ts +2 -2
- package/lib/view/abstract/netgrif-paginator-intl.d.ts +19 -0
- package/lib/view/case-view/components/case-list-paginator/abstract-case-list-paginator.component.d.ts +3 -1
- package/lib/view/public-api.d.ts +1 -0
- package/lib/view/task-view/abstract-single-task-view.component.d.ts +6 -5
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
- package/src/assets/i18n/de.json +9 -0
- package/src/assets/i18n/en.json +9 -0
- package/src/assets/i18n/sk.json +9 -0
|
@@ -6,6 +6,7 @@ import { SimpleFilter } from '../../filter/models/simple-filter';
|
|
|
6
6
|
import { LoadingEmitter } from '../../utility/loading-emitter';
|
|
7
7
|
import { PaginationParams } from '../../utility/pagination/pagination-params';
|
|
8
8
|
import { NAE_URI_NODE_CASES_PAGE_SIZE } from '../model/size-menu-injection-token';
|
|
9
|
+
import { GroupNavigationConstants } from "../model/group-navigation-constants";
|
|
9
10
|
import * as i0 from "@angular/core";
|
|
10
11
|
import * as i1 from "../../logger/services/logger.service";
|
|
11
12
|
import * as i2 from "./uri-resource.service";
|
|
@@ -141,6 +142,26 @@ export class UriService {
|
|
|
141
142
|
.set(PaginationParams.PAGE_NUMBER, pageNumber);
|
|
142
143
|
return this._caseResourceService.searchCases(SimpleFilter.fromCaseQuery(searchBody), httpParams);
|
|
143
144
|
}
|
|
145
|
+
/**
|
|
146
|
+
* Get menu item case by nodePath field value
|
|
147
|
+
* @param node a node, that is represented by the wanted case
|
|
148
|
+
* @return page containing 1 case
|
|
149
|
+
*/
|
|
150
|
+
getItemCaseByNodePath(node) {
|
|
151
|
+
if (!node) {
|
|
152
|
+
node = this.activeNode;
|
|
153
|
+
}
|
|
154
|
+
const searchBody = {
|
|
155
|
+
data: {
|
|
156
|
+
[GroupNavigationConstants.ITEM_FIELD_ID_NODE_PATH]: node.uriPath
|
|
157
|
+
},
|
|
158
|
+
process: { identifier: "preference_item" }
|
|
159
|
+
};
|
|
160
|
+
let httpParams = new HttpParams()
|
|
161
|
+
.set(PaginationParams.PAGE_SIZE, 1)
|
|
162
|
+
.set(PaginationParams.PAGE_NUMBER, 0);
|
|
163
|
+
return this._caseResourceService.searchCases(SimpleFilter.fromCaseQuery(searchBody), httpParams);
|
|
164
|
+
}
|
|
144
165
|
/**
|
|
145
166
|
* Get siblings node of the provided node
|
|
146
167
|
* @param node siblings node
|
|
@@ -215,4 +236,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
215
236
|
type: Inject,
|
|
216
237
|
args: [NAE_URI_NODE_CASES_PAGE_SIZE]
|
|
217
238
|
}] }]; } });
|
|
218
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL25hdmlnYXRpb24vc2VydmljZS91cmkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQWEsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxlQUFlLEVBQWMsRUFBRSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3JELE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuQyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFNL0QsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQzdELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDOzs7Ozs7QUFJaEY7O0tBRUs7QUFJTCxNQUFNLE9BQU8sVUFBVTtJQVFuQixZQUFzQixPQUFzQixFQUN0QixnQkFBb0MsRUFDcEMsb0JBQXlDLEVBQ3pDLG1CQUF1QyxFQUNXLFFBQXlCO1FBSjNFLFlBQU8sR0FBUCxPQUFPLENBQWU7UUFDdEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFvQjtRQUNwQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXFCO1FBQ3pDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBb0I7UUFDVyxhQUFRLEdBQVIsUUFBUSxDQUFpQjtRQUM3RixJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ1gsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7U0FDdEI7UUFDRCxJQUFJLE9BQU8sSUFBSSxDQUFD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akQsSUFBSSxDQUFDLENBQUMsS0FBSyxZQUFZLEtBQUssQ0FBQztZQUFFLE9BQU87UUFDdEMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLGNBQWMsQ0FBQyxJQUFxQjtRQUN4QyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNsQixJQUFJLENBQUMsS0FBSyxTQUFTLElBQUksQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDO2dCQUFFLE9BQU87WUFDOUMsSUFBSSxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUM7Z0JBQUUsT0FBTyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDM0MsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEQsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUIsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQzs7QUEvTWMsZUFBSSxHQUFXLE1BQU8sQ0FBQTt3R0FGNUIsVUFBVSxzSkFZYSw0QkFBNEI7NEdBWm5ELFVBQVUsY0FGUCxNQUFNOzRGQUVULFVBQVU7a0JBSHRCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzswQkFhZ0IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0h0dHBQYXJhbXN9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlLCBPbkRlc3Ryb3ksIE9wdGlvbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBvZn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtDYXNlU2VhcmNoUmVxdWVzdEJvZHksIFBldHJpTmV0U2VhcmNoUmVxdWVzdH0gZnJvbSAnLi4vLi4vZmlsdGVyL21vZGVscy9jYXNlLXNlYXJjaC1yZXF1ZXN0LWJvZHknO1xuaW1wb3J0IHtTaW1wbGVGaWx0ZXJ9IGZyb20gJy4uLy4uL2ZpbHRlci9tb2RlbHMvc2ltcGxlLWZpbHRlcic7XG5pbXBvcnQge0FjdGl2ZUdyb3VwU2VydmljZX0gZnJvbSAnLi4vLi4vZ3JvdXBzL3NlcnZpY2VzL2FjdGl2ZS1ncm91cC5zZXJ2aWNlJztcbmltcG9ydCB7TG9nZ2VyU2VydmljZX0gZnJvbSAnLi4vLi4vbG9nZ2VyL3NlcnZpY2VzL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7Q2FzZVJlc291cmNlU2VydmljZX0gZnJvbSAnLi4vLi4vcmVzb3VyY2VzL2VuZ2luZS1lbmRwb2ludC9jYXNlLXJlc291cmNlLnNlcnZpY2UnO1xuaW1wb3J0IHtDYXNlfSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvaW50ZXJmYWNlL2Nhc2UnO1xuaW1wb3J0IHtQYWdlfSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvaW50ZXJmYWNlL3BhZ2UnO1xuaW1wb3J0IHtMb2FkaW5nRW1pdHRlcn0gZnJvbSAnLi4vLi4vdXRpbGl0eS9sb2FkaW5nLWVtaXR0ZXInO1xuaW1wb3J0IHtQYWdpbmF0aW9uUGFyYW1zfSBmcm9tICcuLi8uLi91dGlsaXR5L3BhZ2luYXRpb24vcGFnaW5hdGlvbi1wYXJhbXMnO1xuaW1wb3J0IHtOQUVfVVJJX05PREVfQ0FTRVNfUEFHRV9TSVpFfSBmcm9tICcuLi9tb2RlbC9zaXplLW1lbnUtaW5qZWN0aW9uLXRva2VuJztcbmltcG9ydCB7VXJpTm9kZVJlc291cmNlfSBmcm9tICcuLi9tb2RlbC91cmktcmVzb3VyY2UnO1xuaW1wb3J0IHtVcmlSZXNvdXJjZVNlcnZpY2V9IGZyb20gJy4vdXJpLXJlc291cmNlLnNlcnZpY2UnO1xuXG4vKipcbiAqIFNlcnZpY2UgZm9yIG1hbmFnaW5nIFVSSXNcbiAqICovXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBVcmlTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICAgIHByaXZhdGUgc3RhdGljIFJPT1Q6IHN0cmluZyA9ICdyb290JztcbiAgICBwcml2YXRlIF9yb290Tm9kZTogVXJpTm9kZVJlc291cmNlO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX3Jvb3RMb2FkaW5nJDogTG9hZGluZ0VtaXR0ZXI7XG4gICAgcHJpdmF0ZSByZWFkb25seSBfcGFyZW50TG9hZGluZyQ6IExvYWRpbmdFbWl0dGVyO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2FjdGl2ZU5vZGUkOiBCZWhhdmlvclN1YmplY3Q8VXJpTm9kZVJlc291cmNlPjtcblxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfbG9nZ2VyOiBMb2dnZXJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfcmVzb3VyY2VTZXJ2aWNlOiBVcmlSZXNvdXJjZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9jYXNlUmVzb3VyY2VTZXJ2aWNlOiBDYXNlUmVzb3VyY2VTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfYWN0aXZlR3JvdXBTZXJ2aWNlOiBBY3RpdmVHcm91cFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChOQUVfVVJJX05PREVfQ0FTRVNfUEFHRV9TSVpFKSBwcm90ZWN0ZWQgcGFnZVNpemU6IHN0cmluZyB8IG51bWJlcikge1xuICAgICAgICBpZiAoIXBhZ2VTaXplKSB7XG4gICAgICAgICAgICB0aGlzLnBhZ2VTaXplID0gMjA7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnBhZ2VTaXplID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgdGhpcy5wYWdlU2l6ZSA9IHBhcnNlSW50KHRoaXMucGFnZVNpemUpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3Jvb3RMb2FkaW5nJCA9IG5ldyBMb2FkaW5nRW1pdHRlcigpO1xuICAgICAgICB0aGlzLl9wYXJlbnRMb2FkaW5nJCA9IG5ldyBMb2FkaW5nRW1pdHRlcigpO1xuICAgICAgICB0aGlzLl9hY3RpdmVOb2RlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VXJpTm9kZVJlc291cmNlPih1bmRlZmluZWQpO1xuICAgICAgICB0aGlzLmxvYWRSb290KCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLl9yb290TG9hZGluZyQuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5fcGFyZW50TG9hZGluZyQuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5fYWN0aXZlTm9kZSQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHJvb3QoKTogVXJpTm9kZVJlc291cmNlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jvb3ROb2RlO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgcm9vdExvYWRlZCQoKTogTG9hZGluZ0VtaXR0ZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5fcm9vdExvYWRpbmckO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc1Jvb3Qobm9kZTogVXJpTm9kZVJlc291cmNlKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBub2RlLmlkID09PSB0aGlzLl9yb290Tm9kZS5pZCAmJiBub2RlLnVyaVBhdGggPT09IHRoaXMuX3Jvb3ROb2RlLnVyaVBhdGg7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBhY3RpdmVOb2RlKCk6IFVyaU5vZGVSZXNvdXJjZSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hY3RpdmVOb2RlJC5nZXRWYWx1ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXQgYWN0aXZlTm9kZShub2RlOiBVcmlOb2RlUmVzb3VyY2UpIHtcbiAgICAgICAgaWYgKG5vZGUucGFyZW50SWQgJiYgIW5vZGUucGFyZW50KSB7XG4gICAgICAgICAgICBpZiAobm9kZS5wYXJlbnRJZCA9PT0gdGhpcy5fcm9vdE5vZGUuaWQpIHtcbiAgICAgICAgICAgICAgICBub2RlLnBhcmVudCA9IHRoaXMuX3Jvb3ROb2RlO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9wYXJlbnRMb2FkaW5nJC5vbigpO1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0Tm9kZUJ5UGF0aCh0aGlzLnJlc29sdmVQYXJlbnRQYXRoKG5vZGUpKS5zdWJzY3JpYmUobiA9PiB7XG4gICAgICAgICAgICAgICAgICAgIG5vZGUucGFyZW50ID0gIW4gPyB0aGlzLl9yb290Tm9kZSA6IG47XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3BhcmVudExvYWRpbmckLm9mZigpO1xuICAgICAgICAgICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fbG9nZ2VyLmVycm9yKGVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fcGFyZW50TG9hZGluZyQub2ZmKCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fYWN0aXZlTm9kZSQubmV4dChub2RlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGFjdGl2ZU5vZGUkKCk6IE9ic2VydmFibGU8VXJpTm9kZVJlc291cmNlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hY3RpdmVOb2RlJDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHBhcmVudE5vZGVMb2FkaW5nJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3BhcmVudExvYWRpbmckO1xuICAgIH1cblxuXG4gICAgLyoqXG4gICAgICogTG9hZHMgcm9vdCBJRCBpbnRvIHZhcmlhYmxlLlxuICAgICAqIFdoZW4gcm9vdCBub2RlIGlzIGxvYWRlZCBhbmQgYWN0aXZlIG5vZGUgaXMgbm90IHNldCB5ZXQgdGhlIHJvb3Qgbm9kZSBpcyBzZXQgYXMgYWN0aXZlIG5vZGVcbiAgICAgKiAqL1xuICAgIHByaXZhdGUgbG9hZFJvb3QoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Jvb3RMb2FkaW5nJC5vbigpO1xuICAgICAgICB0aGlzLl9yZXNvdXJjZVNlcnZpY2UuZ2V0Um9vdCgpLnN1YnNjcmliZShub2RlID0+IHtcbiAgICAgICAgICAgIGlmICghIW5vZGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9yb290Tm9kZSA9IG5vZGU7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLmFjdGl2ZU5vZGUpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hY3RpdmVOb2RlID0gdGhpcy5fcm9vdE5vZGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5fcm9vdExvYWRpbmckLm9mZigpO1xuICAgICAgICB9LCBlcnJvciA9PiB7XG4gICAgICAgICAgICB0aGlzLl9sb2dnZXIuZXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgdGhpcy5fcm9vdExvYWRpbmckLm9mZigpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVzZXQoKTogVXJpTm9kZVJlc291cmNlIHtcbiAgICAgICAgdGhpcy5hY3RpdmVOb2RlID0gdGhpcy5fcm9vdE5vZGU7XG4gICAgICAgIHJldHVybiB0aGlzLl9yb290Tm9kZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgdXJpIG5vZGUgYnkgdXJpIHBhdGguXG4gICAgICogQHBhcmFtIHBhdGhcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0Tm9kZUJ5UGF0aChwYXRoOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFVyaU5vZGVSZXNvdXJjZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VTZXJ2aWNlLmdldE5vZGVCeVVyaShwYXRoKS5waXBlKFxuICAgICAgICAgICAgbWFwKG4gPT4gdGhpcy5jYXBpdGFsaXplTmFtZShuKSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IGNoaWxkIG5vZGVzIG9mIHByb3ZpZGVzIG5vZGUuXG4gICAgICogQHBhcmFtIG5vZGUgcGFyZW50IG5vZGVcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0Q2hpbGROb2Rlcyhub2RlPzogVXJpTm9kZVJlc291cmNlKTogT2JzZXJ2YWJsZTxBcnJheTxVcmlOb2RlUmVzb3VyY2U+PiB7XG4gICAgICAgIGlmICghbm9kZSkgbm9kZSA9IHRoaXMuYWN0aXZlTm9kZTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc291cmNlU2VydmljZS5nZXROb2Rlc0J5UGFyZW50KG5vZGUuaWQpLnBpcGUoXG4gICAgICAgICAgICBtYXAobm9kZXMgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY2FwaXRhbGl6ZU5hbWVzKG5vZGVzKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gbm9kZXM7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgY2FzZXMgdW5kZXIgdXJpIG5vZGVcbiAgICAgKiBAcGFyYW0gbm9kZSBwYXJlbnQgbm9kZSBvZiBjYXNlc1xuICAgICAqIEBwYXJhbSBwcm9jZXNzSWRlbnRpZmllcnMgb3B0aW9uYWwgc2VhcmNoIGZpbHRlciBmb3IgcHJvY2VzcyBpZGVudGlmaWVyIHRvIGdldCBvbmx5IGNhc2VzIGZyb20gdGhlIHByb2Nlc3NcbiAgICAgKiBAcGFyYW0gcGFnZU51bWJlciBvcHRpb25hbCBwYXJhbWV0ZXIgZm9yIGxvYWQgcGFnZSBvbiB0aGUgaW5kZXguIERlZmF1bHQgdmFsdWUgaXMgMCAodGhlIGZpcnN0IHBhZ2UpLlxuICAgICAqIEBwYXJhbSBwYWdlU2l6ZSBvcHRpb25hbCBwYXJhbWV0ZXIgZm9yIGxvYWRlZCBwYWdlIHNpemUuIERlZmF1bHRzIHRvIHZhbHVlIG9mIGluamVjdGlvbiB0b2tlbiBVUklfTk9ERV9DQVNFU19QQUdFX1NJWkUgb3IgdG8gdmFsdWUgXCIyMFwiLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRDYXNlc09mTm9kZShub2RlPzogVXJpTm9kZVJlc291cmNlLCBwcm9jZXNzSWRlbnRpZmllcnM/OiBBcnJheTxzdHJpbmc+LCBwYWdlTnVtYmVyOiBudW1iZXIgPSAwLCBwYWdlU2l6ZTogc3RyaW5nIHwgbnVtYmVyID0gdGhpcy5wYWdlU2l6ZSk6IE9ic2VydmFibGU8UGFnZTxDYXNlPj4ge1xuICAgICAgICBpZiAoIW5vZGUpIG5vZGUgPSB0aGlzLmFjdGl2ZU5vZGU7XG4gICAgICAgIGNvbnN0IHNlYXJjaEJvZHk6IENhc2VTZWFyY2hSZXF1ZXN0Qm9keSA9IHtcbiAgICAgICAgICAgIHVyaU5vZGVJZDogbm9kZS5pZCxcbiAgICAgICAgfTtcbiAgICAgICAgaWYgKCEhcHJvY2Vzc0lkZW50aWZpZXJzKSB7XG4gICAgICAgICAgICBzZWFyY2hCb2R5LnByb2Nlc3MgPSBwcm9jZXNzSWRlbnRpZmllcnMubWFwKGlkID0+ICh7aWRlbnRpZmllcjogaWR9IGFzIFBldHJpTmV0U2VhcmNoUmVxdWVzdCkpO1xuICAgICAgICB9XG4gICAgICAgIC8vIFRPRE8gYWN0aXZlIGdyb3VwIGlzIGJyb2tlbiBhIGdpdmVuIHRoZSB3cm9uZyBpZFxuICAgICAgICAvLyBpZiAoISF0aGlzLl9hY3RpdmVHcm91cFNlcnZpY2UuYWN0aXZlR3JvdXApIHtcbiAgICAgICAgLy8gICAgIHNlYXJjaEJvZHkuZGF0YSA9IHt9O1xuICAgICAgICAvLyAgICAgc2VhcmNoQm9keS5kYXRhWydwYXJlbnRJZCddID0gdGhpcy5fYWN0aXZlR3JvdXBTZXJ2aWNlLmFjdGl2ZUdyb3VwLnN0cmluZ0lkO1xuICAgICAgICAvLyB9XG4gICAgICAgIGxldCBodHRwUGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKVxuICAgICAgICAgICAgLnNldChQYWdpbmF0aW9uUGFyYW1zLlBBR0VfU0laRSwgcGFnZVNpemUpXG4gICAgICAgICAgICAuc2V0KFBhZ2luYXRpb25QYXJhbXMuUEFHRV9OVU1CRVIsIHBhZ2VOdW1iZXIpO1xuICAgICAgICByZXR1cm4gdGhpcy5fY2FzZVJlc291cmNlU2VydmljZS5zZWFyY2hDYXNlcyhTaW1wbGVGaWx0ZXIuZnJvbUNhc2VRdWVyeShzZWFyY2hCb2R5KSwgaHR0cFBhcmFtcyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IHNpYmxpbmdzIG5vZGUgb2YgdGhlIHByb3ZpZGVkIG5vZGVcbiAgICAgKiBAcGFyYW0gbm9kZSBzaWJsaW5ncyBub2RlXG4gICAgICovXG4gICAgcHVibGljIGdldFNpYmxpbmdzT2ZOb2RlKG5vZGU/OiBVcmlOb2RlUmVzb3VyY2UpOiBPYnNlcnZhYmxlPEFycmF5PFVyaU5vZGVSZXNvdXJjZT4+IHtcbiAgICAgICAgaWYgKCFub2RlKSBub2RlID0gdGhpcy5hY3RpdmVOb2RlO1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VTZXJ2aWNlLmdldE5vZGVzQnlQYXJlbnQobm9kZS5wYXJlbnRJZCkucGlwZShcbiAgICAgICAgICAgIG1hcChub2RlcyA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jYXBpdGFsaXplTmFtZXMobm9kZXMpO1xuICAgICAgICAgICAgICAgIHJldHVybiBub2RlcztcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCBub2RlcyBvbiB0aGUgc2FtZSB1cmkgbGV2ZWwgc3RhcnRpbmcgZnJvbSAwLiBSb290IG5vZGUgaXMgbm8gMCBsZXZlbC5cbiAgICAgKiBAcGFyYW0gbGV2ZWxcbiAgICAgKiBAcGFyYW0gcGFyZW50IG9wdGlvbmFsIHBhcmFtZXRlciB0byBmaWx0ZXIgbm9kZXMgd2l0aCBjb21tb24gcGFyZW50XG4gICAgICovXG4gICAgcHVibGljIGdldE5vZGVzT25MZXZlbChsZXZlbDogbnVtYmVyLCBwYXJlbnQ/OiBVcmlOb2RlUmVzb3VyY2UpOiBPYnNlcnZhYmxlPEFycmF5PFVyaU5vZGVSZXNvdXJjZT4+IHtcbiAgICAgICAgaWYgKGxldmVsID09PSAwKSByZXR1cm4gb2YoW3RoaXMucm9vdF0pO1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VTZXJ2aWNlLmdldEJ5TGV2ZWwobGV2ZWwpLnBpcGUoXG4gICAgICAgICAgICBtYXAobm9kZXMgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5zID0gISFwYXJlbnQ/LmlkID8gbm9kZXMuZmlsdGVyKG4gPT4gbi5wYXJlbnRJZCA9PT0gcGFyZW50LmlkKSA6IG5vZGVzO1xuICAgICAgICAgICAgICAgIHRoaXMuY2FwaXRhbGl6ZU5hbWVzKG5zKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gbnM7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVzb2x2ZVBhcmVudFBhdGgobm9kZT86IFVyaU5vZGVSZXNvdXJjZSk6IHN0cmluZyB7XG4gICAgICAgIGlmICghbm9kZSkgbm9kZSA9IHRoaXMuYWN0aXZlTm9kZTtcbiAgICAgICAgY29uc3QgbGFzdERlbGltaXRlciA9IG5vZGUudXJpUGF0aC5sYXN0SW5kZXhPZignLycpO1xuICAgICAgICBpZiAobGFzdERlbGltaXRlciA9PT0gMCkgcmV0dXJuICcvJztcbiAgICAgICAgcmV0dXJuIG5vZGUudXJpUGF0aC5zdWJzdHJpbmcoMCwgbGFzdERlbGltaXRlcik7XG4gICAgfVxuXG4gICAgcHVibGljIHNwbGl0Tm9kZVBhdGgobm9kZTogVXJpTm9kZVJlc291cmNlKTogQXJyYXk8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiBub2RlPy51cmlQYXRoLnNwbGl0KCcvJykuZmlsdGVyKHMgPT4gcyAhPT0gVXJpU2VydmljZS5ST09UKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNhcGl0YWxpemVOYW1lcyhub2RlczogQXJyYXk8VXJpTm9kZVJlc291cmNlPikge1xuICAgICAgICBpZiAoIShub2RlcyBpbnN0YW5jZW9mIEFycmF5KSkgcmV0dXJuO1xuICAgICAgICBub2Rlcy5mb3JFYWNoKG4gPT4gdGhpcy5jYXBpdGFsaXplTmFtZShuKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogIC9uZXRncmlmL25hZV9zeXN0ZW0vcHJvY2Vzc2VzLy4uLiA9PiBOZXRncmlmIC0+IE5hZSBTeXN0ZW1zIC0+IFByb2Nlc3Nlc1xuICAgICAqIEBwYXJhbSBub2RlXG4gICAgICogQHByaXZhdGVcbiAgICAgKi9cbiAgICBwcml2YXRlIGNhcGl0YWxpemVOYW1lKG5vZGU6IFVyaU5vZGVSZXNvdXJjZSkge1xuICAgICAgICBsZXQgcGFydHMgPSBub2RlLm5hbWUuc3BsaXQoJ18nKTtcbiAgICAgICAgcGFydHMgPSBwYXJ0cy5tYXAocCA9PiB7XG4gICAgICAgICAgICBpZiAocCA9PT0gdW5kZWZpbmVkIHx8IHAubGVuZ3RoID09PSAwKSByZXR1cm47XG4gICAgICAgICAgICBpZiAocC5sZW5ndGggPT09IDEpIHJldHVybiBwLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgICAgICByZXR1cm4gcC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHAuc3Vic3RyaW5nKDEpO1xuICAgICAgICB9KTtcbiAgICAgICAgbm9kZS5uYW1lID0gcGFydHMuam9pbignICcpO1xuICAgICAgICByZXR1cm4gbm9kZTtcbiAgICB9XG59XG4iXX0=
|
|
239
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL25hdmlnYXRpb24vc2VydmljZS91cmkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQWEsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxlQUFlLEVBQWMsRUFBRSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3JELE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuQyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFNL0QsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQzdELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBR2hGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDOzs7Ozs7QUFFN0U7O0tBRUs7QUFJTCxNQUFNLE9BQU8sVUFBVTtJQVFuQixZQUFzQixPQUFzQixFQUN0QixnQkFBb0MsRUFDcEMsb0JBQXlDLEVBQ3pDLG1CQUF1QyxFQUNXLFFBQXlCO1FBSjNFLFlBQU8sR0FBUCxPQUFPLENBQWU7UUFDdEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFvQjtRQUNwQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXFCO1FBQ3pDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBb0I7UUFDVyxhQUFRLEdBQVIsUUFBUSxDQUFpQjtRQUM3RixJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ1gsSUFBSSxDQUFDLFFBQVEs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TztZQUM5QyxJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQztnQkFBRSxPQUFPLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUMzQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0RCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1QixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDOztBQXJPYyxlQUFJLEdBQVcsTUFBTyxDQUFBO3dHQUY1QixVQUFVLHNKQVlhLDRCQUE0Qjs0R0FabkQsVUFBVSxjQUZQLE1BQU07NEZBRVQsVUFBVTtrQkFIdEIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQWFnQixRQUFROzswQkFBSSxNQUFNOzJCQUFDLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SHR0cFBhcmFtc30gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtJbmplY3QsIEluamVjdGFibGUsIE9uRGVzdHJveSwgT3B0aW9uYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIG9mfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0Nhc2VTZWFyY2hSZXF1ZXN0Qm9keSwgUGV0cmlOZXRTZWFyY2hSZXF1ZXN0fSBmcm9tICcuLi8uLi9maWx0ZXIvbW9kZWxzL2Nhc2Utc2VhcmNoLXJlcXVlc3QtYm9keSc7XG5pbXBvcnQge1NpbXBsZUZpbHRlcn0gZnJvbSAnLi4vLi4vZmlsdGVyL21vZGVscy9zaW1wbGUtZmlsdGVyJztcbmltcG9ydCB7QWN0aXZlR3JvdXBTZXJ2aWNlfSBmcm9tICcuLi8uLi9ncm91cHMvc2VydmljZXMvYWN0aXZlLWdyb3VwLnNlcnZpY2UnO1xuaW1wb3J0IHtMb2dnZXJTZXJ2aWNlfSBmcm9tICcuLi8uLi9sb2dnZXIvc2VydmljZXMvbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHtDYXNlUmVzb3VyY2VTZXJ2aWNlfSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvZW5naW5lLWVuZHBvaW50L2Nhc2UtcmVzb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQge0Nhc2V9IGZyb20gJy4uLy4uL3Jlc291cmNlcy9pbnRlcmZhY2UvY2FzZSc7XG5pbXBvcnQge1BhZ2V9IGZyb20gJy4uLy4uL3Jlc291cmNlcy9pbnRlcmZhY2UvcGFnZSc7XG5pbXBvcnQge0xvYWRpbmdFbWl0dGVyfSBmcm9tICcuLi8uLi91dGlsaXR5L2xvYWRpbmctZW1pdHRlcic7XG5pbXBvcnQge1BhZ2luYXRpb25QYXJhbXN9IGZyb20gJy4uLy4uL3V0aWxpdHkvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLXBhcmFtcyc7XG5pbXBvcnQge05BRV9VUklfTk9ERV9DQVNFU19QQUdFX1NJWkV9IGZyb20gJy4uL21vZGVsL3NpemUtbWVudS1pbmplY3Rpb24tdG9rZW4nO1xuaW1wb3J0IHtVcmlOb2RlUmVzb3VyY2V9IGZyb20gJy4uL21vZGVsL3VyaS1yZXNvdXJjZSc7XG5pbXBvcnQge1VyaVJlc291cmNlU2VydmljZX0gZnJvbSAnLi91cmktcmVzb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQge0dyb3VwTmF2aWdhdGlvbkNvbnN0YW50c30gZnJvbSBcIi4uL21vZGVsL2dyb3VwLW5hdmlnYXRpb24tY29uc3RhbnRzXCI7XG5cbi8qKlxuICogU2VydmljZSBmb3IgbWFuYWdpbmcgVVJJc1xuICogKi9cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFVyaVNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gICAgcHJpdmF0ZSBzdGF0aWMgUk9PVDogc3RyaW5nID0gJ3Jvb3QnO1xuICAgIHByaXZhdGUgX3Jvb3ROb2RlOiBVcmlOb2RlUmVzb3VyY2U7XG4gICAgcHJpdmF0ZSByZWFkb25seSBfcm9vdExvYWRpbmckOiBMb2FkaW5nRW1pdHRlcjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9wYXJlbnRMb2FkaW5nJDogTG9hZGluZ0VtaXR0ZXI7XG4gICAgcHJpdmF0ZSByZWFkb25seSBfYWN0aXZlTm9kZSQ6IEJlaGF2aW9yU3ViamVjdDxVcmlOb2RlUmVzb3VyY2U+O1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIF9sb2dnZXI6IExvZ2dlclNlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9yZXNvdXJjZVNlcnZpY2U6IFVyaVJlc291cmNlU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2Nhc2VSZXNvdXJjZVNlcnZpY2U6IENhc2VSZXNvdXJjZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9hY3RpdmVHcm91cFNlcnZpY2U6IEFjdGl2ZUdyb3VwU2VydmljZSxcbiAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE5BRV9VUklfTk9ERV9DQVNFU19QQUdFX1NJWkUpIHByb3RlY3RlZCBwYWdlU2l6ZTogc3RyaW5nIHwgbnVtYmVyKSB7XG4gICAgICAgIGlmICghcGFnZVNpemUpIHtcbiAgICAgICAgICAgIHRoaXMucGFnZVNpemUgPSAyMDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucGFnZVNpemUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICB0aGlzLnBhZ2VTaXplID0gcGFyc2VJbnQodGhpcy5wYWdlU2l6ZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fcm9vdExvYWRpbmckID0gbmV3IExvYWRpbmdFbWl0dGVyKCk7XG4gICAgICAgIHRoaXMuX3BhcmVudExvYWRpbmckID0gbmV3IExvYWRpbmdFbWl0dGVyKCk7XG4gICAgICAgIHRoaXMuX2FjdGl2ZU5vZGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxVcmlOb2RlUmVzb3VyY2U+KHVuZGVmaW5lZCk7XG4gICAgICAgIHRoaXMubG9hZFJvb3QoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuX3Jvb3RMb2FkaW5nJC5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLl9wYXJlbnRMb2FkaW5nJC5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLl9hY3RpdmVOb2RlJC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgcm9vdCgpOiBVcmlOb2RlUmVzb3VyY2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5fcm9vdE5vZGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCByb290TG9hZGVkJCgpOiBMb2FkaW5nRW1pdHRlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yb290TG9hZGluZyQ7XG4gICAgfVxuXG4gICAgcHVibGljIGlzUm9vdChub2RlOiBVcmlOb2RlUmVzb3VyY2UpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIG5vZGUuaWQgPT09IHRoaXMuX3Jvb3ROb2RlLmlkICYmIG5vZGUudXJpUGF0aCA9PT0gdGhpcy5fcm9vdE5vZGUudXJpUGF0aDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGFjdGl2ZU5vZGUoKTogVXJpTm9kZVJlc291cmNlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FjdGl2ZU5vZGUkLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldCBhY3RpdmVOb2RlKG5vZGU6IFVyaU5vZGVSZXNvdXJjZSkge1xuICAgICAgICBpZiAobm9kZS5wYXJlbnRJZCAmJiAhbm9kZS5wYXJlbnQpIHtcbiAgICAgICAgICAgIGlmIChub2RlLnBhcmVudElkID09PSB0aGlzLl9yb290Tm9kZS5pZCkge1xuICAgICAgICAgICAgICAgIG5vZGUucGFyZW50ID0gdGhpcy5fcm9vdE5vZGU7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuX3BhcmVudExvYWRpbmckLm9uKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5nZXROb2RlQnlQYXRoKHRoaXMucmVzb2x2ZVBhcmVudFBhdGgobm9kZSkpLnN1YnNjcmliZShuID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbm9kZS5wYXJlbnQgPSAhbiA/IHRoaXMuX3Jvb3ROb2RlIDogbjtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fcGFyZW50TG9hZGluZyQub2ZmKCk7XG4gICAgICAgICAgICAgICAgfSwgZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9sb2dnZXIuZXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9wYXJlbnRMb2FkaW5nJC5vZmYoKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9hY3RpdmVOb2RlJC5uZXh0KG5vZGUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgYWN0aXZlTm9kZSQoKTogT2JzZXJ2YWJsZTxVcmlOb2RlUmVzb3VyY2U+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FjdGl2ZU5vZGUkO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgcGFyZW50Tm9kZUxvYWRpbmckKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGFyZW50TG9hZGluZyQ7XG4gICAgfVxuXG5cbiAgICAvKipcbiAgICAgKiBMb2FkcyByb290IElEIGludG8gdmFyaWFibGUuXG4gICAgICogV2hlbiByb290IG5vZGUgaXMgbG9hZGVkIGFuZCBhY3RpdmUgbm9kZSBpcyBub3Qgc2V0IHlldCB0aGUgcm9vdCBub2RlIGlzIHNldCBhcyBhY3RpdmUgbm9kZVxuICAgICAqICovXG4gICAgcHJpdmF0ZSBsb2FkUm9vdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcm9vdExvYWRpbmckLm9uKCk7XG4gICAgICAgIHRoaXMuX3Jlc291cmNlU2VydmljZS5nZXRSb290KCkuc3Vic2NyaWJlKG5vZGUgPT4ge1xuICAgICAgICAgICAgaWYgKCEhbm9kZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3Jvb3ROb2RlID0gbm9kZTtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuYWN0aXZlTm9kZSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFjdGl2ZU5vZGUgPSB0aGlzLl9yb290Tm9kZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLl9yb290TG9hZGluZyQub2ZmKCk7XG4gICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2xvZ2dlci5lcnJvcihlcnJvcik7XG4gICAgICAgICAgICB0aGlzLl9yb290TG9hZGluZyQub2ZmKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyByZXNldCgpOiBVcmlOb2RlUmVzb3VyY2Uge1xuICAgICAgICB0aGlzLmFjdGl2ZU5vZGUgPSB0aGlzLl9yb290Tm9kZTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jvb3ROb2RlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCB1cmkgbm9kZSBieSB1cmkgcGF0aC5cbiAgICAgKiBAcGFyYW0gcGF0aFxuICAgICAqL1xuICAgIHB1YmxpYyBnZXROb2RlQnlQYXRoKHBhdGg6IHN0cmluZyk6IE9ic2VydmFibGU8VXJpTm9kZVJlc291cmNlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXNvdXJjZVNlcnZpY2UuZ2V0Tm9kZUJ5VXJpKHBhdGgpLnBpcGUoXG4gICAgICAgICAgICBtYXAobiA9PiB0aGlzLmNhcGl0YWxpemVOYW1lKG4pKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgY2hpbGQgbm9kZXMgb2YgcHJvdmlkZXMgbm9kZS5cbiAgICAgKiBAcGFyYW0gbm9kZSBwYXJlbnQgbm9kZVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRDaGlsZE5vZGVzKG5vZGU/OiBVcmlOb2RlUmVzb3VyY2UpOiBPYnNlcnZhYmxlPEFycmF5PFVyaU5vZGVSZXNvdXJjZT4+IHtcbiAgICAgICAgaWYgKCFub2RlKSBub2RlID0gdGhpcy5hY3RpdmVOb2RlO1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VTZXJ2aWNlLmdldE5vZGVzQnlQYXJlbnQobm9kZS5pZCkucGlwZShcbiAgICAgICAgICAgIG1hcChub2RlcyA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jYXBpdGFsaXplTmFtZXMobm9kZXMpO1xuICAgICAgICAgICAgICAgIHJldHVybiBub2RlcztcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCBjYXNlcyB1bmRlciB1cmkgbm9kZVxuICAgICAqIEBwYXJhbSBub2RlIHBhcmVudCBub2RlIG9mIGNhc2VzXG4gICAgICogQHBhcmFtIHByb2Nlc3NJZGVudGlmaWVycyBvcHRpb25hbCBzZWFyY2ggZmlsdGVyIGZvciBwcm9jZXNzIGlkZW50aWZpZXIgdG8gZ2V0IG9ubHkgY2FzZXMgZnJvbSB0aGUgcHJvY2Vzc1xuICAgICAqIEBwYXJhbSBwYWdlTnVtYmVyIG9wdGlvbmFsIHBhcmFtZXRlciBmb3IgbG9hZCBwYWdlIG9uIHRoZSBpbmRleC4gRGVmYXVsdCB2YWx1ZSBpcyAwICh0aGUgZmlyc3QgcGFnZSkuXG4gICAgICogQHBhcmFtIHBhZ2VTaXplIG9wdGlvbmFsIHBhcmFtZXRlciBmb3IgbG9hZGVkIHBhZ2Ugc2l6ZS4gRGVmYXVsdHMgdG8gdmFsdWUgb2YgaW5qZWN0aW9uIHRva2VuIFVSSV9OT0RFX0NBU0VTX1BBR0VfU0laRSBvciB0byB2YWx1ZSBcIjIwXCIuXG4gICAgICovXG4gICAgcHVibGljIGdldENhc2VzT2ZOb2RlKG5vZGU/OiBVcmlOb2RlUmVzb3VyY2UsIHByb2Nlc3NJZGVudGlmaWVycz86IEFycmF5PHN0cmluZz4sIHBhZ2VOdW1iZXI6IG51bWJlciA9IDAsIHBhZ2VTaXplOiBzdHJpbmcgfCBudW1iZXIgPSB0aGlzLnBhZ2VTaXplKTogT2JzZXJ2YWJsZTxQYWdlPENhc2U+PiB7XG4gICAgICAgIGlmICghbm9kZSkgbm9kZSA9IHRoaXMuYWN0aXZlTm9kZTtcbiAgICAgICAgY29uc3Qgc2VhcmNoQm9keTogQ2FzZVNlYXJjaFJlcXVlc3RCb2R5ID0ge1xuICAgICAgICAgICAgdXJpTm9kZUlkOiBub2RlLmlkLFxuICAgICAgICB9O1xuICAgICAgICBpZiAoISFwcm9jZXNzSWRlbnRpZmllcnMpIHtcbiAgICAgICAgICAgIHNlYXJjaEJvZHkucHJvY2VzcyA9IHByb2Nlc3NJZGVudGlmaWVycy5tYXAoaWQgPT4gKHtpZGVudGlmaWVyOiBpZH0gYXMgUGV0cmlOZXRTZWFyY2hSZXF1ZXN0KSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gVE9ETyBhY3RpdmUgZ3JvdXAgaXMgYnJva2VuIGEgZ2l2ZW4gdGhlIHdyb25nIGlkXG4gICAgICAgIC8vIGlmICghIXRoaXMuX2FjdGl2ZUdyb3VwU2VydmljZS5hY3RpdmVHcm91cCkge1xuICAgICAgICAvLyAgICAgc2VhcmNoQm9keS5kYXRhID0ge307XG4gICAgICAgIC8vICAgICBzZWFyY2hCb2R5LmRhdGFbJ3BhcmVudElkJ10gPSB0aGlzLl9hY3RpdmVHcm91cFNlcnZpY2UuYWN0aXZlR3JvdXAuc3RyaW5nSWQ7XG4gICAgICAgIC8vIH1cbiAgICAgICAgbGV0IGh0dHBQYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpXG4gICAgICAgICAgICAuc2V0KFBhZ2luYXRpb25QYXJhbXMuUEFHRV9TSVpFLCBwYWdlU2l6ZSlcbiAgICAgICAgICAgIC5zZXQoUGFnaW5hdGlvblBhcmFtcy5QQUdFX05VTUJFUiwgcGFnZU51bWJlcik7XG4gICAgICAgIHJldHVybiB0aGlzLl9jYXNlUmVzb3VyY2VTZXJ2aWNlLnNlYXJjaENhc2VzKFNpbXBsZUZpbHRlci5mcm9tQ2FzZVF1ZXJ5KHNlYXJjaEJvZHkpLCBodHRwUGFyYW1zKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgbWVudSBpdGVtIGNhc2UgYnkgbm9kZVBhdGggZmllbGQgdmFsdWVcbiAgICAgKiBAcGFyYW0gbm9kZSBhIG5vZGUsIHRoYXQgaXMgcmVwcmVzZW50ZWQgYnkgdGhlIHdhbnRlZCBjYXNlXG4gICAgICogQHJldHVybiBwYWdlIGNvbnRhaW5pbmcgMSBjYXNlXG4gICAgICovXG4gICAgcHVibGljIGdldEl0ZW1DYXNlQnlOb2RlUGF0aChub2RlPzogVXJpTm9kZVJlc291cmNlKTogT2JzZXJ2YWJsZTxQYWdlPENhc2U+PiB7XG4gICAgICAgIGlmICghbm9kZSkge1xuICAgICAgICAgICAgbm9kZSA9IHRoaXMuYWN0aXZlTm9kZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBzZWFyY2hCb2R5OiBDYXNlU2VhcmNoUmVxdWVzdEJvZHkgPSB7XG4gICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgW0dyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX05PREVfUEFUSF0gOiBub2RlLnVyaVBhdGhcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBwcm9jZXNzOiB7aWRlbnRpZmllcjogXCJwcmVmZXJlbmNlX2l0ZW1cIn1cbiAgICAgICAgfTtcblxuICAgICAgICBsZXQgaHR0cFBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKClcbiAgICAgICAgICAgIC5zZXQoUGFnaW5hdGlvblBhcmFtcy5QQUdFX1NJWkUsIDEpXG4gICAgICAgICAgICAuc2V0KFBhZ2luYXRpb25QYXJhbXMuUEFHRV9OVU1CRVIsIDApO1xuICAgICAgICByZXR1cm4gdGhpcy5fY2FzZVJlc291cmNlU2VydmljZS5zZWFyY2hDYXNlcyhTaW1wbGVGaWx0ZXIuZnJvbUNhc2VRdWVyeShzZWFyY2hCb2R5KSwgaHR0cFBhcmFtcyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IHNpYmxpbmdzIG5vZGUgb2YgdGhlIHByb3ZpZGVkIG5vZGVcbiAgICAgKiBAcGFyYW0gbm9kZSBzaWJsaW5ncyBub2RlXG4gICAgICovXG4gICAgcHVibGljIGdldFNpYmxpbmdzT2ZOb2RlKG5vZGU/OiBVcmlOb2RlUmVzb3VyY2UpOiBPYnNlcnZhYmxlPEFycmF5PFVyaU5vZGVSZXNvdXJjZT4+IHtcbiAgICAgICAgaWYgKCFub2RlKSBub2RlID0gdGhpcy5hY3RpdmVOb2RlO1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VTZXJ2aWNlLmdldE5vZGVzQnlQYXJlbnQobm9kZS5wYXJlbnRJZCkucGlwZShcbiAgICAgICAgICAgIG1hcChub2RlcyA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jYXBpdGFsaXplTmFtZXMobm9kZXMpO1xuICAgICAgICAgICAgICAgIHJldHVybiBub2RlcztcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCBub2RlcyBvbiB0aGUgc2FtZSB1cmkgbGV2ZWwgc3RhcnRpbmcgZnJvbSAwLiBSb290IG5vZGUgaXMgbm8gMCBsZXZlbC5cbiAgICAgKiBAcGFyYW0gbGV2ZWxcbiAgICAgKiBAcGFyYW0gcGFyZW50IG9wdGlvbmFsIHBhcmFtZXRlciB0byBmaWx0ZXIgbm9kZXMgd2l0aCBjb21tb24gcGFyZW50XG4gICAgICovXG4gICAgcHVibGljIGdldE5vZGVzT25MZXZlbChsZXZlbDogbnVtYmVyLCBwYXJlbnQ/OiBVcmlOb2RlUmVzb3VyY2UpOiBPYnNlcnZhYmxlPEFycmF5PFVyaU5vZGVSZXNvdXJjZT4+IHtcbiAgICAgICAgaWYgKGxldmVsID09PSAwKSByZXR1cm4gb2YoW3RoaXMucm9vdF0pO1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VTZXJ2aWNlLmdldEJ5TGV2ZWwobGV2ZWwpLnBpcGUoXG4gICAgICAgICAgICBtYXAobm9kZXMgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5zID0gISFwYXJlbnQ/LmlkID8gbm9kZXMuZmlsdGVyKG4gPT4gbi5wYXJlbnRJZCA9PT0gcGFyZW50LmlkKSA6IG5vZGVzO1xuICAgICAgICAgICAgICAgIHRoaXMuY2FwaXRhbGl6ZU5hbWVzKG5zKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gbnM7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVzb2x2ZVBhcmVudFBhdGgobm9kZT86IFVyaU5vZGVSZXNvdXJjZSk6IHN0cmluZyB7XG4gICAgICAgIGlmICghbm9kZSkgbm9kZSA9IHRoaXMuYWN0aXZlTm9kZTtcbiAgICAgICAgY29uc3QgbGFzdERlbGltaXRlciA9IG5vZGUudXJpUGF0aC5sYXN0SW5kZXhPZignLycpO1xuICAgICAgICBpZiAobGFzdERlbGltaXRlciA9PT0gMCkgcmV0dXJuICcvJztcbiAgICAgICAgcmV0dXJuIG5vZGUudXJpUGF0aC5zdWJzdHJpbmcoMCwgbGFzdERlbGltaXRlcik7XG4gICAgfVxuXG4gICAgcHVibGljIHNwbGl0Tm9kZVBhdGgobm9kZTogVXJpTm9kZVJlc291cmNlKTogQXJyYXk8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiBub2RlPy51cmlQYXRoLnNwbGl0KCcvJykuZmlsdGVyKHMgPT4gcyAhPT0gVXJpU2VydmljZS5ST09UKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNhcGl0YWxpemVOYW1lcyhub2RlczogQXJyYXk8VXJpTm9kZVJlc291cmNlPikge1xuICAgICAgICBpZiAoIShub2RlcyBpbnN0YW5jZW9mIEFycmF5KSkgcmV0dXJuO1xuICAgICAgICBub2Rlcy5mb3JFYWNoKG4gPT4gdGhpcy5jYXBpdGFsaXplTmFtZShuKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogIC9uZXRncmlmL25hZV9zeXN0ZW0vcHJvY2Vzc2VzLy4uLiA9PiBOZXRncmlmIC0+IE5hZSBTeXN0ZW1zIC0+IFByb2Nlc3Nlc1xuICAgICAqIEBwYXJhbSBub2RlXG4gICAgICogQHByaXZhdGVcbiAgICAgKi9cbiAgICBwcml2YXRlIGNhcGl0YWxpemVOYW1lKG5vZGU6IFVyaU5vZGVSZXNvdXJjZSkge1xuICAgICAgICBsZXQgcGFydHMgPSBub2RlLm5hbWUuc3BsaXQoJ18nKTtcbiAgICAgICAgcGFydHMgPSBwYXJ0cy5tYXAocCA9PiB7XG4gICAgICAgICAgICBpZiAocCA9PT0gdW5kZWZpbmVkIHx8IHAubGVuZ3RoID09PSAwKSByZXR1cm47XG4gICAgICAgICAgICBpZiAocC5sZW5ndGggPT09IDEpIHJldHVybiBwLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgICAgICByZXR1cm4gcC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHAuc3Vic3RyaW5nKDEpO1xuICAgICAgICB9KTtcbiAgICAgICAgbm9kZS5uYW1lID0gcGFydHMuam9pbignICcpO1xuICAgICAgICByZXR1cm4gbm9kZTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -63,7 +63,7 @@ export class FilterExtractionService {
|
|
|
63
63
|
return filterSegment;
|
|
64
64
|
}
|
|
65
65
|
const rootViewFilter = this.extractViewFilter(rootViewIdField);
|
|
66
|
-
if (rootViewFilter !== undefined) {
|
|
66
|
+
if (rootViewFilter !== undefined && rootViewFilter.type === filterSegment.type) {
|
|
67
67
|
return filterSegment.merge(rootViewFilter, MergeOperator.AND);
|
|
68
68
|
}
|
|
69
69
|
return filterSegment;
|
|
@@ -96,4 +96,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
96
96
|
providedIn: 'root'
|
|
97
97
|
}]
|
|
98
98
|
}], ctorParameters: function () { return [{ type: i1.FilterRepository }, { type: i2.TaskResourceService }, { type: i3.AllowedNetsServiceFactory }, { type: i4.BaseAllowedNetsService }, { type: i5.LoggerService }]; } });
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWV4dHJhY3Rpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvbmF2aWdhdGlvbi91dGlsaXR5L2ZpbHRlci1leHRyYWN0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUd6QyxPQUFPLEVBQUMsNEJBQTRCLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUNwRixPQUFPLEVBQUMsc0JBQXNCLEVBQUUsMkJBQTJCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUU5RSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFFekUsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBSWpFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBRTdFLE9BQU8sRUFFSCwyQ0FBMkMsRUFDOUMsTUFBTSxrRUFBa0UsQ0FBQzs7Ozs7OztBQUcxRTs7R0FFRztBQUlILE1BQU0sT0FBTyx1QkFBdUI7SUFLaEMsWUFBc0IsaUJBQW1DLEVBQ25DLG9CQUF5QyxFQUN6QyxRQUFtQyxFQUNuQyxlQUF1QyxFQUN2QyxJQUFtQjtRQUpuQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQ25DLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBcUI7UUFDekMsYUFBUSxHQUFSLFFBQVEsQ0FBMkI7UUFDbkMsb0JBQWUsR0FBZixlQUFlLENBQXdCO1FBQ3ZDLFNBQUksR0FBSixJQUFJLENBQWU7SUFDekMsQ0FBQztJQUVNLGtDQUFrQyxDQUFDLFdBQTZCO1FBQ25FLE1BQU0sWUFBWSxHQUFHLDJCQUEyQixDQUFDLFdBQVcs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S0FBSyxLQUFLLElBQUksRUFBRTtZQUNoQixNQUFNLElBQUksS0FBSyxDQUFDLHFFQUFxRSxDQUFDLENBQUM7U0FDMUY7UUFDRCxNQUFNLG9CQUFvQixHQUFHLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEcsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQy9FLElBQUksZUFBZSxLQUFLLFNBQVMsRUFBRTtZQUMvQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxpREFBaUQsb0JBQW9CLGlDQUFpQyxDQUFDLENBQUM7WUFDeEgsT0FBTyxTQUFTLENBQUM7U0FDcEI7UUFDRCxPQUFPLGVBQWUsQ0FBQztJQUMzQixDQUFDOztBQW5GRCxzRkFBc0Y7QUFDNUQsa0RBQTBCLEdBQUcsZUFBZ0IsQ0FBQTtxSEFIOUQsdUJBQXVCO3lIQUF2Qix1QkFBdUIsY0FGcEIsTUFBTTs0RkFFVCx1QkFBdUI7a0JBSG5DLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RmlsdGVyfSBmcm9tICcuLi8uLi9maWx0ZXIvbW9kZWxzL2ZpbHRlcic7XG5pbXBvcnQge0RhdGFHcm91cH0gZnJvbSAnLi4vLi4vcmVzb3VyY2VzL2ludGVyZmFjZS9kYXRhLWdyb3Vwcyc7XG5pbXBvcnQge2V4dHJhY3RGaWx0ZXJGcm9tRmlsdGVyRmllbGR9IGZyb20gJy4vbmF2aWdhdGlvbi1pdGVtLXRhc2stdXRpbGl0eS1tZXRob2RzJztcbmltcG9ydCB7Z2V0RmllbGRGcm9tRGF0YUdyb3VwcywgZ2V0RmllbGRJbmRleEZyb21EYXRhR3JvdXBzfSBmcm9tICcuLi8uLi91dGlsaXR5L2dldC1maWVsZCc7XG5pbXBvcnQge1VzZXJGaWx0ZXJDb25zdGFudHN9IGZyb20gJy4uLy4uL2ZpbHRlci9tb2RlbHMvdXNlci1maWx0ZXItY29uc3RhbnRzJztcbmltcG9ydCB7RmlsdGVyUmVwb3NpdG9yeX0gZnJvbSAnLi4vLi4vZmlsdGVyL2ZpbHRlci5yZXBvc2l0b3J5JztcbmltcG9ydCB7VGV4dEZpZWxkfSBmcm9tICcuLi8uLi9kYXRhLWZpZWxkcy90ZXh0LWZpZWxkL21vZGVscy90ZXh0LWZpZWxkJztcbmltcG9ydCB7TG9nZ2VyU2VydmljZX0gZnJvbSAnLi4vLi4vbG9nZ2VyL3NlcnZpY2VzL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7TWVyZ2VPcGVyYXRvcn0gZnJvbSAnLi4vLi4vZmlsdGVyL21vZGVscy9tZXJnZS1vcGVyYXRvcic7XG5pbXBvcnQge1Rhc2tSZXNvdXJjZVNlcnZpY2V9IGZyb20gJy4uLy4uL3Jlc291cmNlcy9lbmdpbmUtZW5kcG9pbnQvdGFzay1yZXNvdXJjZS5zZXJ2aWNlJztcbmltcG9ydCB7RmlsdGVyRmllbGR9IGZyb20gJy4uLy4uL2RhdGEtZmllbGRzL2ZpbHRlci1maWVsZC9tb2RlbHMvZmlsdGVyLWZpZWxkJztcbmltcG9ydCB7RGF0YUZpZWxkfSBmcm9tICcuLi8uLi9kYXRhLWZpZWxkcy9tb2RlbHMvYWJzdHJhY3QtZGF0YS1maWVsZCc7XG5pbXBvcnQge0dyb3VwTmF2aWdhdGlvbkNvbnN0YW50c30gZnJvbSBcIi4uL21vZGVsL2dyb3VwLW5hdmlnYXRpb24tY29uc3RhbnRzXCI7XG5pbXBvcnQge0FsbG93ZWROZXRzU2VydmljZX0gZnJvbSBcIi4uLy4uL2FsbG93ZWQtbmV0cy9zZXJ2aWNlcy9hbGxvd2VkLW5ldHMuc2VydmljZVwiO1xuaW1wb3J0IHtcbiAgICBBbGxvd2VkTmV0c1NlcnZpY2VGYWN0b3J5LFxuICAgIG5hdmlnYXRpb25JdGVtVGFza0FsbG93ZWROZXRzU2VydmljZUZhY3Rvcnlcbn0gZnJvbSBcIi4uLy4uL2FsbG93ZWQtbmV0cy9zZXJ2aWNlcy9mYWN0b3J5L2FsbG93ZWQtbmV0cy1zZXJ2aWNlLWZhY3RvcnlcIjtcbmltcG9ydCB7QmFzZUFsbG93ZWROZXRzU2VydmljZX0gZnJvbSBcIi4uLy4uL2FsbG93ZWQtbmV0cy9zZXJ2aWNlcy9iYXNlLWFsbG93ZWQtbmV0cy5zZXJ2aWNlXCI7XG5cbi8qKlxuICogVGhpcyBzZXJ2aWNlIGlzIGFibGUgdG8gbG9hZCB0aGUgZnVsbCBzYXZlZCBmaWx0ZXIgaW5jbHVkaW5nIGFsbCBvZiBpdHMgYW5jZXN0b3IgZmlsdGVycy5cbiAqL1xuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBGaWx0ZXJFeHRyYWN0aW9uU2VydmljZSB7XG5cbiAgICAvLyB0aGUgc2FtZSByZWdleCBpcyB1c2VkIGluIGEgYmFja2VuZCBmaWx0ZXIgcHJvY2VzcyBhY3Rpb24uIFBsZWFzZSBrZWVwIHRoZW0gaW4gc3luY1xuICAgIHByb3RlY3RlZCBzdGF0aWMgcmVhZG9ubHkgVU5UQUJCRURfVklFV19JRF9FWFRSQUNUT1IgPSAnXi4qPygtXFxcXGQrKT8kJztcblxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfZmlsdGVyUmVwb3NpdG9yeTogRmlsdGVyUmVwb3NpdG9yeSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX3Rhc2tSZXNvdXJjZVNlcnZpY2U6IFRhc2tSZXNvdXJjZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9mYWN0b3J5OiBBbGxvd2VkTmV0c1NlcnZpY2VGYWN0b3J5LFxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCBiYXNlQWxsb3dlZE5ldHM6IEJhc2VBbGxvd2VkTmV0c1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9sb2c6IExvZ2dlclNlcnZpY2UpIHtcbiAgICB9XG5cbiAgICBwdWJsaWMgZXh0cmFjdEFkZGl0aW9uYWxGaWx0ZXJBbGxvd2VkTmV0cyhkYXRhU2VjdGlvbjogQXJyYXk8RGF0YUdyb3VwPik6IEFsbG93ZWROZXRzU2VydmljZSB7XG4gICAgICAgIGNvbnN0IHRhc2tSZWZJbmRleCA9IGdldEZpZWxkSW5kZXhGcm9tRGF0YUdyb3VwcyhkYXRhU2VjdGlvbiwgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfQURESVRJT05BTF9GSUxURVJfVEFTS1JFRik7XG4gICAgICAgIGlmICh0YXNrUmVmSW5kZXggPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBzbGljZWQgPSBkYXRhU2VjdGlvbi5zbGljZSh0YXNrUmVmSW5kZXguZGF0YUdyb3VwSW5kZXggKyAxKVxuICAgICAgICBpZiAoc2xpY2VkLmxlbmd0aCA9PSAwKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5hdmlnYXRpb25JdGVtVGFza0FsbG93ZWROZXRzU2VydmljZUZhY3RvcnkodGhpcy5fZmFjdG9yeSwgdGhpcy5iYXNlQWxsb3dlZE5ldHMsIHNsaWNlZClcbiAgICB9XG5cbiAgICBwdWJsaWMgZXh0cmFjdENvbXBsZXRlQWRkaXRpb25hbEZpbHRlckZyb21EYXRhKGRhdGFTZWN0aW9uOiBBcnJheTxEYXRhR3JvdXA+KTogRmlsdGVyIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgY29uc3QgdGFza1JlZkluZGV4ID0gZ2V0RmllbGRJbmRleEZyb21EYXRhR3JvdXBzKGRhdGFTZWN0aW9uLCBHcm91cE5hdmlnYXRpb25Db25zdGFudHMuSVRFTV9GSUVMRF9JRF9BRERJVElPTkFMX0ZJTFRFUl9UQVNLUkVGKTtcbiAgICAgICAgaWYgKHRhc2tSZWZJbmRleCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuZXh0cmFjdENvbXBsZXRlRmlsdGVyRnJvbURhdGEoZGF0YVNlY3Rpb24uc2xpY2UodGFza1JlZkluZGV4LmRhdGFHcm91cEluZGV4ICsgMSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBleHRyYWN0Q29tcGxldGVGaWx0ZXJGcm9tRGF0YShkYXRhU2VjdGlvbjogQXJyYXk8RGF0YUdyb3VwPiwgZmllbGRJZDogc3RyaW5nID0gVXNlckZpbHRlckNvbnN0YW50cy5GSUxURVJfRklFTERfSUQpOiBGaWx0ZXIgfCB1bmRlZmluZWQge1xuICAgICAgICBjb25zdCBmaWx0ZXJJbmRleCA9IGdldEZpZWxkSW5kZXhGcm9tRGF0YUdyb3VwcyhkYXRhU2VjdGlvbiwgZmllbGRJZCk7XG5cbiAgICAgICAgaWYgKGZpbHRlckluZGV4ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgZmlsdGVyU2VnbWVudDogRmlsdGVyO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgZmlsdGVyU2VnbWVudCA9IGV4dHJhY3RGaWx0ZXJGcm9tRmlsdGVyRmllbGQoXG4gICAgICAgICAgICAgICAgZGF0YVNlY3Rpb25bZmlsdGVySW5kZXguZGF0YUdyb3VwSW5kZXhdLmZpZWxkc1tmaWx0ZXJJbmRleC5maWVsZEluZGV4XSBhcyBGaWx0ZXJGaWVsZFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdGaWx0ZXIgc2VnbWVudCBjb3VsZCBub3QgYmUgZXh0cmFjdGVkIGZyb20gZmlsdGVyIGZpZWxkJyk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwYXJlbnRGaWx0ZXIgPSB0aGlzLmV4dHJhY3RDb21wbGV0ZUZpbHRlckZyb21EYXRhKGRhdGFTZWN0aW9uLnNsaWNlKGZpbHRlckluZGV4LmRhdGFHcm91cEluZGV4ICsgMSkpO1xuXG4gICAgICAgIGlmIChwYXJlbnRGaWx0ZXIgIT09IHVuZGVmaW5lZCAmJiBwYXJlbnRGaWx0ZXIudHlwZSA9PT0gZmlsdGVyU2VnbWVudC50eXBlKSB7XG4gICAgICAgICAgICByZXR1cm4gZmlsdGVyU2VnbWVudC5tZXJnZShwYXJlbnRGaWx0ZXIsIE1lcmdlT3BlcmF0b3IuQU5EKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElzIHRoZSBmaWx0ZXIgdmlldyByb290ZWQ/XG4gICAgICAgIGNvbnN0IHJvb3RWaWV3SWRGaWVsZCA9IGdldEZpZWxkRnJvbURhdGFHcm91cHMoZGF0YVNlY3Rpb24sIFVzZXJGaWx0ZXJDb25zdGFudHMuT1JJR0lOX1ZJRVdfSURfRklFTERfSUQpO1xuICAgICAgICBpZiAocm9vdFZpZXdJZEZpZWxkID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBmaWx0ZXJTZWdtZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgcm9vdFZpZXdGaWx0ZXIgPSB0aGlzLmV4dHJhY3RWaWV3RmlsdGVyKHJvb3RWaWV3SWRGaWVsZCk7XG4gICAgICAgIGlmIChyb290Vmlld0ZpbHRlciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gZmlsdGVyU2VnbWVudC5tZXJnZShyb290Vmlld0ZpbHRlciwgTWVyZ2VPcGVyYXRvci5BTkQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmaWx0ZXJTZWdtZW50O1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBleHRyYWN0Vmlld0ZpbHRlcihvcmlnaW5WaWV3SWRGaWVsZDogRGF0YUZpZWxkPGFueT4pOiBGaWx0ZXIgfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAob3JpZ2luVmlld0lkRmllbGQgPT09IHVuZGVmaW5lZCB8fCAhKG9yaWdpblZpZXdJZEZpZWxkIGluc3RhbmNlb2YgVGV4dEZpZWxkKSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDb3VsZCBub3QgZXh0cmFjdCBvcmlnaW4gdmlldyBpZCBmaWVsZCBmcm9tIHRhc2sgZGF0YScpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG9yaWdpblZpZXdJZCA9IG9yaWdpblZpZXdJZEZpZWxkLnZhbHVlO1xuXG4gICAgICAgIGNvbnN0IG1hdGNoID0gb3JpZ2luVmlld0lkLm1hdGNoKEZpbHRlckV4dHJhY3Rpb25TZXJ2aWNlLlVOVEFCQkVEX1ZJRVdfSURfRVhUUkFDVE9SKTtcbiAgICAgICAgaWYgKG1hdGNoID09PSBudWxsKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuZXhwZWN0ZWQgc3RhdGUuIFZpZXcgSWQgb2Ygb3JpZ2luIGFwcCB2aWV3IGNvdWxkIG5vdCBiZSBleHRyYWN0ZWQnKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBvcmlnaW5VbnRhYmJlZFZpZXdJZCA9IG9yaWdpblZpZXdJZC5zdWJzdHJpbmcoMCwgb3JpZ2luVmlld0lkLmxlbmd0aCAtIChtYXRjaFsxXT8ubGVuZ3RoID8/IDApKTtcbiAgICAgICAgY29uc3QgYXBwT3JpZ2luRmlsdGVyID0gdGhpcy5fZmlsdGVyUmVwb3NpdG9yeS5nZXRGaWx0ZXIob3JpZ2luVW50YWJiZWRWaWV3SWQpO1xuICAgICAgICBpZiAoYXBwT3JpZ2luRmlsdGVyID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuX2xvZy5lcnJvcihgQ291bGQgbm90IHJldHJpZXZlIG9yaWdpbiBhcHAgZmlsdGVyIHdpdGggaWQgJyR7b3JpZ2luVW50YWJiZWRWaWV3SWR9Jy4gRmFsbGluZyBiYWNrIHRvIGVtcHR5IGZpbHRlcmApO1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYXBwT3JpZ2luRmlsdGVyO1xuICAgIH1cblxufVxuIl19
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWV4dHJhY3Rpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvbmF2aWdhdGlvbi91dGlsaXR5L2ZpbHRlci1leHRyYWN0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUd6QyxPQUFPLEVBQUMsNEJBQTRCLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUNwRixPQUFPLEVBQUMsc0JBQXNCLEVBQUUsMkJBQTJCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUU5RSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFFekUsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBSWpFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBRTdFLE9BQU8sRUFFSCwyQ0FBMkMsRUFDOUMsTUFBTSxrRUFBa0UsQ0FBQzs7Ozs7OztBQUcxRTs7R0FFRztBQUlILE1BQU0sT0FBTyx1QkFBdUI7SUFLaEMsWUFBc0IsaUJBQW1DLEVBQ25DLG9CQUF5QyxFQUN6QyxRQUFtQyxFQUNuQyxlQUF1QyxFQUN2QyxJQUFtQjtRQUpuQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQ25DLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBcUI7UUFDekMsYUFBUSxHQUFSLFFBQVEsQ0FBMkI7UUFDbkMsb0JBQWUsR0FBZixlQUFlLENBQXdCO1FBQ3ZDLFNBQUksR0FBSixJQUFJLENBQWU7SUFDekMsQ0FBQztJQUVNLGtDQUFrQyxDQUFDLFdBQTZCO1FBQ25FLE1BQU0sWUFBWSxHQUFHLDJCQUEyQixDQUFDLFdBQVcs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dUJBQXVCLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUNyRixJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7WUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxRUFBcUUsQ0FBQyxDQUFDO1NBQzFGO1FBQ0QsTUFBTSxvQkFBb0IsR0FBRyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RHLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUMvRSxJQUFJLGVBQWUsS0FBSyxTQUFTLEVBQUU7WUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsaURBQWlELG9CQUFvQixpQ0FBaUMsQ0FBQyxDQUFDO1lBQ3hILE9BQU8sU0FBUyxDQUFDO1NBQ3BCO1FBQ0QsT0FBTyxlQUFlLENBQUM7SUFDM0IsQ0FBQzs7QUFuRkQsc0ZBQXNGO0FBQzVELGtEQUEwQixHQUFHLGVBQWdCLENBQUE7cUhBSDlELHVCQUF1Qjt5SEFBdkIsdUJBQXVCLGNBRnBCLE1BQU07NEZBRVQsdUJBQXVCO2tCQUhuQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0ZpbHRlcn0gZnJvbSAnLi4vLi4vZmlsdGVyL21vZGVscy9maWx0ZXInO1xuaW1wb3J0IHtEYXRhR3JvdXB9IGZyb20gJy4uLy4uL3Jlc291cmNlcy9pbnRlcmZhY2UvZGF0YS1ncm91cHMnO1xuaW1wb3J0IHtleHRyYWN0RmlsdGVyRnJvbUZpbHRlckZpZWxkfSBmcm9tICcuL25hdmlnYXRpb24taXRlbS10YXNrLXV0aWxpdHktbWV0aG9kcyc7XG5pbXBvcnQge2dldEZpZWxkRnJvbURhdGFHcm91cHMsIGdldEZpZWxkSW5kZXhGcm9tRGF0YUdyb3Vwc30gZnJvbSAnLi4vLi4vdXRpbGl0eS9nZXQtZmllbGQnO1xuaW1wb3J0IHtVc2VyRmlsdGVyQ29uc3RhbnRzfSBmcm9tICcuLi8uLi9maWx0ZXIvbW9kZWxzL3VzZXItZmlsdGVyLWNvbnN0YW50cyc7XG5pbXBvcnQge0ZpbHRlclJlcG9zaXRvcnl9IGZyb20gJy4uLy4uL2ZpbHRlci9maWx0ZXIucmVwb3NpdG9yeSc7XG5pbXBvcnQge1RleHRGaWVsZH0gZnJvbSAnLi4vLi4vZGF0YS1maWVsZHMvdGV4dC1maWVsZC9tb2RlbHMvdGV4dC1maWVsZCc7XG5pbXBvcnQge0xvZ2dlclNlcnZpY2V9IGZyb20gJy4uLy4uL2xvZ2dlci9zZXJ2aWNlcy9sb2dnZXIuc2VydmljZSc7XG5pbXBvcnQge01lcmdlT3BlcmF0b3J9IGZyb20gJy4uLy4uL2ZpbHRlci9tb2RlbHMvbWVyZ2Utb3BlcmF0b3InO1xuaW1wb3J0IHtUYXNrUmVzb3VyY2VTZXJ2aWNlfSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvZW5naW5lLWVuZHBvaW50L3Rhc2stcmVzb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQge0ZpbHRlckZpZWxkfSBmcm9tICcuLi8uLi9kYXRhLWZpZWxkcy9maWx0ZXItZmllbGQvbW9kZWxzL2ZpbHRlci1maWVsZCc7XG5pbXBvcnQge0RhdGFGaWVsZH0gZnJvbSAnLi4vLi4vZGF0YS1maWVsZHMvbW9kZWxzL2Fic3RyYWN0LWRhdGEtZmllbGQnO1xuaW1wb3J0IHtHcm91cE5hdmlnYXRpb25Db25zdGFudHN9IGZyb20gXCIuLi9tb2RlbC9ncm91cC1uYXZpZ2F0aW9uLWNvbnN0YW50c1wiO1xuaW1wb3J0IHtBbGxvd2VkTmV0c1NlcnZpY2V9IGZyb20gXCIuLi8uLi9hbGxvd2VkLW5ldHMvc2VydmljZXMvYWxsb3dlZC1uZXRzLnNlcnZpY2VcIjtcbmltcG9ydCB7XG4gICAgQWxsb3dlZE5ldHNTZXJ2aWNlRmFjdG9yeSxcbiAgICBuYXZpZ2F0aW9uSXRlbVRhc2tBbGxvd2VkTmV0c1NlcnZpY2VGYWN0b3J5XG59IGZyb20gXCIuLi8uLi9hbGxvd2VkLW5ldHMvc2VydmljZXMvZmFjdG9yeS9hbGxvd2VkLW5ldHMtc2VydmljZS1mYWN0b3J5XCI7XG5pbXBvcnQge0Jhc2VBbGxvd2VkTmV0c1NlcnZpY2V9IGZyb20gXCIuLi8uLi9hbGxvd2VkLW5ldHMvc2VydmljZXMvYmFzZS1hbGxvd2VkLW5ldHMuc2VydmljZVwiO1xuXG4vKipcbiAqIFRoaXMgc2VydmljZSBpcyBhYmxlIHRvIGxvYWQgdGhlIGZ1bGwgc2F2ZWQgZmlsdGVyIGluY2x1ZGluZyBhbGwgb2YgaXRzIGFuY2VzdG9yIGZpbHRlcnMuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRmlsdGVyRXh0cmFjdGlvblNlcnZpY2Uge1xuXG4gICAgLy8gdGhlIHNhbWUgcmVnZXggaXMgdXNlZCBpbiBhIGJhY2tlbmQgZmlsdGVyIHByb2Nlc3MgYWN0aW9uLiBQbGVhc2Uga2VlcCB0aGVtIGluIHN5bmNcbiAgICBwcm90ZWN0ZWQgc3RhdGljIHJlYWRvbmx5IFVOVEFCQkVEX1ZJRVdfSURfRVhUUkFDVE9SID0gJ14uKj8oLVxcXFxkKyk/JCc7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX2ZpbHRlclJlcG9zaXRvcnk6IEZpbHRlclJlcG9zaXRvcnksXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIF90YXNrUmVzb3VyY2VTZXJ2aWNlOiBUYXNrUmVzb3VyY2VTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfZmFjdG9yeTogQWxsb3dlZE5ldHNTZXJ2aWNlRmFjdG9yeSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgYmFzZUFsbG93ZWROZXRzOiBCYXNlQWxsb3dlZE5ldHNTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfbG9nOiBMb2dnZXJTZXJ2aWNlKSB7XG4gICAgfVxuXG4gICAgcHVibGljIGV4dHJhY3RBZGRpdGlvbmFsRmlsdGVyQWxsb3dlZE5ldHMoZGF0YVNlY3Rpb246IEFycmF5PERhdGFHcm91cD4pOiBBbGxvd2VkTmV0c1NlcnZpY2Uge1xuICAgICAgICBjb25zdCB0YXNrUmVmSW5kZXggPSBnZXRGaWVsZEluZGV4RnJvbURhdGFHcm91cHMoZGF0YVNlY3Rpb24sIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX0FERElUSU9OQUxfRklMVEVSX1RBU0tSRUYpO1xuICAgICAgICBpZiAodGFza1JlZkluZGV4ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc2xpY2VkID0gZGF0YVNlY3Rpb24uc2xpY2UodGFza1JlZkluZGV4LmRhdGFHcm91cEluZGV4ICsgMSlcbiAgICAgICAgaWYgKHNsaWNlZC5sZW5ndGggPT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBuYXZpZ2F0aW9uSXRlbVRhc2tBbGxvd2VkTmV0c1NlcnZpY2VGYWN0b3J5KHRoaXMuX2ZhY3RvcnksIHRoaXMuYmFzZUFsbG93ZWROZXRzLCBzbGljZWQpXG4gICAgfVxuXG4gICAgcHVibGljIGV4dHJhY3RDb21wbGV0ZUFkZGl0aW9uYWxGaWx0ZXJGcm9tRGF0YShkYXRhU2VjdGlvbjogQXJyYXk8RGF0YUdyb3VwPik6IEZpbHRlciB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGNvbnN0IHRhc2tSZWZJbmRleCA9IGdldEZpZWxkSW5kZXhGcm9tRGF0YUdyb3VwcyhkYXRhU2VjdGlvbiwgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfQURESVRJT05BTF9GSUxURVJfVEFTS1JFRik7XG4gICAgICAgIGlmICh0YXNrUmVmSW5kZXggPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmV4dHJhY3RDb21wbGV0ZUZpbHRlckZyb21EYXRhKGRhdGFTZWN0aW9uLnNsaWNlKHRhc2tSZWZJbmRleC5kYXRhR3JvdXBJbmRleCArIDEpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZXh0cmFjdENvbXBsZXRlRmlsdGVyRnJvbURhdGEoZGF0YVNlY3Rpb246IEFycmF5PERhdGFHcm91cD4sIGZpZWxkSWQ6IHN0cmluZyA9IFVzZXJGaWx0ZXJDb25zdGFudHMuRklMVEVSX0ZJRUxEX0lEKTogRmlsdGVyIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgY29uc3QgZmlsdGVySW5kZXggPSBnZXRGaWVsZEluZGV4RnJvbURhdGFHcm91cHMoZGF0YVNlY3Rpb24sIGZpZWxkSWQpO1xuXG4gICAgICAgIGlmIChmaWx0ZXJJbmRleCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGZpbHRlclNlZ21lbnQ6IEZpbHRlcjtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGZpbHRlclNlZ21lbnQgPSBleHRyYWN0RmlsdGVyRnJvbUZpbHRlckZpZWxkKFxuICAgICAgICAgICAgICAgIGRhdGFTZWN0aW9uW2ZpbHRlckluZGV4LmRhdGFHcm91cEluZGV4XS5maWVsZHNbZmlsdGVySW5kZXguZmllbGRJbmRleF0gYXMgRmlsdGVyRmllbGRcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRmlsdGVyIHNlZ21lbnQgY291bGQgbm90IGJlIGV4dHJhY3RlZCBmcm9tIGZpbHRlciBmaWVsZCcpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcGFyZW50RmlsdGVyID0gdGhpcy5leHRyYWN0Q29tcGxldGVGaWx0ZXJGcm9tRGF0YShkYXRhU2VjdGlvbi5zbGljZShmaWx0ZXJJbmRleC5kYXRhR3JvdXBJbmRleCArIDEpKTtcblxuICAgICAgICBpZiAocGFyZW50RmlsdGVyICE9PSB1bmRlZmluZWQgJiYgcGFyZW50RmlsdGVyLnR5cGUgPT09IGZpbHRlclNlZ21lbnQudHlwZSkge1xuICAgICAgICAgICAgcmV0dXJuIGZpbHRlclNlZ21lbnQubWVyZ2UocGFyZW50RmlsdGVyLCBNZXJnZU9wZXJhdG9yLkFORCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJcyB0aGUgZmlsdGVyIHZpZXcgcm9vdGVkP1xuICAgICAgICBjb25zdCByb290Vmlld0lkRmllbGQgPSBnZXRGaWVsZEZyb21EYXRhR3JvdXBzKGRhdGFTZWN0aW9uLCBVc2VyRmlsdGVyQ29uc3RhbnRzLk9SSUdJTl9WSUVXX0lEX0ZJRUxEX0lEKTtcbiAgICAgICAgaWYgKHJvb3RWaWV3SWRGaWVsZCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gZmlsdGVyU2VnbWVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJvb3RWaWV3RmlsdGVyID0gdGhpcy5leHRyYWN0Vmlld0ZpbHRlcihyb290Vmlld0lkRmllbGQpO1xuICAgICAgICBpZiAocm9vdFZpZXdGaWx0ZXIgIT09IHVuZGVmaW5lZCAmJiByb290Vmlld0ZpbHRlci50eXBlID09PSBmaWx0ZXJTZWdtZW50LnR5cGUpIHtcbiAgICAgICAgICAgIHJldHVybiBmaWx0ZXJTZWdtZW50Lm1lcmdlKHJvb3RWaWV3RmlsdGVyLCBNZXJnZU9wZXJhdG9yLkFORCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZpbHRlclNlZ21lbnQ7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGV4dHJhY3RWaWV3RmlsdGVyKG9yaWdpblZpZXdJZEZpZWxkOiBEYXRhRmllbGQ8YW55Pik6IEZpbHRlciB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmIChvcmlnaW5WaWV3SWRGaWVsZCA9PT0gdW5kZWZpbmVkIHx8ICEob3JpZ2luVmlld0lkRmllbGQgaW5zdGFuY2VvZiBUZXh0RmllbGQpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvdWxkIG5vdCBleHRyYWN0IG9yaWdpbiB2aWV3IGlkIGZpZWxkIGZyb20gdGFzayBkYXRhJyk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgb3JpZ2luVmlld0lkID0gb3JpZ2luVmlld0lkRmllbGQudmFsdWU7XG5cbiAgICAgICAgY29uc3QgbWF0Y2ggPSBvcmlnaW5WaWV3SWQubWF0Y2goRmlsdGVyRXh0cmFjdGlvblNlcnZpY2UuVU5UQUJCRURfVklFV19JRF9FWFRSQUNUT1IpO1xuICAgICAgICBpZiAobWF0Y2ggPT09IG51bGwpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignVW5leHBlY3RlZCBzdGF0ZS4gVmlldyBJZCBvZiBvcmlnaW4gYXBwIHZpZXcgY291bGQgbm90IGJlIGV4dHJhY3RlZCcpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG9yaWdpblVudGFiYmVkVmlld0lkID0gb3JpZ2luVmlld0lkLnN1YnN0cmluZygwLCBvcmlnaW5WaWV3SWQubGVuZ3RoIC0gKG1hdGNoWzFdPy5sZW5ndGggPz8gMCkpO1xuICAgICAgICBjb25zdCBhcHBPcmlnaW5GaWx0ZXIgPSB0aGlzLl9maWx0ZXJSZXBvc2l0b3J5LmdldEZpbHRlcihvcmlnaW5VbnRhYmJlZFZpZXdJZCk7XG4gICAgICAgIGlmIChhcHBPcmlnaW5GaWx0ZXIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5fbG9nLmVycm9yKGBDb3VsZCBub3QgcmV0cmlldmUgb3JpZ2luIGFwcCBmaWx0ZXIgd2l0aCBpZCAnJHtvcmlnaW5VbnRhYmJlZFZpZXdJZH0nLiBGYWxsaW5nIGJhY2sgdG8gZW1wdHkgZmlsdGVyYCk7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhcHBPcmlnaW5GaWx0ZXI7XG4gICAgfVxuXG59XG4iXX0=
|
|
@@ -6,6 +6,7 @@ import { AbstractPanelWithImmediateDataComponent } from '../abstract/panel-with-
|
|
|
6
6
|
import { take } from 'rxjs/operators';
|
|
7
7
|
import { getImmediateData } from '../../utility/get-immediate-data';
|
|
8
8
|
import { PermissionType } from '../../process/permissions';
|
|
9
|
+
import { FormControl } from '@angular/forms';
|
|
9
10
|
import * as i0 from "@angular/core";
|
|
10
11
|
import * as i1 from "../../resources/engine-endpoint/case-resource.service";
|
|
11
12
|
import * as i2 from "../../view/case-view/service/case-view-service";
|
|
@@ -32,6 +33,10 @@ export class AbstractCasePanelComponent extends AbstractPanelWithImmediateDataCo
|
|
|
32
33
|
this.showCasePanelIcon = true;
|
|
33
34
|
this.showDeleteMenu = false;
|
|
34
35
|
this.textEllipsis = false;
|
|
36
|
+
this._approvalFormControl = new FormControl();
|
|
37
|
+
}
|
|
38
|
+
get approvalFormControl() {
|
|
39
|
+
return this._approvalFormControl;
|
|
35
40
|
}
|
|
36
41
|
show(event) {
|
|
37
42
|
event.stopPropagation();
|
|
@@ -86,7 +91,7 @@ export class AbstractCasePanelComponent extends AbstractPanelWithImmediateDataCo
|
|
|
86
91
|
}
|
|
87
92
|
}
|
|
88
93
|
AbstractCasePanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractCasePanelComponent, deps: [{ token: i1.CaseResourceService }, { token: i2.CaseViewService }, { token: i3.SnackBarService }, { token: i4.TranslateService }, { token: i5.LoggerService }, { token: i6.UserService }, { token: i7.CurrencyPipe }, { token: i8.PermissionService }, { token: i9.OverflowService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
89
|
-
AbstractCasePanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractCasePanelComponent, selector: "ncc-abstract-case-panel", inputs: { case_: "case_", selectedHeaders$: "selectedHeaders$", responsiveBody: "responsiveBody", first: "first", last: "last", showCasePanelIcon: "showCasePanelIcon", showDeleteMenu: "showDeleteMenu", textEllipsis: "textEllipsis" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
94
|
+
AbstractCasePanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractCasePanelComponent, selector: "ncc-abstract-case-panel", inputs: { case_: "case_", approval: "approval", selectedHeaders$: "selectedHeaders$", responsiveBody: "responsiveBody", first: "first", last: "last", showCasePanelIcon: "showCasePanelIcon", showDeleteMenu: "showDeleteMenu", textEllipsis: "textEllipsis" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
90
95
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractCasePanelComponent, decorators: [{
|
|
91
96
|
type: Component,
|
|
92
97
|
args: [{
|
|
@@ -97,6 +102,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
97
102
|
type: Optional
|
|
98
103
|
}] }]; }, propDecorators: { case_: [{
|
|
99
104
|
type: Input
|
|
105
|
+
}], approval: [{
|
|
106
|
+
type: Input
|
|
100
107
|
}], selectedHeaders$: [{
|
|
101
108
|
type: Input
|
|
102
109
|
}], responsiveBody: [{
|
|
@@ -112,4 +119,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
112
119
|
}], textEllipsis: [{
|
|
113
120
|
type: Input
|
|
114
121
|
}] } });
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtY2FzZS1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL3BhbmVsL2Nhc2UtcGFuZWwvYWJzdHJhY3QtY2FzZS1wYW5lbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBR3pELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUU3RCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFPdkUsT0FBTyxFQUFDLHVDQUF1QyxFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFFOUYsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3BDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBS2xFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7Ozs7QUFNekQsTUFBTSxPQUFnQiwwQkFBMkIsU0FBUSx1Q0FBdUM7SUFXNUYsWUFBZ0Msb0JBQXlDLEVBQ3pDLGdCQUFpQyxFQUNqQyxnQkFBaUMsRUFDakMsaUJBQW1DLEVBQ25DLElBQW1CLEVBQ25CLFlBQXlCLEVBQ3pCLGFBQTJCLEVBQzNCLGtCQUFxQyxFQUN6QixnQkFBaUM7UUFDekUsS0FBSyxDQUFDLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBVDlCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBcUI7UUFDekMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQUNqQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWlCO1FBQ2pDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBa0I7UUFDbkMsU0FBSSxHQUFKLElBQUksQ0FBZTtRQUNuQixpQkFBWSxHQUFaLFlBQVksQ0FBYTtRQUN6QixrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUMzQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBQ3pCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBaUI7UUFmcEUsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFHdEIsc0JBQWlCLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO0lBWTlCLENBQUM7SUFFTSxJQUFJLENBQUMsS0FBaUI7UUFDekIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFUyxvQkFBb0IsQ0FBQyxjQUE0QjtRQUN2RCxRQUFRLGNBQWMsQ0FBQyxlQUFlLEVBQUU7WUFDcEMsS0FBSyxhQUFhLENBQUMsUUFBUTtnQkFDdkIsT0FBTyxFQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUMsQ0FBQztZQUN2RSxLQUFLLGFBQWEsQ0FBQyxTQUFTO2dCQUN4QixPQUFPLEVBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBQyxDQUFDO1lBQ3ZFLEtBQUssYUFBYSxDQUFDLEtBQUs7Z0JBQ3BCLE9BQU8sRUFBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFDLENBQUM7WUFDcEUsS0FBSyxhQUFhLENBQUMsTUFBTTtnQkFDckIsT0FBTyxFQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxNQUFNLEVBQUMsQ0FBQztZQUNyRixLQUFLLGFBQWEsQ0FBQyxhQUFhO2dCQUM1QixPQUFPO29CQUNILEtBQUssRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxNQUFNLENBQUMsdUJBQXVCLENBQUM7b0JBQ3hFLElBQUksRUFBRSxPQUFPO29CQUNiLElBQUksRUFBRSxNQUFNO2lCQUNmLENBQUM7U0FDVDtJQUNMLENBQUM7SUFFUyx5QkFBeUIsQ0FBQyxjQUE0QjtRQUM1RCxNQUFNLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLGNBQWMsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMvRSxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRU0sVUFBVTtRQUNiLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBaUMsRUFBRSxFQUFFO1lBQ3BILElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDZCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEtBQUssU0FBUztvQkFDeEUsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsa0NBQWtDLENBQUM7b0JBQ3BFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUM1QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUM7YUFDbEM7aUJBQU0sSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsaUNBQWlDLENBQUMsQ0FBQyxDQUFDO2FBQ3RGO1FBQ0wsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFO1lBQ1AsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLGlDQUFpQyxDQUFDLENBQUMsQ0FBQztRQUN2RixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxTQUFTO1FBQ1osT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDeEYsQ0FBQztJQUVPLFVBQVUsQ0FBQyxPQUFlO1FBQzlCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRU0sV0FBVztRQUNkLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO0lBQzFILENBQUM7O3dIQTlFaUIsMEJBQTBCOzRHQUExQiwwQkFBMEIsZ1VBRmxDLEVBQUU7NEZBRU0sMEJBQTBCO2tCQUovQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFFBQVEsRUFBRSxFQUFFO2lCQUNmOzswQkFvQjBCLFFBQVE7NENBakJmLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1UsZ0JBQWdCO3NCQUEvQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0LCBPcHRpb25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtDYXNlfSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvaW50ZXJmYWNlL2Nhc2UnO1xuaW1wb3J0IHt0b01vbWVudH0gZnJvbSAnLi4vLi4vcmVzb3VyY2VzL3R5cGVzL25hZS1kYXRlLXR5cGUnO1xuaW1wb3J0IHtIZWFkZXJDb2x1bW59IGZyb20gJy4uLy4uL2hlYWRlci9tb2RlbHMvaGVhZGVyLWNvbHVtbic7XG5pbXBvcnQge0RBVEVfVElNRV9GT1JNQVRfU1RSSU5HfSBmcm9tICcuLi8uLi9tb21lbnQvdGltZS1mb3JtYXRzJztcbmltcG9ydCB7Q2FzZU1ldGFGaWVsZH0gZnJvbSAnLi4vLi4vaGVhZGVyL2Nhc2UtaGVhZGVyL2Nhc2UtbWVudGEtZW51bSc7XG5pbXBvcnQge0Nhc2VSZXNvdXJjZVNlcnZpY2V9IGZyb20gJy4uLy4uL3Jlc291cmNlcy9lbmdpbmUtZW5kcG9pbnQvY2FzZS1yZXNvdXJjZS5zZXJ2aWNlJztcbmltcG9ydCB7Q2FzZVZpZXdTZXJ2aWNlfSBmcm9tICcuLi8uLi92aWV3L2Nhc2Utdmlldy9zZXJ2aWNlL2Nhc2Utdmlldy1zZXJ2aWNlJztcbmltcG9ydCB7U25hY2tCYXJTZXJ2aWNlfSBmcm9tICcuLi8uLi9zbmFjay1iYXIvc2VydmljZXMvc25hY2stYmFyLnNlcnZpY2UnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7TG9nZ2VyU2VydmljZX0gZnJvbSAnLi4vLi4vbG9nZ2VyL3NlcnZpY2VzL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7T3ZlcmZsb3dTZXJ2aWNlfSBmcm9tICcuLi8uLi9oZWFkZXIvc2VydmljZXMvb3ZlcmZsb3cuc2VydmljZSc7XG5pbXBvcnQge0Fic3RyYWN0UGFuZWxXaXRoSW1tZWRpYXRlRGF0YUNvbXBvbmVudH0gZnJvbSAnLi4vYWJzdHJhY3QvcGFuZWwtd2l0aC1pbW1lZGlhdGUtZGF0YSc7XG5pbXBvcnQge1VzZXJTZXJ2aWNlfSBmcm9tICcuLi8uLi91c2VyL3NlcnZpY2VzL3VzZXIuc2VydmljZSc7XG5pbXBvcnQge3Rha2V9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7Z2V0SW1tZWRpYXRlRGF0YX0gZnJvbSAnLi4vLi4vdXRpbGl0eS9nZXQtaW1tZWRpYXRlLWRhdGEnO1xuaW1wb3J0IHtGZWF0dXJlZFZhbHVlfSBmcm9tICcuLi9hYnN0cmFjdC9mZWF0dXJlZC12YWx1ZSc7XG5pbXBvcnQge0V2ZW50T3V0Y29tZU1lc3NhZ2VSZXNvdXJjZX0gZnJvbSAnLi4vLi4vcmVzb3VyY2VzL2ludGVyZmFjZS9tZXNzYWdlLXJlc291cmNlJztcbmltcG9ydCB7Q3VycmVuY3lQaXBlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtQZXJtaXNzaW9uU2VydmljZX0gZnJvbSAnLi4vLi4vYXV0aG9yaXphdGlvbi9wZXJtaXNzaW9uL3Blcm1pc3Npb24uc2VydmljZSc7XG5pbXBvcnQge1Blcm1pc3Npb25UeXBlfSBmcm9tICcuLi8uLi9wcm9jZXNzL3Blcm1pc3Npb25zJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduY2MtYWJzdHJhY3QtY2FzZS1wYW5lbCcsXG4gICAgdGVtcGxhdGU6ICcnXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0Q2FzZVBhbmVsQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RQYW5lbFdpdGhJbW1lZGlhdGVEYXRhQ29tcG9uZW50IHtcblxuICAgIEBJbnB1dCgpIHB1YmxpYyBjYXNlXzogQ2FzZTtcbiAgICBASW5wdXQoKSBwdWJsaWMgc2VsZWN0ZWRIZWFkZXJzJDogT2JzZXJ2YWJsZTxBcnJheTxIZWFkZXJDb2x1bW4+PjtcbiAgICBASW5wdXQoKSByZXNwb25zaXZlQm9keSA9IHRydWU7XG4gICAgQElucHV0KCkgZmlyc3Q6IGJvb2xlYW47XG4gICAgQElucHV0KCkgbGFzdDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBzaG93Q2FzZVBhbmVsSWNvbiA9IHRydWU7XG4gICAgQElucHV0KCkgc2hvd0RlbGV0ZU1lbnUgPSBmYWxzZTtcbiAgICBASW5wdXQoKSB0ZXh0RWxsaXBzaXMgPSBmYWxzZTtcblxuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX2Nhc2VSZXNvdXJjZVNlcnZpY2U6IENhc2VSZXNvdXJjZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfY2FzZVZpZXdTZXJ2aWNlOiBDYXNlVmlld1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfc25hY2tCYXJTZXJ2aWNlOiBTbmFja0JhclNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9sb2c6IExvZ2dlclNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2N1cnJlbmN5UGlwZTogQ3VycmVuY3lQaXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX3Blcm1pc3Npb25TZXJ2aWNlOiBQZXJtaXNzaW9uU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgcHJvdGVjdGVkIF9vdmVyZmxvd1NlcnZpY2U6IE92ZXJmbG93U2VydmljZSwpIHtcbiAgICAgICAgc3VwZXIoX3RyYW5zbGF0ZVNlcnZpY2UsIF9jdXJyZW5jeVBpcGUsIF9vdmVyZmxvd1NlcnZpY2UpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzaG93KGV2ZW50OiBNb3VzZUV2ZW50KTogYm9vbGVhbiB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEZlYXR1cmVkTWV0YVZhbHVlKHNlbGVjdGVkSGVhZGVyOiBIZWFkZXJDb2x1bW4pOiBGZWF0dXJlZFZhbHVlIHtcbiAgICAgICAgc3dpdGNoIChzZWxlY3RlZEhlYWRlci5maWVsZElkZW50aWZpZXIpIHtcbiAgICAgICAgICAgIGNhc2UgQ2FzZU1ldGFGaWVsZC5NT05HT19JRDpcbiAgICAgICAgICAgICAgICByZXR1cm4ge3ZhbHVlOiB0aGlzLmNhc2VfLnN0cmluZ0lkLCBpY29uOiB1bmRlZmluZWQsIHR5cGU6ICdtZXRhJ307XG4gICAgICAgICAgICBjYXNlIENhc2VNZXRhRmllbGQuVklTVUFMX0lEOlxuICAgICAgICAgICAgICAgIHJldHVybiB7dmFsdWU6IHRoaXMuY2FzZV8udmlzdWFsSWQsIGljb246IHVuZGVmaW5lZCwgdHlwZTogJ21ldGEnfTtcbiAgICAgICAgICAgIGNhc2UgQ2FzZU1ldGFGaWVsZC5USVRMRTpcbiAgICAgICAgICAgICAgICByZXR1cm4ge3ZhbHVlOiB0aGlzLmNhc2VfLnRpdGxlLCBpY29uOiB1bmRlZmluZWQsIHR5cGU6ICdtZXRhJ307XG4gICAgICAgICAgICBjYXNlIENhc2VNZXRhRmllbGQuQVVUSE9SOlxuICAgICAgICAgICAgICAgIHJldHVybiB7dmFsdWU6IHRoaXMuY2FzZV8uYXV0aG9yLmZ1bGxOYW1lLCBpY29uOiAnYWNjb3VudF9jaXJjbGUnLCB0eXBlOiAnbWV0YSd9O1xuICAgICAgICAgICAgY2FzZSBDYXNlTWV0YUZpZWxkLkNSRUFUSU9OX0RBVEU6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHRvTW9tZW50KHRoaXMuY2FzZV8uY3JlYXRpb25EYXRlKS5mb3JtYXQoREFURV9USU1FX0ZPUk1BVF9TVFJJTkcpLFxuICAgICAgICAgICAgICAgICAgICBpY29uOiAnZXZlbnQnLFxuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnbWV0YSdcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEZlYXR1cmVkSW1tZWRpYXRlVmFsdWUoc2VsZWN0ZWRIZWFkZXI6IEhlYWRlckNvbHVtbik6IEZlYXR1cmVkVmFsdWUge1xuICAgICAgICBjb25zdCBpbW1lZGlhdGUgPSBnZXRJbW1lZGlhdGVEYXRhKHRoaXMuY2FzZV8sIHNlbGVjdGVkSGVhZGVyLmZpZWxkSWRlbnRpZmllcik7XG4gICAgICAgIHJldHVybiB0aGlzLnBhcnNlSW1tZWRpYXRlVmFsdWUoaW1tZWRpYXRlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZGVsZXRlQ2FzZSgpIHtcbiAgICAgICAgdGhpcy5fY2FzZVJlc291cmNlU2VydmljZS5kZWxldGVDYXNlKHRoaXMuY2FzZV8uc3RyaW5nSWQpLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKChkYXRhOiBFdmVudE91dGNvbWVNZXNzYWdlUmVzb3VyY2UpID0+IHtcbiAgICAgICAgICAgIGlmIChkYXRhLnN1Y2Nlc3MpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9zbmFja0JhclNlcnZpY2Uub3BlblN1Y2Nlc3NTbmFja0JhcihkYXRhLm91dGNvbWUubWVzc2FnZSA9PT0gdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgICAgID8gdGhpcy5fdHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCd0YXNrcy5zbmFja2Jhci5jYXNlRGVsZXRlU3VjY2VzcycpXG4gICAgICAgICAgICAgICAgICAgIDogZGF0YS5vdXRjb21lLm1lc3NhZ2UpO1xuICAgICAgICAgICAgICAgIHRoaXMuX2Nhc2VWaWV3U2VydmljZS5yZWxvYWQoKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoZGF0YS5lcnJvcikge1xuICAgICAgICAgICAgICAgIHRoaXMudGhyb3dFcnJvcih0aGlzLl90cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3Rhc2tzLnNuYWNrYmFyLmNhc2VEZWxldGVGYWlsZWQnKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgIHRoaXMudGhyb3dFcnJvcih0aGlzLl90cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3Rhc2tzLnNuYWNrYmFyLmNhc2VEZWxldGVGYWlsZWQnKSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBjYW5EZWxldGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wZXJtaXNzaW9uU2VydmljZS5oYXNDYXNlUGVybWlzc2lvbih0aGlzLmNhc2VfLCBQZXJtaXNzaW9uVHlwZS5ERUxFVEUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdGhyb3dFcnJvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fc25hY2tCYXJTZXJ2aWNlLm9wZW5FcnJvclNuYWNrQmFyKG1lc3NhZ2UpO1xuICAgICAgICB0aGlzLl9sb2cuZXJyb3IobWVzc2FnZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldE1pbldpZHRoKCkge1xuICAgICAgICByZXR1cm4gKHRoaXMuX292ZXJmbG93U2VydmljZSAmJiB0aGlzLl9vdmVyZmxvd1NlcnZpY2Uub3ZlcmZsb3dNb2RlKSA/IGAke3RoaXMuX292ZXJmbG93U2VydmljZS5jb2x1bW5XaWR0aH1weGAgOiAnMCc7XG4gICAgfVxufVxuIl19
|
|
122
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtY2FzZS1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL3BhbmVsL2Nhc2UtcGFuZWwvYWJzdHJhY3QtY2FzZS1wYW5lbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBR3pELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUU3RCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFPdkUsT0FBTyxFQUFDLHVDQUF1QyxFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFFOUYsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3BDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBS2xFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7O0FBTTNDLE1BQU0sT0FBZ0IsMEJBQTJCLFNBQVEsdUNBQXVDO0lBYzVGLFlBQWdDLG9CQUF5QyxFQUN6QyxnQkFBaUMsRUFDakMsZ0JBQWlDLEVBQ2pDLGlCQUFtQyxFQUNuQyxJQUFtQixFQUNuQixZQUF5QixFQUN6QixhQUEyQixFQUMzQixrQkFBcUMsRUFDekIsZ0JBQWlDO1FBQ3pFLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQVQ5Qix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXFCO1FBQ3pDLHFCQUFnQixHQUFoQixn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LEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxnQkFBZ0I7c0JBQS9CLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9wdGlvbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0Nhc2V9IGZyb20gJy4uLy4uL3Jlc291cmNlcy9pbnRlcmZhY2UvY2FzZSc7XG5pbXBvcnQge3RvTW9tZW50fSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvdHlwZXMvbmFlLWRhdGUtdHlwZSc7XG5pbXBvcnQge0hlYWRlckNvbHVtbn0gZnJvbSAnLi4vLi4vaGVhZGVyL21vZGVscy9oZWFkZXItY29sdW1uJztcbmltcG9ydCB7REFURV9USU1FX0ZPUk1BVF9TVFJJTkd9IGZyb20gJy4uLy4uL21vbWVudC90aW1lLWZvcm1hdHMnO1xuaW1wb3J0IHtDYXNlTWV0YUZpZWxkfSBmcm9tICcuLi8uLi9oZWFkZXIvY2FzZS1oZWFkZXIvY2FzZS1tZW50YS1lbnVtJztcbmltcG9ydCB7Q2FzZVJlc291cmNlU2VydmljZX0gZnJvbSAnLi4vLi4vcmVzb3VyY2VzL2VuZ2luZS1lbmRwb2ludC9jYXNlLXJlc291cmNlLnNlcnZpY2UnO1xuaW1wb3J0IHtDYXNlVmlld1NlcnZpY2V9IGZyb20gJy4uLy4uL3ZpZXcvY2FzZS12aWV3L3NlcnZpY2UvY2FzZS12aWV3LXNlcnZpY2UnO1xuaW1wb3J0IHtTbmFja0JhclNlcnZpY2V9IGZyb20gJy4uLy4uL3NuYWNrLWJhci9zZXJ2aWNlcy9zbmFjay1iYXIuc2VydmljZSc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJTZXJ2aWNlfSBmcm9tICcuLi8uLi9sb2dnZXIvc2VydmljZXMvbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHtPdmVyZmxvd1NlcnZpY2V9IGZyb20gJy4uLy4uL2hlYWRlci9zZXJ2aWNlcy9vdmVyZmxvdy5zZXJ2aWNlJztcbmltcG9ydCB7QWJzdHJhY3RQYW5lbFdpdGhJbW1lZGlhdGVEYXRhQ29tcG9uZW50fSBmcm9tICcuLi9hYnN0cmFjdC9wYW5lbC13aXRoLWltbWVkaWF0ZS1kYXRhJztcbmltcG9ydCB7VXNlclNlcnZpY2V9IGZyb20gJy4uLy4uL3VzZXIvc2VydmljZXMvdXNlci5zZXJ2aWNlJztcbmltcG9ydCB7dGFrZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtnZXRJbW1lZGlhdGVEYXRhfSBmcm9tICcuLi8uLi91dGlsaXR5L2dldC1pbW1lZGlhdGUtZGF0YSc7XG5pbXBvcnQge0ZlYXR1cmVkVmFsdWV9IGZyb20gJy4uL2Fic3RyYWN0L2ZlYXR1cmVkLXZhbHVlJztcbmltcG9ydCB7RXZlbnRPdXRjb21lTWVzc2FnZVJlc291cmNlfSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvaW50ZXJmYWNlL21lc3NhZ2UtcmVzb3VyY2UnO1xuaW1wb3J0IHtDdXJyZW5jeVBpcGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1Blcm1pc3Npb25TZXJ2aWNlfSBmcm9tICcuLi8uLi9hdXRob3JpemF0aW9uL3Blcm1pc3Npb24vcGVybWlzc2lvbi5zZXJ2aWNlJztcbmltcG9ydCB7UGVybWlzc2lvblR5cGV9IGZyb20gJy4uLy4uL3Byb2Nlc3MvcGVybWlzc2lvbnMnO1xuaW1wb3J0IHtGb3JtQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25jYy1hYnN0cmFjdC1jYXNlLXBhbmVsJyxcbiAgICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RDYXNlUGFuZWxDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdFBhbmVsV2l0aEltbWVkaWF0ZURhdGFDb21wb25lbnQge1xuXG5cbiAgICBASW5wdXQoKSBwdWJsaWMgY2FzZV86IENhc2U7XG4gICAgQElucHV0KCkgcHVibGljIGFwcHJvdmFsOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBzZWxlY3RlZEhlYWRlcnMkOiBPYnNlcnZhYmxlPEFycmF5PEhlYWRlckNvbHVtbj4+O1xuICAgIEBJbnB1dCgpIHJlc3BvbnNpdmVCb2R5ID0gdHJ1ZTtcbiAgICBASW5wdXQoKSBmaXJzdDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBsYXN0OiBib29sZWFuO1xuICAgIEBJbnB1dCgpIHNob3dDYXNlUGFuZWxJY29uID0gdHJ1ZTtcbiAgICBASW5wdXQoKSBzaG93RGVsZXRlTWVudSA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHRleHRFbGxpcHNpcyA9IGZhbHNlO1xuICAgIHByb3RlY3RlZCBfYXBwcm92YWxGb3JtQ29udHJvbDogRm9ybUNvbnRyb2w7XG5cbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IocHJvdGVjdGVkIF9jYXNlUmVzb3VyY2VTZXJ2aWNlOiBDYXNlUmVzb3VyY2VTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2Nhc2VWaWV3U2VydmljZTogQ2FzZVZpZXdTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX3NuYWNrQmFyU2VydmljZTogU25hY2tCYXJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX3RyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfbG9nOiBMb2dnZXJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX3VzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9jdXJyZW5jeVBpcGU6IEN1cnJlbmN5UGlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9wZXJtaXNzaW9uU2VydmljZTogUGVybWlzc2lvblNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIHByb3RlY3RlZCBfb3ZlcmZsb3dTZXJ2aWNlOiBPdmVyZmxvd1NlcnZpY2UsKSB7XG4gICAgICAgIHN1cGVyKF90cmFuc2xhdGVTZXJ2aWNlLCBfY3VycmVuY3lQaXBlLCBfb3ZlcmZsb3dTZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5fYXBwcm92YWxGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgpO1xuICAgIH1cblxuICAgIGdldCBhcHByb3ZhbEZvcm1Db250cm9sKCk6IEZvcm1Db250cm9sIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FwcHJvdmFsRm9ybUNvbnRyb2w7XG4gICAgfVxuXG4gICAgcHVibGljIHNob3coZXZlbnQ6IE1vdXNlRXZlbnQpOiBib29sZWFuIHtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0RmVhdHVyZWRNZXRhVmFsdWUoc2VsZWN0ZWRIZWFkZXI6IEhlYWRlckNvbHVtbik6IEZlYXR1cmVkVmFsdWUge1xuICAgICAgICBzd2l0Y2ggKHNlbGVjdGVkSGVhZGVyLmZpZWxkSWRlbnRpZmllcikge1xuICAgICAgICAgICAgY2FzZSBDYXNlTWV0YUZpZWxkLk1PTkdPX0lEOlxuICAgICAgICAgICAgICAgIHJldHVybiB7dmFsdWU6IHRoaXMuY2FzZV8uc3RyaW5nSWQsIGljb246IHVuZGVmaW5lZCwgdHlwZTogJ21ldGEnfTtcbiAgICAgICAgICAgIGNhc2UgQ2FzZU1ldGFGaWVsZC5WSVNVQUxfSUQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGhpcy5jYXNlXy52aXN1YWxJZCwgaWNvbjogdW5kZWZpbmVkLCB0eXBlOiAnbWV0YSd9O1xuICAgICAgICAgICAgY2FzZSBDYXNlTWV0YUZpZWxkLlRJVExFOlxuICAgICAgICAgICAgICAgIHJldHVybiB7dmFsdWU6IHRoaXMuY2FzZV8udGl0bGUsIGljb246IHVuZGVmaW5lZCwgdHlwZTogJ21ldGEnfTtcbiAgICAgICAgICAgIGNhc2UgQ2FzZU1ldGFGaWVsZC5BVVRIT1I6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGhpcy5jYXNlXy5hdXRob3IuZnVsbE5hbWUsIGljb246ICdhY2NvdW50X2NpcmNsZScsIHR5cGU6ICdtZXRhJ307XG4gICAgICAgICAgICBjYXNlIENhc2VNZXRhRmllbGQuQ1JFQVRJT05fREFURTpcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogdG9Nb21lbnQodGhpcy5jYXNlXy5jcmVhdGlvbkRhdGUpLmZvcm1hdChEQVRFX1RJTUVfRk9STUFUX1NUUklORyksXG4gICAgICAgICAgICAgICAgICAgIGljb246ICdldmVudCcsXG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdtZXRhJ1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0RmVhdHVyZWRJbW1lZGlhdGVWYWx1ZShzZWxlY3RlZEhlYWRlcjogSGVhZGVyQ29sdW1uKTogRmVhdHVyZWRWYWx1ZSB7XG4gICAgICAgIGNvbnN0IGltbWVkaWF0ZSA9IGdldEltbWVkaWF0ZURhdGEodGhpcy5jYXNlXywgc2VsZWN0ZWRIZWFkZXIuZmllbGRJZGVudGlmaWVyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMucGFyc2VJbW1lZGlhdGVWYWx1ZShpbW1lZGlhdGUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBkZWxldGVDYXNlKCkge1xuICAgICAgICB0aGlzLl9jYXNlUmVzb3VyY2VTZXJ2aWNlLmRlbGV0ZUNhc2UodGhpcy5jYXNlXy5zdHJpbmdJZCkucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKGRhdGE6IEV2ZW50T3V0Y29tZU1lc3NhZ2VSZXNvdXJjZSkgPT4ge1xuICAgICAgICAgICAgaWYgKGRhdGEuc3VjY2Vzcykge1xuICAgICAgICAgICAgICAgIHRoaXMuX3NuYWNrQmFyU2VydmljZS5vcGVuU3VjY2Vzc1NuYWNrQmFyKGRhdGEub3V0Y29tZS5tZXNzYWdlID09PSB1bmRlZmluZWRcbiAgICAgICAgICAgICAgICAgICAgPyB0aGlzLl90cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3Rhc2tzLnNuYWNrYmFyLmNhc2VEZWxldGVTdWNjZXNzJylcbiAgICAgICAgICAgICAgICAgICAgOiBkYXRhLm91dGNvbWUubWVzc2FnZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5fY2FzZVZpZXdTZXJ2aWNlLnJlbG9hZCgpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChkYXRhLmVycm9yKSB7XG4gICAgICAgICAgICAgICAgdGhpcy50aHJvd0Vycm9yKHRoaXMuX3RyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgndGFza3Muc25hY2tiYXIuY2FzZURlbGV0ZUZhaWxlZCcpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgZXJyb3IgPT4ge1xuICAgICAgICAgICAgdGhpcy50aHJvd0Vycm9yKHRoaXMuX3RyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgndGFza3Muc25hY2tiYXIuY2FzZURlbGV0ZUZhaWxlZCcpKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGNhbkRlbGV0ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Blcm1pc3Npb25TZXJ2aWNlLmhhc0Nhc2VQZXJtaXNzaW9uKHRoaXMuY2FzZV8sIFBlcm1pc3Npb25UeXBlLkRFTEVURSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB0aHJvd0Vycm9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9zbmFja0JhclNlcnZpY2Uub3BlbkVycm9yU25hY2tCYXIobWVzc2FnZSk7XG4gICAgICAgIHRoaXMuX2xvZy5lcnJvcihtZXNzYWdlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0TWluV2lkdGgoKSB7XG4gICAgICAgIHJldHVybiAodGhpcy5fb3ZlcmZsb3dTZXJ2aWNlICYmIHRoaXMuX292ZXJmbG93U2VydmljZS5vdmVyZmxvd01vZGUpID8gYCR7dGhpcy5fb3ZlcmZsb3dTZXJ2aWNlLmNvbHVtbldpZHRofXB4YCA6ICcwJztcbiAgICB9XG59XG4iXX0=
|
|
@@ -55,6 +55,7 @@ export class AbstractTaskPanelComponent extends AbstractPanelWithImmediateDataCo
|
|
|
55
55
|
this.responsiveBody = true;
|
|
56
56
|
this.preventCollapse = false;
|
|
57
57
|
this.hidePanelHeader = false;
|
|
58
|
+
this.hideActionRow = false;
|
|
58
59
|
this.showMoreMenu = true;
|
|
59
60
|
this.thisContext = {
|
|
60
61
|
canAssign: () => this.canAssign(),
|
|
@@ -323,7 +324,7 @@ export class AbstractTaskPanelComponent extends AbstractPanelWithImmediateDataCo
|
|
|
323
324
|
}
|
|
324
325
|
}
|
|
325
326
|
AbstractTaskPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractTaskPanelComponent, deps: [{ token: i1.TaskContentService }, { token: i2.LoggerService }, { token: i3.TaskViewService }, { token: i4.PaperViewService }, { token: i5.TaskEventService }, { token: i6.AssignTaskService }, { token: i7.DelegateTaskService }, { token: i8.CancelTaskService }, { token: i9.FinishTaskService }, { token: i10.TaskRequestStateService }, { token: i11.TaskDataService }, { token: i12.AssignPolicyService }, { token: i13.FinishPolicyService }, { token: i14.CallChainService }, { token: i15.SubjectTaskOperations }, { token: NAE_TASK_PANEL_DISABLE_BUTTON_FUNCTIONS, optional: true }, { token: i16.TranslateService }, { token: i17.CurrencyPipe }, { token: i18.ChangedFieldsService }, { token: i19.PermissionService }, { token: i20.OverflowService, optional: true }, { token: NAE_TASK_FORCE_OPEN, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
326
|
-
AbstractTaskPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractTaskPanelComponent, selector: "ncc-abstract-legal-notice", inputs: { taskListVirtualScroll: "taskListVirtualScroll", panelContentComponent: "panelContentComponent", selectedHeaders$: "selectedHeaders$", first: "first", last: "last", responsiveBody: "responsiveBody", preventCollapse: "preventCollapse", hidePanelHeader: "hidePanelHeader", actionButtonTemplates: "actionButtonTemplates", actionRowJustifyContent: "actionRowJustifyContent", showMoreMenu: "showMoreMenu", forceLoadDataOnOpen: "forceLoadDataOnOpen", textEllipsis: "textEllipsis", taskPanelData: "taskPanelData" }, outputs: { taskEvent: "taskEvent", panelRefOutput: "panelRefOutput" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
327
|
+
AbstractTaskPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractTaskPanelComponent, selector: "ncc-abstract-legal-notice", inputs: { taskListVirtualScroll: "taskListVirtualScroll", panelContentComponent: "panelContentComponent", selectedHeaders$: "selectedHeaders$", first: "first", last: "last", responsiveBody: "responsiveBody", preventCollapse: "preventCollapse", hidePanelHeader: "hidePanelHeader", hideActionRow: "hideActionRow", actionButtonTemplates: "actionButtonTemplates", actionRowJustifyContent: "actionRowJustifyContent", showMoreMenu: "showMoreMenu", forceLoadDataOnOpen: "forceLoadDataOnOpen", textEllipsis: "textEllipsis", taskPanelData: "taskPanelData" }, outputs: { taskEvent: "taskEvent", panelRefOutput: "panelRefOutput" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
327
328
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractTaskPanelComponent, decorators: [{
|
|
328
329
|
type: Component,
|
|
329
330
|
args: [{
|
|
@@ -358,6 +359,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
358
359
|
type: Input
|
|
359
360
|
}], hidePanelHeader: [{
|
|
360
361
|
type: Input
|
|
362
|
+
}], hideActionRow: [{
|
|
363
|
+
type: Input
|
|
361
364
|
}], actionButtonTemplates: [{
|
|
362
365
|
type: Input
|
|
363
366
|
}], actionRowJustifyContent: [{
|
|
@@ -375,4 +378,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
375
378
|
}], taskPanelData: [{
|
|
376
379
|
type: Input
|
|
377
380
|
}] } });
|
|
378
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtdGFzay1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL3BhbmVsL3Rhc2stcGFuZWwvYWJzdHJhY3QtdGFzay1wYW5lbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1IsTUFBTSxFQUdULE1BQU0sZUFBZSxDQUFDO0FBUXZCLE9BQU8sRUFBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQU9sRSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFPdEUsT0FBTyxFQUF3Qix1Q0FBdUMsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRzFHLE9BQU8sRUFBQyx1Q0FBdUMsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBUzlGLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDZEQUE2RCxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBUWhHLE1BQU0sT0FBZ0IsMEJBQTJCLFNBQVEsdUNBQXVDO0lBK0Q1RixZQUFnQyxtQkFBdUMsRUFDdkMsSUFBbUIsRUFDbkIsZ0JBQWlDLEVBQ2pDLFVBQTRCLEVBQzVCLGlCQUFtQyxFQUNuQyxrQkFBcUMsRUFDckMsb0JBQXlDLEVBQ3pDLGtCQUFxQyxFQUNyQyxrQkFBcUMsRUFDckMsVUFBbUMsRUFDbkMsZ0JBQWlDLEVBQ2pDLG9CQUF5QyxFQUN6QyxvQkFBeUMsRUFDekMsVUFBNEIsRUFDNUIsZUFBc0MsRUFDdUIsaUJB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QUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxhQUFhLENBQUMsWUFBWSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUM7SUFDN0YsQ0FBQzs7d0hBaFhpQiwwQkFBMEIsNmdCQThFRix1Q0FBdUMsa05BTXZDLG1CQUFtQjs0R0FwRjNDLDBCQUEwQixxcUJBRmxDLEVBQUU7NEZBRU0sMEJBQTBCO2tCQUovQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFFBQVEsRUFBRSxFQUFFO2lCQUNmOzswQkErRTBCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsdUNBQXVDOzswQkFLMUQsUUFBUTs7MEJBQ1IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxtQkFBbUI7NENBNUVwRCxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0cscUJBQXFCO3NCQUE3QixLQUFLO2dCQUNVLGdCQUFnQjtzQkFBL0IsS0FBSztnQkFDVSxLQUFLO3NCQUFwQixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0cscUJBQXFCO3NCQUE3QixLQUFLO2dCQUNHLHVCQUF1QjtzQkFBL0IsS0FBSztnQkFFRyxZQUFZO3NCQUFwQixLQUFLO2dCQXdCRixtQkFBbUI7c0JBRHRCLEtBQUs7Z0JBTUcsWUFBWTtzQkFBcEIsS0FBSztnQkFJSSxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU07Z0JBNkhJLGFBQWE7c0JBRHZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVHlwZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWF0RXhwYW5zaW9uUGFuZWx9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2V4cGFuc2lvbic7XG5pbXBvcnQge0NvbXBvbmVudFBvcnRhbH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1Rhc2tDb250ZW50U2VydmljZX0gZnJvbSAnLi4vLi4vdGFzay1jb250ZW50L3NlcnZpY2VzL3Rhc2stY29udGVudC5zZXJ2aWNlJztcbmltcG9ydCB7TG9nZ2VyU2VydmljZX0gZnJvbSAnLi4vLi4vbG9nZ2VyL3NlcnZpY2VzL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7VGFza1BhbmVsRGF0YX0gZnJvbSAnLi4vdGFzay1wYW5lbC1saXN0L3Rhc2stcGFuZWwtZGF0YS90YXNrLXBhbmVsLWRhdGEnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtUYXNrVmlld1NlcnZpY2V9IGZyb20gJy4uLy4uL3ZpZXcvdGFzay12aWV3L3NlcnZpY2UvdGFzay12aWV3LnNlcnZpY2UnO1xuaW1wb3J0IHtmaWx0ZXIsIG1hcCwgdGFrZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtIZWFkZXJDb2x1bW59IGZyb20gJy4uLy4uL2hlYWRlci9tb2RlbHMvaGVhZGVyLWNvbHVtbic7XG5pbXBvcnQge3RvTW9tZW50fSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvdHlwZXMvbmFlLWRhdGUtdHlwZSc7XG5pbXBvcnQge0RBVEVfVElNRV9GT1JNQVRfU1RSSU5HfSBmcm9tICcuLi8uLi9tb21lbnQvdGltZS1mb3JtYXRzJztcbmltcG9ydCB7UGFwZXJWaWV3U2VydmljZX0gZnJvbSAnLi4vLi4vbmF2aWdhdGlvbi9xdWljay1wYW5lbC9jb21wb25lbnRzL3BhcGVyLXZpZXcuc2VydmljZSc7XG5pbXBvcnQge1Rhc2tFdmVudFNlcnZpY2V9IGZyb20gJy4uLy4uL3Rhc2stY29udGVudC9zZXJ2aWNlcy90YXNrLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHtBc3NpZ25UYXNrU2VydmljZX0gZnJvbSAnLi4vLi4vdGFzay9zZXJ2aWNlcy9hc3NpZ24tdGFzay5zZXJ2aWNlJztcbmltcG9ydCB7RGVsZWdhdGVUYXNrU2VydmljZX0gZnJvbSAnLi4vLi4vdGFzay9zZXJ2aWNlcy9kZWxlZ2F0ZS10YXNrLnNlcnZpY2UnO1xuaW1wb3J0IHtDYW5jZWxUYXNrU2VydmljZX0gZnJvbSAnLi4vLi4vdGFzay9zZXJ2aWNlcy9jYW5jZWwtdGFzay5zZXJ2aWNlJztcbmltcG9ydCB7RmluaXNoVGFza1NlcnZpY2V9IGZyb20gJy4uLy4uL3Rhc2svc2VydmljZXMvZmluaXNoLXRhc2suc2VydmljZSc7XG5pbXBvcnQge1Rhc2tNZXRhRmllbGR9IGZyb20gJy4uLy4uL2hlYWRlci90YXNrLWhlYWRlci90YXNrLW1ldGEtZW51bSc7XG5pbXBvcnQge1Rhc2tSZXF1ZXN0U3RhdGVTZXJ2aWNlfSBmcm9tICcuLi8uLi90YXNrL3NlcnZpY2VzL3Rhc2stcmVxdWVzdC1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7VGFza0RhdGFTZXJ2aWNlfSBmcm9tICcuLi8uLi90YXNrL3NlcnZpY2VzL3Rhc2stZGF0YS5zZXJ2aWNlJztcbmltcG9ydCB7QXNzaWduUG9saWN5U2VydmljZX0gZnJvbSAnLi4vLi4vdGFzay9zZXJ2aWNlcy9hc3NpZ24tcG9saWN5LnNlcnZpY2UnO1xuaW1wb3J0IHtTdWJqZWN0VGFza09wZXJhdGlvbnN9IGZyb20gJy4uLy4uL3Rhc2svbW9kZWxzL3N1YmplY3QtdGFzay1vcGVyYXRpb25zJztcbmltcG9ydCB7Q2FsbENoYWluU2VydmljZX0gZnJvbSAnLi4vLi4vdXRpbGl0eS9jYWxsLWNoYWluL2NhbGwtY2hhaW4uc2VydmljZSc7XG5pbXBvcnQge1Rhc2tFdmVudE5vdGlmaWNhdGlvbn0gZnJvbSAnLi4vLi4vdGFzay1jb250ZW50L21vZGVsL3Rhc2stZXZlbnQtbm90aWZpY2F0aW9uJztcbmltcG9ydCB7RGlzYWJsZUJ1dHRvbkZ1bnRpb25zLCBOQUVfVEFTS19QQU5FTF9ESVNBQkxFX0JVVFRPTl9GVU5DVElPTlN9IGZyb20gJy4vbW9kZWxzL2Rpc2FibGUtZnVuY3Rpb25zJztcbmltcG9ydCB7VGFza30gZnJvbSAnLi4vLi4vcmVzb3VyY2VzL2ludGVyZmFjZS90YXNrJztcbmltcG9ydCB7Q2hhbmdlZEZpZWxkc30gZnJvbSAnLi4vLi4vZGF0YS1maWVsZHMvbW9kZWxzL2NoYW5nZWQtZmllbGRzJztcbmltcG9ydCB7QWJzdHJhY3RQYW5lbFdpdGhJbW1lZGlhdGVEYXRhQ29tcG9uZW50fSBmcm9tICcuLi9hYnN0cmFjdC9wYW5lbC13aXRoLWltbWVkaWF0ZS1kYXRhJztcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge0ZlYXR1cmVkVmFsdWV9IGZyb20gJy4uL2Fic3RyYWN0L2ZlYXR1cmVkLXZhbHVlJztcbmltcG9ydCB7Q3VycmVuY3lQaXBlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtQZXJtaXNzaW9uU2VydmljZX0gZnJvbSAnLi4vLi4vYXV0aG9yaXphdGlvbi9wZXJtaXNzaW9uL3Blcm1pc3Npb24uc2VydmljZSc7XG5pbXBvcnQge0NoYW5nZWRGaWVsZHNTZXJ2aWNlfSBmcm9tICcuLi8uLi9jaGFuZ2VkLWZpZWxkcy9zZXJ2aWNlcy9jaGFuZ2VkLWZpZWxkcy5zZXJ2aWNlJztcbmltcG9ydCB7Q2hhbmdlZEZpZWxkc01hcH0gZnJvbSAnLi4vLi4vZXZlbnQvc2VydmljZXMvaW50ZXJmYWNlcy9jaGFuZ2VkLWZpZWxkcy1tYXAnO1xuaW1wb3J0IHtUYXNrUGFuZWxDb250ZXh0fSBmcm9tICcuL21vZGVscy90YXNrLXBhbmVsLWNvbnRleHQnO1xuaW1wb3J0IHtPdmVyZmxvd1NlcnZpY2V9IGZyb20gJy4uLy4uL2hlYWRlci9zZXJ2aWNlcy9vdmVyZmxvdy5zZXJ2aWNlJztcbmltcG9ydCB7TkFFX1RBU0tfRk9SQ0VfT1BFTn0gZnJvbSAnLi4vLi4vdmlldy90YXNrLXZpZXcvbW9kZWxzL2luamVjdGlvbi10b2tlbi10YXNrLWZvcmNlLW9wZW4nO1xuaW1wb3J0IHtDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnR9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zY3JvbGxpbmcnO1xuaW1wb3J0IHsgRmluaXNoUG9saWN5U2VydmljZSB9IGZyb20gJy4uLy4uL3Rhc2svc2VydmljZXMvZmluaXNoLXBvbGljeS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduY2MtYWJzdHJhY3QtbGVnYWwtbm90aWNlJyxcbiAgICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RUYXNrUGFuZWxDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdFBhbmVsV2l0aEltbWVkaWF0ZURhdGFDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG5cbiAgICAvKipcbiAgICAgKiBAaWdub3JlXG4gICAgICogU2V0IGJ5IGFuIEBJbnB1dCgpIG9uIGEgc2V0dGVyIGZ1bmN0aW9uLCB0aGF0IGFsc28gcmVzb2x2ZXMgZmVhdHVyZWQgZmllbGRzLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBfdGFza1BhbmVsRGF0YTogVGFza1BhbmVsRGF0YTtcbiAgICBwcm90ZWN0ZWQgX2ZvcmNlTG9hZERhdGFPbk9wZW4gPSBmYWxzZTtcbiAgICBASW5wdXQoKSB0YXNrTGlzdFZpcnR1YWxTY3JvbGw6IENka1ZpcnR1YWxTY3JvbGxWaWV3cG9ydDtcbiAgICBASW5wdXQoKSBwYW5lbENvbnRlbnRDb21wb25lbnQ6IFR5cGU8YW55PjtcbiAgICBASW5wdXQoKSBwdWJsaWMgc2VsZWN0ZWRIZWFkZXJzJDogT2JzZXJ2YWJsZTxBcnJheTxIZWFkZXJDb2x1bW4+PjtcbiAgICBASW5wdXQoKSBwdWJsaWMgZmlyc3Q6IGJvb2xlYW47XG4gICAgQElucHV0KCkgcHVibGljIGxhc3Q6IGJvb2xlYW47XG4gICAgQElucHV0KCkgcmVzcG9uc2l2ZUJvZHkgPSB0cnVlO1xuICAgIEBJbnB1dCgpIHByZXZlbnRDb2xsYXBzZSA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIGhpZGVQYW5lbEhlYWRlciA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIGFjdGlvbkJ1dHRvblRlbXBsYXRlczogQXJyYXk8VGVtcGxhdGVSZWY8YW55Pj47XG4gICAgQElucHV0KCkgYWN0aW9uUm93SnVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyB8ICdmbGV4LXN0YXJ0JyB8ICdmbGV4LWVuZCcgfCAnY2VudGVyJyB8ICdzcGFjZS1hcm91bmQnIHxcbiAgICAgICAgJ2luaXRpYWwnIHwgJ3N0YXJ0JyB8ICdlbmQnIHwgJ2xlZnQnIHwgJ3JpZ2h0JyB8ICdyZXZlcnQnIHwgJ2luaGVyaXQnIHwgJ3Vuc2V0J1xuICAgIEBJbnB1dCgpIHNob3dNb3JlTWVudTogYm9vbGVhbiA9IHRydWU7XG5cbiAgICB0aGlzQ29udGV4dDogVGFza1BhbmVsQ29udGV4dCA9IHtcbiAgICAgICAgY2FuQXNzaWduOiAoKSA9PiB0aGlzLmNhbkFzc2lnbigpLFxuICAgICAgICBhc3NpZ246ICgpID0+IHRoaXMuYXNzaWduKCksXG4gICAgICAgIGdldEFzc2lnblRpdGxlOiAoKSA9PiB0aGlzLmdldEFzc2lnblRpdGxlKCksXG4gICAgICAgIGRlbGVnYXRlOiAoKSA9PiB0aGlzLmRlbGVnYXRlKCksXG4gICAgICAgIGdldERlbGVnYXRlVGl0bGU6ICgpID0+IHRoaXMuZ2V0RGVsZWdhdGVUaXRsZSgpLFxuICAgICAgICBjYW5SZWFzc2lnbjogKCkgPT4gdGhpcy5jYW5SZWFzc2lnbigpLFxuICAgICAgICBjYW5DYW5jZWw6ICgpID0+IHRoaXMuY2FuQ2FuY2VsKCksXG4gICAgICAgIGNhbmNlbDogKCkgPT4gdGhpcy5jYW5jZWwoKSxcbiAgICAgICAgZ2V0Q2FuY2VsVGl0bGU6ICgpID0+IHRoaXMuZ2V0Q2FuY2VsVGl0bGUoKSxcbiAgICAgICAgY2FuRmluaXNoOiAoKSA9PiB0aGlzLmNhbkZpbmlzaCgpLFxuICAgICAgICBmaW5pc2g6ICgpID0+IHRoaXMuZmluaXNoKCksXG4gICAgICAgIGdldEZpbmlzaFRpdGxlOiAoKSA9PiB0aGlzLmdldEZpbmlzaFRpdGxlKCksXG4gICAgICAgIGNhbkNvbGxhcHNlOiAoKSA9PiB0aGlzLmNhbkNvbGxhcHNlKCksXG4gICAgICAgIGNvbGxhcHNlOiAoKSA9PiB0aGlzLmNvbGxhcHNlKCksXG4gICAgICAgIGNhbkRpc2FibGU6IChhcmc6IHN0cmluZykgPT4gdGhpcy5jYW5EaXNhYmxlKGFyZyksXG4gICAgICAgIGNhbkRvOiAoYXJnOiBzdHJpbmcpID0+IHRoaXMuY2FuRG8oYXJnKSxcbiAgICAgICAgaXNMb2FkaW5nOiAoKSA9PiB0aGlzLmlzTG9hZGluZ1xuICAgIH07XG5cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IGZvcmNlTG9hZERhdGFPbk9wZW4oZm9yY2U6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fZm9yY2VMb2FkRGF0YU9uT3BlbiA9IGZvcmNlO1xuICAgICAgICB0aGlzLl9hc3NpZ25Qb2xpY3lTZXJ2aWNlLmZvcmNlZCA9IGZvcmNlO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHRleHRFbGxpcHNpcyA9IGZhbHNlO1xuICAgIC8qKlxuICAgICAqIEVtaXRzIG5vdGlmaWNhdGlvbnMgYWJvdXQgdGFzayBldmVudHNcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgdGFza0V2ZW50OiBFdmVudEVtaXR0ZXI8VGFza0V2ZW50Tm90aWZpY2F0aW9uPjtcbiAgICBAT3V0cHV0KCkgcGFuZWxSZWZPdXRwdXQ6IEV2ZW50RW1pdHRlcjxNYXRFeHBhbnNpb25QYW5lbD47XG5cbiAgICBwdWJsaWMgcG9ydGFsOiBDb21wb25lbnRQb3J0YWw8YW55PjtcbiAgICBwdWJsaWMgcGFuZWxSZWY6IE1hdEV4cGFuc2lvblBhbmVsO1xuICAgIHByb3RlY3RlZCBfc3ViOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIF9zdWJUYXNrRXZlbnQ6IFN1YnNjcmlwdGlvbjtcbiAgICBwcm90ZWN0ZWQgX3N1YlRhc2tEYXRhOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIF9zdWJQYW5lbFVwZGF0ZTogU3Vic2NyaXB0aW9uO1xuICAgIHByb3RlY3RlZCBfdGFza0Rpc2FibGVCdXR0b25GdW5jdGlvbnM6IERpc2FibGVCdXR0b25GdW50aW9ucztcblxuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX3Rhc2tDb250ZW50U2VydmljZTogVGFza0NvbnRlbnRTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2xvZzogTG9nZ2VyU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF90YXNrVmlld1NlcnZpY2U6IFRhc2tWaWV3U2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9wYXBlclZpZXc6IFBhcGVyVmlld1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfdGFza0V2ZW50U2VydmljZTogVGFza0V2ZW50U2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9hc3NpZ25UYXNrU2VydmljZTogQXNzaWduVGFza1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfZGVsZWdhdGVUYXNrU2VydmljZTogRGVsZWdhdGVUYXNrU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9jYW5jZWxUYXNrU2VydmljZTogQ2FuY2VsVGFza1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfZmluaXNoVGFza1NlcnZpY2U6IEZpbmlzaFRhc2tTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX3Rhc2tTdGF0ZTogVGFza1JlcXVlc3RTdGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfdGFza0RhdGFTZXJ2aWNlOiBUYXNrRGF0YVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfYXNzaWduUG9saWN5U2VydmljZTogQXNzaWduUG9saWN5U2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9maW5pc2hQb2xpY3lTZXJ2aWNlOiBGaW5pc2hQb2xpY3lTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2NhbGxDaGFpbjogQ2FsbENoYWluU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF90YXNrT3BlcmF0aW9uczogU3ViamVjdFRhc2tPcGVyYXRpb25zLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE5BRV9UQVNLX1BBTkVMX0RJU0FCTEVfQlVUVE9OX0ZVTkNUSU9OUykgcHJvdGVjdGVkIF9kaXNhYmxlRnVuY3Rpb25zOiBEaXNhYmxlQnV0dG9uRnVudGlvbnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2N1cnJlbmN5UGlwZTogQ3VycmVuY3lQaXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2NoYW5nZWRGaWVsZHNTZXJ2aWNlOiBDaGFuZ2VkRmllbGRzU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9wZXJtaXNzaW9uU2VydmljZTogUGVybWlzc2lvblNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIG92ZXJmbG93U2VydmljZTogT3ZlcmZsb3dTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE5BRV9UQVNLX0ZPUkNFX09QRU4pIHByb3RlY3RlZCBfdGFza0ZvcmNlT3BlbjogYm9vbGVhbikge1xuICAgICAgICBzdXBlcihfdHJhbnNsYXRlLCBfY3VycmVuY3lQaXBlLCBvdmVyZmxvd1NlcnZpY2UpO1xuICAgICAgICB0aGlzLnRhc2tFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8VGFza0V2ZW50Tm90aWZpY2F0aW9uPigpO1xuICAgICAgICB0aGlzLnBhbmVsUmVmT3V0cHV0ID0gbmV3IEV2ZW50RW1pdHRlcjxNYXRFeHBhbnNpb25QYW5lbD4oKTtcbiAgICAgICAgdGhpcy5fc3ViVGFza0V2ZW50ID0gX3Rhc2tFdmVudFNlcnZpY2UudGFza0V2ZW50Tm90aWZpY2F0aW9ucyQuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgICAgIHRoaXMudGFza0V2ZW50LmVtaXQoZXZlbnQpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5fc3ViVGFza0RhdGEgPSBfY2hhbmdlZEZpZWxkc1NlcnZpY2UuY2hhbmdlZEZpZWxkcyQuc3Vic2NyaWJlKChjaGFuZ2VkRmllbGRzTWFwOiBDaGFuZ2VkRmllbGRzTWFwKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBmaWx0ZXJlZENhc2VJZHM6IEFycmF5PHN0cmluZz4gPSBPYmplY3Qua2V5cyhjaGFuZ2VkRmllbGRzTWFwKS5maWx0ZXIoXG4gICAgICAgICAgICAgICAgY2FzZUlkID0+IE9iamVjdC5rZXlzKHRoaXMuX3Rhc2tDb250ZW50U2VydmljZS5yZWZlcmVuY2VkVGFza0FuZENhc2VJZHMpLmluY2x1ZGVzKGNhc2VJZClcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBjb25zdCBjaGFuZ2VkRmllbGRzOiBBcnJheTxDaGFuZ2VkRmllbGRzPiA9IFtdO1xuICAgICAgICAgICAgZmlsdGVyZWRDYXNlSWRzLmZvckVhY2goY2FzZUlkID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCB0YXNrSWRzOiBBcnJheTxzdHJpbmc+ID0gdGhpcy5fdGFza0NvbnRlbnRTZXJ2aWNlLnJlZmVyZW5jZWRUYXNrQW5kQ2FzZUlkc1tjYXNlSWRdO1xuICAgICAgICAgICAgICAgIGNoYW5nZWRGaWVsZHMucHVzaCguLi50aGlzLl9jaGFuZ2VkRmllbGRzU2VydmljZS5wYXJzZUNoYW5nZWRGaWVsZHNCeUNhc2VBbmRUYXNrSWRzKGNhc2VJZCwgdGFza0lkcywgY2hhbmdlZEZpZWxkc01hcCkpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjaGFuZ2VkRmllbGRzLmZpbHRlcihmaWVsZHMgPT4gZmllbGRzICE9PSB1bmRlZmluZWQpLmZvckVhY2goZmllbGRzID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnRhc2tQYW5lbERhdGEuY2hhbmdlZEZpZWxkcy5uZXh0KGZpZWxkcyk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIF90YXNrT3BlcmF0aW9ucy5vcGVuJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5leHBhbmQoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIF90YXNrT3BlcmF0aW9ucy5jbG9zZSQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGlmICghdGhpcy5fdGFza0ZvcmNlT3Blbikge1xuICAgICAgICAgICAgICAgIHRoaXMuY29sbGFwc2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIF90YXNrT3BlcmF0aW9ucy5yZWxvYWQkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl90YXNrVmlld1NlcnZpY2UucmVsb2FkQ3VycmVudFBhZ2UoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIF90YXNrT3BlcmF0aW9ucy5mb3JjZVJlbG9hZCQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3Rhc2tWaWV3U2VydmljZS5yZWxvYWRDdXJyZW50UGFnZSh0cnVlKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX3Rhc2tEaXNhYmxlQnV0dG9uRnVuY3Rpb25zID0ge1xuICAgICAgICAgICAgZmluaXNoOiAodDogVGFzaykgPT4gZmFsc2UsXG4gICAgICAgICAgICBhc3NpZ246ICh0OiBUYXNrKSA9PiBmYWxzZSxcbiAgICAgICAgICAgIGRlbGVnYXRlOiAodDogVGFzaykgPT4gZmFsc2UsXG4gICAgICAgICAgICByZWFzc2lnbjogKHQ6IFRhc2spID0+IGZhbHNlLFxuICAgICAgICAgICAgY2FuY2VsOiAodDogVGFzaykgPT4gZmFsc2UsXG4gICAgICAgIH07XG4gICAgICAgIGlmIChfZGlzYWJsZUZ1bmN0aW9ucykge1xuICAgICAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLl90YXNrRGlzYWJsZUJ1dHRvbkZ1bmN0aW9ucywgX2Rpc2FibGVGdW5jdGlvbnMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMuX3Rhc2tDb250ZW50U2VydmljZS50YXNrID0gdGhpcy5fdGFza1BhbmVsRGF0YS50YXNrO1xuXG4gICAgICAgIHRoaXMuY3JlYXRlQ29udGVudFBvcnRhbCgpO1xuICAgICAgICB0aGlzLl9zdWIgPSB0aGlzLl90YXNrUGFuZWxEYXRhLmNoYW5nZWRGaWVsZHMuc3Vic2NyaWJlKGNoRmllbGRzID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3Rhc2tDb250ZW50U2VydmljZS51cGRhdGVGcm9tQ2hhbmdlZEZpZWxkcyhjaEZpZWxkcyk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuX3N1YlBhbmVsVXBkYXRlID0gdGhpcy5fdGFza1ZpZXdTZXJ2aWNlLnBhbmVsVXBkYXRlLnBpcGUoXG4gICAgICAgICAgICBtYXAoYSA9PiBhLmZpbmQocCA9PiBwLnRhc2suc3RyaW5nSWQgPT09IHRoaXMudGFza1BhbmVsRGF0YS50YXNrLnN0cmluZ0lkKSksXG4gICAgICAgICAgICBmaWx0ZXIocCA9PiAhIXApXG4gICAgICAgICkuc3Vic2NyaWJlKHZhbHVlID0+IHtcbiAgICAgICAgICAgIHRoaXMucmVzb2x2ZUZlYXR1cmVkRmllbGRzVmFsdWVzKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgdGhpcy5wYW5lbFJlZi5vcGVuZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3Rhc2tDb250ZW50U2VydmljZS5leHBhbnNpb25TdGFydGVkKCk7XG4gICAgICAgICAgICBpZiAoIXRoaXMuX3Rhc2tTdGF0ZS5pc0xvYWRpbmcoKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2Fzc2lnblBvbGljeVNlcnZpY2UucGVyZm9ybUFzc2lnblBvbGljeSh0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucGFuZWxSZWYuY2xvc2VkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuX3Rhc2tTdGF0ZS5pc0xvYWRpbmcoKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2Fzc2lnblBvbGljeVNlcnZpY2UucGVyZm9ybUFzc2lnblBvbGljeShmYWxzZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnBhbmVsUmVmLmFmdGVyRXhwYW5kLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl90YXNrQ29udGVudFNlcnZpY2UuJHNob3VsZENyZWF0ZS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdGFza0NvbnRlbnRTZXJ2aWNlLmJsb2NrRmllbGRzKHRoaXMuaGFzTm9GaW5pc2hQZXJtaXNzaW9uKCkpO1xuICAgICAgICAgICAgICAgIHRoaXMuX3Rhc2tQYW5lbERhdGEuaW5pdGlhbGx5RXhwYW5kZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLl90YXNrQ29udGVudFNlcnZpY2UuZXhwYW5zaW9uRmluaXNoZWQoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucGFuZWxSZWYuYWZ0ZXJDb2xsYXBzZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fdGFza1BhbmVsRGF0YS5pbml0aWFsbHlFeHBhbmRlZCA9IGZhbHNlO1xuICAgICAgICB9KTtcblxuICAgICAgICBpZiAodGhpcy5fdGFza1BhbmVsRGF0YS5pbml0aWFsbHlFeHBhbmRlZCB8fCB0aGlzLl90YXNrRm9yY2VPcGVuKSB7XG4gICAgICAgICAgICB0aGlzLnBhbmVsUmVmLmV4cGFuZGVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBjcmVhdGVDb250ZW50UG9ydGFsKCk6IHZvaWQ7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgdGFza1BhbmVsRGF0YShkYXRhOiBUYXNrUGFuZWxEYXRhKSB7XG4gICAgICAgIHRoaXMuX3Rhc2tQYW5lbERhdGEgPSBkYXRhO1xuICAgICAgICB0aGlzLnJlc29sdmVGZWF0dXJlZEZpZWxkc1ZhbHVlcygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgdGFza1BhbmVsRGF0YSgpOiBUYXNrUGFuZWxEYXRhIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Rhc2tQYW5lbERhdGE7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpc0xvYWRpbmcoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl90YXNrU3RhdGUuaXNMb2FkaW5nKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0b3BMb2FkaW5nKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl90YXNrU3RhdGUuc3RvcExvYWRpbmcodGhpcy5fdGFza1BhbmVsRGF0YS50YXNrLnN0cmluZ0lkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcHJldmVudFBhbmVsT3BlbigkZXZlbnQ6IE1vdXNlRXZlbnQpOiBib29sZWFuIHtcbiAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcHVibGljIGlzUGFwZXJWaWV3KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGFwZXJWaWV3LnBhcGVyVmlldztcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0UGFuZWxSZWYocGFuZWxSZWY6IE1hdEV4cGFuc2lvblBhbmVsKSB7XG4gICAgICAgIHRoaXMucGFuZWxSZWYgPSBwYW5lbFJlZjtcbiAgICAgICAgdGhpcy5wYW5lbFJlZk91dHB1dC5lbWl0KHBhbmVsUmVmKTtcbiAgICB9XG5cbiAgICBhc3NpZ24oKSB7XG4gICAgICAgIHRoaXMuX2Fzc2lnblRhc2tTZXJ2aWNlLmFzc2lnbih0aGlzLl9jYWxsQ2hhaW4uY3JlYXRlKChhZnRlckFjdGlvbiA9PiB7XG4gICAgICAgICAgICBpZiAoYWZ0ZXJBY3Rpb24pIHtcbiAgICAgICAgICAgICAgICB0aGlzLl90YXNrRGF0YVNlcnZpY2UuaW5pdGlhbGl6ZVRhc2tEYXRhRmllbGRzKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fZmluaXNoUG9saWN5U2VydmljZS5wZXJmb3JtRmluaXNoUG9saWN5KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pKSk7XG4gICAgfVxuXG4gICAgZGVsZWdhdGUoKSB7XG4gICAgICAgIHRoaXMuX2RlbGVnYXRlVGFza1NlcnZpY2UuZGVsZWdhdGUoKTtcbiAgICB9XG5cbiAgICBjYW5jZWwoKSB7XG4gICAgICAgIHRoaXMuX2NhbmNlbFRhc2tTZXJ2aWNlLmNhbmNlbCh0aGlzLl9jYWxsQ2hhaW4uY3JlYXRlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3Rhc2tPcGVyYXRpb25zLnJlbG9hZCgpO1xuICAgICAgICAgICAgdGhpcy5fdGFza09wZXJhdGlvbnMuY2xvc2UoKTtcbiAgICAgICAgfSkpO1xuICAgIH1cblxuICAgIGZpbmlzaCgpIHtcbiAgICAgICAgaWYgKCF0aGlzLl90YXNrQ29udGVudFNlcnZpY2UudmFsaWRhdGVUYXNrRGF0YSgpKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5fdGFza0NvbnRlbnRTZXJ2aWNlLnRhc2suZGF0YVNpemUgPD0gMCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3Rhc2tEYXRhU2VydmljZS5pbml0aWFsaXplVGFza0RhdGFGaWVsZHMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGludmFsaWRGaWVsZHMgPSB0aGlzLl90YXNrQ29udGVudFNlcnZpY2UuZ2V0SW52YWxpZFRhc2tEYXRhKCk7XG4gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpbnZhbGlkRmllbGRzWzBdLnN0cmluZ0lkKS5zY3JvbGxJbnRvVmlldyh7XG4gICAgICAgICAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgICAgICAgICAgIGJsb2NrOiAnc3RhcnQnLFxuICAgICAgICAgICAgICAgIGlubGluZTogJ25lYXJlc3QnXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2ZpbmlzaFRhc2tTZXJ2aWNlLnZhbGlkYXRlRGF0YUFuZEZpbmlzaCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29sbGFwc2UoKSB7XG4gICAgICAgIHRoaXMucGFuZWxSZWYuY2xvc2UoKTtcbiAgICAgICAgdGhpcy5wYW5lbFJlZi5leHBhbmRlZCA9IGZhbHNlO1xuICAgIH1cblxuICAgIGV4cGFuZCgpIHtcbiAgICAgICAgdGhpcy5wYW5lbFJlZi5vcGVuKCk7XG4gICAgICAgIHRoaXMucGFuZWxSZWYuZXhwYW5kZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBjYW5Bc3NpZ24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wZXJtaXNzaW9uU2VydmljZS5jYW5Bc3NpZ24odGhpcy50YXNrUGFuZWxEYXRhLnRhc2spICYmIHRoaXMuZ2V0QXNzaWduVGl0bGUoKSAhPT0gJyc7XG4gICAgfVxuXG4gICAgcHVibGljIGNhblJlYXNzaWduKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGVybWlzc2lvblNlcnZpY2UuY2FuUmVhc3NpZ24odGhpcy50YXNrUGFuZWxEYXRhLnRhc2spO1xuICAgIH1cblxuICAgIHB1YmxpYyBjYW5DYW5jZWwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wZXJtaXNzaW9uU2VydmljZS5jYW5DYW5jZWwodGhpcy50YXNrUGFuZWxEYXRhLnRhc2spICYmIHRoaXMuZ2V0Q2FuY2VsVGl0bGUoKSAhPT0gJyc7XG4gICAgfVxuXG4gICAgcHVibGljIGNhbkZpbmlzaCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Blcm1pc3Npb25TZXJ2aWNlLmNhbkZpbmlzaCh0aGlzLnRhc2tQYW5lbERhdGEudGFzaykgJiYgdGhpcy5nZXRGaW5pc2hUaXRsZSgpICE9PSAnJztcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhc05vRmluaXNoUGVybWlzc2lvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLl9wZXJtaXNzaW9uU2VydmljZS5jYW5GaW5pc2godGhpcy50YXNrUGFuZWxEYXRhLnRhc2spXG4gICAgfVxuXG4gICAgcHVibGljIGNhbkNvbGxhcHNlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fdGFza0ZvcmNlT3BlbiA/IGZhbHNlIDogdGhpcy5fcGVybWlzc2lvblNlcnZpY2UuY2FuQ29sbGFwc2UodGhpcy50YXNrUGFuZWxEYXRhLnRhc2spO1xuICAgIH1cblxuICAgIHB1YmxpYyBjYW5EbyhhY3Rpb24pOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Blcm1pc3Npb25TZXJ2aWNlLmhhc1Rhc2tQZXJtaXNzaW9uKHRoaXMudGFza1BhbmVsRGF0YS50YXNrLCBhY3Rpb24pICYmIHRoaXMuZ2V0RGVsZWdhdGVUaXRsZSgpICE9PSAnJztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0QXNzaWduVGl0bGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICh0aGlzLnRhc2tQYW5lbERhdGEudGFzay5hc3NpZ25UaXRsZSA9PT0gJycgfHwgdGhpcy50YXNrUGFuZWxEYXRhLnRhc2suYXNzaWduVGl0bGUpXG4gICAgICAgICAgICA/IHRoaXMudGFza1BhbmVsRGF0YS50YXNrLmFzc2lnblRpdGxlIDogJ3Rhc2tzLnZpZXcuYXNzaWduJztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q2FuY2VsVGl0bGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICh0aGlzLnRhc2tQYW5lbERhdGEudGFzay5jYW5jZWxUaXRsZSA9PT0gJycgfHwgdGhpcy50YXNrUGFuZWxEYXRhLnRhc2suY2FuY2VsVGl0bGUpXG4gICAgICAgICAgICA/IHRoaXMudGFza1BhbmVsRGF0YS50YXNrLmNhbmNlbFRpdGxlIDogJ3Rhc2tzLnZpZXcuY2FuY2VsJztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RGVsZWdhdGVUaXRsZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gKHRoaXMudGFza1BhbmVsRGF0YS50YXNrLmRlbGVnYXRlVGl0bGUgPT09ICcnIHx8IHRoaXMudGFza1BhbmVsRGF0YS50YXNrLmRlbGVnYXRlVGl0bGUpXG4gICAgICAgICAgICA/IHRoaXMudGFza1BhbmVsRGF0YS50YXNrLmRlbGVnYXRlVGl0bGUgOiAndGFza3Mudmlldy5kZWxlZ2F0ZSc7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEZpbmlzaFRpdGxlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAodGhpcy50YXNrUGFuZWxEYXRhLnRhc2suZmluaXNoVGl0bGUgPT09ICcnIHx8IHRoaXMudGFza1BhbmVsRGF0YS50YXNrLmZpbmlzaFRpdGxlKVxuICAgICAgICAgICAgPyB0aGlzLnRhc2tQYW5lbERhdGEudGFzay5maW5pc2hUaXRsZSA6ICd0YXNrcy52aWV3LmZpbmlzaCc7XG4gICAgfVxuXG4gICAgcHVibGljIGNhbkRpc2FibGUodHlwZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIGxldCBkaXNhYmxlID0gZmFsc2U7XG4gICAgICAgIGlmICghIXRoaXMudGFza1BhbmVsRGF0YSAmJiAhIXRoaXMudGFza1BhbmVsRGF0YS50YXNrKSB7XG4gICAgICAgICAgICBkaXNhYmxlID0gZGlzYWJsZVxuICAgICAgICAgICAgICAgIHx8ICEhdGhpcy5fdGFza1N0YXRlLmlzTG9hZGluZyh0aGlzLnRhc2tQYW5lbERhdGEudGFzay5zdHJpbmdJZClcbiAgICAgICAgICAgICAgICB8fCAhIXRoaXMuX3Rhc2tTdGF0ZS5pc1VwZGF0aW5nKHRoaXMudGFza1BhbmVsRGF0YS50YXNrLnN0cmluZ0lkKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZGlzYWJsZSB8fCB0aGlzLl90YXNrRGlzYWJsZUJ1dHRvbkZ1bmN0aW9uc1t0eXBlXSh7Li4udGhpcy5fdGFza0NvbnRlbnRTZXJ2aWNlLnRhc2t9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0RmVhdHVyZWRNZXRhVmFsdWUoc2VsZWN0ZWRIZWFkZXI6IEhlYWRlckNvbHVtbik6IEZlYXR1cmVkVmFsdWUge1xuICAgICAgICBjb25zdCB0YXNrID0gdGhpcy5fdGFza1BhbmVsRGF0YS50YXNrO1xuICAgICAgICBzd2l0Y2ggKHNlbGVjdGVkSGVhZGVyLmZpZWxkSWRlbnRpZmllcikge1xuICAgICAgICAgICAgY2FzZSBUYXNrTWV0YUZpZWxkLkNBU0U6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGFzay5jYXNlVGl0bGUsIGljb246ICcnLCB0eXBlOiAnbWV0YSd9O1xuICAgICAgICAgICAgY2FzZSBUYXNrTWV0YUZpZWxkLkNBU0VfSUQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGFzay5jYXNlSWQsIGljb246ICcnLCB0eXBlOiAnbWV0YSd9O1xuICAgICAgICAgICAgY2FzZSBUYXNrTWV0YUZpZWxkLlRBU0tfSUQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGFzay5zdHJpbmdJZCwgaWNvbjogJycsIHR5cGU6ICdtZXRhJ307XG4gICAgICAgICAgICBjYXNlIFRhc2tNZXRhRmllbGQuVElUTEU6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGFzay50aXRsZSwgaWNvbjogJycsIHR5cGU6ICdtZXRhJ307XG4gICAgICAgICAgICBjYXNlIFRhc2tNZXRhRmllbGQuUFJJT1JJVFk6XG4gICAgICAgICAgICAgICAgLy8gVE9ETyBwcmlvcml0eVxuICAgICAgICAgICAgICAgIGlmICghdGFzay5wcmlvcml0eSB8fCB0YXNrLnByaW9yaXR5IDwgMikge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4ge3ZhbHVlOiAnaGlnaCcsIGljb246ICdlcnJvcicsIHR5cGU6ICdtZXRhJ307XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0YXNrLnByaW9yaXR5ID09PSAyKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7dmFsdWU6ICdtZWRpdW0nLCBpY29uOiAnbm9ydGgnLCB0eXBlOiAnbWV0YSd9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4ge3ZhbHVlOiAnbG93JywgaWNvbjogJ3NvdXRoJywgdHlwZTogJ21ldGEnfTtcbiAgICAgICAgICAgIGNhc2UgVGFza01ldGFGaWVsZC5VU0VSOlxuICAgICAgICAgICAgICAgIHJldHVybiB7dmFsdWU6IHRhc2sudXNlciA/IHRhc2sudXNlci5mdWxsTmFtZSA6ICcnLCBpY29uOiAnYWNjb3VudF9jaXJjbGUnLCB0eXBlOiAnbWV0YSd9O1xuICAgICAgICAgICAgY2FzZSBUYXNrTWV0YUZpZWxkLkFTU0lHTl9EQVRFOlxuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiB0YXNrLnN0YXJ0RGF0ZSA/IHRvTW9tZW50KHRhc2suc3RhcnREYXRlKS5mb3JtYXQoREFURV9USU1FX0ZPUk1BVF9TVFJJTkcpIDogJycsXG4gICAgICAgICAgICAgICAgICAgIGljb246ICdldmVudCcsXG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdtZXRhJ1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0RmVhdHVyZWRJbW1lZGlhdGVWYWx1ZShzZWxlY3RlZEhlYWRlcjogSGVhZGVyQ29sdW1uKTogRmVhdHVyZWRWYWx1ZSB7XG4gICAgICAgIGlmICh0aGlzLl90YXNrQ29udGVudFNlcnZpY2UudGFzayAmJiB0aGlzLl90YXNrQ29udGVudFNlcnZpY2UudGFzay5pbW1lZGlhdGVEYXRhKSB7XG4gICAgICAgICAgICBjb25zdCBpbW1lZGlhdGUgPSB0aGlzLl90YXNrQ29udGVudFNlcnZpY2UudGFzay5pbW1lZGlhdGVEYXRhLmZpbmQoaXQgPT4gaXQuc3RyaW5nSWQgPT09IHNlbGVjdGVkSGVhZGVyLmZpZWxkSWRlbnRpZmllcik7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5wYXJzZUltbWVkaWF0ZVZhbHVlKGltbWVkaWF0ZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHt2YWx1ZTogJycsIGljb246ICcnLCB0eXBlOiAnJ307XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgICAgIHRoaXMuX3N1Yi51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLl9zdWJUYXNrRXZlbnQudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5fc3ViVGFza0RhdGEudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5fdGFza09wZXJhdGlvbnMuZGVzdHJveSgpO1xuICAgICAgICB0aGlzLl9zdWJQYW5lbFVwZGF0ZS51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLnRhc2tFdmVudC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc0ZvcmNlT3BlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Rhc2tGb3JjZU9wZW4gJiYgISF0aGlzLnRhc2tMaXN0VmlydHVhbFNjcm9sbD8uZ2V0RWxlbWVudFJlZigpPy5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRDb250ZW50TWluSGVpZ2h0KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnRhc2tMaXN0VmlydHVhbFNjcm9sbC5nZXRFbGVtZW50UmVmKCkubmF0aXZlRWxlbWVudC5vZmZzZXRIZWlnaHQgLSAzMiArICdweCc7XG4gICAgfVxufVxuIl19
|
|
381
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtdGFzay1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL3BhbmVsL3Rhc2stcGFuZWwvYWJzdHJhY3QtdGFzay1wYW5lbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1IsTUFBTSxFQUdULE1BQU0sZUFBZSxDQUFDO0FBUXZCLE9BQU8sRUFBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQU9sRSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFPdEUsT0FBTyxFQUF3Qix1Q0FBdUMsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRzFHLE9BQU8sRUFBQyx1Q0FBdUMsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBUzlGLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDZEQUE2RCxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBUWhHLE1BQU0sT0FBZ0IsMEJBQTJCLFNBQVEsdUNBQXVDO0lBZ0U1RixZQUFnQyxtQkFBdUMsRUFDdkMsSUFBbUIsRUFDbkIsZ0JBQWlDLEVBQ2pDLFVBQTRCLEVBQzVCLGlCQUFtQyxFQUNuQyxrQkFBcUMsRUFDckMsb0JBQXlDLEVBQ3pDLGtCQUFxQyxFQUNyQyxrQkFBcUMsRUFDckMsVUFBbUMsRUFDbkMsZ0JBQWlDLEVBQ2pDLG9CQUF5QyxFQUN6QyxvQkFBeUMsRUFDekMsVUFBNEIsRUFDNUIsZUFBc0MsRUFDdUIsaUJB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L0YsQ0FBQztJQUVNLG1CQUFtQjtRQUN0QixPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxhQUFhLENBQUMsWUFBWSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUM7SUFDN0YsQ0FBQzs7d0hBalhpQiwwQkFBMEIsNmdCQStFRix1Q0FBdUMsa05BTXZDLG1CQUFtQjs0R0FyRjNDLDBCQUEwQixxc0JBRmxDLEVBQUU7NEZBRU0sMEJBQTBCO2tCQUovQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFFBQVEsRUFBRSxFQUFFO2lCQUNmOzswQkFnRjBCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsdUNBQXVDOzswQkFLMUQsUUFBUTs7MEJBQ1IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxtQkFBbUI7NENBN0VwRCxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0cscUJBQXFCO3NCQUE3QixLQUFLO2dCQUNVLGdCQUFnQjtzQkFBL0IsS0FBSztnQkFDVSxLQUFLO3NCQUFwQixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0csdUJBQXVCO3NCQUEvQixLQUFLO2dCQUVHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBd0JGLG1CQUFtQjtzQkFEdEIsS0FBSztnQkFNRyxZQUFZO3NCQUFwQixLQUFLO2dCQUlJLFNBQVM7c0JBQWxCLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTTtnQkE2SEksYUFBYTtzQkFEdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBUeXBlXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXRFeHBhbnNpb25QYW5lbH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZXhwYW5zaW9uJztcbmltcG9ydCB7Q29tcG9uZW50UG9ydGFsfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7VGFza0NvbnRlbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi90YXNrLWNvbnRlbnQvc2VydmljZXMvdGFzay1jb250ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHtMb2dnZXJTZXJ2aWNlfSBmcm9tICcuLi8uLi9sb2dnZXIvc2VydmljZXMvbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHtUYXNrUGFuZWxEYXRhfSBmcm9tICcuLi90YXNrLXBhbmVsLWxpc3QvdGFzay1wYW5lbC1kYXRhL3Rhc2stcGFuZWwtZGF0YSc7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1Rhc2tWaWV3U2VydmljZX0gZnJvbSAnLi4vLi4vdmlldy90YXNrLXZpZXcvc2VydmljZS90YXNrLXZpZXcuc2VydmljZSc7XG5pbXBvcnQge2ZpbHRlciwgbWFwLCB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0hlYWRlckNvbHVtbn0gZnJvbSAnLi4vLi4vaGVhZGVyL21vZGVscy9oZWFkZXItY29sdW1uJztcbmltcG9ydCB7dG9Nb21lbnR9IGZyb20gJy4uLy4uL3Jlc291cmNlcy90eXBlcy9uYWUtZGF0ZS10eXBlJztcbmltcG9ydCB7REFURV9USU1FX0ZPUk1BVF9TVFJJTkd9IGZyb20gJy4uLy4uL21vbWVudC90aW1lLWZvcm1hdHMnO1xuaW1wb3J0IHtQYXBlclZpZXdTZXJ2aWNlfSBmcm9tICcuLi8uLi9uYXZpZ2F0aW9uL3F1aWNrLXBhbmVsL2NvbXBvbmVudHMvcGFwZXItdmlldy5zZXJ2aWNlJztcbmltcG9ydCB7VGFza0V2ZW50U2VydmljZX0gZnJvbSAnLi4vLi4vdGFzay1jb250ZW50L3NlcnZpY2VzL3Rhc2stZXZlbnQuc2VydmljZSc7XG5pbXBvcnQge0Fzc2lnblRhc2tTZXJ2aWNlfSBmcm9tICcuLi8uLi90YXNrL3NlcnZpY2VzL2Fzc2lnbi10YXNrLnNlcnZpY2UnO1xuaW1wb3J0IHtEZWxlZ2F0ZVRhc2tTZXJ2aWNlfSBmcm9tICcuLi8uLi90YXNrL3NlcnZpY2VzL2RlbGVnYXRlLXRhc2suc2VydmljZSc7XG5pbXBvcnQge0NhbmNlbFRhc2tTZXJ2aWNlfSBmcm9tICcuLi8uLi90YXNrL3NlcnZpY2VzL2NhbmNlbC10YXNrLnNlcnZpY2UnO1xuaW1wb3J0IHtGaW5pc2hUYXNrU2VydmljZX0gZnJvbSAnLi4vLi4vdGFzay9zZXJ2aWNlcy9maW5pc2gtdGFzay5zZXJ2aWNlJztcbmltcG9ydCB7VGFza01ldGFGaWVsZH0gZnJvbSAnLi4vLi4vaGVhZGVyL3Rhc2staGVhZGVyL3Rhc2stbWV0YS1lbnVtJztcbmltcG9ydCB7VGFza1JlcXVlc3RTdGF0ZVNlcnZpY2V9IGZyb20gJy4uLy4uL3Rhc2svc2VydmljZXMvdGFzay1yZXF1ZXN0LXN0YXRlLnNlcnZpY2UnO1xuaW1wb3J0IHtUYXNrRGF0YVNlcnZpY2V9IGZyb20gJy4uLy4uL3Rhc2svc2VydmljZXMvdGFzay1kYXRhLnNlcnZpY2UnO1xuaW1wb3J0IHtBc3NpZ25Qb2xpY3lTZXJ2aWNlfSBmcm9tICcuLi8uLi90YXNrL3NlcnZpY2VzL2Fzc2lnbi1wb2xpY3kuc2VydmljZSc7XG5pbXBvcnQge1N1YmplY3RUYXNrT3BlcmF0aW9uc30gZnJvbSAnLi4vLi4vdGFzay9tb2RlbHMvc3ViamVjdC10YXNrLW9wZXJhdGlvbnMnO1xuaW1wb3J0IHtDYWxsQ2hhaW5TZXJ2aWNlfSBmcm9tICcuLi8uLi91dGlsaXR5L2NhbGwtY2hhaW4vY2FsbC1jaGFpbi5zZXJ2aWNlJztcbmltcG9ydCB7VGFza0V2ZW50Tm90aWZpY2F0aW9ufSBmcm9tICcuLi8uLi90YXNrLWNvbnRlbnQvbW9kZWwvdGFzay1ldmVudC1ub3RpZmljYXRpb24nO1xuaW1wb3J0IHtEaXNhYmxlQnV0dG9uRnVudGlvbnMsIE5BRV9UQVNLX1BBTkVMX0RJU0FCTEVfQlVUVE9OX0ZVTkNUSU9OU30gZnJvbSAnLi9tb2RlbHMvZGlzYWJsZS1mdW5jdGlvbnMnO1xuaW1wb3J0IHtUYXNrfSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvaW50ZXJmYWNlL3Rhc2snO1xuaW1wb3J0IHtDaGFuZ2VkRmllbGRzfSBmcm9tICcuLi8uLi9kYXRhLWZpZWxkcy9tb2RlbHMvY2hhbmdlZC1maWVsZHMnO1xuaW1wb3J0IHtBYnN0cmFjdFBhbmVsV2l0aEltbWVkaWF0ZURhdGFDb21wb25lbnR9IGZyb20gJy4uL2Fic3RyYWN0L3BhbmVsLXdpdGgtaW1tZWRpYXRlLWRhdGEnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7RmVhdHVyZWRWYWx1ZX0gZnJvbSAnLi4vYWJzdHJhY3QvZmVhdHVyZWQtdmFsdWUnO1xuaW1wb3J0IHtDdXJyZW5jeVBpcGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1Blcm1pc3Npb25TZXJ2aWNlfSBmcm9tICcuLi8uLi9hdXRob3JpemF0aW9uL3Blcm1pc3Npb24vcGVybWlzc2lvbi5zZXJ2aWNlJztcbmltcG9ydCB7Q2hhbmdlZEZpZWxkc1NlcnZpY2V9IGZyb20gJy4uLy4uL2NoYW5nZWQtZmllbGRzL3NlcnZpY2VzL2NoYW5nZWQtZmllbGRzLnNlcnZpY2UnO1xuaW1wb3J0IHtDaGFuZ2VkRmllbGRzTWFwfSBmcm9tICcuLi8uLi9ldmVudC9zZXJ2aWNlcy9pbnRlcmZhY2VzL2NoYW5nZWQtZmllbGRzLW1hcCc7XG5pbXBvcnQge1Rhc2tQYW5lbENvbnRleHR9IGZyb20gJy4vbW9kZWxzL3Rhc2stcGFuZWwtY29udGV4dCc7XG5pbXBvcnQge092ZXJmbG93U2VydmljZX0gZnJvbSAnLi4vLi4vaGVhZGVyL3NlcnZpY2VzL292ZXJmbG93LnNlcnZpY2UnO1xuaW1wb3J0IHtOQUVfVEFTS19GT1JDRV9PUEVOfSBmcm9tICcuLi8uLi92aWV3L3Rhc2stdmlldy9tb2RlbHMvaW5qZWN0aW9uLXRva2VuLXRhc2stZm9yY2Utb3Blbic7XG5pbXBvcnQge0Nka1ZpcnR1YWxTY3JvbGxWaWV3cG9ydH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XG5pbXBvcnQgeyBGaW5pc2hQb2xpY3lTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdGFzay9zZXJ2aWNlcy9maW5pc2gtcG9saWN5LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25jYy1hYnN0cmFjdC1sZWdhbC1ub3RpY2UnLFxuICAgIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdFRhc2tQYW5lbENvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0UGFuZWxXaXRoSW1tZWRpYXRlRGF0YUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcblxuICAgIC8qKlxuICAgICAqIEBpZ25vcmVcbiAgICAgKiBTZXQgYnkgYW4gQElucHV0KCkgb24gYSBzZXR0ZXIgZnVuY3Rpb24sIHRoYXQgYWxzbyByZXNvbHZlcyBmZWF0dXJlZCBmaWVsZHMuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF90YXNrUGFuZWxEYXRhOiBUYXNrUGFuZWxEYXRhO1xuICAgIHByb3RlY3RlZCBfZm9yY2VMb2FkRGF0YU9uT3BlbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHRhc2tMaXN0VmlydHVhbFNjcm9sbDogQ2RrVmlydHVhbFNjcm9sbFZpZXdwb3J0O1xuICAgIEBJbnB1dCgpIHBhbmVsQ29udGVudENvbXBvbmVudDogVHlwZTxhbnk+O1xuICAgIEBJbnB1dCgpIHB1YmxpYyBzZWxlY3RlZEhlYWRlcnMkOiBPYnNlcnZhYmxlPEFycmF5PEhlYWRlckNvbHVtbj4+O1xuICAgIEBJbnB1dCgpIHB1YmxpYyBmaXJzdDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBwdWJsaWMgbGFzdDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSByZXNwb25zaXZlQm9keSA9IHRydWU7XG4gICAgQElucHV0KCkgcHJldmVudENvbGxhcHNlID0gZmFsc2U7XG4gICAgQElucHV0KCkgaGlkZVBhbmVsSGVhZGVyID0gZmFsc2U7XG4gICAgQElucHV0KCkgaGlkZUFjdGlvblJvdyA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIGFjdGlvbkJ1dHRvblRlbXBsYXRlczogQXJyYXk8VGVtcGxhdGVSZWY8YW55Pj47XG4gICAgQElucHV0KCkgYWN0aW9uUm93SnVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyB8ICdmbGV4LXN0YXJ0JyB8ICdmbGV4LWVuZCcgfCAnY2VudGVyJyB8ICdzcGFjZS1hcm91bmQnIHxcbiAgICAgICAgJ2luaXRpYWwnIHwgJ3N0YXJ0JyB8ICdlbmQnIHwgJ2xlZnQnIHwgJ3JpZ2h0JyB8ICdyZXZlcnQnIHwgJ2luaGVyaXQnIHwgJ3Vuc2V0J1xuICAgIEBJbnB1dCgpIHNob3dNb3JlTWVudTogYm9vbGVhbiA9IHRydWU7XG5cbiAgICB0aGlzQ29udGV4dDogVGFza1BhbmVsQ29udGV4dCA9IHtcbiAgICAgICAgY2FuQXNzaWduOiAoKSA9PiB0aGlzLmNhbkFzc2lnbigpLFxuICAgICAgICBhc3NpZ246ICgpID0+IHRoaXMuYXNzaWduKCksXG4gICAgICAgIGdldEFzc2lnblRpdGxlOiAoKSA9PiB0aGlzLmdldEFzc2lnblRpdGxlKCksXG4gICAgICAgIGRlbGVnYXRlOiAoKSA9PiB0aGlzLmRlbGVnYXRlKCksXG4gICAgICAgIGdldERlbGVnYXRlVGl0bGU6ICgpID0+IHRoaXMuZ2V0RGVsZWdhdGVUaXRsZSgpLFxuICAgICAgICBjYW5SZWFzc2lnbjogKCkgPT4gdGhpcy5jYW5SZWFzc2lnbigpLFxuICAgICAgICBjYW5DYW5jZWw6ICgpID0+IHRoaXMuY2FuQ2FuY2VsKCksXG4gICAgICAgIGNhbmNlbDogKCkgPT4gdGhpcy5jYW5jZWwoKSxcbiAgICAgICAgZ2V0Q2FuY2VsVGl0bGU6ICgpID0+IHRoaXMuZ2V0Q2FuY2VsVGl0bGUoKSxcbiAgICAgICAgY2FuRmluaXNoOiAoKSA9PiB0aGlzLmNhbkZpbmlzaCgpLFxuICAgICAgICBmaW5pc2g6ICgpID0+IHRoaXMuZmluaXNoKCksXG4gICAgICAgIGdldEZpbmlzaFRpdGxlOiAoKSA9PiB0aGlzLmdldEZpbmlzaFRpdGxlKCksXG4gICAgICAgIGNhbkNvbGxhcHNlOiAoKSA9PiB0aGlzLmNhbkNvbGxhcHNlKCksXG4gICAgICAgIGNvbGxhcHNlOiAoKSA9PiB0aGlzLmNvbGxhcHNlKCksXG4gICAgICAgIGNhbkRpc2FibGU6IChhcmc6IHN0cmluZykgPT4gdGhpcy5jYW5EaXNhYmxlKGFyZyksXG4gICAgICAgIGNhbkRvOiAoYXJnOiBzdHJpbmcpID0+IHRoaXMuY2FuRG8oYXJnKSxcbiAgICAgICAgaXNMb2FkaW5nOiAoKSA9PiB0aGlzLmlzTG9hZGluZ1xuICAgIH07XG5cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IGZvcmNlTG9hZERhdGFPbk9wZW4oZm9yY2U6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fZm9yY2VMb2FkRGF0YU9uT3BlbiA9IGZvcmNlO1xuICAgICAgICB0aGlzLl9hc3NpZ25Qb2xpY3lTZXJ2aWNlLmZvcmNlZCA9IGZvcmNlO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHRleHRFbGxpcHNpcyA9IGZhbHNlO1xuICAgIC8qKlxuICAgICAqIEVtaXRzIG5vdGlmaWNhdGlvbnMgYWJvdXQgdGFzayBldmVudHNcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgdGFza0V2ZW50OiBFdmVudEVtaXR0ZXI8VGFza0V2ZW50Tm90aWZpY2F0aW9uPjtcbiAgICBAT3V0cHV0KCkgcGFuZWxSZWZPdXRwdXQ6IEV2ZW50RW1pdHRlcjxNYXRFeHBhbnNpb25QYW5lbD47XG5cbiAgICBwdWJsaWMgcG9ydGFsOiBDb21wb25lbnRQb3J0YWw8YW55PjtcbiAgICBwdWJsaWMgcGFuZWxSZWY6IE1hdEV4cGFuc2lvblBhbmVsO1xuICAgIHByb3RlY3RlZCBfc3ViOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIF9zdWJUYXNrRXZlbnQ6IFN1YnNjcmlwdGlvbjtcbiAgICBwcm90ZWN0ZWQgX3N1YlRhc2tEYXRhOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIF9zdWJQYW5lbFVwZGF0ZTogU3Vic2NyaXB0aW9uO1xuICAgIHByb3RlY3RlZCBfdGFza0Rpc2FibGVCdXR0b25GdW5jdGlvbnM6IERpc2FibGVCdXR0b25GdW50aW9ucztcblxuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX3Rhc2tDb250ZW50U2VydmljZTogVGFza0NvbnRlbnRTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2xvZzogTG9nZ2VyU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF90YXNrVmlld1NlcnZpY2U6IFRhc2tWaWV3U2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9wYXBlclZpZXc6IFBhcGVyVmlld1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfdGFza0V2ZW50U2VydmljZTogVGFza0V2ZW50U2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9hc3NpZ25UYXNrU2VydmljZTogQXNzaWduVGFza1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfZGVsZWdhdGVUYXNrU2VydmljZTogRGVsZWdhdGVUYXNrU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9jYW5jZWxUYXNrU2VydmljZTogQ2FuY2VsVGFza1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfZmluaXNoVGFza1NlcnZpY2U6IEZpbmlzaFRhc2tTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX3Rhc2tTdGF0ZTogVGFza1JlcXVlc3RTdGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfdGFza0RhdGFTZXJ2aWNlOiBUYXNrRGF0YVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfYXNzaWduUG9saWN5U2VydmljZTogQXNzaWduUG9saWN5U2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9maW5pc2hQb2xpY3lTZXJ2aWNlOiBGaW5pc2hQb2xpY3lTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2NhbGxDaGFpbjogQ2FsbENoYWluU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF90YXNrT3BlcmF0aW9uczogU3ViamVjdFRhc2tPcGVyYXRpb25zLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE5BRV9UQVNLX1BBTkVMX0RJU0FCTEVfQlVUVE9OX0ZVTkNUSU9OUykgcHJvdGVjdGVkIF9kaXNhYmxlRnVuY3Rpb25zOiBEaXNhYmxlQnV0dG9uRnVudGlvbnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2N1cnJlbmN5UGlwZTogQ3VycmVuY3lQaXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2NoYW5nZWRGaWVsZHNTZXJ2aWNlOiBDaGFuZ2VkRmllbGRzU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9wZXJtaXNzaW9uU2VydmljZTogUGVybWlzc2lvblNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIG92ZXJmbG93U2VydmljZTogT3ZlcmZsb3dTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE5BRV9UQVNLX0ZPUkNFX09QRU4pIHByb3RlY3RlZCBfdGFza0ZvcmNlT3BlbjogYm9vbGVhbikge1xuICAgICAgICBzdXBlcihfdHJhbnNsYXRlLCBfY3VycmVuY3lQaXBlLCBvdmVyZmxvd1NlcnZpY2UpO1xuICAgICAgICB0aGlzLnRhc2tFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8VGFza0V2ZW50Tm90aWZpY2F0aW9uPigpO1xuICAgICAgICB0aGlzLnBhbmVsUmVmT3V0cHV0ID0gbmV3IEV2ZW50RW1pdHRlcjxNYXRFeHBhbnNpb25QYW5lbD4oKTtcbiAgICAgICAgdGhpcy5fc3ViVGFza0V2ZW50ID0gX3Rhc2tFdmVudFNlcnZpY2UudGFza0V2ZW50Tm90aWZpY2F0aW9ucyQuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgICAgIHRoaXMudGFza0V2ZW50LmVtaXQoZXZlbnQpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5fc3ViVGFza0RhdGEgPSBfY2hhbmdlZEZpZWxkc1NlcnZpY2UuY2hhbmdlZEZpZWxkcyQuc3Vic2NyaWJlKChjaGFuZ2VkRmllbGRzTWFwOiBDaGFuZ2VkRmllbGRzTWFwKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBmaWx0ZXJlZENhc2VJZHM6IEFycmF5PHN0cmluZz4gPSBPYmplY3Qua2V5cyhjaGFuZ2VkRmllbGRzTWFwKS5maWx0ZXIoXG4gICAgICAgICAgICAgICAgY2FzZUlkID0+IE9iamVjdC5rZXlzKHRoaXMuX3Rhc2tDb250ZW50U2VydmljZS5yZWZlcmVuY2VkVGFza0FuZENhc2VJZHMpLmluY2x1ZGVzKGNhc2VJZClcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBjb25zdCBjaGFuZ2VkRmllbGRzOiBBcnJheTxDaGFuZ2VkRmllbGRzPiA9IFtdO1xuICAgICAgICAgICAgZmlsdGVyZWRDYXNlSWRzLmZvckVhY2goY2FzZUlkID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCB0YXNrSWRzOiBBcnJheTxzdHJpbmc+ID0gdGhpcy5fdGFza0NvbnRlbnRTZXJ2aWNlLnJlZmVyZW5jZWRUYXNrQW5kQ2FzZUlkc1tjYXNlSWRdO1xuICAgICAgICAgICAgICAgIGNoYW5nZWRGaWVsZHMucHVzaCguLi50aGlzLl9jaGFuZ2VkRmllbGRzU2VydmljZS5wYXJzZUNoYW5nZWRGaWVsZHNCeUNhc2VBbmRUYXNrSWRzKGNhc2VJZCwgdGFza0lkcywgY2hhbmdlZEZpZWxkc01hcCkpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjaGFuZ2VkRmllbGRzLmZpbHRlcihmaWVsZHMgPT4gZmllbGRzICE9PSB1bmRlZmluZWQpLmZvckVhY2goZmllbGRzID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnRhc2tQYW5lbERhdGEuY2hhbmdlZEZpZWxkcy5uZXh0KGZpZWxkcyk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIF90YXNrT3BlcmF0aW9ucy5vcGVuJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5leHBhbmQoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIF90YXNrT3BlcmF0aW9ucy5jbG9zZSQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGlmICghdGhpcy5fdGFza0ZvcmNlT3Blbikge1xuICAgICAgICAgICAgICAgIHRoaXMuY29sbGFwc2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIF90YXNrT3BlcmF0aW9ucy5yZWxvYWQkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl90YXNrVmlld1NlcnZpY2UucmVsb2FkQ3VycmVudFBhZ2UoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIF90YXNrT3BlcmF0aW9ucy5mb3JjZVJlbG9hZCQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3Rhc2tWaWV3U2VydmljZS5yZWxvYWRDdXJyZW50UGFnZSh0cnVlKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX3Rhc2tEaXNhYmxlQnV0dG9uRnVuY3Rpb25zID0ge1xuICAgICAgICAgICAgZmluaXNoOiAodDogVGFzaykgPT4gZmFsc2UsXG4gICAgICAgICAgICBhc3NpZ246ICh0OiBUYXNrKSA9PiBmYWxzZSxcbiAgICAgICAgICAgIGRlbGVnYXRlOiAodDogVGFzaykgPT4gZmFsc2UsXG4gICAgICAgICAgICByZWFzc2lnbjogKHQ6IFRhc2spID0+IGZhbHNlLFxuICAgICAgICAgICAgY2FuY2VsOiAodDogVGFzaykgPT4gZmFsc2UsXG4gICAgICAgIH07XG4gICAgICAgIGlmIChfZGlzYWJsZUZ1bmN0aW9ucykge1xuICAgICAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLl90YXNrRGlzYWJsZUJ1dHRvbkZ1bmN0aW9ucywgX2Rpc2FibGVGdW5jdGlvbnMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMuX3Rhc2tDb250ZW50U2VydmljZS50YXNrID0gdGhpcy5fdGFza1BhbmVsRGF0YS50YXNrO1xuXG4gICAgICAgIHRoaXMuY3JlYXRlQ29udGVudFBvcnRhbCgpO1xuICAgICAgICB0aGlzLl9zdWIgPSB0aGlzLl90YXNrUGFuZWxEYXRhLmNoYW5nZWRGaWVsZHMuc3Vic2NyaWJlKGNoRmllbGRzID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3Rhc2tDb250ZW50U2VydmljZS51cGRhdGVGcm9tQ2hhbmdlZEZpZWxkcyhjaEZpZWxkcyk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuX3N1YlBhbmVsVXBkYXRlID0gdGhpcy5fdGFza1ZpZXdTZXJ2aWNlLnBhbmVsVXBkYXRlLnBpcGUoXG4gICAgICAgICAgICBtYXAoYSA9PiBhLmZpbmQocCA9PiBwLnRhc2suc3RyaW5nSWQgPT09IHRoaXMudGFza1BhbmVsRGF0YS50YXNrLnN0cmluZ0lkKSksXG4gICAgICAgICAgICBmaWx0ZXIocCA9PiAhIXApXG4gICAgICAgICkuc3Vic2NyaWJlKHZhbHVlID0+IHtcbiAgICAgICAgICAgIHRoaXMucmVzb2x2ZUZlYXR1cmVkRmllbGRzVmFsdWVzKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgdGhpcy5wYW5lbFJlZi5vcGVuZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3Rhc2tDb250ZW50U2VydmljZS5leHBhbnNpb25TdGFydGVkKCk7XG4gICAgICAgICAgICBpZiAoIXRoaXMuX3Rhc2tTdGF0ZS5pc0xvYWRpbmcoKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2Fzc2lnblBvbGljeVNlcnZpY2UucGVyZm9ybUFzc2lnblBvbGljeSh0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucGFuZWxSZWYuY2xvc2VkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuX3Rhc2tTdGF0ZS5pc0xvYWRpbmcoKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2Fzc2lnblBvbGljeVNlcnZpY2UucGVyZm9ybUFzc2lnblBvbGljeShmYWxzZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnBhbmVsUmVmLmFmdGVyRXhwYW5kLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl90YXNrQ29udGVudFNlcnZpY2UuJHNob3VsZENyZWF0ZS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdGFza0NvbnRlbnRTZXJ2aWNlLmJsb2NrRmllbGRzKHRoaXMuaGFzTm9GaW5pc2hQZXJtaXNzaW9uKCkpO1xuICAgICAgICAgICAgICAgIHRoaXMuX3Rhc2tQYW5lbERhdGEuaW5pdGlhbGx5RXhwYW5kZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLl90YXNrQ29udGVudFNlcnZpY2UuZXhwYW5zaW9uRmluaXNoZWQoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucGFuZWxSZWYuYWZ0ZXJDb2xsYXBzZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fdGFza1BhbmVsRGF0YS5pbml0aWFsbHlFeHBhbmRlZCA9IGZhbHNlO1xuICAgICAgICB9KTtcblxuICAgICAgICBpZiAodGhpcy5fdGFza1BhbmVsRGF0YS5pbml0aWFsbHlFeHBhbmRlZCB8fCB0aGlzLl90YXNrRm9yY2VPcGVuKSB7XG4gICAgICAgICAgICB0aGlzLnBhbmVsUmVmLmV4cGFuZGVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBjcmVhdGVDb250ZW50UG9ydGFsKCk6IHZvaWQ7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgdGFza1BhbmVsRGF0YShkYXRhOiBUYXNrUGFuZWxEYXRhKSB7XG4gICAgICAgIHRoaXMuX3Rhc2tQYW5lbERhdGEgPSBkYXRhO1xuICAgICAgICB0aGlzLnJlc29sdmVGZWF0dXJlZEZpZWxkc1ZhbHVlcygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgdGFza1BhbmVsRGF0YSgpOiBUYXNrUGFuZWxEYXRhIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Rhc2tQYW5lbERhdGE7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpc0xvYWRpbmcoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl90YXNrU3RhdGUuaXNMb2FkaW5nKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0b3BMb2FkaW5nKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl90YXNrU3RhdGUuc3RvcExvYWRpbmcodGhpcy5fdGFza1BhbmVsRGF0YS50YXNrLnN0cmluZ0lkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcHJldmVudFBhbmVsT3BlbigkZXZlbnQ6IE1vdXNlRXZlbnQpOiBib29sZWFuIHtcbiAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcHVibGljIGlzUGFwZXJWaWV3KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGFwZXJWaWV3LnBhcGVyVmlldztcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0UGFuZWxSZWYocGFuZWxSZWY6IE1hdEV4cGFuc2lvblBhbmVsKSB7XG4gICAgICAgIHRoaXMucGFuZWxSZWYgPSBwYW5lbFJlZjtcbiAgICAgICAgdGhpcy5wYW5lbFJlZk91dHB1dC5lbWl0KHBhbmVsUmVmKTtcbiAgICB9XG5cbiAgICBhc3NpZ24oKSB7XG4gICAgICAgIHRoaXMuX2Fzc2lnblRhc2tTZXJ2aWNlLmFzc2lnbih0aGlzLl9jYWxsQ2hhaW4uY3JlYXRlKChhZnRlckFjdGlvbiA9PiB7XG4gICAgICAgICAgICBpZiAoYWZ0ZXJBY3Rpb24pIHtcbiAgICAgICAgICAgICAgICB0aGlzLl90YXNrRGF0YVNlcnZpY2UuaW5pdGlhbGl6ZVRhc2tEYXRhRmllbGRzKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fZmluaXNoUG9saWN5U2VydmljZS5wZXJmb3JtRmluaXNoUG9saWN5KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pKSk7XG4gICAgfVxuXG4gICAgZGVsZWdhdGUoKSB7XG4gICAgICAgIHRoaXMuX2RlbGVnYXRlVGFza1NlcnZpY2UuZGVsZWdhdGUoKTtcbiAgICB9XG5cbiAgICBjYW5jZWwoKSB7XG4gICAgICAgIHRoaXMuX2NhbmNlbFRhc2tTZXJ2aWNlLmNhbmNlbCh0aGlzLl9jYWxsQ2hhaW4uY3JlYXRlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3Rhc2tPcGVyYXRpb25zLnJlbG9hZCgpO1xuICAgICAgICAgICAgdGhpcy5fdGFza09wZXJhdGlvbnMuY2xvc2UoKTtcbiAgICAgICAgfSkpO1xuICAgIH1cblxuICAgIGZpbmlzaCgpIHtcbiAgICAgICAgaWYgKCF0aGlzLl90YXNrQ29udGVudFNlcnZpY2UudmFsaWRhdGVUYXNrRGF0YSgpKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5fdGFza0NvbnRlbnRTZXJ2aWNlLnRhc2suZGF0YVNpemUgPD0gMCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3Rhc2tEYXRhU2VydmljZS5pbml0aWFsaXplVGFza0RhdGFGaWVsZHMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGludmFsaWRGaWVsZHMgPSB0aGlzLl90YXNrQ29udGVudFNlcnZpY2UuZ2V0SW52YWxpZFRhc2tEYXRhKCk7XG4gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpbnZhbGlkRmllbGRzWzBdLnN0cmluZ0lkKS5zY3JvbGxJbnRvVmlldyh7XG4gICAgICAgICAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgICAgICAgICAgIGJsb2NrOiAnc3RhcnQnLFxuICAgICAgICAgICAgICAgIGlubGluZTogJ25lYXJlc3QnXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2ZpbmlzaFRhc2tTZXJ2aWNlLnZhbGlkYXRlRGF0YUFuZEZpbmlzaCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29sbGFwc2UoKSB7XG4gICAgICAgIHRoaXMucGFuZWxSZWYuY2xvc2UoKTtcbiAgICAgICAgdGhpcy5wYW5lbFJlZi5leHBhbmRlZCA9IGZhbHNlO1xuICAgIH1cblxuICAgIGV4cGFuZCgpIHtcbiAgICAgICAgdGhpcy5wYW5lbFJlZi5vcGVuKCk7XG4gICAgICAgIHRoaXMucGFuZWxSZWYuZXhwYW5kZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBjYW5Bc3NpZ24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wZXJtaXNzaW9uU2VydmljZS5jYW5Bc3NpZ24odGhpcy50YXNrUGFuZWxEYXRhLnRhc2spICYmIHRoaXMuZ2V0QXNzaWduVGl0bGUoKSAhPT0gJyc7XG4gICAgfVxuXG4gICAgcHVibGljIGNhblJlYXNzaWduKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGVybWlzc2lvblNlcnZpY2UuY2FuUmVhc3NpZ24odGhpcy50YXNrUGFuZWxEYXRhLnRhc2spO1xuICAgIH1cblxuICAgIHB1YmxpYyBjYW5DYW5jZWwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wZXJtaXNzaW9uU2VydmljZS5jYW5DYW5jZWwodGhpcy50YXNrUGFuZWxEYXRhLnRhc2spICYmIHRoaXMuZ2V0Q2FuY2VsVGl0bGUoKSAhPT0gJyc7XG4gICAgfVxuXG4gICAgcHVibGljIGNhbkZpbmlzaCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Blcm1pc3Npb25TZXJ2aWNlLmNhbkZpbmlzaCh0aGlzLnRhc2tQYW5lbERhdGEudGFzaykgJiYgdGhpcy5nZXRGaW5pc2hUaXRsZSgpICE9PSAnJztcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhc05vRmluaXNoUGVybWlzc2lvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLl9wZXJtaXNzaW9uU2VydmljZS5jYW5GaW5pc2godGhpcy50YXNrUGFuZWxEYXRhLnRhc2spXG4gICAgfVxuXG4gICAgcHVibGljIGNhbkNvbGxhcHNlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fdGFza0ZvcmNlT3BlbiA/IGZhbHNlIDogdGhpcy5fcGVybWlzc2lvblNlcnZpY2UuY2FuQ29sbGFwc2UodGhpcy50YXNrUGFuZWxEYXRhLnRhc2spO1xuICAgIH1cblxuICAgIHB1YmxpYyBjYW5EbyhhY3Rpb24pOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Blcm1pc3Npb25TZXJ2aWNlLmhhc1Rhc2tQZXJtaXNzaW9uKHRoaXMudGFza1BhbmVsRGF0YS50YXNrLCBhY3Rpb24pICYmIHRoaXMuZ2V0RGVsZWdhdGVUaXRsZSgpICE9PSAnJztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0QXNzaWduVGl0bGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICh0aGlzLnRhc2tQYW5lbERhdGEudGFzay5hc3NpZ25UaXRsZSA9PT0gJycgfHwgdGhpcy50YXNrUGFuZWxEYXRhLnRhc2suYXNzaWduVGl0bGUpXG4gICAgICAgICAgICA/IHRoaXMudGFza1BhbmVsRGF0YS50YXNrLmFzc2lnblRpdGxlIDogJ3Rhc2tzLnZpZXcuYXNzaWduJztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q2FuY2VsVGl0bGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICh0aGlzLnRhc2tQYW5lbERhdGEudGFzay5jYW5jZWxUaXRsZSA9PT0gJycgfHwgdGhpcy50YXNrUGFuZWxEYXRhLnRhc2suY2FuY2VsVGl0bGUpXG4gICAgICAgICAgICA/IHRoaXMudGFza1BhbmVsRGF0YS50YXNrLmNhbmNlbFRpdGxlIDogJ3Rhc2tzLnZpZXcuY2FuY2VsJztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RGVsZWdhdGVUaXRsZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gKHRoaXMudGFza1BhbmVsRGF0YS50YXNrLmRlbGVnYXRlVGl0bGUgPT09ICcnIHx8IHRoaXMudGFza1BhbmVsRGF0YS50YXNrLmRlbGVnYXRlVGl0bGUpXG4gICAgICAgICAgICA/IHRoaXMudGFza1BhbmVsRGF0YS50YXNrLmRlbGVnYXRlVGl0bGUgOiAndGFza3Mudmlldy5kZWxlZ2F0ZSc7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEZpbmlzaFRpdGxlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAodGhpcy50YXNrUGFuZWxEYXRhLnRhc2suZmluaXNoVGl0bGUgPT09ICcnIHx8IHRoaXMudGFza1BhbmVsRGF0YS50YXNrLmZpbmlzaFRpdGxlKVxuICAgICAgICAgICAgPyB0aGlzLnRhc2tQYW5lbERhdGEudGFzay5maW5pc2hUaXRsZSA6ICd0YXNrcy52aWV3LmZpbmlzaCc7XG4gICAgfVxuXG4gICAgcHVibGljIGNhbkRpc2FibGUodHlwZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIGxldCBkaXNhYmxlID0gZmFsc2U7XG4gICAgICAgIGlmICghIXRoaXMudGFza1BhbmVsRGF0YSAmJiAhIXRoaXMudGFza1BhbmVsRGF0YS50YXNrKSB7XG4gICAgICAgICAgICBkaXNhYmxlID0gZGlzYWJsZVxuICAgICAgICAgICAgICAgIHx8ICEhdGhpcy5fdGFza1N0YXRlLmlzTG9hZGluZyh0aGlzLnRhc2tQYW5lbERhdGEudGFzay5zdHJpbmdJZClcbiAgICAgICAgICAgICAgICB8fCAhIXRoaXMuX3Rhc2tTdGF0ZS5pc1VwZGF0aW5nKHRoaXMudGFza1BhbmVsRGF0YS50YXNrLnN0cmluZ0lkKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZGlzYWJsZSB8fCB0aGlzLl90YXNrRGlzYWJsZUJ1dHRvbkZ1bmN0aW9uc1t0eXBlXSh7Li4udGhpcy5fdGFza0NvbnRlbnRTZXJ2aWNlLnRhc2t9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0RmVhdHVyZWRNZXRhVmFsdWUoc2VsZWN0ZWRIZWFkZXI6IEhlYWRlckNvbHVtbik6IEZlYXR1cmVkVmFsdWUge1xuICAgICAgICBjb25zdCB0YXNrID0gdGhpcy5fdGFza1BhbmVsRGF0YS50YXNrO1xuICAgICAgICBzd2l0Y2ggKHNlbGVjdGVkSGVhZGVyLmZpZWxkSWRlbnRpZmllcikge1xuICAgICAgICAgICAgY2FzZSBUYXNrTWV0YUZpZWxkLkNBU0U6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGFzay5jYXNlVGl0bGUsIGljb246ICcnLCB0eXBlOiAnbWV0YSd9O1xuICAgICAgICAgICAgY2FzZSBUYXNrTWV0YUZpZWxkLkNBU0VfSUQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGFzay5jYXNlSWQsIGljb246ICcnLCB0eXBlOiAnbWV0YSd9O1xuICAgICAgICAgICAgY2FzZSBUYXNrTWV0YUZpZWxkLlRBU0tfSUQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGFzay5zdHJpbmdJZCwgaWNvbjogJycsIHR5cGU6ICdtZXRhJ307XG4gICAgICAgICAgICBjYXNlIFRhc2tNZXRhRmllbGQuVElUTEU6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGFzay50aXRsZSwgaWNvbjogJycsIHR5cGU6ICdtZXRhJ307XG4gICAgICAgICAgICBjYXNlIFRhc2tNZXRhRmllbGQuUFJJT1JJVFk6XG4gICAgICAgICAgICAgICAgLy8gVE9ETyBwcmlvcml0eVxuICAgICAgICAgICAgICAgIGlmICghdGFzay5wcmlvcml0eSB8fCB0YXNrLnByaW9yaXR5IDwgMikge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4ge3ZhbHVlOiAnaGlnaCcsIGljb246ICdlcnJvcicsIHR5cGU6ICdtZXRhJ307XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0YXNrLnByaW9yaXR5ID09PSAyKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7dmFsdWU6ICdtZWRpdW0nLCBpY29uOiAnbm9ydGgnLCB0eXBlOiAnbWV0YSd9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4ge3ZhbHVlOiAnbG93JywgaWNvbjogJ3NvdXRoJywgdHlwZTogJ21ldGEnfTtcbiAgICAgICAgICAgIGNhc2UgVGFza01ldGFGaWVsZC5VU0VSOlxuICAgICAgICAgICAgICAgIHJldHVybiB7dmFsdWU6IHRhc2sudXNlciA/IHRhc2sudXNlci5mdWxsTmFtZSA6ICcnLCBpY29uOiAnYWNjb3VudF9jaXJjbGUnLCB0eXBlOiAnbWV0YSd9O1xuICAgICAgICAgICAgY2FzZSBUYXNrTWV0YUZpZWxkLkFTU0lHTl9EQVRFOlxuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiB0YXNrLnN0YXJ0RGF0ZSA/IHRvTW9tZW50KHRhc2suc3RhcnREYXRlKS5mb3JtYXQoREFURV9USU1FX0ZPUk1BVF9TVFJJTkcpIDogJycsXG4gICAgICAgICAgICAgICAgICAgIGljb246ICdldmVudCcsXG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdtZXRhJ1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0RmVhdHVyZWRJbW1lZGlhdGVWYWx1ZShzZWxlY3RlZEhlYWRlcjogSGVhZGVyQ29sdW1uKTogRmVhdHVyZWRWYWx1ZSB7XG4gICAgICAgIGlmICh0aGlzLl90YXNrQ29udGVudFNlcnZpY2UudGFzayAmJiB0aGlzLl90YXNrQ29udGVudFNlcnZpY2UudGFzay5pbW1lZGlhdGVEYXRhKSB7XG4gICAgICAgICAgICBjb25zdCBpbW1lZGlhdGUgPSB0aGlzLl90YXNrQ29udGVudFNlcnZpY2UudGFzay5pbW1lZGlhdGVEYXRhLmZpbmQoaXQgPT4gaXQuc3RyaW5nSWQgPT09IHNlbGVjdGVkSGVhZGVyLmZpZWxkSWRlbnRpZmllcik7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5wYXJzZUltbWVkaWF0ZVZhbHVlKGltbWVkaWF0ZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHt2YWx1ZTogJycsIGljb246ICcnLCB0eXBlOiAnJ307XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgICAgIHRoaXMuX3N1Yi51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLl9zdWJUYXNrRXZlbnQudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5fc3ViVGFza0RhdGEudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5fdGFza09wZXJhdGlvbnMuZGVzdHJveSgpO1xuICAgICAgICB0aGlzLl9zdWJQYW5lbFVwZGF0ZS51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLnRhc2tFdmVudC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc0ZvcmNlT3BlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Rhc2tGb3JjZU9wZW4gJiYgISF0aGlzLnRhc2tMaXN0VmlydHVhbFNjcm9sbD8uZ2V0RWxlbWVudFJlZigpPy5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRDb250ZW50TWluSGVpZ2h0KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnRhc2tMaXN0VmlydHVhbFNjcm9sbC5nZXRFbGVtZW50UmVmKCkubmF0aXZlRWxlbWVudC5vZmZzZXRIZWlnaHQgLSAzMiArICdweCc7XG4gICAgfVxufVxuIl19
|
|
@@ -32,7 +32,7 @@ export class AbstractTaskListPaginationComponent extends AbstractDefaultTaskList
|
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
34
|
AbstractTaskListPaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractTaskListPaginationComponent, deps: [{ token: i1.TaskViewService }, { token: i2.LoggerService }, { token: NAE_TAB_DATA, optional: true }, { token: i3.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
|
|
35
|
-
AbstractTaskListPaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractTaskListPaginationComponent, selector: "ncc-abstract-task-list-pagination-component", inputs: { tasks$: "tasks$" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
35
|
+
AbstractTaskListPaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractTaskListPaginationComponent, selector: "ncc-abstract-task-list-pagination-component", inputs: { disabled: "disabled", tasks$: "tasks$" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
36
36
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractTaskListPaginationComponent, decorators: [{
|
|
37
37
|
type: Component,
|
|
38
38
|
args: [{
|
|
@@ -44,7 +44,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
44
44
|
}, {
|
|
45
45
|
type: Inject,
|
|
46
46
|
args: [NAE_TAB_DATA]
|
|
47
|
-
}] }, { type: i3.ActivatedRoute }]; }, propDecorators: {
|
|
47
|
+
}] }, { type: i3.ActivatedRoute }]; }, propDecorators: { disabled: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}], tasks$: [{
|
|
48
50
|
type: Input
|
|
49
51
|
}] } });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtdGFzay1saXN0LXBhZ2luYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi9wYW5lbC90YXNrLXBhbmVsLWxpc3QvdGFzay1wYW5lbC1saXN0LXBhZ2luYXRpb24vYWJzdHJhY3QtdGFzay1saXN0LXBhZ2luYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFakUsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRW5DLE9BQU8sRUFBQyxnQ0FBZ0MsRUFBQyxNQUFNLGlFQUFpRSxDQUFDO0FBSWpILE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQzs7Ozs7QUFPN0YsTUFBTSxPQUFnQixtQ0FBb0MsU0FBUSxnQ0FBZ0M7SUFvQjlGLFlBQXNCLGdCQUFpQyxFQUNqQyxJQUFtQixFQUNLLGVBQWdDLEVBQ3hELEtBQXNCO1FBQ3hDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBSnBDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBaUI7UUFDakMsU0FBSSxHQUFKLElBQUksQ0FBZTtRQUVuQixVQUFLLEdBQUwsS0FBSyxDQUFpQjtRQXBCckMsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLGNBQVMsR0FBRyxDQUFDLENBQUM7UUFDZCxvQkFBZSxHQUFrQixDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFvQnJELENBQUM7SUFqQkQsSUFDSSxNQUFNLENBQUMsS0FBdUM7UUFDOUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNoQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO1lBQzdELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUM7UUFDN0QsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ1QsQ0FBQztJQUVELElBQUksTUFBTTtRQUNOLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN4QixDQUFDO0lBU00sYUFBYSxDQUFDLENBQUM7UUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUMzQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDNUUsQ0FBQzs7aUlBL0JpQixtQ0FBbUMsOEVBc0JyQixZQUFZO3FIQXRCMUIsbUNBQW1DLDhKQUYzQyxFQUFFOzRGQUVNLG1DQUFtQztrQkFKeEQsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsNkNBQTZDO29CQUN2RCxRQUFRLEVBQUUsRUFBRTtpQkFDZjs7MEJBdUJnQixRQUFROzswQkFBSSxNQUFNOzJCQUFDLFlBQVk7eUVBZjVCLFFBQVE7c0JBQXZCLEtBQUs7Z0JBRUYsTUFBTTtzQkFEVCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEluamVjdCwgSW5wdXQsIE9wdGlvbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3RhcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZX0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7QWJzdHJhY3REZWZhdWx0VGFza0xpc3RDb21wb25lbnR9IGZyb20gJy4uL2RlZmF1bHQtdGFzay1wYW5lbC1saXN0L2Fic3RyYWN0LWRlZmF1bHQtdGFzay1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQge1Rhc2tQYW5lbERhdGF9IGZyb20gJy4uL3Rhc2stcGFuZWwtZGF0YS90YXNrLXBhbmVsLWRhdGEnO1xuaW1wb3J0IHtUYXNrVmlld1NlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3ZpZXcvdGFzay12aWV3L3NlcnZpY2UvdGFzay12aWV3LnNlcnZpY2UnO1xuaW1wb3J0IHtMb2dnZXJTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9sb2dnZXIvc2VydmljZXMvbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHtOQUVfVEFCX0RBVEF9IGZyb20gJy4uLy4uLy4uL3RhYnMvdGFiLWRhdGEtaW5qZWN0aW9uLXRva2VuL3RhYi1kYXRhLWluamVjdGlvbi10b2tlbic7XG5pbXBvcnQge0luamVjdGVkVGFiRGF0YX0gZnJvbSAnLi4vLi4vLi4vdGFicy9pbnRlcmZhY2VzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduY2MtYWJzdHJhY3QtdGFzay1saXN0LXBhZ2luYXRpb24tY29tcG9uZW50JyxcbiAgICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RUYXNrTGlzdFBhZ2luYXRpb25Db21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdERlZmF1bHRUYXNrTGlzdENvbXBvbmVudCB7XG5cbiAgICBwdWJsaWMgbGVuZ3RoOiBudW1iZXI7XG4gICAgcHVibGljIHBhZ2VTaXplID0gMjA7XG4gICAgcHVibGljIHBhZ2VJbmRleCA9IDA7XG4gICAgcHVibGljIHBhZ2VTaXplT3B0aW9uczogQXJyYXk8bnVtYmVyPiA9IFsxMCwgMjAsIDUwXTtcblxuICAgIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZDogYm9vbGVhbjtcbiAgICBASW5wdXQoKVxuICAgIHNldCB0YXNrcyQodGFza3M6IE9ic2VydmFibGU8QXJyYXk8VGFza1BhbmVsRGF0YT4+KSB7XG4gICAgICAgIHRoaXMuX3Rhc2tzJCA9IHRhc2tzLnBpcGUoKHRhcCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmxlbmd0aCA9IHRoaXMuX3Rhc2tWaWV3U2VydmljZS5wYWdpbmF0aW9uLnRvdGFsRWxlbWVudHM7XG4gICAgICAgICAgICB0aGlzLnBhZ2VJbmRleCA9IHRoaXMuX3Rhc2tWaWV3U2VydmljZS5wYWdpbmF0aW9uLm51bWJlcjtcbiAgICAgICAgfSkpKTtcbiAgICB9XG5cbiAgICBnZXQgdGFza3MkKCk6IE9ic2VydmFibGU8QXJyYXk8VGFza1BhbmVsRGF0YT4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Rhc2tzJDtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX3Rhc2tWaWV3U2VydmljZTogVGFza1ZpZXdTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfbG9nOiBMb2dnZXJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTkFFX1RBQl9EQVRBKSBpbmplY3RlZFRhYkRhdGE6IEluamVjdGVkVGFiRGF0YSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgcm91dGU/OiBBY3RpdmF0ZWRSb3V0ZSkge1xuICAgICAgICBzdXBlcihfdGFza1ZpZXdTZXJ2aWNlLCBfbG9nLCBpbmplY3RlZFRhYkRhdGEsIHJvdXRlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25QYWdlQ2hhbmdlZChlKSB7XG4gICAgICAgIHRoaXMucGFnZUluZGV4ID0gZS5wYWdlSW5kZXg7XG4gICAgICAgIHRoaXMucGFnZVNpemUgPSBlLnBhZ2VTaXplO1xuICAgICAgICB0aGlzLl90YXNrVmlld1NlcnZpY2UubmV4dFBhZ2VQYWdpbmF0aW9uKHRoaXMucGFnZVNpemUsIHRoaXMucGFnZUluZGV4KTtcbiAgICB9XG59XG4iXX0=
|