@eo-sdk/client 8.13.0-rc.1 → 8.14.0-rc.1
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/app/eo-framework/form-elements/id-reference/reference-finder-entry/reference-finder-entry.component.d.ts +0 -1
- package/assets/_default/i18n/de.json +1 -0
- package/assets/_default/i18n/en.json +1 -0
- package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js +40 -8
- package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js.map +1 -1
- package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js +2 -2
- package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js.map +1 -1
- package/bundles/eo-sdk-client.umd.js +33 -27
- package/bundles/eo-sdk-client.umd.js.map +1 -1
- package/bundles/eo-sdk-client.umd.min.js +1 -1
- package/bundles/eo-sdk-client.umd.min.js.map +1 -1
- package/eo-sdk-client.metadata.json +1 -1
- package/esm2015/app/eo-client/about-state/about-state.component.js +3 -3
- package/esm2015/app/eo-client/settings/settings.component.js +7 -2
- package/esm2015/app/eo-framework/app-shell/app-bar/app-process/app-process.component.js +17 -14
- package/esm2015/app/eo-framework/app-shell/app-bar/app-search/app-search.component.js +2 -2
- package/esm2015/app/eo-framework/app-shell/app-bar/side-bar/side-bar.component.js +1 -1
- package/esm2015/app/eo-framework/form-elements/id-reference/id-reference.component.js +3 -3
- package/esm2015/app/eo-framework/form-elements/id-reference/reference-finder-entry/reference-finder-entry.component.js +2 -5
- package/esm2015/app/eo-framework/form-elements/id-reference/service/reference-finder.service.js +2 -2
- package/esm2015/app/eo-framework/form-elements/organization/organization.component.js +1 -1
- package/esm2015/app/eo-framework/grid/filters/organization-filter.component.js +1 -1
- package/esm2015/projects/eo-sdk/core/lib/service/bpm/bpm.service.js +32 -8
- package/esm2015/projects/eo-sdk/core/lib/service/config/config.service.js +9 -1
- package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js +39 -7
- package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js.map +1 -1
- package/fesm2015/eo-sdk-client.js +32 -27
- package/fesm2015/eo-sdk-client.js.map +1 -1
- package/package.json +2 -2
- package/projects/eo-sdk/core/eo-sdk-client-projects-eo-sdk-core.metadata.json +1 -1
- package/projects/eo-sdk/core/lib/service/bpm/bpm.service.d.ts +6 -1
- package/projects/eo-sdk/core/lib/service/config/config.service.d.ts +5 -0
- package/projects/eo-sdk/core/package.json +1 -1
- package/scss/_form.scss +1 -0
- package/styles.css +6 -0
|
@@ -195,7 +195,7 @@ export class IdReferenceComponent {
|
|
|
195
195
|
IdReferenceComponent.decorators = [
|
|
196
196
|
{ type: Component, args: [{
|
|
197
197
|
selector: 'eo-id-reference',
|
|
198
|
-
template: "<div class=\"eo-id-reference\">\r\n <p-autoComplete [(ngModel)]=\"innerValues\" [minLength]=\"1\" [delay]=\"500\" #autocomplete\r\n (onSelect)=\"onAutoCompleteSelect($event)\"\r\n (onUnselect)=\"removeItem($event)\"\r\n (onBlur)=\"onAutoCompleteBlur()\"\r\n [suggestions]=\"autocompleteRes\" field=\"title\"\r\n [readonly]=\"readonly\"\r\n [disabled]=\"readonly\"\r\n [forceSelection]=\"true\"\r\n (completeMethod)=\"autocompleteFn($event)\" [multiple]=\"true\" [styleClass]=\"!multiselect && innerValues.length === 1 ? 'xxx' : ''\">\r\n <ng-template pTemplate=\"selectedItem\" let-item>\r\n <a *ngIf=\"!item.state || item.state === 'OK'\" class=\"link router-link\" [routerLink]=\"['/object', item.id, {outlets: {modal: null}}]\" [queryParams]=\"{type: referenceType.qname}\">\r\n <svg focusable=\"false\" class=\"ref-icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\"\r\n viewBox=\"0 0 24 24\">\r\n <path d=\"M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8\r\n 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z\"></path>\r\n </svg>\r\n </a>\r\n <eo-icon [objectType]=\"referenceType\" title=\"{{referenceType.label}}\" class=\"ref-type-icon\" [ngClass]=\"{'deleted-reference-label': item.state && (item.state === 'RECYCLED' || item.state === 'GONE')}\"></eo-icon>\r\n <span *ngIf=\"!(item.state && (item.state === 'RECYCLED' || item.state === 'GONE')); else deleted\" class=\"label\">{{item.title || referenceType.label}}</span>\r\n <ng-template #deleted>\r\n <span class=\"label deleted-reference-label\">{{('eo.references.deleted' | translate)}}</span>\r\n </ng-template>\r\n </ng-template>\r\n </p-autoComplete>\r\n\r\n <ng-template #notFound><span class=\"label\">{{innerValues && innerValues.length ? ('eo.references.not.available' | translate) : ''}}</span></ng-template>\r\n\r\n <button #button class=\"ui-button\" *ngIf=\"!readonly\"\r\n title=\"{{('eo.references.search' | translate) + ' ' + tooltipTypeHint}}\"\r\n [disabled]=\"selectionDisabled\"\r\n (click)=\"showDialog()\">\r\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_none.svg'\"></eo-icon>\r\n </button>\r\n</div>\r\n\r\n<eo-dialog [title]=\"('eo.references.add' | translate)\"\r\n [subtitle]=\"referenceType?.label\"\r\n [(visible)]=\"visibleDialog\"\r\n [minWidth]=\"577\"\r\n [minHeight]=\"590\"\r\n [styleClass]=\"'reference-field-dialog'\"\r\n #dialog>\r\n\r\n <eo-reference-finder *ngIf=\"dialog.visible\"\r\n [isDisabled]=\"isDisabled\"\r\n [types]=\"referenceType.qname\"\r\n [multiselect]=\"multiselect\"\r\n [currentSelection]=\"innerValues\"\r\n [clipboard]=\"clipboard\"\r\n [contextId]=\"contextId\"\r\n [exceptionIDs]=\"exceptionIDs\"\r\n [queryFilters]=\"queryFilters\"\r\n (addDmsObjects)=\"paste($event)\">\r\n </eo-reference-finder>\r\n</eo-dialog>\r\n",
|
|
198
|
+
template: "<div class=\"eo-id-reference\">\r\n <p-autoComplete [(ngModel)]=\"innerValues\" [minLength]=\"1\" [delay]=\"500\" #autocomplete\r\n (onSelect)=\"onAutoCompleteSelect($event)\"\r\n (onUnselect)=\"removeItem($event)\"\r\n (onBlur)=\"onAutoCompleteBlur()\"\r\n [suggestions]=\"autocompleteRes\" field=\"title\"\r\n [readonly]=\"readonly\"\r\n [disabled]=\"readonly\"\r\n [forceSelection]=\"true\"\r\n (completeMethod)=\"autocompleteFn($event)\" [multiple]=\"true\" [styleClass]=\"!multiselect && innerValues.length === 1 ? 'xxx' : ''\">\r\n <ng-template pTemplate=\"selectedItem\" let-item>\r\n <a *ngIf=\"!item.state || item.state === 'OK'\" class=\"link router-link\" [routerLink]=\"['/object', item.id, {outlets: {modal: null}}]\" [queryParams]=\"{type: referenceType.qname}\">\r\n <svg focusable=\"false\" class=\"ref-icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\"\r\n viewBox=\"0 0 24 24\">\r\n <path d=\"M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8\r\n 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z\"></path>\r\n </svg>\r\n </a>\r\n <eo-icon [objectType]=\"referenceType\" title=\"{{referenceType.label}}\" class=\"ref-type-icon\" [ngClass]=\"{'deleted-reference-label': item.state && (item.state === 'RECYCLED' || item.state === 'GONE')}\"></eo-icon>\r\n <span *ngIf=\"!(item.state && (item.state === 'RECYCLED' || item.state === 'GONE')); else deleted\" class=\"label\" eoRtlAware=\"full\">{{item.title || referenceType.label}}</span>\r\n <ng-template #deleted>\r\n <span class=\"label deleted-reference-label\">{{('eo.references.deleted' | translate)}}</span>\r\n </ng-template>\r\n </ng-template>\r\n </p-autoComplete>\r\n\r\n <ng-template #notFound><span class=\"label\">{{innerValues && innerValues.length ? ('eo.references.not.available' | translate) : ''}}</span></ng-template>\r\n\r\n <button #button class=\"ui-button\" *ngIf=\"!readonly\"\r\n title=\"{{('eo.references.search' | translate) + ' ' + tooltipTypeHint}}\"\r\n [disabled]=\"selectionDisabled\"\r\n (click)=\"showDialog()\">\r\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_none.svg'\"></eo-icon>\r\n </button>\r\n</div>\r\n\r\n<eo-dialog [title]=\"('eo.references.add' | translate)\"\r\n [subtitle]=\"referenceType?.label\"\r\n [(visible)]=\"visibleDialog\"\r\n [minWidth]=\"577\"\r\n [minHeight]=\"590\"\r\n [styleClass]=\"'reference-field-dialog'\"\r\n #dialog>\r\n\r\n <eo-reference-finder *ngIf=\"dialog.visible\"\r\n [isDisabled]=\"isDisabled\"\r\n [types]=\"referenceType.qname\"\r\n [multiselect]=\"multiselect\"\r\n [currentSelection]=\"innerValues\"\r\n [clipboard]=\"clipboard\"\r\n [contextId]=\"contextId\"\r\n [exceptionIDs]=\"exceptionIDs\"\r\n [queryFilters]=\"queryFilters\"\r\n (addDmsObjects)=\"paste($event)\">\r\n </eo-reference-finder>\r\n</eo-dialog>\r\n",
|
|
199
199
|
providers: [
|
|
200
200
|
{
|
|
201
201
|
provide: NG_VALUE_ACCESSOR,
|
|
@@ -208,7 +208,7 @@ IdReferenceComponent.decorators = [
|
|
|
208
208
|
multi: true
|
|
209
209
|
}
|
|
210
210
|
],
|
|
211
|
-
styles: [".eo-id-reference{align-items:center;display:flex}.eo-id-reference__element{align-self:center;display:flex;flex-wrap:wrap}.eo-id-reference .ui-button:disabled{cursor:default}::ng-deep .reference-field-dialog{width:577px}::ng-deep .ref-type-icon{height:16px;width:16px}::ng-deep .deleted-reference-label{color:var(--color-error)}::ng-deep .label{display:flex;flex-flow:column;margin-right:
|
|
211
|
+
styles: [".eo-id-reference{align-items:center;display:flex}.eo-id-reference__element{align-self:center;display:flex;flex-wrap:wrap}.eo-id-reference .ui-button:disabled{cursor:default}::ng-deep .reference-field-dialog{width:577px}::ng-deep .ref-type-icon{height:16px;width:16px}::ng-deep .deleted-reference-label{color:var(--color-error)}::ng-deep .label{display:flex;flex-flow:column;margin-left:4px;margin-right:1em}::ng-deep .label>span{font-size:var(--font-hint)}::ng-deep .label.rtl{margin-left:1em;margin-right:4px}::ng-deep .remove-icon{color:var(--text-color-hint);flex:0 0 auto;height:14px;width:14px}::ng-deep .remove-icon:hover{color:var(--text-color-caption);cursor:pointer}::ng-deep .ui-autocomplete.xxx .ui-autocomplete-multiple-container.ui-inputtext{cursor:default}::ng-deep .ui-autocomplete.xxx .ui-autocomplete-input-token{display:none}p-autoComplete{width:100%}"]
|
|
212
212
|
},] }
|
|
213
213
|
];
|
|
214
214
|
IdReferenceComponent.ctorParameters = () => [
|
|
@@ -229,4 +229,4 @@ IdReferenceComponent.propDecorators = {
|
|
|
229
229
|
queryFilters: [{ type: Input }],
|
|
230
230
|
objectTypesFilter: [{ type: Input }]
|
|
231
231
|
};
|
|
232
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQtcmVmZXJlbmNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tZnJhbWV3b3JrL2Zvcm0tZWxlbWVudHMvaWQtcmVmZXJlbmNlL2lkLXJlZmVyZW5jZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDM0YsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM5RSxPQUFPLEVBQXVCLGlCQUFpQixFQUEwQixhQUFhLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5RyxPQUFPLEVBRUwsZ0JBQWdCLEVBR0YsYUFBYSxFQUMzQixhQUFhLEVBQ2QsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFDLFlBQVksRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQTRCakQsTUFBTSxPQUFPLG9CQUFvQjtJQWtFL0IsWUFBb0IsZ0JBQWtDLEVBQVUsTUFBcUIsRUFDM0UsZ0JBQWtDLEVBQ2xDLGFBQTRCO1FBRmxCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQzNFLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFsRXRDLGlCQUFZLEdBQXVCLEVBQUUsQ0FBQyxDQUFDLHVCQUF1QjtRQUs5RCxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQTJKdEIsb0JBQWUsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBN0ZwQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMs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QVksQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztTQUM5RDthQUFNO1lBQ0wsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztTQUN6RDtJQUNILENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLFFBQVEsRUFBRTtZQUMvQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztTQUN6QjtJQUNILENBQUM7OztZQTdQRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IseXZHQUE0QztnQkFFNUMsU0FBUyxFQUFFO29CQUNUO3dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUM7d0JBQ25ELEtBQUssRUFBRSxJQUFJO3FCQUNaO29CQUNEO3dCQUNFLE9BQU8sRUFBRSxhQUFhO3dCQUN0QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG9CQUFvQixDQUFDO3dCQUNuRCxLQUFLLEVBQUUsSUFBSTtxQkFDWjtpQkFDRjs7YUFDRjs7O1lBbENDLGdCQUFnQjtZQUloQixhQUFhO1lBVFAsZ0JBQWdCO1lBUVIsYUFBYTs7O3VCQTJDMUIsS0FBSzswQkFDTCxLQUFLO3dCQUNMLEtBQUs7d0JBQ0wsS0FBSzsyQkFDTCxLQUFLO2dDQUNMLFNBQVMsU0FBQyxjQUFjOzJCQWN4QixLQUFLO3dCQVNMLEtBQUs7MkJBT0wsS0FBSztnQ0FJTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtSZWZlcmVuY2VTZXJ2aWNlfSBmcm9tICcuLy4uLy4uLy4uL2VvLWZyYW1ld29yay1jb3JlL3JlZmVyZW5jZXMvcmVmZXJlbmNlLnNlcnZpY2UnO1xyXG5pbXBvcnQge0NvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IsIFZhbGlkYXRvciwgRm9ybUNvbnRyb2wsIE5HX1ZBTElEQVRPUlN9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtcclxuICBDbGlwYm9hcmQsXHJcbiAgQ2xpcGJvYXJkU2VydmljZSxcclxuICBEbXNPYmplY3QsXHJcbiAgT2JqZWN0VHlwZSxcclxuICBTZWFyY2hSZXN1bHQsIFNlYXJjaFNlcnZpY2UsXHJcbiAgU3lzdGVtU2VydmljZVxyXG59IGZyb20gJ0Blby1zZGsvY29yZSc7XHJcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHtkZWJvdW5jZVRpbWUsIG1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQge0F1dG9Db21wbGV0ZX0gZnJvbSAncHJpbWVuZy9wcmltZW5nJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVRvUmVuZGVySXRlbSB7XHJcbiAgaWQ6IHN0cmluZztcclxuICB0aXRsZT86IHN0cmluZztcclxuICB0eXBlTmFtZTogc3RyaW5nO1xyXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xyXG4gIHN0YXRlPzogc3RyaW5nO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VvLWlkLXJlZmVyZW5jZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2lkLXJlZmVyZW5jZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaWQtcmVmZXJlbmNlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJZFJlZmVyZW5jZUNvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJZFJlZmVyZW5jZUNvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlXHJcbiAgICB9XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSWRSZWZlcmVuY2VDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0LCBWYWxpZGF0b3Ige1xyXG4gIHByaXZhdGUgdmFsdWU7IC8vIG1vZGVsIHZhbHVlXHJcbiAgX2lubmVyVmFsdWVzOiBEYXRhVG9SZW5kZXJJdGVtW10gPSBbXTsgLy8gaW5uZXIgbmctbW9kZWwgdmFsdWVcclxuICBjbGlwYm9hcmQ6IENsaXBib2FyZDtcclxuICByZWZlcmVuY2VUeXBlOiBPYmplY3RUeXBlO1xyXG4gIHN1YlR5cGVzOiBPYmplY3RUeXBlW107XHJcbiAgdG9vbHRpcFR5cGVIaW50OiBzdHJpbmc7XHJcbiAgdmlzaWJsZURpYWxvZyA9IGZhbHNlO1xyXG5cclxuICBhdXRvY29tcGxldGVSZXM7XHJcblxyXG4gIEBJbnB1dCgpIHJlYWRvbmx5OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIG11bHRpc2VsZWN0OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHNpdHVhdGlvbjogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGNvbnRleHRJZDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGV4Y2VwdGlvbklEczogc3RyaW5nW107XHJcbiAgQFZpZXdDaGlsZCgnYXV0b2NvbXBsZXRlJykgYXV0b0NvbXBsZXRlSW5wdXQ6IEF1dG9Db21wbGV0ZTtcclxuXHJcbiAgc2V0IGlubmVyVmFsdWVzKGRhdGE6IERhdGFUb1JlbmRlckl0ZW1bXSkge1xyXG4gICAgaWYgKGRhdGEpIHtcclxuICAgICAgdGhpcy5faW5uZXJWYWx1ZXMgPSBkYXRhO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5faW5uZXJWYWx1ZXMgPSBbXTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCBpbm5lclZhbHVlcygpIHtcclxuICAgIHJldHVybiB0aGlzLl9pbm5lclZhbHVlcztcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGRhdGFUb1JlbmRlcihkYXRhOiBEYXRhVG9SZW5kZXJJdGVtW10pIHtcclxuICAgIGlmIChkYXRhKSB7XHJcbiAgICAgIHRoaXMuaW5uZXJWYWx1ZXMgPSBkYXRhO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pbm5lclZhbHVlcyA9IFtdO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgcmVmZXJlbmNlKHJlZjogYW55KSB7XHJcbiAgICB0aGlzLnJlZmVyZW5jZVR5cGUgPSByZWYgPyB0aGlzLnN5c3RlbS5nZXRPYmplY3RUeXBlKHJlZi50eXBlKSA6IG51bGw7XHJcbiAgICB0aGlzLnN1YlR5cGVzID0gdGhpcy5nZXRTdWJUeXBlcyh0aGlzLnJlZmVyZW5jZVR5cGU/Lm5hbWUsIHRoaXMuc3lzdGVtLmdldE9iamVjdFR5cGVzKCkpO1xyXG4gICAgdGhpcy50b29sdGlwVHlwZUhpbnQgPSB0aGlzLmNyZWF0ZVRvb2x0aXBUeXBlSGludCh0aGlzLnJlZmVyZW5jZVR5cGUsIHRoaXMuc3ViVHlwZXMpO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgcXVlcnlGaWx0ZXJzOiB7XHJcbiAgICBbZmllbGRRbmFtZTogc3RyaW5nXToge286IHN0cmluZywgdjE6IGFueSwgdjI6IGFueX1cclxuICB9O1xyXG5cclxuICBASW5wdXQoKSBvYmplY3RUeXBlc0ZpbHRlcjogc3RyaW5nW107XHJcblxyXG4gIHByaXZhdGUgZ2V0U3ViVHlwZXModHlwZU5hbWUsIHR5cGVzKSB7XHJcbiAgICBsZXQgc3ViVHlwZXMgPSBbXTtcclxuICAgIHR5cGVzLmZvckVhY2gob2JqZWN0VHlwZSA9PiB7XHJcbiAgICAgIGlmICghIW9iamVjdFR5cGUuc3VwZXJ0eXBlcy5maW5kKHNUID0+IHNUID09PSB0eXBlTmFtZSkpIHtcclxuICAgICAgICBzdWJUeXBlcy5wdXNoKG9iamVjdFR5cGUpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBzdWJUeXBlcztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlVG9vbHRpcFR5cGVIaW50KHJlZmVyZW5jZVR5cGUsIHN1YlR5cGVzID0gW10pIHtcclxuICAgIHJldHVybiByZWZlcmVuY2VUeXBlID8gYCgke1tyZWZlcmVuY2VUeXBlLmxhYmVsLCAuLi5zdWJUeXBlcy5tYXAodHlwZXMgPT4gdHlwZXMubGFiZWwpXS5qb2luKCcsICcpfSlgIDogJyc7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNsaXBib2FyZFNlcnZpY2U6IENsaXBib2FyZFNlcnZpY2UsIHByaXZhdGUgc3lzdGVtOiBTeXN0ZW1TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWZlcmVuY2VTZXJ2aWNlOiBSZWZlcmVuY2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBzZWFyY2hTZXJ2aWNlOiBTZWFyY2hTZXJ2aWNlKSB7XHJcbiAgICB0aGlzLmNsaXBib2FyZFNlcnZpY2UuY2xpcGJvYXJkJC5zdWJzY3JpYmUoY2xpcGJvYXJkID0+ICh0aGlzLmNsaXBib2FyZCA9IGNsaXBib2FyZCkpO1xyXG4gICAgdGhpcy5jbGlwYm9hcmQgPSB0aGlzLmNsaXBib2FyZFNlcnZpY2UuZ2V0KCk7XHJcbiAgfVxyXG5cclxuICBzaG93RGlhbG9nKCkge1xyXG4gICAgdGhpcy52aXNpYmxlRGlhbG9nID0gIXRoaXMudmlzaWJsZURpYWxvZztcclxuICB9XHJcblxyXG4gIGdldCBzZWxlY3Rpb25EaXNhYmxlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLm11bHRpc2VsZWN0ID8gZmFsc2UgOiB0aGlzLmlubmVyVmFsdWVzLmxlbmd0aDtcclxuICB9XHJcblxyXG4gIGdldCBpc0Rpc2FibGVkKCkge1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgIXRoaXMucmVmZXJlbmNlVHlwZSB8fFxyXG4gICAgICB0aGlzLnJlYWRvbmx5IHx8XHJcbiAgICAgIHRoaXMuY2xpcGJvYXJkLmFjdGlvbiA9PT0gMSB8fFxyXG4gICAgICAhdGhpcy5jbGlwYm9hcmQuZWxlbWVudHMubGVuZ3RoIHx8XHJcbiAgICAgIHRoaXMuY29udGFpbnNJbmNvcnJlY3RUeXBlcyhcclxuICAgICAgICB0aGlzLmNsaXBib2FyZC5lbGVtZW50cyxcclxuICAgICAgICB0aGlzLnJlZmVyZW5jZVR5cGUsXHJcbiAgICAgICAgdGhpcy5zdWJUeXBlc1xyXG4gICAgICApIHx8XHJcbiAgICAgIHRoaXMuY29udGFpbnNJbmNvcnJlY3RDb250ZXh0KHRoaXMuY2xpcGJvYXJkLmVsZW1lbnRzLCB0aGlzLmNvbnRleHRJZClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNvbnRhaW5zSW5jb3JyZWN0VHlwZXMoY2xpcGJvYXJkRWxlbWVudHMsIHJlZlR5cGUsIHN1YlR5cGVzKSB7XHJcbiAgICByZXR1cm4gISFjbGlwYm9hcmRFbGVtZW50cy5maW5kKGNiRWwgPT4gIShjYkVsLnR5cGVOYW1lID09PSByZWZUeXBlLm5hbWUgfHwgc3ViVHlwZXMuZmluZChzVCA9PiBzVC5uYW1lID09PSBjYkVsLnR5cGVOYW1lKSkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb250YWluc0luY29ycmVjdENvbnRleHQoY2xpcGJvYXJkRWxlbWVudHMsIGNvbnRleHRJZCkge1xyXG4gICAgcmV0dXJuICEhY2xpcGJvYXJkRWxlbWVudHMuZmluZChjYkVsID0+IHtcclxuICAgICAgaWYgKCFjb250ZXh0SWQpIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuICFjYkVsLmNvbnRleHRGb2xkZXIgfHwgY2JFbC5jb250ZXh0Rm9sZGVyLmlkICE9PSBjb250ZXh0SWQ7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHBhc3RlKGNvbnRlbnQ/OiBEbXNPYmplY3RbXSkge1xyXG4gICAgdGhpcy5saW5rRG1zT2JqZWN0KGNvbnRlbnQpO1xyXG4gICAgdGhpcy5zaG93RGlhbG9nKCk7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgbGlua0Rtc09iamVjdChjb250ZW50PzogRG1zT2JqZWN0W10pIHtcclxuICAgIChjb250ZW50IHx8IHRoaXMuY2xpcGJvYXJkLmVsZW1lbnRzKS5mb3JFYWNoKChkbXNPYmplY3Q6IERtc09iamVjdCkgPT4ge1xyXG4gICAgICBjb25zdCB7aWQsIHRpdGxlLCBkZXNjcmlwdGlvbiwgdHlwZU5hbWV9ID0gZG1zT2JqZWN0O1xyXG4gICAgICB0aGlzLmlubmVyVmFsdWVzLnB1c2goe2lkLCB0aXRsZSwgZGVzY3JpcHRpb24sIHR5cGVOYW1lfSk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuaW5uZXJWYWx1ZXMgPSBfLnVuaXFCeSh0aGlzLmlubmVyVmFsdWVzLCAnaWQnKTtcclxuICAgIGlmICh0aGlzLm11bHRpc2VsZWN0KSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSB0aGlzLmlubmVyVmFsdWVzLm1hcChpdiA9PiBpdi5pZCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnZhbHVlID0gdGhpcy5pbm5lclZhbHVlc1swXS5pZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlbW92ZUl0ZW0oaXRlbSkge1xyXG4gICAgdGhpcy5pbm5lclZhbHVlcyA9IHRoaXMuaW5uZXJWYWx1ZXMuZmlsdGVyKGl2ID0+IGl2LmlkICE9PSBpdGVtLmlkKTtcclxuICAgIHRoaXMudmFsdWUgPSB0aGlzLm11bHRpc2VsZWN0XHJcbiAgICAgID8gXy51bmlxQnkodGhpcy5pbm5lclZhbHVlcywgJ2lkJykubWFwKGl2ID0+IGl2LmlkKVxyXG4gICAgICA6IG51bGw7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcclxuICAgICAgdGhpcy51cGRhdGVJbm5lclZhbHVlcyh0aGlzLnZhbHVlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSBudWxsO1xyXG4gICAgICB0aGlzLmlubmVyVmFsdWVzID0gW107XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZUlubmVyVmFsdWVzKHZhbHVlKSB7XHJcbiAgICBjb25zdCB2YWx1ZXMgPSBBcnJheS5pc0FycmF5KHZhbHVlKSA/IHZhbHVlIDogW3ZhbHVlXTtcclxuICAgIHRoaXMuaW5uZXJWYWx1ZXMgPSB0aGlzLmlubmVyVmFsdWVzLmZpbHRlcihpViA9PiB7XHJcbiAgICAgIC8vIHJlbW92ZSBpbm5lclZhbHVlcywgd2hlcmUgdGhlIGlkIHdhcyByZW1vdmVkIGZyb20gdmFsdWVcclxuICAgICAgcmV0dXJuIHZhbHVlcy5maW5kKHYgPT4gdiA9PT0gaVYuaWQpO1xyXG4gICAgfSk7XHJcbiAgICBjb25zdCBuZXdWYWx1ZXMgPSB2YWx1ZXMuZmlsdGVyKHYgPT4ge1xyXG4gICAgICByZXR1cm4gIXRoaXMuaW5uZXJWYWx1ZXMuZmluZChpViA9PiBpVi5pZCA9PT0gdik7XHJcbiAgICB9KTtcclxuICAgIGlmIChuZXdWYWx1ZXMubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMucmVmZXJlbmNlU2VydmljZS5mZXRjaElEUmVmZXJlbmNlTWV0YURhdGEobmV3VmFsdWVzKS5zdWJzY3JpYmUobmV3SW5uZXJWYWx1ZXMgPT4ge1xyXG4gICAgICAgIHRoaXMuaW5uZXJWYWx1ZXMgPSB0aGlzLmlubmVyVmFsdWVzLmNvbmNhdChuZXdJbm5lclZhbHVlcyk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJvcGFnYXRlQ2hhbmdlID0gKHZhbHVlOiBhbnkpID0+IHsgfTtcclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQgeyB9XHJcblxyXG4gIHB1YmxpYyB2YWxpZGF0ZShjOiBGb3JtQ29udHJvbCkge1xyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICAvLyBoYW5kbGVyIGludm9rZWQgd2hlbiBhbiBlbnRyeSB3YXMgc2VsZWN0ZWQgdXNpbmcgdGhlIGF1dG9jb21wbGV0ZSBpbnB1dFxyXG4gIG9uQXV0b0NvbXBsZXRlU2VsZWN0KGV2dD8pIHtcclxuICAgIGlmICghQXJyYXkuaXNBcnJheSh0aGlzLmlubmVyVmFsdWVzKSkge1xyXG4gICAgICB0aGlzLmlubmVyVmFsdWVzID0gW3RoaXMuaW5uZXJWYWx1ZXNdO1xyXG4gICAgfVxyXG4gICAgdGhpcy5pbm5lclZhbHVlcyA9IF8udW5pcUJ5KHRoaXMuaW5uZXJWYWx1ZXMsICdpZCcpO1xyXG4gICAgaWYgKHRoaXMubXVsdGlzZWxlY3QpIHtcclxuICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuaW5uZXJWYWx1ZXMubWFwKGl2ID0+IGl2LmlkKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSB0aGlzLmlubmVyVmFsdWVzWzBdLmlkO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBhdXRvY29tcGxldGVGbihldnQpIHtcclxuICAgIGxldCBxOiBhbnkgPSB7XHJcbiAgICAgIGZpZWxkczogWyd0aXRsZScsICdkZXNjcmlwdGlvbicsICd0eXBlJ10sXHJcbiAgICAgIHR5cGVzOiBbdGhpcy5yZWZlcmVuY2VUeXBlLm5hbWVdLFxyXG4gICAgICB0ZXJtOiBldnQucXVlcnksXHJcbiAgICAgIGhpZ2hsaWdodGluZzogdHJ1ZSxcclxuICAgICAgZmlsdGVyczogdGhpcy5xdWVyeUZpbHRlcnMsXHJcbiAgICAgIG9wdGlvbnM6IHt3aXRoQ29udGV4dDogdHJ1ZX1cclxuICAgIH07XHJcblxyXG4gICAgaWYgKHRoaXMub2JqZWN0VHlwZXNGaWx0ZXIpIHtcclxuICAgICAgcS50eXBlcyA9IHRoaXMub2JqZWN0VHlwZXNGaWx0ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuY29udGV4dElkKSB7XHJcbiAgICAgIGlmIChxLmZpbHRlcnMpIHtcclxuICAgICAgICBxLmZpbHRlcnMuY29udGV4dGZvbGRlcmlkID0ge3YxOiB0aGlzLmNvbnRleHRJZCwgbzogJ2VxJ307XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcS5maWx0ZXJzID0ge2NvbnRleHRmb2xkZXJpZDoge3YxOiB0aGlzLmNvbnRleHRJZCwgbzogJ2VxJ319O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zZWFyY2hTZXJ2aWNlXHJcbiAgICAgIC5leGVjdXRlUXVlcnkocSlcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZGVib3VuY2VUaW1lKDUwMCksXHJcbiAgICAgICAgbWFwKGl0ZW0gPT4gaXRlbSA/IHRoaXMuc2VhcmNoU2VydmljZS5jcmVhdGVSZXN1bHRGcm9tUmVzcG9uc2UoaXRlbSkgOiBbXSlcclxuICAgICAgKS5zdWJzY3JpYmUoKHJlc3VsdDogU2VhcmNoUmVzdWx0KSA9PiB7XHJcbiAgICAgICAgdGhpcy5hdXRvY29tcGxldGVSZXMgPSByZXN1bHQuaGl0cztcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbkF1dG9Db21wbGV0ZUJsdXIoKSB7XHJcbiAgICB0aGlzLmNsZWFySW5uZXJJbnB1dCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjbGVhcklubmVySW5wdXQoKSB7XHJcbiAgICBpZiAodGhpcy5hdXRvQ29tcGxldGVJbnB1dC5tdWx0aUlucHV0RUwpIHtcclxuICAgICAgdGhpcy5hdXRvQ29tcGxldGVJbnB1dC5tdWx0aUlucHV0RUwubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5hdXRvQ29tcGxldGVJbnB1dC5pbnB1dEVMLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYgKHRoaXMuc2l0dWF0aW9uID09PSAnU0VBUkNIJykge1xyXG4gICAgICB0aGlzLm11bHRpc2VsZWN0ID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
|
232
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQtcmVmZXJlbmNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tZnJhbWV3b3JrL2Zvcm0tZWxlbWVudHMvaWQtcmVmZXJlbmNlL2lkLXJlZmVyZW5jZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDM0YsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM5RSxPQUFPLEVBQXVCLGlCQUFpQixFQUEwQixhQUFhLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5RyxPQUFPLEVBRUwsZ0JBQWdCLEVBR0YsYUFBYSxFQUMzQixhQUFhLEVBQ2QsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFDLFlBQVksRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQTRCakQsTUFBTSxPQUFPLG9CQUFvQjtJQWtFL0IsWUFBb0IsZ0JBQWtDLEVBQVUsTUFBcUIsRUFDM0UsZ0JBQWtDLEVBQ2xDLGFBQTRCO1FBRmxCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQzNFLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFsRXRDLGlCQUFZLEdBQXVCLEVBQUUsQ0FBQyxDQUFDLHVCQUF1QjtRQUs5RCxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQTJKdEIsb0JBQWUsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBN0ZwQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMs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QVksQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztTQUM5RDthQUFNO1lBQ0wsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztTQUN6RDtJQUNILENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLFFBQVEsRUFBRTtZQUMvQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztTQUN6QjtJQUNILENBQUM7OztZQTdQRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IsNndHQUE0QztnQkFFNUMsU0FBUyxFQUFFO29CQUNUO3dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUM7d0JBQ25ELEtBQUssRUFBRSxJQUFJO3FCQUNaO29CQUNEO3dCQUNFLE9BQU8sRUFBRSxhQUFhO3dCQUN0QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG9CQUFvQixDQUFDO3dCQUNuRCxLQUFLLEVBQUUsSUFBSTtxQkFDWjtpQkFDRjs7YUFDRjs7O1lBbENDLGdCQUFnQjtZQUloQixhQUFhO1lBVFAsZ0JBQWdCO1lBUVIsYUFBYTs7O3VCQTJDMUIsS0FBSzswQkFDTCxLQUFLO3dCQUNMLEtBQUs7d0JBQ0wsS0FBSzsyQkFDTCxLQUFLO2dDQUNMLFNBQVMsU0FBQyxjQUFjOzJCQWN4QixLQUFLO3dCQVNMLEtBQUs7MkJBT0wsS0FBSztnQ0FJTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtSZWZlcmVuY2VTZXJ2aWNlfSBmcm9tICcuLy4uLy4uLy4uL2VvLWZyYW1ld29yay1jb3JlL3JlZmVyZW5jZXMvcmVmZXJlbmNlLnNlcnZpY2UnO1xyXG5pbXBvcnQge0NvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IsIFZhbGlkYXRvciwgRm9ybUNvbnRyb2wsIE5HX1ZBTElEQVRPUlN9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtcclxuICBDbGlwYm9hcmQsXHJcbiAgQ2xpcGJvYXJkU2VydmljZSxcclxuICBEbXNPYmplY3QsXHJcbiAgT2JqZWN0VHlwZSxcclxuICBTZWFyY2hSZXN1bHQsIFNlYXJjaFNlcnZpY2UsXHJcbiAgU3lzdGVtU2VydmljZVxyXG59IGZyb20gJ0Blby1zZGsvY29yZSc7XHJcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHtkZWJvdW5jZVRpbWUsIG1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQge0F1dG9Db21wbGV0ZX0gZnJvbSAncHJpbWVuZy9wcmltZW5nJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVRvUmVuZGVySXRlbSB7XHJcbiAgaWQ6IHN0cmluZztcclxuICB0aXRsZT86IHN0cmluZztcclxuICB0eXBlTmFtZTogc3RyaW5nO1xyXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xyXG4gIHN0YXRlPzogc3RyaW5nO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VvLWlkLXJlZmVyZW5jZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2lkLXJlZmVyZW5jZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaWQtcmVmZXJlbmNlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJZFJlZmVyZW5jZUNvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJZFJlZmVyZW5jZUNvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlXHJcbiAgICB9XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSWRSZWZlcmVuY2VDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0LCBWYWxpZGF0b3Ige1xyXG4gIHByaXZhdGUgdmFsdWU7IC8vIG1vZGVsIHZhbHVlXHJcbiAgX2lubmVyVmFsdWVzOiBEYXRhVG9SZW5kZXJJdGVtW10gPSBbXTsgLy8gaW5uZXIgbmctbW9kZWwgdmFsdWVcclxuICBjbGlwYm9hcmQ6IENsaXBib2FyZDtcclxuICByZWZlcmVuY2VUeXBlOiBPYmplY3RUeXBlO1xyXG4gIHN1YlR5cGVzOiBPYmplY3RUeXBlW107XHJcbiAgdG9vbHRpcFR5cGVIaW50OiBzdHJpbmc7XHJcbiAgdmlzaWJsZURpYWxvZyA9IGZhbHNlO1xyXG5cclxuICBhdXRvY29tcGxldGVSZXM7XHJcblxyXG4gIEBJbnB1dCgpIHJlYWRvbmx5OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIG11bHRpc2VsZWN0OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHNpdHVhdGlvbjogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGNvbnRleHRJZDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGV4Y2VwdGlvbklEczogc3RyaW5nW107XHJcbiAgQFZpZXdDaGlsZCgnYXV0b2NvbXBsZXRlJykgYXV0b0NvbXBsZXRlSW5wdXQ6IEF1dG9Db21wbGV0ZTtcclxuXHJcbiAgc2V0IGlubmVyVmFsdWVzKGRhdGE6IERhdGFUb1JlbmRlckl0ZW1bXSkge1xyXG4gICAgaWYgKGRhdGEpIHtcclxuICAgICAgdGhpcy5faW5uZXJWYWx1ZXMgPSBkYXRhO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5faW5uZXJWYWx1ZXMgPSBbXTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCBpbm5lclZhbHVlcygpIHtcclxuICAgIHJldHVybiB0aGlzLl9pbm5lclZhbHVlcztcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGRhdGFUb1JlbmRlcihkYXRhOiBEYXRhVG9SZW5kZXJJdGVtW10pIHtcclxuICAgIGlmIChkYXRhKSB7XHJcbiAgICAgIHRoaXMuaW5uZXJWYWx1ZXMgPSBkYXRhO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pbm5lclZhbHVlcyA9IFtdO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgcmVmZXJlbmNlKHJlZjogYW55KSB7XHJcbiAgICB0aGlzLnJlZmVyZW5jZVR5cGUgPSByZWYgPyB0aGlzLnN5c3RlbS5nZXRPYmplY3RUeXBlKHJlZi50eXBlKSA6IG51bGw7XHJcbiAgICB0aGlzLnN1YlR5cGVzID0gdGhpcy5nZXRTdWJUeXBlcyh0aGlzLnJlZmVyZW5jZVR5cGU/Lm5hbWUsIHRoaXMuc3lzdGVtLmdldE9iamVjdFR5cGVzKCkpO1xyXG4gICAgdGhpcy50b29sdGlwVHlwZUhpbnQgPSB0aGlzLmNyZWF0ZVRvb2x0aXBUeXBlSGludCh0aGlzLnJlZmVyZW5jZVR5cGUsIHRoaXMuc3ViVHlwZXMpO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgcXVlcnlGaWx0ZXJzOiB7XHJcbiAgICBbZmllbGRRbmFtZTogc3RyaW5nXToge286IHN0cmluZywgdjE6IGFueSwgdjI6IGFueX1cclxuICB9O1xyXG5cclxuICBASW5wdXQoKSBvYmplY3RUeXBlc0ZpbHRlcjogc3RyaW5nW107XHJcblxyXG4gIHByaXZhdGUgZ2V0U3ViVHlwZXModHlwZU5hbWUsIHR5cGVzKSB7XHJcbiAgICBsZXQgc3ViVHlwZXMgPSBbXTtcclxuICAgIHR5cGVzLmZvckVhY2gob2JqZWN0VHlwZSA9PiB7XHJcbiAgICAgIGlmICghIW9iamVjdFR5cGUuc3VwZXJ0eXBlcy5maW5kKHNUID0+IHNUID09PSB0eXBlTmFtZSkpIHtcclxuICAgICAgICBzdWJUeXBlcy5wdXNoKG9iamVjdFR5cGUpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBzdWJUeXBlcztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlVG9vbHRpcFR5cGVIaW50KHJlZmVyZW5jZVR5cGUsIHN1YlR5cGVzID0gW10pIHtcclxuICAgIHJldHVybiByZWZlcmVuY2VUeXBlID8gYCgke1tyZWZlcmVuY2VUeXBlLmxhYmVsLCAuLi5zdWJUeXBlcy5tYXAodHlwZXMgPT4gdHlwZXMubGFiZWwpXS5qb2luKCcsICcpfSlgIDogJyc7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNsaXBib2FyZFNlcnZpY2U6IENsaXBib2FyZFNlcnZpY2UsIHByaXZhdGUgc3lzdGVtOiBTeXN0ZW1TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWZlcmVuY2VTZXJ2aWNlOiBSZWZlcmVuY2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBzZWFyY2hTZXJ2aWNlOiBTZWFyY2hTZXJ2aWNlKSB7XHJcbiAgICB0aGlzLmNsaXBib2FyZFNlcnZpY2UuY2xpcGJvYXJkJC5zdWJzY3JpYmUoY2xpcGJvYXJkID0+ICh0aGlzLmNsaXBib2FyZCA9IGNsaXBib2FyZCkpO1xyXG4gICAgdGhpcy5jbGlwYm9hcmQgPSB0aGlzLmNsaXBib2FyZFNlcnZpY2UuZ2V0KCk7XHJcbiAgfVxyXG5cclxuICBzaG93RGlhbG9nKCkge1xyXG4gICAgdGhpcy52aXNpYmxlRGlhbG9nID0gIXRoaXMudmlzaWJsZURpYWxvZztcclxuICB9XHJcblxyXG4gIGdldCBzZWxlY3Rpb25EaXNhYmxlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLm11bHRpc2VsZWN0ID8gZmFsc2UgOiB0aGlzLmlubmVyVmFsdWVzLmxlbmd0aDtcclxuICB9XHJcblxyXG4gIGdldCBpc0Rpc2FibGVkKCkge1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgIXRoaXMucmVmZXJlbmNlVHlwZSB8fFxyXG4gICAgICB0aGlzLnJlYWRvbmx5IHx8XHJcbiAgICAgIHRoaXMuY2xpcGJvYXJkLmFjdGlvbiA9PT0gMSB8fFxyXG4gICAgICAhdGhpcy5jbGlwYm9hcmQuZWxlbWVudHMubGVuZ3RoIHx8XHJcbiAgICAgIHRoaXMuY29udGFpbnNJbmNvcnJlY3RUeXBlcyhcclxuICAgICAgICB0aGlzLmNsaXBib2FyZC5lbGVtZW50cyxcclxuICAgICAgICB0aGlzLnJlZmVyZW5jZVR5cGUsXHJcbiAgICAgICAgdGhpcy5zdWJUeXBlc1xyXG4gICAgICApIHx8XHJcbiAgICAgIHRoaXMuY29udGFpbnNJbmNvcnJlY3RDb250ZXh0KHRoaXMuY2xpcGJvYXJkLmVsZW1lbnRzLCB0aGlzLmNvbnRleHRJZClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNvbnRhaW5zSW5jb3JyZWN0VHlwZXMoY2xpcGJvYXJkRWxlbWVudHMsIHJlZlR5cGUsIHN1YlR5cGVzKSB7XHJcbiAgICByZXR1cm4gISFjbGlwYm9hcmRFbGVtZW50cy5maW5kKGNiRWwgPT4gIShjYkVsLnR5cGVOYW1lID09PSByZWZUeXBlLm5hbWUgfHwgc3ViVHlwZXMuZmluZChzVCA9PiBzVC5uYW1lID09PSBjYkVsLnR5cGVOYW1lKSkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb250YWluc0luY29ycmVjdENvbnRleHQoY2xpcGJvYXJkRWxlbWVudHMsIGNvbnRleHRJZCkge1xyXG4gICAgcmV0dXJuICEhY2xpcGJvYXJkRWxlbWVudHMuZmluZChjYkVsID0+IHtcclxuICAgICAgaWYgKCFjb250ZXh0SWQpIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuICFjYkVsLmNvbnRleHRGb2xkZXIgfHwgY2JFbC5jb250ZXh0Rm9sZGVyLmlkICE9PSBjb250ZXh0SWQ7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHBhc3RlKGNvbnRlbnQ/OiBEbXNPYmplY3RbXSkge1xyXG4gICAgdGhpcy5saW5rRG1zT2JqZWN0KGNvbnRlbnQpO1xyXG4gICAgdGhpcy5zaG93RGlhbG9nKCk7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgbGlua0Rtc09iamVjdChjb250ZW50PzogRG1zT2JqZWN0W10pIHtcclxuICAgIChjb250ZW50IHx8IHRoaXMuY2xpcGJvYXJkLmVsZW1lbnRzKS5mb3JFYWNoKChkbXNPYmplY3Q6IERtc09iamVjdCkgPT4ge1xyXG4gICAgICBjb25zdCB7aWQsIHRpdGxlLCBkZXNjcmlwdGlvbiwgdHlwZU5hbWV9ID0gZG1zT2JqZWN0O1xyXG4gICAgICB0aGlzLmlubmVyVmFsdWVzLnB1c2goe2lkLCB0aXRsZSwgZGVzY3JpcHRpb24sIHR5cGVOYW1lfSk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuaW5uZXJWYWx1ZXMgPSBfLnVuaXFCeSh0aGlzLmlubmVyVmFsdWVzLCAnaWQnKTtcclxuICAgIGlmICh0aGlzLm11bHRpc2VsZWN0KSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSB0aGlzLmlubmVyVmFsdWVzLm1hcChpdiA9PiBpdi5pZCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnZhbHVlID0gdGhpcy5pbm5lclZhbHVlc1swXS5pZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlbW92ZUl0ZW0oaXRlbSkge1xyXG4gICAgdGhpcy5pbm5lclZhbHVlcyA9IHRoaXMuaW5uZXJWYWx1ZXMuZmlsdGVyKGl2ID0+IGl2LmlkICE9PSBpdGVtLmlkKTtcclxuICAgIHRoaXMudmFsdWUgPSB0aGlzLm11bHRpc2VsZWN0XHJcbiAgICAgID8gXy51bmlxQnkodGhpcy5pbm5lclZhbHVlcywgJ2lkJykubWFwKGl2ID0+IGl2LmlkKVxyXG4gICAgICA6IG51bGw7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcclxuICAgICAgdGhpcy51cGRhdGVJbm5lclZhbHVlcyh0aGlzLnZhbHVlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSBudWxsO1xyXG4gICAgICB0aGlzLmlubmVyVmFsdWVzID0gW107XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZUlubmVyVmFsdWVzKHZhbHVlKSB7XHJcbiAgICBjb25zdCB2YWx1ZXMgPSBBcnJheS5pc0FycmF5KHZhbHVlKSA/IHZhbHVlIDogW3ZhbHVlXTtcclxuICAgIHRoaXMuaW5uZXJWYWx1ZXMgPSB0aGlzLmlubmVyVmFsdWVzLmZpbHRlcihpViA9PiB7XHJcbiAgICAgIC8vIHJlbW92ZSBpbm5lclZhbHVlcywgd2hlcmUgdGhlIGlkIHdhcyByZW1vdmVkIGZyb20gdmFsdWVcclxuICAgICAgcmV0dXJuIHZhbHVlcy5maW5kKHYgPT4gdiA9PT0gaVYuaWQpO1xyXG4gICAgfSk7XHJcbiAgICBjb25zdCBuZXdWYWx1ZXMgPSB2YWx1ZXMuZmlsdGVyKHYgPT4ge1xyXG4gICAgICByZXR1cm4gIXRoaXMuaW5uZXJWYWx1ZXMuZmluZChpViA9PiBpVi5pZCA9PT0gdik7XHJcbiAgICB9KTtcclxuICAgIGlmIChuZXdWYWx1ZXMubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMucmVmZXJlbmNlU2VydmljZS5mZXRjaElEUmVmZXJlbmNlTWV0YURhdGEobmV3VmFsdWVzKS5zdWJzY3JpYmUobmV3SW5uZXJWYWx1ZXMgPT4ge1xyXG4gICAgICAgIHRoaXMuaW5uZXJWYWx1ZXMgPSB0aGlzLmlubmVyVmFsdWVzLmNvbmNhdChuZXdJbm5lclZhbHVlcyk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJvcGFnYXRlQ2hhbmdlID0gKHZhbHVlOiBhbnkpID0+IHsgfTtcclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQgeyB9XHJcblxyXG4gIHB1YmxpYyB2YWxpZGF0ZShjOiBGb3JtQ29udHJvbCkge1xyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICAvLyBoYW5kbGVyIGludm9rZWQgd2hlbiBhbiBlbnRyeSB3YXMgc2VsZWN0ZWQgdXNpbmcgdGhlIGF1dG9jb21wbGV0ZSBpbnB1dFxyXG4gIG9uQXV0b0NvbXBsZXRlU2VsZWN0KGV2dD8pIHtcclxuICAgIGlmICghQXJyYXkuaXNBcnJheSh0aGlzLmlubmVyVmFsdWVzKSkge1xyXG4gICAgICB0aGlzLmlubmVyVmFsdWVzID0gW3RoaXMuaW5uZXJWYWx1ZXNdO1xyXG4gICAgfVxyXG4gICAgdGhpcy5pbm5lclZhbHVlcyA9IF8udW5pcUJ5KHRoaXMuaW5uZXJWYWx1ZXMsICdpZCcpO1xyXG4gICAgaWYgKHRoaXMubXVsdGlzZWxlY3QpIHtcclxuICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuaW5uZXJWYWx1ZXMubWFwKGl2ID0+IGl2LmlkKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSB0aGlzLmlubmVyVmFsdWVzWzBdLmlkO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBhdXRvY29tcGxldGVGbihldnQpIHtcclxuICAgIGxldCBxOiBhbnkgPSB7XHJcbiAgICAgIGZpZWxkczogWyd0aXRsZScsICdkZXNjcmlwdGlvbicsICd0eXBlJ10sXHJcbiAgICAgIHR5cGVzOiBbdGhpcy5yZWZlcmVuY2VUeXBlLm5hbWVdLFxyXG4gICAgICB0ZXJtOiBldnQucXVlcnksXHJcbiAgICAgIGhpZ2hsaWdodGluZzogdHJ1ZSxcclxuICAgICAgZmlsdGVyczogdGhpcy5xdWVyeUZpbHRlcnMsXHJcbiAgICAgIG9wdGlvbnM6IHt3aXRoQ29udGV4dDogdHJ1ZX1cclxuICAgIH07XHJcblxyXG4gICAgaWYgKHRoaXMub2JqZWN0VHlwZXNGaWx0ZXIpIHtcclxuICAgICAgcS50eXBlcyA9IHRoaXMub2JqZWN0VHlwZXNGaWx0ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuY29udGV4dElkKSB7XHJcbiAgICAgIGlmIChxLmZpbHRlcnMpIHtcclxuICAgICAgICBxLmZpbHRlcnMuY29udGV4dGZvbGRlcmlkID0ge3YxOiB0aGlzLmNvbnRleHRJZCwgbzogJ2VxJ307XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcS5maWx0ZXJzID0ge2NvbnRleHRmb2xkZXJpZDoge3YxOiB0aGlzLmNvbnRleHRJZCwgbzogJ2VxJ319O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zZWFyY2hTZXJ2aWNlXHJcbiAgICAgIC5leGVjdXRlUXVlcnkocSlcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZGVib3VuY2VUaW1lKDUwMCksXHJcbiAgICAgICAgbWFwKGl0ZW0gPT4gaXRlbSA/IHRoaXMuc2VhcmNoU2VydmljZS5jcmVhdGVSZXN1bHRGcm9tUmVzcG9uc2UoaXRlbSkgOiBbXSlcclxuICAgICAgKS5zdWJzY3JpYmUoKHJlc3VsdDogU2VhcmNoUmVzdWx0KSA9PiB7XHJcbiAgICAgICAgdGhpcy5hdXRvY29tcGxldGVSZXMgPSByZXN1bHQuaGl0cztcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbkF1dG9Db21wbGV0ZUJsdXIoKSB7XHJcbiAgICB0aGlzLmNsZWFySW5uZXJJbnB1dCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjbGVhcklubmVySW5wdXQoKSB7XHJcbiAgICBpZiAodGhpcy5hdXRvQ29tcGxldGVJbnB1dC5tdWx0aUlucHV0RUwpIHtcclxuICAgICAgdGhpcy5hdXRvQ29tcGxldGVJbnB1dC5tdWx0aUlucHV0RUwubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5hdXRvQ29tcGxldGVJbnB1dC5pbnB1dEVMLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYgKHRoaXMuc2l0dWF0aW9uID09PSAnU0VBUkNIJykge1xyXG4gICAgICB0aGlzLm11bHRpc2VsZWN0ID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
|
@@ -6,9 +6,6 @@ export class ReferenceFinderEntryComponent {
|
|
|
6
6
|
get link() {
|
|
7
7
|
return this.list && this.list.link ? this.list.link.replace(new RegExp('^/'), '') : '';
|
|
8
8
|
}
|
|
9
|
-
linkClick() {
|
|
10
|
-
return this.link && window.open(this.link, '_blank');
|
|
11
|
-
}
|
|
12
9
|
select(item, add = false, selectedAble = true) {
|
|
13
10
|
if (selectedAble) {
|
|
14
11
|
this.selectReference.emit({ item, add });
|
|
@@ -18,7 +15,7 @@ export class ReferenceFinderEntryComponent {
|
|
|
18
15
|
ReferenceFinderEntryComponent.decorators = [
|
|
19
16
|
{ type: Component, args: [{
|
|
20
17
|
selector: 'eo-reference-finder-entry',
|
|
21
|
-
template: "<div tabindex=\"-1\" class=\"resultsList\" *ngIf=\"list\" [class.disabled]=\"list?.disabled\" [class.selected]=\"list?.selected\" [class.marked]=\"marked\">\r\n <a class=\"link\"
|
|
18
|
+
template: "<div tabindex=\"-1\" class=\"resultsList\" *ngIf=\"list\" [class.disabled]=\"list?.disabled\" [class.selected]=\"list?.selected\" [class.marked]=\"marked\">\r\n <a class=\"link\" [href]=\"link\" target=\"_blank\">\r\n <eo-icon class=\"link\" [iconSrc]=\"'ic_link.svg'\" [iconTitle]=\"'eo.object.details' | translate\"></eo-icon>\r\n </a>\r\n <div class=\"content\" [class.singleselect]=\"!multiselect\">\r\n <div class=\"select\" *ngIf=\"multiselect\" (click)=\"select(list, false, !list?.disabled)\" [class.selected]=\"list?.selected\" [class.disabled]=\"list?.disabled\">\r\n <svg fill=\"#ffffff\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"/>\r\n </svg>\r\n </div>\r\n \r\n <div class=\"details\" [class.width-clipboard]=\"list?.clipboard\"\r\n (click)=\"select(list, false, !list?.disabled && !list?.selected)\" (dblclick)=\"select(null, true, !list?.disabled)\">\r\n \r\n <eo-icon class=\"icon\" [objectType]=\"list?.objectType\" [iconTitle]=\"list?.objectType?.label\"></eo-icon>\r\n <div class=\"title\">\r\n {{list?.title}}\r\n </div>\r\n <span class=\"extra\" *ngIf=\"list?.contextFolder\">{{'eo.references.search.contextfolder' | translate}}: {{list?.contextFolder?.title}} - {{list?.contextFolder?.description}}</span>\r\n <div class=\"description\">\r\n {{list?.description}}\r\n </div>\r\n </div>\r\n </div>\r\n </div>",
|
|
22
19
|
styles: [".ui-accordion .ui-accordion-content :host{padding:1rem 0}.resultsList{display:grid;grid-template-areas:\"content link\";grid-template-columns:2fr auto;grid-template-rows:1fr}.resultsList.disabled{color:hsla(0,0%,89.8%,.7)!important}.resultsList.selected{background-color:var(--main-background-light)}.resultsList.marked,.resultsList:hover:not(.disabled){background-color:var(--main-background-light);border-radius:2px;cursor:pointer}.resultsList.marked .description,.resultsList.marked .icon,.resultsList.marked .title,.resultsList:hover:not(.disabled) .description,.resultsList:hover:not(.disabled) .icon,.resultsList:hover:not(.disabled) .title{color:var(--color-nobel)}.link{-ms-grid-column:2;-ms-grid-row:1;align-self:center;grid-area:link;margin-right:5px}.content{-ms-grid-column:1;-ms-grid-row:1;display:grid;grid-area:content;grid-gap:5px;grid-template-areas:\"select details\";grid-template-columns:auto 2fr;grid-template-rows:1fr}.content.singleselect{grid-template-areas:\"details\";grid-template-columns:1fr auto;grid-template-rows:1fr}.select{-ms-grid-column:1;-ms-grid-row:1;border:1px solid var(--text-color-hint);border-radius:2px;cursor:pointer;grid-area:select;height:20px;margin-left:5px;margin-top:7px;width:20px}.select.disabled:hover{cursor:default}.select:hover:not(.disabled) svg{fill:var(--text-color-body);opacity:.3}.select.selected svg{background:var(--color-primary-3);border-color:var(--color-primary-3)}.select.selected.disabled svg{background:var(--main-background);border-color:var(--main-background)}.details{-ms-grid-column:3;-ms-grid-row:1;display:grid;grid-area:details;grid-gap:0 5px;grid-template-areas:\"icon title\" \". description\" \". extra\";grid-template-columns:.1fr 2fr;grid-template-rows:1fr auto auto;margin:5px 0}.content.singleselect>.details{-ms-grid-column:1;-ms-grid-row:1}.clipboard{grid-area:clipboard;margin-right:5px;width:20px}.clipboard,.extra{align-self:center;color:var(--color-nobel)}.extra{-ms-grid-column:3;-ms-grid-row:5;font-style:italic;grid-area:extra}.clipboard .extra{width:20px}.icon{-ms-grid-column:1;-ms-grid-row:1;color:var(--color-nobel);grid-area:icon}.disabled .icon{color:var(--main-background)}.title{-ms-grid-column:3;-ms-grid-row:1;align-items:center;color:var(--color-nobel);display:flex;font-size:var(--font-subhead);font-weight:700;grid-area:title;justify-items:center;max-width:460px;white-space:nowrap}.title div:first-child{margin-right:5px}.title .context{font-size:var(--font-caption);font-weight:400;overflow:hidden;text-overflow:ellipsis}.description{-ms-grid-column:3;-ms-grid-row:3;color:var(--color-nobel);grid-area:description}"]
|
|
23
20
|
},] }
|
|
24
21
|
];
|
|
@@ -29,4 +26,4 @@ ReferenceFinderEntryComponent.propDecorators = {
|
|
|
29
26
|
marked: [{ type: Input }],
|
|
30
27
|
selectReference: [{ type: Output }]
|
|
31
28
|
};
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXJlbmNlLWZpbmRlci1lbnRyeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL2lkLXJlZmVyZW5jZS9yZWZlcmVuY2UtZmluZGVyLWVudHJ5L3JlZmVyZW5jZS1maW5kZXItZW50cnkuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFRckUsTUFBTSxPQUFPLDZCQUE2QjtJQVV4QztRQU5VLG9CQUFlLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7SUFNeEQsQ0FBQztJQUpoQixJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3pGLENBQUM7SUFJRCxNQUFNLENBQUMsSUFBbUIsRUFBRSxHQUFHLEdBQUcsS0FBSyxFQUFFLFlBQVksR0FBRyxJQUFJO1FBQzFELElBQUksWUFBWSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7U0FDMUM7SUFDSCxDQUFDOzs7WUFyQkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSwyQkFBMkI7Z0JBQ3JDLDRoREFBc0Q7O2FBRXZEOzs7O21CQUVFLEtBQUs7MEJBQ0wsS0FBSztxQkFDTCxLQUFLOzhCQUNMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtSZWZlcmVuY2VJdGVtfSBmcm9tICcuLi9pbnRlcmZhY2UvcmVmZXJlbmNlLWZpbmRlci5pbnRlcmZhY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlby1yZWZlcmVuY2UtZmluZGVyLWVudHJ5JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcmVmZXJlbmNlLWZpbmRlci1lbnRyeS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcmVmZXJlbmNlLWZpbmRlci1lbnRyeS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZWZlcmVuY2VGaW5kZXJFbnRyeUNvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgbGlzdDogUmVmZXJlbmNlSXRlbTtcclxuICBASW5wdXQoKSBtdWx0aXNlbGVjdDogYm9vbGVhbjtcclxuICBASW5wdXQoKSBtYXJrZWQ6IGJvb2xlYW47XHJcbiAgQE91dHB1dCgpIHNlbGVjdFJlZmVyZW5jZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgZ2V0IGxpbmsoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5saXN0ICYmIHRoaXMubGlzdC5saW5rID8gdGhpcy5saXN0LmxpbmsucmVwbGFjZShuZXcgUmVnRXhwKCdeLycpLCAnJykgOiAnJztcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgc2VsZWN0KGl0ZW06IFJlZmVyZW5jZUl0ZW0sIGFkZCA9IGZhbHNlLCBzZWxlY3RlZEFibGUgPSB0cnVlKSB7XHJcbiAgICBpZiAoc2VsZWN0ZWRBYmxlKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0UmVmZXJlbmNlLmVtaXQoeyBpdGVtLCBhZGQgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
package/esm2015/app/eo-framework/form-elements/id-reference/service/reference-finder.service.js
CHANGED
|
@@ -45,7 +45,7 @@ export class ReferenceFinderService {
|
|
|
45
45
|
}
|
|
46
46
|
getReferenceUrl(id) {
|
|
47
47
|
if (id) {
|
|
48
|
-
return this.router.createUrlTree(['object', id]).toString();
|
|
48
|
+
return this.router.createUrlTree(['object', id]).toString().replace(/\(modal:\w+\)$/g, '');
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
selectOnMultisSelect(list, item) {
|
|
@@ -102,4 +102,4 @@ ReferenceFinderService.ctorParameters = () => [
|
|
|
102
102
|
{ type: SystemService },
|
|
103
103
|
{ type: Router }
|
|
104
104
|
];
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXJlbmNlLWZpbmRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvZm9ybS1lbGVtZW50cy9pZC1yZWZlcmVuY2Uvc2VydmljZS9yZWZlcmVuY2UtZmluZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDdkMsT0FBTyxFQUFlLGFBQWEsRUFBRSxhQUFhLEVBQVksTUFBTSxjQUFjLENBQUM7QUFDbkYsT0FBTyxFQUFDLGVBQWUsRUFBYyxFQUFFLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7O0FBU25DLE1BQU0sT0FBTyxzQkFBc0I7SUFJakMsWUFDVSxhQUE0QixFQUM1QixhQUE0QixFQUM1QixNQUFjO1FBRmQsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQU5oQixxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUN4RCxzQkFBaUIsR0FBd0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBTWxGLENBQUM7SUFFSSxnQkFBZ0IsQ0FBQyxVQUFrQixFQUFFLEtBQWUsRUFBRSxTQUFrQixFQUFFLFlBQWtCO1FBQ2xHLElBQUksVUFBVSxFQUFFO1lBQ2QsSUFBSSxDQUFDLEdBQVE7Z0JBQ1gsTUFBTSxFQUFFLENBQUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLENBQUM7Z0JBQ3hDLEtBQUssRUFBRSxLQUFLO2dCQUNaLElBQUksRUFBRSxVQUFVO2dCQUNoQixZQUFZLEVBQUUsSUFBSTtnQkFDbEIsT0FBTyxFQUFFLFlBQVk7Z0JBQ3JCLE9BQU8sRUFBRSxFQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUM7YUFDN0IsQ0FBQztZQUVGLElBQUksU0FBUyxFQUFFO2dCQUNiLElBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBQztvQkFDWCxDQUFDLENBQUMsT0FBTyxDQUFDLGVBQWUsR0FBRyxFQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBQyxDQUFDO2lCQUN0RDtxQkFBTTtvQkFDTCxDQUFDLENBQUMsT0FBTyxHQUFHLEVBQUMsZUFBZSxFQUFFLEVBQUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFDLEVBQUMsQ0FBQztpQkFDekQ7YUFDRjtZQUVELE9BQU8sSUFBSSxDQUFDLGFBQWE7aUJBQ3RCLFlBQVksQ0FBQyxDQUFDLENBQUM7aUJBQ2YsSUFBSSxDQUNILEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQzNFLENBQUM7U0FDTDtRQUNELE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxJQUF1QixFQUFFLGdCQUFnQixFQUFFLEtBQUs7UUFDdkUsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2YsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQ25CLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQ3hELENBQUM7U0FDSDtJQUNILENBQUM7SUFFTyxlQUFlLENBQUMsRUFBVTtRQUNoQyxJQUFJLEVBQUUsRUFBRTtZQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUM3RDtJQUNILENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxJQUFxQixFQUFFLElBQW1CO1FBQzdELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUM3QyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxJQUFxQixFQUFFLElBQW1CO1FBQzdELElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3BILE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELG9CQUFvQixDQUFDLE1BQXVCLEVBQUUsU0FBMEIsRUFBRSxTQUEwQjtRQUNsRyxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzVGLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDN0YsT0FBTyxDQUFDLEdBQUcsS0FBSyxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELGNBQWMsQ0FBQyxVQUFrQixFQUFFLEtBQUssR0FBRyxFQUFFLEVBQUUsU0FBa0IsRUFBRSxZQUFrQjtRQUNuRixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRUQsZUFBZSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSztRQUNqRCxNQUFNLE9BQU8sR0FBRyxDQUFDLEdBQUcsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ25GLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxLQUFLLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RILENBQUM7SUFFRCxvQ0FBb0MsQ0FBQyxVQUF1QixFQUFFLGdCQUFpQyxFQUFFLFFBQVEsR0FBRyxLQUFLO1FBQy9HLE9BQU8sVUFBVTthQUNkLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLGlDQUNQLEdBQUcsS0FDTixVQUFVLEVBQUUsR0FBRyxDQUFDLElBQUksRUFDcEIsU0FBUyxFQUFFLElBQUksRUFDZixJQUFJLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQ2xDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQ2hGLFFBQVEsRUFBRSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQ3pELENBQUMsQ0FBQztJQUNSLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxPQUF3QixFQUFFLGdCQUFpQyxFQUFFLEtBQWE7UUFDOUYsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xFLE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVyRSxNQUFNLEVBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUMsR0FBRyxPQUFPLENBQUM7UUFFekMsT0FBTztZQUNMLFdBQVc7WUFDWCxLQUFLO1lBQ0wsRUFBRTtZQUNGLGFBQWEsRUFBRSxPQUFPLENBQUMsT0FBTztZQUM5QixVQUFVO1lBQ1YsUUFBUSxFQUFFLFFBQVE7WUFDbEIsUUFBUSxFQUFFLEtBQUs7WUFDZixRQUFRO1lBQ1IsU0FBUyxFQUFFLEtBQUs7WUFDaEIsSUFBSSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO1NBQy9CLENBQUM7SUFDSixDQUFDOzs7O1lBL0dGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQjs7O1lBVnFCLGFBQWE7WUFBRSxhQUFhO1lBRDFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1JvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHtTZWFyY2hSZXN1bHQsIFNlYXJjaFNlcnZpY2UsIFN5c3RlbVNlcnZpY2UsIERtc09iamVjdH0gZnJvbSAnQGVvLXNkay9jb3JlJztcclxuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIG9mfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHtcclxuICBSZWZlcmVuY2VJdGVtLFxyXG4gIFJlZmVyZW5jZVNlYXJjaFxyXG59IGZyb20gJy4uL2ludGVyZmFjZS9yZWZlcmVuY2UtZmluZGVyLmludGVyZmFjZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZWZlcmVuY2VGaW5kZXJTZXJ2aWNlIHtcclxuICBwcml2YXRlIHJlZmVyZW5jZXNMb2FkZXIgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuICBwdWJsaWMgcmVmZXJlbmNlc0xvYWRlciQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLnJlZmVyZW5jZXNMb2FkZXIuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBzZWFyY2hTZXJ2aWNlOiBTZWFyY2hTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBzeXN0ZW1TZXJ2aWNlOiBTeXN0ZW1TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlclxyXG4gICkge31cclxuXHJcbiAgcHJpdmF0ZSBzZWFyY2hSZWZlcmVuY2VzKHNlYXJjaFRleHQ6IHN0cmluZywgdHlwZXM6IHN0cmluZ1tdLCBjb250ZXh0SWQ/OiBzdHJpbmcsIHF1ZXJ5RmlsdGVycz86IGFueSk6IE9ic2VydmFibGU8U2VhcmNoUmVzdWx0IHwgc3RyaW5nW10+IHtcclxuICAgIGlmIChzZWFyY2hUZXh0KSB7XHJcbiAgICAgIGxldCBxOiBhbnkgPSB7XHJcbiAgICAgICAgZmllbGRzOiBbJ3RpdGxlJywgJ2Rlc2NyaXB0aW9uJywgJ3R5cGUnXSxcclxuICAgICAgICB0eXBlczogdHlwZXMsXHJcbiAgICAgICAgdGVybTogc2VhcmNoVGV4dCxcclxuICAgICAgICBoaWdobGlnaHRpbmc6IHRydWUsXHJcbiAgICAgICAgZmlsdGVyczogcXVlcnlGaWx0ZXJzLFxyXG4gICAgICAgIG9wdGlvbnM6IHt3aXRoQ29udGV4dDogdHJ1ZX1cclxuICAgICAgfTtcclxuXHJcbiAgICAgIGlmIChjb250ZXh0SWQpIHtcclxuICAgICAgICBpZihxLmZpbHRlcnMpe1xyXG4gICAgICAgICAgcS5maWx0ZXJzLmNvbnRleHRmb2xkZXJpZCA9IHt2MTogY29udGV4dElkLCBvOiAnZXEnfTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcS5maWx0ZXJzID0ge2NvbnRleHRmb2xkZXJpZDoge3YxOiBjb250ZXh0SWQsIG86ICdlcSd9fTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiB0aGlzLnNlYXJjaFNlcnZpY2VcclxuICAgICAgICAuZXhlY3V0ZVF1ZXJ5KHEpXHJcbiAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICBtYXAoaXRlbSA9PiBpdGVtID8gdGhpcy5zZWFyY2hTZXJ2aWNlLmNyZWF0ZVJlc3VsdEZyb21SZXNwb25zZShpdGVtKSA6IFtdKVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gb2YoW10pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVSZXN1bHRMaXN0KGxpc3Q6IFJlZmVyZW5jZVNlYXJjaFtdLCBjdXJyZW50U2VsZWN0aW9uLCB0eXBlcyk6IFJlZmVyZW5jZUl0ZW1bXSB7XHJcbiAgICBpZiAobGlzdC5sZW5ndGgpIHtcclxuICAgICAgcmV0dXJuIGxpc3QubWFwKGVsID0+XHJcbiAgICAgICAgdGhpcy5nZW5lcmF0ZVJlc3VsdEVsZW1lbnQoZWwsIGN1cnJlbnRTZWxlY3Rpb24sIHR5cGVzKVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRSZWZlcmVuY2VVcmwoaWQ6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBpZiAoaWQpIHtcclxuICAgICAgcmV0dXJuIHRoaXMucm91dGVyLmNyZWF0ZVVybFRyZWUoWydvYmplY3QnLCBpZF0pLnRvU3RyaW5nKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZWxlY3RPbk11bHRpc1NlbGVjdChsaXN0OiBSZWZlcmVuY2VJdGVtW10sIGl0ZW06IFJlZmVyZW5jZUl0ZW0pOiBSZWZlcmVuY2VJdGVtW10ge1xyXG4gICAgY29uc3QgaW5kZXggPSBsaXN0LmZpbmRJbmRleChlbCA9PiBlbC5pZCA9PT0gaXRlbS5pZCk7XHJcbiAgICBsaXN0W2luZGV4XS5zZWxlY3RlZCA9ICFsaXN0W2luZGV4XS5zZWxlY3RlZDtcclxuICAgIHJldHVybiBsaXN0O1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0T25TaW5nbGVTZWxlY3QobGlzdDogUmVmZXJlbmNlSXRlbVtdLCBpdGVtOiBSZWZlcmVuY2VJdGVtKTogUmVmZXJlbmNlSXRlbVtdIHtcclxuICAgIGxpc3QuZm9yRWFjaChlbnRyeSA9PiBlbnRyeS5pZCA9PT0gaXRlbS5pZCAmJiAhZW50cnkuc2VsZWN0ZWQgPyAoZW50cnkuc2VsZWN0ZWQgPSB0cnVlKSA6IChlbnRyeS5zZWxlY3RlZCA9IGZhbHNlKSk7XHJcbiAgICByZXR1cm4gbGlzdDtcclxuICB9XHJcblxyXG4gIGdlbmVyYXRlU2VsZXRlY0l0ZW1zKHNlYXJjaDogUmVmZXJlbmNlSXRlbVtdLCBjbGlwYm9hcmQ6IFJlZmVyZW5jZUl0ZW1bXSwgc2VsZWN0aW9uOiBSZWZlcmVuY2VJdGVtW10pOiBSZWZlcmVuY2VJdGVtW10ge1xyXG4gICAgY29uc3Qgc2VsQ0IgPSBjbGlwYm9hcmQuZmlsdGVyKGVsID0+IGVsLnNlbGVjdGVkICYmICFzZWxlY3Rpb24uZmluZChjUyA9PiBjUy5pZCA9PT0gZWwuaWQpKTtcclxuICAgIGNvbnN0IHNlYXJjaFJlcyA9IHNlYXJjaC5maWx0ZXIoZWwgPT4gZWwuc2VsZWN0ZWQgJiYgIXNlbGVjdGlvbi5maW5kKGNTID0+IGNTLmlkID09PSBlbC5pZCkpO1xyXG4gICAgcmV0dXJuIFsuLi5zZWxDQiwgLi4uc2VhcmNoUmVzXTtcclxuICB9XHJcblxyXG4gIGZpbmRSZWZlcmVuY2VzKHNlYXJjaFRlcm06IHN0cmluZywgdHlwZXMgPSBbXSwgY29udGV4dElkPzogc3RyaW5nLCBxdWVyeUZpbHRlcnM/OiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLnNlYXJjaFJlZmVyZW5jZXMoc2VhcmNoVGVybSwgdHlwZXMsIGNvbnRleHRJZCwgcXVlcnlGaWx0ZXJzKTtcclxuICB9XHJcblxyXG4gIGdlbmVyYXRlUmVzdWx0cyhsaXN0LCBoaXRzLCBjdXJyZW50U2VsZWN0aW9uLCB0eXBlcykge1xyXG4gICAgY29uc3QgcmVzdWx0cyA9IFsuLi5saXN0LCAuLi50aGlzLmNyZWF0ZVJlc3VsdExpc3QoaGl0cywgY3VycmVudFNlbGVjdGlvbiwgdHlwZXMpXTtcclxuICAgIHJldHVybiByZXN1bHRzLmZpbHRlcigoaXRlbSwgaW5kZXgpID0+IChpbmRleCA9PT0gcmVzdWx0cy5maW5kSW5kZXgob2JqID0+IG9iai5pZCA9PT0gaXRlbS5pZCAmJiAhaXRlbS5jbGlwYm9hcmQpKSk7XHJcbiAgfVxyXG5cclxuICBnZW5lcmF0ZVJlZmVyZW5jZUl0ZW1zRnJvbURtc09iamVjdHMoZG1zT2JqZWN0czogRG1zT2JqZWN0W10sIGN1cnJlbnRTZWxlY3Rpb246IFJlZmVyZW5jZUl0ZW1bXSwgZGlzYWJsZWQgPSBmYWxzZSk6IFJlZmVyZW5jZUl0ZW1bXSB7XHJcbiAgICByZXR1cm4gZG1zT2JqZWN0c1xyXG4gICAgICAubWFwKG9iaiA9PiAoe1xyXG4gICAgICAgIC4uLm9iaixcclxuICAgICAgICBvYmplY3RUeXBlOiBvYmoudHlwZSxcclxuICAgICAgICBjbGlwYm9hcmQ6IHRydWUsXHJcbiAgICAgICAgbGluazogdGhpcy5nZXRSZWZlcmVuY2VVcmwob2JqLmlkKSxcclxuICAgICAgICBkaXNhYmxlZDogIWRpc2FibGVkID8gISFjdXJyZW50U2VsZWN0aW9uLmZpbmQoY1MgPT4gY1MuaWQgPT09IG9iai5pZCkgOiBkaXNhYmxlZCxcclxuICAgICAgICBzZWxlY3RlZDogISFjdXJyZW50U2VsZWN0aW9uLmZpbmQoY1MgPT4gY1MuaWQgPT09IG9iai5pZClcclxuICAgICAgfSkpO1xyXG4gIH1cclxuXHJcbiAgZ2VuZXJhdGVSZXN1bHRFbGVtZW50KGVsZW1lbnQ6IFJlZmVyZW5jZVNlYXJjaCwgY3VycmVudFNlbGVjdGlvbjogUmVmZXJlbmNlSXRlbVtdLCB0eXBlczogc3RyaW5nKTogUmVmZXJlbmNlSXRlbSB7XHJcbiAgICBjb25zdCBvYmplY3RUeXBlID0gdGhpcy5zeXN0ZW1TZXJ2aWNlLmdldE9iamVjdFR5cGUoZWxlbWVudC50eXBlKTtcclxuICAgIGNvbnN0IGRpc2FibGVkID0gISFjdXJyZW50U2VsZWN0aW9uLmZpbmQoY1MgPT4gY1MuaWQgPT09IGVsZW1lbnQuaWQpO1xyXG5cclxuICAgIGNvbnN0IHtkZXNjcmlwdGlvbiwgdGl0bGUsIGlkfSA9IGVsZW1lbnQ7XHJcblxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgZGVzY3JpcHRpb24sXHJcbiAgICAgIHRpdGxlLFxyXG4gICAgICBpZCxcclxuICAgICAgY29udGV4dEZvbGRlcjogZWxlbWVudC5jb250ZXh0LFxyXG4gICAgICBvYmplY3RUeXBlLFxyXG4gICAgICBzZWxlY3RlZDogZGlzYWJsZWQsXHJcbiAgICAgIHR5cGVOYW1lOiB0eXBlcyxcclxuICAgICAgZGlzYWJsZWQsXHJcbiAgICAgIGNsaXBib2FyZDogZmFsc2UsXHJcbiAgICAgIGxpbms6IHRoaXMuZ2V0UmVmZXJlbmNlVXJsKGlkKVxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXJlbmNlLWZpbmRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvZm9ybS1lbGVtZW50cy9pZC1yZWZlcmVuY2Uvc2VydmljZS9yZWZlcmVuY2UtZmluZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDdkMsT0FBTyxFQUFlLGFBQWEsRUFBRSxhQUFhLEVBQVksTUFBTSxjQUFjLENBQUM7QUFDbkYsT0FBTyxFQUFDLGVBQWUsRUFBYyxFQUFFLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7O0FBU25DLE1BQU0sT0FBTyxzQkFBc0I7SUFJakMsWUFDVSxhQUE0QixFQUM1QixhQUE0QixFQUM1QixNQUFjO1FBRmQsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQU5oQixxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUN4RCxzQkFBaUIsR0FBd0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBTWxGLENBQUM7SUFFSSxnQkFBZ0IsQ0FBQyxVQUFrQixFQUFFLEtBQWUsRUFBRSxTQUFrQixFQUFFLFlBQWtCO1FBQ2xHLElBQUksVUFBVSxFQUFFO1lBQ2QsSUFBSSxDQUFDLEdBQVE7Z0JBQ1gsTUFBTSxFQUFFLENBQUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLENBQUM7Z0JBQ3hDLEtBQUssRUFBRSxLQUFLO2dCQUNaLElBQUksRUFBRSxVQUFVO2dCQUNoQixZ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YTtZQUQxQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7U2VhcmNoUmVzdWx0LCBTZWFyY2hTZXJ2aWNlLCBTeXN0ZW1TZXJ2aWNlLCBEbXNPYmplY3R9IGZyb20gJ0Blby1zZGsvY29yZSc7XHJcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBvZn0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7XHJcbiAgUmVmZXJlbmNlSXRlbSxcclxuICBSZWZlcmVuY2VTZWFyY2hcclxufSBmcm9tICcuLi9pbnRlcmZhY2UvcmVmZXJlbmNlLWZpbmRlci5pbnRlcmZhY2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgUmVmZXJlbmNlRmluZGVyU2VydmljZSB7XHJcbiAgcHJpdmF0ZSByZWZlcmVuY2VzTG9hZGVyID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgcHVibGljIHJlZmVyZW5jZXNMb2FkZXIkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5yZWZlcmVuY2VzTG9hZGVyLmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgc2VhcmNoU2VydmljZTogU2VhcmNoU2VydmljZSxcclxuICAgIHByaXZhdGUgc3lzdGVtU2VydmljZTogU3lzdGVtU2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXJcclxuICApIHt9XHJcblxyXG4gIHByaXZhdGUgc2VhcmNoUmVmZXJlbmNlcyhzZWFyY2hUZXh0OiBzdHJpbmcsIHR5cGVzOiBzdHJpbmdbXSwgY29udGV4dElkPzogc3RyaW5nLCBxdWVyeUZpbHRlcnM/OiBhbnkpOiBPYnNlcnZhYmxlPFNlYXJjaFJlc3VsdCB8IHN0cmluZ1tdPiB7XHJcbiAgICBpZiAoc2VhcmNoVGV4dCkge1xyXG4gICAgICBsZXQgcTogYW55ID0ge1xyXG4gICAgICAgIGZpZWxkczogWyd0aXRsZScsICdkZXNjcmlwdGlvbicsICd0eXBlJ10sXHJcbiAgICAgICAgdHlwZXM6IHR5cGVzLFxyXG4gICAgICAgIHRlcm06IHNlYXJjaFRleHQsXHJcbiAgICAgICAgaGlnaGxpZ2h0aW5nOiB0cnVlLFxyXG4gICAgICAgIGZpbHRlcnM6IHF1ZXJ5RmlsdGVycyxcclxuICAgICAgICBvcHRpb25zOiB7d2l0aENvbnRleHQ6IHRydWV9XHJcbiAgICAgIH07XHJcblxyXG4gICAgICBpZiAoY29udGV4dElkKSB7XHJcbiAgICAgICAgaWYocS5maWx0ZXJzKXtcclxuICAgICAgICAgIHEuZmlsdGVycy5jb250ZXh0Zm9sZGVyaWQgPSB7djE6IGNvbnRleHRJZCwgbzogJ2VxJ307XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHEuZmlsdGVycyA9IHtjb250ZXh0Zm9sZGVyaWQ6IHt2MTogY29udGV4dElkLCBvOiAnZXEnfX07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gdGhpcy5zZWFyY2hTZXJ2aWNlXHJcbiAgICAgICAgLmV4ZWN1dGVRdWVyeShxKVxyXG4gICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgbWFwKGl0ZW0gPT4gaXRlbSA/IHRoaXMuc2VhcmNoU2VydmljZS5jcmVhdGVSZXN1bHRGcm9tUmVzcG9uc2UoaXRlbSkgOiBbXSlcclxuICAgICAgICApO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG9mKFtdKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlUmVzdWx0TGlzdChsaXN0OiBSZWZlcmVuY2VTZWFyY2hbXSwgY3VycmVudFNlbGVjdGlvbiwgdHlwZXMpOiBSZWZlcmVuY2VJdGVtW10ge1xyXG4gICAgaWYgKGxpc3QubGVuZ3RoKSB7XHJcbiAgICAgIHJldHVybiBsaXN0Lm1hcChlbCA9PlxyXG4gICAgICAgIHRoaXMuZ2VuZXJhdGVSZXN1bHRFbGVtZW50KGVsLCBjdXJyZW50U2VsZWN0aW9uLCB0eXBlcylcclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0UmVmZXJlbmNlVXJsKGlkOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKGlkKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFsnb2JqZWN0JywgaWRdKS50b1N0cmluZygpLnJlcGxhY2UoL1xcKG1vZGFsOlxcdytcXCkkL2csICcnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNlbGVjdE9uTXVsdGlzU2VsZWN0KGxpc3Q6IFJlZmVyZW5jZUl0ZW1bXSwgaXRlbTogUmVmZXJlbmNlSXRlbSk6IFJlZmVyZW5jZUl0ZW1bXSB7XHJcbiAgICBjb25zdCBpbmRleCA9IGxpc3QuZmluZEluZGV4KGVsID0+IGVsLmlkID09PSBpdGVtLmlkKTtcclxuICAgIGxpc3RbaW5kZXhdLnNlbGVjdGVkID0gIWxpc3RbaW5kZXhdLnNlbGVjdGVkO1xyXG4gICAgcmV0dXJuIGxpc3Q7XHJcbiAgfVxyXG5cclxuICBzZWxlY3RPblNpbmdsZVNlbGVjdChsaXN0OiBSZWZlcmVuY2VJdGVtW10sIGl0ZW06IFJlZmVyZW5jZUl0ZW0pOiBSZWZlcmVuY2VJdGVtW10ge1xyXG4gICAgbGlzdC5mb3JFYWNoKGVudHJ5ID0+IGVudHJ5LmlkID09PSBpdGVtLmlkICYmICFlbnRyeS5zZWxlY3RlZCA/IChlbnRyeS5zZWxlY3RlZCA9IHRydWUpIDogKGVudHJ5LnNlbGVjdGVkID0gZmFsc2UpKTtcclxuICAgIHJldHVybiBsaXN0O1xyXG4gIH1cclxuXHJcbiAgZ2VuZXJhdGVTZWxldGVjSXRlbXMoc2VhcmNoOiBSZWZlcmVuY2VJdGVtW10sIGNsaXBib2FyZDogUmVmZXJlbmNlSXRlbVtdLCBzZWxlY3Rpb246IFJlZmVyZW5jZUl0ZW1bXSk6IFJlZmVyZW5jZUl0ZW1bXSB7XHJcbiAgICBjb25zdCBzZWxDQiA9IGNsaXBib2FyZC5maWx0ZXIoZWwgPT4gZWwuc2VsZWN0ZWQgJiYgIXNlbGVjdGlvbi5maW5kKGNTID0+IGNTLmlkID09PSBlbC5pZCkpO1xyXG4gICAgY29uc3Qgc2VhcmNoUmVzID0gc2VhcmNoLmZpbHRlcihlbCA9PiBlbC5zZWxlY3RlZCAmJiAhc2VsZWN0aW9uLmZpbmQoY1MgPT4gY1MuaWQgPT09IGVsLmlkKSk7XHJcbiAgICByZXR1cm4gWy4uLnNlbENCLCAuLi5zZWFyY2hSZXNdO1xyXG4gIH1cclxuXHJcbiAgZmluZFJlZmVyZW5jZXMoc2VhcmNoVGVybTogc3RyaW5nLCB0eXBlcyA9IFtdLCBjb250ZXh0SWQ/OiBzdHJpbmcsIHF1ZXJ5RmlsdGVycz86IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuc2VhcmNoUmVmZXJlbmNlcyhzZWFyY2hUZXJtLCB0eXBlcywgY29udGV4dElkLCBxdWVyeUZpbHRlcnMpO1xyXG4gIH1cclxuXHJcbiAgZ2VuZXJhdGVSZXN1bHRzKGxpc3QsIGhpdHMsIGN1cnJlbnRTZWxlY3Rpb24sIHR5cGVzKSB7XHJcbiAgICBjb25zdCByZXN1bHRzID0gWy4uLmxpc3QsIC4uLnRoaXMuY3JlYXRlUmVzdWx0TGlzdChoaXRzLCBjdXJyZW50U2VsZWN0aW9uLCB0eXBlcyldO1xyXG4gICAgcmV0dXJuIHJlc3VsdHMuZmlsdGVyKChpdGVtLCBpbmRleCkgPT4gKGluZGV4ID09PSByZXN1bHRzLmZpbmRJbmRleChvYmogPT4gb2JqLmlkID09PSBpdGVtLmlkICYmICFpdGVtLmNsaXBib2FyZCkpKTtcclxuICB9XHJcblxyXG4gIGdlbmVyYXRlUmVmZXJlbmNlSXRlbXNGcm9tRG1zT2JqZWN0cyhkbXNPYmplY3RzOiBEbXNPYmplY3RbXSwgY3VycmVudFNlbGVjdGlvbjogUmVmZXJlbmNlSXRlbVtdLCBkaXNhYmxlZCA9IGZhbHNlKTogUmVmZXJlbmNlSXRlbVtdIHtcclxuICAgIHJldHVybiBkbXNPYmplY3RzXHJcbiAgICAgIC5tYXAob2JqID0+ICh7XHJcbiAgICAgICAgLi4ub2JqLFxyXG4gICAgICAgIG9iamVjdFR5cGU6IG9iai50eXBlLFxyXG4gICAgICAgIGNsaXBib2FyZDogdHJ1ZSxcclxuICAgICAgICBsaW5rOiB0aGlzLmdldFJlZmVyZW5jZVVybChvYmouaWQpLFxyXG4gICAgICAgIGRpc2FibGVkOiAhZGlzYWJsZWQgPyAhIWN1cnJlbnRTZWxlY3Rpb24uZmluZChjUyA9PiBjUy5pZCA9PT0gb2JqLmlkKSA6IGRpc2FibGVkLFxyXG4gICAgICAgIHNlbGVjdGVkOiAhIWN1cnJlbnRTZWxlY3Rpb24uZmluZChjUyA9PiBjUy5pZCA9PT0gb2JqLmlkKVxyXG4gICAgICB9KSk7XHJcbiAgfVxyXG5cclxuICBnZW5lcmF0ZVJlc3VsdEVsZW1lbnQoZWxlbWVudDogUmVmZXJlbmNlU2VhcmNoLCBjdXJyZW50U2VsZWN0aW9uOiBSZWZlcmVuY2VJdGVtW10sIHR5cGVzOiBzdHJpbmcpOiBSZWZlcmVuY2VJdGVtIHtcclxuICAgIGNvbnN0IG9iamVjdFR5cGUgPSB0aGlzLnN5c3RlbVNlcnZpY2UuZ2V0T2JqZWN0VHlwZShlbGVtZW50LnR5cGUpO1xyXG4gICAgY29uc3QgZGlzYWJsZWQgPSAhIWN1cnJlbnRTZWxlY3Rpb24uZmluZChjUyA9PiBjUy5pZCA9PT0gZWxlbWVudC5pZCk7XHJcblxyXG4gICAgY29uc3Qge2Rlc2NyaXB0aW9uLCB0aXRsZSwgaWR9ID0gZWxlbWVudDtcclxuXHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBkZXNjcmlwdGlvbixcclxuICAgICAgdGl0bGUsXHJcbiAgICAgIGlkLFxyXG4gICAgICBjb250ZXh0Rm9sZGVyOiBlbGVtZW50LmNvbnRleHQsXHJcbiAgICAgIG9iamVjdFR5cGUsXHJcbiAgICAgIHNlbGVjdGVkOiBkaXNhYmxlZCxcclxuICAgICAgdHlwZU5hbWU6IHR5cGVzLFxyXG4gICAgICBkaXNhYmxlZCxcclxuICAgICAgY2xpcGJvYXJkOiBmYWxzZSxcclxuICAgICAgbGluazogdGhpcy5nZXRSZWZlcmVuY2VVcmwoaWQpXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -156,7 +156,7 @@ OrganizationComponent.decorators = [
|
|
|
156
156
|
multi: true
|
|
157
157
|
}
|
|
158
158
|
],
|
|
159
|
-
styles: [".eo-organization .ui-autocomplete-token-label{display:inline-block}.eo-organization .fa.fa-user,.eo-organization .fa.fa-users{margin:0 4px;text-align:center;width:18px}:host.readonly ::ng-deep .ui-autocomplete-token-icon{display:none}:host ::ng-deep .ui-autocomplete-token{border:none!important;margin:0!important;padding:0!important}:host ::ng-deep .ui-autocomplete-token .token{align-items:center;border:1px solid rgba(0,0,0,.1);display:flex;padding:2px}:host ::ng-deep .ui-autocomplete-token-icon{margin-right:4px
|
|
159
|
+
styles: [".eo-organization .ui-autocomplete-token-label{display:inline-block}.eo-organization .fa.fa-user,.eo-organization .fa.fa-users{margin:0 4px;text-align:center;width:18px}:host.readonly ::ng-deep .ui-autocomplete-token-icon{display:none}:host ::ng-deep .ui-autocomplete-token{border:none!important;margin:0!important;padding:0!important}:host ::ng-deep .ui-autocomplete-token .token{align-items:center;border:1px solid rgba(0,0,0,.1);display:flex;padding:2px}:host ::ng-deep .ui-autocomplete-token-icon{opacity:1}[dir=ltr] :host ::ng-deep .ui-autocomplete-token-icon{margin-right:4px}[dir=rtl] :host ::ng-deep .ui-autocomplete-token-icon{margin-left:4px}:host ::ng-deep .ui-autocomplete-token-icon.del{color:var(--color-white)!important}:host ::ng-deep .deleted-user-label{color:var(--color-error)}:host ::ng-deep .eo-organization.acInputHidden .ui-autocomplete-input-token{margin:0;padding:0;width:0!important}:host ::ng-deep .eo-organization.acInputHidden .ui-autocomplete-input-token input{width:0!important}"]
|
|
160
160
|
},] }
|
|
161
161
|
];
|
|
162
162
|
OrganizationComponent.ctorParameters = () => [
|
|
@@ -54,7 +54,7 @@ OrganizationFilterComponent.decorators = [
|
|
|
54
54
|
{ type: Component, args: [{
|
|
55
55
|
selector: 'eo-organization-filter',
|
|
56
56
|
template: "<div class=\"eo-organization\" [ngClass]=\"{acInputHidden: !multiselect && innerValue.length}\">\r\n\r\n <p-autoComplete [(ngModel)]=\"innerValue\" [minLength]=\"1\" #autocomplete\r\n (onSelect)=\"onSelect($event)\" (onUnselect)=\"onUnselect($event)\"\r\n (onBlur)=\"onAutoCompleteBlur()\"\r\n [readonly]=\"readonly\"\r\n [disabled]=\"readonly\"\r\n [placeholder]=\"placeholder\"\r\n [suggestions]=\"autocompleteRes\" field=\"title\"\r\n (completeMethod)=\"autocompleteFn($event)\" [multiple]=\"true\">\r\n\r\n <!-- template for the suggest list -->\r\n <ng-template let-item pTemplate=\"item\">\r\n <i class=\"fa {{item.type === 'group' ? 'fa-users' : 'fa-user'}}\"></i>\r\n <span *ngIf=\"(item.firstname?.length && item.lastname?.length) || item.type === 'group'\" class=\"ui-autocomplete-token-label\">{{item.title}} ({{item.name}})</span>\r\n <span *ngIf=\"!item.firstname?.length && !item.lastname?.length && item.type !== 'group'\" class=\"ui-autocomplete-token-label\">({{item.name}})</span>\r\n <span *ngIf=\"!item.firstname?.length && item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.lastname}} ({{item.name}})</span>\r\n <span *ngIf=\"item.firstname?.length && !item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.firstname}} ({{item.name}})</span>\r\n </ng-template>\r\n\r\n <!-- template for the selected items when multiple -->\r\n <ng-template let-item pTemplate=\"selectedItem\">\r\n <div class=\"token\">\r\n <i class=\"fa {{item.type === 'group' ? 'fa-users' : 'fa-user'}}\" [ngClass]=\"{'deleted-user-label': !item.firstname?.length && !item.lastname?.length && !item.active && !item.type}\"></i>\r\n <span *ngIf=\"(item.firstname?.length && item.lastname?.length && item.active) || item.type === 'group'\" class=\"ui-autocomplete-token-label\">{{item.title}} ({{item.name}})</span>\r\n <span *ngIf=\"(!item.firstname?.length && !item.lastname?.length && !item.active && !item.type)\" class=\"ui-autocomplete-token-label deleted-user-label\">{{'eo.form.property.organization.error.usernotfound'|translate}}</span>\r\n <span *ngIf=\"!item.firstname?.length && !item.lastname?.length && item.active && item.type !== 'group'\" class=\"ui-autocomplete-token-label\">({{item.name}})</span>\r\n <span *ngIf=\"!item.firstname?.length && item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.lastname}} ({{item.name}})</span>\r\n <span *ngIf=\"item.firstname?.length && !item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.firstname}} ({{item.name}})</span>\r\n </div>\r\n </ng-template>\r\n\r\n </p-autoComplete>\r\n</div>\r\n",
|
|
57
|
-
styles: [".eo-organization .ui-autocomplete-token-label{display:inline-block}.eo-organization .fa.fa-user,.eo-organization .fa.fa-users{margin:0 4px;text-align:center;width:18px}:host.readonly ::ng-deep .ui-autocomplete-token-icon{display:none}:host ::ng-deep .ui-autocomplete-token{border:none!important;margin:0!important;padding:0!important}:host ::ng-deep .ui-autocomplete-token .token{align-items:center;border:1px solid rgba(0,0,0,.1);display:flex;padding:2px}:host ::ng-deep .ui-autocomplete-token-icon{margin-right:4px
|
|
57
|
+
styles: [".eo-organization .ui-autocomplete-token-label{display:inline-block}.eo-organization .fa.fa-user,.eo-organization .fa.fa-users{margin:0 4px;text-align:center;width:18px}:host.readonly ::ng-deep .ui-autocomplete-token-icon{display:none}:host ::ng-deep .ui-autocomplete-token{border:none!important;margin:0!important;padding:0!important}:host ::ng-deep .ui-autocomplete-token .token{align-items:center;border:1px solid rgba(0,0,0,.1);display:flex;padding:2px}:host ::ng-deep .ui-autocomplete-token-icon{opacity:1}[dir=ltr] :host ::ng-deep .ui-autocomplete-token-icon{margin-right:4px}[dir=rtl] :host ::ng-deep .ui-autocomplete-token-icon{margin-left:4px}:host ::ng-deep .ui-autocomplete-token-icon.del{color:var(--color-white)!important}:host ::ng-deep .deleted-user-label{color:var(--color-error)}:host ::ng-deep .eo-organization.acInputHidden .ui-autocomplete-input-token{margin:0;padding:0;width:0!important}:host ::ng-deep .eo-organization.acInputHidden .ui-autocomplete-input-token input{width:0!important}"]
|
|
58
58
|
},] }
|
|
59
59
|
];
|
|
60
60
|
OrganizationFilterComponent.ctorParameters = () => [
|
|
@@ -49,11 +49,14 @@ export class BpmService {
|
|
|
49
49
|
* Getter for the executable Processes. If types are provided, you'll get
|
|
50
50
|
* only the processes that are executable for all of them
|
|
51
51
|
* @param types List of dms object types to fetch executable processes for
|
|
52
|
+
* @param useCached If the cached data should be returned rather than requesting again
|
|
53
|
+
* @param additionalData If the additional form data should be also included
|
|
54
|
+
* @param modelid The process model ID to only return the data for one process
|
|
52
55
|
* @returns List of executable processes
|
|
53
56
|
*/
|
|
54
|
-
getExecutableProcesses(types, useCached) {
|
|
57
|
+
getExecutableProcesses(types, useCached, additionalData, modelid) {
|
|
55
58
|
if (this.capabilities.hasCapability('bpm')) {
|
|
56
|
-
return (!!this.executableProcesses && useCached) ? observableOf(this.executableProcesses) : this.fetchExecutableProcesses(types);
|
|
59
|
+
return (!!this.executableProcesses && useCached) ? observableOf(this.executableProcesses) : this.fetchExecutableProcesses(types, additionalData, modelid);
|
|
57
60
|
}
|
|
58
61
|
else {
|
|
59
62
|
return observableOf([]);
|
|
@@ -70,19 +73,40 @@ export class BpmService {
|
|
|
70
73
|
* @returns List of executable processes
|
|
71
74
|
*/
|
|
72
75
|
getExecutableProcessesForDmsObjects(dmsObjects) {
|
|
73
|
-
return this.getExecutableProcesses(dmsObjects.map(o => o.typeName));
|
|
76
|
+
return this.getExecutableProcesses(dmsObjects.map(o => o.typeName), false, true);
|
|
74
77
|
}
|
|
75
78
|
/**
|
|
76
79
|
* Fetches executable Processes from the backend.
|
|
77
80
|
* @param types List of dms object types to fetch executable processes for
|
|
81
|
+
* @param additionalData If the additional form data should be also included
|
|
82
|
+
* @param modelid The process model ID to only return the data for one process
|
|
78
83
|
* @returns List of executable processes
|
|
79
84
|
*/
|
|
80
|
-
fetchExecutableProcesses(types) {
|
|
81
|
-
let uri = '/bpm/process/executable
|
|
85
|
+
fetchExecutableProcesses(types, additionalData, modelid) {
|
|
86
|
+
let uri = '/bpm/process/executable';
|
|
87
|
+
if (additionalData) {
|
|
88
|
+
uri += '?form=true&fields=true';
|
|
89
|
+
}
|
|
82
90
|
if (types) {
|
|
83
|
-
uri +=
|
|
91
|
+
uri += (additionalData ? '&' : '?') + `type=${types.join(',')}`;
|
|
92
|
+
}
|
|
93
|
+
if (modelid) {
|
|
94
|
+
uri += (additionalData || types ? '&' : '?') + `modelid=${modelid}`;
|
|
84
95
|
}
|
|
85
|
-
return this.backend.get(uri).pipe(map(res => res), tap(res =>
|
|
96
|
+
return this.backend.get(uri).pipe(map(res => res), tap(res => {
|
|
97
|
+
// Extend existing processes with additional data, instead of overwriting all processes
|
|
98
|
+
if (additionalData) {
|
|
99
|
+
res.forEach(proc => {
|
|
100
|
+
var existingProcIndex = this.executableProcesses.findIndex(item => item.id == proc.id);
|
|
101
|
+
if (existingProcIndex == -1)
|
|
102
|
+
this.executableProcesses.push(proc);
|
|
103
|
+
else
|
|
104
|
+
this.executableProcesses[existingProcIndex] = proc;
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
else
|
|
108
|
+
this.executableProcesses = res;
|
|
109
|
+
}));
|
|
86
110
|
}
|
|
87
111
|
/**
|
|
88
112
|
* Getter for a processes file. The file of a process contains
|
|
@@ -251,4 +275,4 @@ BpmService.ctorParameters = () => [
|
|
|
251
275
|
{ type: EventService },
|
|
252
276
|
{ type: InboxService }
|
|
253
277
|
];
|
|
254
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnBtLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lby1zZGsvY29yZS9zcmMvbGliL3NlcnZpY2UvYnBtL2JwbS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLElBQUksa0JBQWtCLEVBQUUsRUFBRSxJQUFJLFlBQVksRUFBYyxhQUFhLEVBQUUsVUFBVSxJQUFJLG9CQUFvQixFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3ZJLE9BQU8sRUFBQyxRQUFRLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUV6RSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDcEQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBK0IsT0FBTyxFQUFFLFFBQVEsRUFBaUIsTUFBTSx1QkFBdUIsQ0FBQztBQUV0RyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFFbkU7Ozs7Ozs7OztHQVNHO0FBRUgsTUFBTSxPQUFPLFVBQVU7SUFVckIsWUFBb0IsWUFBaUMsRUFDM0MsT0FBdUIsRUFDdkIsWUFBMEIsRUFDMUIsWUFBMEI7UUFIaEIsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBQzNDLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ3ZCLGlC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VUFBVSxDQUFDLENBQUMsQ0FDeEQsQ0FBQztJQUNOLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILDRCQUE0QixDQUFDLFFBQWtCLEVBQUUsU0FBb0I7UUFDbkUsSUFBSSxDQUFDLFFBQVEsSUFBSSxRQUFRLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLElBQUksU0FBUyxJQUFJLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxJQUFJLFNBQVMsQ0FBQyxNQUFNLEtBQUssZUFBZSxDQUFDLElBQUksRUFBRTtZQUMxSSxJQUFJLFFBQXFCLENBQUM7WUFDMUIsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDeEIsOERBQThEO2dCQUM5RCxNQUFNLGFBQWEsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDbkQsUUFBUSxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMvRTtpQkFBTTtnQkFDTCxRQUFRLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQzthQUMvQjtZQUNELE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUM7U0FDeEU7YUFBTTtZQUNMLE9BQU8sb0JBQW9CLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDdEM7SUFDSCxDQUFDOzs7WUFwUUYsVUFBVTs7O1lBZkgsbUJBQW1CO1lBTG5CLGNBQWM7WUFJZCxZQUFZO1lBRFosWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Zm9ya0pvaW4gYXMgb2JzZXJ2YWJsZUZvcmtKb2luLCBvZiBhcyBvYnNlcnZhYmxlT2YsIE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QsIHRocm93RXJyb3IgYXMgb2JzZXJ2YWJsZVRocm93RXJyb3J9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge21lcmdlTWFwLCB0YXAsIG1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1V0aWxzfSBmcm9tICcuLi8uLi91dGlsL3V0aWxzJztcclxuaW1wb3J0IHtCYWNrZW5kU2VydmljZX0gZnJvbSAnLi4vYmFja2VuZC9iYWNrZW5kLnNlcnZpY2UnO1xyXG5pbXBvcnQge1dvcmtJdGVtSGlzdG9yeUVudHJ5fSBmcm9tICcuLi8uLi9tb2RlbC93b3JrLWl0ZW0taGlzdG9yeS5tb2RlbCc7XHJcbmltcG9ydCB7RG1zT2JqZWN0fSBmcm9tICcuLi8uLi9tb2RlbC9kbXMtb2JqZWN0Lm1vZGVsJztcclxuaW1wb3J0IHtJbmJveFNlcnZpY2V9IGZyb20gJy4uL2luYm94L2luYm94LnNlcnZpY2UnO1xyXG5pbXBvcnQge0V2ZW50U2VydmljZX0gZnJvbSAnLi4vZXZlbnRzL2V2ZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQge0NhcGFiaWxpdGllc1NlcnZpY2V9IGZyb20gJy4uL2NhcGFiaWxpdGllcy9jYXBhYmlsaXRpZXMuc2VydmljZSc7XHJcbmltcG9ydCB7RXhlY3V0YWJsZVByb2Nlc3MsIEZpbGVFbnRyeSwgUHJvY2VzcywgV29ya0l0ZW0sIFdvcmtJdGVtQWN0aW9ufSBmcm9tICcuLi8uLi9tb2RlbC9icG0ubW9kZWwnO1xyXG5pbXBvcnQge0NsaXBib2FyZH0gZnJvbSAnLi4vY2xpcGJvYXJkL2NsaXBib2FyZC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQge0NsaXBib2FyZEFjdGlvbn0gZnJvbSAnLi4vY2xpcGJvYXJkL2NsaXBib2FyZC1hY3Rpb24uZW51bSc7XHJcblxyXG4vKipcclxuICogYEJwbVNlcnZpY2VgIGhhbmRsZXMgaW50ZXJhY3Rpb24gcmVsYXRlZCB0byBCUE0gdGFza3MuXHJcbiAqXHJcbiAqIFRoZSBtYWluIHBhcnRzIHByb3ZpZGVkIGFuZCB1c2VkIGJ5IHRoaXMgc2VydmljZSBhcmUgUHJvY2Vzc2VzIGFuZCBXb3JrSXRlbXMuXHJcbiAqIFByb2Nlc3NlcyBhcmUgZGVmaW5lZCBvbiB0aGUgYmFja2VuZCBzaWRlLiBUaGV5IGRlc2NyaWJlIGEgc2V0IG9mIHRhc2tzIHRoYXQgd2lsbCBiZSBleGVjdXRlZCBieSB0aGUgcHJvY2Vzcy5cclxuICogVGFza3MgdGhhdCByZXF1aXJlIHVzZXIgaW50ZXJhY3Rpb24gYXJlIHJlZmVycmVkIHRvIGFzIFdvcmtJdGVtcy5cclxuICpcclxuICogUHJvY2Vzc2VzIGNhbiBiZSByZWxhdGVkIHRvIGEgc3BlY2lhbCBvYmplY3QgdHlwZSwgYnV0IHRoZXkgZG9uJ3QgaGF2ZSB0by4gSW4gYWRkaXRpb24gdG8gdGhhdCB0aGV5IGNhbiByZWZlclxyXG4gKiB0byBkbXMgb2JqZWN0cy5cclxuICovXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEJwbVNlcnZpY2Uge1xyXG4gIGhhc01haW5FeGVjdXRhYmxlUHJvY2Vzc2VzOiBib29sZWFuO1xyXG4gIHByaXZhdGUgZXhlY3V0YWJsZVByb2Nlc3NlczogRXhlY3V0YWJsZVByb2Nlc3NbXTtcclxuICBwcml2YXRlIHByb2Nlc3NJdGVtczogUHJvY2Vzc1tdO1xyXG4gIHByaXZhdGUgcHJvY2Vzc0l0ZW1zU291cmNlID0gbmV3IFJlcGxheVN1YmplY3Q8UHJvY2Vzc1tdPigxKTtcclxuICAvKipcclxuICAgKiBMb25nIHRlcm0gb2JzZXJ2YWJsZSBlbWl0dGluZyB0aGUgY3VycmVudCBwcm9jZXNzZXNcclxuICAgKi9cclxuICBwcm9jZXNzSXRlbXMkOiBPYnNlcnZhYmxlPFByb2Nlc3NbXT4gPSB0aGlzLnByb2Nlc3NJdGVtc1NvdXJjZS5hc09ic2VydmFibGUoKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjYXBhYmlsaXRpZXM6IENhcGFiaWxpdGllc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGJhY2tlbmQ6IEJhY2tlbmRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBldmVudFNlcnZpY2U6IEV2ZW50U2VydmljZSxcclxuICAgIHByaXZhdGUgaW5ib3hTZXJ2aWNlOiBJbmJveFNlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHJpZXZlIGFsbCBwcm9jZXNzZXMgb2YgdGhlIGN1cnJlbnQgdXNlci5cclxuICAgKlxyXG4gICAqIEBwYXJhbSBzaXplIE1heGltdW0gbnVtYmVyIG9mIHByb2Nlc3NlcyB0byBiZSBmZXRjaGVkXHJcbiAgICogQHJldHVybnMgTGlzdCBvZiBQcm9jZXNzZXNcclxuICAgKi9cclxuICBnZXRQcm9jZXNzZXMoc2l6ZTogbnVtYmVyID0gMTAwMCk6IE9ic2VydmFibGU8UHJvY2Vzc1tdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5iYWNrZW5kXHJcbiAgICAgIC5nZXRKc29uKGAvcHJvY2Vzcy91c2VyP3NpemU9JHtzaXplfWAsIHRoaXMuYmFja2VuZC5nZXRCcG1CYXNlKCkpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcChyZXNwb25zZSA9PiByZXNwb25zZS5jb250ZW50Lm1hcChpdGVtID0+IG5ldyBQcm9jZXNzKGl0ZW0pKSksXHJcbiAgICAgICAgdGFwKChwcm9jZXNzZXM6IFByb2Nlc3NbXSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5wcm9jZXNzSXRlbXMgPSBwcm9jZXNzZXM7XHJcbiAgICAgICAgICB0aGlzLnByb2Nlc3NJdGVtc1NvdXJjZS5uZXh0KHRoaXMucHJvY2Vzc0l0ZW1zKTtcclxuICAgICAgICB9KVxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0dGVyIGZvciB0aGUgZXhlY3V0YWJsZSBQcm9jZXNzZXMuIElmIHR5cGVzIGFyZSBwcm92aWRlZCwgeW91J2xsIGdldFxyXG4gICAqIG9ubHkgdGhlIHByb2Nlc3NlcyB0aGF0IGFyZSBleGVjdXRhYmxlIGZvciBhbGwgb2YgdGhlbVxyXG4gICAqIEBwYXJhbSB0eXBlcyBMaXN0IG9mIGRtcyBvYmplY3QgdHlwZXMgdG8gZmV0Y2ggZXhlY3V0YWJsZSBwcm9jZXNzZXMgZm9yXHJcbiAgICogQHJldHVybnMgTGlzdCBvZiBleGVjdXRhYmxlIHByb2Nlc3Nlc1xyXG4gICAqL1xyXG4gIGdldEV4ZWN1dGFibGVQcm9jZXNzZXModHlwZXM/OiBzdHJpbmdbXSwgdXNlQ2FjaGVkPzogYm9vbGVhbik6IE9ic2VydmFibGU8RXhlY3V0YWJsZVByb2Nlc3NbXT4ge1xyXG4gICAgaWYgKHRoaXMuY2FwYWJpbGl0aWVzLmhhc0NhcGFiaWxpdHkoJ2JwbScpKSB7XHJcbiAgICAgIHJldHVybiAoISF0aGlzLmV4ZWN1dGFibGVQcm9jZXNzZXMgJiYgdXNlQ2FjaGVkKSA/IG9ic2VydmFibGVPZih0aGlzLmV4ZWN1dGFibGVQcm9jZXNzZXMpIDogdGhpcy5mZXRjaEV4ZWN1dGFibGVQcm9jZXNzZXModHlwZXMpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG9ic2VydmFibGVPZihbXSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbml0RXhlY3V0YWJsZVByb2Nlc3NlcygpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHVyaSA9ICcvYnBtL3Byb2Nlc3MvZXhlY3V0YWJsZSc7XHJcbiAgICByZXR1cm4gdGhpcy5iYWNrZW5kLmdldCh1cmkpLnBpcGUodGFwKHJlcyA9PiB0aGlzLmhhc01haW5FeGVjdXRhYmxlUHJvY2Vzc2VzID0gcmVzPy5sZW5ndGgpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldHMgZXhlY3V0YWJsZSBQcm9jZXNzZXMgZm9yIGEgZ2l2ZW4gc2V0IG9mIGRtcyBvYmplY3QuWW91J2xsIGdldFxyXG4gICAqIG9ubHkgdGhlIHByb2Nlc3NlcyB0aGF0IGFyZSBleGVjdXRhYmxlIGZvciBhbGwgb2YgdGhlbS5cclxuICAgKiBAcGFyYW0gZG1zT2JqZWN0cyBMaXN0IG9mIGRtcyBvYmplY3RzIHRvIGZldGNoIGV4ZWN1dGFibGUgcHJvY2Vzc2VzIGZvclxyXG4gICAqIEByZXR1cm5zIExpc3Qgb2YgZXhlY3V0YWJsZSBwcm9jZXNzZXNcclxuICAgKi9cclxuICBnZXRFeGVjdXRhYmxlUHJvY2Vzc2VzRm9yRG1zT2JqZWN0cyhkbXNPYmplY3RzOiBEbXNPYmplY3RbXSk6IE9ic2VydmFibGU8RXhlY3V0YWJsZVByb2Nlc3NbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0RXhlY3V0YWJsZVByb2Nlc3NlcyhkbXNPYmplY3RzLm1hcChvID0+IG8udHlwZU5hbWUpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZldGNoZXMgZXhlY3V0YWJsZSBQcm9jZXNzZXMgZnJvbSB0aGUgYmFja2VuZC5cclxuICAgKiBAcGFyYW0gdHlwZXMgTGlzdCBvZiBkbXMgb2JqZWN0IHR5cGVzIHRvIGZldGNoIGV4ZWN1dGFibGUgcHJvY2Vzc2VzIGZvclxyXG4gICAqIEByZXR1cm5zIExpc3Qgb2YgZXhlY3V0YWJsZSBwcm9jZXNzZXNcclxuICAgKi9cclxuICBwcml2YXRlIGZldGNoRXhlY3V0YWJsZVByb2Nlc3Nlcyh0eXBlcz86IHN0cmluZ1tdKTogT2JzZXJ2YWJsZTxFeGVjdXRhYmxlUHJvY2Vzc1tdPiB7XHJcbiAgICBsZXQgdXJpID0gJy9icG0vcHJvY2Vzcy9leGVjdXRhYmxlP2Zvcm09dHJ1ZSZmaWVsZHM9dHJ1ZSc7XHJcbiAgICBpZiAodHlwZXMpIHtcclxuICAgICAgdXJpICs9IGAmdHlwZT0ke3R5cGVzLmpvaW4oJywnKX1gO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuYmFja2VuZC5nZXQodXJpKS5waXBlKFxyXG4gICAgICBtYXAocmVzID0+IHJlcyBhcyBFeGVjdXRhYmxlUHJvY2Vzc1tdKSxcclxuICAgICAgdGFwKHJlcyA9PiB0aGlzLmV4ZWN1dGFibGVQcm9jZXNzZXMgPSByZXMpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0dGVyIGZvciBhIHByb2Nlc3NlcyBmaWxlLiBUaGUgZmlsZSBvZiBhIHByb2Nlc3MgY29udGFpbnNcclxuICAgKiBkbXMgb2JqZWN0cyBhdHRhY2hlZCB0byB0aGUgcHJvY2Vzcy5cclxuICAgKiBAcGFyYW0gcHJvY2Vzc0lkIElEIG9mIHRoZSBwcm9jZXNzIHRvIGZldGNoIGF0dGFjaGVkIG9iamVjdHMgZm9yXHJcbiAgICovXHJcbiAgZ2V0UHJvY2Vzc0ZpbGUocHJvY2Vzc0lkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEZpbGVFbnRyeVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5iYWNrZW5kXHJcbiAgICAgIC5nZXRKc29uKGAvcHJvY2Vzcy8ke3Byb2Nlc3NJZH0vZmlsZWAsIHRoaXMuYmFja2VuZC5nZXRCcG1CYXNlKCkpLnBpcGUoXHJcbiAgICAgICAgbWFwKHJlcyA9PiByZXMuY29udGVudC5tYXAoaSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBpZDogaS5lbGVtZW50aWQsXHJcbiAgICAgICAgICAgIHRpdGxlOiBpLnRpdGxlLFxyXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogaS5kZXNjcmlwdGlvbiA/IGkuZGVzY3JpcHRpb24gOiAnJyxcclxuICAgICAgICAgICAgaWNvbmlkOiBpLmljb25pZCxcclxuICAgICAgICAgICAgY3JlYXRvcjogaS5jcmVhdG9yLFxyXG4gICAgICAgICAgICBhZGR0aW1lOiBpLmFkZHRpbWUsXHJcbiAgICAgICAgICAgIHR5cGU6IGkudHlwZVxyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9KSlcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHJpZXZlcyBhIHdvcmsgaXRlbS5cclxuICAgKiBAcGFyYW0gcHJvY2Vzc0lkIElEIG9mIHRoZSBwYXJlbnQgcHJvY2Vzc1xyXG4gICAqIEBwYXJhbSBpdGVtSWQgSUQgb2YgdGhlIHdvcmsgaXRlbSBpdHNlbGZcclxuICAgKiBAcGFyYW0gb3B0aW9ucyBPcHRpb25zIHRvIGJlIGFkZGVkIHRvIHRoZSBiYWNrZW5kIGNhbGxcclxuICAgKiBAcmV0dXJucyBhIFdvcmtJdGVtXHJcbiAgICovXHJcbiAgZ2V0V29ya0l0ZW0ocHJvY2Vzc0lkOiBzdHJpbmcsIGl0ZW1JZDogc3RyaW5nLCBvcHRpb25zPzogYW55KTogT2JzZXJ2YWJsZTxXb3JrSXRlbT4ge1xyXG4gICAgY29uc3QgcGFyYW1zID0gb3B0aW9ucyA/IG9wdGlvbnMgOiB7Zm9ybTogdHJ1ZSwgZmllbGRzOiB0cnVlfTtcclxuICAgIGNvbnN0IHRhc2tzID0gW1xyXG4gICAgICB0aGlzLmJhY2tlbmQuZ2V0SnNvbihVdGlscy5idWlsZFVyaShgL2JwbS9wcm9jZXNzLyR7cHJvY2Vzc0lkfS8ke2l0ZW1JZH1gLCBwYXJhbXMpKSxcclxuICAgICAgdGhpcy5nZXRQcm9jZXNzRmlsZShwcm9jZXNzSWQpXHJcbiAgICBdO1xyXG4gICAgcmV0dXJuIG9ic2VydmFibGVGb3JrSm9pbih0YXNrcykucGlwZShcclxuICAgICAgbWFwKHJlcyA9PiB7XHJcbiAgICAgICAgY29uc3Qgd2kgPSBuZXcgV29ya0l0ZW0ocmVzWzBdKTtcclxuICAgICAgICB3aS5zZXRGaWxlKHJlc1sxXSk7XHJcbiAgICAgICAgcmV0dXJuIHdpO1xyXG4gICAgICB9KSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTYXZlcyBhIHdvcmsgaXRlbS5cclxuICAgKiBAcGFyYW0gaXRlbSBUaGUgd29yayBpdGVtIHRvIGJlIHNhdmVkXHJcbiAgICogQHJldHVybnMgVGhlIHVwZGF0ZWQgV29ya0l0ZW1cclxuICAgKi9cclxuICBzYXZlV29ya0l0ZW0oaXRlbTogV29ya0l0ZW0pOiBPYnNlcnZhYmxlPFdvcmtJdGVtPiB7XHJcbiAgICBjb25zdCB7aWQsIHByb2Nlc3NJZCwgZmlsZSwgZGF0YX0gPSBpdGVtO1xyXG4gICAgY29uc3QgcGF5bG9hZCA9IHtjb250ZW50czogZmlsZSwgZGF0YX07XHJcbiAgICBjb25zdCBwYXJhbXMgPSB7a2VlcGxvY2s6IHRydWUsIGlzYXV0b2xvY2s6IGZhbHNlfTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5iYWNrZW5kXHJcbiAgICAgIC5wb3N0KFV0aWxzLmJ1aWxkVXJpKGAvYnBtL3Byb2Nlc3MvJHtwcm9jZXNzSWR9LyR7aWR9L3NhdmVgLCBwYXJhbXMpLCBwYXlsb2FkKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtZXJnZU1hcCgoKSA9PiB0aGlzLmdldFdvcmtJdGVtKHByb2Nlc3NJZCwgaWQpKVxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRm9yd2FyZHMgYSB3b3JrIGl0ZW0uIElmIGEgV29ya0l0ZW0gcHJvdmlkZXMgZGlmZmVyZW50IGFjdGlvbnMgKEBsaW5rIFdvcmtJdGVtQWN0aW9uKVxyXG4gICAqIHlvdSBjYW4gcHJvdmlkZSB0aGUgc2VsZWN0ZWQgYWN0aW9uIHRvby5cclxuICAgKiBAcGFyYW0gaXRlbSBUaGUgd29yayBpdGVtIHRvIGJlIGZvcndhcmRlZFxyXG4gICAqIEBwYXJhbSBhY3Rpb24gQWN0aW9uIHVzZWQgZm9yIGZvcndhcmRpbmdcclxuICAgKi9cclxuICBmb3J3YXJkV29ya0l0ZW0oaXRlbTogV29ya0l0ZW0sIGFjdGlvbj86IFdvcmtJdGVtQWN0aW9uKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGNvbnN0IHBhcmFtcyA9IHtrZWVwbG9jazogZmFsc2UsIGlzYXV0b2xvY2s6IGZhbHNlfTtcclxuICAgIGNvbnN0IHBheWxvYWQgPSB7XHJcbiAgICAgIGFjdGlvbjogYWN0aW9uLFxyXG4gICAgICBjb250ZW50czogaXRlbS5maWxlLFxyXG4gICAgICBkYXRhOiBpdGVtLmRhdGFcclxuICAgIH07XHJcbiAgICByZXR1cm4gdGhpcy5iYWNrZW5kXHJcbiAgICAgIC5wb3N0KFV0aWxzLmJ1aWxkVXJpKGAvYnBtL3Byb2Nlc3MvJHtpdGVtLnByb2Nlc3NJZH0vJHtpdGVtLmlkfS9zYXZlYCwgcGFyYW1zKSwgcGF5bG9hZClcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgdGFwKCgpID0+IHRoaXMuaW5ib3hTZXJ2aWNlLnVwZGF0ZUluYm94SXRlbXMoaXRlbS5pZCkpXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBMb2NrcyBhIFdvcmtJdGVtIGZvciB0aGUgY3VycmVudCB1c2VyIChwZXJzb25hbGl6YXRpb24pLCBtZWFuaW5nIHRoYXQgdGhlXHJcbiAgICogY3VycmVudCB1c2VyIGlzIG5vdyBpbiBjaGFyZ2Ugb2YgZnVsZmlsbGluZyB0aGUgV29ya0l0ZW0gdGFzay5cclxuICAgKiBAcGFyYW0gaXRlbSBUaGUgV29ya0l0ZW0gdG8gYmUgbG9ja2VkXHJcbiAgICogQHJldHVybnMgVGhlIHVwZGF0ZWQgV29ya0l0ZW1cclxuICAgKi9cclxuICBsb2NrV29ya0l0ZW0oaXRlbTogV29ya0l0ZW0pOiBPYnNlcnZhYmxlPFdvcmtJdGVtPiB7XHJcbiAgICByZXR1cm4gdGhpcy5iYWNrZW5kLnB1dChgL2JwbS9wcm9jZXNzLyR7aXRlbS5wcm9jZXNzSWR9LyR7aXRlbS5pZH0vbG9ja2ApXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1lcmdlTWFwKCgpID0+IHRoaXMuZ2V0V29ya0l0ZW0oaXRlbS5wcm9jZXNzSWQsIGl0ZW0uaWQpKVxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVsZWFzZXMgdGhlIGxvY2sgZm9yIGEgV29ya0l0ZW0uXHJcbiAgICogQHBhcmFtIGl0ZW0gVGhlIHdvcmsgaXRlbSB0byBiZSB1bmxvY2tlZFxyXG4gICAqIEByZXR1cm5zIFRoZSB1cGRhdGVkIFdvcmtJdGVtXHJcbiAgICovXHJcbiAgdW5sb2NrV29ya0l0ZW0oaXRlbTogV29ya0l0ZW0pOiBPYnNlcnZhYmxlPFdvcmtJdGVtPiB7XHJcbiAgICByZXR1cm4gdGhpcy5iYWNrZW5kLmRlbChgL2JwbS9wcm9jZXNzLyR7aXRlbS5wcm9jZXNzSWR9LyR7aXRlbS5pZH0vbG9ja2ApLnBpcGUoXHJcbiAgICAgIG1lcmdlTWFwKCgpID0+IHRoaXMuZ2V0V29ya0l0ZW0oaXRlbS5wcm9jZXNzSWQsIGl0ZW0uaWQpKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFN0YXJ0cyBhbiBleGVjdXRhYmxlIHByb2Nlc3MuXHJcbiAgICogQHBhcmFtIGV4ZWN1dGFibGVQcm9jZXNzSWQgSUQgb2YgdGhlIGV4ZWN1dGFibGUgUHJvY2VzcyB0byBiZSBzdGFydGVkXHJcbiAgICogQHBhcmFtIGRhdGEgRGF0YSB0byBiZSBwYXNzZWQgdG8gdGhlIHByb2Nlc3MgKHNpbXBsZSBvYmplY3Qgb2Yga2V5L3ZhbHVlIHBhaXJzKVxyXG4gICAqIEBwYXJhbSBjb250ZW50cyBPYmplY3RzIHRvIGJlIGF0dGFjaGVkIHRvIHRoZSBwcm9jZXNzIChwcm9jZXNzLmZpbGUpLlxyXG4gICAqL1xyXG4gIHN0YXJ0UHJvY2VzcyhleGVjdXRhYmxlUHJvY2Vzc0lkOiBzdHJpbmcsIGRhdGE6IGFueSwgY29udGVudHM6IHtpZDogc3RyaW5nLCB0eXBlOiBzdHJpbmd9W10pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYmFja2VuZC5wb3N0KGAvYnBtL3Byb2Nlc3MvP21vZGVsaWQ9JHtleGVjdXRhYmxlUHJvY2Vzc0lkfWAsIHtcclxuICAgICAgZGF0YTogZGF0YSxcclxuICAgICAgY29udGVudHM6IGNvbnRlbnRzXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybnMgdGhlIGhpc3RvcnkgZm9yIGEgcHJvY2Vzcy4gV2hpY2ggZW50cmllcyBhcmUgcmV0dXJuZWQgZGVwZW5kcyBvbiB0aGVcclxuICAgKiBwZXJtaXNzaW9ucyBvZiB0aGUgY3VycmVudCB1c2VyLlxyXG4gICAqIEBwYXJhbSBwcm9jZXNzSWQgVGhlIElEIG9mIHRoZSBwcm9jZXNzIHRvIGZldGNoIGhpc3RvcnkgZm9yXHJcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxXb3JrSXRlbUhpc3RvcnlFbnRyeVtdPlxyXG4gICAqL1xyXG4gIGdldFByb2Nlc3NIaXN0b3J5KHByb2Nlc3NJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxXb3JrSXRlbUhpc3RvcnlFbnRyeVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5iYWNrZW5kXHJcbiAgICAgIC5nZXRKc29uKGAvYnBtL3Byb2Nlc3MvJHtwcm9jZXNzSWR9L2hpc3RvcnlgKVxyXG4gICAgICAucGlwZShtYXAocmVzID0+IHJlcyAmJiByZXMubGVuZ3RoID8gcmVzLm1hcChpdGVtID0+IG5ldyBXb3JrSXRlbUhpc3RvcnlFbnRyeShpdGVtKSkgOiBbXSkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVtb3ZlcyBhIGNvbnRlbnQgZnJvbSB0aGUgd29yayBpdGVtcyBmaWxlLlxyXG4gICAqIEBwYXJhbSBwcm9jZXNzSWQgVGhlIElEIG9mIHRoZSBwcm9jZXNzIHRvIHJlbW92ZSB0aGUgaXRlbSBmcm9tXHJcbiAgICogQHBhcmFtIHdvcmtJdGVtSWQgVGhlIElEIG9mIHRoZSB3b3JrIGl0ZW0gY29udGFpbmluZyB0aGUgZmlsZSBlbGVtZW50IHRvIGJlIHJlbW92ZWRcclxuICAgKiBAcGFyYW0gd29ya0l0ZW1Db250ZW50SWQgVGhlIHRoZSBJRCBvZiB0aGUgZmlsZSBlbGVtZW50IHRvIGJlIHJlbW92ZWRcclxuICAgKi9cclxuICByZW1vdmVGaWxlRWxlbWVudChwcm9jZXNzSWQ6IHN0cmluZywgd29ya0l0ZW1JZDogc3RyaW5nLCB3b3JrSXRlbUNvbnRlbnRJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmJhY2tlbmRcclxuICAgICAgLmRlbChgL3Byb2Nlc3MvJHtwcm9jZXNzSWR9L2ZpbGUvJHt3b3JrSXRlbUNvbnRlbnRJZH0/YWN0aXZpdHlpZD0ke3dvcmtJdGVtSWR9YCwgdGhpcy5iYWNrZW5kLmdldEJwbUJhc2UoKSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBZGQgY29udGVudHMgdG8gYSB3b3JrIGl0ZW1zIGZpbGUuXHJcbiAgICogQHBhcmFtIHByb2Nlc3NJZCBUaGUgSUQgb2YgdGhlIHByb2Nlc3NcclxuICAgKiBAcGFyYW0gd29ya0l0ZW1JZCBUaGUgSUQgb2YgdGhlIGFjdGl2aXR5XHJcbiAgICogQHBhcmFtIGVsZW1lbnRzIFRoZSBFbGVtZW50cyB0byBiZSBhZGRlZFxyXG4gICAqIEByZXR1cm5zIFRoZSB1cGRhdGVkIFdvcmtJdGVtXHJcbiAgICovXHJcbiAgYWRkRmlsZUVsZW1lbnRzKHByb2Nlc3NJZDogc3RyaW5nLCB3b3JrSXRlbUlkOiBzdHJpbmcsIGVsZW1lbnRzOiBEbXNPYmplY3RbXSk6IE9ic2VydmFibGU8V29ya0l0ZW0+IHtcclxuICAgIGNvbnN0IHRhc2tzID0gW107XHJcbiAgICBlbGVtZW50cy5mb3JFYWNoKChlKSA9PiB7XHJcbiAgICAgIHRhc2tzLnB1c2godGhpcy5iYWNrZW5kLnBvc3QoXHJcbiAgICAgICAgYC9wcm9jZXNzLyR7cHJvY2Vzc0lkfS9maWxlLyR7ZS5pZH0/dHlwZT0ke2UudHlwZS5uYW1lfSZhY3Rpdml0eWlkPSR7d29ya0l0ZW1JZH1gLFxyXG4gICAgICAgIHt9LCB0aGlzLmJhY2tlbmQuZ2V0QnBtQmFzZSgpKSk7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBvYnNlcnZhYmxlRm9ya0pvaW4odGFza3MpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1lcmdlTWFwKCgpID0+IHRoaXMuZ2V0V29ya0l0ZW0ocHJvY2Vzc0lkLCB3b3JrSXRlbUlkKSlcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFkZCBhIG9iamVjdHMgZnJvbSB0aGUgY2xpcGJvYXJkIHRvIGEgV29ya0l0ZW0uXHJcbiAgICogQHBhcmFtIHdvcmtJdGVtIFRoZSB3b3JrSXRlbSB0byBhZGQgdGhlIG9iamVjdHMgdG9cclxuICAgKiBAcGFyYW0gY2xpcGJvYXJkIENsaXBib2FyZCBvYmplY3QgaG9sZGluZyB1c2VyIHNlbGVjdGVkIG9iamVjdHNcclxuICAgKiBAcmV0dXJucyBUaGUgdXBkYXRlZCBXb3JrSXRlbVxyXG4gICAqL1xyXG4gIGFkZEZpbGVFbGVtZW50c0Zyb21DbGlwYm9hcmQod29ya0l0ZW06IFdvcmtJdGVtLCBjbGlwYm9hcmQ6IENsaXBib2FyZCk6IE9ic2VydmFibGU8V29ya0l0ZW0+IHtcclxuICAgIGlmICgod29ya0l0ZW0gJiYgd29ya0l0ZW0uZmlsZUVudHJ5UGVybWlzc2lvbnMuYWRkKSAmJiBjbGlwYm9hcmQgJiYgY2xpcGJvYXJkLmVsZW1lbnRzLmxlbmd0aCAmJiBjbGlwYm9hcmQuYWN0aW9uID09PSBDbGlwYm9hcmRBY3Rpb24uQ09QWSkge1xyXG4gICAgICBsZXQgY29udGVudHM6IERtc09iamVjdFtdO1xyXG4gICAgICBpZiAod29ya0l0ZW0uZmlsZS5sZW5ndGgpIHtcclxuICAgICAgICAvLyBvbmx5IGFkZCBpdGVtcyB0aGF0IGFyZSBub3QgYWxyZWFkeSBwYXJ0IG9mIHRoZSBhdHRhY2htZW50c1xyXG4gICAgICAgIGNvbnN0IGF0dGFjaG1lbnRJZHMgPSB3b3JrSXRlbS5maWxlLm1hcChlID0+IGUuaWQpO1xyXG4gICAgICAgIGNvbnRlbnRzID0gY2xpcGJvYXJkLmVsZW1lbnRzLmZpbHRlcihlID0+IGF0dGFjaG1lbnRJZHMuaW5kZXhPZihlLmlkKSA9PT0gLTEpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGNvbnRlbnRzID0gY2xpcGJvYXJkLmVsZW1lbnRzO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB0aGlzLmFkZEZpbGVFbGVtZW50cyh3b3JrSXRlbS5wcm9jZXNzSWQsIHdvcmtJdGVtLmlkLCBjb250ZW50cyk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZVRocm93RXJyb3IoJ2Vycm9yJyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
278
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnBtLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lby1zZGsvY29yZS9zcmMvbGliL3NlcnZpY2UvYnBtL2JwbS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLElBQUksa0JBQWtCLEVBQUUsRUFBRSxJQUFJLFlBQVksRUFBYyxhQUFhLEVBQUUsVUFBVSxJQUFJLG9CQUFvQixFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3ZJLE9BQU8sRUFBQyxRQUFRLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUV6RSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDcEQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBK0IsT0FBTyxFQUFFLFFBQVEsRUFBaUIsTUFBTSx1QkFBdUIsQ0FBQztBQUV0RyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFFbkU7Ozs7Ozs7OztHQVNHO0FBRUgsTUFBTSxPQUFPLFVBQVU7SUFVckIsWUFBb0IsWUFBaUMsRUFDM0MsT0FBdUIsRUFDdkIsWUFBMEIsRUFDMUIsWUFBMEI7UUFIaEIsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBQzNDLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ3ZCLGlC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LElBQUksU0FBUyxDQUFDLE1BQU0sS0FBSyxlQUFlLENBQUMsSUFBSSxFQUFFO1lBQzFJLElBQUksUUFBcUIsQ0FBQztZQUMxQixJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUN4Qiw4REFBOEQ7Z0JBQzlELE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNuRCxRQUFRLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQy9FO2lCQUFNO2dCQUNMLFFBQVEsR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDO2FBQy9CO1lBQ0QsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLEVBQUUsRUFBRSxRQUFRLENBQUMsQ0FBQztTQUN4RTthQUFNO1lBQ0wsT0FBTyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUN0QztJQUNILENBQUM7OztZQTVSRixVQUFVOzs7WUFmSCxtQkFBbUI7WUFMbkIsY0FBYztZQUlkLFlBQVk7WUFEWixZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtmb3JrSm9pbiBhcyBvYnNlcnZhYmxlRm9ya0pvaW4sIG9mIGFzIG9ic2VydmFibGVPZiwgT2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCwgdGhyb3dFcnJvciBhcyBvYnNlcnZhYmxlVGhyb3dFcnJvcn0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7bWVyZ2VNYXAsIHRhcCwgbWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7VXRpbHN9IGZyb20gJy4uLy4uL3V0aWwvdXRpbHMnO1xyXG5pbXBvcnQge0JhY2tlbmRTZXJ2aWNlfSBmcm9tICcuLi9iYWNrZW5kL2JhY2tlbmQuc2VydmljZSc7XHJcbmltcG9ydCB7V29ya0l0ZW1IaXN0b3J5RW50cnl9IGZyb20gJy4uLy4uL21vZGVsL3dvcmstaXRlbS1oaXN0b3J5Lm1vZGVsJztcclxuaW1wb3J0IHtEbXNPYmplY3R9IGZyb20gJy4uLy4uL21vZGVsL2Rtcy1vYmplY3QubW9kZWwnO1xyXG5pbXBvcnQge0luYm94U2VydmljZX0gZnJvbSAnLi4vaW5ib3gvaW5ib3guc2VydmljZSc7XHJcbmltcG9ydCB7RXZlbnRTZXJ2aWNlfSBmcm9tICcuLi9ldmVudHMvZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7Q2FwYWJpbGl0aWVzU2VydmljZX0gZnJvbSAnLi4vY2FwYWJpbGl0aWVzL2NhcGFiaWxpdGllcy5zZXJ2aWNlJztcclxuaW1wb3J0IHtFeGVjdXRhYmxlUHJvY2VzcywgRmlsZUVudHJ5LCBQcm9jZXNzLCBXb3JrSXRlbSwgV29ya0l0ZW1BY3Rpb259IGZyb20gJy4uLy4uL21vZGVsL2JwbS5tb2RlbCc7XHJcbmltcG9ydCB7Q2xpcGJvYXJkfSBmcm9tICcuLi9jbGlwYm9hcmQvY2xpcGJvYXJkLmludGVyZmFjZSc7XHJcbmltcG9ydCB7Q2xpcGJvYXJkQWN0aW9ufSBmcm9tICcuLi9jbGlwYm9hcmQvY2xpcGJvYXJkLWFjdGlvbi5lbnVtJztcclxuXHJcbi8qKlxyXG4gKiBgQnBtU2VydmljZWAgaGFuZGxlcyBpbnRlcmFjdGlvbiByZWxhdGVkIHRvIEJQTSB0YXNrcy5cclxuICpcclxuICogVGhlIG1haW4gcGFydHMgcHJvdmlkZWQgYW5kIHVzZWQgYnkgdGhpcyBzZXJ2aWNlIGFyZSBQcm9jZXNzZXMgYW5kIFdvcmtJdGVtcy5cclxuICogUHJvY2Vzc2VzIGFyZSBkZWZpbmVkIG9uIHRoZSBiYWNrZW5kIHNpZGUuIFRoZXkgZGVzY3JpYmUgYSBzZXQgb2YgdGFza3MgdGhhdCB3aWxsIGJlIGV4ZWN1dGVkIGJ5IHRoZSBwcm9jZXNzLlxyXG4gKiBUYXNrcyB0aGF0IHJlcXVpcmUgdXNlciBpbnRlcmFjdGlvbiBhcmUgcmVmZXJyZWQgdG8gYXMgV29ya0l0ZW1zLlxyXG4gKlxyXG4gKiBQcm9jZXNzZXMgY2FuIGJlIHJlbGF0ZWQgdG8gYSBzcGVjaWFsIG9iamVjdCB0eXBlLCBidXQgdGhleSBkb24ndCBoYXZlIHRvLiBJbiBhZGRpdGlvbiB0byB0aGF0IHRoZXkgY2FuIHJlZmVyXHJcbiAqIHRvIGRtcyBvYmplY3RzLlxyXG4gKi9cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQnBtU2VydmljZSB7XHJcbiAgaGFzTWFpbkV4ZWN1dGFibGVQcm9jZXNzZXM6IGJvb2xlYW47XHJcbiAgcHJpdmF0ZSBleGVjdXRhYmxlUHJvY2Vzc2VzOiBFeGVjdXRhYmxlUHJvY2Vzc1tdO1xyXG4gIHByaXZhdGUgcHJvY2Vzc0l0ZW1zOiBQcm9jZXNzW107XHJcbiAgcHJpdmF0ZSBwcm9jZXNzSXRlbXNTb3VyY2UgPSBuZXcgUmVwbGF5U3ViamVjdDxQcm9jZXNzW10+KDEpO1xyXG4gIC8qKlxyXG4gICAqIExvbmcgdGVybSBvYnNlcnZhYmxlIGVtaXR0aW5nIHRoZSBjdXJyZW50IHByb2Nlc3Nlc1xyXG4gICAqL1xyXG4gIHByb2Nlc3NJdGVtcyQ6IE9ic2VydmFibGU8UHJvY2Vzc1tdPiA9IHRoaXMucHJvY2Vzc0l0ZW1zU291cmNlLmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNhcGFiaWxpdGllczogQ2FwYWJpbGl0aWVzU2VydmljZSxcclxuICAgIHByaXZhdGUgYmFja2VuZDogQmFja2VuZFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGV2ZW50U2VydmljZTogRXZlbnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBpbmJveFNlcnZpY2U6IEluYm94U2VydmljZSkge1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0cmlldmUgYWxsIHByb2Nlc3NlcyBvZiB0aGUgY3VycmVudCB1c2VyLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHNpemUgTWF4aW11bSBudW1iZXIgb2YgcHJvY2Vzc2VzIHRvIGJlIGZldGNoZWRcclxuICAgKiBAcmV0dXJucyBMaXN0IG9mIFByb2Nlc3Nlc1xyXG4gICAqL1xyXG4gIGdldFByb2Nlc3NlcyhzaXplOiBudW1iZXIgPSAxMDAwKTogT2JzZXJ2YWJsZTxQcm9jZXNzW10+IHtcclxuICAgIHJldHVybiB0aGlzLmJhY2tlbmRcclxuICAgICAgLmdldEpzb24oYC9wcm9jZXNzL3VzZXI/c2l6ZT0ke3NpemV9YCwgdGhpcy5iYWNrZW5kLmdldEJwbUJhc2UoKSlcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKHJlc3BvbnNlID0+IHJlc3BvbnNlLmNvbnRlbnQubWFwKGl0ZW0gPT4gbmV3IFByb2Nlc3MoaXRlbSkpKSxcclxuICAgICAgICB0YXAoKHByb2Nlc3NlczogUHJvY2Vzc1tdKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnByb2Nlc3NJdGVtcyA9IHByb2Nlc3NlcztcclxuICAgICAgICAgIHRoaXMucHJvY2Vzc0l0ZW1zU291cmNlLm5leHQodGhpcy5wcm9jZXNzSXRlbXMpO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXR0ZXIgZm9yIHRoZSBleGVjdXRhYmxlIFByb2Nlc3Nlcy4gSWYgdHlwZXMgYXJlIHByb3ZpZGVkLCB5b3UnbGwgZ2V0XHJcbiAgICogb25seSB0aGUgcHJvY2Vzc2VzIHRoYXQgYXJlIGV4ZWN1dGFibGUgZm9yIGFsbCBvZiB0aGVtXHJcbiAgICogQHBhcmFtIHR5cGVzIExpc3Qgb2YgZG1zIG9iamVjdCB0eXBlcyB0byBmZXRjaCBleGVjdXRhYmxlIHByb2Nlc3NlcyBmb3JcclxuICAgKiBAcGFyYW0gdXNlQ2FjaGVkIElmIHRoZSBjYWNoZWQgZGF0YSBzaG91bGQgYmUgcmV0dXJuZWQgcmF0aGVyIHRoYW4gcmVxdWVzdGluZyBhZ2FpblxyXG4gICAqIEBwYXJhbSBhZGRpdGlvbmFsRGF0YSBJZiB0aGUgYWRkaXRpb25hbCBmb3JtIGRhdGEgc2hvdWxkIGJlIGFsc28gaW5jbHVkZWRcclxuICAgKiBAcGFyYW0gbW9kZWxpZCBUaGUgcHJvY2VzcyBtb2RlbCBJRCB0byBvbmx5IHJldHVybiB0aGUgZGF0YSBmb3Igb25lIHByb2Nlc3NcclxuICAgKiBAcmV0dXJucyBMaXN0IG9mIGV4ZWN1dGFibGUgcHJvY2Vzc2VzXHJcbiAgICovXHJcbiAgZ2V0RXhlY3V0YWJsZVByb2Nlc3Nlcyh0eXBlcz86IHN0cmluZ1tdLCB1c2VDYWNoZWQ/OiBib29sZWFuLCBhZGRpdGlvbmFsRGF0YT86IGJvb2xlYW4sIG1vZGVsaWQ/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPEV4ZWN1dGFibGVQcm9jZXNzW10+IHtcclxuICAgIGlmICh0aGlzLmNhcGFiaWxpdGllcy5oYXNDYXBhYmlsaXR5KCdicG0nKSkge1xyXG4gICAgICByZXR1cm4gKCEhdGhpcy5leGVjdXRhYmxlUHJvY2Vzc2VzICYmIHVzZUNhY2hlZCkgPyBvYnNlcnZhYmxlT2YodGhpcy5leGVjdXRhYmxlUHJvY2Vzc2VzKSA6IHRoaXMuZmV0Y2hFeGVjdXRhYmxlUHJvY2Vzc2VzKHR5cGVzLCBhZGRpdGlvbmFsRGF0YSwgbW9kZWxpZCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZU9mKFtdKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGluaXRFeGVjdXRhYmxlUHJvY2Vzc2VzKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgdXJpID0gJy9icG0vcHJvY2Vzcy9leGVjdXRhYmxlJztcclxuICAgIHJldHVybiB0aGlzLmJhY2tlbmQuZ2V0KHVyaSkucGlwZSh0YXAocmVzID0+IHRoaXMuaGFzTWFpbkV4ZWN1dGFibGVQcm9jZXNzZXMgPSByZXM/Lmxlbmd0aCkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0cyBleGVjdXRhYmxlIFByb2Nlc3NlcyBmb3IgYSBnaXZlbiBzZXQgb2YgZG1zIG9iamVjdC5Zb3UnbGwgZ2V0XHJcbiAgICogb25seSB0aGUgcHJvY2Vzc2VzIHRoYXQgYXJlIGV4ZWN1dGFibGUgZm9yIGFsbCBvZiB0aGVtLlxyXG4gICAqIEBwYXJhbSBkbXNPYmplY3RzIExpc3Qgb2YgZG1zIG9iamVjdHMgdG8gZmV0Y2ggZXhlY3V0YWJsZSBwcm9jZXNzZXMgZm9yXHJcbiAgICogQHJldHVybnMgTGlzdCBvZiBleGVjdXRhYmxlIHByb2Nlc3Nlc1xyXG4gICAqL1xyXG4gIGdldEV4ZWN1dGFibGVQcm9jZXNzZXNGb3JEbXNPYmplY3RzKGRtc09iamVjdHM6IERtc09iamVjdFtdKTogT2JzZXJ2YWJsZTxFeGVjdXRhYmxlUHJvY2Vzc1tdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXRFeGVjdXRhYmxlUHJvY2Vzc2VzKGRtc09iamVjdHMubWFwKG8gPT4gby50eXBlTmFtZSksIGZhbHNlLCB0cnVlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZldGNoZXMgZXhlY3V0YWJsZSBQcm9jZXNzZXMgZnJvbSB0aGUgYmFja2VuZC5cclxuICAgKiBAcGFyYW0gdHlwZXMgTGlzdCBvZiBkbXMgb2JqZWN0IHR5cGVzIHRvIGZldGNoIGV4ZWN1dGFibGUgcHJvY2Vzc2VzIGZvclxyXG4gICAqIEBwYXJhbSBhZGRpdGlvbmFsRGF0YSBJZiB0aGUgYWRkaXRpb25hbCBmb3JtIGRhdGEgc2hvdWxkIGJlIGFsc28gaW5jbHVkZWRcclxuICAgKiBAcGFyYW0gbW9kZWxpZCBUaGUgcHJvY2VzcyBtb2RlbCBJRCB0byBvbmx5IHJldHVybiB0aGUgZGF0YSBmb3Igb25lIHByb2Nlc3NcclxuICAgKiBAcmV0dXJucyBMaXN0IG9mIGV4ZWN1dGFibGUgcHJvY2Vzc2VzXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBmZXRjaEV4ZWN1dGFibGVQcm9jZXNzZXModHlwZXM/OiBzdHJpbmdbXSwgYWRkaXRpb25hbERhdGE/OiBib29sZWFuLCBtb2RlbGlkPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxFeGVjdXRhYmxlUHJvY2Vzc1tdPiB7XHJcbiAgICBsZXQgdXJpID0gJy9icG0vcHJvY2Vzcy9leGVjdXRhYmxlJztcclxuICAgIGlmIChhZGRpdGlvbmFsRGF0YSkge1xyXG4gICAgICB1cmkgKz0gJz9mb3JtPXRydWUmZmllbGRzPXRydWUnO1xyXG4gICAgfVxyXG4gICAgaWYgKHR5cGVzKSB7XHJcbiAgICAgIHVyaSArPSAoYWRkaXRpb25hbERhdGEgPyAnJicgOiAnPycpICsgYHR5cGU9JHt0eXBlcy5qb2luKCcsJyl9YDtcclxuICAgIH1cclxuICAgIGlmIChtb2RlbGlkKSB7XHJcbiAgICAgIHVyaSArPSAoYWRkaXRpb25hbERhdGEgfHwgdHlwZXMgPyAnJicgOiAnPycpICsgYG1vZGVsaWQ9JHttb2RlbGlkfWA7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5iYWNrZW5kLmdldCh1cmkpLnBpcGUoXHJcbiAgICAgIG1hcChyZXMgPT4gcmVzIGFzIEV4ZWN1dGFibGVQcm9jZXNzW10pLFxyXG4gICAgICB0YXAocmVzID0+IHtcclxuICAgICAgICAvLyBFeHRlbmQgZXhpc3RpbmcgcHJvY2Vzc2VzIHdpdGggYWRkaXRpb25hbCBkYXRhLCBpbnN0ZWFkIG9mIG92ZXJ3cml0aW5nIGFsbCBwcm9jZXNzZXNcclxuICAgICAgICBpZiAoYWRkaXRpb25hbERhdGEpIHtcclxuICAgICAgICAgIHJlcy5mb3JFYWNoKHByb2MgPT4ge1xyXG4gICAgICAgICAgICB2YXIgZXhpc3RpbmdQcm9jSW5kZXggPSB0aGlzLmV4ZWN1dGFibGVQcm9jZXNzZXMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbS5pZCA9PSBwcm9jLmlkKTtcclxuICAgICAgICAgICAgaWYgKGV4aXN0aW5nUHJvY0luZGV4ID09IC0xKVxyXG4gICAgICAgICAgICAgIHRoaXMuZXhlY3V0YWJsZVByb2Nlc3Nlcy5wdXNoKHByb2MpO1xyXG4gICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgdGhpcy5leGVjdXRhYmxlUHJvY2Vzc2VzW2V4aXN0aW5nUHJvY0luZGV4XSA9IHByb2M7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgdGhpcy5leGVjdXRhYmxlUHJvY2Vzc2VzID0gcmVzO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldHRlciBmb3IgYSBwcm9jZXNzZXMgZmlsZS4gVGhlIGZpbGUgb2YgYSBwcm9jZXNzIGNvbnRhaW5zXHJcbiAgICogZG1zIG9iamVjdHMgYXR0YWNoZWQgdG8gdGhlIHByb2Nlc3MuXHJcbiAgICogQHBhcmFtIHByb2Nlc3NJZCBJRCBvZiB0aGUgcHJvY2VzcyB0byBmZXRjaCBhdHRhY2hlZCBvYmplY3RzIGZvclxyXG4gICAqL1xyXG4gIGdldFByb2Nlc3NGaWxlKHByb2Nlc3NJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxGaWxlRW50cnlbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYmFja2VuZFxyXG4gICAgICAuZ2V0SnNvbihgL3Byb2Nlc3MvJHtwcm9jZXNzSWR9L2ZpbGVgLCB0aGlzLmJhY2tlbmQuZ2V0QnBtQmFzZSgpKS5waXBlKFxyXG4gICAgICAgIG1hcChyZXMgPT4gcmVzLmNvbnRlbnQubWFwKGkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgaWQ6IGkuZWxlbWVudGlkLFxyXG4gICAgICAgICAgICB0aXRsZTogaS50aXRsZSxcclxuICAgICAgICAgICAgZGVzY3JpcHRpb246IGkuZGVzY3JpcHRpb24gPyBpLmRlc2NyaXB0aW9uIDogJycsXHJcbiAgICAgICAgICAgIGljb25pZDogaS5pY29uaWQsXHJcbiAgICAgICAgICAgIGNyZWF0b3I6IGkuY3JlYXRvcixcclxuICAgICAgICAgICAgYWRkdGltZTogaS5hZGR0aW1lLFxyXG4gICAgICAgICAgICB0eXBlOiBpLnR5cGVcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfSkpXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgYSB3b3JrIGl0ZW0uXHJcbiAgICogQHBhcmFtIHByb2Nlc3NJZCBJRCBvZiB0aGUgcGFyZW50IHByb2Nlc3NcclxuICAgKiBAcGFyYW0gaXRlbUlkIElEIG9mIHRoZSB3b3JrIGl0ZW0gaXRzZWxmXHJcbiAgICogQHBhcmFtIG9wdGlvbnMgT3B0aW9ucyB0byBiZSBhZGRlZCB0byB0aGUgYmFja2VuZCBjYWxsXHJcbiAgICogQHJldHVybnMgYSBXb3JrSXRlbVxyXG4gICAqL1xyXG4gIGdldFdvcmtJdGVtKHByb2Nlc3NJZDogc3RyaW5nLCBpdGVtSWQ6IHN0cmluZywgb3B0aW9ucz86IGFueSk6IE9ic2VydmFibGU8V29ya0l0ZW0+IHtcclxuICAgIGNvbnN0IHBhcmFtcyA9IG9wdGlvbnMgPyBvcHRpb25zIDoge2Zvcm06IHRydWUsIGZpZWxkczogdHJ1ZX07XHJcbiAgICBjb25zdCB0YXNrcyA9IFtcclxuICAgICAgdGhpcy5iYWNrZW5kLmdldEpzb24oVXRpbHMuYnVpbGRVcmkoYC9icG0vcHJvY2Vzcy8ke3Byb2Nlc3NJZH0vJHtpdGVtSWR9YCwgcGFyYW1zKSksXHJcbiAgICAgIHRoaXMuZ2V0UHJvY2Vzc0ZpbGUocHJvY2Vzc0lkKVxyXG4gICAgXTtcclxuICAgIHJldHVybiBvYnNlcnZhYmxlRm9ya0pvaW4odGFza3MpLnBpcGUoXHJcbiAgICAgIG1hcChyZXMgPT4ge1xyXG4gICAgICAgIGNvbnN0IHdpID0gbmV3IFdvcmtJdGVtKHJlc1swXSk7XHJcbiAgICAgICAgd2kuc2V0RmlsZShyZXNbMV0pO1xyXG4gICAgICAgIHJldHVybiB3aTtcclxuICAgICAgfSkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2F2ZXMgYSB3b3JrIGl0ZW0uXHJcbiAgICogQHBhcmFtIGl0ZW0gVGhlIHdvcmsgaXRlbSB0byBiZSBzYXZlZFxyXG4gICAqIEByZXR1cm5zIFRoZSB1cGRhdGVkIFdvcmtJdGVtXHJcbiAgICovXHJcbiAgc2F2ZVdvcmtJdGVtKGl0ZW06IFdvcmtJdGVtKTogT2JzZXJ2YWJsZTxXb3JrSXRlbT4ge1xyXG4gICAgY29uc3Qge2lkLCBwcm9jZXNzSWQsIGZpbGUsIGRhdGF9ID0gaXRlbTtcclxuICAgIGNvbnN0IHBheWxvYWQgPSB7Y29udGVudHM6IGZpbGUsIGRhdGF9O1xyXG4gICAgY29uc3QgcGFyYW1zID0ge2tlZXBsb2NrOiB0cnVlLCBpc2F1dG9sb2NrOiBmYWxzZX07XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuYmFja2VuZFxyXG4gICAgICAucG9zdChVdGlscy5idWlsZFVyaShgL2JwbS9wcm9jZXNzLyR7cHJvY2Vzc0lkfS8ke2lkfS9zYXZlYCwgcGFyYW1zKSwgcGF5bG9hZClcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWVyZ2VNYXAoKCkgPT4gdGhpcy5nZXRXb3JrSXRlbShwcm9jZXNzSWQsIGlkKSlcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZvcndhcmRzIGEgd29yayBpdGVtLiBJZiBhIFdvcmtJdGVtIHByb3ZpZGVzIGRpZmZlcmVudCBhY3Rpb25zIChAbGluayBXb3JrSXRlbUFjdGlvbilcclxuICAgKiB5b3UgY2FuIHByb3ZpZGUgdGhlIHNlbGVjdGVkIGFjdGlvbiB0b28uXHJcbiAgICogQHBhcmFtIGl0ZW0gVGhlIHdvcmsgaXRlbSB0byBiZSBmb3J3YXJkZWRcclxuICAgKiBAcGFyYW0gYWN0aW9uIEFjdGlvbiB1c2VkIGZvciBmb3J3YXJkaW5nXHJcbiAgICovXHJcbiAgZm9yd2FyZFdvcmtJdGVtKGl0ZW06IFdvcmtJdGVtLCBhY3Rpb24/OiBXb3JrSXRlbUFjdGlvbik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBwYXJhbXMgPSB7a2VlcGxvY2s6IGZhbHNlLCBpc2F1dG9sb2NrOiBmYWxzZX07XHJcbiAgICBjb25zdCBwYXlsb2FkID0ge1xyXG4gICAgICBhY3Rpb246IGFjdGlvbixcclxuICAgICAgY29udGVudHM6IGl0ZW0uZmlsZSxcclxuICAgICAgZGF0YTogaXRlbS5kYXRhXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHRoaXMuYmFja2VuZFxyXG4gICAgICAucG9zdChVdGlscy5idWlsZFVyaShgL2JwbS9wcm9jZXNzLyR7aXRlbS5wcm9jZXNzSWR9LyR7aXRlbS5pZH0vc2F2ZWAsIHBhcmFtcyksIHBheWxvYWQpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIHRhcCgoKSA9PiB0aGlzLmluYm94U2VydmljZS51cGRhdGVJbmJveEl0ZW1zKGl0ZW0uaWQpKVxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTG9ja3MgYSBXb3JrSXRlbSBmb3IgdGhlIGN1cnJlbnQgdXNlciAocGVyc29uYWxpemF0aW9uKSwgbWVhbmluZyB0aGF0IHRoZVxyXG4gICAqIGN1cnJlbnQgdXNlciBpcyBub3cgaW4gY2hhcmdlIG9mIGZ1bGZpbGxpbmcgdGhlIFdvcmtJdGVtIHRhc2suXHJcbiAgICogQHBhcmFtIGl0ZW0gVGhlIFdvcmtJdGVtIHRvIGJlIGxvY2tlZFxyXG4gICAqIEByZXR1cm5zIFRoZSB1cGRhdGVkIFdvcmtJdGVtXHJcbiAgICovXHJcbiAgbG9ja1dvcmtJdGVtKGl0ZW06IFdvcmtJdGVtKTogT2JzZXJ2YWJsZTxXb3JrSXRlbT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYmFja2VuZC5wdXQoYC9icG0vcHJvY2Vzcy8ke2l0ZW0ucHJvY2Vzc0lkfS8ke2l0ZW0uaWR9L2xvY2tgKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtZXJnZU1hcCgoKSA9PiB0aGlzLmdldFdvcmtJdGVtKGl0ZW0ucHJvY2Vzc0lkLCBpdGVtLmlkKSlcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlbGVhc2VzIHRoZSBsb2NrIGZvciBhIFdvcmtJdGVtLlxyXG4gICAqIEBwYXJhbSBpdGVtIFRoZSB3b3JrIGl0ZW0gdG8gYmUgdW5sb2NrZWRcclxuICAgKiBAcmV0dXJucyBUaGUgdXBkYXRlZCBXb3JrSXRlbVxyXG4gICAqL1xyXG4gIHVubG9ja1dvcmtJdGVtKGl0ZW06IFdvcmtJdGVtKTogT2JzZXJ2YWJsZTxXb3JrSXRlbT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYmFja2VuZC5kZWwoYC9icG0vcHJvY2Vzcy8ke2l0ZW0ucHJvY2Vzc0lkfS8ke2l0ZW0uaWR9L2xvY2tgKS5waXBlKFxyXG4gICAgICBtZXJnZU1hcCgoKSA9PiB0aGlzLmdldFdvcmtJdGVtKGl0ZW0ucHJvY2Vzc0lkLCBpdGVtLmlkKSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTdGFydHMgYW4gZXhlY3V0YWJsZSBwcm9jZXNzLlxyXG4gICAqIEBwYXJhbSBleGVjdXRhYmxlUHJvY2Vzc0lkIElEIG9mIHRoZSBleGVjdXRhYmxlIFByb2Nlc3MgdG8gYmUgc3RhcnRlZFxyXG4gICAqIEBwYXJhbSBkYXRhIERhdGEgdG8gYmUgcGFzc2VkIHRvIHRoZSBwcm9jZXNzIChzaW1wbGUgb2JqZWN0IG9mIGtleS92YWx1ZSBwYWlycylcclxuICAgKiBAcGFyYW0gY29udGVudHMgT2JqZWN0cyB0byBiZSBhdHRhY2hlZCB0byB0aGUgcHJvY2VzcyAocHJvY2Vzcy5maWxlKS5cclxuICAgKi9cclxuICBzdGFydFByb2Nlc3MoZXhlY3V0YWJsZVByb2Nlc3NJZDogc3RyaW5nLCBkYXRhOiBhbnksIGNvbnRlbnRzOiB7aWQ6IHN0cmluZywgdHlwZTogc3RyaW5nfVtdKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmJhY2tlbmQucG9zdChgL2JwbS9wcm9jZXNzLz9tb2RlbGlkPSR7ZXhlY3V0YWJsZVByb2Nlc3NJZH1gLCB7XHJcbiAgICAgIGRhdGE6IGRhdGEsXHJcbiAgICAgIGNvbnRlbnRzOiBjb250ZW50c1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXR1cm5zIHRoZSBoaXN0b3J5IGZvciBhIHByb2Nlc3MuIFdoaWNoIGVudHJpZXMgYXJlIHJldHVybmVkIGRlcGVuZHMgb24gdGhlXHJcbiAgICogcGVybWlzc2lvbnMgb2YgdGhlIGN1cnJlbnQgdXNlci5cclxuICAgKiBAcGFyYW0gcHJvY2Vzc0lkIFRoZSBJRCBvZiB0aGUgcHJvY2VzcyB0byBmZXRjaCBoaXN0b3J5IGZvclxyXG4gICAqIEByZXR1cm5zIE9ic2VydmFibGU8V29ya0l0ZW1IaXN0b3J5RW50cnlbXT5cclxuICAgKi9cclxuICBnZXRQcm9jZXNzSGlzdG9yeShwcm9jZXNzSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8V29ya0l0ZW1IaXN0b3J5RW50cnlbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYmFja2VuZFxyXG4gICAgICAuZ2V0SnNvbihgL2JwbS9wcm9jZXNzLyR7cHJvY2Vzc0lkfS9oaXN0b3J5YClcclxuICAgICAgLnBpcGUobWFwKHJlcyA9PiByZXMgJiYgcmVzLmxlbmd0aCA/IHJlcy5tYXAoaXRlbSA9PiBuZXcgV29ya0l0ZW1IaXN0b3J5RW50cnkoaXRlbSkpIDogW10pKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlbW92ZXMgYSBjb250ZW50IGZyb20gdGhlIHdvcmsgaXRlbXMgZmlsZS5cclxuICAgKiBAcGFyYW0gcHJvY2Vzc0lkIFRoZSBJRCBvZiB0aGUgcHJvY2VzcyB0byByZW1vdmUgdGhlIGl0ZW0gZnJvbVxyXG4gICAqIEBwYXJhbSB3b3JrSXRlbUlkIFRoZSBJRCBvZiB0aGUgd29yayBpdGVtIGNvbnRhaW5pbmcgdGhlIGZpbGUgZWxlbWVudCB0byBiZSByZW1vdmVkXHJcbiAgICogQHBhcmFtIHdvcmtJdGVtQ29udGVudElkIFRoZSB0aGUgSUQgb2YgdGhlIGZpbGUgZWxlbWVudCB0byBiZSByZW1vdmVkXHJcbiAgICovXHJcbiAgcmVtb3ZlRmlsZUVsZW1lbnQocHJvY2Vzc0lkOiBzdHJpbmcsIHdvcmtJdGVtSWQ6IHN0cmluZywgd29ya0l0ZW1Db250ZW50SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5iYWNrZW5kXHJcbiAgICAgIC5kZWwoYC9wcm9jZXNzLyR7cHJvY2Vzc0lkfS9maWxlLyR7d29ya0l0ZW1Db250ZW50SWR9P2FjdGl2aXR5aWQ9JHt3b3JrSXRlbUlkfWAsIHRoaXMuYmFja2VuZC5nZXRCcG1CYXNlKCkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWRkIGNvbnRlbnRzIHRvIGEgd29yayBpdGVtcyBmaWxlLlxyXG4gICAqIEBwYXJhbSBwcm9jZXNzSWQgVGhlIElEIG9mIHRoZSBwcm9jZXNzXHJcbiAgICogQHBhcmFtIHdvcmtJdGVtSWQgVGhlIElEIG9mIHRoZSBhY3Rpdml0eVxyXG4gICAqIEBwYXJhbSBlbGVtZW50cyBUaGUgRWxlbWVudHMgdG8gYmUgYWRkZWRcclxuICAgKiBAcmV0dXJucyBUaGUgdXBkYXRlZCBXb3JrSXRlbVxyXG4gICAqL1xyXG4gIGFkZEZpbGVFbGVtZW50cyhwcm9jZXNzSWQ6IHN0cmluZywgd29ya0l0ZW1JZDogc3RyaW5nLCBlbGVtZW50czogRG1zT2JqZWN0W10pOiBPYnNlcnZhYmxlPFdvcmtJdGVtPiB7XHJcbiAgICBjb25zdCB0YXNrcyA9IFtdO1xyXG4gICAgZWxlbWVudHMuZm9yRWFjaCgoZSkgPT4ge1xyXG4gICAgICB0YXNrcy5wdXNoKHRoaXMuYmFja2VuZC5wb3N0KFxyXG4gICAgICAgIGAvcHJvY2Vzcy8ke3Byb2Nlc3NJZH0vZmlsZS8ke2UuaWR9P3R5cGU9JHtlLnR5cGUubmFtZX0mYWN0aXZpdHlpZD0ke3dvcmtJdGVtSWR9YCxcclxuICAgICAgICB7fSwgdGhpcy5iYWNrZW5kLmdldEJwbUJhc2UoKSkpO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gb2JzZXJ2YWJsZUZvcmtKb2luKHRhc2tzKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtZXJnZU1hcCgoKSA9PiB0aGlzLmdldFdvcmtJdGVtKHByb2Nlc3NJZCwgd29ya0l0ZW1JZCkpXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBZGQgYSBvYmplY3RzIGZyb20gdGhlIGNsaXBib2FyZCB0byBhIFdvcmtJdGVtLlxyXG4gICAqIEBwYXJhbSB3b3JrSXRlbSBUaGUgd29ya0l0ZW0gdG8gYWRkIHRoZSBvYmplY3RzIHRvXHJcbiAgICogQHBhcmFtIGNsaXBib2FyZCBDbGlwYm9hcmQgb2JqZWN0IGhvbGRpbmcgdXNlciBzZWxlY3RlZCBvYmplY3RzXHJcbiAgICogQHJldHVybnMgVGhlIHVwZGF0ZWQgV29ya0l0ZW1cclxuICAgKi9cclxuICBhZGRGaWxlRWxlbWVudHNGcm9tQ2xpcGJvYXJkKHdvcmtJdGVtOiBXb3JrSXRlbSwgY2xpcGJvYXJkOiBDbGlwYm9hcmQpOiBPYnNlcnZhYmxlPFdvcmtJdGVtPiB7XHJcbiAgICBpZiAoKHdvcmtJdGVtICYmIHdvcmtJdGVtLmZpbGVFbnRyeVBlcm1pc3Npb25zLmFkZCkgJiYgY2xpcGJvYXJkICYmIGNsaXBib2FyZC5lbGVtZW50cy5sZW5ndGggJiYgY2xpcGJvYXJkLmFjdGlvbiA9PT0gQ2xpcGJvYXJkQWN0aW9uLkNPUFkpIHtcclxuICAgICAgbGV0IGNvbnRlbnRzOiBEbXNPYmplY3RbXTtcclxuICAgICAgaWYgKHdvcmtJdGVtLmZpbGUubGVuZ3RoKSB7XHJcbiAgICAgICAgLy8gb25seSBhZGQgaXRlbXMgdGhhdCBhcmUgbm90IGFscmVhZHkgcGFydCBvZiB0aGUgYXR0YWNobWVudHNcclxuICAgICAgICBjb25zdCBhdHRhY2htZW50SWRzID0gd29ya0l0ZW0uZmlsZS5tYXAoZSA9PiBlLmlkKTtcclxuICAgICAgICBjb250ZW50cyA9IGNsaXBib2FyZC5lbGVtZW50cy5maWx0ZXIoZSA9PiBhdHRhY2htZW50SWRzLmluZGV4T2YoZS5pZCkgPT09IC0xKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb250ZW50cyA9IGNsaXBib2FyZC5lbGVtZW50cztcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gdGhpcy5hZGRGaWxlRWxlbWVudHMod29ya0l0ZW0ucHJvY2Vzc0lkLCB3b3JrSXRlbS5pZCwgY29udGVudHMpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG9ic2VydmFibGVUaHJvd0Vycm9yKCdlcnJvcicpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -58,6 +58,14 @@ export class Config {
|
|
|
58
58
|
getClientLocales() {
|
|
59
59
|
return this.cfg['languages'];
|
|
60
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* Getter for the supported client locales
|
|
63
|
+
* @returns supported client locales
|
|
64
|
+
*/
|
|
65
|
+
getSupportedClientLocales() {
|
|
66
|
+
return ['en', 'de', 'ar', 'es', 'pt', 'fr', 'zh', 'lv', 'ru', 'it', 'nl', 'sk', 'pl', 'uk', 'ja', 'ko', 'hi', 'bn', 'de-CH', 'zh-Hant',
|
|
67
|
+
'th', 'vi', 'en-GB', 'he'];
|
|
68
|
+
}
|
|
61
69
|
/**
|
|
62
70
|
* Get the dashboards background image
|
|
63
71
|
* @returns background image uri for the dashboards background image
|
|
@@ -104,4 +112,4 @@ Config.ctorParameters = () => [
|
|
|
104
112
|
{ type: TranslateService },
|
|
105
113
|
{ type: EventService }
|
|
106
114
|
];
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lby1zZGsvY29yZS9zcmMvbGliL3NlcnZpY2UvY29uZmlnL2NvbmZpZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUVyRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFNUM7O0dBRUc7QUFFSCxNQUFNLE9BQU8sTUFBTTtJQUlqQjs7T0FFRztJQUNILFlBQW9CLFNBQTJCLEVBQVUsS0FBbUI7UUFBeEQsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFjO1FBTHBFLFFBQUcsR0FBZ0IsSUFBSSxDQUFDO0lBTWhDLENBQUM7SUFFRDs7T0FFRztJQUNLLGNBQWM7UUFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7O09BR0c7SUFDSSxHQUFHLENBQUMsR0FBZ0I7UUFDekIsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDaEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUMsQ0FBQztRQUM3RCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUdELFlBQVk7UUFDVixJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xDLE9BQU8sQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLFFBQWdCO1FBQzVCLE9BQU8sUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDckUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsUUFBZ0I7UUFDNUIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRDs7O09BR0c7SUFDSSxnQkFBZ0I7UUFDckIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRDs7O09BR0c7SUFDSSx5QkFBeUI7UUFDOUIsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxTQUFTO1lBQ3BJLElBQUksRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRDs7O09BR0c7SUFDSSwyQkFBMkI7UUFDaEMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLDBCQUEwQixDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVEOzs7T0FHRztJQUNJLHFCQUFxQjtRQUMxQixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLHFCQUFxQjtRQUMxQixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2xDLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUNwRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7O09BR0c7SUFDSSxzQkFBc0I7UUFDM0IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzNELE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDaEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksY0FBYztRQUNuQixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDM0IsQ0FBQzs7O1lBL0dGLFVBQVU7OztZQVRILGdCQUFnQjtZQUVoQixZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHtVdGlsc30gZnJvbSAnLi4vLi4vdXRpbC91dGlscyc7XHJcbmltcG9ydCB7RXZlbnRTZXJ2aWNlfSBmcm9tICcuLi9ldmVudHMvZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7RW5haW9Db25maWd9IGZyb20gJy4vY29uZmlnLmludGVyZmFjZSc7XHJcbmltcG9ydCB7RW5haW9FdmVudH0gZnJvbSAnLi4vZXZlbnRzL2V2ZW50cyc7XHJcblxyXG4vKipcclxuICogQ29sbGVjdGlvbiBvZiBhbGwgQ29uZmlndXJhdGlvbnNcclxuICovXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIENvbmZpZyB7XHJcblxyXG4gIHByaXZhdGUgY2ZnOiBFbmFpb0NvbmZpZyA9IG51bGw7XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSwgcHJpdmF0ZSBldmVudDogRXZlbnRTZXJ2aWNlKSB7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBpbml0aWFsaXplR3JpZCgpIHtcclxuICAgIHRoaXMuZXZlbnQudHJpZ2dlcihFbmFpb0V2ZW50LkVPX0xJQ0VOU0VfR1JJRCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICogU2V0IGR1cmluZyBhcHAgaW5pdCAoc2VlIENvcmVJbml0KVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZXQoY2ZnOiBFbmFpb0NvbmZpZykge1xyXG4gICAgdGhpcy5jZmcgPSBjZmc7XHJcbiAgICBjb25zdCBsYW5ndWFnZXMgPSB0aGlzLmdldENsaWVudExvY2FsZXMoKS5tYXAobGFuZyA9PiBsYW5nLmlzbyk7XHJcbiAgICB0aGlzLnRyYW5zbGF0ZS5hZGRMYW5ncyhsYW5ndWFnZXMpO1xyXG4gICAgdGhpcy50cmFuc2xhdGUuc2V0RGVmYXVsdExhbmcodGhpcy5nZXREZWZhdWx0Q2xpZW50TG9jYWxlKCkpO1xyXG4gICAgdGhpcy5pbml0aWFsaXplR3JpZCgpO1xyXG4gIH1cclxuXHJcblxyXG4gIGdldExvZ2luQmFzZSgpOiBzdHJpbmcge1xyXG4gICAgbGV0IGxiID0gdGhpcy5nZXRVcmkoJ2xvZ2luQmFzZScpO1xyXG4gICAgcmV0dXJuIChsYiAmJiBsYiAhPT0gJy8nKSA/IGxiIDogJyc7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXR1cm5zIG5lc3RlZCBwcm9wZXJ0eSBvZiBjb25maWcgfCBjb21wbGV0ZSBjb25maWcgYnkgZGVmYXVsdFxyXG4gICAqIEBwYXJhbSBwcm9wZXJ0eSBUaGUgbmFtZSBvZiB0aGUgcHJvcGVydHkgdG8gYmUgcmV0cmlldmVkXHJcbiAgICovXHJcbiAgcHVibGljIGdldFJhdyhwcm9wZXJ0eTogc3RyaW5nKTogYW55IHtcclxuICAgIHJldHVybiBwcm9wZXJ0eSA/IFV0aWxzLmdldFByb3BlcnR5KHRoaXMuY2ZnLCBwcm9wZXJ0eSkgOiB0aGlzLmNmZztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldHRlciBmb3IgdGhlIFVSSVxyXG4gICAqIEBwYXJhbSBwcm9wZXJ0eSBUaGUgbmFtZSBvZiB0aGUgcHJvcGVydHkvdXJpIHRvIGJlIHJldHJpZXZlZFxyXG4gICAqIEByZXR1cm5zIHZhbHVlIG9mIHRoZSBwcm9wZXJ0eSBmcm9tIHRoZSBVUkktU2VjdGlvbiBvZiB0aGUgY29uZmlnXHJcbiAgICovXHJcbiAgcHVibGljIGdldFVyaShwcm9wZXJ0eTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmNmZ1sndXJpJ11bcHJvcGVydHldO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0dGVyIGZvciB0aGUgYXZhaWxhYmxlIGNsaWVudCBsb2NhbGVzXHJcbiAgICogQHJldHVybnMgYXZhaWxhYmxlIGNsaWVudCBsb2NhbGVzXHJcbiAgICovXHJcbiAgcHVibGljIGdldENsaWVudExvY2FsZXMoKTogYW55W10ge1xyXG4gICAgcmV0dXJuIHRoaXMuY2ZnWydsYW5ndWFnZXMnXTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldHRlciBmb3IgdGhlIHN1cHBvcnRlZCBjbGllbnQgbG9jYWxlc1xyXG4gICAqIEByZXR1cm5zIHN1cHBvcnRlZCBjbGllbnQgbG9jYWxlc1xyXG4gICAqL1xyXG4gIHB1YmxpYyBnZXRTdXBwb3J0ZWRDbGllbnRMb2NhbGVzKCk6IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiBbJ2VuJywgJ2RlJywgJ2FyJywgJ2VzJywgJ3B0JywgJ2ZyJywgJ3poJywgJ2x2JywgJ3J1JywgJ2l0JywgJ25sJywgJ3NrJywgJ3BsJywgJ3VrJywgJ2phJywgJ2tvJywgJ2hpJywgJ2JuJywgJ2RlLUNIJywgJ3poLUhhbnQnLFxyXG4gICAgICAndGgnLCAndmknLCAnZW4tR0InLCAnaGUnXTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCB0aGUgZGFzaGJvYXJkcyBiYWNrZ3JvdW5kIGltYWdlXHJcbiAgICogQHJldHVybnMgYmFja2dyb3VuZCBpbWFnZSB1cmkgZm9yIHRoZSBkYXNoYm9hcmRzIGJhY2tncm91bmQgaW1hZ2VcclxuICAgKi9cclxuICBwdWJsaWMgZ2V0RGFzaGJvYXJkQmFja2dyb3VuZEltYWdlKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5jZmdbJ2Rhc2hib2FyZEJhY2tncm91bmRJbWFnZSddO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IHRoZSBzaWRlYmFycyBoZWFkZXIgYmFja2dyb3VuZCBpbWFnZVxyXG4gICAqIEByZXR1cm5zIGJhY2tncm91bmQgaW1hZ2UgdXJpIGZvciB0aGUgc2lkZWJhcnMgaGVhZGVyIGJhY2tncm91bmQgaW1hZ2VcclxuICAgKi9cclxuICBwdWJsaWMgZ2V0U2lkZUJhckhlYWRlckltYWdlKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5jZmdbJ3NpZGVCYXJIZWFkZXJJbWFnZSddO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IHRoZSBuYXZpZ2F0aW9uIGJhciBpbWFnZSAoTG9nbylcclxuICAgKiBvbmx5IGFjY2VwdHMgc3ZnLlxyXG4gICAqIEByZXR1cm5zIGJhY2tncm91bmQgaW1hZ2UgdXJpIGZvciB0aGUgTmF2aWdhdGlvbmJhciAoTG9nbylcclxuICAgKi9cclxuICBwdWJsaWMgZ2V0TmF2aWdhdGlvbkJhckltYWdlKCk6IHN0cmluZyB7XHJcbiAgICBsZXQgbG9nbyA9IHRoaXMuY2ZnWyduYXZCYXJMb2dvJ107XHJcbiAgICBsb2dvID0gbG9nby5lbmRzV2l0aCgnLnN2ZycpID8gbG9nbyA6IGA8c3ZnPjwvc3ZnPmA7XHJcbiAgICByZXR1cm4gbG9nbztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCB0aGUgZGVmYXVsdCBjbGllbnQgbG9jYWxlXHJcbiAgICogQHJldHVybnMgSVNPIHN0cmluZyBvZiB0aGUgbG9jYWxlXHJcbiAgICovXHJcbiAgcHVibGljIGdldERlZmF1bHRDbGllbnRMb2NhbGUoKSB7XHJcbiAgICBjb25zdCBsYW5nID0gdGhpcy5nZXRDbGllbnRMb2NhbGVzKCkuZmluZChfID0+IF8uZmFsbGJhY2spO1xyXG4gICAgcmV0dXJuIGxhbmcgPyBsYW5nLmlzbyA6ICdlbic7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXR0ZXIgZm9yIHRoZSBBZ2VudCBDb25maWd1cmF0aW9uXHJcbiAgICovXHJcbiAgcHVibGljIGdldEFnZW50Q29uZmlnKCk6IGFueSB7XHJcbiAgICByZXR1cm4gdGhpcy5jZmdbJ2FnZW50J107XHJcbiAgfVxyXG59XHJcbiJdfQ==
|