@tilde-nlp/ngx-translate 2.1.7 → 2.1.9

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.
Files changed (21) hide show
  1. package/esm2020/lib/modules/tld-term/create-collection/create-collection.component.mjs +9 -3
  2. package/esm2020/lib/modules/tld-term/services/api-v2/mt-term-v2.service.mjs +9 -6
  3. package/esm2020/lib/modules/tld-term/services/engine-term/models/engine-term-collection.model.mjs +1 -1
  4. package/esm2020/lib/modules/tld-term/services/engine-term/models/update-engine-terms-request-params.model.mjs +1 -1
  5. package/esm2020/lib/modules/tld-term/services/models/combined-collection.model.mjs +14 -9
  6. package/esm2020/lib/modules/tld-term/services/models/mt-collection.model.mjs +1 -1
  7. package/esm2020/lib/modules/tld-term/services/terminology.service.mjs +3 -2
  8. package/esm2020/lib/modules/tld-term/tld-term-collection/tld-term-collection.component.mjs +1 -1
  9. package/fesm2015/tilde-nlp-ngx-translate.mjs +36 -20
  10. package/fesm2015/tilde-nlp-ngx-translate.mjs.map +1 -1
  11. package/fesm2020/tilde-nlp-ngx-translate.mjs +31 -16
  12. package/fesm2020/tilde-nlp-ngx-translate.mjs.map +1 -1
  13. package/lib/modules/tld-term/create-collection/create-collection.component.d.ts +4 -2
  14. package/lib/modules/tld-term/services/engine-term/models/engine-term-collection.model.d.ts +2 -0
  15. package/lib/modules/tld-term/services/engine-term/models/update-engine-terms-request-params.model.d.ts +1 -0
  16. package/lib/modules/tld-term/services/models/combined-collection.model.d.ts +3 -1
  17. package/lib/modules/tld-term/services/models/mt-collection.model.d.ts +2 -0
  18. package/package.json +1 -1
  19. package/src/assets/webcomponent/tld-translate.js +1 -1
  20. package/tilde-nlp-ngx-translate-2.1.9.tgz +0 -0
  21. package/tilde-nlp-ngx-translate-2.1.7.tgz +0 -0
@@ -1,4 +1,4 @@
1
- import { Component, Input } from '@angular/core';
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
2
  import { ErrorCode } from '../../tld-common/models';
3
3
  import { TldTermCreateCollectionDialogComponent } from '../tld-term-create-collection-dialog/tld-term-create-collection-dialog.component';
4
4
  import * as i0 from "@angular/core";
@@ -12,6 +12,7 @@ export class CreateCollectionComponent {
12
12
  this.translate = translate;
13
13
  this.dialog = dialog;
14
14
  this.terminologyService = terminologyService;
15
+ this.collectionCreated = new EventEmitter();
15
16
  }
16
17
  ngOnInit() {
17
18
  }
@@ -28,6 +29,9 @@ export class CreateCollectionComponent {
28
29
  return;
29
30
  }
30
31
  this.terminologyService.create(this.sourceLanguageCode, this.targetLanguageCode, collectionName).subscribe({
32
+ next: (collection) => {
33
+ this.collectionCreated.emit(collection);
34
+ },
31
35
  error: (err) => {
32
36
  console.error(err);
33
37
  const error = { ErrorCode: ErrorCode.COLLECTION_CREATE };
@@ -39,7 +43,7 @@ export class CreateCollectionComponent {
39
43
  }
40
44
  }
41
45
  CreateCollectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CreateCollectionComponent, deps: [{ token: i1.TranslateService }, { token: i2.MatDialog }, { token: i3.TerminologyService }], target: i0.ɵɵFactoryTarget.Component });
42
- CreateCollectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CreateCollectionComponent, selector: "tld-create-collection", inputs: { sourceLanguageCode: "sourceLanguageCode", targetLanguageCode: "targetLanguageCode" }, ngImport: i0, template: "<button mat-flat-button color=\"accent\" (click)=\"create()\" fxHide.lt-sm>\r\n {{'TERM_COLLECTIONS.CREATE' | translate}}\r\n</button>\r\n", styles: [""], dependencies: [{ kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i5.DefaultShowHideDirective, selector: " [fxShow], [fxShow.print], [fxShow.xs], [fxShow.sm], [fxShow.md], [fxShow.lg], [fxShow.xl], [fxShow.lt-sm], [fxShow.lt-md], [fxShow.lt-lg], [fxShow.lt-xl], [fxShow.gt-xs], [fxShow.gt-sm], [fxShow.gt-md], [fxShow.gt-lg], [fxHide], [fxHide.print], [fxHide.xs], [fxHide.sm], [fxHide.md], [fxHide.lg], [fxHide.xl], [fxHide.lt-sm], [fxHide.lt-md], [fxHide.lt-lg], [fxHide.lt-xl], [fxHide.gt-xs], [fxHide.gt-sm], [fxHide.gt-md], [fxHide.gt-lg]", inputs: ["fxShow", "fxShow.print", "fxShow.xs", "fxShow.sm", "fxShow.md", "fxShow.lg", "fxShow.xl", "fxShow.lt-sm", "fxShow.lt-md", "fxShow.lt-lg", "fxShow.lt-xl", "fxShow.gt-xs", "fxShow.gt-sm", "fxShow.gt-md", "fxShow.gt-lg", "fxHide", "fxHide.print", "fxHide.xs", "fxHide.sm", "fxHide.md", "fxHide.lg", "fxHide.xl", "fxHide.lt-sm", "fxHide.lt-md", "fxHide.lt-lg", "fxHide.lt-xl", "fxHide.gt-xs", "fxHide.gt-sm", "fxHide.gt-md", "fxHide.gt-lg"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
46
+ CreateCollectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CreateCollectionComponent, selector: "tld-create-collection", inputs: { sourceLanguageCode: "sourceLanguageCode", targetLanguageCode: "targetLanguageCode" }, outputs: { collectionCreated: "collectionCreated" }, ngImport: i0, template: "<button mat-flat-button color=\"accent\" (click)=\"create()\" fxHide.lt-sm>\r\n {{'TERM_COLLECTIONS.CREATE' | translate}}\r\n</button>\r\n", styles: [""], dependencies: [{ kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i5.DefaultShowHideDirective, selector: " [fxShow], [fxShow.print], [fxShow.xs], [fxShow.sm], [fxShow.md], [fxShow.lg], [fxShow.xl], [fxShow.lt-sm], [fxShow.lt-md], [fxShow.lt-lg], [fxShow.lt-xl], [fxShow.gt-xs], [fxShow.gt-sm], [fxShow.gt-md], [fxShow.gt-lg], [fxHide], [fxHide.print], [fxHide.xs], [fxHide.sm], [fxHide.md], [fxHide.lg], [fxHide.xl], [fxHide.lt-sm], [fxHide.lt-md], [fxHide.lt-lg], [fxHide.lt-xl], [fxHide.gt-xs], [fxHide.gt-sm], [fxHide.gt-md], [fxHide.gt-lg]", inputs: ["fxShow", "fxShow.print", "fxShow.xs", "fxShow.sm", "fxShow.md", "fxShow.lg", "fxShow.xl", "fxShow.lt-sm", "fxShow.lt-md", "fxShow.lt-lg", "fxShow.lt-xl", "fxShow.gt-xs", "fxShow.gt-sm", "fxShow.gt-md", "fxShow.gt-lg", "fxHide", "fxHide.print", "fxHide.xs", "fxHide.sm", "fxHide.md", "fxHide.lg", "fxHide.xl", "fxHide.lt-sm", "fxHide.lt-md", "fxHide.lt-lg", "fxHide.lt-xl", "fxHide.gt-xs", "fxHide.gt-sm", "fxHide.gt-md", "fxHide.gt-lg"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
43
47
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CreateCollectionComponent, decorators: [{
44
48
  type: Component,
45
49
  args: [{ selector: 'tld-create-collection', template: "<button mat-flat-button color=\"accent\" (click)=\"create()\" fxHide.lt-sm>\r\n {{'TERM_COLLECTIONS.CREATE' | translate}}\r\n</button>\r\n" }]
@@ -47,5 +51,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
47
51
  type: Input
48
52
  }], targetLanguageCode: [{
49
53
  type: Input
54
+ }], collectionCreated: [{
55
+ type: Output
50
56
  }] } });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvbGxlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGxkLXRyYW5zbGF0ZS9zcmMvbGliL21vZHVsZXMvdGxkLXRlcm0vY3JlYXRlLWNvbGxlY3Rpb24vY3JlYXRlLWNvbGxlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGxkLXRyYW5zbGF0ZS9zcmMvbGliL21vZHVsZXMvdGxkLXRlcm0vY3JlYXRlLWNvbGxlY3Rpb24vY3JlYXRlLWNvbGxlY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFHekQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXBELE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLGtGQUFrRixDQUFDOzs7Ozs7O0FBTzFJLE1BQU0sT0FBTyx5QkFBeUI7SUFLcEMsWUFBNkIsU0FBMkIsRUFDckMsTUFBaUIsRUFDakIsa0JBQXNDO1FBRjVCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQ3JDLFdBQU0sR0FBTixNQUFNLENBQVc7UUFDakIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtJQUFJLENBQUM7SUFFOUQsUUFBUTtJQUNSLENBQUM7SUFFRCxNQUFNO1FBQ0osTUFBTSxlQUFlLEdBQUcsMENBQTBDLENBQUM7UUFDbkUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsY0FBYyxFQUFFLEVBQUU7WUFDL0QsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsc0NBQXNDLEVBQUU7Z0JBQ3pFLFFBQVEsRUFBRSxPQUFPO2dCQUNqQixRQUFRLEVBQUUsT0FBTztnQkFDakIsSUFBSSxFQUFFLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRTthQUN6QyxDQUFDLENBQUM7WUFDSCxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxFQUFFO2dCQUNqRCxJQUFJLENBQUMsY0FBYyxFQUFFO29CQUNuQixPQUFPO2lCQUNSO2dCQUVELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxjQUFjLENBQUMsQ0FBQyxTQUFTLENBQUM7b0JBQ3pHLEtBQUssRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFO3dCQUNiLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7d0JBQ25CLE1BQU0sS0FBSyxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO3dCQUN6RCxNQUFNLEtBQUssQ0FBQztvQkFDZCxDQUFDO2lCQUNGLENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztzSEFsQ1UseUJBQXlCOzBHQUF6Qix5QkFBeUIsNkpDWnRDLDZJQUdBOzJGRFNhLHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDRSx1QkFBdUI7Z0tBTXhCLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBFcnJvckNvZGUgfSBmcm9tICcuLi8uLi90bGQtY29tbW9uL21vZGVscyc7XHJcbmltcG9ydCB7IFRlcm1pbm9sb2d5U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3Rlcm1pbm9sb2d5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUbGRUZXJtQ3JlYXRlQ29sbGVjdGlvbkRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uL3RsZC10ZXJtLWNyZWF0ZS1jb2xsZWN0aW9uLWRpYWxvZy90bGQtdGVybS1jcmVhdGUtY29sbGVjdGlvbi1kaWFsb2cuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndGxkLWNyZWF0ZS1jb2xsZWN0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY3JlYXRlLWNvbGxlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NyZWF0ZS1jb2xsZWN0aW9uLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENyZWF0ZUNvbGxlY3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBASW5wdXQoKSBzb3VyY2VMYW5ndWFnZUNvZGU6IHN0cmluZztcclxuICBASW5wdXQoKSB0YXJnZXRMYW5ndWFnZUNvZGU6IHN0cmluZztcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRpYWxvZzogTWF0RGlhbG9nLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZXJtaW5vbG9neVNlcnZpY2U6IFRlcm1pbm9sb2d5U2VydmljZSkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlKCkge1xyXG4gICAgY29uc3QgbG9jYWxpemF0aW9uS2V5ID0gXCJURVJNX0NPTExFQ1RJT05TLkRFRkFVTFRfQ09MTEVDVElPTl9OQU1FXCI7XHJcbiAgICB0aGlzLnRyYW5zbGF0ZS5nZXQobG9jYWxpemF0aW9uS2V5KS5zdWJzY3JpYmUoKGNvbGxlY3Rpb25OYW1lKSA9PiB7XHJcbiAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oVGxkVGVybUNyZWF0ZUNvbGxlY3Rpb25EaWFsb2dDb21wb25lbnQsIHtcclxuICAgICAgICBtaW5XaWR0aDogJzMwMHB4JyxcclxuICAgICAgICBtYXhXaWR0aDogJzcwMHB4JyxcclxuICAgICAgICBkYXRhOiB7IGNvbGxlY3Rpb25OYW1lOiBjb2xsZWN0aW9uTmFtZSB9XHJcbiAgICAgIH0pO1xyXG4gICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoY29sbGVjdGlvbk5hbWUgPT4ge1xyXG4gICAgICAgIGlmICghY29sbGVjdGlvbk5hbWUpIHtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMudGVybWlub2xvZ3lTZXJ2aWNlLmNyZWF0ZSh0aGlzLnNvdXJjZUxhbmd1YWdlQ29kZSwgdGhpcy50YXJnZXRMYW5ndWFnZUNvZGUsIGNvbGxlY3Rpb25OYW1lKS5zdWJzY3JpYmUoe1xyXG4gICAgICAgICAgZXJyb3I6IChlcnIpID0+IHtcclxuICAgICAgICAgICAgY29uc29sZS5lcnJvcihlcnIpO1xyXG4gICAgICAgICAgICBjb25zdCBlcnJvciA9IHsgRXJyb3JDb2RlOiBFcnJvckNvZGUuQ09MTEVDVElPTl9DUkVBVEUgfTtcclxuICAgICAgICAgICAgdGhyb3cgZXJyb3I7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8YnV0dG9uIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cImFjY2VudFwiIChjbGljayk9XCJjcmVhdGUoKVwiIGZ4SGlkZS5sdC1zbT5cclxuICB7eydURVJNX0NPTExFQ1RJT05TLkNSRUFURScgfCB0cmFuc2xhdGV9fVxyXG48L2J1dHRvbj5cclxuIl19
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvbGxlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGxkLXRyYW5zbGF0ZS9zcmMvbGliL21vZHVsZXMvdGxkLXRlcm0vY3JlYXRlLWNvbGxlY3Rpb24vY3JlYXRlLWNvbGxlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGxkLXRyYW5zbGF0ZS9zcmMvbGliL21vZHVsZXMvdGxkLXRlcm0vY3JlYXRlLWNvbGxlY3Rpb24vY3JlYXRlLWNvbGxlY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHcEQsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sa0ZBQWtGLENBQUM7Ozs7Ozs7QUFPMUksTUFBTSxPQUFPLHlCQUF5QjtJQU9wQyxZQUE2QixTQUEyQixFQUNyQyxNQUFpQixFQUNqQixrQkFBc0M7UUFGNUIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDckMsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNqQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBSi9DLHNCQUFpQixHQUFxQyxJQUFJLFlBQVksRUFBc0IsQ0FBQztJQUkxQyxDQUFDO0lBRTlELFFBQVE7SUFDUixDQUFDO0lBRUQsTUFBTTtRQUNKLE1BQU0sZUFBZSxHQUFHLDBDQUEwQyxDQUFDO1FBQ25FLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxFQUFFO1lBQy9ELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHNDQUFzQyxFQUFFO2dCQUN6RSxRQUFRLEVBQUUsT0FBTztnQkFDakIsUUFBUSxFQUFFLE9BQU87Z0JBQ2pCLElBQUksRUFBRSxFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUU7YUFDekMsQ0FBQyxDQUFDO1lBQ0gsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsRUFBRTtnQkFDakQsSUFBSSxDQUFDLGNBQWMsRUFBRTtvQkFDbkIsT0FBTztpQkFDUjtnQkFFRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsY0FBYyxDQUFDLENBQUMsU0FBUyxDQUFDO29CQUN6RyxJQUFJLEVBQUUsQ0FBQyxVQUFVLEVBQUUsRUFBRTt3QkFDbkIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztvQkFDMUMsQ0FBQztvQkFDRCxLQUFLLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTt3QkFDYixPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO3dCQUNuQixNQUFNLEtBQUssR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsaUJBQWlCLEVBQUUsQ0FBQzt3QkFDekQsTUFBTSxLQUFLLENBQUM7b0JBQ2QsQ0FBQztpQkFDRixDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7c0hBdkNVLHlCQUF5QjswR0FBekIseUJBQXlCLGtOQ2J0Qyw2SUFHQTsyRkRVYSx5QkFBeUI7a0JBTHJDLFNBQVM7K0JBQ0UsdUJBQXVCO2dLQU14QixrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUVJLGlCQUFpQjtzQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBFcnJvckNvZGUgfSBmcm9tICcuLi8uLi90bGQtY29tbW9uL21vZGVscyc7XHJcbmltcG9ydCB7IENvbWJpbmVkQ29sbGVjdGlvbiB9IGZyb20gJy4uL3NlcnZpY2VzL21vZGVscyc7XHJcbmltcG9ydCB7IFRlcm1pbm9sb2d5U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3Rlcm1pbm9sb2d5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUbGRUZXJtQ3JlYXRlQ29sbGVjdGlvbkRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uL3RsZC10ZXJtLWNyZWF0ZS1jb2xsZWN0aW9uLWRpYWxvZy90bGQtdGVybS1jcmVhdGUtY29sbGVjdGlvbi1kaWFsb2cuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndGxkLWNyZWF0ZS1jb2xsZWN0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY3JlYXRlLWNvbGxlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NyZWF0ZS1jb2xsZWN0aW9uLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENyZWF0ZUNvbGxlY3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBASW5wdXQoKSBzb3VyY2VMYW5ndWFnZUNvZGU6IHN0cmluZztcclxuICBASW5wdXQoKSB0YXJnZXRMYW5ndWFnZUNvZGU6IHN0cmluZztcclxuXHJcbiAgQE91dHB1dCgpIGNvbGxlY3Rpb25DcmVhdGVkOiBFdmVudEVtaXR0ZXI8Q29tYmluZWRDb2xsZWN0aW9uPiA9IG5ldyBFdmVudEVtaXR0ZXI8Q29tYmluZWRDb2xsZWN0aW9uPigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlhbG9nOiBNYXREaWFsb2csXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRlcm1pbm9sb2d5U2VydmljZTogVGVybWlub2xvZ3lTZXJ2aWNlKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgfVxyXG5cclxuICBjcmVhdGUoKSB7XHJcbiAgICBjb25zdCBsb2NhbGl6YXRpb25LZXkgPSBcIlRFUk1fQ09MTEVDVElPTlMuREVGQVVMVF9DT0xMRUNUSU9OX05BTUVcIjtcclxuICAgIHRoaXMudHJhbnNsYXRlLmdldChsb2NhbGl6YXRpb25LZXkpLnN1YnNjcmliZSgoY29sbGVjdGlvbk5hbWUpID0+IHtcclxuICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihUbGRUZXJtQ3JlYXRlQ29sbGVjdGlvbkRpYWxvZ0NvbXBvbmVudCwge1xyXG4gICAgICAgIG1pbldpZHRoOiAnMzAwcHgnLFxyXG4gICAgICAgIG1heFdpZHRoOiAnNzAwcHgnLFxyXG4gICAgICAgIGRhdGE6IHsgY29sbGVjdGlvbk5hbWU6IGNvbGxlY3Rpb25OYW1lIH1cclxuICAgICAgfSk7XHJcbiAgICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZShjb2xsZWN0aW9uTmFtZSA9PiB7XHJcbiAgICAgICAgaWYgKCFjb2xsZWN0aW9uTmFtZSkge1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy50ZXJtaW5vbG9neVNlcnZpY2UuY3JlYXRlKHRoaXMuc291cmNlTGFuZ3VhZ2VDb2RlLCB0aGlzLnRhcmdldExhbmd1YWdlQ29kZSwgY29sbGVjdGlvbk5hbWUpLnN1YnNjcmliZSh7XHJcbiAgICAgICAgICBuZXh0OiAoY29sbGVjdGlvbikgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmNvbGxlY3Rpb25DcmVhdGVkLmVtaXQoY29sbGVjdGlvbik7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgZXJyb3I6IChlcnIpID0+IHtcclxuICAgICAgICAgICAgY29uc29sZS5lcnJvcihlcnIpO1xyXG4gICAgICAgICAgICBjb25zdCBlcnJvciA9IHsgRXJyb3JDb2RlOiBFcnJvckNvZGUuQ09MTEVDVElPTl9DUkVBVEUgfTtcclxuICAgICAgICAgICAgdGhyb3cgZXJyb3I7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8YnV0dG9uIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cImFjY2VudFwiIChjbGljayk9XCJjcmVhdGUoKVwiIGZ4SGlkZS5sdC1zbT5cclxuICB7eydURVJNX0NPTExFQ1RJT05TLkNSRUFURScgfCB0cmFuc2xhdGV9fVxyXG48L2J1dHRvbj5cclxuIl19
@@ -14,17 +14,18 @@ export class MtTermV2Service {
14
14
  if (!collection.mtCollection) {
15
15
  const params = {
16
16
  collectionId: collection.termId,
17
- default: collection.editables.default,
17
+ default: collection.default,
18
18
  collectionSource: collection.source,
19
- scope: collection.editables.scope
19
+ scope: collection.scope
20
20
  };
21
21
  return this.engineTermApi.add(engineId, params)
22
22
  .pipe(map(collection => this.convertToCombinedCollection(collection)));
23
23
  }
24
24
  else {
25
25
  const params = {
26
- default: collection.editables.default,
27
- scope: collection.editables.scope
26
+ default: collection.default,
27
+ scope: collection.scope,
28
+ order: collection.order
28
29
  };
29
30
  return this.engineTermApi.update(engineId, collection.mtCollection.id, params)
30
31
  .pipe(map(collection => this.convertToCombinedCollection(collection)));
@@ -51,7 +52,9 @@ export class MtTermV2Service {
51
52
  status: collection.status,
52
53
  termId: collection.externalCollection.id,
53
54
  default: collection.default,
54
- scope: collection.scope
55
+ scope: collection.scope,
56
+ order: collection.order,
57
+ termCount: collection.externalCollection.termCount
55
58
  };
56
59
  return new CombinedCollection(null, convertedMtCollection);
57
60
  }
@@ -64,4 +67,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
64
67
  providedIn: 'root'
65
68
  }]
66
69
  }], ctorParameters: function () { return [{ type: i1.TldTranslateConfigService }, { type: i2.EningeTermApiService }]; } });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXQtdGVybS12Mi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGxkLXRyYW5zbGF0ZS9zcmMvbGliL21vZHVsZXMvdGxkLXRlcm0vc2VydmljZXMvYXBpLXYyL210LXRlcm0tdjIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxHQUFHLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFNdkMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7QUFPekUsTUFBTSxPQUFPLGVBQWU7SUFHMUIsWUFDbUIsTUFBaUMsRUFDakMsYUFBbUM7UUFEbkMsV0FBTSxHQUFOLE1BQU0sQ0FBMkI7UUFDakMsa0JBQWEsR0FBYixhQUFhLENBQXNCO1FBSnRELFlBQU8sR0FBVyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7SUFJRyxDQUFDO0lBRTNELEdBQUcsQ0FBQyxRQUFnQixFQUFFLFVBQThCO1FBQ2xELElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFO1lBQzVCLE1BQU0sTUFBTSxHQUFnQztnQkFDMUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxNQUFNO2dCQUMvQixPQUFPLEVBQUUsVUFBVSxDQUFDLFNBQVMsQ0FBQyxPQUFPO2dCQUNyQyxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsTUFBTTtnQkFDbkMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUMsS0FBSzthQUNsQyxDQUFDO1lBQ0YsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDO2lCQUM1QyxJQUFJLENBQ0gsR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQ2hFLENBQUM7U0FDTDthQUFNO1lBQ0wsTUFBTSxNQUFNLEdBQW1DO2dCQUM3QyxPQUFPLEVBQUUsVUFBVSxDQUFDLFNBQVMsQ0FBQyxPQUFPO2dCQUNyQyxLQUFLLEVBQUUsVUFBVSxDQUFDLFNBQVMsQ0FBQyxLQUFLO2FBQ2xDLENBQUE7WUFDRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRSxNQUFNLENBQUM7aUJBQzNFLElBQUksQ0FDSCxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FDaEUsQ0FBQztTQUNMO0lBQ0gsQ0FBQztJQUVELE9BQU8sQ0FBQyxRQUFnQjtRQUN0QixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQzthQUN4QyxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDbEIsTUFBTSxTQUFTLEdBQXlCLEVBQUUsQ0FBQztZQUMzQyxXQUFXLEVBQUUsZUFBZSxFQUFFLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO2dCQUNuRCxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFBO1lBQzlELENBQUMsQ0FBQyxDQUFBO1lBQ0YsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNOLENBQUM7SUFFRCxNQUFNLENBQUMsUUFBZ0IsRUFBRSxVQUE4QjtRQUNyRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDekUsR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQ2hFLENBQUM7SUFDSixDQUFDO0lBRU8sMkJBQTJCLENBQUMsVUFBZ0M7UUFDbEUsTUFBTSxxQkFBcUIsR0FBaUI7WUFDMUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxFQUFFO1lBQ2pCLFdBQVcsRUFBRSxVQUFVLENBQUMsa0JBQWtCLENBQUMsU0FBUztZQUNwRCxJQUFJLEVBQUUsVUFBVSxDQUFDLElBQUk7WUFDckIsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFhO1lBQ2hDLE1BQU0sRUFBRSxVQUFVLENBQUMsa0JBQWtCLENBQUMsRUFBRTtZQUN4QyxPQUFPLEVBQUUsVUFBVSxDQUFDLE9BQU87WUFDM0IsS0FBSyxFQUFFLFVBQVUsQ0FBQyxLQUFLO1NBQ3hCLENBQUM7UUFDRixPQUFPLElBQUksa0JBQWtCLENBQUMsSUFBSSxFQUFFLHFCQUFxQixDQUFDLENBQUM7SUFDN0QsQ0FBQzs7NEdBN0RVLGVBQWU7Z0hBQWYsZUFBZSxjQUZkLE1BQU07MkZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBUbGRUcmFuc2xhdGVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vdGxkLWNvbW1vbi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IEVuaW5nZVRlcm1BcGlTZXJ2aWNlIH0gZnJvbSAnLi4vZW5naW5lLXRlcm0vZW5pbmdlLXRlcm0tYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVcGRhdGVFbmdpbmVUZXJtc1JlcXVlc3RQYXJhbXMgfSBmcm9tICcuLi9lbmdpbmUtdGVybS9tb2RlbHMnO1xyXG5pbXBvcnQgeyBBZGRFbmdpbmVUZXJtc1JlcXVlc3RQYXJhbXMgfSBmcm9tICcuLi9lbmdpbmUtdGVybS9tb2RlbHMvYWRkLWVuZ2luZS10ZXJtcy1yZXF1ZXN0LXBhcmFtcy5tb2RlbCc7XHJcbmltcG9ydCB7IEVuZ2luZVRlcm1Db2xsZWN0aW9uIH0gZnJvbSAnLi4vZW5naW5lLXRlcm0vbW9kZWxzL2VuZ2luZS10ZXJtLWNvbGxlY3Rpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBDb21iaW5lZENvbGxlY3Rpb24gfSBmcm9tICcuLi9tb2RlbHMvY29tYmluZWQtY29sbGVjdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IE10Q29sbGVjdGlvbiB9IGZyb20gJy4uL21vZGVscy9tdC1jb2xsZWN0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgSU10VGVybVNlcnZpY2UgfSBmcm9tICcuLi9tb2RlbHMvbXQtdGVybS1zZXJ2aWNlLm1vZGVsJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIE10VGVybVYyU2VydmljZSBpbXBsZW1lbnRzIElNdFRlcm1TZXJ2aWNlIHtcclxuICBiYXNlVXJsOiBzdHJpbmcgPSB0aGlzLmNvbmZpZy50ZXJtQ29uZmlnLmVuZ2luZVRlcm1Vcmw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IFRsZFRyYW5zbGF0ZUNvbmZpZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVuZ2luZVRlcm1BcGk6IEVuaW5nZVRlcm1BcGlTZXJ2aWNlKSB7IH1cclxuXHJcbiAgYWRkKGVuZ2luZUlkOiBzdHJpbmcsIGNvbGxlY3Rpb246IENvbWJpbmVkQ29sbGVjdGlvbik6IE9ic2VydmFibGU8Q29tYmluZWRDb2xsZWN0aW9uPiB7XHJcbiAgICBpZiAoIWNvbGxlY3Rpb24ubXRDb2xsZWN0aW9uKSB7XHJcbiAgICAgIGNvbnN0IHBhcmFtczogQWRkRW5naW5lVGVybXNSZXF1ZXN0UGFyYW1zID0ge1xyXG4gICAgICAgIGNvbGxlY3Rpb25JZDogY29sbGVjdGlvbi50ZXJtSWQsXHJcbiAgICAgICAgZGVmYXVsdDogY29sbGVjdGlvbi5lZGl0YWJsZXMuZGVmYXVsdCxcclxuICAgICAgICBjb2xsZWN0aW9uU291cmNlOiBjb2xsZWN0aW9uLnNvdXJjZSxcclxuICAgICAgICBzY29wZTogY29sbGVjdGlvbi5lZGl0YWJsZXMuc2NvcGVcclxuICAgICAgfTtcclxuICAgICAgcmV0dXJuIHRoaXMuZW5naW5lVGVybUFwaS5hZGQoZW5naW5lSWQsIHBhcmFtcylcclxuICAgICAgICAucGlwZShcclxuICAgICAgICAgIG1hcChjb2xsZWN0aW9uID0+IHRoaXMuY29udmVydFRvQ29tYmluZWRDb2xsZWN0aW9uKGNvbGxlY3Rpb24pKVxyXG4gICAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCBwYXJhbXM6IFVwZGF0ZUVuZ2luZVRlcm1zUmVxdWVzdFBhcmFtcyA9IHtcclxuICAgICAgICBkZWZhdWx0OiBjb2xsZWN0aW9uLmVkaXRhYmxlcy5kZWZhdWx0LFxyXG4gICAgICAgIHNjb3BlOiBjb2xsZWN0aW9uLmVkaXRhYmxlcy5zY29wZVxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB0aGlzLmVuZ2luZVRlcm1BcGkudXBkYXRlKGVuZ2luZUlkLCBjb2xsZWN0aW9uLm10Q29sbGVjdGlvbi5pZCwgcGFyYW1zKVxyXG4gICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgbWFwKGNvbGxlY3Rpb24gPT4gdGhpcy5jb252ZXJ0VG9Db21iaW5lZENvbGxlY3Rpb24oY29sbGVjdGlvbikpXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldExpc3QoZW5naW5lSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8Q29tYmluZWRDb2xsZWN0aW9uW10+IHtcclxuICAgIHJldHVybiB0aGlzLmVuZ2luZVRlcm1BcGkuZ2V0TGlzdChlbmdpbmVJZClcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKChjb2xsZWN0aW9ucykgPT4ge1xyXG4gICAgICAgICAgY29uc3QgY29udmVydGVkOiBDb21iaW5lZENvbGxlY3Rpb25bXSA9IFtdO1xyXG4gICAgICAgICAgY29sbGVjdGlvbnM/LnRlcm1Db2xsZWN0aW9ucz8uZm9yRWFjaCgoY29sbGVjdGlvbikgPT4ge1xyXG4gICAgICAgICAgICBjb252ZXJ0ZWQucHVzaCh0aGlzLmNvbnZlcnRUb0NvbWJpbmVkQ29sbGVjdGlvbihjb2xsZWN0aW9uKSlcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgICByZXR1cm4gY29udmVydGVkO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICByZW1vdmUoZW5naW5lSWQ6IHN0cmluZywgY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uKTogT2JzZXJ2YWJsZTxDb21iaW5lZENvbGxlY3Rpb24+IHtcclxuICAgIHJldHVybiB0aGlzLmVuZ2luZVRlcm1BcGkucmVtb3ZlKGVuZ2luZUlkLCBjb2xsZWN0aW9uLm10Q29sbGVjdGlvbi5pZCkucGlwZShcclxuICAgICAgbWFwKGNvbGxlY3Rpb24gPT4gdGhpcy5jb252ZXJ0VG9Db21iaW5lZENvbGxlY3Rpb24oY29sbGVjdGlvbikpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb252ZXJ0VG9Db21iaW5lZENvbGxlY3Rpb24oY29sbGVjdGlvbjogRW5naW5lVGVybUNvbGxlY3Rpb24pOiBDb21iaW5lZENvbGxlY3Rpb24ge1xyXG4gICAgY29uc3QgY29udmVydGVkTXRDb2xsZWN0aW9uOiBNdENvbGxlY3Rpb24gPSB7XHJcbiAgICAgIGlkOiBjb2xsZWN0aW9uLmlkLFxyXG4gICAgICBsYXN0VXBkYXRlZDogY29sbGVjdGlvbi5leHRlcm5hbENvbGxlY3Rpb24udXBkYXRlZEF0LFxyXG4gICAgICBuYW1lOiBjb2xsZWN0aW9uLm5hbWUsXHJcbiAgICAgIHN0YXR1czogY29sbGVjdGlvbi5zdGF0dXMgYXMgYW55LFxyXG4gICAgICB0ZXJtSWQ6IGNvbGxlY3Rpb24uZXh0ZXJuYWxDb2xsZWN0aW9uLmlkLFxyXG4gICAgICBkZWZhdWx0OiBjb2xsZWN0aW9uLmRlZmF1bHQsXHJcbiAgICAgIHNjb3BlOiBjb2xsZWN0aW9uLnNjb3BlXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIG5ldyBDb21iaW5lZENvbGxlY3Rpb24obnVsbCwgY29udmVydGVkTXRDb2xsZWN0aW9uKTtcclxuICB9XHJcbn1cclxuIl19
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXQtdGVybS12Mi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGxkLXRyYW5zbGF0ZS9zcmMvbGliL21vZHVsZXMvdGxkLXRlcm0vc2VydmljZXMvYXBpLXYyL210LXRlcm0tdjIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxHQUFHLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFNdkMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7QUFPekUsTUFBTSxPQUFPLGVBQWU7SUFHMUIsWUFDbUIsTUFBaUMsRUFDakMsYUFBbUM7UUFEbkMsV0FBTSxHQUFOLE1BQU0sQ0FBMkI7UUFDakMsa0JBQWEsR0FBYixhQUFhLENBQXNCO1FBSnRELFlBQU8sR0FBVyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7SUFJRyxDQUFDO0lBRTNELEdBQUcsQ0FBQyxRQUFnQixFQUFFLFVBQThCO1FBQ2xELElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFO1lBQzVCLE1BQU0sTUFBTSxHQUFnQztnQkFDMUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxNQUFNO2dCQUMvQixPQUFPLEVBQUUsVUFBVSxDQUFDLE9BQU87Z0JBQzNCLGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxNQUFNO2dCQUNuQyxLQUFLLEVBQUUsVUFBVSxDQUFDLEtBQUs7YUFDeEIsQ0FBQztZQUNGLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQztpQkFDNUMsSUFBSSxDQUNILEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUNoRSxDQUFDO1NBQ0w7YUFBTTtZQUNMLE1BQU0sTUFBTSxHQUFtQztnQkFDN0MsT0FBTyxFQUFFLFVBQVUsQ0FBQyxPQUFPO2dCQUMzQixLQUFLLEVBQUUsVUFBVSxDQUFDLEtBQUs7Z0JBQ3ZCLEtBQUssRUFBRSxVQUFVLENBQUMsS0FBSzthQUN4QixDQUFBO1lBQ0QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDO2lCQUMzRSxJQUFJLENBQ0gsR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQ2hFLENBQUM7U0FDTDtJQUNILENBQUM7SUFFRCxPQUFPLENBQUMsUUFBZ0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7YUFDeEMsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ2xCLE1BQU0sU0FBUyxHQUF5QixFQUFFLENBQUM7WUFDM0MsV0FBVyxFQUFFLGVBQWUsRUFBRSxPQUFPLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRTtnQkFDbkQsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsMkJBQTJCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQTtZQUM5RCxDQUFDLENBQUMsQ0FBQTtZQUNGLE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQWdCLEVBQUUsVUFBOEI7UUFDckQsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ3pFLEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUNoRSxDQUFDO0lBQ0osQ0FBQztJQUVPLDJCQUEyQixDQUFDLFVBQWdDO1FBQ2xFLE1BQU0scUJBQXFCLEdBQWlCO1lBQzFDLEVBQUUsRUFBRSxVQUFVLENBQUMsRUFBRTtZQUNqQixXQUFXLEVBQUUsVUFBVSxDQUFDLGtCQUFrQixDQUFDLFNBQVM7WUFDcEQsSUFBSSxFQUFFLFVBQVUsQ0FBQyxJQUFJO1lBQ3JCLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBYTtZQUNoQyxNQUFNLEVBQUUsVUFBVSxDQUFDLGtCQUFrQixDQUFDLEVBQUU7WUFDeEMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxPQUFPO1lBQzNCLEtBQUssRUFBRSxVQUFVLENBQUMsS0FBSztZQUN2QixLQUFLLEVBQUUsVUFBVSxDQUFDLEtBQUs7WUFDdkIsU0FBUyxFQUFFLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTO1NBQ25ELENBQUM7UUFDRixPQUFPLElBQUksa0JBQWtCLENBQUMsSUFBSSxFQUFFLHFCQUFxQixDQUFDLENBQUM7SUFDN0QsQ0FBQzs7NEdBaEVVLGVBQWU7Z0hBQWYsZUFBZSxjQUZkLE1BQU07MkZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBUbGRUcmFuc2xhdGVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vdGxkLWNvbW1vbi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IEVuaW5nZVRlcm1BcGlTZXJ2aWNlIH0gZnJvbSAnLi4vZW5naW5lLXRlcm0vZW5pbmdlLXRlcm0tYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVcGRhdGVFbmdpbmVUZXJtc1JlcXVlc3RQYXJhbXMgfSBmcm9tICcuLi9lbmdpbmUtdGVybS9tb2RlbHMnO1xyXG5pbXBvcnQgeyBBZGRFbmdpbmVUZXJtc1JlcXVlc3RQYXJhbXMgfSBmcm9tICcuLi9lbmdpbmUtdGVybS9tb2RlbHMvYWRkLWVuZ2luZS10ZXJtcy1yZXF1ZXN0LXBhcmFtcy5tb2RlbCc7XHJcbmltcG9ydCB7IEVuZ2luZVRlcm1Db2xsZWN0aW9uIH0gZnJvbSAnLi4vZW5naW5lLXRlcm0vbW9kZWxzL2VuZ2luZS10ZXJtLWNvbGxlY3Rpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBDb21iaW5lZENvbGxlY3Rpb24gfSBmcm9tICcuLi9tb2RlbHMvY29tYmluZWQtY29sbGVjdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IE10Q29sbGVjdGlvbiB9IGZyb20gJy4uL21vZGVscy9tdC1jb2xsZWN0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgSU10VGVybVNlcnZpY2UgfSBmcm9tICcuLi9tb2RlbHMvbXQtdGVybS1zZXJ2aWNlLm1vZGVsJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIE10VGVybVYyU2VydmljZSBpbXBsZW1lbnRzIElNdFRlcm1TZXJ2aWNlIHtcclxuICBiYXNlVXJsOiBzdHJpbmcgPSB0aGlzLmNvbmZpZy50ZXJtQ29uZmlnLmVuZ2luZVRlcm1Vcmw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IFRsZFRyYW5zbGF0ZUNvbmZpZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVuZ2luZVRlcm1BcGk6IEVuaW5nZVRlcm1BcGlTZXJ2aWNlKSB7IH1cclxuXHJcbiAgYWRkKGVuZ2luZUlkOiBzdHJpbmcsIGNvbGxlY3Rpb246IENvbWJpbmVkQ29sbGVjdGlvbik6IE9ic2VydmFibGU8Q29tYmluZWRDb2xsZWN0aW9uPiB7XHJcbiAgICBpZiAoIWNvbGxlY3Rpb24ubXRDb2xsZWN0aW9uKSB7XHJcbiAgICAgIGNvbnN0IHBhcmFtczogQWRkRW5naW5lVGVybXNSZXF1ZXN0UGFyYW1zID0ge1xyXG4gICAgICAgIGNvbGxlY3Rpb25JZDogY29sbGVjdGlvbi50ZXJtSWQsXHJcbiAgICAgICAgZGVmYXVsdDogY29sbGVjdGlvbi5kZWZhdWx0LFxyXG4gICAgICAgIGNvbGxlY3Rpb25Tb3VyY2U6IGNvbGxlY3Rpb24uc291cmNlLFxyXG4gICAgICAgIHNjb3BlOiBjb2xsZWN0aW9uLnNjb3BlXHJcbiAgICAgIH07XHJcbiAgICAgIHJldHVybiB0aGlzLmVuZ2luZVRlcm1BcGkuYWRkKGVuZ2luZUlkLCBwYXJhbXMpXHJcbiAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICBtYXAoY29sbGVjdGlvbiA9PiB0aGlzLmNvbnZlcnRUb0NvbWJpbmVkQ29sbGVjdGlvbihjb2xsZWN0aW9uKSlcclxuICAgICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgcGFyYW1zOiBVcGRhdGVFbmdpbmVUZXJtc1JlcXVlc3RQYXJhbXMgPSB7XHJcbiAgICAgICAgZGVmYXVsdDogY29sbGVjdGlvbi5kZWZhdWx0LFxyXG4gICAgICAgIHNjb3BlOiBjb2xsZWN0aW9uLnNjb3BlLFxyXG4gICAgICAgIG9yZGVyOiBjb2xsZWN0aW9uLm9yZGVyXHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHRoaXMuZW5naW5lVGVybUFwaS51cGRhdGUoZW5naW5lSWQsIGNvbGxlY3Rpb24ubXRDb2xsZWN0aW9uLmlkLCBwYXJhbXMpXHJcbiAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICBtYXAoY29sbGVjdGlvbiA9PiB0aGlzLmNvbnZlcnRUb0NvbWJpbmVkQ29sbGVjdGlvbihjb2xsZWN0aW9uKSlcclxuICAgICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0TGlzdChlbmdpbmVJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxDb21iaW5lZENvbGxlY3Rpb25bXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuZW5naW5lVGVybUFwaS5nZXRMaXN0KGVuZ2luZUlkKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKGNvbGxlY3Rpb25zKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBjb252ZXJ0ZWQ6IENvbWJpbmVkQ29sbGVjdGlvbltdID0gW107XHJcbiAgICAgICAgICBjb2xsZWN0aW9ucz8udGVybUNvbGxlY3Rpb25zPy5mb3JFYWNoKChjb2xsZWN0aW9uKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnZlcnRlZC5wdXNoKHRoaXMuY29udmVydFRvQ29tYmluZWRDb2xsZWN0aW9uKGNvbGxlY3Rpb24pKVxyXG4gICAgICAgICAgfSlcclxuICAgICAgICAgIHJldHVybiBjb252ZXJ0ZWQ7XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIHJlbW92ZShlbmdpbmVJZDogc3RyaW5nLCBjb2xsZWN0aW9uOiBDb21iaW5lZENvbGxlY3Rpb24pOiBPYnNlcnZhYmxlPENvbWJpbmVkQ29sbGVjdGlvbj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuZW5naW5lVGVybUFwaS5yZW1vdmUoZW5naW5lSWQsIGNvbGxlY3Rpb24ubXRDb2xsZWN0aW9uLmlkKS5waXBlKFxyXG4gICAgICBtYXAoY29sbGVjdGlvbiA9PiB0aGlzLmNvbnZlcnRUb0NvbWJpbmVkQ29sbGVjdGlvbihjb2xsZWN0aW9uKSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNvbnZlcnRUb0NvbWJpbmVkQ29sbGVjdGlvbihjb2xsZWN0aW9uOiBFbmdpbmVUZXJtQ29sbGVjdGlvbik6IENvbWJpbmVkQ29sbGVjdGlvbiB7XHJcbiAgICBjb25zdCBjb252ZXJ0ZWRNdENvbGxlY3Rpb246IE10Q29sbGVjdGlvbiA9IHtcclxuICAgICAgaWQ6IGNvbGxlY3Rpb24uaWQsXHJcbiAgICAgIGxhc3RVcGRhdGVkOiBjb2xsZWN0aW9uLmV4dGVybmFsQ29sbGVjdGlvbi51cGRhdGVkQXQsXHJcbiAgICAgIG5hbWU6IGNvbGxlY3Rpb24ubmFtZSxcclxuICAgICAgc3RhdHVzOiBjb2xsZWN0aW9uLnN0YXR1cyBhcyBhbnksXHJcbiAgICAgIHRlcm1JZDogY29sbGVjdGlvbi5leHRlcm5hbENvbGxlY3Rpb24uaWQsXHJcbiAgICAgIGRlZmF1bHQ6IGNvbGxlY3Rpb24uZGVmYXVsdCxcclxuICAgICAgc2NvcGU6IGNvbGxlY3Rpb24uc2NvcGUsXHJcbiAgICAgIG9yZGVyOiBjb2xsZWN0aW9uLm9yZGVyLFxyXG4gICAgICB0ZXJtQ291bnQ6IGNvbGxlY3Rpb24uZXh0ZXJuYWxDb2xsZWN0aW9uLnRlcm1Db3VudFxyXG4gICAgfTtcclxuICAgIHJldHVybiBuZXcgQ29tYmluZWRDb2xsZWN0aW9uKG51bGwsIGNvbnZlcnRlZE10Q29sbGVjdGlvbik7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5naW5lLXRlcm0tY29sbGVjdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC10ZXJtL3NlcnZpY2VzL2VuZ2luZS10ZXJtL21vZGVscy9lbmdpbmUtdGVybS1jb2xsZWN0aW9uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbmdpbmVUZXJtQ29sbGVjdGlvblNjb3BlIH0gZnJvbSBcIi4vZW5naW5lLXRlcm0tY29sbGVjdGlvbi1zY29wZS5lbnVtXCI7XHJcbmltcG9ydCB7IEVuZ2luZVRlcm1Db2xsZWN0aW9uU291cmNlIH0gZnJvbSBcIi4vZW5naW5lLXRlcm0tY29sbGVjdGlvbi1zb3VyY2UuZW51bVwiO1xyXG5pbXBvcnQgeyBFbmdpbmVUZXJtQ29sbGVjdGlvblN0YXR1cyB9IGZyb20gXCIuL2VuZ2luZS10ZXJtLWNvbGxlY3Rpb24tc3RhdHVzLmVudW1cIjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRW5naW5lVGVybUNvbGxlY3Rpb24ge1xyXG4gIGlkOiBzdHJpbmc7XHJcbiAgZXh0ZXJuYWxDb2xsZWN0aW9uOiB7XHJcbiAgICBpZDogc3RyaW5nO1xyXG4gICAgdXBkYXRlZEF0OiBEYXRlO1xyXG4gIH1cclxuICBzY29wZTogRW5naW5lVGVybUNvbGxlY3Rpb25TY29wZTtcclxuICBkZWZhdWx0OiBib29sZWFuO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBzdGF0dXM6IEVuZ2luZVRlcm1Db2xsZWN0aW9uU3RhdHVzO1xyXG4gIHByb2dyZXNzOiBudW1iZXI7XHJcbiAgY29sbGVjdGlvblNvdXJjZTogRW5naW5lVGVybUNvbGxlY3Rpb25Tb3VyY2U7XHJcbn1cclxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5naW5lLXRlcm0tY29sbGVjdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC10ZXJtL3NlcnZpY2VzL2VuZ2luZS10ZXJtL21vZGVscy9lbmdpbmUtdGVybS1jb2xsZWN0aW9uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbmdpbmVUZXJtQ29sbGVjdGlvblNjb3BlIH0gZnJvbSBcIi4vZW5naW5lLXRlcm0tY29sbGVjdGlvbi1zY29wZS5lbnVtXCI7XHJcbmltcG9ydCB7IEVuZ2luZVRlcm1Db2xsZWN0aW9uU291cmNlIH0gZnJvbSBcIi4vZW5naW5lLXRlcm0tY29sbGVjdGlvbi1zb3VyY2UuZW51bVwiO1xyXG5pbXBvcnQgeyBFbmdpbmVUZXJtQ29sbGVjdGlvblN0YXR1cyB9IGZyb20gXCIuL2VuZ2luZS10ZXJtLWNvbGxlY3Rpb24tc3RhdHVzLmVudW1cIjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRW5naW5lVGVybUNvbGxlY3Rpb24ge1xyXG4gIGlkOiBzdHJpbmc7XHJcbiAgZXh0ZXJuYWxDb2xsZWN0aW9uOiB7XHJcbiAgICBpZDogc3RyaW5nO1xyXG4gICAgdXBkYXRlZEF0OiBEYXRlO1xyXG4gICAgdGVybUNvdW50OiBudW1iZXI7XHJcbiAgfVxyXG4gIHNjb3BlOiBFbmdpbmVUZXJtQ29sbGVjdGlvblNjb3BlO1xyXG4gIGRlZmF1bHQ6IGJvb2xlYW47XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHN0YXR1czogRW5naW5lVGVybUNvbGxlY3Rpb25TdGF0dXM7XHJcbiAgcHJvZ3Jlc3M6IG51bWJlcjtcclxuICBjb2xsZWN0aW9uU291cmNlOiBFbmdpbmVUZXJtQ29sbGVjdGlvblNvdXJjZTtcclxuICBvcmRlcjogbnVtYmVyO1xyXG59XHJcbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLWVuZ2luZS10ZXJtcy1yZXF1ZXN0LXBhcmFtcy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC10ZXJtL3NlcnZpY2VzL2VuZ2luZS10ZXJtL21vZGVscy91cGRhdGUtZW5naW5lLXRlcm1zLXJlcXVlc3QtcGFyYW1zLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbmdpbmVUZXJtQ29sbGVjdGlvblNjb3BlIH0gZnJvbSBcIi4vZW5naW5lLXRlcm0tY29sbGVjdGlvbi1zY29wZS5lbnVtXCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZUVuZ2luZVRlcm1zUmVxdWVzdFBhcmFtcyB7XHJcbiAgc2NvcGU6IEVuZ2luZVRlcm1Db2xsZWN0aW9uU2NvcGU7XHJcbiAgZGVmYXVsdDogYm9vbGVhbjtcclxufVxyXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLWVuZ2luZS10ZXJtcy1yZXF1ZXN0LXBhcmFtcy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC10ZXJtL3NlcnZpY2VzL2VuZ2luZS10ZXJtL21vZGVscy91cGRhdGUtZW5naW5lLXRlcm1zLXJlcXVlc3QtcGFyYW1zLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbmdpbmVUZXJtQ29sbGVjdGlvblNjb3BlIH0gZnJvbSBcIi4vZW5naW5lLXRlcm0tY29sbGVjdGlvbi1zY29wZS5lbnVtXCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZUVuZ2luZVRlcm1zUmVxdWVzdFBhcmFtcyB7XHJcbiAgc2NvcGU6IEVuZ2luZVRlcm1Db2xsZWN0aW9uU2NvcGU7XHJcbiAgZGVmYXVsdDogYm9vbGVhbjtcclxuICBvcmRlcjogbnVtYmVyO1xyXG59XHJcbiJdfQ==
@@ -10,7 +10,7 @@ export class CombinedCollection {
10
10
  //#endregion
11
11
  //#region Editable MT (api v2) fields
12
12
  this.editables = {};
13
- //#endregion
13
+ // #endregion
14
14
  //#region Getters for common fields
15
15
  // It is possible to optimize getters, by setting some of the values in update method, but it is left this way, so that data is more consistent.
16
16
  // Otherwise it might be easy to miss some property updating and get wrong data in future.
@@ -71,7 +71,10 @@ export class CombinedCollection {
71
71
  return this.mtCollection?.status;
72
72
  }
73
73
  get scope() {
74
- return this.mtCollection?.scope;
74
+ return this.editables?.scope ?? this.mtCollection?.scope;
75
+ }
76
+ get order() {
77
+ return this.editables?.order ?? this.mtCollection?.order;
75
78
  }
76
79
  /**
77
80
  * Collection name. If has term collection, takes from there. If not, then returns mt collection name.
@@ -86,7 +89,7 @@ export class CombinedCollection {
86
89
  return this.termCollection?.entryCount;
87
90
  }
88
91
  get default() {
89
- return this.mtCollection?.default;
92
+ return this.editables?.default ?? this.mtCollection?.default;
90
93
  }
91
94
  /**
92
95
  * Status from mt api or custom "NOT_IN_USE" status if not imported in mt.s
@@ -98,7 +101,7 @@ export class CombinedCollection {
98
101
  * Scope can be edited only if has mt collcetion or term collection is being prepared for import.
99
102
  */
100
103
  get canEditScope() {
101
- return this.mtCollection || this.editables.default;
104
+ return this.mtCollection || this.default;
102
105
  }
103
106
  /**
104
107
  * Updates collection with values from new collection.
@@ -113,7 +116,7 @@ export class CombinedCollection {
113
116
  this.mtCollection = collection.mtCollection;
114
117
  }
115
118
  if (initialRefresh) {
116
- this.updateEditables(this.mtCollection?.default, this.mtCollection?.scope ?? EngineTermCollectionScope.GLOBAL);
119
+ this.updateEditables(this.mtCollection?.default, this.mtCollection?.scope ?? EngineTermCollectionScope.GLOBAL, this.mtCollection?.order);
117
120
  }
118
121
  this.updateIsSynchronized();
119
122
  this.updateTooltipKey();
@@ -128,11 +131,12 @@ export class CombinedCollection {
128
131
  */
129
132
  isEdited() {
130
133
  // if collection not imported and enabled not set, should not update collection.
131
- if (!this.mtCollection && !this.editables.default) {
134
+ if (!this.mtCollection && !this.default) {
132
135
  return false;
133
136
  }
134
137
  else if ((this.mtCollection?.default !== this.editables.default)
135
- || (this.mtCollection && this.editables.scope !== this.mtCollection.scope)) {
138
+ || (this.mtCollection && this.editables.scope !== this.mtCollection.scope)
139
+ || (this.mtCollection?.order !== this.editables.order)) {
136
140
  return true;
137
141
  }
138
142
  return false;
@@ -151,9 +155,10 @@ export class CombinedCollection {
151
155
  this.mtCollection = null;
152
156
  this.update(null);
153
157
  }
154
- updateEditables(isDefault, scope) {
158
+ updateEditables(isDefault, scope, order) {
155
159
  this.editables.default = isDefault;
156
160
  this.editables.scope = scope;
161
+ this.editables.order = order;
157
162
  }
158
163
  //#region Private methods
159
164
  updateIsSynchronized() {
@@ -188,4 +193,4 @@ export class CombinedCollection {
188
193
  }
189
194
  //#region Static properties
190
195
  CombinedCollection.importingStatuses = [MtCollectionStatus.FETCHING, MtCollectionStatus.PREPROCESSING, MtCollectionStatus.PROCESSING, MtCollectionStatus.QUEUING];
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYmluZWQtY29sbGVjdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC10ZXJtL3NlcnZpY2VzL21vZGVscy9jb21iaW5lZC1jb2xsZWN0aW9uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTlGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBR2pFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGtCQUFrQjtJQXdIN0IsWUFBWTtJQUVaLFlBQVksaUJBQXFDLEVBQUUsWUFBMEI7UUFwRjdFLFlBQVk7UUFFWixxQ0FBcUM7UUFDckMsY0FBUyxHQUdMLEVBQUUsQ0FBQztRQUNQLFlBQVk7UUFFWixtQ0FBbUM7UUFDbkMsZ0pBQWdKO1FBQ2hKLDBGQUEwRjtRQUVsRixvQkFBZSxHQUFZLElBQUksQ0FBQztRQXdFdEMsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLGNBQWMsR0FBRyxpQkFBaUIsQ0FBQztRQUN4QyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFqSEQsTUFBTSxDQUFDLDhCQUE4QixDQUFDLFdBQXlDLEVBQUUsVUFBOEI7UUFDN0csS0FBSyxNQUFNLEdBQUcsSUFBSSxXQUFXLEVBQUU7WUFDN0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLElBQUksR0FBRyxDQUFDLE1BQU0sSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDO2dCQUNqRCxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsRUFBRSxJQUFJLEdBQUcsQ0FB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LFFBQVEsRUFBRSxrQkFBa0IsQ0FBQyxhQUFhLEVBQUUsa0JBQWtCLENBQUMsVUFBVSxFQUFFLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW5naW5lVGVybUNvbGxlY3Rpb25TY29wZSwgRW5naW5lVGVybUNvbGxlY3Rpb25Tb3VyY2UgfSBmcm9tIFwiLi4vZW5naW5lLXRlcm0vbW9kZWxzXCI7XHJcbmltcG9ydCB7IElUbGRUZXJtQ29sbGVjdGlvbiB9IGZyb20gXCIuLi90ZXJtLWFwaS9tb2RlbHMvdGxkLXRlcm0tY29sbGVjdGlvbi5tb2RlbFwiO1xyXG5pbXBvcnQgeyBDb21iaW5lZENvbGxlY3Rpb25Ub29sdGlwS2V5IH0gZnJvbSBcIi4vY29tYmluZWQtY29sbGVjdGlvbi10b29sdGlwLWtleS5lbnVtXCI7XHJcbmltcG9ydCB7IE10Q29sbGVjdGlvblN0YXR1cyB9IGZyb20gXCIuL210LWNvbGxlY3Rpb24tc3RhdHVzLmVudW1cIjtcclxuaW1wb3J0IHsgTXRDb2xsZWN0aW9uIH0gZnJvbSBcIi4vbXQtY29sbGVjdGlvbi5tb2RlbFwiO1xyXG5cclxuLyoqXHJcbiAqIENsYXNzIHRoYXQgam9pbnMgY29sbGVjdGlvbiBmcm9tIHRlcm0gYXBpIGFuZCBpdHMgaW1wb3J0ZWQgY29sbGVjdGlvbiBmcm9tIE1UIGFwaS5cclxuICovXHJcbmV4cG9ydCBjbGFzcyBDb21iaW5lZENvbGxlY3Rpb24ge1xyXG4gIG10Q29sbGVjdGlvbjogTXRDb2xsZWN0aW9uO1xyXG4gIHRlcm1Db2xsZWN0aW9uOiBJVGxkVGVybUNvbGxlY3Rpb247XHJcbiAgdGVybVRvb2x0aXBLZXk6IENvbWJpbmVkQ29sbGVjdGlvblRvb2x0aXBLZXk7XHJcbiAgc291cmNlOiBFbmdpbmVUZXJtQ29sbGVjdGlvblNvdXJjZTtcclxuICAvKipcclxuICAgKiBNb2RpZmllZCBkYXRlIGZyb20gdGVybSBhcGkgb3IgbGFzdCB1cGRhdGVkIGZyb20gbXQgYXBpLlxyXG4gICAqL1xyXG4gIGxhc3RVcGRhdGVkOiBEYXRlO1xyXG5cclxuICAvLyNyZWdpb24gU3RhdGljIHByb3BlcnRpZXNcclxuICBzdGF0aWMgaW1wb3J0aW5nU3RhdHVzZXMgPSBbTXRDb2xsZWN0aW9uU3RhdHVzLkZFVENISU5HLCBNdENvbGxlY3Rpb25TdGF0dXMuUFJFUFJPQ0VTU0lORywgTXRDb2xsZWN0aW9uU3RhdHVzLlBST0NFU1NJTkcsIE10Q29sbGVjdGlvblN0YXR1cy5RVUVVSU5HXTtcclxuXHJcbiAgc3RhdGljIGZpbmRFeGlzdGluZ0NvbGxlY3Rpb25Gcm9tTGlzdChjb2xsZWN0aW9uczogSXRlcmFibGU8Q29tYmluZWRDb2xsZWN0aW9uPiwgY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uKSB7XHJcbiAgICBmb3IgKGNvbnN0IGNvbCBvZiBjb2xsZWN0aW9ucykge1xyXG4gICAgICBpZiAoKGNvbC50ZXJtSWQgJiYgY29sLnRlcm1JZCA9PSBjb2xsZWN0aW9uLnRlcm1JZCkgfHxcclxuICAgICAgICAoY29sLm10Q29sbGVjdGlvbj8uaWQgJiYgY29sLm10Q29sbGVjdGlvbi5pZCA9PSBjb2xsZWN0aW9uLm10Q29sbGVjdGlvbj8uaWQpKSB7XHJcbiAgICAgICAgcmV0dXJuIGNvbDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZmluZEV4aXN0aW5nSW5kZXhGcm9tTGlzdChjb2xsZWN0aW9uczogSXRlcmFibGU8Q29tYmluZWRDb2xsZWN0aW9uPiwgY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uKTogbnVtYmVyIHtcclxuICAgIGlmICghY29sbGVjdGlvbnMpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGkgPSAwO1xyXG4gICAgZm9yIChjb25zdCBjb2wgb2YgY29sbGVjdGlvbnMpIHtcclxuICAgICAgaWYgKChjb2wudGVybUlkICYmIGNvbC50ZXJtSWQgPT0gY29sbGVjdGlvbi50ZXJtSWQpIHx8XHJcbiAgICAgICAgKGNvbC5tdENvbGxlY3Rpb24/LmlkICYmIGNvbC5tdENvbGxlY3Rpb24uaWQgPT0gY29sbGVjdGlvbi5tdENvbGxlY3Rpb24/LmlkKSkge1xyXG4gICAgICAgIHJldHVybiBpO1xyXG4gICAgICB9XHJcbiAgICAgIGkgKz0gMTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgLy8jcmVnaW9uIEVkaXRhYmxlIE1UIChhcGkgdjIpIGZpZWxkc1xyXG4gIGVkaXRhYmxlczoge1xyXG4gICAgZGVmYXVsdD86IGJvb2xlYW47XHJcbiAgICBzY29wZT86IEVuZ2luZVRlcm1Db2xsZWN0aW9uU2NvcGU7XHJcbiAgfSA9IHt9O1xyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxuICAvLyNyZWdpb24gR2V0dGVycyBmb3IgY29tbW9uIGZpZWxkc1xyXG4gIC8vIEl0IGlzIHBvc3NpYmxlIHRvIG9wdGltaXplIGdldHRlcnMsIGJ5IHNldHRpbmcgc29tZSBvZiB0aGUgdmFsdWVzIGluIHVwZGF0ZSBtZXRob2QsIGJ1dCBpdCBpcyBsZWZ0IHRoaXMgd2F5LCBzbyB0aGF0IGRhdGEgaXMgbW9yZSBjb25zaXN0ZW50LlxyXG4gIC8vIE90aGVyd2lzZSBpdCBtaWdodCBiZSBlYXN5IHRvIG1pc3Mgc29tZSBwcm9wZXJ0eSB1cGRhdGluZyBhbmQgZ2V0IHdyb25nIGRhdGEgaW4gZnV0dXJlLlxyXG5cclxuICBwcml2YXRlIF9pc1N5bmNocm9uaXplZDogYm9vbGVhbiA9IHRydWU7XHJcbiAgLyoqXHJcbiAgICogV2VhdGhlciBjb2xsZWN0aW9uIGlzIHN5bmNocm9uaXplZCB3aXRoIHRlcm0gcG9ydGFsIGNvbGxlY3Rpb24uIElmIG5vIHRlcm0gY29sbGVjdGlvbiwgdmFsdWUgaXMgc2V0IHRvIHRydWUuXHJcbiAgICovXHJcbiAgZ2V0IGlzU3luY2hyb25pemVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lzU3luY2hyb25pemVkO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGV0ZXJtaW5lcyBpZiBjb2xsZWN0aW9ucyBpcyAnc3luY2FibGUnLiBSZXR1cm5zIHRydWUgaWYgaXQgaXMgbm90IHN5bmNlZCBvciBpZiBzeW5jaHJvbml6YXRpb24gaGFzIGZhaWxlZCBhbmQgc3RhdHVzIGlzIGVycm9yLlxyXG4gICAqL1xyXG4gIGdldCBzeW5jQnV0dG9uVmlzc2libGUoKSB7XHJcbiAgICByZXR1cm4gIXRoaXMuaXNTeW5jaHJvbml6ZWQgfHwgKHRoaXMudGVybUNvbGxlY3Rpb24/Lm1vZGlmeURhdGUgJiYgdGhpcy5tdFN0YXR1cyA9PT0gTXRDb2xsZWN0aW9uU3RhdHVzLkVSUk9SKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIElmIG5vdCByZWFkeSBvciBlcnJvciwgdGhlbiBjb2xsZWN0aW9uIGlzIGltcG9ydGluZy5cclxuICAgKi9cclxuICBnZXQgaXNJbXBvcnRpbmcoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5tdENvbGxlY3Rpb24gJiYgQ29tYmluZWRDb2xsZWN0aW9uLmltcG9ydGluZ1N0YXR1c2VzLmluY2x1ZGVzKHRoaXMubXRDb2xsZWN0aW9uPy5zdGF0dXMpO1xyXG4gIH07XHJcblxyXG4gIC8qKlxyXG4gICAqIFRlcm0gY29sbGVjdGlvbiBpZC4gUmV0dXJucyB2YWx1ZSBmcm9tIHRlcm0gY29sbGVjdGlvbiBvciBmcm9tIG10LCBpZiB0ZXJtIGNvbGxlY3Rpb24gbm90IGV4aXN0aW5nLlxyXG4gICAqL1xyXG4gIGdldCB0ZXJtSWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy50ZXJtQ29sbGVjdGlvbj8uaWQgPz8gdGhpcy5tdENvbGxlY3Rpb24/LnRlcm1JZDtcclxuICB9XHJcblxyXG4gIGdldCBtdFN0YXR1cygpIHtcclxuICAgIHJldHVybiB0aGlzLm10Q29sbGVjdGlvbj8uc3RhdHVzO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHNjb3BlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubXRDb2xsZWN0aW9uPy5zY29wZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbGxlY3Rpb24gbmFtZS4gSWYgaGFzIHRlcm0gY29sbGVjdGlvbiwgdGFrZXMgZnJvbSB0aGVyZS4gSWYgbm90LCB0aGVuIHJldHVybnMgbXQgY29sbGVjdGlvbiBuYW1lLlxyXG4gICAqL1xyXG4gIGdldCBuYW1lKCkge1xyXG4gICAgcmV0dXJuIHRoaXMudGVybUNvbGxlY3Rpb24/Lm5hbWUgPz8gdGhpcy5tdENvbGxlY3Rpb24/Lm5hbWU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFbnRyeSBjb3VudCBmcm9tIHRlcm0gYXBpLlxyXG4gICAqL1xyXG4gIGdldCB0ZXJtRW50cmllcygpIHtcclxuICAgIHJldHVybiB0aGlzLnRlcm1Db2xsZWN0aW9uPy5lbnRyeUNvdW50O1xyXG4gIH1cclxuXHJcbiAgZ2V0IGRlZmF1bHQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5tdENvbGxlY3Rpb24/LmRlZmF1bHQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTdGF0dXMgZnJvbSBtdCBhcGkgb3IgY3VzdG9tIFwiTk9UX0lOX1VTRVwiIHN0YXR1cyBpZiBub3QgaW1wb3J0ZWQgaW4gbXQuc1xyXG4gICAqL1xyXG4gIGdldCBzdGF0dXMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5tdFN0YXR1cyA/PyBNdENvbGxlY3Rpb25TdGF0dXMuTk9UX0lOX1VTRTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNjb3BlIGNhbiBiZSBlZGl0ZWQgb25seSBpZiBoYXMgbXQgY29sbGNldGlvbiBvciB0ZXJtIGNvbGxlY3Rpb24gaXMgYmVpbmcgcHJlcGFyZWQgZm9yIGltcG9ydC5cclxuICAgKi9cclxuICBnZXQgY2FuRWRpdFNjb3BlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubXRDb2xsZWN0aW9uIHx8IHRoaXMuZWRpdGFibGVzLmRlZmF1bHQ7XHJcbiAgfVxyXG5cclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgY29uc3RydWN0b3IodGVybUFwaUNvbGxlY3Rpb246IElUbGRUZXJtQ29sbGVjdGlvbiwgbXRDb2xsZWN0aW9uOiBNdENvbGxlY3Rpb24pIHtcclxuICAgIHRoaXMubXRDb2xsZWN0aW9uID0gbXRDb2xsZWN0aW9uO1xyXG4gICAgdGhpcy50ZXJtQ29sbGVjdGlvbiA9IHRlcm1BcGlDb2xsZWN0aW9uO1xyXG4gICAgdGhpcy51cGRhdGUobnVsbCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVcGRhdGVzIGNvbGxlY3Rpb24gd2l0aCB2YWx1ZXMgZnJvbSBuZXcgY29sbGVjdGlvbi5cclxuICAgKiBAcGFyYW0gY29sbGVjdGlvbiBjb2xsZWN0aW9uIGZyb20gd2hpY2ggc2hvdWxkIGJlIHVwZGF0ZWQuXHJcbiAgICogQHBhcmFtIGluaXRpYWxSZWZyZXNoIGlmIHNldCB0byB0cnVlLCBlZGl0YWJsZSBmaWVsZHMgd2lsbCBhbHNvIGJlIHVwZGF0ZWQuXHJcbiAgICovXHJcbiAgdXBkYXRlKGNvbGxlY3Rpb246IENvbWJpbmVkQ29sbGVjdGlvbiwgaW5pdGlhbFJlZnJlc2ggPSB0cnVlKSB7XHJcbiAgICBpZiAoY29sbGVjdGlvbj8udGVybUNvbGxlY3Rpb24pIHtcclxuICAgICAgdGhpcy50ZXJtQ29sbGVjdGlvbiA9IGNvbGxlY3Rpb24udGVybUNvbGxlY3Rpb247XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbGxlY3Rpb24/Lm10Q29sbGVjdGlvbikge1xyXG4gICAgICB0aGlzLm10Q29sbGVjdGlvbiA9IGNvbGxlY3Rpb24ubXRDb2xsZWN0aW9uO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChpbml0aWFsUmVmcmVzaCkge1xyXG4gICAgICB0aGlzLnVwZGF0ZUVkaXRhYmxlcyh0aGlzLm10Q29sbGVjdGlvbj8uZGVmYXVsdCwgdGhpcy5tdENvbGxlY3Rpb24/LnNjb3BlID8/IEVuZ2luZVRlcm1Db2xsZWN0aW9uU2NvcGUuR0xPQkFMKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnVwZGF0ZUlzU3luY2hyb25pemVkKCk7XHJcbiAgICB0aGlzLnVwZGF0ZVRvb2x0aXBLZXkoKTtcclxuICAgIHRoaXMudXBkYXRlU291cmNlKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJZiBzb21lIG9mIGVkaXRhYmxlcyBhcmUgZWRpdGVkLlxyXG4gICAqXHJcbiAgICogaWYgY29sbGVjdGlvbiBub3QgaW1wb3J0ZWQgYW5kIGVuYWJsZWQgbm90IHNldCwgbWV0aG9kIHdpbGwgcmV0dXJuIHRydWUsIGJlY2F1c2UgeW91IGNhbm5vdCB1cGRhdGUgY29sbGVjdGlvbiBpZiBpdCBpcyBub3QgaW1wb3J0ZWQgb3IgaXMgbm90IG1lYW50IHRvIGJlIGltcG9ydGVkLlxyXG4gICAqXHJcbiAgICogQHJldHVybnMgdHJ1ZSBpZiBjb2xsZWN0aW9uIGlzIGVkaXRlZCwgZmFsc2UgaWYgbm90LlxyXG4gICAqL1xyXG4gIGlzRWRpdGVkKCkge1xyXG4gICAgLy8gaWYgY29sbGVjdGlvbiBub3QgaW1wb3J0ZWQgYW5kIGVuYWJsZWQgbm90IHNldCwgc2hvdWxkIG5vdCB1cGRhdGUgY29sbGVjdGlvbi5cclxuICAgIGlmICghdGhpcy5tdENvbGxlY3Rpb24gJiYgIXRoaXMuZWRpdGFibGVzLmRlZmF1bHQpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAoKHRoaXMubXRDb2xsZWN0aW9uPy5kZWZhdWx0ICE9PSB0aGlzLmVkaXRhYmxlcy5kZWZhdWx0KVxyXG4gICAgICB8fCAodGhpcy5tdENvbGxlY3Rpb24gJiYgdGhpcy5lZGl0YWJsZXMuc2NvcGUgIT09IHRoaXMubXRDb2xsZWN0aW9uLnNjb3BlKSkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERlbGV0ZXMgdGVybSBjb2xsZWN0aW9uIGFuZCBpdHMgcHJvcGVydGllcy5cclxuICAgKi9cclxuICBkZWxldGVUZXJtcygpIHtcclxuICAgIHRoaXMudGVybUNvbGxlY3Rpb24gPSBudWxsO1xyXG4gICAgdGhpcy51cGRhdGUobnVsbCwgZmFsc2UpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIERlbGV0ZXMgbXQgY29sbGVjdGlvbiBhbmQgaXRzIHByb3BlcnRpZXMuXHJcbiAgICovXHJcbiAgZGVsZXRlTVQoKSB7XHJcbiAgICB0aGlzLm10Q29sbGVjdGlvbiA9IG51bGw7XHJcbiAgICB0aGlzLnVwZGF0ZShudWxsKTtcclxuICB9XHJcblxyXG4gIHVwZGF0ZUVkaXRhYmxlcyhpc0RlZmF1bHQ6IGJvb2xlYW4sIHNjb3BlOiBFbmdpbmVUZXJtQ29sbGVjdGlvblNjb3BlKSB7XHJcbiAgICB0aGlzLmVkaXRhYmxlcy5kZWZhdWx0ID0gaXNEZWZhdWx0O1xyXG4gICAgdGhpcy5lZGl0YWJsZXMuc2NvcGUgPSBzY29wZTtcclxuICB9XHJcblxyXG4gIC8vI3JlZ2lvbiBQcml2YXRlIG1ldGhvZHNcclxuICBwcml2YXRlIHVwZGF0ZUlzU3luY2hyb25pemVkKCkge1xyXG4gICAgbGV0IGlzU3luY2hyb25pemVkID0gdHJ1ZTtcclxuICAgIGNvbnN0IHRlcm1Nb2RpZmllZCA9IHRoaXMudGVybUNvbGxlY3Rpb24/Lm1vZGlmeURhdGU7XHJcbiAgICBjb25zdCBsYXN0TXRVcGRhdGVkID0gdGhpcy5tdENvbGxlY3Rpb24/Lmxhc3RVcGRhdGVkO1xyXG4gICAgaWYgKHRlcm1Nb2RpZmllZCAmJiBsYXN0TXRVcGRhdGVkKSB7XHJcbiAgICAgIGlzU3luY2hyb25pemVkID0gdGVybU1vZGlmaWVkIDwgbGFzdE10VXBkYXRlZDtcclxuICAgIH1cclxuICAgIHRoaXMubGFzdFVwZGF0ZWQgPSBsYXN0TXRVcGRhdGVkID8/IHRlcm1Nb2RpZmllZDtcclxuICAgIHRoaXMuX2lzU3luY2hyb25pemVkID0gaXNTeW5jaHJvbml6ZWQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVNvdXJjZSgpIHtcclxuICAgIGlmICh0aGlzLnRlcm1Db2xsZWN0aW9uKSB7XHJcbiAgICAgIHRoaXMuc291cmNlID0gRW5naW5lVGVybUNvbGxlY3Rpb25Tb3VyY2UuVElMREVfVEVSTTtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKHRoaXMubXRDb2xsZWN0aW9uKSB7XHJcbiAgICAgIHRoaXMuc291cmNlID0gRW5naW5lVGVybUNvbGxlY3Rpb25Tb3VyY2UuRklMRTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlVG9vbHRpcEtleSgpIHtcclxuICAgIGlmICh0aGlzLnRlcm1Db2xsZWN0aW9uPy5lbnRyeUNvdW50ID09PSAwKSB7XHJcbiAgICAgIHRoaXMudGVybVRvb2x0aXBLZXkgPSBDb21iaW5lZENvbGxlY3Rpb25Ub29sdGlwS2V5Lk5PX0VOVFJJRVM7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmICh0aGlzLmlzSW1wb3J0aW5nKSB7XHJcbiAgICAgIHRoaXMudGVybVRvb2x0aXBLZXkgPSBDb21iaW5lZENvbGxlY3Rpb25Ub29sdGlwS2V5LklNUE9SVElORztcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLnRlcm1Ub29sdGlwS2V5ID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vI2VuZHJlZ2lvblxyXG59XHJcbiJdfQ==
196
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYmluZWQtY29sbGVjdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC10ZXJtL3NlcnZpY2VzL21vZGVscy9jb21iaW5lZC1jb2xsZWN0aW9uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTlGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBR2pFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGtCQUFrQjtJQTZIN0IsWUFBWTtJQUVaLFlBQVksaUJBQXFDLEVBQUUsWUFBMEI7UUF6RjdFLFlBQVk7UUFFWixxQ0FBcUM7UUFDckMsY0FBUyxHQUlMLEVBQUUsQ0FBQztRQUNQLGFBQWE7UUFFYixtQ0FBbUM7UUFDbkMsZ0pBQWdKO1FBQ2hKLDBGQUEwRjtRQUVsRixvQkFBZSxHQUFZLElBQUksQ0FBQztRQTRFdEMsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLGNBQWMsR0FBRyxpQkFBaUIsQ0FBQztRQUN4QyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUF0SEQsTUFBTSxDQUFDLDhCQUE4QixDQUFDLFdBQXlDLEVBQUUsVUFBOEI7UUFDN0csS0FBSyxNQUFNLEdBQUcsSUFBSSxXQUFXLEVBQUU7WUFDN0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLElBQUksR0FBRyxDQUFDLE1BQU0sSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDO2dCQUNqRCxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsRUFBRSxJQUFJLEdBQUcsQ0FB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O1FBQ3RCLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxVQUFVLEtBQUssQ0FBQyxFQUFFO1lBQ3pDLElBQUksQ0FBQyxjQUFjLEdBQUcsNEJBQTRCLENBQUMsVUFBVSxDQUFDO1NBQy9EO2FBQ0ksSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxjQUFjLEdBQUcsNEJBQTRCLENBQUMsU0FBUyxDQUFDO1NBQzlEO2FBQ0k7WUFDSCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztTQUM1QjtJQUNILENBQUM7O0FBNU5ELDJCQUEyQjtBQUNwQixvQ0FBaUIsR0FBRyxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxrQkFBa0IsQ0FBQyxhQUFhLEVBQUUsa0JBQWtCLENBQUMsVUFBVSxFQUFFLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW5naW5lVGVybUNvbGxlY3Rpb25TY29wZSwgRW5naW5lVGVybUNvbGxlY3Rpb25Tb3VyY2UgfSBmcm9tIFwiLi4vZW5naW5lLXRlcm0vbW9kZWxzXCI7XHJcbmltcG9ydCB7IElUbGRUZXJtQ29sbGVjdGlvbiB9IGZyb20gXCIuLi90ZXJtLWFwaS9tb2RlbHMvdGxkLXRlcm0tY29sbGVjdGlvbi5tb2RlbFwiO1xyXG5pbXBvcnQgeyBDb21iaW5lZENvbGxlY3Rpb25Ub29sdGlwS2V5IH0gZnJvbSBcIi4vY29tYmluZWQtY29sbGVjdGlvbi10b29sdGlwLWtleS5lbnVtXCI7XHJcbmltcG9ydCB7IE10Q29sbGVjdGlvblN0YXR1cyB9IGZyb20gXCIuL210LWNvbGxlY3Rpb24tc3RhdHVzLmVudW1cIjtcclxuaW1wb3J0IHsgTXRDb2xsZWN0aW9uIH0gZnJvbSBcIi4vbXQtY29sbGVjdGlvbi5tb2RlbFwiO1xyXG5cclxuLyoqXHJcbiAqIENsYXNzIHRoYXQgam9pbnMgY29sbGVjdGlvbiBmcm9tIHRlcm0gYXBpIGFuZCBpdHMgaW1wb3J0ZWQgY29sbGVjdGlvbiBmcm9tIE1UIGFwaS5cclxuICovXHJcbmV4cG9ydCBjbGFzcyBDb21iaW5lZENvbGxlY3Rpb24ge1xyXG4gIG10Q29sbGVjdGlvbjogTXRDb2xsZWN0aW9uO1xyXG4gIHRlcm1Db2xsZWN0aW9uOiBJVGxkVGVybUNvbGxlY3Rpb247XHJcbiAgdGVybVRvb2x0aXBLZXk6IENvbWJpbmVkQ29sbGVjdGlvblRvb2x0aXBLZXk7XHJcbiAgc291cmNlOiBFbmdpbmVUZXJtQ29sbGVjdGlvblNvdXJjZTtcclxuICAvKipcclxuICAgKiBNb2RpZmllZCBkYXRlIGZyb20gdGVybSBhcGkgb3IgbGFzdCB1cGRhdGVkIGZyb20gbXQgYXBpLlxyXG4gICAqL1xyXG4gIGxhc3RVcGRhdGVkOiBEYXRlO1xyXG5cclxuICAvLyNyZWdpb24gU3RhdGljIHByb3BlcnRpZXNcclxuICBzdGF0aWMgaW1wb3J0aW5nU3RhdHVzZXMgPSBbTXRDb2xsZWN0aW9uU3RhdHVzLkZFVENISU5HLCBNdENvbGxlY3Rpb25TdGF0dXMuUFJFUFJPQ0VTU0lORywgTXRDb2xsZWN0aW9uU3RhdHVzLlBST0NFU1NJTkcsIE10Q29sbGVjdGlvblN0YXR1cy5RVUVVSU5HXTtcclxuXHJcbiAgc3RhdGljIGZpbmRFeGlzdGluZ0NvbGxlY3Rpb25Gcm9tTGlzdChjb2xsZWN0aW9uczogSXRlcmFibGU8Q29tYmluZWRDb2xsZWN0aW9uPiwgY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uKSB7XHJcbiAgICBmb3IgKGNvbnN0IGNvbCBvZiBjb2xsZWN0aW9ucykge1xyXG4gICAgICBpZiAoKGNvbC50ZXJtSWQgJiYgY29sLnRlcm1JZCA9PSBjb2xsZWN0aW9uLnRlcm1JZCkgfHxcclxuICAgICAgICAoY29sLm10Q29sbGVjdGlvbj8uaWQgJiYgY29sLm10Q29sbGVjdGlvbi5pZCA9PSBjb2xsZWN0aW9uLm10Q29sbGVjdGlvbj8uaWQpKSB7XHJcbiAgICAgICAgcmV0dXJuIGNvbDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZmluZEV4aXN0aW5nSW5kZXhGcm9tTGlzdChjb2xsZWN0aW9uczogSXRlcmFibGU8Q29tYmluZWRDb2xsZWN0aW9uPiwgY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uKTogbnVtYmVyIHtcclxuICAgIGlmICghY29sbGVjdGlvbnMpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGkgPSAwO1xyXG4gICAgZm9yIChjb25zdCBjb2wgb2YgY29sbGVjdGlvbnMpIHtcclxuICAgICAgaWYgKChjb2wudGVybUlkICYmIGNvbC50ZXJtSWQgPT0gY29sbGVjdGlvbi50ZXJtSWQpIHx8XHJcbiAgICAgICAgKGNvbC5tdENvbGxlY3Rpb24/LmlkICYmIGNvbC5tdENvbGxlY3Rpb24uaWQgPT0gY29sbGVjdGlvbi5tdENvbGxlY3Rpb24/LmlkKSkge1xyXG4gICAgICAgIHJldHVybiBpO1xyXG4gICAgICB9XHJcbiAgICAgIGkgKz0gMTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgLy8jcmVnaW9uIEVkaXRhYmxlIE1UIChhcGkgdjIpIGZpZWxkc1xyXG4gIGVkaXRhYmxlczoge1xyXG4gICAgZGVmYXVsdD86IGJvb2xlYW47XHJcbiAgICBzY29wZT86IEVuZ2luZVRlcm1Db2xsZWN0aW9uU2NvcGU7XHJcbiAgICBvcmRlcj86IG51bWJlcjtcclxuICB9ID0ge307XHJcbiAgLy8gI2VuZHJlZ2lvblxyXG5cclxuICAvLyNyZWdpb24gR2V0dGVycyBmb3IgY29tbW9uIGZpZWxkc1xyXG4gIC8vIEl0IGlzIHBvc3NpYmxlIHRvIG9wdGltaXplIGdldHRlcnMsIGJ5IHNldHRpbmcgc29tZSBvZiB0aGUgdmFsdWVzIGluIHVwZGF0ZSBtZXRob2QsIGJ1dCBpdCBpcyBsZWZ0IHRoaXMgd2F5LCBzbyB0aGF0IGRhdGEgaXMgbW9yZSBjb25zaXN0ZW50LlxyXG4gIC8vIE90aGVyd2lzZSBpdCBtaWdodCBiZSBlYXN5IHRvIG1pc3Mgc29tZSBwcm9wZXJ0eSB1cGRhdGluZyBhbmQgZ2V0IHdyb25nIGRhdGEgaW4gZnV0dXJlLlxyXG5cclxuICBwcml2YXRlIF9pc1N5bmNocm9uaXplZDogYm9vbGVhbiA9IHRydWU7XHJcbiAgLyoqXHJcbiAgICogV2VhdGhlciBjb2xsZWN0aW9uIGlzIHN5bmNocm9uaXplZCB3aXRoIHRlcm0gcG9ydGFsIGNvbGxlY3Rpb24uIElmIG5vIHRlcm0gY29sbGVjdGlvbiwgdmFsdWUgaXMgc2V0IHRvIHRydWUuXHJcbiAgICovXHJcbiAgZ2V0IGlzU3luY2hyb25pemVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lzU3luY2hyb25pemVkO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGV0ZXJtaW5lcyBpZiBjb2xsZWN0aW9ucyBpcyAnc3luY2FibGUnLiBSZXR1cm5zIHRydWUgaWYgaXQgaXMgbm90IHN5bmNlZCBvciBpZiBzeW5jaHJvbml6YXRpb24gaGFzIGZhaWxlZCBhbmQgc3RhdHVzIGlzIGVycm9yLlxyXG4gICAqL1xyXG4gIGdldCBzeW5jQnV0dG9uVmlzc2libGUoKSB7XHJcbiAgICByZXR1cm4gIXRoaXMuaXNTeW5jaHJvbml6ZWQgfHwgKHRoaXMudGVybUNvbGxlY3Rpb24/Lm1vZGlmeURhdGUgJiYgdGhpcy5tdFN0YXR1cyA9PT0gTXRDb2xsZWN0aW9uU3RhdHVzLkVSUk9SKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIElmIG5vdCByZWFkeSBvciBlcnJvciwgdGhlbiBjb2xsZWN0aW9uIGlzIGltcG9ydGluZy5cclxuICAgKi9cclxuICBnZXQgaXNJbXBvcnRpbmcoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5tdENvbGxlY3Rpb24gJiYgQ29tYmluZWRDb2xsZWN0aW9uLmltcG9ydGluZ1N0YXR1c2VzLmluY2x1ZGVzKHRoaXMubXRDb2xsZWN0aW9uPy5zdGF0dXMpO1xyXG4gIH07XHJcblxyXG4gIC8qKlxyXG4gICAqIFRlcm0gY29sbGVjdGlvbiBpZC4gUmV0dXJucyB2YWx1ZSBmcm9tIHRlcm0gY29sbGVjdGlvbiBvciBmcm9tIG10LCBpZiB0ZXJtIGNvbGxlY3Rpb24gbm90IGV4aXN0aW5nLlxyXG4gICAqL1xyXG4gIGdldCB0ZXJtSWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy50ZXJtQ29sbGVjdGlvbj8uaWQgPz8gdGhpcy5tdENvbGxlY3Rpb24/LnRlcm1JZDtcclxuICB9XHJcblxyXG4gIGdldCBtdFN0YXR1cygpIHtcclxuICAgIHJldHVybiB0aGlzLm10Q29sbGVjdGlvbj8uc3RhdHVzO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHNjb3BlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZWRpdGFibGVzPy5zY29wZSA/PyB0aGlzLm10Q29sbGVjdGlvbj8uc2NvcGU7XHJcbiAgfVxyXG5cclxuICBnZXQgb3JkZXIoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5lZGl0YWJsZXM/Lm9yZGVyID8/IHRoaXMubXRDb2xsZWN0aW9uPy5vcmRlcjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbGxlY3Rpb24gbmFtZS4gSWYgaGFzIHRlcm0gY29sbGVjdGlvbiwgdGFrZXMgZnJvbSB0aGVyZS4gSWYgbm90LCB0aGVuIHJldHVybnMgbXQgY29sbGVjdGlvbiBuYW1lLlxyXG4gICAqL1xyXG4gIGdldCBuYW1lKCkge1xyXG4gICAgcmV0dXJuIHRoaXMudGVybUNvbGxlY3Rpb24/Lm5hbWUgPz8gdGhpcy5tdENvbGxlY3Rpb24/Lm5hbWU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFbnRyeSBjb3VudCBmcm9tIHRlcm0gYXBpLlxyXG4gICAqL1xyXG4gIGdldCB0ZXJtRW50cmllcygpIHtcclxuICAgIHJldHVybiB0aGlzLnRlcm1Db2xsZWN0aW9uPy5lbnRyeUNvdW50O1xyXG4gIH1cclxuXHJcbiAgZ2V0IGRlZmF1bHQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5lZGl0YWJsZXM/LmRlZmF1bHQgPz8gdGhpcy5tdENvbGxlY3Rpb24/LmRlZmF1bHQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTdGF0dXMgZnJvbSBtdCBhcGkgb3IgY3VzdG9tIFwiTk9UX0lOX1VTRVwiIHN0YXR1cyBpZiBub3QgaW1wb3J0ZWQgaW4gbXQuc1xyXG4gICAqL1xyXG4gIGdldCBzdGF0dXMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5tdFN0YXR1cyA/PyBNdENvbGxlY3Rpb25TdGF0dXMuTk9UX0lOX1VTRTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNjb3BlIGNhbiBiZSBlZGl0ZWQgb25seSBpZiBoYXMgbXQgY29sbGNldGlvbiBvciB0ZXJtIGNvbGxlY3Rpb24gaXMgYmVpbmcgcHJlcGFyZWQgZm9yIGltcG9ydC5cclxuICAgKi9cclxuICBnZXQgY2FuRWRpdFNjb3BlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubXRDb2xsZWN0aW9uIHx8IHRoaXMuZGVmYXVsdDtcclxuICB9XHJcblxyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxuICBjb25zdHJ1Y3Rvcih0ZXJtQXBpQ29sbGVjdGlvbjogSVRsZFRlcm1Db2xsZWN0aW9uLCBtdENvbGxlY3Rpb246IE10Q29sbGVjdGlvbikge1xyXG4gICAgdGhpcy5tdENvbGxlY3Rpb24gPSBtdENvbGxlY3Rpb247XHJcbiAgICB0aGlzLnRlcm1Db2xsZWN0aW9uID0gdGVybUFwaUNvbGxlY3Rpb247XHJcbiAgICB0aGlzLnVwZGF0ZShudWxsKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVwZGF0ZXMgY29sbGVjdGlvbiB3aXRoIHZhbHVlcyBmcm9tIG5ldyBjb2xsZWN0aW9uLlxyXG4gICAqIEBwYXJhbSBjb2xsZWN0aW9uIGNvbGxlY3Rpb24gZnJvbSB3aGljaCBzaG91bGQgYmUgdXBkYXRlZC5cclxuICAgKiBAcGFyYW0gaW5pdGlhbFJlZnJlc2ggaWYgc2V0IHRvIHRydWUsIGVkaXRhYmxlIGZpZWxkcyB3aWxsIGFsc28gYmUgdXBkYXRlZC5cclxuICAgKi9cclxuICB1cGRhdGUoY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uLCBpbml0aWFsUmVmcmVzaCA9IHRydWUpIHtcclxuICAgIGlmIChjb2xsZWN0aW9uPy50ZXJtQ29sbGVjdGlvbikge1xyXG4gICAgICB0aGlzLnRlcm1Db2xsZWN0aW9uID0gY29sbGVjdGlvbi50ZXJtQ29sbGVjdGlvbjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY29sbGVjdGlvbj8ubXRDb2xsZWN0aW9uKSB7XHJcbiAgICAgIHRoaXMubXRDb2xsZWN0aW9uID0gY29sbGVjdGlvbi5tdENvbGxlY3Rpb247XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGluaXRpYWxSZWZyZXNoKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlRWRpdGFibGVzKHRoaXMubXRDb2xsZWN0aW9uPy5kZWZhdWx0LCB0aGlzLm10Q29sbGVjdGlvbj8uc2NvcGUgPz8gRW5naW5lVGVybUNvbGxlY3Rpb25TY29wZS5HTE9CQUwsIHRoaXMubXRDb2xsZWN0aW9uPy5vcmRlcik7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy51cGRhdGVJc1N5bmNocm9uaXplZCgpO1xyXG4gICAgdGhpcy51cGRhdGVUb29sdGlwS2V5KCk7XHJcbiAgICB0aGlzLnVwZGF0ZVNvdXJjZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSWYgc29tZSBvZiBlZGl0YWJsZXMgYXJlIGVkaXRlZC5cclxuICAgKlxyXG4gICAqIGlmIGNvbGxlY3Rpb24gbm90IGltcG9ydGVkIGFuZCBlbmFibGVkIG5vdCBzZXQsIG1ldGhvZCB3aWxsIHJldHVybiB0cnVlLCBiZWNhdXNlIHlvdSBjYW5ub3QgdXBkYXRlIGNvbGxlY3Rpb24gaWYgaXQgaXMgbm90IGltcG9ydGVkIG9yIGlzIG5vdCBtZWFudCB0byBiZSBpbXBvcnRlZC5cclxuICAgKlxyXG4gICAqIEByZXR1cm5zIHRydWUgaWYgY29sbGVjdGlvbiBpcyBlZGl0ZWQsIGZhbHNlIGlmIG5vdC5cclxuICAgKi9cclxuICBpc0VkaXRlZCgpIHtcclxuICAgIC8vIGlmIGNvbGxlY3Rpb24gbm90IGltcG9ydGVkIGFuZCBlbmFibGVkIG5vdCBzZXQsIHNob3VsZCBub3QgdXBkYXRlIGNvbGxlY3Rpb24uXHJcbiAgICBpZiAoIXRoaXMubXRDb2xsZWN0aW9uICYmICF0aGlzLmRlZmF1bHQpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAoKHRoaXMubXRDb2xsZWN0aW9uPy5kZWZhdWx0ICE9PSB0aGlzLmVkaXRhYmxlcy5kZWZhdWx0KVxyXG4gICAgICB8fCAodGhpcy5tdENvbGxlY3Rpb24gJiYgdGhpcy5lZGl0YWJsZXMuc2NvcGUgIT09IHRoaXMubXRDb2xsZWN0aW9uLnNjb3BlKVxyXG4gICAgICB8fCAodGhpcy5tdENvbGxlY3Rpb24/Lm9yZGVyICE9PSB0aGlzLmVkaXRhYmxlcy5vcmRlcikpIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZWxldGVzIHRlcm0gY29sbGVjdGlvbiBhbmQgaXRzIHByb3BlcnRpZXMuXHJcbiAgICovXHJcbiAgZGVsZXRlVGVybXMoKSB7XHJcbiAgICB0aGlzLnRlcm1Db2xsZWN0aW9uID0gbnVsbDtcclxuICAgIHRoaXMudXBkYXRlKG51bGwsIGZhbHNlKTtcclxuICB9XHJcblxyXG5cclxuICAvKipcclxuICAgKiBEZWxldGVzIG10IGNvbGxlY3Rpb24gYW5kIGl0cyBwcm9wZXJ0aWVzLlxyXG4gICAqL1xyXG4gIGRlbGV0ZU1UKCkge1xyXG4gICAgdGhpcy5tdENvbGxlY3Rpb24gPSBudWxsO1xyXG4gICAgdGhpcy51cGRhdGUobnVsbCk7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVFZGl0YWJsZXMoaXNEZWZhdWx0OiBib29sZWFuLCBzY29wZTogRW5naW5lVGVybUNvbGxlY3Rpb25TY29wZSwgb3JkZXI6IG51bWJlcikge1xyXG4gICAgdGhpcy5lZGl0YWJsZXMuZGVmYXVsdCA9IGlzRGVmYXVsdDtcclxuICAgIHRoaXMuZWRpdGFibGVzLnNjb3BlID0gc2NvcGU7XHJcbiAgICB0aGlzLmVkaXRhYmxlcy5vcmRlciA9IG9yZGVyO1xyXG4gIH1cclxuXHJcbiAgLy8jcmVnaW9uIFByaXZhdGUgbWV0aG9kc1xyXG4gIHByaXZhdGUgdXBkYXRlSXNTeW5jaHJvbml6ZWQoKSB7XHJcbiAgICBsZXQgaXNTeW5jaHJvbml6ZWQgPSB0cnVlO1xyXG4gICAgY29uc3QgdGVybU1vZGlmaWVkID0gdGhpcy50ZXJtQ29sbGVjdGlvbj8ubW9kaWZ5RGF0ZTtcclxuICAgIGNvbnN0IGxhc3RNdFVwZGF0ZWQgPSB0aGlzLm10Q29sbGVjdGlvbj8ubGFzdFVwZGF0ZWQ7XHJcbiAgICBpZiAodGVybU1vZGlmaWVkICYmIGxhc3RNdFVwZGF0ZWQpIHtcclxuICAgICAgaXNTeW5jaHJvbml6ZWQgPSB0ZXJtTW9kaWZpZWQgPCBsYXN0TXRVcGRhdGVkO1xyXG4gICAgfVxyXG4gICAgdGhpcy5sYXN0VXBkYXRlZCA9IGxhc3RNdFVwZGF0ZWQgPz8gdGVybU1vZGlmaWVkO1xyXG4gICAgdGhpcy5faXNTeW5jaHJvbml6ZWQgPSBpc1N5bmNocm9uaXplZDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlU291cmNlKCkge1xyXG4gICAgaWYgKHRoaXMudGVybUNvbGxlY3Rpb24pIHtcclxuICAgICAgdGhpcy5zb3VyY2UgPSBFbmdpbmVUZXJtQ29sbGVjdGlvblNvdXJjZS5USUxERV9URVJNO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAodGhpcy5tdENvbGxlY3Rpb24pIHtcclxuICAgICAgdGhpcy5zb3VyY2UgPSBFbmdpbmVUZXJtQ29sbGVjdGlvblNvdXJjZS5GSUxFO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVUb29sdGlwS2V5KCkge1xyXG4gICAgaWYgKHRoaXMudGVybUNvbGxlY3Rpb24/LmVudHJ5Q291bnQgPT09IDApIHtcclxuICAgICAgdGhpcy50ZXJtVG9vbHRpcEtleSA9IENvbWJpbmVkQ29sbGVjdGlvblRvb2x0aXBLZXkuTk9fRU5UUklFUztcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKHRoaXMuaXNJbXBvcnRpbmcpIHtcclxuICAgICAgdGhpcy50ZXJtVG9vbHRpcEtleSA9IENvbWJpbmVkQ29sbGVjdGlvblRvb2x0aXBLZXkuSU1QT1JUSU5HO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMudGVybVRvb2x0aXBLZXkgPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8jZW5kcmVnaW9uXHJcbn1cclxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXQtY29sbGVjdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC10ZXJtL3NlcnZpY2VzL21vZGVscy9tdC1jb2xsZWN0aW9uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbmdpbmVUZXJtQ29sbGVjdGlvblNjb3BlIH0gZnJvbSBcIi4uL2VuZ2luZS10ZXJtL21vZGVscy9lbmdpbmUtdGVybS1jb2xsZWN0aW9uLXNjb3BlLmVudW1cIjtcclxuaW1wb3J0IHsgTXRDb2xsZWN0aW9uU3RhdHVzIH0gZnJvbSBcIi4vbXQtY29sbGVjdGlvbi1zdGF0dXMuZW51bVwiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBNdENvbGxlY3Rpb24ge1xyXG4gIC8vI3JlZ2lvbiBDb21tb24gdjEgYW5kIHYyIHByb3BlcnRpZXNcclxuICBpZDogc3RyaW5nO1xyXG4gIGxhc3RVcGRhdGVkOiBEYXRlO1xyXG4gIHN0YXR1czogTXRDb2xsZWN0aW9uU3RhdHVzO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICB0ZXJtSWQ/OiBzdHJpbmc7XHJcbiAgLy8jZW5kcmVnaW9uXHJcbiAgLy8jcmVnaW9uIE9OTFkgQXBpIHYyIHByb3BlcnRpZXNcclxuICAvKipcclxuICAgKiBBcGkgdjIgZGV0ZXJtaW5lcyBpZiBjb2xsZWN0aW9uIGlzIGRlZmF1bHQuXHJcbiAgICovXHJcbiAgZGVmYXVsdD86IGJvb2xlYW47XHJcbiAgc2NvcGU/OiBFbmdpbmVUZXJtQ29sbGVjdGlvblNjb3BlO1xyXG4gIC8vI2VuZHJlZ2lvblxyXG59XHJcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXQtY29sbGVjdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC10ZXJtL3NlcnZpY2VzL21vZGVscy9tdC1jb2xsZWN0aW9uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbmdpbmVUZXJtQ29sbGVjdGlvblNjb3BlIH0gZnJvbSBcIi4uL2VuZ2luZS10ZXJtL21vZGVscy9lbmdpbmUtdGVybS1jb2xsZWN0aW9uLXNjb3BlLmVudW1cIjtcclxuaW1wb3J0IHsgTXRDb2xsZWN0aW9uU3RhdHVzIH0gZnJvbSBcIi4vbXQtY29sbGVjdGlvbi1zdGF0dXMuZW51bVwiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBNdENvbGxlY3Rpb24ge1xyXG4gIC8vI3JlZ2lvbiBDb21tb24gdjEgYW5kIHYyIHByb3BlcnRpZXNcclxuICBpZDogc3RyaW5nO1xyXG4gIGxhc3RVcGRhdGVkOiBEYXRlO1xyXG4gIHN0YXR1czogTXRDb2xsZWN0aW9uU3RhdHVzO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICB0ZXJtSWQ/OiBzdHJpbmc7XHJcbiAgLy8jZW5kcmVnaW9uXHJcbiAgLy8jcmVnaW9uIE9OTFkgQXBpIHYyIHByb3BlcnRpZXNcclxuICAvKipcclxuICAgKiBBcGkgdjIgZGV0ZXJtaW5lcyBpZiBjb2xsZWN0aW9uIGlzIGRlZmF1bHQuXHJcbiAgICovXHJcbiAgZGVmYXVsdD86IGJvb2xlYW47XHJcbiAgc2NvcGU/OiBFbmdpbmVUZXJtQ29sbGVjdGlvblNjb3BlO1xyXG4gIG9yZGVyPzogbnVtYmVyO1xyXG4gIHRlcm1Db3VudD86IG51bWJlcjtcclxuICAvLyNlbmRyZWdpb25cclxufVxyXG4iXX0=
@@ -47,7 +47,8 @@ export class TerminologyService {
47
47
  }
48
48
  setEngine(engineId, languages = null, setSelectedFromLocalStorage = false, termCollections = true, mtCollections = true) {
49
49
  // engine is already set with that ID and no need to refresh it.
50
- if (engineId !== this.engineId || JSON.stringify(languages) !== JSON.stringify(this.engineLanguages)) {
50
+ if (engineId !== this.engineId || JSON.stringify(languages) !== JSON.stringify(this.engineLanguages)
51
+ || this.refreshMtCollections !== mtCollections || this.refreshTermCollections !== termCollections) {
51
52
  this.engineLanguages = languages;
52
53
  this.refreshMtCollections = mtCollections;
53
54
  this.refreshTermCollections = termCollections;
@@ -305,4 +306,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
305
306
  type: Inject,
306
307
  args: [MT_TERM_API_TOKEN]
307
308
  }] }]; } });
308
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybWlub2xvZ3kuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC10ZXJtL3NlcnZpY2VzL3Rlcm1pbm9sb2d5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFFBQVEsRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU5RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7OztBQU94RSxNQUFNLE9BQU8sa0JBQWtCO0lBOEQ3QixZQUE2QixNQUFpQyxFQUMzQyxPQUF1QixFQUNMLEtBQXFCO1FBRjdCLFdBQU0sR0FBTixNQUFNLENBQTJCO1FBQzNDLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ0wsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUE5RGxELGNBQVMsR0FBdUIsSUFBSSxDQUFDO1FBOEM1QixpQkFBWSxHQUFHLElBQUksT0FBTyxFQUEyQixDQUFDO1FBRXRELHNCQUFpQixHQUFHLHVCQUF1QixDQUFDO0lBY0MsQ0FBQztJQTdEL0QsSUFBSSxRQUFRLEtBQUssT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUN6QyxJQUFJLFFBQVEsQ0FBQyxHQUF1QjtRQUNsQyxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQztRQUNyQixJQUFJLENBQUMsMkJBQTJCLEVB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RUFBRTtZQUN2QixrQkFBa0IsR0FBRyxFQUFFLENBQUM7U0FDekI7UUFFRCxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsRUFBRSxFQUFFLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNoSSw2QkFBNkI7UUFDN0IsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixNQUFNLElBQUksR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzFELElBQUk7WUFDRixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDekI7UUFDRCxNQUFNO1lBQ0osT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUM7SUFFTyxtQkFBbUI7UUFDekIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzNDLENBQUM7OytHQTlXVSxrQkFBa0IseUZBZ0VuQixpQkFBaUI7bUhBaEVoQixrQkFBa0IsY0FGakIsTUFBTTsyRkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFpRUksTUFBTTsyQkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0LCB0YXAgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgTVRfVEVSTV9BUElfVE9LRU4gfSBmcm9tICcuLi8uLi8uLi9pbmplY3Rpb24tdG9rZW5zJztcclxuaW1wb3J0IHsgVGxkVHJhbnNsYXRlQ29uZmlnU2VydmljZSB9IGZyb20gJy4uLy4uL3RsZC1jb21tb24vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBFbmdpbmVUZXJtQ29sbGVjdGlvblNvdXJjZSB9IGZyb20gJy4vZW5naW5lLXRlcm0vbW9kZWxzJztcclxuaW1wb3J0IHsgQ29tYmluZWRDb2xsZWN0aW9uIH0gZnJvbSAnLi9tb2RlbHMvY29tYmluZWQtY29sbGVjdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IE10Q29sbGVjdGlvblN0YXR1cyB9IGZyb20gJy4vbW9kZWxzL210LWNvbGxlY3Rpb24tc3RhdHVzLmVudW0nO1xyXG5pbXBvcnQgeyBJTXRUZXJtU2VydmljZSB9IGZyb20gJy4vbW9kZWxzL210LXRlcm0tc2VydmljZS5tb2RlbCc7XHJcbmltcG9ydCB7IFRlcm1BcGlTZXJ2aWNlIH0gZnJvbSAnLi90ZXJtLWFwaS90ZXJtLWFwaS5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFRlcm1pbm9sb2d5U2VydmljZSB7XHJcblxyXG4gIHByaXZhdGUgX3NlbGVjdGVkOiBDb21iaW5lZENvbGxlY3Rpb24gPSBudWxsO1xyXG4gIGdldCBzZWxlY3RlZCgpIHsgcmV0dXJuIHRoaXMuX3NlbGVjdGVkOyB9XHJcbiAgc2V0IHNlbGVjdGVkKHZhbDogQ29tYmluZWRDb2xsZWN0aW9uKSB7XHJcbiAgICB0aGlzLl9zZWxlY3RlZCA9IHZhbDtcclxuICAgIHRoaXMuc3RvcmVTZWxlY3RlZEluTG9jYWxTdG9yYWdlKCk7XHJcbiAgICBpZiAoIXRoaXMuX3NlbGVjdGVkKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIXRoaXMuX3NlbGVjdGVkLm10Q29sbGVjdGlvbikge1xyXG4gICAgICB0aGlzLmFkZFRvRW5naW5lKHRoaXMuX3NlbGVjdGVkKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzQW55SW1wb3J0aW5nOiBib29sZWFuO1xyXG5cclxuXHJcbiAgcHJpdmF0ZSBfaGFzQW55Q29sbGVjdGlvbnM6IGJvb2xlYW47XHJcbiAgZ2V0IGhhc0FueUNvbGxlY3Rpb25zKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2hhc0FueUNvbGxlY3Rpb25zO1xyXG4gIH1cclxuXHJcblxyXG4gIGdldCBzaG91bGRTaG93UHJvbW90aW9uKCkge1xyXG4gICAgcmV0dXJuICF0aGlzLmhhc0FueUNvbGxlY3Rpb25zICYmICF0aGlzLmhhc0VkaXRQZXJtaXNzaW9ucztcclxuICB9XHJcblxyXG4gIGdldCBjYW5DcmVhdGVDb2xsZWN0aW9ucygpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZy50ZXJtQ29uZmlnLmNhbkNyZWF0ZUNvbGxlY3Rpb247XHJcbiAgfVxyXG5cclxuICBnZXQgaGFzRWRpdFBlcm1pc3Npb25zKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29uZmlnPy5jb3JlQ29uZmlnLmlzQXV0aCAmJiB0aGlzLmNhbkNyZWF0ZUNvbGxlY3Rpb25zICYmIHRoaXMuY29uZmlnLnRlcm1Db25maWcuaXNUZXJtUG9ydGFsU3VwcG9ydGVkO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaXNSZWZyZXNoaW5nQ29sbGVjdGlvbnM6IGJvb2xlYW47XHJcbiAgZ2V0IGlzUmVmcmVzaGluZ0NvbGxlY3Rpb25zKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lzUmVmcmVzaGluZ0NvbGxlY3Rpb25zO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfY29sbGVjdGlvbnM6IFNldDxDb21iaW5lZENvbGxlY3Rpb24+O1xyXG4gIGdldCBjb2xsZWN0aW9ucygpIHtcclxuICAgIHJldHVybiB0aGlzLl9jb2xsZWN0aW9ucztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgb25EYXRhVXBkYXRlID0gbmV3IFN1YmplY3Q8U2V0PENvbWJpbmVkQ29sbGVjdGlvbj4+KCk7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgTE9DQUxfU1RPUkFHRV9LRVkgPSBcInN5c3RlbUxhc3RDb2xsZWN0aW9uc1wiO1xyXG4gIHByaXZhdGUgZW5naW5lSWQ6IHN0cmluZztcclxuICBwcml2YXRlIHJlZnJlc2hNdENvbGxlY3Rpb25zOiBib29sZWFuO1xyXG4gIHByaXZhdGUgcmVmcmVzaFRlcm1Db2xsZWN0aW9uczogYm9vbGVhbjtcclxuICAvLyBzdG9yZXMgbGFuZ3VhZ2UgY29kZXMgd2hpY2ggYXJlIHVzZWQgdG8gZmlsdGVyIHZpc2JsZSBjb2xsZWN0aW9ucyBmcm9tIHRlcm0gYXBpLlxyXG4gIHByaXZhdGUgZW5naW5lTGFuZ3VhZ2VzOiBzdHJpbmdbXTtcclxuICBwcml2YXRlIHJlZnJlc2hUaW1lb3V0OiBhbnk7XHJcbiAgLy8gc29mdCByZWZyZXNoIHRha2VzIGluIGFjY291bnQgb3RoZXIgcGFyYW1zIGFzIHdlbGwuXHJcbiAgcHJpdmF0ZSBpc1NvZnRBdXRvUmVmcmVzaE9uOiBib29sZWFuO1xyXG4gIC8vIHNob3VsZCBkbyBhdXRvcmVmcmVzaCBieSBpZ25vcmluZyBhbnkgb3RoZXIgcGFyYW1zLlxyXG4gIHByaXZhdGUgaGFyZEF1dG9SZWZyZXNoOiBib29sZWFuO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGNvbmZpZzogVGxkVHJhbnNsYXRlQ29uZmlnU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGVybUFwaTogVGVybUFwaVNlcnZpY2UsXHJcbiAgICBASW5qZWN0KE1UX1RFUk1fQVBJX1RPS0VOKSBwcml2YXRlIG10QXBpOiBJTXRUZXJtU2VydmljZSkgeyB9XHJcblxyXG4gIHNldEVuZ2luZShlbmdpbmVJZDogc3RyaW5nLCBsYW5ndWFnZXM6IHN0cmluZ1tdID0gbnVsbCwgc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlID0gZmFsc2UsIHRlcm1Db2xsZWN0aW9ucyA9IHRydWUsIG10Q29sbGVjdGlvbnMgPSB0cnVlKTogT2JzZXJ2YWJsZTxTZXQ8Q29tYmluZWRDb2xsZWN0aW9uPj4ge1xyXG4gICAgLy8gZW5naW5lIGlzIGFscmVhZHkgc2V0IHdpdGggdGhhdCBJRCBhbmQgbm8gbmVlZCB0byByZWZyZXNoIGl0LlxyXG4gICAgaWYgKGVuZ2luZUlkICE9PSB0aGlzLmVuZ2luZUlkIHx8IEpTT04uc3RyaW5naWZ5KGxhbmd1YWdlcykgIT09IEpTT04uc3RyaW5naWZ5KHRoaXMuZW5naW5lTGFuZ3VhZ2VzKSkge1xyXG4gICAgICB0aGlzLmVuZ2luZUxhbmd1YWdlcyA9IGxhbmd1YWdlcztcclxuICAgICAgdGhpcy5yZWZyZXNoTXRDb2xsZWN0aW9ucyA9IG10Q29sbGVjdGlvbnM7XHJcbiAgICAgIHRoaXMucmVmcmVzaFRlcm1Db2xsZWN0aW9ucyA9IHRlcm1Db2xsZWN0aW9ucztcclxuICAgICAgdGhpcy5lbmdpbmVJZCA9IGVuZ2luZUlkO1xyXG4gICAgICB0aGlzLl9jb2xsZWN0aW9ucyA9IG5ldyBTZXQoKTtcclxuICAgICAgdGhpcy5lbWl0RGF0YVVwZGF0ZUV2ZW50KCk7XHJcbiAgICAgIC8vIGF2b2lkaW5nIHNldHRlciwgc28gdGhlIG51bGwgdmFsdWUgaXMgbm90IHN0b3JlZWQgaW4gbG9jYXRpb24gc2luY2UgaXQgaXMgbm90IGJ5IHVzZXIgYWN0aW9uXHJcbiAgICAgIHRoaXMuX3NlbGVjdGVkID0gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5lbmdpbmVJZCkge1xyXG4gICAgICB0aGlzLnJlZnJlc2hDb2xsZWN0aW9ucyhzZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2UsIHRydWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLm9uRGF0YVVwZGF0ZS5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIHJlZnJlc2hDb2xsZWN0aW9ucyhzZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2UgPSBmYWxzZSwgaW5pdGlhbFJlZnJlc2ggPSBmYWxzZSkge1xyXG4gICAgaWYgKCF0aGlzLmVuZ2luZUlkIHx8ICF0aGlzLmNvbmZpZy50ZXJtQ29uZmlnLmlzQ29sbGVjdGlvbnNBY3RpdmF0ZWQgfHwgdGhpcy5pc1JlZnJlc2hpbmdDb2xsZWN0aW9ucykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgLy8gY2xlYXIgdGltZW91dCBzaW5jZSB0aGlzIHJlZnJlc2ggcmVwbGFjZXMgc2NoZWR1bGVkXHJcbiAgICB0aGlzLmNsZWFyVGltZW91dCgpO1xyXG5cclxuICAgIHRoaXMuX2lzUmVmcmVzaGluZ0NvbGxlY3Rpb25zID0gdHJ1ZTtcclxuXHJcbiAgICBsZXQgdGVybVJlc3BvbnNlOiBDb21iaW5lZENvbGxlY3Rpb25bXTtcclxuICAgIGxldCBtdEFwaVJlc3BvbnNlOiBDb21iaW5lZENvbGxlY3Rpb25bXTtcclxuXHJcbiAgICBjb25zdCBvYnNlcnZhYmxlczogT2JzZXJ2YWJsZTxDb21iaW5lZENvbGxlY3Rpb25bXT5bXSA9IFtdO1xyXG5cclxuICAgIGlmICh0aGlzLnJlZnJlc2hUZXJtQ29sbGVjdGlvbnMpIHtcclxuICAgICAgb2JzZXJ2YWJsZXMucHVzaChcclxuICAgICAgICB0aGlzLnRlcm1BcGkuZ2V0Q29sbGVjdGlvbkxpc3QodGhpcy5lbmdpbmVMYW5ndWFnZXMpXHJcbiAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgdGFwKChyZXNwb25zZSkgPT4gdGVybVJlc3BvbnNlID0gcmVzcG9uc2UpXHJcbiAgICAgICAgICApXHJcbiAgICAgIClcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnJlZnJlc2hNdENvbGxlY3Rpb25zKSB7XHJcbiAgICAgIG9ic2VydmFibGVzLnB1c2goXHJcbiAgICAgICAgdGhpcy5tdEFwaS5nZXRMaXN0KHRoaXMuZW5naW5lSWQpXHJcbiAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgdGFwKChyZXNwb25zZSkgPT4gbXRBcGlSZXNwb25zZSA9IHJlc3BvbnNlKVxyXG4gICAgICAgICAgKVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gICAgZm9ya0pvaW4ob2JzZXJ2YWJsZXMpLnN1YnNjcmliZSh7XHJcbiAgICAgIC8vIGRvIG5vdCBuZWVkIHJlc3BvbnNlIGJlY2F1ZSByZXNwb25zZXMgYXJlIHNhdmVkIGluIHBpcGUgbWV0aG9kc1xyXG4gICAgICBuZXh0OiAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc0FueUltcG9ydGluZyA9IGZhbHNlO1xyXG4gICAgICAgIC8vIG5vdGUgdGhhdCB0ZXJtUmVzcG9uc2UgYW5kIG10YXBpcmVzcG9uc2UgZ2V0cyBjaGFuZ2VkIGR1cmluZyByZW1vdmUgbWV0aG9kXHJcbiAgICAgICAgdGhpcy5yZW1vdmVEZWxldGVkKHRlcm1SZXNwb25zZSwgbXRBcGlSZXNwb25zZSwgaW5pdGlhbFJlZnJlc2gpO1xyXG5cclxuICAgICAgICBjb25zdCBqb2luZWQgPSBbXTtcclxuICAgICAgICBpZiAobXRBcGlSZXNwb25zZSkge1xyXG4gICAgICAgICAgam9pbmVkLnB1c2goLi4ubXRBcGlSZXNwb25zZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0ZXJtUmVzcG9uc2UpIHtcclxuICAgICAgICAgIGpvaW5lZC5wdXNoKC4uLnRlcm1SZXNwb25zZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmFkZENvbGxlY3Rpb25zKGpvaW5lZCwgaW5pdGlhbFJlZnJlc2gpO1xyXG4gICAgICAgIGlmIChzZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2UpIHtcclxuICAgICAgICAgIHRoaXMuc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX2lzUmVmcmVzaGluZ0NvbGxlY3Rpb25zID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5zY2hlZHVsZVJlZnJlc2gobnVsbCk7XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcclxuICAgICAgICB0aGlzLl9pc1JlZnJlc2hpbmdDb2xsZWN0aW9ucyA9IGZhbHNlO1xyXG4gICAgICAgIC8vIGl0IGlzIGVub3VnaCB0byBzaG93IGVycm9yIG9ubHkgaW4gY29uc29sZS4gTm8gc3BlY2lhbCB0aGluZyBpcyBuZWNlc3NhcnkuXHJcbiAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGFkZFRvRW5naW5lKGNvbGxlY3Rpb246IENvbWJpbmVkQ29sbGVjdGlvbikge1xyXG4gICAgaWYgKCFjb2xsZWN0aW9uIHx8ICFjb2xsZWN0aW9uLnRlcm1Db2xsZWN0aW9uKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoXCJUcnlpbmcgdG8gYXR0YWNoIGNvbGxlY3Rpb24gdGhhdCBoYXMgbm8gdGlsZGUgdGVybSBpZC5cIik7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIC8vIGNvbGxlY3Rpb24ubXRTdGF0dXMgPSBNdENvbGxlY3Rpb25TdGF0dXMuUFJPQ0VTU0lORztcclxuICAgIC8vIGNvbGxlY3Rpb24uaXNTeW5jaHJvbml6ZWQgPSB0cnVlO1xyXG4gICAgdGhpcy5tdEFwaS5hZGQodGhpcy5lbmdpbmVJZCwgY29sbGVjdGlvbilcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgZXJyb3I6ICgpID0+IHtcclxuICAgICAgICAgIC8vIGNvbGxlY3Rpb24ubXRTdGF0dXMgPSBNdENvbGxlY3Rpb25TdGF0dXMuRVJST1I7XHJcbiAgICAgICAgICAvLyBjb2xsZWN0aW9uLmVycm9yS2V5ID0gRXJyb3JDb2RlLkNPTExFQ1RJT05fSU1QT1JUO1xyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuXHJcbiAgfVxyXG5cclxuICBjcmVhdGUoc291cmNlTGFuZ3VhZ2U6IHN0cmluZywgdGFyZ2V0TGFuZ3VhZ2U6IHN0cmluZywgY29sbGVjdGlvbk5hbWU6IHN0cmluZywgcmVkaXJlY3RUb0VkaXQgPSB0cnVlKSB7XHJcbiAgICByZXR1cm4gdGhpcy50ZXJtQXBpLmNyZWF0ZUNvbGxlY3Rpb24oW3NvdXJjZUxhbmd1YWdlLCB0YXJnZXRMYW5ndWFnZV0sIGNvbGxlY3Rpb25OYW1lKS5waXBlKFxyXG4gICAgICB0YXAoKGNvbGxlY3Rpb24pID0+IHtcclxuICAgICAgICBpZiAocmVkaXJlY3RUb0VkaXQpIHtcclxuICAgICAgICAgIHdpbmRvdy5vcGVuKHRoaXMudGVybUFwaS5nZXRFZGl0TGluayhjb2xsZWN0aW9uLnRlcm1Db2xsZWN0aW9uLmlkLCBzb3VyY2VMYW5ndWFnZSwgdGFyZ2V0TGFuZ3VhZ2UpLCBcIl9ibGFua1wiKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5fY29sbGVjdGlvbnMuYWRkKGNvbGxlY3Rpb24pO1xyXG4gICAgICAgIHRoaXMuZW1pdERhdGFVcGRhdGVFdmVudCgpO1xyXG4gICAgICAgIHRoaXMuX2hhc0FueUNvbGxlY3Rpb25zID0gdHJ1ZTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVJZk5lY2Vzc2FyeShjb2xsZWN0aW9uOiBDb21iaW5lZENvbGxlY3Rpb24pOiBPYnNlcnZhYmxlPENvbWJpbmVkQ29sbGVjdGlvbj4ge1xyXG4gICAgLy8gY29sbGVjdGlvbiBpcyBub3QgaW1wb3J0ZWQgYW5kIHNob3VsZCBiZSBhdHRhY2hlZCB0byBlbmdpbmVcclxuICAgIGlmIChjb2xsZWN0aW9uLmlzRWRpdGVkKCkpIHtcclxuICAgICAgcmV0dXJuIHRoaXMubXRBcGkuYWRkKHRoaXMuZW5naW5lSWQsIGNvbGxlY3Rpb24pXHJcbiAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICB0YXAoKHVwZGF0ZWRDb2xsZWN0aW9uKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbGxlY3Rpb24udXBkYXRlKHVwZGF0ZWRDb2xsZWN0aW9uKTtcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICByZXR1cm4gb2YoY29sbGVjdGlvbik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICpcclxuICogQHJldHVybnMgc2VsZWN0ZWQgY29sbGVjdGlvbiBpZCBpZiBpdCBpcyBhbGxvd2VkIHRvIHVzZSBjb2xsZWN0aW9uIGZvciB0cmFuc2xhdGlvbnNcclxuICovXHJcbiAgc2VsZWN0ZWRJZEZvclRyYW5zbGF0aW9uKCk6IHN0cmluZyB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZD8ubXRDb2xsZWN0aW9uICYmICh0aGlzLnNlbGVjdGVkLm10Q29sbGVjdGlvbi5sYXN0VXBkYXRlZCB8fCB0aGlzLnNlbGVjdGVkLm10Q29sbGVjdGlvbj8uc3RhdHVzID09PSBNdENvbGxlY3Rpb25TdGF0dXMuUkVBRFkpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkLm10Q29sbGVjdGlvbj8uaWQ7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIHN0YXJ0QXV0b1JlZnJlc2goZW5naW5lSWQ/OiBzdHJpbmcsIGxhbmd1YWdlczogc3RyaW5nW10gPSBudWxsLCBzZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2UgPSBmYWxzZSwgdGVybUNvbGxlY3Rpb25zID0gdHJ1ZSwgbXRDb2xsZWN0aW9ucyA9IHRydWUpIHtcclxuICAgIHRoaXMuaGFyZEF1dG9SZWZyZXNoID0gdHJ1ZTtcclxuICAgIHJldHVybiB0aGlzLnNldEVuZ2luZShlbmdpbmVJZCA/PyB0aGlzLmVuZ2luZUlkLCBsYW5ndWFnZXMgPz8gdGhpcy5lbmdpbmVMYW5ndWFnZXMsIHNldFNlbGVjdGVkRnJvbUxvY2FsU3RvcmFnZSwgdGVybUNvbGxlY3Rpb25zLCBtdENvbGxlY3Rpb25zKTtcclxuICB9XHJcblxyXG4gIHN0b3BBdXRvUmVmcmVzaCgpIHtcclxuICAgIHRoaXMuY2xlYXJUaW1lb3V0KCk7XHJcblxyXG4gICAgdGhpcy5pc1NvZnRBdXRvUmVmcmVzaE9uID0gZmFsc2U7XHJcbiAgICB0aGlzLmhhcmRBdXRvUmVmcmVzaCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlTXRDb2xsZWN0aW9uKGNvbGxlY3Rpb246IENvbWJpbmVkQ29sbGVjdGlvbiwgZW5naW5lSWQgPSB0aGlzLmVuZ2luZUlkKSB7XHJcbiAgICByZXR1cm4gdGhpcy5tdEFwaS5yZW1vdmUoZW5naW5lSWQsIGNvbGxlY3Rpb24pLnBpcGUoXHJcbiAgICAgIHRhcCgocmVzcG9uc2UpID0+IHtcclxuICAgICAgICBjb2xsZWN0aW9uLnVwZGF0ZShyZXNwb25zZSk7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzY2hlZHVsZVJlZnJlc2godGltZW91dD86IG51bWJlcikge1xyXG4gICAgLy8gaWYgbWVudSBpcyBjbG9zZWQgYW5kIHNlbGVjdGVkIGNvbGxlY3Rpb24gaXMgbm90IGltcG9ydGluZyBhbnltb3JlIC0gYXV0byByZWZyZXNoaW5nIHNob3VsZCBiZSBjYW5jZWxsZWQuXHJcbiAgICBpZiAoIXRoaXMuaGFyZEF1dG9SZWZyZXNoICYmICF0aGlzLnNlbGVjdGVkPy5pc0ltcG9ydGluZyAmJiB0aGlzLmlzU29mdEF1dG9SZWZyZXNoT24pIHtcclxuICAgICAgdGhpcy5zdG9wQXV0b1JlZnJlc2goKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGlmIGhhcmQgYXV0byByZWZyZXNobyBvbiwgYXV0byByZWZyZXNoIHNob3VsZCBiZSBvbi4gSWYgaGFyZCBhdXRvcmVmZXJlc2ggaXMgb2ZmICwgcmVmcmVzaCBuZWVkcyB0byBiZSBkb25lIG9ubHkgaWYgc2VsZWN0ZWQgaXMgaW1wb3J0aW5nLlxyXG4gICAgaWYgKHRoaXMuaGFyZEF1dG9SZWZyZXNoIHx8ICghdGhpcy5yZWZyZXNoVGltZW91dCAmJiAodGhpcy5pc1NvZnRBdXRvUmVmcmVzaE9uIHx8IHRoaXMuc2VsZWN0ZWQ/LmlzSW1wb3J0aW5nKSkpIHtcclxuICAgICAgY29uc3QgdGltZW91dE1zID0gdGltZW91dCA/PyAodGhpcy5pc0FueUltcG9ydGluZyA/IHRoaXMuY29uZmlnLnRlcm1Db25maWcucmVmcmVzaFRpbWVvdXRNc1doZW5JbXBvcnRpbmcgOiB0aGlzLmNvbmZpZy50ZXJtQ29uZmlnLnJlZnJlc2hUaW1lb3V0TXMpO1xyXG4gICAgICB0aGlzLnJlZnJlc2hUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5yZWZyZXNoVGltZW91dCA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5yZWZyZXNoQ29sbGVjdGlvbnMoKVxyXG4gICAgICB9LCB0aW1lb3V0TXMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICpcclxuICAgKiBAcGFyYW0gbmV3Q29sbGVjdGlvbnNcclxuICAgKiBAcGFyYW0gaW5pdGlhbFJlZnJlc2ggV2hldGhlciBhbHNvIGVkaXRhYmxlIGNvbGxlY3Rpb24gZmllbGRzIHNob3VsZCBiZSB1cGRhdGVkLiBJZiBub3QgaW5pdGlhbCByZWZyZXNoLCBlZGl0YWJsZSBmaWVsZHMgd2lsbCBub3QgYmUgdXBkYXRlZC5cclxuICAgKi9cclxuICBwcml2YXRlIGFkZENvbGxlY3Rpb25zKG5ld0NvbGxlY3Rpb25zOiBJdGVyYWJsZTxDb21iaW5lZENvbGxlY3Rpb24+LCBpbml0aWFsUmVmcmVzaDogYm9vbGVhbikge1xyXG4gICAgLy8gc2V0cyBjb2xsZWN0aW9uIGxpc3QgdG8gdGhpcyB2YWx1ZSBhdCB0aGUgZW5kLCBzbyBkZWxldGVkIGNvbGxlY3Rpb25zIGFyZSBub3QgaW4gdGhlIGxpc3QuXHJcbiAgICBmb3IgKGxldCBjb2xsZWN0aW9uIG9mIG5ld0NvbGxlY3Rpb25zKSB7XHJcbiAgICAgIC8vIFVzZXIgc2hvdWxkbid0IHNlZSBmYWlsZWQgY29sbGVjdGlvbnMgaWYgaGUgY2FuJ3QgcmV0cnkgdG8gaW1wb3J0IHRoZW0uXHJcbiAgICAgIGlmICghdGhpcy5oYXNFZGl0UGVybWlzc2lvbnNcclxuICAgICAgICAmJiBjb2xsZWN0aW9uLm10U3RhdHVzID09PSBNdENvbGxlY3Rpb25TdGF0dXMuRVJST1IpIHtcclxuICAgICAgICBjb250aW51ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKGNvbGxlY3Rpb24uaXNJbXBvcnRpbmcpIHtcclxuICAgICAgICB0aGlzLmlzQW55SW1wb3J0aW5nID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICBsZXQgZXhpc3Rpbmc6IENvbWJpbmVkQ29sbGVjdGlvbiA9IENvbWJpbmVkQ29sbGVjdGlvbi5maW5kRXhpc3RpbmdDb2xsZWN0aW9uRnJvbUxpc3QodGhpcy5jb2xsZWN0aW9ucywgY29sbGVjdGlvbik7XHJcblxyXG4gICAgICAvLyBJZiB0ZXJtIGFwaSBkb2Vzbid0IGhhdmUgZW5naW5lIGxhbmd1YWdlcywgY29sbGVjdGlvbiBzaG91bGQgbm90IGJlIHNob3duIChpZiBpdCBpcyBub3QgYWxyZWFkeSBpbXBvcnRlZCBzb21laG93KTtcclxuICAgICAgaWYgKCFleGlzdGluZyAmJiBjb2xsZWN0aW9uLnNvdXJjZSA9PT0gRW5naW5lVGVybUNvbGxlY3Rpb25Tb3VyY2UuVElMREVfVEVSTSkge1xyXG4gICAgICAgIGxldCBoYXNMYW5ndWFnZXMgPSB0cnVlO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5lbmdpbmVMYW5ndWFnZXM/Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICBpZiAoIWNvbGxlY3Rpb24udGVybUNvbGxlY3Rpb24ubGFuZ3VhZ2VzPy5maW5kKGxhbmcgPT4gbGFuZy5pZCA9PT0gdGhpcy5lbmdpbmVMYW5ndWFnZXNbaV0pKSB7XHJcbiAgICAgICAgICAgIGhhc0xhbmd1YWdlcyA9IGZhbHNlO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICghaGFzTGFuZ3VhZ2VzKSB7XHJcbiAgICAgICAgICBjb250aW51ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICghZXhpc3RpbmcpIHtcclxuICAgICAgICB0aGlzLl9jb2xsZWN0aW9ucy5hZGQoY29sbGVjdGlvbik7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgZXhpc3RpbmcudXBkYXRlKGNvbGxlY3Rpb24sIGluaXRpYWxSZWZyZXNoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIHRoaXMuX2NvbGxlY3Rpb25zID0gdXBkYXRlZENvbGxlY3Rpb25zO1xyXG4gICAgdGhpcy5lbWl0RGF0YVVwZGF0ZUV2ZW50KCk7XHJcbiAgICB0aGlzLl9oYXNBbnlDb2xsZWN0aW9ucyA9IHRoaXMuX2NvbGxlY3Rpb25zLnNpemUgPiAwO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2hvdWxkIGJlIGNhbGxlZCBhZnRlciByZWZyZXNoIHRvIGNoZWNrIGlmIHRoZXJlIGlzIGFueSBjb2xsZWN0aW9ucyBmcm9tIGFwaSB0aGF0IGFyZSBkZWxldGVkLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgcmVtb3ZlRGVsZXRlZCh0ZXJtUmVzcG9uc2U6IENvbWJpbmVkQ29sbGVjdGlvbltdLCBtdFJlc3BvbnNlOiBDb21iaW5lZENvbGxlY3Rpb25bXSwgaW5pdGlhbFJlZnJlc2g6IGJvb2xlYW4pIHtcclxuXHJcbiAgICBmb3IgKGNvbnN0IGNvbGxlY3Rpb24gb2YgdGhpcy5jb2xsZWN0aW9ucykge1xyXG4gICAgICBjb25zdCB0ZXJtRXhpc3RpbmdJeCA9IENvbWJpbmVkQ29sbGVjdGlvbi5maW5kRXhpc3RpbmdJbmRleEZyb21MaXN0KHRlcm1SZXNwb25zZSwgY29sbGVjdGlvbik7XHJcbiAgICAgIGNvbnN0IG10RXhpc3RpbmdJeCA9IENvbWJpbmVkQ29sbGVjdGlvbi5maW5kRXhpc3RpbmdJbmRleEZyb21MaXN0KG10UmVzcG9uc2UsIGNvbGxlY3Rpb24pO1xyXG4gICAgICBpZiAodGVybUV4aXN0aW5nSXggPT09IG51bGwgJiYgbXRFeGlzdGluZ0l4ID09PSBudWxsKSB7XHJcbiAgICAgICAgdGhpcy5jb2xsZWN0aW9ucy5kZWxldGUoY29sbGVjdGlvbik7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgaWYgKHRlcm1FeGlzdGluZ0l4ICE9PSBudWxsKSB7XHJcbiAgICAgICAgICBjb25zdCBleGlzdGluZyA9IHRlcm1SZXNwb25zZVt0ZXJtRXhpc3RpbmdJeF07XHJcbiAgICAgICAgICBjb2xsZWN0aW9uLnVwZGF0ZShleGlzdGluZywgaW5pdGlhbFJlZnJlc2gpO1xyXG4gICAgICAgICAgdGVybVJlc3BvbnNlLnNwbGljZSh0ZXJtRXhpc3RpbmdJeCwgMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgY29sbGVjdGlvbi5kZWxldGVUZXJtcygpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKG10RXhpc3RpbmdJeCAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgY29uc3QgZXhpc3RpbmcgPSBtdFJlc3BvbnNlW210RXhpc3RpbmdJeF07XHJcbiAgICAgICAgICBjb2xsZWN0aW9uLnVwZGF0ZShleGlzdGluZywgaW5pdGlhbFJlZnJlc2gpO1xyXG4gICAgICAgICAgbXRSZXNwb25zZS5zcGxpY2UobXRFeGlzdGluZ0l4LCAxKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICBjb2xsZWN0aW9uLmRlbGV0ZU1UKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNsZWFyVGltZW91dCgpIHtcclxuICAgIGlmICh0aGlzLnJlZnJlc2hUaW1lb3V0KSB7XHJcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnJlZnJlc2hUaW1lb3V0KTtcclxuICAgICAgdGhpcy5yZWZyZXNoVGltZW91dCA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFNlbGVjdGVkRnJvbUxvY2FsU3RvcmFnZSgpIHtcclxuICAgIC8vIElmIG5vIGNvbGxlY3Rpb25zIG9yIHNlbGVjdGVkIGlzIGFscmVhZHkgc2V0LCBpdCBzaG91bGQgbm90IGJlIGNoYW5nZWQgZnJvbSBsb2NhbHN0b3JhZ2UgdmFsdWUuIChVc3VhbGx5LCBsb2NhbHN0b3JhZ2Ugc2hvdWxkIGhhdmUgdGhlIHNhbWUgdmFsdWUpLlxyXG4gICAgaWYgKHRoaXMuY29sbGVjdGlvbnM/LnNpemUgPT09IDAgfHwgdGhpcy5zZWxlY3RlZCkge1xyXG4gICAgICByZXR1cm5cclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBzdG9yZWRJZCA9IHRoaXMucmVhZExvY2FsU3RvcmFnZSgpPy5bdGhpcy5lbmdpbmVJZF07XHJcbiAgICBpZiAoIXN0b3JlZElkKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBleGlzdGluZyA9IEFycmF5LmZyb20odGhpcy5jb2xsZWN0aW9ucykuZmluZChpdGVtID0+IGl0ZW0udGVybUNvbGxlY3Rpb24/LmlkID09PSBzdG9yZWRJZCB8fCBpdGVtLm10Q29sbGVjdGlvbj8uaWQgPT09IHN0b3JlZElkKTtcclxuICAgIHRoaXMuc2VsZWN0ZWQgPSBleGlzdGluZztcclxuICB9XHJcblxyXG5cclxuICBwcml2YXRlIHN0b3JlU2VsZWN0ZWRJbkxvY2FsU3RvcmFnZSgpIHtcclxuICAgIGxldCBsb2NhbFN0b3JhZ2VPYmplY3QgPSB0aGlzLnJlYWRMb2NhbFN0b3JhZ2UoKTtcclxuICAgIGlmICghbG9jYWxTdG9yYWdlT2JqZWN0KSB7XHJcbiAgICAgIGxvY2FsU3RvcmFnZU9iamVjdCA9IHt9O1xyXG4gICAgfVxyXG5cclxuICAgIGxvY2FsU3RvcmFnZU9iamVjdFt0aGlzLmVuZ2luZUlkXSA9IHRoaXMuc2VsZWN0ZWQgPyAodGhpcy5zZWxlY3RlZC50ZXJtQ29sbGVjdGlvbj8uaWQgPz8gdGhpcy5zZWxlY3RlZC5tdENvbGxlY3Rpb24/LmlkKSA6IG51bGw7XHJcbiAgICAvLyBzdG9yZSB0ZXJtIGlkIGlmIGl0IGV4aXN0c1xyXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5MT0NBTF9TVE9SQUdFX0tFWSwgSlNPTi5zdHJpbmdpZnkobG9jYWxTdG9yYWdlT2JqZWN0KSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlYWRMb2NhbFN0b3JhZ2UoKTogYW55IHtcclxuICAgIGNvbnN0IGRhdGEgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLkxPQ0FMX1NUT1JBR0VfS0VZKTtcclxuICAgIHRyeSB7XHJcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKGRhdGEpO1xyXG4gICAgfVxyXG4gICAgY2F0Y2gge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgZW1pdERhdGFVcGRhdGVFdmVudCgpIHtcclxuICAgIHRoaXMub25EYXRhVXBkYXRlLm5leHQodGhpcy5jb2xsZWN0aW9ucyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
309
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybWlub2xvZ3kuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC10ZXJtL3NlcnZpY2VzL3Rlcm1pbm9sb2d5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFFBQVEsRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU5RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7OztBQU94RSxNQUFNLE9BQU8sa0JBQWtCO0lBOEQ3QixZQUE2QixNQUFpQyxFQUMzQyxPQUF1QixFQUNMLEtBQXFCO1FBRjdCLFdBQU0sR0FBTixNQUFNLENBQTJCO1FBQzNDLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ0wsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUE5RGxELGNBQVMsR0FBdUIsSUFBSSxDQUFDO1FBOEM1QixpQkFBWSxHQUFHLElBQUksT0FBTyxFQUEyQixDQUFDO1FBRXRELHNCQUFpQixHQUFHLHVCQUF1QixDQUFDO0lBY0MsQ0FBQztJQTdEL0QsSUFBSSxRQUFRLEtBQUssT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUN6QyxJQUFJLFFBQVEsQ0FBQyxHQUF1QjtRQUNsQyxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQztRQUNyQixJQUFJLENBQUMsMkJBQTJCLEVB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QUksa0JBQWtCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDakQsSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQ3ZCLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztTQUN6QjtRQUVELGtCQUFrQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxFQUFFLEVBQUUsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ2hJLDZCQUE2QjtRQUM3QixZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLE1BQU0sSUFBSSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDMUQsSUFBSTtZQUNGLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN6QjtRQUNELE1BQU07WUFDSixPQUFPLElBQUksQ0FBQztTQUNiO0lBQ0gsQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDM0MsQ0FBQzs7K0dBL1dVLGtCQUFrQix5RkFnRW5CLGlCQUFpQjttSEFoRWhCLGtCQUFrQixjQUZqQixNQUFNOzJGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQWlFSSxNQUFNOzJCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBmb3JrSm9pbiwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QsIHRhcCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBNVF9URVJNX0FQSV9UT0tFTiB9IGZyb20gJy4uLy4uLy4uL2luamVjdGlvbi10b2tlbnMnO1xyXG5pbXBvcnQgeyBUbGRUcmFuc2xhdGVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdGxkLWNvbW1vbi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IEVuZ2luZVRlcm1Db2xsZWN0aW9uU291cmNlIH0gZnJvbSAnLi9lbmdpbmUtdGVybS9tb2RlbHMnO1xyXG5pbXBvcnQgeyBDb21iaW5lZENvbGxlY3Rpb24gfSBmcm9tICcuL21vZGVscy9jb21iaW5lZC1jb2xsZWN0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgTXRDb2xsZWN0aW9uU3RhdHVzIH0gZnJvbSAnLi9tb2RlbHMvbXQtY29sbGVjdGlvbi1zdGF0dXMuZW51bSc7XHJcbmltcG9ydCB7IElNdFRlcm1TZXJ2aWNlIH0gZnJvbSAnLi9tb2RlbHMvbXQtdGVybS1zZXJ2aWNlLm1vZGVsJztcclxuaW1wb3J0IHsgVGVybUFwaVNlcnZpY2UgfSBmcm9tICcuL3Rlcm0tYXBpL3Rlcm0tYXBpLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVGVybWlub2xvZ3lTZXJ2aWNlIHtcclxuXHJcbiAgcHJpdmF0ZSBfc2VsZWN0ZWQ6IENvbWJpbmVkQ29sbGVjdGlvbiA9IG51bGw7XHJcbiAgZ2V0IHNlbGVjdGVkKCkgeyByZXR1cm4gdGhpcy5fc2VsZWN0ZWQ7IH1cclxuICBzZXQgc2VsZWN0ZWQodmFsOiBDb21iaW5lZENvbGxlY3Rpb24pIHtcclxuICAgIHRoaXMuX3NlbGVjdGVkID0gdmFsO1xyXG4gICAgdGhpcy5zdG9yZVNlbGVjdGVkSW5Mb2NhbFN0b3JhZ2UoKTtcclxuICAgIGlmICghdGhpcy5fc2VsZWN0ZWQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghdGhpcy5fc2VsZWN0ZWQubXRDb2xsZWN0aW9uKSB7XHJcbiAgICAgIHRoaXMuYWRkVG9FbmdpbmUodGhpcy5fc2VsZWN0ZWQpO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNBbnlJbXBvcnRpbmc6IGJvb2xlYW47XHJcblxyXG5cclxuICBwcml2YXRlIF9oYXNBbnlDb2xsZWN0aW9uczogYm9vbGVhbjtcclxuICBnZXQgaGFzQW55Q29sbGVjdGlvbnMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5faGFzQW55Q29sbGVjdGlvbnM7XHJcbiAgfVxyXG5cclxuXHJcbiAgZ2V0IHNob3VsZFNob3dQcm9tb3Rpb24oKSB7XHJcbiAgICByZXR1cm4gIXRoaXMuaGFzQW55Q29sbGVjdGlvbnMgJiYgIXRoaXMuaGFzRWRpdFBlcm1pc3Npb25zO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGNhbkNyZWF0ZUNvbGxlY3Rpb25zKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLnRlcm1Db25maWcuY2FuQ3JlYXRlQ29sbGVjdGlvbjtcclxuICB9XHJcblxyXG4gIGdldCBoYXNFZGl0UGVybWlzc2lvbnMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maWc/LmNvcmVDb25maWcuaXNBdXRoICYmIHRoaXMuY2FuQ3JlYXRlQ29sbGVjdGlvbnMgJiYgdGhpcy5jb25maWcudGVybUNvbmZpZy5pc1Rlcm1Qb3J0YWxTdXBwb3J0ZWQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9pc1JlZnJlc2hpbmdDb2xsZWN0aW9uczogYm9vbGVhbjtcclxuICBnZXQgaXNSZWZyZXNoaW5nQ29sbGVjdGlvbnMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5faXNSZWZyZXNoaW5nQ29sbGVjdGlvbnM7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9jb2xsZWN0aW9uczogU2V0PENvbWJpbmVkQ29sbGVjdGlvbj47XHJcbiAgZ2V0IGNvbGxlY3Rpb25zKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2NvbGxlY3Rpb25zO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBvbkRhdGFVcGRhdGUgPSBuZXcgU3ViamVjdDxTZXQ8Q29tYmluZWRDb2xsZWN0aW9uPj4oKTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBMT0NBTF9TVE9SQUdFX0tFWSA9IFwic3lzdGVtTGFzdENvbGxlY3Rpb25zXCI7XHJcbiAgcHJpdmF0ZSBlbmdpbmVJZDogc3RyaW5nO1xyXG4gIHByaXZhdGUgcmVmcmVzaE10Q29sbGVjdGlvbnM6IGJvb2xlYW47XHJcbiAgcHJpdmF0ZSByZWZyZXNoVGVybUNvbGxlY3Rpb25zOiBib29sZWFuO1xyXG4gIC8vIHN0b3JlcyBsYW5ndWFnZSBjb2RlcyB3aGljaCBhcmUgdXNlZCB0byBmaWx0ZXIgdmlzYmxlIGNvbGxlY3Rpb25zIGZyb20gdGVybSBhcGkuXHJcbiAgcHJpdmF0ZSBlbmdpbmVMYW5ndWFnZXM6IHN0cmluZ1tdO1xyXG4gIHByaXZhdGUgcmVmcmVzaFRpbWVvdXQ6IGFueTtcclxuICAvLyBzb2Z0IHJlZnJlc2ggdGFrZXMgaW4gYWNjb3VudCBvdGhlciBwYXJhbXMgYXMgd2VsbC5cclxuICBwcml2YXRlIGlzU29mdEF1dG9SZWZyZXNoT246IGJvb2xlYW47XHJcbiAgLy8gc2hvdWxkIGRvIGF1dG9yZWZyZXNoIGJ5IGlnbm9yaW5nIGFueSBvdGhlciBwYXJhbXMuXHJcbiAgcHJpdmF0ZSBoYXJkQXV0b1JlZnJlc2g6IGJvb2xlYW47XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY29uZmlnOiBUbGRUcmFuc2xhdGVDb25maWdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZXJtQXBpOiBUZXJtQXBpU2VydmljZSxcclxuICAgIEBJbmplY3QoTVRfVEVSTV9BUElfVE9LRU4pIHByaXZhdGUgbXRBcGk6IElNdFRlcm1TZXJ2aWNlKSB7IH1cclxuXHJcbiAgc2V0RW5naW5lKGVuZ2luZUlkOiBzdHJpbmcsIGxhbmd1YWdlczogc3RyaW5nW10gPSBudWxsLCBzZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2UgPSBmYWxzZSwgdGVybUNvbGxlY3Rpb25zID0gdHJ1ZSwgbXRDb2xsZWN0aW9ucyA9IHRydWUpOiBPYnNlcnZhYmxlPFNldDxDb21iaW5lZENvbGxlY3Rpb24+PiB7XHJcbiAgICAvLyBlbmdpbmUgaXMgYWxyZWFkeSBzZXQgd2l0aCB0aGF0IElEIGFuZCBubyBuZWVkIHRvIHJlZnJlc2ggaXQuXHJcbiAgICBpZiAoZW5naW5lSWQgIT09IHRoaXMuZW5naW5lSWQgfHwgSlNPTi5zdHJpbmdpZnkobGFuZ3VhZ2VzKSAhPT0gSlNPTi5zdHJpbmdpZnkodGhpcy5lbmdpbmVMYW5ndWFnZXMpXHJcbiAgICAgIHx8IHRoaXMucmVmcmVzaE10Q29sbGVjdGlvbnMgIT09IG10Q29sbGVjdGlvbnMgfHwgdGhpcy5yZWZyZXNoVGVybUNvbGxlY3Rpb25zICE9PSB0ZXJtQ29sbGVjdGlvbnMpIHtcclxuICAgICAgdGhpcy5lbmdpbmVMYW5ndWFnZXMgPSBsYW5ndWFnZXM7XHJcbiAgICAgIHRoaXMucmVmcmVzaE10Q29sbGVjdGlvbnMgPSBtdENvbGxlY3Rpb25zO1xyXG4gICAgICB0aGlzLnJlZnJlc2hUZXJtQ29sbGVjdGlvbnMgPSB0ZXJtQ29sbGVjdGlvbnM7XHJcbiAgICAgIHRoaXMuZW5naW5lSWQgPSBlbmdpbmVJZDtcclxuICAgICAgdGhpcy5fY29sbGVjdGlvbnMgPSBuZXcgU2V0KCk7XHJcbiAgICAgIHRoaXMuZW1pdERhdGFVcGRhdGVFdmVudCgpO1xyXG4gICAgICAvLyBhdm9pZGluZyBzZXR0ZXIsIHNvIHRoZSBudWxsIHZhbHVlIGlzIG5vdCBzdG9yZWVkIGluIGxvY2F0aW9uIHNpbmNlIGl0IGlzIG5vdCBieSB1c2VyIGFjdGlvblxyXG4gICAgICB0aGlzLl9zZWxlY3RlZCA9IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuZW5naW5lSWQpIHtcclxuICAgICAgdGhpcy5yZWZyZXNoQ29sbGVjdGlvbnMoc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlLCB0cnVlKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5vbkRhdGFVcGRhdGUuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICByZWZyZXNoQ29sbGVjdGlvbnMoc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlID0gZmFsc2UsIGluaXRpYWxSZWZyZXNoID0gZmFsc2UpIHtcclxuICAgIGlmICghdGhpcy5lbmdpbmVJZCB8fCAhdGhpcy5jb25maWcudGVybUNvbmZpZy5pc0NvbGxlY3Rpb25zQWN0aXZhdGVkIHx8IHRoaXMuaXNSZWZyZXNoaW5nQ29sbGVjdGlvbnMpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGNsZWFyIHRpbWVvdXQgc2luY2UgdGhpcyByZWZyZXNoIHJlcGxhY2VzIHNjaGVkdWxlZFxyXG4gICAgdGhpcy5jbGVhclRpbWVvdXQoKTtcclxuXHJcbiAgICB0aGlzLl9pc1JlZnJlc2hpbmdDb2xsZWN0aW9ucyA9IHRydWU7XHJcblxyXG4gICAgbGV0IHRlcm1SZXNwb25zZTogQ29tYmluZWRDb2xsZWN0aW9uW107XHJcbiAgICBsZXQgbXRBcGlSZXNwb25zZTogQ29tYmluZWRDb2xsZWN0aW9uW107XHJcblxyXG4gICAgY29uc3Qgb2JzZXJ2YWJsZXM6IE9ic2VydmFibGU8Q29tYmluZWRDb2xsZWN0aW9uW10+W10gPSBbXTtcclxuXHJcbiAgICBpZiAodGhpcy5yZWZyZXNoVGVybUNvbGxlY3Rpb25zKSB7XHJcbiAgICAgIG9ic2VydmFibGVzLnB1c2goXHJcbiAgICAgICAgdGhpcy50ZXJtQXBpLmdldENvbGxlY3Rpb25MaXN0KHRoaXMuZW5naW5lTGFuZ3VhZ2VzKVxyXG4gICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgIHRhcCgocmVzcG9uc2UpID0+IHRlcm1SZXNwb25zZSA9IHJlc3BvbnNlKVxyXG4gICAgICAgICAgKVxyXG4gICAgICApXHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5yZWZyZXNoTXRDb2xsZWN0aW9ucykge1xyXG4gICAgICBvYnNlcnZhYmxlcy5wdXNoKFxyXG4gICAgICAgIHRoaXMubXRBcGkuZ2V0TGlzdCh0aGlzLmVuZ2luZUlkKVxyXG4gICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgIHRhcCgocmVzcG9uc2UpID0+IG10QXBpUmVzcG9uc2UgPSByZXNwb25zZSlcclxuICAgICAgICAgIClcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIGZvcmtKb2luKG9ic2VydmFibGVzKS5zdWJzY3JpYmUoe1xyXG4gICAgICAvLyBkbyBub3QgbmVlZCByZXNwb25zZSBiZWNhdWUgcmVzcG9uc2VzIGFyZSBzYXZlZCBpbiBwaXBlIG1ldGhvZHNcclxuICAgICAgbmV4dDogKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuaXNBbnlJbXBvcnRpbmcgPSBmYWxzZTtcclxuICAgICAgICAvLyBub3RlIHRoYXQgdGVybVJlc3BvbnNlIGFuZCBtdGFwaXJlc3BvbnNlIGdldHMgY2hhbmdlZCBkdXJpbmcgcmVtb3ZlIG1ldGhvZFxyXG4gICAgICAgIHRoaXMucmVtb3ZlRGVsZXRlZCh0ZXJtUmVzcG9uc2UsIG10QXBpUmVzcG9uc2UsIGluaXRpYWxSZWZyZXNoKTtcclxuXHJcbiAgICAgICAgY29uc3Qgam9pbmVkID0gW107XHJcbiAgICAgICAgaWYgKG10QXBpUmVzcG9uc2UpIHtcclxuICAgICAgICAgIGpvaW5lZC5wdXNoKC4uLm10QXBpUmVzcG9uc2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGVybVJlc3BvbnNlKSB7XHJcbiAgICAgICAgICBqb2luZWQucHVzaCguLi50ZXJtUmVzcG9uc2UpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5hZGRDb2xsZWN0aW9ucyhqb2luZWQsIGluaXRpYWxSZWZyZXNoKTtcclxuICAgICAgICBpZiAoc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlKSB7XHJcbiAgICAgICAgICB0aGlzLnNldFNlbGVjdGVkRnJvbUxvY2FsU3RvcmFnZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLl9pc1JlZnJlc2hpbmdDb2xsZWN0aW9ucyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuc2NoZWR1bGVSZWZyZXNoKG51bGwpO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XHJcbiAgICAgICAgdGhpcy5faXNSZWZyZXNoaW5nQ29sbGVjdGlvbnMgPSBmYWxzZTtcclxuICAgICAgICAvLyBpdCBpcyBlbm91Z2ggdG8gc2hvdyBlcnJvciBvbmx5IGluIGNvbnNvbGUuIE5vIHNwZWNpYWwgdGhpbmcgaXMgbmVjZXNzYXJ5LlxyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xyXG4gICAgICB9LFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBhZGRUb0VuZ2luZShjb2xsZWN0aW9uOiBDb21iaW5lZENvbGxlY3Rpb24pIHtcclxuICAgIGlmICghY29sbGVjdGlvbiB8fCAhY29sbGVjdGlvbi50ZXJtQ29sbGVjdGlvbikge1xyXG4gICAgICBjb25zb2xlLmVycm9yKFwiVHJ5aW5nIHRvIGF0dGFjaCBjb2xsZWN0aW9uIHRoYXQgaGFzIG5vIHRpbGRlIHRlcm0gaWQuXCIpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICAvLyBjb2xsZWN0aW9uLm10U3RhdHVzID0gTXRDb2xsZWN0aW9uU3RhdHVzLlBST0NFU1NJTkc7XHJcbiAgICAvLyBjb2xsZWN0aW9uLmlzU3luY2hyb25pemVkID0gdHJ1ZTtcclxuICAgIHRoaXMubXRBcGkuYWRkKHRoaXMuZW5naW5lSWQsIGNvbGxlY3Rpb24pXHJcbiAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgIGVycm9yOiAoKSA9PiB7XHJcbiAgICAgICAgICAvLyBjb2xsZWN0aW9uLm10U3RhdHVzID0gTXRDb2xsZWN0aW9uU3RhdHVzLkVSUk9SO1xyXG4gICAgICAgICAgLy8gY29sbGVjdGlvbi5lcnJvcktleSA9IEVycm9yQ29kZS5DT0xMRUNUSU9OX0lNUE9SVDtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcblxyXG4gIH1cclxuXHJcbiAgY3JlYXRlKHNvdXJjZUxhbmd1YWdlOiBzdHJpbmcsIHRhcmdldExhbmd1YWdlOiBzdHJpbmcsIGNvbGxlY3Rpb25OYW1lOiBzdHJpbmcsIHJlZGlyZWN0VG9FZGl0ID0gdHJ1ZSkge1xyXG4gICAgcmV0dXJuIHRoaXMudGVybUFwaS5jcmVhdGVDb2xsZWN0aW9uKFtzb3VyY2VMYW5ndWFnZSwgdGFyZ2V0TGFuZ3VhZ2VdLCBjb2xsZWN0aW9uTmFtZSkucGlwZShcclxuICAgICAgdGFwKChjb2xsZWN0aW9uKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlZGlyZWN0VG9FZGl0KSB7XHJcbiAgICAgICAgICB3aW5kb3cub3Blbih0aGlzLnRlcm1BcGkuZ2V0RWRpdExpbmsoY29sbGVjdGlvbi50ZXJtQ29sbGVjdGlvbi5pZCwgc291cmNlTGFuZ3VhZ2UsIHRhcmdldExhbmd1YWdlKSwgXCJfYmxhbmtcIik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX2NvbGxlY3Rpb25zLmFkZChjb2xsZWN0aW9uKTtcclxuICAgICAgICB0aGlzLmVtaXREYXRhVXBkYXRlRXZlbnQoKTtcclxuICAgICAgICB0aGlzLl9oYXNBbnlDb2xsZWN0aW9ucyA9IHRydWU7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlSWZOZWNlc3NhcnkoY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uKTogT2JzZXJ2YWJsZTxDb21iaW5lZENvbGxlY3Rpb24+IHtcclxuICAgIC8vIGNvbGxlY3Rpb24gaXMgbm90IGltcG9ydGVkIGFuZCBzaG91bGQgYmUgYXR0YWNoZWQgdG8gZW5naW5lXHJcbiAgICBpZiAoY29sbGVjdGlvbi5pc0VkaXRlZCgpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLm10QXBpLmFkZCh0aGlzLmVuZ2luZUlkLCBjb2xsZWN0aW9uKVxyXG4gICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgdGFwKCh1cGRhdGVkQ29sbGVjdGlvbikgPT4ge1xyXG4gICAgICAgICAgICBjb2xsZWN0aW9uLnVwZGF0ZSh1cGRhdGVkQ29sbGVjdGlvbik7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcmV0dXJuIG9mKGNvbGxlY3Rpb24pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAqXHJcbiAqIEByZXR1cm5zIHNlbGVjdGVkIGNvbGxlY3Rpb24gaWQgaWYgaXQgaXMgYWxsb3dlZCB0byB1c2UgY29sbGVjdGlvbiBmb3IgdHJhbnNsYXRpb25zXHJcbiAqL1xyXG4gIHNlbGVjdGVkSWRGb3JUcmFuc2xhdGlvbigpOiBzdHJpbmcge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWQ/Lm10Q29sbGVjdGlvbiAmJiAodGhpcy5zZWxlY3RlZC5tdENvbGxlY3Rpb24ubGFzdFVwZGF0ZWQgfHwgdGhpcy5zZWxlY3RlZC5tdENvbGxlY3Rpb24/LnN0YXR1cyA9PT0gTXRDb2xsZWN0aW9uU3RhdHVzLlJFQURZKSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5zZWxlY3RlZC5tdENvbGxlY3Rpb24/LmlkO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICBzdGFydEF1dG9SZWZyZXNoKGVuZ2luZUlkPzogc3RyaW5nLCBsYW5ndWFnZXM6IHN0cmluZ1tdID0gbnVsbCwgc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlID0gZmFsc2UsIHRlcm1Db2xsZWN0aW9ucyA9IHRydWUsIG10Q29sbGVjdGlvbnMgPSB0cnVlKSB7XHJcbiAgICB0aGlzLmhhcmRBdXRvUmVmcmVzaCA9IHRydWU7XHJcbiAgICByZXR1cm4gdGhpcy5zZXRFbmdpbmUoZW5naW5lSWQgPz8gdGhpcy5lbmdpbmVJZCwgbGFuZ3VhZ2VzID8/IHRoaXMuZW5naW5lTGFuZ3VhZ2VzLCBzZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2UsIHRlcm1Db2xsZWN0aW9ucywgbXRDb2xsZWN0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBzdG9wQXV0b1JlZnJlc2goKSB7XHJcbiAgICB0aGlzLmNsZWFyVGltZW91dCgpO1xyXG5cclxuICAgIHRoaXMuaXNTb2Z0QXV0b1JlZnJlc2hPbiA9IGZhbHNlO1xyXG4gICAgdGhpcy5oYXJkQXV0b1JlZnJlc2ggPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHJlbW92ZU10Q29sbGVjdGlvbihjb2xsZWN0aW9uOiBDb21iaW5lZENvbGxlY3Rpb24sIGVuZ2luZUlkID0gdGhpcy5lbmdpbmVJZCkge1xyXG4gICAgcmV0dXJuIHRoaXMubXRBcGkucmVtb3ZlKGVuZ2luZUlkLCBjb2xsZWN0aW9uKS5waXBlKFxyXG4gICAgICB0YXAoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgY29sbGVjdGlvbi51cGRhdGUocmVzcG9uc2UpO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2NoZWR1bGVSZWZyZXNoKHRpbWVvdXQ/OiBudW1iZXIpIHtcclxuICAgIC8vIGlmIG1lbnUgaXMgY2xvc2VkIGFuZCBzZWxlY3RlZCBjb2xsZWN0aW9uIGlzIG5vdCBpbXBvcnRpbmcgYW55bW9yZSAtIGF1dG8gcmVmcmVzaGluZyBzaG91bGQgYmUgY2FuY2VsbGVkLlxyXG4gICAgaWYgKCF0aGlzLmhhcmRBdXRvUmVmcmVzaCAmJiAhdGhpcy5zZWxlY3RlZD8uaXNJbXBvcnRpbmcgJiYgdGhpcy5pc1NvZnRBdXRvUmVmcmVzaE9uKSB7XHJcbiAgICAgIHRoaXMuc3RvcEF1dG9SZWZyZXNoKCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICAvLyBpZiBoYXJkIGF1dG8gcmVmcmVzaG8gb24sIGF1dG8gcmVmcmVzaCBzaG91bGQgYmUgb24uIElmIGhhcmQgYXV0b3JlZmVyZXNoIGlzIG9mZiAsIHJlZnJlc2ggbmVlZHMgdG8gYmUgZG9uZSBvbmx5IGlmIHNlbGVjdGVkIGlzIGltcG9ydGluZy5cclxuICAgIGlmICh0aGlzLmhhcmRBdXRvUmVmcmVzaCB8fCAoIXRoaXMucmVmcmVzaFRpbWVvdXQgJiYgKHRoaXMuaXNTb2Z0QXV0b1JlZnJlc2hPbiB8fCB0aGlzLnNlbGVjdGVkPy5pc0ltcG9ydGluZykpKSB7XHJcbiAgICAgIGNvbnN0IHRpbWVvdXRNcyA9IHRpbWVvdXQgPz8gKHRoaXMuaXNBbnlJbXBvcnRpbmcgPyB0aGlzLmNvbmZpZy50ZXJtQ29uZmlnLnJlZnJlc2hUaW1lb3V0TXNXaGVuSW1wb3J0aW5nIDogdGhpcy5jb25maWcudGVybUNvbmZpZy5yZWZyZXNoVGltZW91dE1zKTtcclxuICAgICAgdGhpcy5yZWZyZXNoVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMucmVmcmVzaFRpbWVvdXQgPSBudWxsO1xyXG4gICAgICAgIHRoaXMucmVmcmVzaENvbGxlY3Rpb25zKClcclxuICAgICAgfSwgdGltZW91dE1zKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqXHJcbiAgICogQHBhcmFtIG5ld0NvbGxlY3Rpb25zXHJcbiAgICogQHBhcmFtIGluaXRpYWxSZWZyZXNoIFdoZXRoZXIgYWxzbyBlZGl0YWJsZSBjb2xsZWN0aW9uIGZpZWxkcyBzaG91bGQgYmUgdXBkYXRlZC4gSWYgbm90IGluaXRpYWwgcmVmcmVzaCwgZWRpdGFibGUgZmllbGRzIHdpbGwgbm90IGJlIHVwZGF0ZWQuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBhZGRDb2xsZWN0aW9ucyhuZXdDb2xsZWN0aW9uczogSXRlcmFibGU8Q29tYmluZWRDb2xsZWN0aW9uPiwgaW5pdGlhbFJlZnJlc2g6IGJvb2xlYW4pIHtcclxuICAgIC8vIHNldHMgY29sbGVjdGlvbiBsaXN0IHRvIHRoaXMgdmFsdWUgYXQgdGhlIGVuZCwgc28gZGVsZXRlZCBjb2xsZWN0aW9ucyBhcmUgbm90IGluIHRoZSBsaXN0LlxyXG4gICAgZm9yIChsZXQgY29sbGVjdGlvbiBvZiBuZXdDb2xsZWN0aW9ucykge1xyXG4gICAgICAvLyBVc2VyIHNob3VsZG4ndCBzZWUgZmFpbGVkIGNvbGxlY3Rpb25zIGlmIGhlIGNhbid0IHJldHJ5IHRvIGltcG9ydCB0aGVtLlxyXG4gICAgICBpZiAoIXRoaXMuaGFzRWRpdFBlcm1pc3Npb25zXHJcbiAgICAgICAgJiYgY29sbGVjdGlvbi5tdFN0YXR1cyA9PT0gTXRDb2xsZWN0aW9uU3RhdHVzLkVSUk9SKSB7XHJcbiAgICAgICAgY29udGludWU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChjb2xsZWN0aW9uLmlzSW1wb3J0aW5nKSB7XHJcbiAgICAgICAgdGhpcy5pc0FueUltcG9ydGluZyA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgICAgbGV0IGV4aXN0aW5nOiBDb21iaW5lZENvbGxlY3Rpb24gPSBDb21iaW5lZENvbGxlY3Rpb24uZmluZEV4aXN0aW5nQ29sbGVjdGlvbkZyb21MaXN0KHRoaXMuY29sbGVjdGlvbnMsIGNvbGxlY3Rpb24pO1xyXG5cclxuICAgICAgLy8gSWYgdGVybSBhcGkgZG9lc24ndCBoYXZlIGVuZ2luZSBsYW5ndWFnZXMsIGNvbGxlY3Rpb24gc2hvdWxkIG5vdCBiZSBzaG93biAoaWYgaXQgaXMgbm90IGFscmVhZHkgaW1wb3J0ZWQgc29tZWhvdyk7XHJcbiAgICAgIGlmICghZXhpc3RpbmcgJiYgY29sbGVjdGlvbi5zb3VyY2UgPT09IEVuZ2luZVRlcm1Db2xsZWN0aW9uU291cmNlLlRJTERFX1RFUk0pIHtcclxuICAgICAgICBsZXQgaGFzTGFuZ3VhZ2VzID0gdHJ1ZTtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuZW5naW5lTGFuZ3VhZ2VzPy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgaWYgKCFjb2xsZWN0aW9uLnRlcm1Db2xsZWN0aW9uLmxhbmd1YWdlcz8uZmluZChsYW5nID0+IGxhbmcuaWQgPT09IHRoaXMuZW5naW5lTGFuZ3VhZ2VzW2ldKSkge1xyXG4gICAgICAgICAgICBoYXNMYW5ndWFnZXMgPSBmYWxzZTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoIWhhc0xhbmd1YWdlcykge1xyXG4gICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoIWV4aXN0aW5nKSB7XHJcbiAgICAgICAgdGhpcy5fY29sbGVjdGlvbnMuYWRkKGNvbGxlY3Rpb24pO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGV4aXN0aW5nLnVwZGF0ZShjb2xsZWN0aW9uLCBpbml0aWFsUmVmcmVzaCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyB0aGlzLl9jb2xsZWN0aW9ucyA9IHVwZGF0ZWRDb2xsZWN0aW9ucztcclxuICAgIHRoaXMuZW1pdERhdGFVcGRhdGVFdmVudCgpO1xyXG4gICAgdGhpcy5faGFzQW55Q29sbGVjdGlvbnMgPSB0aGlzLl9jb2xsZWN0aW9ucy5zaXplID4gMDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNob3VsZCBiZSBjYWxsZWQgYWZ0ZXIgcmVmcmVzaCB0byBjaGVjayBpZiB0aGVyZSBpcyBhbnkgY29sbGVjdGlvbnMgZnJvbSBhcGkgdGhhdCBhcmUgZGVsZXRlZC5cclxuICAgKi9cclxuICBwcml2YXRlIHJlbW92ZURlbGV0ZWQodGVybVJlc3BvbnNlOiBDb21iaW5lZENvbGxlY3Rpb25bXSwgbXRSZXNwb25zZTogQ29tYmluZWRDb2xsZWN0aW9uW10sIGluaXRpYWxSZWZyZXNoOiBib29sZWFuKSB7XHJcblxyXG4gICAgZm9yIChjb25zdCBjb2xsZWN0aW9uIG9mIHRoaXMuY29sbGVjdGlvbnMpIHtcclxuICAgICAgY29uc3QgdGVybUV4aXN0aW5nSXggPSBDb21iaW5lZENvbGxlY3Rpb24uZmluZEV4aXN0aW5nSW5kZXhGcm9tTGlzdCh0ZXJtUmVzcG9uc2UsIGNvbGxlY3Rpb24pO1xyXG4gICAgICBjb25zdCBtdEV4aXN0aW5nSXggPSBDb21iaW5lZENvbGxlY3Rpb24uZmluZEV4aXN0aW5nSW5kZXhGcm9tTGlzdChtdFJlc3BvbnNlLCBjb2xsZWN0aW9uKTtcclxuICAgICAgaWYgKHRlcm1FeGlzdGluZ0l4ID09PSBudWxsICYmIG10RXhpc3RpbmdJeCA9PT0gbnVsbCkge1xyXG4gICAgICAgIHRoaXMuY29sbGVjdGlvbnMuZGVsZXRlKGNvbGxlY3Rpb24pO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGlmICh0ZXJtRXhpc3RpbmdJeCAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgY29uc3QgZXhpc3RpbmcgPSB0ZXJtUmVzcG9uc2VbdGVybUV4aXN0aW5nSXhdO1xyXG4gICAgICAgICAgY29sbGVjdGlvbi51cGRhdGUoZXhpc3RpbmcsIGluaXRpYWxSZWZyZXNoKTtcclxuICAgICAgICAgIHRlcm1SZXNwb25zZS5zcGxpY2UodGVybUV4aXN0aW5nSXgsIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgIGNvbGxlY3Rpb24uZGVsZXRlVGVybXMoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChtdEV4aXN0aW5nSXggIT09IG51bGwpIHtcclxuICAgICAgICAgIGNvbnN0IGV4aXN0aW5nID0gbXRSZXNwb25zZVttdEV4aXN0aW5nSXhdO1xyXG4gICAgICAgICAgY29sbGVjdGlvbi51cGRhdGUoZXhpc3RpbmcsIGluaXRpYWxSZWZyZXNoKTtcclxuICAgICAgICAgIG10UmVzcG9uc2Uuc3BsaWNlKG10RXhpc3RpbmdJeCwgMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgY29sbGVjdGlvbi5kZWxldGVNVCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjbGVhclRpbWVvdXQoKSB7XHJcbiAgICBpZiAodGhpcy5yZWZyZXNoVGltZW91dCkge1xyXG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5yZWZyZXNoVGltZW91dCk7XHJcbiAgICAgIHRoaXMucmVmcmVzaFRpbWVvdXQgPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2UoKSB7XHJcbiAgICAvLyBJZiBubyBjb2xsZWN0aW9ucyBvciBzZWxlY3RlZCBpcyBhbHJlYWR5IHNldCwgaXQgc2hvdWxkIG5vdCBiZSBjaGFuZ2VkIGZyb20gbG9jYWxzdG9yYWdlIHZhbHVlLiAoVXN1YWxseSwgbG9jYWxzdG9yYWdlIHNob3VsZCBoYXZlIHRoZSBzYW1lIHZhbHVlKS5cclxuICAgIGlmICh0aGlzLmNvbGxlY3Rpb25zPy5zaXplID09PSAwIHx8IHRoaXMuc2VsZWN0ZWQpIHtcclxuICAgICAgcmV0dXJuXHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qgc3RvcmVkSWQgPSB0aGlzLnJlYWRMb2NhbFN0b3JhZ2UoKT8uW3RoaXMuZW5naW5lSWRdO1xyXG4gICAgaWYgKCFzdG9yZWRJZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZXhpc3RpbmcgPSBBcnJheS5mcm9tKHRoaXMuY29sbGVjdGlvbnMpLmZpbmQoaXRlbSA9PiBpdGVtLnRlcm1Db2xsZWN0aW9uPy5pZCA9PT0gc3RvcmVkSWQgfHwgaXRlbS5tdENvbGxlY3Rpb24/LmlkID09PSBzdG9yZWRJZCk7XHJcbiAgICB0aGlzLnNlbGVjdGVkID0gZXhpc3Rpbmc7XHJcbiAgfVxyXG5cclxuXHJcbiAgcHJpdmF0ZSBzdG9yZVNlbGVjdGVkSW5Mb2NhbFN0b3JhZ2UoKSB7XHJcbiAgICBsZXQgbG9jYWxTdG9yYWdlT2JqZWN0ID0gdGhpcy5yZWFkTG9jYWxTdG9yYWdlKCk7XHJcbiAgICBpZiAoIWxvY2FsU3RvcmFnZU9iamVjdCkge1xyXG4gICAgICBsb2NhbFN0b3JhZ2VPYmplY3QgPSB7fTtcclxuICAgIH1cclxuXHJcbiAgICBsb2NhbFN0b3JhZ2VPYmplY3RbdGhpcy5lbmdpbmVJZF0gPSB0aGlzLnNlbGVjdGVkID8gKHRoaXMuc2VsZWN0ZWQudGVybUNvbGxlY3Rpb24/LmlkID8/IHRoaXMuc2VsZWN0ZWQubXRDb2xsZWN0aW9uPy5pZCkgOiBudWxsO1xyXG4gICAgLy8gc3RvcmUgdGVybSBpZCBpZiBpdCBleGlzdHNcclxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMuTE9DQUxfU1RPUkFHRV9LRVksIEpTT04uc3RyaW5naWZ5KGxvY2FsU3RvcmFnZU9iamVjdCkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZWFkTG9jYWxTdG9yYWdlKCk6IGFueSB7XHJcbiAgICBjb25zdCBkYXRhID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5MT0NBTF9TVE9SQUdFX0tFWSk7XHJcbiAgICB0cnkge1xyXG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShkYXRhKTtcclxuICAgIH1cclxuICAgIGNhdGNoIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGVtaXREYXRhVXBkYXRlRXZlbnQoKSB7XHJcbiAgICB0aGlzLm9uRGF0YVVwZGF0ZS5uZXh0KHRoaXMuY29sbGVjdGlvbnMpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -26,7 +26,7 @@ export class TldTermCollectionComponent {
26
26
  }
27
27
  }
28
28
  TldTermCollectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldTermCollectionComponent, deps: [{ token: i1.TerminologyService }, { token: i2.TldSystemService }], target: i0.ɵɵFactoryTarget.Component });
29
- TldTermCollectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TldTermCollectionComponent, selector: "tld-term-collection", ngImport: i0, template: "<section class=\"tld-collection-list-wrapper\">\r\n <ng-container *ngIf=\"!promotion\">\r\n <tld-term-collection-list></tld-term-collection-list>\r\n <footer class=\"tld-collection-list-footer\" fxLayout=\"row\" *ngIf=\"hasEditPermissions\">\r\n <tld-create-collection [sourceLanguageCode]=\"sourceLanguageCode\" [targetLanguageCode]=\"targetLanguageCode\">\r\n </tld-create-collection>\r\n </footer>\r\n </ng-container>\r\n <ng-container *ngIf=\"promotion\">\r\n <tld-term-promotion></tld-term-promotion>\r\n </ng-container>\r\n</section>\r\n", styles: [".tld-collection-list-footer{padding:1em .75em}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "component", type: i5.TldTermCollectionListComponent, selector: "tld-term-collection-list" }, { kind: "component", type: i6.TldTermPromotionComponent, selector: "tld-term-promotion" }, { kind: "component", type: i7.CreateCollectionComponent, selector: "tld-create-collection", inputs: ["sourceLanguageCode", "targetLanguageCode"] }] });
29
+ TldTermCollectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TldTermCollectionComponent, selector: "tld-term-collection", ngImport: i0, template: "<section class=\"tld-collection-list-wrapper\">\r\n <ng-container *ngIf=\"!promotion\">\r\n <tld-term-collection-list></tld-term-collection-list>\r\n <footer class=\"tld-collection-list-footer\" fxLayout=\"row\" *ngIf=\"hasEditPermissions\">\r\n <tld-create-collection [sourceLanguageCode]=\"sourceLanguageCode\" [targetLanguageCode]=\"targetLanguageCode\">\r\n </tld-create-collection>\r\n </footer>\r\n </ng-container>\r\n <ng-container *ngIf=\"promotion\">\r\n <tld-term-promotion></tld-term-promotion>\r\n </ng-container>\r\n</section>\r\n", styles: [".tld-collection-list-footer{padding:1em .75em}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "component", type: i5.TldTermCollectionListComponent, selector: "tld-term-collection-list" }, { kind: "component", type: i6.TldTermPromotionComponent, selector: "tld-term-promotion" }, { kind: "component", type: i7.CreateCollectionComponent, selector: "tld-create-collection", inputs: ["sourceLanguageCode", "targetLanguageCode"], outputs: ["collectionCreated"] }] });
30
30
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldTermCollectionComponent, decorators: [{
31
31
  type: Component,
32
32
  args: [{ selector: 'tld-term-collection', template: "<section class=\"tld-collection-list-wrapper\">\r\n <ng-container *ngIf=\"!promotion\">\r\n <tld-term-collection-list></tld-term-collection-list>\r\n <footer class=\"tld-collection-list-footer\" fxLayout=\"row\" *ngIf=\"hasEditPermissions\">\r\n <tld-create-collection [sourceLanguageCode]=\"sourceLanguageCode\" [targetLanguageCode]=\"targetLanguageCode\">\r\n </tld-create-collection>\r\n </footer>\r\n </ng-container>\r\n <ng-container *ngIf=\"promotion\">\r\n <tld-term-promotion></tld-term-promotion>\r\n </ng-container>\r\n</section>\r\n", styles: [".tld-collection-list-footer{padding:1em .75em}\n"] }]