@alfresco/adf-content-services 8.1.0-15865093855 → 8.1.0-15928551305

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 (76) hide show
  1. package/esm2022/lib/aspect-list/aspect-list-dialog.component.mjs +5 -6
  2. package/esm2022/lib/aspect-list/aspect-list.component.mjs +5 -6
  3. package/esm2022/lib/breadcrumb/breadcrumb.component.mjs +6 -7
  4. package/esm2022/lib/breadcrumb/dropdown-breadcrumb.component.mjs +4 -5
  5. package/esm2022/lib/category/categories-management/categories-management.component.mjs +10 -11
  6. package/esm2022/lib/content-metadata/components/content-metadata/content-metadata-header.component.mjs +4 -5
  7. package/esm2022/lib/content-metadata/components/content-metadata/content-metadata.component.mjs +6 -7
  8. package/esm2022/lib/content-metadata/components/content-metadata-card/content-metadata-card.component.mjs +4 -5
  9. package/esm2022/lib/content-node-selector/content-node-selector-panel/content-node-selector-panel.component.mjs +8 -9
  10. package/esm2022/lib/content-node-selector/content-node-selector.component.mjs +6 -7
  11. package/esm2022/lib/content-node-selector/site-dropdown/sites-dropdown.component.mjs +4 -4
  12. package/esm2022/lib/content-node-share/content-node-share.dialog.mjs +11 -12
  13. package/esm2022/lib/content-type/content-type-dialog.component.mjs +7 -8
  14. package/esm2022/lib/content.module.mjs +2 -2
  15. package/esm2022/lib/dialogs/category-selector/category-selector.dialog.mjs +5 -6
  16. package/esm2022/lib/dialogs/folder/folder.dialog.mjs +7 -8
  17. package/esm2022/lib/dialogs/library/library.dialog.mjs +8 -9
  18. package/esm2022/lib/dialogs/node-lock/node-lock.dialog.mjs +9 -10
  19. package/esm2022/lib/directives/content-directive.module.mjs +2 -2
  20. package/esm2022/lib/directives/node-counter.directive.mjs +4 -5
  21. package/esm2022/lib/document-list/components/document-list.component.mjs +6 -7
  22. package/esm2022/lib/document-list/components/file-auto-download/file-auto-download.component.mjs +7 -8
  23. package/esm2022/lib/document-list/components/library-name-column/library-name-column.component.mjs +5 -7
  24. package/esm2022/lib/document-list/components/library-role-column/library-role-column.component.mjs +5 -7
  25. package/esm2022/lib/document-list/components/library-status-column/library-status-column.component.mjs +5 -7
  26. package/esm2022/lib/document-list/components/name-column/name-column.component.mjs +5 -7
  27. package/esm2022/lib/document-list/document-list.module.mjs +1 -5
  28. package/esm2022/lib/new-version-uploader/new-version-uploader.dialog.mjs +5 -6
  29. package/esm2022/lib/permission-manager/components/add-permission/add-permission-dialog.component.mjs +5 -6
  30. package/esm2022/lib/permission-manager/components/add-permission/add-permission-panel.component.mjs +7 -8
  31. package/esm2022/lib/permission-manager/components/add-permission/add-permission.component.mjs +4 -5
  32. package/esm2022/lib/permission-manager/components/permission-container/permission-container.component.mjs +6 -7
  33. package/esm2022/lib/permission-manager/components/permission-list/permission-list.component.mjs +5 -6
  34. package/esm2022/lib/permission-manager/components/user-role-column/user-role-column.component.mjs +4 -5
  35. package/esm2022/lib/search/components/search-check-list/search-check-list.component.mjs +6 -7
  36. package/esm2022/lib/search/components/search-chip-autocomplete-input/search-chip-autocomplete-input.component.mjs +8 -9
  37. package/esm2022/lib/search/components/search-chip-list/search-chip-list.component.mjs +5 -6
  38. package/esm2022/lib/search/components/search-control.component.mjs +4 -5
  39. package/esm2022/lib/search/components/search-date-range-tabbed/search-date-range/search-date-range.component.mjs +8 -9
  40. package/esm2022/lib/search/components/search-datetime-range/search-datetime-range.component.mjs +4 -5
  41. package/esm2022/lib/search/components/search-facet-field/search-facet-field.component.mjs +6 -7
  42. package/esm2022/lib/search/components/search-filter/search-filter-card/search-filter-card.component.mjs +5 -6
  43. package/esm2022/lib/search/components/search-filter/search-filter.component.mjs +4 -5
  44. package/esm2022/lib/search/components/search-filter-autocomplete-chips/search-filter-autocomplete-chips.component.mjs +5 -6
  45. package/esm2022/lib/search/components/search-filter-chips/search-facet-chip/search-facet-chip.component.mjs +6 -7
  46. package/esm2022/lib/search/components/search-filter-chips/search-facet-chip-tabbed/search-facet-chip-tabbed.component.mjs +6 -7
  47. package/esm2022/lib/search/components/search-filter-chips/search-filter-chips.component.mjs +4 -5
  48. package/esm2022/lib/search/components/search-filter-chips/search-filter-menu-card/search-filter-menu-card.component.mjs +6 -7
  49. package/esm2022/lib/search/components/search-filter-chips/search-widget-chip/search-widget-chip.component.mjs +6 -7
  50. package/esm2022/lib/search/components/search-filter-container/search-filter-container.component.mjs +5 -6
  51. package/esm2022/lib/search/components/search-filter-tabbed/search-filter-tabbed.component.mjs +4 -5
  52. package/esm2022/lib/search/components/search-form/search-form.component.mjs +6 -7
  53. package/esm2022/lib/search/components/search-input/search-input.component.mjs +4 -5
  54. package/esm2022/lib/search/components/search-logical-filter/search-logical-filter.component.mjs +5 -6
  55. package/esm2022/lib/search/components/search-number-range/search-number-range.component.mjs +5 -6
  56. package/esm2022/lib/search/components/search-properties/search-properties.component.mjs +4 -4
  57. package/esm2022/lib/search/components/search-radio/search-radio.component.mjs +6 -7
  58. package/esm2022/lib/search/components/search-slider/search-slider.component.mjs +4 -5
  59. package/esm2022/lib/search/components/search-text/search-text.component.mjs +8 -9
  60. package/esm2022/lib/search/components/search.component.mjs +4 -5
  61. package/esm2022/lib/tag/tag-actions/tag-actions.component.mjs +6 -7
  62. package/esm2022/lib/tag/tags-creator/tags-creator.component.mjs +6 -7
  63. package/esm2022/lib/tree/components/tree.component.mjs +10 -11
  64. package/esm2022/lib/tree-view/components/tree-view.component.mjs +4 -5
  65. package/esm2022/lib/upload/components/file-uploading-dialog.component.mjs +6 -7
  66. package/esm2022/lib/upload/components/file-uploading-list-row.component.mjs +5 -6
  67. package/esm2022/lib/upload/components/upload-button.component.mjs +5 -6
  68. package/esm2022/lib/upload/components/upload-version-button.component.mjs +5 -6
  69. package/esm2022/lib/version-manager/version-comparison.component.mjs +4 -5
  70. package/esm2022/lib/version-manager/version-list.component.mjs +5 -6
  71. package/esm2022/lib/version-manager/version-manager.component.mjs +4 -5
  72. package/esm2022/lib/version-manager/version-upload.component.mjs +7 -8
  73. package/esm2022/lib/viewer/components/alfresco-viewer.component.mjs +6 -7
  74. package/fesm2022/adf-content-services.mjs +188 -192
  75. package/fesm2022/adf-content-services.mjs.map +1 -1
  76. package/package.json +4 -4
@@ -24,12 +24,11 @@ import { PermissionModel } from '../../document-list/models/permissions.model';
24
24
  import { UploadBase } from './base-upload/upload-base';
25
25
  import { CommonModule } from '@angular/common';
26
26
  import { MatButtonModule } from '@angular/material/button';
27
- import { TranslateModule } from '@ngx-translate/core';
27
+ import { TranslatePipe } from '@ngx-translate/core';
28
28
  import { MatIconModule } from '@angular/material/icon';
29
29
  import * as i0 from "@angular/core";
30
30
  import * as i1 from "@angular/common";
31
- import * as i2 from "@ngx-translate/core";
32
- import * as i3 from "@angular/material/icon";
31
+ import * as i2 from "@angular/material/icon";
33
32
  export class UploadButtonComponent extends UploadBase {
34
33
  constructor() {
35
34
  super(...arguments);
@@ -113,11 +112,11 @@ export class UploadButtonComponent extends UploadBase {
113
112
  return this.contentService.hasAllowableOperations(node, permission);
114
113
  }
115
114
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UploadButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
116
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UploadButtonComponent, isStandalone: true, selector: "adf-upload-button", inputs: { uploadFolders: "uploadFolders", multipleFiles: "multipleFiles", staticTitle: "staticTitle", tooltip: "tooltip", file: "file" }, outputs: { permissionEvent: "permissionEvent" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<form class=\"adf-upload-button-file-container\">\n <!--Files Upload-->\n <div *ngIf=\"!uploadFolders\">\n\n <!--Single Files Upload-->\n <ng-container *ngIf=\"!multipleFiles\">\n <input\n class=\"adf-upload-button-file-container-upload-single-file\"\n id=\"upload-single-file\"\n data-automation-id=\"upload-single-file\"\n [type]=\"file ? 'button' : 'file'\"\n name=\"uploadFiles\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"\n (click)=\"onClickUploadButton()\"/>\n <label for=\"upload-single-file\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-single-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-single-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n\n <!--Multiple Files Upload-->\n <ng-container *ngIf=\"multipleFiles\">\n <input\n id=\"upload-multiple-files\"\n data-automation-id=\"upload-multiple-files\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"/>\n <label for=\"upload-multiple-files\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-multiple-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-multiple-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n </div>\n\n <!--Folders Upload-->\n <ng-container *ngIf=\"uploadFolders\">\n <input\n id=\"uploadFolder\"\n data-automation-id=\"uploadFolder\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n webkitdirectory directory\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onDirectoryAdded($event)\"/>\n <label for=\"uploadFolder\" data-automation-id=\"uploadFolder\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"uploadFolder-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FOLDER' | translate }}</span>\n <span id=\"uploadFolder-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n</form>\n", styles: [".adf-upload-button-file-container .adf-upload-button-icon{margin:0;font-size:24px;width:24px;height:24px}.adf-upload-button-file-container input{display:none}.adf-upload-button-label{display:flex;align-items:center;cursor:pointer;padding:8px 16px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border-radius:4px}.adf-upload-button-label:active{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.adf-upload-button-file-container-upload-single-file[disabled]+.adf-upload-button-label{background-color:var(--adf-disabled-button-background);color:var(--adf-theme-foreground-disabled-text-color);box-shadow:none;cursor:default}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], viewProviders: [{ provide: EXTENDIBLE_COMPONENT, useExisting: forwardRef(() => UploadButtonComponent) }], encapsulation: i0.ViewEncapsulation.None }); }
115
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UploadButtonComponent, isStandalone: true, selector: "adf-upload-button", inputs: { uploadFolders: "uploadFolders", multipleFiles: "multipleFiles", staticTitle: "staticTitle", tooltip: "tooltip", file: "file" }, outputs: { permissionEvent: "permissionEvent" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<form class=\"adf-upload-button-file-container\">\n <!--Files Upload-->\n <div *ngIf=\"!uploadFolders\">\n\n <!--Single Files Upload-->\n <ng-container *ngIf=\"!multipleFiles\">\n <input\n class=\"adf-upload-button-file-container-upload-single-file\"\n id=\"upload-single-file\"\n data-automation-id=\"upload-single-file\"\n [type]=\"file ? 'button' : 'file'\"\n name=\"uploadFiles\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"\n (click)=\"onClickUploadButton()\"/>\n <label for=\"upload-single-file\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-single-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-single-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n\n <!--Multiple Files Upload-->\n <ng-container *ngIf=\"multipleFiles\">\n <input\n id=\"upload-multiple-files\"\n data-automation-id=\"upload-multiple-files\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"/>\n <label for=\"upload-multiple-files\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-multiple-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-multiple-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n </div>\n\n <!--Folders Upload-->\n <ng-container *ngIf=\"uploadFolders\">\n <input\n id=\"uploadFolder\"\n data-automation-id=\"uploadFolder\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n webkitdirectory directory\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onDirectoryAdded($event)\"/>\n <label for=\"uploadFolder\" data-automation-id=\"uploadFolder\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"uploadFolder-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FOLDER' | translate }}</span>\n <span id=\"uploadFolder-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n</form>\n", styles: [".adf-upload-button-file-container .adf-upload-button-icon{margin:0;font-size:24px;width:24px;height:24px}.adf-upload-button-file-container input{display:none}.adf-upload-button-label{display:flex;align-items:center;cursor:pointer;padding:8px 16px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border-radius:4px}.adf-upload-button-label:active{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.adf-upload-button-file-container-upload-single-file[disabled]+.adf-upload-button-label{background-color:var(--adf-disabled-button-background);color:var(--adf-theme-foreground-disabled-text-color);box-shadow:none;cursor:default}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], viewProviders: [{ provide: EXTENDIBLE_COMPONENT, useExisting: forwardRef(() => UploadButtonComponent) }], encapsulation: i0.ViewEncapsulation.None }); }
117
116
  }
118
117
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UploadButtonComponent, decorators: [{
119
118
  type: Component,
120
- args: [{ selector: 'adf-upload-button', standalone: true, imports: [CommonModule, MatButtonModule, TranslateModule, MatIconModule], viewProviders: [{ provide: EXTENDIBLE_COMPONENT, useExisting: forwardRef(() => UploadButtonComponent) }], encapsulation: ViewEncapsulation.None, template: "<form class=\"adf-upload-button-file-container\">\n <!--Files Upload-->\n <div *ngIf=\"!uploadFolders\">\n\n <!--Single Files Upload-->\n <ng-container *ngIf=\"!multipleFiles\">\n <input\n class=\"adf-upload-button-file-container-upload-single-file\"\n id=\"upload-single-file\"\n data-automation-id=\"upload-single-file\"\n [type]=\"file ? 'button' : 'file'\"\n name=\"uploadFiles\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"\n (click)=\"onClickUploadButton()\"/>\n <label for=\"upload-single-file\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-single-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-single-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n\n <!--Multiple Files Upload-->\n <ng-container *ngIf=\"multipleFiles\">\n <input\n id=\"upload-multiple-files\"\n data-automation-id=\"upload-multiple-files\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"/>\n <label for=\"upload-multiple-files\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-multiple-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-multiple-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n </div>\n\n <!--Folders Upload-->\n <ng-container *ngIf=\"uploadFolders\">\n <input\n id=\"uploadFolder\"\n data-automation-id=\"uploadFolder\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n webkitdirectory directory\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onDirectoryAdded($event)\"/>\n <label for=\"uploadFolder\" data-automation-id=\"uploadFolder\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"uploadFolder-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FOLDER' | translate }}</span>\n <span id=\"uploadFolder-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n</form>\n", styles: [".adf-upload-button-file-container .adf-upload-button-icon{margin:0;font-size:24px;width:24px;height:24px}.adf-upload-button-file-container input{display:none}.adf-upload-button-label{display:flex;align-items:center;cursor:pointer;padding:8px 16px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border-radius:4px}.adf-upload-button-label:active{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.adf-upload-button-file-container-upload-single-file[disabled]+.adf-upload-button-label{background-color:var(--adf-disabled-button-background);color:var(--adf-theme-foreground-disabled-text-color);box-shadow:none;cursor:default}\n"] }]
119
+ args: [{ selector: 'adf-upload-button', standalone: true, imports: [CommonModule, MatButtonModule, TranslatePipe, MatIconModule], viewProviders: [{ provide: EXTENDIBLE_COMPONENT, useExisting: forwardRef(() => UploadButtonComponent) }], encapsulation: ViewEncapsulation.None, template: "<form class=\"adf-upload-button-file-container\">\n <!--Files Upload-->\n <div *ngIf=\"!uploadFolders\">\n\n <!--Single Files Upload-->\n <ng-container *ngIf=\"!multipleFiles\">\n <input\n class=\"adf-upload-button-file-container-upload-single-file\"\n id=\"upload-single-file\"\n data-automation-id=\"upload-single-file\"\n [type]=\"file ? 'button' : 'file'\"\n name=\"uploadFiles\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"\n (click)=\"onClickUploadButton()\"/>\n <label for=\"upload-single-file\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-single-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-single-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n\n <!--Multiple Files Upload-->\n <ng-container *ngIf=\"multipleFiles\">\n <input\n id=\"upload-multiple-files\"\n data-automation-id=\"upload-multiple-files\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"/>\n <label for=\"upload-multiple-files\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-multiple-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-multiple-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n </div>\n\n <!--Folders Upload-->\n <ng-container *ngIf=\"uploadFolders\">\n <input\n id=\"uploadFolder\"\n data-automation-id=\"uploadFolder\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n webkitdirectory directory\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onDirectoryAdded($event)\"/>\n <label for=\"uploadFolder\" data-automation-id=\"uploadFolder\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"uploadFolder-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FOLDER' | translate }}</span>\n <span id=\"uploadFolder-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n</form>\n", styles: [".adf-upload-button-file-container .adf-upload-button-icon{margin:0;font-size:24px;width:24px;height:24px}.adf-upload-button-file-container input{display:none}.adf-upload-button-label{display:flex;align-items:center;cursor:pointer;padding:8px 16px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border-radius:4px}.adf-upload-button-label:active{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.adf-upload-button-file-container-upload-single-file[disabled]+.adf-upload-button-label{background-color:var(--adf-disabled-button-background);color:var(--adf-theme-foreground-disabled-text-color);box-shadow:none;cursor:default}\n"] }]
121
120
  }], propDecorators: { uploadFolders: [{
122
121
  type: Input
123
122
  }], multipleFiles: [{
@@ -131,4 +130,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
131
130
  }], permissionEvent: [{
132
131
  type: Output
133
132
  }] } });
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29udGVudC1zZXJ2aWNlcy9zcmMvbGliL3VwbG9hZC9jb21wb25lbnRzL3VwbG9hZC1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvbnRlbnQtc2VydmljZXMvc3JjL2xpYi91cGxvYWQvY29tcG9uZW50cy91cGxvYWQtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoSixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBRXhGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7O0FBV3ZELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxVQUFVO0lBVHJEOztRQVVZLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3hDLG9CQUFlLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRWxELHlEQUF5RDtRQUV6RCxrQkFBYSxHQUFZLEtBQUssQ0FBQztRQUUvQixzQ0FBc0M7UUFFdEMsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFNL0IsMkJBQTJCO1FBRTNCLFlBQU8sR0FBVyxJQUFJLENBQUM7UUFNdkIsaURBQWlEO1FBRWpELG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7UUFFOUMsMkJBQXNCLEdBQVksS0FBSyxDQUFDO1FBQ3RDLG9CQUFlLEdBQUcsSUFBSSxPQUFPLEVBQVcsQ0FBQztLQTZFdEQ7SUEzRUcsUUFBUTtRQUNKLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUMsVUFBbUIsRUFBRSxFQUFFO1lBQ25ELElBQUksQ0FBQyxzQkFBc0IsR0FBRyxVQUFVLENBQUM7UUFDN0MsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM3QyxJQUFJLFlBQVksRUFBRSxZQUFZLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDM0IsQ0FBQztJQUNMLENBQUM7SUFFRCxnQkFBZ0I7UUFDWixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQzVDLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBVztRQUNwQixNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFaEUsSUFBSSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVCLENBQUM7YUFBTSxDQUFDO1lBQ0osSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxlQUFlLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNoSCxDQUFDO1FBQ0Qsb0NBQW9DO1FBQ3BDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsbUJBQW1CO1FBQ2YsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDWixNQUFNLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUUxQixJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO2dCQUM5QixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzVCLENBQUM7aUJBQU0sQ0FBQztnQkFDSixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLGVBQWUsQ0FBQyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2hILENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUFDLE1BQVc7UUFDeEIsSUFBSSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztZQUM5QixNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QixDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksZUFBZSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDaEgsQ0FBQztRQUNELG9DQUFvQztRQUNwQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNwQixNQUFNLElBQUksR0FBUTtnQkFDZCxhQUFhLEVBQUUsSUFBSTtnQkFDbkIsT0FBTyxFQUFFLENBQUMscUJBQXFCLENBQUM7YUFDbkMsQ0FBQztZQUVGLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUMzRCxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUMvRixDQUFDLEtBQXVCLEVBQUUsRUFBRTtnQkFDeEIsSUFBSSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUM7b0JBQ2YsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQVMsQ0FBQyxDQUFDO2dCQUMzRCxDQUFDO3FCQUFNLENBQUM7b0JBQ0osSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsMkNBQTJDLEVBQVMsQ0FBQyxDQUFDO2dCQUNuRixDQUFDO1lBQ0wsQ0FBQyxDQUNKLENBQUM7UUFDTixDQUFDO0lBQ0wsQ0FBQztJQUVELGlCQUFpQixDQUFDLElBQVUsRUFBRSxVQUE0QztRQUN0RSxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsc0JBQXNCLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7K0dBekdRLHFCQUFxQjttR0FBckIscUJBQXFCLG9UQ3pDbEMscXNHQXNFQSxrdUJEbkNjLFlBQVksa0lBQUUsZUFBZSw4QkFBRSxlQUFlLDJGQUFFLGFBQWEseUtBR3hELENBQUMsRUFBRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLENBQUM7OzRGQUcvRixxQkFBcUI7a0JBVGpDLFNBQVM7K0JBQ0ksbUJBQW1CLGNBQ2pCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLGFBQWEsQ0FBQyxpQkFHekQsQ0FBQyxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsaUJBQ3pGLGlCQUFpQixDQUFDLElBQUk7OEJBUXJDLGFBQWE7c0JBRFosS0FBSztnQkFLTixhQUFhO3NCQURaLEtBQUs7Z0JBS04sV0FBVztzQkFEVixLQUFLO2dCQUtOLE9BQU87c0JBRE4sS0FBSztnQkFLTixJQUFJO3NCQURILEtBQUs7Z0JBS04sZUFBZTtzQkFEZCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBFWFRFTkRJQkxFX0NPTVBPTkVOVCwgRmlsZVV0aWxzIH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcywgVmlld0VuY2Fwc3VsYXRpb24sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTm9kZXNBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29tbW9uL3NlcnZpY2VzL25vZGVzLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IENvbnRlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29tbW9uL3NlcnZpY2VzL2NvbnRlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBBbGxvd2FibGVPcGVyYXRpb25zRW51bSB9IGZyb20gJy4uLy4uL2NvbW1vbi9tb2RlbHMvYWxsb3dhYmxlLW9wZXJhdGlvbnMuZW51bSc7XG5pbXBvcnQgeyBOb2RlIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uTW9kZWwgfSBmcm9tICcuLi8uLi9kb2N1bWVudC1saXN0L21vZGVscy9wZXJtaXNzaW9ucy5tb2RlbCc7XG5pbXBvcnQgeyBVcGxvYWRCYXNlIH0gZnJvbSAnLi9iYXNlLXVwbG9hZC91cGxvYWQtYmFzZSc7XG5pbXBvcnQgeyBOb2RlQWxsb3dhYmxlT3BlcmF0aW9uU3ViamVjdCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvbm9kZS1hbGxvd2FibGUtb3BlcmF0aW9uLXN1YmplY3QuaW50ZXJmYWNlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYWRmLXVwbG9hZC1idXR0b24nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGUsIE1hdEljb25Nb2R1bGVdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi91cGxvYWQtYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi91cGxvYWQtYnV0dG9uLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgdmlld1Byb3ZpZGVyczogW3sgcHJvdmlkZTogRVhURU5ESUJMRV9DT01QT05FTlQsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFVwbG9hZEJ1dHRvbkNvbXBvbmVudCkgfV0sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBVcGxvYWRCdXR0b25Db21wb25lbnQgZXh0ZW5kcyBVcGxvYWRCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE5vZGVBbGxvd2FibGVPcGVyYXRpb25TdWJqZWN0IHtcbiAgICBwcml2YXRlIGNvbnRlbnRTZXJ2aWNlID0gaW5qZWN0KENvbnRlbnRTZXJ2aWNlKTtcbiAgICBwcml2YXRlIG5vZGVzQXBpU2VydmljZSA9IGluamVjdChOb2Rlc0FwaVNlcnZpY2UpO1xuXG4gICAgLyoqIEFsbG93cy9kaXNhbGxvd3MgdXBsb2FkIGZvbGRlcnMgKG9ubHkgZm9yIENocm9tZSkuICovXG4gICAgQElucHV0KClcbiAgICB1cGxvYWRGb2xkZXJzOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKiogQWxsb3dzL2Rpc2FsbG93cyBtdWx0aXBsZSBmaWxlcyAqL1xuICAgIEBJbnB1dCgpXG4gICAgbXVsdGlwbGVGaWxlczogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqIERlZmluZXMgdGhlIHRleHQgb2YgdGhlIHVwbG9hZCBidXR0b24uICovXG4gICAgQElucHV0KClcbiAgICBzdGF0aWNUaXRsZTogc3RyaW5nO1xuXG4gICAgLyoqIEN1c3RvbSB0b29sdGlwIHRleHQuICovXG4gICAgQElucHV0KClcbiAgICB0b29sdGlwOiBzdHJpbmcgPSBudWxsO1xuXG4gICAgLyoqIEN1c3RvbSBhZGRlZCBmaWxlLiBUaGUgdXBsb2FkIGJ1dHRvbiB0eXBlIHdpbGwgYmUgJ2J1dHRvbicgaW5zdGVhZCBvZiAnZmlsZScgKi9cbiAgICBASW5wdXQoKVxuICAgIGZpbGU6IEZpbGU7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIGNyZWF0ZSBwZXJtaXNzaW9uIGlzIG1pc3NpbmcuICovXG4gICAgQE91dHB1dCgpXG4gICAgcGVybWlzc2lvbkV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxQZXJtaXNzaW9uTW9kZWw+KCk7XG5cbiAgICBwcml2YXRlIGhhc0FsbG93YWJsZU9wZXJhdGlvbnM6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBwcm90ZWN0ZWQgcGVybWlzc2lvblZhbHVlID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLnBlcm1pc3Npb25WYWx1ZS5zdWJzY3JpYmUoKHBlcm1pc3Npb246IGJvb2xlYW4pID0+IHtcbiAgICAgICAgICAgIHRoaXMuaGFzQWxsb3dhYmxlT3BlcmF0aW9ucyA9IHBlcm1pc3Npb247XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAgICAgY29uc3Qgcm9vdEZvbGRlcklkID0gY2hhbmdlc1sncm9vdEZvbGRlcklkJ107XG4gICAgICAgIGlmIChyb290Rm9sZGVySWQ/LmN1cnJlbnRWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5jaGVja1Blcm1pc3Npb24oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlzQnV0dG9uRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmRpc2FibGVkID8gdHJ1ZSA6IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBvbkZpbGVzQWRkZWQoJGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmlsZXMgPSBGaWxlVXRpbHMudG9GaWxlQXJyYXkoJGV2ZW50LmN1cnJlbnRUYXJnZXQuZmlsZXMpO1xuXG4gICAgICAgIGlmICh0aGlzLmhhc0FsbG93YWJsZU9wZXJhdGlvbnMpIHtcbiAgICAgICAgICAgIHRoaXMudXBsb2FkRmlsZXMoZmlsZXMpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5wZXJtaXNzaW9uRXZlbnQuZW1pdChuZXcgUGVybWlzc2lvbk1vZGVsKHsgdHlwZTogJ2NvbnRlbnQnLCBhY3Rpb246ICd1cGxvYWQnLCBwZXJtaXNzaW9uOiAnY3JlYXRlJyB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gcmVzZXQgdGhlIHZhbHVlIG9mIHRoZSBpbnB1dCBmaWxlXG4gICAgICAgICRldmVudC50YXJnZXQudmFsdWUgPSAnJztcbiAgICB9XG5cbiAgICBvbkNsaWNrVXBsb2FkQnV0dG9uKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5maWxlKSB7XG4gICAgICAgICAgICBjb25zdCBmaWxlcyA9IFt0aGlzLmZpbGVdO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5oYXNBbGxvd2FibGVPcGVyYXRpb25zKSB7XG4gICAgICAgICAgICAgICAgdGhpcy51cGxvYWRGaWxlcyhmaWxlcyk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMucGVybWlzc2lvbkV2ZW50LmVtaXQobmV3IFBlcm1pc3Npb25Nb2RlbCh7IHR5cGU6ICdjb250ZW50JywgYWN0aW9uOiAndXBsb2FkJywgcGVybWlzc2lvbjogJ2NyZWF0ZScgfSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25EaXJlY3RvcnlBZGRlZCgkZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5oYXNBbGxvd2FibGVPcGVyYXRpb25zKSB7XG4gICAgICAgICAgICBjb25zdCBmaWxlcyA9IEZpbGVVdGlscy50b0ZpbGVBcnJheSgkZXZlbnQuY3VycmVudFRhcmdldC5maWxlcyk7XG4gICAgICAgICAgICB0aGlzLnVwbG9hZEZpbGVzKGZpbGVzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucGVybWlzc2lvbkV2ZW50LmVtaXQobmV3IFBlcm1pc3Npb25Nb2RlbCh7IHR5cGU6ICdjb250ZW50JywgYWN0aW9uOiAndXBsb2FkJywgcGVybWlzc2lvbjogJ2NyZWF0ZScgfSkpO1xuICAgICAgICB9XG4gICAgICAgIC8vIHJlc2V0IHRoZSB2YWx1ZSBvZiB0aGUgaW5wdXQgZmlsZVxuICAgICAgICAkZXZlbnQudGFyZ2V0LnZhbHVlID0gJyc7XG4gICAgfVxuXG4gICAgY2hlY2tQZXJtaXNzaW9uKCkge1xuICAgICAgICBpZiAodGhpcy5yb290Rm9sZGVySWQpIHtcbiAgICAgICAgICAgIGNvbnN0IG9wdHM6IGFueSA9IHtcbiAgICAgICAgICAgICAgICBpbmNsdWRlU291cmNlOiB0cnVlLFxuICAgICAgICAgICAgICAgIGluY2x1ZGU6IFsnYWxsb3dhYmxlT3BlcmF0aW9ucyddXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICB0aGlzLm5vZGVzQXBpU2VydmljZS5nZXROb2RlKHRoaXMucm9vdEZvbGRlcklkLCBvcHRzKS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgKHJlcykgPT4gdGhpcy5wZXJtaXNzaW9uVmFsdWUubmV4dCh0aGlzLm5vZGVIYXNQZXJtaXNzaW9uKHJlcywgQWxsb3dhYmxlT3BlcmF0aW9uc0VudW0uQ1JFQVRFKSksXG4gICAgICAgICAgICAgICAgKGVycm9yOiB7IGVycm9yOiBFcnJvciB9KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChlcnJvcj8uZXJyb3IpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3IuZW1pdCh7IGVycm9yOiBlcnJvci5lcnJvci5tZXNzYWdlIH0gYXMgYW55KTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3IuZW1pdCh7IGVycm9yOiAnRklMRV9VUExPQUQuQlVUVE9OLlBFUk1JU1NJT05fQ0hFQ0tfRVJST1InIH0gYXMgYW55KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBub2RlSGFzUGVybWlzc2lvbihub2RlOiBOb2RlLCBwZXJtaXNzaW9uOiBBbGxvd2FibGVPcGVyYXRpb25zRW51bSB8IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZW50U2VydmljZS5oYXNBbGxvd2FibGVPcGVyYXRpb25zKG5vZGUsIHBlcm1pc3Npb24pO1xuICAgIH1cbn1cbiIsIjxmb3JtIGNsYXNzPVwiYWRmLXVwbG9hZC1idXR0b24tZmlsZS1jb250YWluZXJcIj5cbiAgICA8IS0tRmlsZXMgVXBsb2FkLS0+XG4gICAgPGRpdiAqbmdJZj1cIiF1cGxvYWRGb2xkZXJzXCI+XG5cbiAgICAgICAgPCEtLVNpbmdsZSBGaWxlcyBVcGxvYWQtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFtdWx0aXBsZUZpbGVzXCI+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICBjbGFzcz1cImFkZi11cGxvYWQtYnV0dG9uLWZpbGUtY29udGFpbmVyLXVwbG9hZC1zaW5nbGUtZmlsZVwiXG4gICAgICAgICAgICAgICAgaWQ9XCJ1cGxvYWQtc2luZ2xlLWZpbGVcIlxuICAgICAgICAgICAgICAgIGRhdGEtYXV0b21hdGlvbi1pZD1cInVwbG9hZC1zaW5nbGUtZmlsZVwiXG4gICAgICAgICAgICAgICAgW3R5cGVdPVwiZmlsZSA/ICdidXR0b24nIDogJ2ZpbGUnXCJcbiAgICAgICAgICAgICAgICBuYW1lPVwidXBsb2FkRmlsZXNcIlxuICAgICAgICAgICAgICAgIGFjY2VwdD1cInt7YWNjZXB0ZWRGaWxlc1R5cGV9fVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiaXNCdXR0b25EaXNhYmxlZCgpXCJcbiAgICAgICAgICAgICAgICBbdGl0bGVdPVwidG9vbHRpcFwiXG4gICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJvbkZpbGVzQWRkZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xpY2tVcGxvYWRCdXR0b24oKVwiLz5cbiAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJ1cGxvYWQtc2luZ2xlLWZpbGVcIiBjbGFzcz1cImFkZi11cGxvYWQtYnV0dG9uLWxhYmVsXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiYWRmLXVwbG9hZC1idXR0b24taWNvblwiPmZpbGVfdXBsb2FkPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInVwbG9hZC1zaW5nbGUtZmlsZS1sYWJlbFwiICpuZ0lmPVwiIXN0YXRpY1RpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7ICdGSUxFX1VQTE9BRC5CVVRUT04uVVBMT0FEX0ZJTEUnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwidXBsb2FkLXNpbmdsZS1maWxlLWxhYmVsLXN0YXRpY1wiICpuZ0lmPVwic3RhdGljVGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgc3RhdGljVGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8IS0tTXVsdGlwbGUgRmlsZXMgVXBsb2FkLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtdWx0aXBsZUZpbGVzXCI+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICBpZD1cInVwbG9hZC1tdWx0aXBsZS1maWxlc1wiXG4gICAgICAgICAgICAgICAgZGF0YS1hdXRvbWF0aW9uLWlkPVwidXBsb2FkLW11bHRpcGxlLWZpbGVzXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgICAgICAgICAgbmFtZT1cInVwbG9hZEZpbGVzXCJcbiAgICAgICAgICAgICAgICBtdWx0aXBsZT1cIm11bHRpcGxlXCJcbiAgICAgICAgICAgICAgICBhY2NlcHQ9XCJ7e2FjY2VwdGVkRmlsZXNUeXBlfX1cIlxuICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImlzQnV0dG9uRGlzYWJsZWQoKVwiXG4gICAgICAgICAgICAgICAgW3RpdGxlXT1cInRvb2x0aXBcIlxuICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25GaWxlc0FkZGVkKCRldmVudClcIi8+XG4gICAgICAgICAgICA8bGFiZWwgZm9yPVwidXBsb2FkLW11bHRpcGxlLWZpbGVzXCIgY2xhc3M9XCJhZGYtdXBsb2FkLWJ1dHRvbi1sYWJlbFwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImFkZi11cGxvYWQtYnV0dG9uLWljb25cIj5maWxlX3VwbG9hZDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJ1cGxvYWQtbXVsdGlwbGUtZmlsZS1sYWJlbFwiICpuZ0lmPVwiIXN0YXRpY1RpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7ICdGSUxFX1VQTE9BRC5CVVRUT04uVVBMT0FEX0ZJTEUnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwidXBsb2FkLW11bHRpcGxlLWZpbGUtbGFiZWwtc3RhdGljXCIgKm5nSWY9XCJzdGF0aWNUaXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBzdGF0aWNUaXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLUZvbGRlcnMgVXBsb2FkLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInVwbG9hZEZvbGRlcnNcIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBpZD1cInVwbG9hZEZvbGRlclwiXG4gICAgICAgICAgICBkYXRhLWF1dG9tYXRpb24taWQ9XCJ1cGxvYWRGb2xkZXJcIlxuICAgICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgICAgbmFtZT1cInVwbG9hZEZpbGVzXCJcbiAgICAgICAgICAgIG11bHRpcGxlPVwibXVsdGlwbGVcIlxuICAgICAgICAgICAgYWNjZXB0PVwie3thY2NlcHRlZEZpbGVzVHlwZX19XCJcbiAgICAgICAgICAgIHdlYmtpdGRpcmVjdG9yeSBkaXJlY3RvcnlcbiAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImlzQnV0dG9uRGlzYWJsZWQoKVwiXG4gICAgICAgICAgICBbdGl0bGVdPVwidG9vbHRpcFwiXG4gICAgICAgICAgICAoY2hhbmdlKT1cIm9uRGlyZWN0b3J5QWRkZWQoJGV2ZW50KVwiLz5cbiAgICAgICAgPGxhYmVsIGZvcj1cInVwbG9hZEZvbGRlclwiIGRhdGEtYXV0b21hdGlvbi1pZD1cInVwbG9hZEZvbGRlclwiIGNsYXNzPVwiYWRmLXVwbG9hZC1idXR0b24tbGFiZWxcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImFkZi11cGxvYWQtYnV0dG9uLWljb25cIj5maWxlX3VwbG9hZDwvbWF0LWljb24+XG4gICAgICAgICAgICA8c3BhbiBpZD1cInVwbG9hZEZvbGRlci1sYWJlbFwiICpuZ0lmPVwiIXN0YXRpY1RpdGxlXCI+XG4gICAgICAgICAgICAgICAge3sgJ0ZJTEVfVVBMT0FELkJVVFRPTi5VUExPQURfRk9MREVSJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuIGlkPVwidXBsb2FkRm9sZGVyLWxhYmVsLXN0YXRpY1wiICpuZ0lmPVwic3RhdGljVGl0bGVcIj5cbiAgICAgICAgICAgICAgICB7eyBzdGF0aWNUaXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9sYWJlbD5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvZm9ybT5cbiJdfQ==
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29udGVudC1zZXJ2aWNlcy9zcmMvbGliL3VwbG9hZC9jb21wb25lbnRzL3VwbG9hZC1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvbnRlbnQtc2VydmljZXMvc3JjL2xpYi91cGxvYWQvY29tcG9uZW50cy91cGxvYWQtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoSixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBRXhGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7QUFXdkQsTUFBTSxPQUFPLHFCQUFzQixTQUFRLFVBQVU7SUFUckQ7O1FBVVksbUJBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDeEMsb0JBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFFbEQseURBQXlEO1FBRXpELGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBRS9CLHNDQUFzQztRQUV0QyxrQkFBYSxHQUFZLEtBQUssQ0FBQztRQU0vQiwyQkFBMkI7UUFFM0IsWUFBTyxHQUFXLElBQUksQ0FBQztRQU12QixpREFBaUQ7UUFFakQsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQUU5QywyQkFBc0IsR0FBWSxLQUFLLENBQUM7UUFDdEMsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO0tBNkV0RDtJQTNFRyxRQUFRO1FBQ0osSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxVQUFtQixFQUFFLEVBQUU7WUFDbkQsSUFBSSxDQUFDLHNCQUFzQixHQUFHLFVBQVUsQ0FBQztRQUM3QyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDOUIsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzdDLElBQUksWUFBWSxFQUFFLFlBQVksRUFBRSxDQUFDO1lBQzdCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMzQixDQUFDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQjtRQUNaLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDNUMsQ0FBQztJQUVELFlBQVksQ0FBQyxNQUFXO1FBQ3BCLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVoRSxJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUIsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLGVBQWUsQ0FBQyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2hILENBQUM7UUFDRCxvQ0FBb0M7UUFDcEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxtQkFBbUI7UUFDZixJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNaLE1BQU0sS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRTFCLElBQUksSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7Z0JBQzlCLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDNUIsQ0FBQztpQkFBTSxDQUFDO2dCQUNKLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksZUFBZSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDaEgsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsTUFBVztRQUN4QixJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBQzlCLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNoRSxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVCLENBQUM7YUFBTSxDQUFDO1lBQ0osSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxlQUFlLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNoSCxDQUFDO1FBQ0Qsb0NBQW9DO1FBQ3BDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3BCLE1BQU0sSUFBSSxHQUFRO2dCQUNkLGFBQWEsRUFBRSxJQUFJO2dCQUNuQixPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQzthQUNuQyxDQUFDO1lBRUYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQzNELENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQy9GLENBQUMsS0FBdUIsRUFBRSxFQUFFO2dCQUN4QixJQUFJLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQztvQkFDZixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBUyxDQUFDLENBQUM7Z0JBQzNELENBQUM7cUJBQU0sQ0FBQztvQkFDSixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSwyQ0FBMkMsRUFBUyxDQUFDLENBQUM7Z0JBQ25GLENBQUM7WUFDTCxDQUFDLENBQ0osQ0FBQztRQUNOLENBQUM7SUFDTCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsSUFBVSxFQUFFLFVBQTRDO1FBQ3RFLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDeEUsQ0FBQzsrR0F6R1EscUJBQXFCO21HQUFyQixxQkFBcUIsb1RDekNsQyxxc0dBc0VBLGt1QkRuQ2MsWUFBWSxrSUFBRSxlQUFlLDBCQUFFLGFBQWEsaURBQUUsYUFBYSx5S0FHdEQsQ0FBQyxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsQ0FBQzs7NEZBRy9GLHFCQUFxQjtrQkFUakMsU0FBUzsrQkFDSSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsYUFBYSxDQUFDLGlCQUd2RCxDQUFDLEVBQUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHNCQUFzQixDQUFDLEVBQUUsQ0FBQyxpQkFDekYsaUJBQWlCLENBQUMsSUFBSTs4QkFRckMsYUFBYTtzQkFEWixLQUFLO2dCQUtOLGFBQWE7c0JBRFosS0FBSztnQkFLTixXQUFXO3NCQURWLEtBQUs7Z0JBS04sT0FBTztzQkFETixLQUFLO2dCQUtOLElBQUk7c0JBREgsS0FBSztnQkFLTixlQUFlO3NCQURkLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IEVYVEVORElCTEVfQ09NUE9ORU5ULCBGaWxlVXRpbHMgfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3RW5jYXBzdWxhdGlvbiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb2Rlc0FwaVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb21tb24vc2VydmljZXMvbm9kZXMtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29udGVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb21tb24vc2VydmljZXMvY29udGVudC5zZXJ2aWNlJztcbmltcG9ydCB7IEFsbG93YWJsZU9wZXJhdGlvbnNFbnVtIH0gZnJvbSAnLi4vLi4vY29tbW9uL21vZGVscy9hbGxvd2FibGUtb3BlcmF0aW9ucy5lbnVtJztcbmltcG9ydCB7IE5vZGUgfSBmcm9tICdAYWxmcmVzY28vanMtYXBpJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFBlcm1pc3Npb25Nb2RlbCB9IGZyb20gJy4uLy4uL2RvY3VtZW50LWxpc3QvbW9kZWxzL3Blcm1pc3Npb25zLm1vZGVsJztcbmltcG9ydCB7IFVwbG9hZEJhc2UgfSBmcm9tICcuL2Jhc2UtdXBsb2FkL3VwbG9hZC1iYXNlJztcbmltcG9ydCB7IE5vZGVBbGxvd2FibGVPcGVyYXRpb25TdWJqZWN0IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9ub2RlLWFsbG93YWJsZS1vcGVyYXRpb24tc3ViamVjdC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYWRmLXVwbG9hZC1idXR0b24nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBUcmFuc2xhdGVQaXBlLCBNYXRJY29uTW9kdWxlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdXBsb2FkLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdXBsb2FkLWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxuICAgIHZpZXdQcm92aWRlcnM6IFt7IHByb3ZpZGU6IEVYVEVORElCTEVfQ09NUE9ORU5ULCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBVcGxvYWRCdXR0b25Db21wb25lbnQpIH1dLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgVXBsb2FkQnV0dG9uQ29tcG9uZW50IGV4dGVuZHMgVXBsb2FkQmFzZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBOb2RlQWxsb3dhYmxlT3BlcmF0aW9uU3ViamVjdCB7XG4gICAgcHJpdmF0ZSBjb250ZW50U2VydmljZSA9IGluamVjdChDb250ZW50U2VydmljZSk7XG4gICAgcHJpdmF0ZSBub2Rlc0FwaVNlcnZpY2UgPSBpbmplY3QoTm9kZXNBcGlTZXJ2aWNlKTtcblxuICAgIC8qKiBBbGxvd3MvZGlzYWxsb3dzIHVwbG9hZCBmb2xkZXJzIChvbmx5IGZvciBDaHJvbWUpLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgdXBsb2FkRm9sZGVyczogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqIEFsbG93cy9kaXNhbGxvd3MgbXVsdGlwbGUgZmlsZXMgKi9cbiAgICBASW5wdXQoKVxuICAgIG11bHRpcGxlRmlsZXM6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8qKiBEZWZpbmVzIHRoZSB0ZXh0IG9mIHRoZSB1cGxvYWQgYnV0dG9uLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc3RhdGljVGl0bGU6IHN0cmluZztcblxuICAgIC8qKiBDdXN0b20gdG9vbHRpcCB0ZXh0LiAqL1xuICAgIEBJbnB1dCgpXG4gICAgdG9vbHRpcDogc3RyaW5nID0gbnVsbDtcblxuICAgIC8qKiBDdXN0b20gYWRkZWQgZmlsZS4gVGhlIHVwbG9hZCBidXR0b24gdHlwZSB3aWxsIGJlICdidXR0b24nIGluc3RlYWQgb2YgJ2ZpbGUnICovXG4gICAgQElucHV0KClcbiAgICBmaWxlOiBGaWxlO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiBjcmVhdGUgcGVybWlzc2lvbiBpcyBtaXNzaW5nLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHBlcm1pc3Npb25FdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8UGVybWlzc2lvbk1vZGVsPigpO1xuXG4gICAgcHJpdmF0ZSBoYXNBbGxvd2FibGVPcGVyYXRpb25zOiBib29sZWFuID0gZmFsc2U7XG4gICAgcHJvdGVjdGVkIHBlcm1pc3Npb25WYWx1ZSA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5wZXJtaXNzaW9uVmFsdWUuc3Vic2NyaWJlKChwZXJtaXNzaW9uOiBib29sZWFuKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmhhc0FsbG93YWJsZU9wZXJhdGlvbnMgPSBwZXJtaXNzaW9uO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIGNvbnN0IHJvb3RGb2xkZXJJZCA9IGNoYW5nZXNbJ3Jvb3RGb2xkZXJJZCddO1xuICAgICAgICBpZiAocm9vdEZvbGRlcklkPy5jdXJyZW50VmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuY2hlY2tQZXJtaXNzaW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpc0J1dHRvbkRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZCA/IHRydWUgOiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgb25GaWxlc0FkZGVkKCRldmVudDogYW55KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGZpbGVzID0gRmlsZVV0aWxzLnRvRmlsZUFycmF5KCRldmVudC5jdXJyZW50VGFyZ2V0LmZpbGVzKTtcblxuICAgICAgICBpZiAodGhpcy5oYXNBbGxvd2FibGVPcGVyYXRpb25zKSB7XG4gICAgICAgICAgICB0aGlzLnVwbG9hZEZpbGVzKGZpbGVzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucGVybWlzc2lvbkV2ZW50LmVtaXQobmV3IFBlcm1pc3Npb25Nb2RlbCh7IHR5cGU6ICdjb250ZW50JywgYWN0aW9uOiAndXBsb2FkJywgcGVybWlzc2lvbjogJ2NyZWF0ZScgfSkpO1xuICAgICAgICB9XG4gICAgICAgIC8vIHJlc2V0IHRoZSB2YWx1ZSBvZiB0aGUgaW5wdXQgZmlsZVxuICAgICAgICAkZXZlbnQudGFyZ2V0LnZhbHVlID0gJyc7XG4gICAgfVxuXG4gICAgb25DbGlja1VwbG9hZEJ1dHRvbigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZmlsZSkge1xuICAgICAgICAgICAgY29uc3QgZmlsZXMgPSBbdGhpcy5maWxlXTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuaGFzQWxsb3dhYmxlT3BlcmF0aW9ucykge1xuICAgICAgICAgICAgICAgIHRoaXMudXBsb2FkRmlsZXMoZmlsZXMpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnBlcm1pc3Npb25FdmVudC5lbWl0KG5ldyBQZXJtaXNzaW9uTW9kZWwoeyB0eXBlOiAnY29udGVudCcsIGFjdGlvbjogJ3VwbG9hZCcsIHBlcm1pc3Npb246ICdjcmVhdGUnIH0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uRGlyZWN0b3J5QWRkZWQoJGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaGFzQWxsb3dhYmxlT3BlcmF0aW9ucykge1xuICAgICAgICAgICAgY29uc3QgZmlsZXMgPSBGaWxlVXRpbHMudG9GaWxlQXJyYXkoJGV2ZW50LmN1cnJlbnRUYXJnZXQuZmlsZXMpO1xuICAgICAgICAgICAgdGhpcy51cGxvYWRGaWxlcyhmaWxlcyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnBlcm1pc3Npb25FdmVudC5lbWl0KG5ldyBQZXJtaXNzaW9uTW9kZWwoeyB0eXBlOiAnY29udGVudCcsIGFjdGlvbjogJ3VwbG9hZCcsIHBlcm1pc3Npb246ICdjcmVhdGUnIH0pKTtcbiAgICAgICAgfVxuICAgICAgICAvLyByZXNldCB0aGUgdmFsdWUgb2YgdGhlIGlucHV0IGZpbGVcbiAgICAgICAgJGV2ZW50LnRhcmdldC52YWx1ZSA9ICcnO1xuICAgIH1cblxuICAgIGNoZWNrUGVybWlzc2lvbigpIHtcbiAgICAgICAgaWYgKHRoaXMucm9vdEZvbGRlcklkKSB7XG4gICAgICAgICAgICBjb25zdCBvcHRzOiBhbnkgPSB7XG4gICAgICAgICAgICAgICAgaW5jbHVkZVNvdXJjZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpbmNsdWRlOiBbJ2FsbG93YWJsZU9wZXJhdGlvbnMnXVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgdGhpcy5ub2Rlc0FwaVNlcnZpY2UuZ2V0Tm9kZSh0aGlzLnJvb3RGb2xkZXJJZCwgb3B0cykuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgIChyZXMpID0+IHRoaXMucGVybWlzc2lvblZhbHVlLm5leHQodGhpcy5ub2RlSGFzUGVybWlzc2lvbihyZXMsIEFsbG93YWJsZU9wZXJhdGlvbnNFbnVtLkNSRUFURSkpLFxuICAgICAgICAgICAgICAgIChlcnJvcjogeyBlcnJvcjogRXJyb3IgfSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3I/LmVycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmVycm9yLmVtaXQoeyBlcnJvcjogZXJyb3IuZXJyb3IubWVzc2FnZSB9IGFzIGFueSk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmVycm9yLmVtaXQoeyBlcnJvcjogJ0ZJTEVfVVBMT0FELkJVVFRPTi5QRVJNSVNTSU9OX0NIRUNLX0VSUk9SJyB9IGFzIGFueSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbm9kZUhhc1Blcm1pc3Npb24obm9kZTogTm9kZSwgcGVybWlzc2lvbjogQWxsb3dhYmxlT3BlcmF0aW9uc0VudW0gfCBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGVudFNlcnZpY2UuaGFzQWxsb3dhYmxlT3BlcmF0aW9ucyhub2RlLCBwZXJtaXNzaW9uKTtcbiAgICB9XG59XG4iLCI8Zm9ybSBjbGFzcz1cImFkZi11cGxvYWQtYnV0dG9uLWZpbGUtY29udGFpbmVyXCI+XG4gICAgPCEtLUZpbGVzIFVwbG9hZC0tPlxuICAgIDxkaXYgKm5nSWY9XCIhdXBsb2FkRm9sZGVyc1wiPlxuXG4gICAgICAgIDwhLS1TaW5nbGUgRmlsZXMgVXBsb2FkLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbXVsdGlwbGVGaWxlc1wiPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJhZGYtdXBsb2FkLWJ1dHRvbi1maWxlLWNvbnRhaW5lci11cGxvYWQtc2luZ2xlLWZpbGVcIlxuICAgICAgICAgICAgICAgIGlkPVwidXBsb2FkLXNpbmdsZS1maWxlXCJcbiAgICAgICAgICAgICAgICBkYXRhLWF1dG9tYXRpb24taWQ9XCJ1cGxvYWQtc2luZ2xlLWZpbGVcIlxuICAgICAgICAgICAgICAgIFt0eXBlXT1cImZpbGUgPyAnYnV0dG9uJyA6ICdmaWxlJ1wiXG4gICAgICAgICAgICAgICAgbmFtZT1cInVwbG9hZEZpbGVzXCJcbiAgICAgICAgICAgICAgICBhY2NlcHQ9XCJ7e2FjY2VwdGVkRmlsZXNUeXBlfX1cIlxuICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImlzQnV0dG9uRGlzYWJsZWQoKVwiXG4gICAgICAgICAgICAgICAgW3RpdGxlXT1cInRvb2x0aXBcIlxuICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25GaWxlc0FkZGVkKCRldmVudClcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNsaWNrVXBsb2FkQnV0dG9uKClcIi8+XG4gICAgICAgICAgICA8bGFiZWwgZm9yPVwidXBsb2FkLXNpbmdsZS1maWxlXCIgY2xhc3M9XCJhZGYtdXBsb2FkLWJ1dHRvbi1sYWJlbFwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImFkZi11cGxvYWQtYnV0dG9uLWljb25cIj5maWxlX3VwbG9hZDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJ1cGxvYWQtc2luZ2xlLWZpbGUtbGFiZWxcIiAqbmdJZj1cIiFzdGF0aWNUaXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICB7eyAnRklMRV9VUExPQUQuQlVUVE9OLlVQTE9BRF9GSUxFJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInVwbG9hZC1zaW5nbGUtZmlsZS1sYWJlbC1zdGF0aWNcIiAqbmdJZj1cInN0YXRpY1RpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IHN0YXRpY1RpdGxlIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPCEtLU11bHRpcGxlIEZpbGVzIFVwbG9hZC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibXVsdGlwbGVGaWxlc1wiPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgaWQ9XCJ1cGxvYWQtbXVsdGlwbGUtZmlsZXNcIlxuICAgICAgICAgICAgICAgIGRhdGEtYXV0b21hdGlvbi1pZD1cInVwbG9hZC1tdWx0aXBsZS1maWxlc1wiXG4gICAgICAgICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgICAgICAgIG5hbWU9XCJ1cGxvYWRGaWxlc1wiXG4gICAgICAgICAgICAgICAgbXVsdGlwbGU9XCJtdWx0aXBsZVwiXG4gICAgICAgICAgICAgICAgYWNjZXB0PVwie3thY2NlcHRlZEZpbGVzVHlwZX19XCJcbiAgICAgICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJpc0J1dHRvbkRpc2FibGVkKClcIlxuICAgICAgICAgICAgICAgIFt0aXRsZV09XCJ0b29sdGlwXCJcbiAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIm9uRmlsZXNBZGRlZCgkZXZlbnQpXCIvPlxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cInVwbG9hZC1tdWx0aXBsZS1maWxlc1wiIGNsYXNzPVwiYWRmLXVwbG9hZC1idXR0b24tbGFiZWxcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJhZGYtdXBsb2FkLWJ1dHRvbi1pY29uXCI+ZmlsZV91cGxvYWQ8L21hdC1pY29uPlxuICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwidXBsb2FkLW11bHRpcGxlLWZpbGUtbGFiZWxcIiAqbmdJZj1cIiFzdGF0aWNUaXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICB7eyAnRklMRV9VUExPQUQuQlVUVE9OLlVQTE9BRF9GSUxFJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInVwbG9hZC1tdWx0aXBsZS1maWxlLWxhYmVsLXN0YXRpY1wiICpuZ0lmPVwic3RhdGljVGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgc3RhdGljVGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cblxuICAgIDwhLS1Gb2xkZXJzIFVwbG9hZC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ1cGxvYWRGb2xkZXJzXCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgaWQ9XCJ1cGxvYWRGb2xkZXJcIlxuICAgICAgICAgICAgZGF0YS1hdXRvbWF0aW9uLWlkPVwidXBsb2FkRm9sZGVyXCJcbiAgICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICAgIG5hbWU9XCJ1cGxvYWRGaWxlc1wiXG4gICAgICAgICAgICBtdWx0aXBsZT1cIm11bHRpcGxlXCJcbiAgICAgICAgICAgIGFjY2VwdD1cInt7YWNjZXB0ZWRGaWxlc1R5cGV9fVwiXG4gICAgICAgICAgICB3ZWJraXRkaXJlY3RvcnkgZGlyZWN0b3J5XG4gICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJpc0J1dHRvbkRpc2FibGVkKClcIlxuICAgICAgICAgICAgW3RpdGxlXT1cInRvb2x0aXBcIlxuICAgICAgICAgICAgKGNoYW5nZSk9XCJvbkRpcmVjdG9yeUFkZGVkKCRldmVudClcIi8+XG4gICAgICAgIDxsYWJlbCBmb3I9XCJ1cGxvYWRGb2xkZXJcIiBkYXRhLWF1dG9tYXRpb24taWQ9XCJ1cGxvYWRGb2xkZXJcIiBjbGFzcz1cImFkZi11cGxvYWQtYnV0dG9uLWxhYmVsXCI+XG4gICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJhZGYtdXBsb2FkLWJ1dHRvbi1pY29uXCI+ZmlsZV91cGxvYWQ8L21hdC1pY29uPlxuICAgICAgICAgICAgPHNwYW4gaWQ9XCJ1cGxvYWRGb2xkZXItbGFiZWxcIiAqbmdJZj1cIiFzdGF0aWNUaXRsZVwiPlxuICAgICAgICAgICAgICAgIHt7ICdGSUxFX1VQTE9BRC5CVVRUT04uVVBMT0FEX0ZPTERFUicgfCB0cmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBpZD1cInVwbG9hZEZvbGRlci1sYWJlbC1zdGF0aWNcIiAqbmdJZj1cInN0YXRpY1RpdGxlXCI+XG4gICAgICAgICAgICAgICAge3sgc3RhdGljVGl0bGUgfX08L3NwYW4+XG4gICAgICAgIDwvbGFiZWw+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Zvcm0+XG4iXX0=
@@ -21,12 +21,11 @@ import { UploadButtonComponent } from './upload-button.component';
21
21
  import { AllowableOperationsEnum } from '../../common/models/allowable-operations.enum';
22
22
  import { CommonModule } from '@angular/common';
23
23
  import { MatButtonModule } from '@angular/material/button';
24
- import { TranslateModule } from '@ngx-translate/core';
24
+ import { TranslatePipe } from '@ngx-translate/core';
25
25
  import { MatIconModule } from '@angular/material/icon';
26
26
  import * as i0 from "@angular/core";
27
27
  import * as i1 from "@angular/common";
28
- import * as i2 from "@ngx-translate/core";
29
- import * as i3 from "@angular/material/icon";
28
+ import * as i2 from "@angular/material/icon";
30
29
  export class UploadVersionButtonComponent extends UploadButtonComponent {
31
30
  createFileModel(file) {
32
31
  const fileModel = super.createFileModel(file, this.rootFolderId, (file.webkitRelativePath || '').replace(/\/[^/]*$/, ''), this.node.id);
@@ -44,12 +43,12 @@ export class UploadVersionButtonComponent extends UploadButtonComponent {
44
43
  this.permissionValue.next(this.nodeHasPermission(this.node, AllowableOperationsEnum.UPDATE));
45
44
  }
46
45
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UploadVersionButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
47
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UploadVersionButtonComponent, isStandalone: true, selector: "adf-upload-version-button", inputs: { node: "node" }, host: { classAttribute: "adf-upload-version-button" }, usesInheritance: true, ngImport: i0, template: "<form class=\"adf-upload-button-file-container\">\n <!--Files Upload-->\n <div *ngIf=\"!uploadFolders\">\n\n <!--Single Files Upload-->\n <ng-container *ngIf=\"!multipleFiles\">\n <input\n class=\"adf-upload-button-file-container-upload-single-file\"\n id=\"upload-single-file\"\n data-automation-id=\"upload-single-file\"\n [type]=\"file ? 'button' : 'file'\"\n name=\"uploadFiles\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"\n (click)=\"onClickUploadButton()\"/>\n <label for=\"upload-single-file\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-single-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-single-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n\n <!--Multiple Files Upload-->\n <ng-container *ngIf=\"multipleFiles\">\n <input\n id=\"upload-multiple-files\"\n data-automation-id=\"upload-multiple-files\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"/>\n <label for=\"upload-multiple-files\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-multiple-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-multiple-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n </div>\n\n <!--Folders Upload-->\n <ng-container *ngIf=\"uploadFolders\">\n <input\n id=\"uploadFolder\"\n data-automation-id=\"uploadFolder\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n webkitdirectory directory\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onDirectoryAdded($event)\"/>\n <label for=\"uploadFolder\" data-automation-id=\"uploadFolder\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"uploadFolder-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FOLDER' | translate }}</span>\n <span id=\"uploadFolder-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n</form>\n", styles: [".adf-upload-button-file-container .adf-upload-button-icon{margin:0;font-size:24px;width:24px;height:24px}.adf-upload-button-file-container input{display:none}.adf-upload-button-label{display:flex;align-items:center;cursor:pointer;padding:8px 16px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border-radius:4px}.adf-upload-button-label:active{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.adf-upload-button-file-container-upload-single-file[disabled]+.adf-upload-button-label{background-color:var(--adf-disabled-button-background);color:var(--adf-theme-foreground-disabled-text-color);box-shadow:none;cursor:default}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], viewProviders: [{ provide: EXTENDIBLE_COMPONENT, useExisting: forwardRef(() => UploadVersionButtonComponent) }], encapsulation: i0.ViewEncapsulation.None }); }
46
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UploadVersionButtonComponent, isStandalone: true, selector: "adf-upload-version-button", inputs: { node: "node" }, host: { classAttribute: "adf-upload-version-button" }, usesInheritance: true, ngImport: i0, template: "<form class=\"adf-upload-button-file-container\">\n <!--Files Upload-->\n <div *ngIf=\"!uploadFolders\">\n\n <!--Single Files Upload-->\n <ng-container *ngIf=\"!multipleFiles\">\n <input\n class=\"adf-upload-button-file-container-upload-single-file\"\n id=\"upload-single-file\"\n data-automation-id=\"upload-single-file\"\n [type]=\"file ? 'button' : 'file'\"\n name=\"uploadFiles\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"\n (click)=\"onClickUploadButton()\"/>\n <label for=\"upload-single-file\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-single-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-single-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n\n <!--Multiple Files Upload-->\n <ng-container *ngIf=\"multipleFiles\">\n <input\n id=\"upload-multiple-files\"\n data-automation-id=\"upload-multiple-files\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"/>\n <label for=\"upload-multiple-files\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-multiple-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-multiple-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n </div>\n\n <!--Folders Upload-->\n <ng-container *ngIf=\"uploadFolders\">\n <input\n id=\"uploadFolder\"\n data-automation-id=\"uploadFolder\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n webkitdirectory directory\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onDirectoryAdded($event)\"/>\n <label for=\"uploadFolder\" data-automation-id=\"uploadFolder\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"uploadFolder-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FOLDER' | translate }}</span>\n <span id=\"uploadFolder-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n</form>\n", styles: [".adf-upload-button-file-container .adf-upload-button-icon{margin:0;font-size:24px;width:24px;height:24px}.adf-upload-button-file-container input{display:none}.adf-upload-button-label{display:flex;align-items:center;cursor:pointer;padding:8px 16px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border-radius:4px}.adf-upload-button-label:active{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.adf-upload-button-file-container-upload-single-file[disabled]+.adf-upload-button-label{background-color:var(--adf-disabled-button-background);color:var(--adf-theme-foreground-disabled-text-color);box-shadow:none;cursor:default}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], viewProviders: [{ provide: EXTENDIBLE_COMPONENT, useExisting: forwardRef(() => UploadVersionButtonComponent) }], encapsulation: i0.ViewEncapsulation.None }); }
48
47
  }
49
48
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UploadVersionButtonComponent, decorators: [{
50
49
  type: Component,
51
- args: [{ selector: 'adf-upload-version-button', standalone: true, imports: [CommonModule, MatButtonModule, TranslateModule, MatIconModule], viewProviders: [{ provide: EXTENDIBLE_COMPONENT, useExisting: forwardRef(() => UploadVersionButtonComponent) }], encapsulation: ViewEncapsulation.None, host: { class: 'adf-upload-version-button' }, template: "<form class=\"adf-upload-button-file-container\">\n <!--Files Upload-->\n <div *ngIf=\"!uploadFolders\">\n\n <!--Single Files Upload-->\n <ng-container *ngIf=\"!multipleFiles\">\n <input\n class=\"adf-upload-button-file-container-upload-single-file\"\n id=\"upload-single-file\"\n data-automation-id=\"upload-single-file\"\n [type]=\"file ? 'button' : 'file'\"\n name=\"uploadFiles\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"\n (click)=\"onClickUploadButton()\"/>\n <label for=\"upload-single-file\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-single-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-single-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n\n <!--Multiple Files Upload-->\n <ng-container *ngIf=\"multipleFiles\">\n <input\n id=\"upload-multiple-files\"\n data-automation-id=\"upload-multiple-files\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"/>\n <label for=\"upload-multiple-files\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-multiple-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-multiple-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n </div>\n\n <!--Folders Upload-->\n <ng-container *ngIf=\"uploadFolders\">\n <input\n id=\"uploadFolder\"\n data-automation-id=\"uploadFolder\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n webkitdirectory directory\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onDirectoryAdded($event)\"/>\n <label for=\"uploadFolder\" data-automation-id=\"uploadFolder\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"uploadFolder-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FOLDER' | translate }}</span>\n <span id=\"uploadFolder-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n</form>\n", styles: [".adf-upload-button-file-container .adf-upload-button-icon{margin:0;font-size:24px;width:24px;height:24px}.adf-upload-button-file-container input{display:none}.adf-upload-button-label{display:flex;align-items:center;cursor:pointer;padding:8px 16px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border-radius:4px}.adf-upload-button-label:active{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.adf-upload-button-file-container-upload-single-file[disabled]+.adf-upload-button-label{background-color:var(--adf-disabled-button-background);color:var(--adf-theme-foreground-disabled-text-color);box-shadow:none;cursor:default}\n"] }]
50
+ args: [{ selector: 'adf-upload-version-button', standalone: true, imports: [CommonModule, MatButtonModule, TranslatePipe, MatIconModule], viewProviders: [{ provide: EXTENDIBLE_COMPONENT, useExisting: forwardRef(() => UploadVersionButtonComponent) }], encapsulation: ViewEncapsulation.None, host: { class: 'adf-upload-version-button' }, template: "<form class=\"adf-upload-button-file-container\">\n <!--Files Upload-->\n <div *ngIf=\"!uploadFolders\">\n\n <!--Single Files Upload-->\n <ng-container *ngIf=\"!multipleFiles\">\n <input\n class=\"adf-upload-button-file-container-upload-single-file\"\n id=\"upload-single-file\"\n data-automation-id=\"upload-single-file\"\n [type]=\"file ? 'button' : 'file'\"\n name=\"uploadFiles\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"\n (click)=\"onClickUploadButton()\"/>\n <label for=\"upload-single-file\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-single-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-single-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n\n <!--Multiple Files Upload-->\n <ng-container *ngIf=\"multipleFiles\">\n <input\n id=\"upload-multiple-files\"\n data-automation-id=\"upload-multiple-files\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onFilesAdded($event)\"/>\n <label for=\"upload-multiple-files\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"upload-multiple-file-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FILE' | translate }}</span>\n <span id=\"upload-multiple-file-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n </div>\n\n <!--Folders Upload-->\n <ng-container *ngIf=\"uploadFolders\">\n <input\n id=\"uploadFolder\"\n data-automation-id=\"uploadFolder\"\n type=\"file\"\n name=\"uploadFiles\"\n multiple=\"multiple\"\n accept=\"{{acceptedFilesType}}\"\n webkitdirectory directory\n [attr.disabled]=\"isButtonDisabled()\"\n [title]=\"tooltip\"\n (change)=\"onDirectoryAdded($event)\"/>\n <label for=\"uploadFolder\" data-automation-id=\"uploadFolder\" class=\"adf-upload-button-label\">\n <mat-icon class=\"adf-upload-button-icon\">file_upload</mat-icon>\n <span id=\"uploadFolder-label\" *ngIf=\"!staticTitle\">\n {{ 'FILE_UPLOAD.BUTTON.UPLOAD_FOLDER' | translate }}</span>\n <span id=\"uploadFolder-label-static\" *ngIf=\"staticTitle\">\n {{ staticTitle }}</span>\n </label>\n </ng-container>\n</form>\n", styles: [".adf-upload-button-file-container .adf-upload-button-icon{margin:0;font-size:24px;width:24px;height:24px}.adf-upload-button-file-container input{display:none}.adf-upload-button-label{display:flex;align-items:center;cursor:pointer;padding:8px 16px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border-radius:4px}.adf-upload-button-label:active{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.adf-upload-button-file-container-upload-single-file[disabled]+.adf-upload-button-label{background-color:var(--adf-disabled-button-background);color:var(--adf-theme-foreground-disabled-text-color);box-shadow:none;cursor:default}\n"] }]
52
51
  }], propDecorators: { node: [{
53
52
  type: Input
54
53
  }] } });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLXZlcnNpb24tYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb250ZW50LXNlcnZpY2VzL3NyYy9saWIvdXBsb2FkL2NvbXBvbmVudHMvdXBsb2FkLXZlcnNpb24tYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb250ZW50LXNlcnZpY2VzL3NyYy9saWIvdXBsb2FkL2NvbXBvbmVudHMvdXBsb2FkLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQWEsaUJBQWlCLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbkcsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBRXhGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7QUFZdkQsTUFBTSxPQUFPLDRCQUE2QixTQUFRLHFCQUFxQjtJQUt6RCxlQUFlLENBQUMsSUFBVTtRQUNoQyxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsZUFBZSxDQUNuQyxJQUFJLEVBQ0osSUFBSSxDQUFDLFlBQVksRUFDakIsQ0FBRSxJQUFZLENBQUMsa0JBQWtCLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsRUFDaEUsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQ2YsQ0FBQztRQUVGLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUNwQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLG1EQUFtRCxDQUFDLENBQUM7WUFDckcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0IsQ0FBQztRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDakcsQ0FBQzsrR0E1QlEsNEJBQTRCO21HQUE1Qiw0QkFBNEIsNkxDdEN6Qyxxc0dBc0VBLGt1QkR2Q2MsWUFBWSxrSUFBRSxlQUFlLDhCQUFFLGVBQWUsMkZBQUUsYUFBYSx5S0FHeEQsQ0FBQyxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDRCQUE0QixDQUFDLEVBQUUsQ0FBQzs7NEZBSXRHLDRCQUE0QjtrQkFWeEMsU0FBUzsrQkFDSSwyQkFBMkIsY0FDekIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsYUFBYSxDQUFDLGlCQUd6RCxDQUFDLEVBQUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDZCQUE2QixDQUFDLEVBQUUsQ0FBQyxpQkFDaEcsaUJBQWlCLENBQUMsSUFBSSxRQUMvQixFQUFFLEtBQUssRUFBRSwyQkFBMkIsRUFBRTs4QkFLNUMsSUFBSTtzQkFESCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBFWFRFTkRJQkxFX0NPTVBPTkVOVCB9IGZyb20gJ0BhbGZyZXNjby9hZGYtY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0LCBPbkNoYW5nZXMsIFZpZXdFbmNhcHN1bGF0aW9uLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5vZGUgfSBmcm9tICdAYWxmcmVzY28vanMtYXBpJztcbmltcG9ydCB7IFVwbG9hZEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vdXBsb2FkLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQWxsb3dhYmxlT3BlcmF0aW9uc0VudW0gfSBmcm9tICcuLi8uLi9jb21tb24vbW9kZWxzL2FsbG93YWJsZS1vcGVyYXRpb25zLmVudW0nO1xuaW1wb3J0IHsgRmlsZU1vZGVsIH0gZnJvbSAnLi4vLi4vY29tbW9uL21vZGVscy9maWxlLm1vZGVsJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYWRmLXVwbG9hZC12ZXJzaW9uLWJ1dHRvbicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBNYXRCdXR0b25Nb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgTWF0SWNvbk1vZHVsZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VwbG9hZC1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3VwbG9hZC1idXR0b24uY29tcG9uZW50LnNjc3MnXSxcbiAgICB2aWV3UHJvdmlkZXJzOiBbeyBwcm92aWRlOiBFWFRFTkRJQkxFX0NPTVBPTkVOVCwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVXBsb2FkVmVyc2lvbkJ1dHRvbkNvbXBvbmVudCkgfV0sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBob3N0OiB7IGNsYXNzOiAnYWRmLXVwbG9hZC12ZXJzaW9uLWJ1dHRvbicgfVxufSlcbmV4cG9ydCBjbGFzcyBVcGxvYWRWZXJzaW9uQnV0dG9uQ29tcG9uZW50IGV4dGVuZHMgVXBsb2FkQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xuICAgIC8qKiAoKipSZXF1aXJlZCoqKSBUaGUgbm9kZSB0byBiZSB2ZXJzaW9uZWQuICovXG4gICAgQElucHV0KClcbiAgICBub2RlOiBOb2RlO1xuXG4gICAgcHJvdGVjdGVkIGNyZWF0ZUZpbGVNb2RlbChmaWxlOiBGaWxlKTogRmlsZU1vZGVsIHtcbiAgICAgICAgY29uc3QgZmlsZU1vZGVsID0gc3VwZXIuY3JlYXRlRmlsZU1vZGVsKFxuICAgICAgICAgICAgZmlsZSxcbiAgICAgICAgICAgIHRoaXMucm9vdEZvbGRlcklkLFxuICAgICAgICAgICAgKChmaWxlIGFzIGFueSkud2Via2l0UmVsYXRpdmVQYXRoIHx8ICcnKS5yZXBsYWNlKC9cXC9bXi9dKiQvLCAnJyksXG4gICAgICAgICAgICB0aGlzLm5vZGUuaWRcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAoIXRoaXMuaXNGaWxlQWNjZXB0YWJsZShmaWxlTW9kZWwpKSB7XG4gICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gdGhpcy50cmFuc2xhdGlvblNlcnZpY2UuaW5zdGFudCgnRklMRV9VUExPQUQuVkVSU0lPTi5NRVNTQUdFUy5JTkNPTVBBVElCTEVfVkVSU0lPTicpO1xuICAgICAgICAgICAgdGhpcy5lcnJvci5lbWl0KG1lc3NhZ2UpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGZpbGVNb2RlbDtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5jaGVja1Blcm1pc3Npb24oKTtcbiAgICB9XG5cbiAgICBjaGVja1Blcm1pc3Npb24oKSB7XG4gICAgICAgIHRoaXMucGVybWlzc2lvblZhbHVlLm5leHQodGhpcy5ub2RlSGFzUGVybWlzc2lvbih0aGlzLm5vZGUsIEFsbG93YWJsZU9wZXJhdGlvbnNFbnVtLlVQREFURSkpO1xuICAgIH1cbn1cbiIsIjxmb3JtIGNsYXNzPVwiYWRmLXVwbG9hZC1idXR0b24tZmlsZS1jb250YWluZXJcIj5cbiAgICA8IS0tRmlsZXMgVXBsb2FkLS0+XG4gICAgPGRpdiAqbmdJZj1cIiF1cGxvYWRGb2xkZXJzXCI+XG5cbiAgICAgICAgPCEtLVNpbmdsZSBGaWxlcyBVcGxvYWQtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFtdWx0aXBsZUZpbGVzXCI+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICBjbGFzcz1cImFkZi11cGxvYWQtYnV0dG9uLWZpbGUtY29udGFpbmVyLXVwbG9hZC1zaW5nbGUtZmlsZVwiXG4gICAgICAgICAgICAgICAgaWQ9XCJ1cGxvYWQtc2luZ2xlLWZpbGVcIlxuICAgICAgICAgICAgICAgIGRhdGEtYXV0b21hdGlvbi1pZD1cInVwbG9hZC1zaW5nbGUtZmlsZVwiXG4gICAgICAgICAgICAgICAgW3R5cGVdPVwiZmlsZSA/ICdidXR0b24nIDogJ2ZpbGUnXCJcbiAgICAgICAgICAgICAgICBuYW1lPVwidXBsb2FkRmlsZXNcIlxuICAgICAgICAgICAgICAgIGFjY2VwdD1cInt7YWNjZXB0ZWRGaWxlc1R5cGV9fVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiaXNCdXR0b25EaXNhYmxlZCgpXCJcbiAgICAgICAgICAgICAgICBbdGl0bGVdPVwidG9vbHRpcFwiXG4gICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJvbkZpbGVzQWRkZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xpY2tVcGxvYWRCdXR0b24oKVwiLz5cbiAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJ1cGxvYWQtc2luZ2xlLWZpbGVcIiBjbGFzcz1cImFkZi11cGxvYWQtYnV0dG9uLWxhYmVsXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiYWRmLXVwbG9hZC1idXR0b24taWNvblwiPmZpbGVfdXBsb2FkPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInVwbG9hZC1zaW5nbGUtZmlsZS1sYWJlbFwiICpuZ0lmPVwiIXN0YXRpY1RpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7ICdGSUxFX1VQTE9BRC5CVVRUT04uVVBMT0FEX0ZJTEUnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwidXBsb2FkLXNpbmdsZS1maWxlLWxhYmVsLXN0YXRpY1wiICpuZ0lmPVwic3RhdGljVGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgc3RhdGljVGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8IS0tTXVsdGlwbGUgRmlsZXMgVXBsb2FkLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtdWx0aXBsZUZpbGVzXCI+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICBpZD1cInVwbG9hZC1tdWx0aXBsZS1maWxlc1wiXG4gICAgICAgICAgICAgICAgZGF0YS1hdXRvbWF0aW9uLWlkPVwidXBsb2FkLW11bHRpcGxlLWZpbGVzXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgICAgICAgICAgbmFtZT1cInVwbG9hZEZpbGVzXCJcbiAgICAgICAgICAgICAgICBtdWx0aXBsZT1cIm11bHRpcGxlXCJcbiAgICAgICAgICAgICAgICBhY2NlcHQ9XCJ7e2FjY2VwdGVkRmlsZXNUeXBlfX1cIlxuICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImlzQnV0dG9uRGlzYWJsZWQoKVwiXG4gICAgICAgICAgICAgICAgW3RpdGxlXT1cInRvb2x0aXBcIlxuICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25GaWxlc0FkZGVkKCRldmVudClcIi8+XG4gICAgICAgICAgICA8bGFiZWwgZm9yPVwidXBsb2FkLW11bHRpcGxlLWZpbGVzXCIgY2xhc3M9XCJhZGYtdXBsb2FkLWJ1dHRvbi1sYWJlbFwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImFkZi11cGxvYWQtYnV0dG9uLWljb25cIj5maWxlX3VwbG9hZDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJ1cGxvYWQtbXVsdGlwbGUtZmlsZS1sYWJlbFwiICpuZ0lmPVwiIXN0YXRpY1RpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7ICdGSUxFX1VQTE9BRC5CVVRUT04uVVBMT0FEX0ZJTEUnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwidXBsb2FkLW11bHRpcGxlLWZpbGUtbGFiZWwtc3RhdGljXCIgKm5nSWY9XCJzdGF0aWNUaXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBzdGF0aWNUaXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLUZvbGRlcnMgVXBsb2FkLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInVwbG9hZEZvbGRlcnNcIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBpZD1cInVwbG9hZEZvbGRlclwiXG4gICAgICAgICAgICBkYXRhLWF1dG9tYXRpb24taWQ9XCJ1cGxvYWRGb2xkZXJcIlxuICAgICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgICAgbmFtZT1cInVwbG9hZEZpbGVzXCJcbiAgICAgICAgICAgIG11bHRpcGxlPVwibXVsdGlwbGVcIlxuICAgICAgICAgICAgYWNjZXB0PVwie3thY2NlcHRlZEZpbGVzVHlwZX19XCJcbiAgICAgICAgICAgIHdlYmtpdGRpcmVjdG9yeSBkaXJlY3RvcnlcbiAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImlzQnV0dG9uRGlzYWJsZWQoKVwiXG4gICAgICAgICAgICBbdGl0bGVdPVwidG9vbHRpcFwiXG4gICAgICAgICAgICAoY2hhbmdlKT1cIm9uRGlyZWN0b3J5QWRkZWQoJGV2ZW50KVwiLz5cbiAgICAgICAgPGxhYmVsIGZvcj1cInVwbG9hZEZvbGRlclwiIGRhdGEtYXV0b21hdGlvbi1pZD1cInVwbG9hZEZvbGRlclwiIGNsYXNzPVwiYWRmLXVwbG9hZC1idXR0b24tbGFiZWxcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImFkZi11cGxvYWQtYnV0dG9uLWljb25cIj5maWxlX3VwbG9hZDwvbWF0LWljb24+XG4gICAgICAgICAgICA8c3BhbiBpZD1cInVwbG9hZEZvbGRlci1sYWJlbFwiICpuZ0lmPVwiIXN0YXRpY1RpdGxlXCI+XG4gICAgICAgICAgICAgICAge3sgJ0ZJTEVfVVBMT0FELkJVVFRPTi5VUExPQURfRk9MREVSJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuIGlkPVwidXBsb2FkRm9sZGVyLWxhYmVsLXN0YXRpY1wiICpuZ0lmPVwic3RhdGljVGl0bGVcIj5cbiAgICAgICAgICAgICAgICB7eyBzdGF0aWNUaXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9sYWJlbD5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvZm9ybT5cbiJdfQ==
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLXZlcnNpb24tYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb250ZW50LXNlcnZpY2VzL3NyYy9saWIvdXBsb2FkL2NvbXBvbmVudHMvdXBsb2FkLXZlcnNpb24tYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb250ZW50LXNlcnZpY2VzL3NyYy9saWIvdXBsb2FkL2NvbXBvbmVudHMvdXBsb2FkLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQWEsaUJBQWlCLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbkcsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBRXhGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7OztBQVl2RCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEscUJBQXFCO0lBS3pELGVBQWUsQ0FBQyxJQUFVO1FBQ2hDLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQ25DLElBQUksRUFDSixJQUFJLENBQUMsWUFBWSxFQUNqQixDQUFFLElBQVksQ0FBQyxrQkFBa0IsSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxFQUNoRSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FDZixDQUFDO1FBRUYsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsbURBQW1ELENBQUMsQ0FBQztZQUNyRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3QixDQUFDO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDckIsQ0FBQztJQUVELFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxlQUFlO1FBQ1gsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsdUJBQXVCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNqRyxDQUFDOytHQTVCUSw0QkFBNEI7bUdBQTVCLDRCQUE0Qiw2TEN0Q3pDLHFzR0FzRUEsa3VCRHZDYyxZQUFZLGtJQUFFLGVBQWUsMEJBQUUsYUFBYSxpREFBRSxhQUFhLHlLQUd0RCxDQUFDLEVBQUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsNEJBQTRCLENBQUMsRUFBRSxDQUFDOzs0RkFJdEcsNEJBQTRCO2tCQVZ4QyxTQUFTOytCQUNJLDJCQUEyQixjQUN6QixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxhQUFhLENBQUMsaUJBR3ZELENBQUMsRUFBRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsNkJBQTZCLENBQUMsRUFBRSxDQUFDLGlCQUNoRyxpQkFBaUIsQ0FBQyxJQUFJLFFBQy9CLEVBQUUsS0FBSyxFQUFFLDJCQUEyQixFQUFFOzhCQUs1QyxJQUFJO3NCQURILEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IEVYVEVORElCTEVfQ09NUE9ORU5UIH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uQ2hhbmdlcywgVmlld0VuY2Fwc3VsYXRpb24sIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTm9kZSB9IGZyb20gJ0BhbGZyZXNjby9qcy1hcGknO1xuaW1wb3J0IHsgVXBsb2FkQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi91cGxvYWQtYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBbGxvd2FibGVPcGVyYXRpb25zRW51bSB9IGZyb20gJy4uLy4uL2NvbW1vbi9tb2RlbHMvYWxsb3dhYmxlLW9wZXJhdGlvbnMuZW51bSc7XG5pbXBvcnQgeyBGaWxlTW9kZWwgfSBmcm9tICcuLi8uLi9jb21tb24vbW9kZWxzL2ZpbGUubW9kZWwnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYWRmLXVwbG9hZC12ZXJzaW9uLWJ1dHRvbicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBNYXRCdXR0b25Nb2R1bGUsIFRyYW5zbGF0ZVBpcGUsIE1hdEljb25Nb2R1bGVdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi91cGxvYWQtYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi91cGxvYWQtYnV0dG9uLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgdmlld1Byb3ZpZGVyczogW3sgcHJvdmlkZTogRVhURU5ESUJMRV9DT01QT05FTlQsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFVwbG9hZFZlcnNpb25CdXR0b25Db21wb25lbnQpIH1dLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgaG9zdDogeyBjbGFzczogJ2FkZi11cGxvYWQtdmVyc2lvbi1idXR0b24nIH1cbn0pXG5leHBvcnQgY2xhc3MgVXBsb2FkVmVyc2lvbkJ1dHRvbkNvbXBvbmVudCBleHRlbmRzIFVwbG9hZEJ1dHRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25Jbml0IHtcbiAgICAvKiogKCoqUmVxdWlyZWQqKikgVGhlIG5vZGUgdG8gYmUgdmVyc2lvbmVkLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgbm9kZTogTm9kZTtcblxuICAgIHByb3RlY3RlZCBjcmVhdGVGaWxlTW9kZWwoZmlsZTogRmlsZSk6IEZpbGVNb2RlbCB7XG4gICAgICAgIGNvbnN0IGZpbGVNb2RlbCA9IHN1cGVyLmNyZWF0ZUZpbGVNb2RlbChcbiAgICAgICAgICAgIGZpbGUsXG4gICAgICAgICAgICB0aGlzLnJvb3RGb2xkZXJJZCxcbiAgICAgICAgICAgICgoZmlsZSBhcyBhbnkpLndlYmtpdFJlbGF0aXZlUGF0aCB8fCAnJykucmVwbGFjZSgvXFwvW14vXSokLywgJycpLFxuICAgICAgICAgICAgdGhpcy5ub2RlLmlkXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKCF0aGlzLmlzRmlsZUFjY2VwdGFibGUoZmlsZU1vZGVsKSkge1xuICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLmluc3RhbnQoJ0ZJTEVfVVBMT0FELlZFUlNJT04uTUVTU0FHRVMuSU5DT01QQVRJQkxFX1ZFUlNJT04nKTtcbiAgICAgICAgICAgIHRoaXMuZXJyb3IuZW1pdChtZXNzYWdlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmaWxlTW9kZWw7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMuY2hlY2tQZXJtaXNzaW9uKCk7XG4gICAgfVxuXG4gICAgY2hlY2tQZXJtaXNzaW9uKCkge1xuICAgICAgICB0aGlzLnBlcm1pc3Npb25WYWx1ZS5uZXh0KHRoaXMubm9kZUhhc1Blcm1pc3Npb24odGhpcy5ub2RlLCBBbGxvd2FibGVPcGVyYXRpb25zRW51bS5VUERBVEUpKTtcbiAgICB9XG59XG4iLCI8Zm9ybSBjbGFzcz1cImFkZi11cGxvYWQtYnV0dG9uLWZpbGUtY29udGFpbmVyXCI+XG4gICAgPCEtLUZpbGVzIFVwbG9hZC0tPlxuICAgIDxkaXYgKm5nSWY9XCIhdXBsb2FkRm9sZGVyc1wiPlxuXG4gICAgICAgIDwhLS1TaW5nbGUgRmlsZXMgVXBsb2FkLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbXVsdGlwbGVGaWxlc1wiPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJhZGYtdXBsb2FkLWJ1dHRvbi1maWxlLWNvbnRhaW5lci11cGxvYWQtc2luZ2xlLWZpbGVcIlxuICAgICAgICAgICAgICAgIGlkPVwidXBsb2FkLXNpbmdsZS1maWxlXCJcbiAgICAgICAgICAgICAgICBkYXRhLWF1dG9tYXRpb24taWQ9XCJ1cGxvYWQtc2luZ2xlLWZpbGVcIlxuICAgICAgICAgICAgICAgIFt0eXBlXT1cImZpbGUgPyAnYnV0dG9uJyA6ICdmaWxlJ1wiXG4gICAgICAgICAgICAgICAgbmFtZT1cInVwbG9hZEZpbGVzXCJcbiAgICAgICAgICAgICAgICBhY2NlcHQ9XCJ7e2FjY2VwdGVkRmlsZXNUeXBlfX1cIlxuICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImlzQnV0dG9uRGlzYWJsZWQoKVwiXG4gICAgICAgICAgICAgICAgW3RpdGxlXT1cInRvb2x0aXBcIlxuICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25GaWxlc0FkZGVkKCRldmVudClcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNsaWNrVXBsb2FkQnV0dG9uKClcIi8+XG4gICAgICAgICAgICA8bGFiZWwgZm9yPVwidXBsb2FkLXNpbmdsZS1maWxlXCIgY2xhc3M9XCJhZGYtdXBsb2FkLWJ1dHRvbi1sYWJlbFwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImFkZi11cGxvYWQtYnV0dG9uLWljb25cIj5maWxlX3VwbG9hZDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJ1cGxvYWQtc2luZ2xlLWZpbGUtbGFiZWxcIiAqbmdJZj1cIiFzdGF0aWNUaXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICB7eyAnRklMRV9VUExPQUQuQlVUVE9OLlVQTE9BRF9GSUxFJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInVwbG9hZC1zaW5nbGUtZmlsZS1sYWJlbC1zdGF0aWNcIiAqbmdJZj1cInN0YXRpY1RpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IHN0YXRpY1RpdGxlIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPCEtLU11bHRpcGxlIEZpbGVzIFVwbG9hZC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibXVsdGlwbGVGaWxlc1wiPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgaWQ9XCJ1cGxvYWQtbXVsdGlwbGUtZmlsZXNcIlxuICAgICAgICAgICAgICAgIGRhdGEtYXV0b21hdGlvbi1pZD1cInVwbG9hZC1tdWx0aXBsZS1maWxlc1wiXG4gICAgICAgICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgICAgICAgIG5hbWU9XCJ1cGxvYWRGaWxlc1wiXG4gICAgICAgICAgICAgICAgbXVsdGlwbGU9XCJtdWx0aXBsZVwiXG4gICAgICAgICAgICAgICAgYWNjZXB0PVwie3thY2NlcHRlZEZpbGVzVHlwZX19XCJcbiAgICAgICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJpc0J1dHRvbkRpc2FibGVkKClcIlxuICAgICAgICAgICAgICAgIFt0aXRsZV09XCJ0b29sdGlwXCJcbiAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIm9uRmlsZXNBZGRlZCgkZXZlbnQpXCIvPlxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cInVwbG9hZC1tdWx0aXBsZS1maWxlc1wiIGNsYXNzPVwiYWRmLXVwbG9hZC1idXR0b24tbGFiZWxcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJhZGYtdXBsb2FkLWJ1dHRvbi1pY29uXCI+ZmlsZV91cGxvYWQ8L21hdC1pY29uPlxuICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwidXBsb2FkLW11bHRpcGxlLWZpbGUtbGFiZWxcIiAqbmdJZj1cIiFzdGF0aWNUaXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICB7eyAnRklMRV9VUExPQUQuQlVUVE9OLlVQTE9BRF9GSUxFJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInVwbG9hZC1tdWx0aXBsZS1maWxlLWxhYmVsLXN0YXRpY1wiICpuZ0lmPVwic3RhdGljVGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgc3RhdGljVGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cblxuICAgIDwhLS1Gb2xkZXJzIFVwbG9hZC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ1cGxvYWRGb2xkZXJzXCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgaWQ9XCJ1cGxvYWRGb2xkZXJcIlxuICAgICAgICAgICAgZGF0YS1hdXRvbWF0aW9uLWlkPVwidXBsb2FkRm9sZGVyXCJcbiAgICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICAgIG5hbWU9XCJ1cGxvYWRGaWxlc1wiXG4gICAgICAgICAgICBtdWx0aXBsZT1cIm11bHRpcGxlXCJcbiAgICAgICAgICAgIGFjY2VwdD1cInt7YWNjZXB0ZWRGaWxlc1R5cGV9fVwiXG4gICAgICAgICAgICB3ZWJraXRkaXJlY3RvcnkgZGlyZWN0b3J5XG4gICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJpc0J1dHRvbkRpc2FibGVkKClcIlxuICAgICAgICAgICAgW3RpdGxlXT1cInRvb2x0aXBcIlxuICAgICAgICAgICAgKGNoYW5nZSk9XCJvbkRpcmVjdG9yeUFkZGVkKCRldmVudClcIi8+XG4gICAgICAgIDxsYWJlbCBmb3I9XCJ1cGxvYWRGb2xkZXJcIiBkYXRhLWF1dG9tYXRpb24taWQ9XCJ1cGxvYWRGb2xkZXJcIiBjbGFzcz1cImFkZi11cGxvYWQtYnV0dG9uLWxhYmVsXCI+XG4gICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJhZGYtdXBsb2FkLWJ1dHRvbi1pY29uXCI+ZmlsZV91cGxvYWQ8L21hdC1pY29uPlxuICAgICAgICAgICAgPHNwYW4gaWQ9XCJ1cGxvYWRGb2xkZXItbGFiZWxcIiAqbmdJZj1cIiFzdGF0aWNUaXRsZVwiPlxuICAgICAgICAgICAgICAgIHt7ICdGSUxFX1VQTE9BRC5CVVRUT04uVVBMT0FEX0ZPTERFUicgfCB0cmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBpZD1cInVwbG9hZEZvbGRlci1sYWJlbC1zdGF0aWNcIiAqbmdJZj1cInN0YXRpY1RpdGxlXCI+XG4gICAgICAgICAgICAgICAge3sgc3RhdGljVGl0bGUgfX08L3NwYW4+XG4gICAgICAgIDwvbGFiZWw+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Zvcm0+XG4iXX0=
@@ -18,21 +18,20 @@ import { Component, Input, ViewEncapsulation } from '@angular/core';
18
18
  import { Node } from '@alfresco/js-api';
19
19
  import { FileTypePipe, ThumbnailService } from '@alfresco/adf-core';
20
20
  import { CommonModule } from '@angular/common';
21
- import { TranslateModule } from '@ngx-translate/core';
21
+ import { TranslatePipe } from '@ngx-translate/core';
22
22
  import * as i0 from "@angular/core";
23
23
  import * as i1 from "@alfresco/adf-core";
24
24
  import * as i2 from "@angular/common";
25
- import * as i3 from "@ngx-translate/core";
26
25
  export class VersionComparisonComponent {
27
26
  constructor(thumbnailService) {
28
27
  this.thumbnailService = thumbnailService;
29
28
  }
30
29
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: VersionComparisonComponent, deps: [{ token: i1.ThumbnailService }], target: i0.ɵɵFactoryTarget.Component }); }
31
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: VersionComparisonComponent, isStandalone: true, selector: "adf-version-comparison", inputs: { node: "node", newFileVersion: "newFileVersion" }, ngImport: i0, template: "<div class=\"adf-version-comparison-content\">\n <div class=\"adf-version-current\">\n <p>{{'ADF_VERSION_COMPARISON.CURRENT_VERSION' | translate }}</p>\n <img [attr.aria-label]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (node.content.mimeType | fileType | uppercase) | translate }\"\n [attr.alt]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (node.content.mimeType | fileType | uppercase) | translate }\"\n src=\"{{thumbnailService.getMimeTypeIcon(node.content.mimeType)}}\"/>\n <p class=\"adf-version-comparison-node-name\" title=\"{{node.name}}\">{{node.name}}</p>\n </div>\n <span class=\"material-icons adf-version-arrow-icon\">keyboard_arrow_right</span>\n <div class=\"adf-version-new\">\n <p>{{'ADF_VERSION_COMPARISON.NEW_VERSION' | translate }}</p>\n <img [attr.aria-label]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (newFileVersion.type | fileType | uppercase) | translate }\"\n [attr.alt]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (newFileVersion.type | fileType | uppercase) | translate }\"\n src=\"{{thumbnailService.getMimeTypeIcon(newFileVersion.type)}}\"/>\n <p class=\"adf-version-comparison-file-name\" title=\"{{newFileVersion.name}}\">{{newFileVersion.name}}</p>\n </div>\n</div>\n", styles: [".adf-version-comparison-content{display:flex;align-items:center;justify-content:space-around}.adf-version-current,.adf-version-new{display:flex;flex-direction:column;align-items:center}.adf-version-current img,.adf-version-new img{width:100px}.adf-version-arrow-icon{font-size:var(--theme-display-4-font-size)}.adf-version-comparison-node-name,.adf-version-comparison-file-name{width:120px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;text-align:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i2.UpperCasePipe, name: "uppercase" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "pipe", type: FileTypePipe, name: "fileType" }], encapsulation: i0.ViewEncapsulation.None }); }
30
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: VersionComparisonComponent, isStandalone: true, selector: "adf-version-comparison", inputs: { node: "node", newFileVersion: "newFileVersion" }, ngImport: i0, template: "<div class=\"adf-version-comparison-content\">\n <div class=\"adf-version-current\">\n <p>{{'ADF_VERSION_COMPARISON.CURRENT_VERSION' | translate }}</p>\n <img [attr.aria-label]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (node.content.mimeType | fileType | uppercase) | translate }\"\n [attr.alt]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (node.content.mimeType | fileType | uppercase) | translate }\"\n src=\"{{thumbnailService.getMimeTypeIcon(node.content.mimeType)}}\"/>\n <p class=\"adf-version-comparison-node-name\" title=\"{{node.name}}\">{{node.name}}</p>\n </div>\n <span class=\"material-icons adf-version-arrow-icon\">keyboard_arrow_right</span>\n <div class=\"adf-version-new\">\n <p>{{'ADF_VERSION_COMPARISON.NEW_VERSION' | translate }}</p>\n <img [attr.aria-label]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (newFileVersion.type | fileType | uppercase) | translate }\"\n [attr.alt]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (newFileVersion.type | fileType | uppercase) | translate }\"\n src=\"{{thumbnailService.getMimeTypeIcon(newFileVersion.type)}}\"/>\n <p class=\"adf-version-comparison-file-name\" title=\"{{newFileVersion.name}}\">{{newFileVersion.name}}</p>\n </div>\n</div>\n", styles: [".adf-version-comparison-content{display:flex;align-items:center;justify-content:space-around}.adf-version-current,.adf-version-new{display:flex;flex-direction:column;align-items:center}.adf-version-current img,.adf-version-new img{width:100px}.adf-version-arrow-icon{font-size:var(--theme-display-4-font-size)}.adf-version-comparison-node-name,.adf-version-comparison-file-name{width:120px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;text-align:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i2.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: FileTypePipe, name: "fileType" }], encapsulation: i0.ViewEncapsulation.None }); }
32
31
  }
33
32
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: VersionComparisonComponent, decorators: [{
34
33
  type: Component,
35
- args: [{ selector: 'adf-version-comparison', standalone: true, imports: [CommonModule, TranslateModule, FileTypePipe], encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-version-comparison-content\">\n <div class=\"adf-version-current\">\n <p>{{'ADF_VERSION_COMPARISON.CURRENT_VERSION' | translate }}</p>\n <img [attr.aria-label]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (node.content.mimeType | fileType | uppercase) | translate }\"\n [attr.alt]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (node.content.mimeType | fileType | uppercase) | translate }\"\n src=\"{{thumbnailService.getMimeTypeIcon(node.content.mimeType)}}\"/>\n <p class=\"adf-version-comparison-node-name\" title=\"{{node.name}}\">{{node.name}}</p>\n </div>\n <span class=\"material-icons adf-version-arrow-icon\">keyboard_arrow_right</span>\n <div class=\"adf-version-new\">\n <p>{{'ADF_VERSION_COMPARISON.NEW_VERSION' | translate }}</p>\n <img [attr.aria-label]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (newFileVersion.type | fileType | uppercase) | translate }\"\n [attr.alt]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (newFileVersion.type | fileType | uppercase) | translate }\"\n src=\"{{thumbnailService.getMimeTypeIcon(newFileVersion.type)}}\"/>\n <p class=\"adf-version-comparison-file-name\" title=\"{{newFileVersion.name}}\">{{newFileVersion.name}}</p>\n </div>\n</div>\n", styles: [".adf-version-comparison-content{display:flex;align-items:center;justify-content:space-around}.adf-version-current,.adf-version-new{display:flex;flex-direction:column;align-items:center}.adf-version-current img,.adf-version-new img{width:100px}.adf-version-arrow-icon{font-size:var(--theme-display-4-font-size)}.adf-version-comparison-node-name,.adf-version-comparison-file-name{width:120px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;text-align:center}\n"] }]
34
+ args: [{ selector: 'adf-version-comparison', standalone: true, imports: [CommonModule, TranslatePipe, FileTypePipe], encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-version-comparison-content\">\n <div class=\"adf-version-current\">\n <p>{{'ADF_VERSION_COMPARISON.CURRENT_VERSION' | translate }}</p>\n <img [attr.aria-label]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (node.content.mimeType | fileType | uppercase) | translate }\"\n [attr.alt]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (node.content.mimeType | fileType | uppercase) | translate }\"\n src=\"{{thumbnailService.getMimeTypeIcon(node.content.mimeType)}}\"/>\n <p class=\"adf-version-comparison-node-name\" title=\"{{node.name}}\">{{node.name}}</p>\n </div>\n <span class=\"material-icons adf-version-arrow-icon\">keyboard_arrow_right</span>\n <div class=\"adf-version-new\">\n <p>{{'ADF_VERSION_COMPARISON.NEW_VERSION' | translate }}</p>\n <img [attr.aria-label]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (newFileVersion.type | fileType | uppercase) | translate }\"\n [attr.alt]=\"'ADF_VERSION_COMPARISON.ACCESSIBILITY.ICON_TEXT' | translate:\n { type: (newFileVersion.type | fileType | uppercase) | translate }\"\n src=\"{{thumbnailService.getMimeTypeIcon(newFileVersion.type)}}\"/>\n <p class=\"adf-version-comparison-file-name\" title=\"{{newFileVersion.name}}\">{{newFileVersion.name}}</p>\n </div>\n</div>\n", styles: [".adf-version-comparison-content{display:flex;align-items:center;justify-content:space-around}.adf-version-current,.adf-version-new{display:flex;flex-direction:column;align-items:center}.adf-version-current img,.adf-version-new img{width:100px}.adf-version-arrow-icon{font-size:var(--theme-display-4-font-size)}.adf-version-comparison-node-name,.adf-version-comparison-file-name{width:120px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;text-align:center}\n"] }]
36
35
  }], ctorParameters: () => [{ type: i1.ThumbnailService }], propDecorators: { node: [{
37
36
  type: Input,
38
37
  args: [{ required: true }]
@@ -40,4 +39,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
40
39
  type: Input,
41
40
  args: [{ required: true }]
42
41
  }] } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi1jb21wYXJpc29uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb250ZW50LXNlcnZpY2VzL3NyYy9saWIvdmVyc2lvbi1tYW5hZ2VyL3ZlcnNpb24tY29tcGFyaXNvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWIvY29udGVudC1zZXJ2aWNlcy9zcmMvbGliL3ZlcnNpb24tbWFuYWdlci92ZXJzaW9uLWNvbXBhcmlzb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7OztBQVV0RCxNQUFNLE9BQU8sMEJBQTBCO0lBU25DLFlBQW1CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBQUcsQ0FBQzsrR0FUaEQsMEJBQTBCO21HQUExQiwwQkFBMEIsOElDL0J2Qyw0N0NBcUJBLDZnQkRLYyxZQUFZLDJGQUFFLGVBQWUsdUZBQUUsWUFBWTs7NEZBSzVDLDBCQUEwQjtrQkFSdEMsU0FBUzsrQkFDSSx3QkFBd0IsY0FDdEIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxZQUFZLENBQUMsaUJBR3ZDLGlCQUFpQixDQUFDLElBQUk7cUZBS3JDLElBQUk7c0JBREgsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBS3pCLGNBQWM7c0JBRGIsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb2RlIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBGaWxlVHlwZVBpcGUsIFRodW1ibmFpbFNlcnZpY2UgfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FkZi12ZXJzaW9uLWNvbXBhcmlzb24nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlLCBGaWxlVHlwZVBpcGVdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi92ZXJzaW9uLWNvbXBhcmlzb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3ZlcnNpb24tY29tcGFyaXNvbi5jb21wb25lbnQuc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgVmVyc2lvbkNvbXBhcmlzb25Db21wb25lbnQge1xuICAgIC8qKiBUYXJnZXQgbm9kZS4gKi9cbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KVxuICAgIG5vZGU6IE5vZGU7XG5cbiAgICAvKiogTmV3IGZpbGUgZm9yIHVwZGF0aW5nIGN1cnJlbnQgdmVyc2lvbi4gKi9cbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KVxuICAgIG5ld0ZpbGVWZXJzaW9uOiBGaWxlO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIHRodW1ibmFpbFNlcnZpY2U6IFRodW1ibmFpbFNlcnZpY2UpIHt9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYWRmLXZlcnNpb24tY29tcGFyaXNvbi1jb250ZW50XCI+XG4gICAgPGRpdiBjbGFzcz1cImFkZi12ZXJzaW9uLWN1cnJlbnRcIj5cbiAgICAgICAgPHA+e3snQURGX1ZFUlNJT05fQ09NUEFSSVNPTi5DVVJSRU5UX1ZFUlNJT04nIHwgdHJhbnNsYXRlIH19PC9wPlxuICAgICAgICA8aW1nIFthdHRyLmFyaWEtbGFiZWxdPVwiJ0FERl9WRVJTSU9OX0NPTVBBUklTT04uQUNDRVNTSUJJTElUWS5JQ09OX1RFWFQnIHwgdHJhbnNsYXRlOlxuICAgICAgICB7IHR5cGU6IChub2RlLmNvbnRlbnQubWltZVR5cGUgfCBmaWxlVHlwZSB8IHVwcGVyY2FzZSkgfCB0cmFuc2xhdGUgIH1cIlxuICAgICAgICAgICAgIFthdHRyLmFsdF09XCInQURGX1ZFUlNJT05fQ09NUEFSSVNPTi5BQ0NFU1NJQklMSVRZLklDT05fVEVYVCcgfCB0cmFuc2xhdGU6XG4gICAgICAgICAgICAgeyB0eXBlOiAobm9kZS5jb250ZW50Lm1pbWVUeXBlIHwgZmlsZVR5cGUgfCB1cHBlcmNhc2UpIHwgdHJhbnNsYXRlIH1cIlxuICAgICAgICAgICAgIHNyYz1cInt7dGh1bWJuYWlsU2VydmljZS5nZXRNaW1lVHlwZUljb24obm9kZS5jb250ZW50Lm1pbWVUeXBlKX19XCIvPlxuICAgICAgICA8cCBjbGFzcz1cImFkZi12ZXJzaW9uLWNvbXBhcmlzb24tbm9kZS1uYW1lXCIgdGl0bGU9XCJ7e25vZGUubmFtZX19XCI+e3tub2RlLm5hbWV9fTwvcD5cbiAgICA8L2Rpdj5cbiAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLWljb25zIGFkZi12ZXJzaW9uLWFycm93LWljb25cIj5rZXlib2FyZF9hcnJvd19yaWdodDwvc3Bhbj5cbiAgICA8ZGl2IGNsYXNzPVwiYWRmLXZlcnNpb24tbmV3XCI+XG4gICAgICAgIDxwPnt7J0FERl9WRVJTSU9OX0NPTVBBUklTT04uTkVXX1ZFUlNJT04nIHwgdHJhbnNsYXRlIH19PC9wPlxuICAgICAgICA8aW1nIFthdHRyLmFyaWEtbGFiZWxdPVwiJ0FERl9WRVJTSU9OX0NPTVBBUklTT04uQUNDRVNTSUJJTElUWS5JQ09OX1RFWFQnIHwgdHJhbnNsYXRlOlxuICAgICAgICB7IHR5cGU6IChuZXdGaWxlVmVyc2lvbi50eXBlIHwgZmlsZVR5cGUgfCB1cHBlcmNhc2UpIHwgdHJhbnNsYXRlICB9XCJcbiAgICAgICAgICAgICBbYXR0ci5hbHRdPVwiJ0FERl9WRVJTSU9OX0NPTVBBUklTT04uQUNDRVNTSUJJTElUWS5JQ09OX1RFWFQnIHwgdHJhbnNsYXRlOlxuICAgICAgICAgICAgIHsgdHlwZTogKG5ld0ZpbGVWZXJzaW9uLnR5cGUgfCBmaWxlVHlwZSB8IHVwcGVyY2FzZSkgfCB0cmFuc2xhdGUgfVwiXG4gICAgICAgICAgICBzcmM9XCJ7e3RodW1ibmFpbFNlcnZpY2UuZ2V0TWltZVR5cGVJY29uKG5ld0ZpbGVWZXJzaW9uLnR5cGUpfX1cIi8+XG4gICAgICAgIDxwIGNsYXNzPVwiYWRmLXZlcnNpb24tY29tcGFyaXNvbi1maWxlLW5hbWVcIiB0aXRsZT1cInt7bmV3RmlsZVZlcnNpb24ubmFtZX19XCI+e3tuZXdGaWxlVmVyc2lvbi5uYW1lfX08L3A+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi1jb21wYXJpc29uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb250ZW50LXNlcnZpY2VzL3NyYy9saWIvdmVyc2lvbi1tYW5hZ2VyL3ZlcnNpb24tY29tcGFyaXNvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWIvY29udGVudC1zZXJ2aWNlcy9zcmMvbGliL3ZlcnNpb24tbWFuYWdlci92ZXJzaW9uLWNvbXBhcmlzb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7O0FBVXBELE1BQU0sT0FBTywwQkFBMEI7SUFTbkMsWUFBbUIsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFBRyxDQUFDOytHQVRoRCwwQkFBMEI7bUdBQTFCLDBCQUEwQiw4SUMvQnZDLDQ3Q0FxQkEsNmdCREtjLFlBQVksdUZBQUUsYUFBYSw2Q0FBRSxZQUFZOzs0RkFLMUMsMEJBQTBCO2tCQVJ0QyxTQUFTOytCQUNJLHdCQUF3QixjQUN0QixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLFlBQVksQ0FBQyxpQkFHckMsaUJBQWlCLENBQUMsSUFBSTtxRkFLckMsSUFBSTtzQkFESCxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFLekIsY0FBYztzQkFEYixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5vZGUgfSBmcm9tICdAYWxmcmVzY28vanMtYXBpJztcbmltcG9ydCB7IEZpbGVUeXBlUGlwZSwgVGh1bWJuYWlsU2VydmljZSB9IGZyb20gJ0BhbGZyZXNjby9hZGYtY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVHJhbnNsYXRlUGlwZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FkZi12ZXJzaW9uLWNvbXBhcmlzb24nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVHJhbnNsYXRlUGlwZSwgRmlsZVR5cGVQaXBlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdmVyc2lvbi1jb21wYXJpc29uLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi92ZXJzaW9uLWNvbXBhcmlzb24uY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFZlcnNpb25Db21wYXJpc29uQ29tcG9uZW50IHtcbiAgICAvKiogVGFyZ2V0IG5vZGUuICovXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgICBub2RlOiBOb2RlO1xuXG4gICAgLyoqIE5ldyBmaWxlIGZvciB1cGRhdGluZyBjdXJyZW50IHZlcnNpb24uICovXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgICBuZXdGaWxlVmVyc2lvbjogRmlsZTtcblxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyB0aHVtYm5haWxTZXJ2aWNlOiBUaHVtYm5haWxTZXJ2aWNlKSB7fVxufVxuIiwiPGRpdiBjbGFzcz1cImFkZi12ZXJzaW9uLWNvbXBhcmlzb24tY29udGVudFwiPlxuICAgIDxkaXYgY2xhc3M9XCJhZGYtdmVyc2lvbi1jdXJyZW50XCI+XG4gICAgICAgIDxwPnt7J0FERl9WRVJTSU9OX0NPTVBBUklTT04uQ1VSUkVOVF9WRVJTSU9OJyB8IHRyYW5zbGF0ZSB9fTwvcD5cbiAgICAgICAgPGltZyBbYXR0ci5hcmlhLWxhYmVsXT1cIidBREZfVkVSU0lPTl9DT01QQVJJU09OLkFDQ0VTU0lCSUxJVFkuSUNPTl9URVhUJyB8IHRyYW5zbGF0ZTpcbiAgICAgICAgeyB0eXBlOiAobm9kZS5jb250ZW50Lm1pbWVUeXBlIHwgZmlsZVR5cGUgfCB1cHBlcmNhc2UpIHwgdHJhbnNsYXRlICB9XCJcbiAgICAgICAgICAgICBbYXR0ci5hbHRdPVwiJ0FERl9WRVJTSU9OX0NPTVBBUklTT04uQUNDRVNTSUJJTElUWS5JQ09OX1RFWFQnIHwgdHJhbnNsYXRlOlxuICAgICAgICAgICAgIHsgdHlwZTogKG5vZGUuY29udGVudC5taW1lVHlwZSB8IGZpbGVUeXBlIHwgdXBwZXJjYXNlKSB8IHRyYW5zbGF0ZSB9XCJcbiAgICAgICAgICAgICBzcmM9XCJ7e3RodW1ibmFpbFNlcnZpY2UuZ2V0TWltZVR5cGVJY29uKG5vZGUuY29udGVudC5taW1lVHlwZSl9fVwiLz5cbiAgICAgICAgPHAgY2xhc3M9XCJhZGYtdmVyc2lvbi1jb21wYXJpc29uLW5vZGUtbmFtZVwiIHRpdGxlPVwie3tub2RlLm5hbWV9fVwiPnt7bm9kZS5uYW1lfX08L3A+XG4gICAgPC9kaXY+XG4gICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1pY29ucyBhZGYtdmVyc2lvbi1hcnJvdy1pY29uXCI+a2V5Ym9hcmRfYXJyb3dfcmlnaHQ8L3NwYW4+XG4gICAgPGRpdiBjbGFzcz1cImFkZi12ZXJzaW9uLW5ld1wiPlxuICAgICAgICA8cD57eydBREZfVkVSU0lPTl9DT01QQVJJU09OLk5FV19WRVJTSU9OJyB8IHRyYW5zbGF0ZSB9fTwvcD5cbiAgICAgICAgPGltZyBbYXR0ci5hcmlhLWxhYmVsXT1cIidBREZfVkVSU0lPTl9DT01QQVJJU09OLkFDQ0VTU0lCSUxJVFkuSUNPTl9URVhUJyB8IHRyYW5zbGF0ZTpcbiAgICAgICAgeyB0eXBlOiAobmV3RmlsZVZlcnNpb24udHlwZSB8IGZpbGVUeXBlIHwgdXBwZXJjYXNlKSB8IHRyYW5zbGF0ZSAgfVwiXG4gICAgICAgICAgICAgW2F0dHIuYWx0XT1cIidBREZfVkVSU0lPTl9DT01QQVJJU09OLkFDQ0VTU0lCSUxJVFkuSUNPTl9URVhUJyB8IHRyYW5zbGF0ZTpcbiAgICAgICAgICAgICB7IHR5cGU6IChuZXdGaWxlVmVyc2lvbi50eXBlIHwgZmlsZVR5cGUgfCB1cHBlcmNhc2UpIHwgdHJhbnNsYXRlIH1cIlxuICAgICAgICAgICAgc3JjPVwie3t0aHVtYm5haWxTZXJ2aWNlLmdldE1pbWVUeXBlSWNvbihuZXdGaWxlVmVyc2lvbi50eXBlKX19XCIvPlxuICAgICAgICA8cCBjbGFzcz1cImFkZi12ZXJzaW9uLWNvbXBhcmlzb24tZmlsZS1uYW1lXCIgdGl0bGU9XCJ7e25ld0ZpbGVWZXJzaW9uLm5hbWV9fVwiPnt7bmV3RmlsZVZlcnNpb24ubmFtZX19PC9wPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -30,7 +30,7 @@ import { MatProgressBarModule } from '@angular/material/progress-bar';
30
30
  import { MatListModule } from '@angular/material/list';
31
31
  import { MatIconModule } from '@angular/material/icon';
32
32
  import { MatMenuModule } from '@angular/material/menu';
33
- import { TranslateModule } from '@ngx-translate/core';
33
+ import { TranslatePipe } from '@ngx-translate/core';
34
34
  import { MatButtonModule } from '@angular/material/button';
35
35
  import { VersionCompatibilityDirective } from '../version-compatibility';
36
36
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
@@ -44,8 +44,7 @@ import * as i6 from "@angular/material/progress-bar";
44
44
  import * as i7 from "@angular/material/list";
45
45
  import * as i8 from "@angular/material/icon";
46
46
  import * as i9 from "@angular/material/menu";
47
- import * as i10 from "@ngx-translate/core";
48
- import * as i11 from "@angular/material/button";
47
+ import * as i10 from "@angular/material/button";
49
48
  export class VersionListDataSource extends InfiniteScrollDatasource {
50
49
  constructor(versionsApi, node) {
51
50
  super();
@@ -174,7 +173,7 @@ export class VersionListComponent {
174
173
  }
175
174
  }
176
175
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: VersionListComponent, deps: [{ token: i1.AlfrescoApiService }, { token: i2.ContentService }, { token: i3.ContentVersionService }, { token: i4.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
177
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: VersionListComponent, isStandalone: true, selector: "adf-version-list", inputs: { node: "node", showComments: "showComments", allowDownload: "allowDownload", allowViewVersions: "allowViewVersions", showActions: "showActions", allowVersionDelete: "allowVersionDelete" }, outputs: { restored: "restored", deleted: "deleted", viewVersion: "viewVersion" }, host: { classAttribute: "adf-version-list" }, viewQueries: [{ propertyName: "viewport", first: true, predicate: ["viewport"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<mat-progress-bar *ngIf=\"isLoading\" data-automation-id=\"version-history-loading-bar\" mode=\"indeterminate\"\n color=\"accent\" />\n<mat-list class=\"adf-version-list adf-version-list-element\" [hidden]=\"isLoading\">\n <cdk-virtual-scroll-viewport #viewport itemSize=\"88\" class=\"adf-version-list-viewport\" [minBufferPx]=\"440\" [maxBufferPx]=\"528\">\n <mat-list-item class=\"adf-version-list-item\"\n *cdkVirtualFor=\"let version of versionsDataSource; let idx = index; let latestVersion = first\">\n <mat-icon class=\"adf-version-list-icon\" matListItemIcon>insert_drive_file</mat-icon>\n <div class=\"adf-version-list-content\">\n <div class=\"adf-version-list-item-details\">\n <p class=\"adf-version-list-item-line adf-version-list-item-name\"\n [id]=\"'adf-version-list-item-name-' + version.entry.id\">{{ version.entry.name }}</p>\n <p>\n <span class=\"adf-version-list-item-line adf-version-list-item-version\"\n [id]=\"'adf-version-list-item-version-' + version.entry.id\">{{ version.entry.id }}</span> -\n <span class=\"adf-version-list-item-line adf-version-list-item-date\"\n [id]=\"'adf-version-list-item-date-' + version.entry.id\">{{ version.entry.modifiedAt | date }}</span>\n </p>\n <p\n [id]=\"'adf-version-list-item-comment-' + version.entry.id\"\n class=\"adf-version-list-item-comment\"\n *ngIf=\"showComments\"\n [title]=\"version.entry.versionComment\">\n {{ version.entry.versionComment }}\n </p>\n </div>\n <ng-container *ngIf=\"showActions\">\n <mat-menu [id]=\"'adf-version-list-action-menu-' + version.entry.id\"\n #versionMenu=\"matMenu\"\n yPosition=\"below\"\n xPosition=\"before\">\n <ng-container *adf-acs-version=\"'7'\">\n <button *ngIf=\"allowViewVersions\"\n [id]=\"'adf-version-list-action-view-' + version.entry.id\"\n mat-menu-item\n (click)=\"onViewVersion(version.entry.id)\">\n {{ 'ADF_VERSION_LIST.ACTIONS.VIEW' | translate }}\n </button>\n </ng-container>\n <button\n [id]=\"'adf-version-list-action-restore-' + version.entry.id\"\n [disabled]=\"!canUpdate() || latestVersion\"\n mat-menu-item\n (click)=\"restore(version.entry.id)\">\n {{ 'ADF_VERSION_LIST.ACTIONS.RESTORE' | translate }}\n </button>\n <button *ngIf=\"allowDownload\"\n [id]=\"'adf-version-list-action-download-' + version.entry.id\"\n mat-menu-item\n (click)=\"downloadVersion(version.entry.id)\">\n {{ 'ADF_VERSION_LIST.ACTIONS.DOWNLOAD' | translate }}\n </button>\n <button\n *ngIf=\"allowVersionDelete\"\n [disabled]=\"!canDelete()\"\n [id]=\"'adf-version-list-action-delete-' + version.entry.id\"\n (click)=\"deleteVersion(version.entry.id)\"\n mat-menu-item>\n {{ 'ADF_VERSION_LIST.ACTIONS.DELETE' | translate }}\n </button>\n </mat-menu>\n <button mat-icon-button\n [matMenuTriggerFor]=\"versionMenu\"\n [id]=\"'adf-version-list-action-menu-button-' + version.entry.id\"\n title=\"{{ 'ADF_VERSION_LIST.MANAGE_VERSION_OPTIONS' | translate }}\">\n <mat-icon>more_vert</mat-icon>\n </button>\n </ng-container>\n </div>\n </mat-list-item>\n </cdk-virtual-scroll-viewport>\n</mat-list>\n", styles: [".adf-version-list-viewport{height:100%;overflow-x:hidden;display:flex}.adf-version-list-viewport :first-child{max-width:100%}.adf-version-list-item-details{flex:1;width:90%}.adf-version-list-content{display:flex}.adf-version-list-content p{margin:0;overflow:hidden}.adf-version-list .adf-version-list-icon{margin:0 16px;color:var(--theme-sidenav-user-menu-color)}.adf-version-list.adf-version-list-element .adf-version-list-item{border-bottom:1px solid var(--adf-theme-foreground-divider-color);width:100%;height:88px}.adf-version-list-item-version{font-weight:700}.adf-version-list-item-date{opacity:.6;white-space:normal}.adf-version-list-item-comment{width:auto;opacity:.5}@media screen and (width <= 629px){.adf-version-list-item-comment{width:97%}}.adf-version-list-item-name{white-space:normal;font-size:16px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i5.DatePipe, name: "date" }, { kind: "ngmodule", type: MatProgressBarModule }, { kind: "component", type: i6.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i7.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i7.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i7.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "component", type: CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "directive", type: CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i9.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i9.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i9.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i11.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: VersionCompatibilityDirective, selector: "[adf-acs-version]", inputs: ["adf-acs-version"] }], encapsulation: i0.ViewEncapsulation.None }); }
176
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: VersionListComponent, isStandalone: true, selector: "adf-version-list", inputs: { node: "node", showComments: "showComments", allowDownload: "allowDownload", allowViewVersions: "allowViewVersions", showActions: "showActions", allowVersionDelete: "allowVersionDelete" }, outputs: { restored: "restored", deleted: "deleted", viewVersion: "viewVersion" }, host: { classAttribute: "adf-version-list" }, viewQueries: [{ propertyName: "viewport", first: true, predicate: ["viewport"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<mat-progress-bar *ngIf=\"isLoading\" data-automation-id=\"version-history-loading-bar\" mode=\"indeterminate\"\n color=\"accent\" />\n<mat-list class=\"adf-version-list adf-version-list-element\" [hidden]=\"isLoading\">\n <cdk-virtual-scroll-viewport #viewport itemSize=\"88\" class=\"adf-version-list-viewport\" [minBufferPx]=\"440\" [maxBufferPx]=\"528\">\n <mat-list-item class=\"adf-version-list-item\"\n *cdkVirtualFor=\"let version of versionsDataSource; let idx = index; let latestVersion = first\">\n <mat-icon class=\"adf-version-list-icon\" matListItemIcon>insert_drive_file</mat-icon>\n <div class=\"adf-version-list-content\">\n <div class=\"adf-version-list-item-details\">\n <p class=\"adf-version-list-item-line adf-version-list-item-name\"\n [id]=\"'adf-version-list-item-name-' + version.entry.id\">{{ version.entry.name }}</p>\n <p>\n <span class=\"adf-version-list-item-line adf-version-list-item-version\"\n [id]=\"'adf-version-list-item-version-' + version.entry.id\">{{ version.entry.id }}</span> -\n <span class=\"adf-version-list-item-line adf-version-list-item-date\"\n [id]=\"'adf-version-list-item-date-' + version.entry.id\">{{ version.entry.modifiedAt | date }}</span>\n </p>\n <p\n [id]=\"'adf-version-list-item-comment-' + version.entry.id\"\n class=\"adf-version-list-item-comment\"\n *ngIf=\"showComments\"\n [title]=\"version.entry.versionComment\">\n {{ version.entry.versionComment }}\n </p>\n </div>\n <ng-container *ngIf=\"showActions\">\n <mat-menu [id]=\"'adf-version-list-action-menu-' + version.entry.id\"\n #versionMenu=\"matMenu\"\n yPosition=\"below\"\n xPosition=\"before\">\n <ng-container *adf-acs-version=\"'7'\">\n <button *ngIf=\"allowViewVersions\"\n [id]=\"'adf-version-list-action-view-' + version.entry.id\"\n mat-menu-item\n (click)=\"onViewVersion(version.entry.id)\">\n {{ 'ADF_VERSION_LIST.ACTIONS.VIEW' | translate }}\n </button>\n </ng-container>\n <button\n [id]=\"'adf-version-list-action-restore-' + version.entry.id\"\n [disabled]=\"!canUpdate() || latestVersion\"\n mat-menu-item\n (click)=\"restore(version.entry.id)\">\n {{ 'ADF_VERSION_LIST.ACTIONS.RESTORE' | translate }}\n </button>\n <button *ngIf=\"allowDownload\"\n [id]=\"'adf-version-list-action-download-' + version.entry.id\"\n mat-menu-item\n (click)=\"downloadVersion(version.entry.id)\">\n {{ 'ADF_VERSION_LIST.ACTIONS.DOWNLOAD' | translate }}\n </button>\n <button\n *ngIf=\"allowVersionDelete\"\n [disabled]=\"!canDelete()\"\n [id]=\"'adf-version-list-action-delete-' + version.entry.id\"\n (click)=\"deleteVersion(version.entry.id)\"\n mat-menu-item>\n {{ 'ADF_VERSION_LIST.ACTIONS.DELETE' | translate }}\n </button>\n </mat-menu>\n <button mat-icon-button\n [matMenuTriggerFor]=\"versionMenu\"\n [id]=\"'adf-version-list-action-menu-button-' + version.entry.id\"\n title=\"{{ 'ADF_VERSION_LIST.MANAGE_VERSION_OPTIONS' | translate }}\">\n <mat-icon>more_vert</mat-icon>\n </button>\n </ng-container>\n </div>\n </mat-list-item>\n </cdk-virtual-scroll-viewport>\n</mat-list>\n", styles: [".adf-version-list-viewport{height:100%;overflow-x:hidden;display:flex}.adf-version-list-viewport :first-child{max-width:100%}.adf-version-list-item-details{flex:1;width:90%}.adf-version-list-content{display:flex}.adf-version-list-content p{margin:0;overflow:hidden}.adf-version-list .adf-version-list-icon{margin:0 16px;color:var(--theme-sidenav-user-menu-color)}.adf-version-list.adf-version-list-element .adf-version-list-item{border-bottom:1px solid var(--adf-theme-foreground-divider-color);width:100%;height:88px}.adf-version-list-item-version{font-weight:700}.adf-version-list-item-date{opacity:.6;white-space:normal}.adf-version-list-item-comment{width:auto;opacity:.5}@media screen and (width <= 629px){.adf-version-list-item-comment{width:97%}}.adf-version-list-item-name{white-space:normal;font-size:16px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i5.DatePipe, name: "date" }, { kind: "ngmodule", type: MatProgressBarModule }, { kind: "component", type: i6.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i7.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i7.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i7.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "component", type: CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "directive", type: CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i9.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i9.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i9.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i10.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: VersionCompatibilityDirective, selector: "[adf-acs-version]", inputs: ["adf-acs-version"] }], encapsulation: i0.ViewEncapsulation.None }); }
178
177
  }
179
178
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: VersionListComponent, decorators: [{
180
179
  type: Component,
@@ -187,7 +186,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
187
186
  CdkVirtualForOf,
188
187
  MatIconModule,
189
188
  MatMenuModule,
190
- TranslateModule,
189
+ TranslatePipe,
191
190
  MatButtonModule,
192
191
  VersionCompatibilityDirective
193
192
  ], encapsulation: ViewEncapsulation.None, host: { class: 'adf-version-list' }, template: "<mat-progress-bar *ngIf=\"isLoading\" data-automation-id=\"version-history-loading-bar\" mode=\"indeterminate\"\n color=\"accent\" />\n<mat-list class=\"adf-version-list adf-version-list-element\" [hidden]=\"isLoading\">\n <cdk-virtual-scroll-viewport #viewport itemSize=\"88\" class=\"adf-version-list-viewport\" [minBufferPx]=\"440\" [maxBufferPx]=\"528\">\n <mat-list-item class=\"adf-version-list-item\"\n *cdkVirtualFor=\"let version of versionsDataSource; let idx = index; let latestVersion = first\">\n <mat-icon class=\"adf-version-list-icon\" matListItemIcon>insert_drive_file</mat-icon>\n <div class=\"adf-version-list-content\">\n <div class=\"adf-version-list-item-details\">\n <p class=\"adf-version-list-item-line adf-version-list-item-name\"\n [id]=\"'adf-version-list-item-name-' + version.entry.id\">{{ version.entry.name }}</p>\n <p>\n <span class=\"adf-version-list-item-line adf-version-list-item-version\"\n [id]=\"'adf-version-list-item-version-' + version.entry.id\">{{ version.entry.id }}</span> -\n <span class=\"adf-version-list-item-line adf-version-list-item-date\"\n [id]=\"'adf-version-list-item-date-' + version.entry.id\">{{ version.entry.modifiedAt | date }}</span>\n </p>\n <p\n [id]=\"'adf-version-list-item-comment-' + version.entry.id\"\n class=\"adf-version-list-item-comment\"\n *ngIf=\"showComments\"\n [title]=\"version.entry.versionComment\">\n {{ version.entry.versionComment }}\n </p>\n </div>\n <ng-container *ngIf=\"showActions\">\n <mat-menu [id]=\"'adf-version-list-action-menu-' + version.entry.id\"\n #versionMenu=\"matMenu\"\n yPosition=\"below\"\n xPosition=\"before\">\n <ng-container *adf-acs-version=\"'7'\">\n <button *ngIf=\"allowViewVersions\"\n [id]=\"'adf-version-list-action-view-' + version.entry.id\"\n mat-menu-item\n (click)=\"onViewVersion(version.entry.id)\">\n {{ 'ADF_VERSION_LIST.ACTIONS.VIEW' | translate }}\n </button>\n </ng-container>\n <button\n [id]=\"'adf-version-list-action-restore-' + version.entry.id\"\n [disabled]=\"!canUpdate() || latestVersion\"\n mat-menu-item\n (click)=\"restore(version.entry.id)\">\n {{ 'ADF_VERSION_LIST.ACTIONS.RESTORE' | translate }}\n </button>\n <button *ngIf=\"allowDownload\"\n [id]=\"'adf-version-list-action-download-' + version.entry.id\"\n mat-menu-item\n (click)=\"downloadVersion(version.entry.id)\">\n {{ 'ADF_VERSION_LIST.ACTIONS.DOWNLOAD' | translate }}\n </button>\n <button\n *ngIf=\"allowVersionDelete\"\n [disabled]=\"!canDelete()\"\n [id]=\"'adf-version-list-action-delete-' + version.entry.id\"\n (click)=\"deleteVersion(version.entry.id)\"\n mat-menu-item>\n {{ 'ADF_VERSION_LIST.ACTIONS.DELETE' | translate }}\n </button>\n </mat-menu>\n <button mat-icon-button\n [matMenuTriggerFor]=\"versionMenu\"\n [id]=\"'adf-version-list-action-menu-button-' + version.entry.id\"\n title=\"{{ 'ADF_VERSION_LIST.MANAGE_VERSION_OPTIONS' | translate }}\">\n <mat-icon>more_vert</mat-icon>\n </button>\n </ng-container>\n </div>\n </mat-list-item>\n </cdk-virtual-scroll-viewport>\n</mat-list>\n", styles: [".adf-version-list-viewport{height:100%;overflow-x:hidden;display:flex}.adf-version-list-viewport :first-child{max-width:100%}.adf-version-list-item-details{flex:1;width:90%}.adf-version-list-content{display:flex}.adf-version-list-content p{margin:0;overflow:hidden}.adf-version-list .adf-version-list-icon{margin:0 16px;color:var(--theme-sidenav-user-menu-color)}.adf-version-list.adf-version-list-element .adf-version-list-item{border-bottom:1px solid var(--adf-theme-foreground-divider-color);width:100%;height:88px}.adf-version-list-item-version{font-weight:700}.adf-version-list-item-date{opacity:.6;white-space:normal}.adf-version-list-item-comment{width:auto;opacity:.5}@media screen and (width <= 629px){.adf-version-list-item-comment{width:97%}}.adf-version-list-item-name{white-space:normal;font-size:16px}\n"] }]
@@ -213,4 +212,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
213
212
  type: ViewChild,
214
213
  args: ['viewport']
215
214
  }] } });
216
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb250ZW50LXNlcnZpY2VzL3NyYy9saWIvdmVyc2lvbi1tYW5hZ2VyL3ZlcnNpb24tbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWIvY29udGVudC1zZXJ2aWNlcy9zcmMvbGliL3ZlcnNpb24tbWFuYWdlci92ZXJzaW9uLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUNILFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBR0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFVBQVUsRUFBc0IsSUFBSSxFQUFhLFFBQVEsRUFBZ0IsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDeEgsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDM0MsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDekUsT0FBTyxFQUFFLElBQUksRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxlQUFlLEVBQUUsd0JBQXdCLEVB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TixRQUFRO3NCQURQLE1BQU07Z0JBS1AsT0FBTztzQkFETixNQUFNO2dCQUtQLFdBQVc7c0JBRFYsTUFBTTtnQkFJUCxRQUFRO3NCQURQLFNBQVM7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgQ29uZmlybURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJ0BhbGZyZXNjby9hZGYtY29yZSc7XG5pbXBvcnQgeyBBbGZyZXNjb0FwaVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hbGZyZXNjby1hcGkuc2VydmljZSc7XG5pbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBEZXN0cm95UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udGVudEFwaSwgQ29udGVudFBhZ2luZ1F1ZXJ5LCBOb2RlLCBOb2RlRW50cnksIE5vZGVzQXBpLCBWZXJzaW9uRW50cnksIFZlcnNpb25zQXBpIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgQ29udGVudFZlcnNpb25TZXJ2aWNlIH0gZnJvbSAnLi9jb250ZW50LXZlcnNpb24uc2VydmljZSc7XG5pbXBvcnQgeyBDb250ZW50U2VydmljZSB9IGZyb20gJy4uL2NvbW1vbic7XG5pbXBvcnQgeyBJbmZpbml0ZVNjcm9sbERhdGFzb3VyY2UgfSBmcm9tICcuLi9pbmZpbml0ZS1zY3JvbGwtZGF0YXNvdXJjZSc7XG5pbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDZGtGaXhlZFNpemVWaXJ0dWFsU2Nyb2xsLCBDZGtWaXJ0dWFsRm9yT2YsIENka1ZpcnR1YWxTY3JvbGxWaWV3cG9ydCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zY3JvbGxpbmcnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1hdFByb2dyZXNzQmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyJztcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IFZlcnNpb25Db21wYXRpYmlsaXR5RGlyZWN0aXZlIH0gZnJvbSAnLi4vdmVyc2lvbi1jb21wYXRpYmlsaXR5JztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuZXhwb3J0IGNsYXNzIFZlcnNpb25MaXN0RGF0YVNvdXJjZSBleHRlbmRzIEluZmluaXRlU2Nyb2xsRGF0YXNvdXJjZTxWZXJzaW9uRW50cnk+IHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHZlcnNpb25zQXBpOiBWZXJzaW9uc0FwaSwgcHJpdmF0ZSBub2RlOiBOb2RlKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgZ2V0TmV4dEJhdGNoKHBhZ2luZ09wdGlvbnM6IENvbnRlbnRQYWdpbmdRdWVyeSk6IE9ic2VydmFibGU8VmVyc2lvbkVudHJ5W10+IHtcbiAgICAgICAgcmV0dXJuIGZyb20odGhpcy52ZXJzaW9uc0FwaS5saXN0VmVyc2lvbkhpc3RvcnkodGhpcy5ub2RlLmlkLCBwYWdpbmdPcHRpb25zKSkucGlwZShcbiAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICBtYXAoKHZlcnNpb25QYWdpbmcpID0+IHZlcnNpb25QYWdpbmcubGlzdC5lbnRyaWVzKVxuICAgICAgICApO1xuICAgIH1cbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhZGYtdmVyc2lvbi1saXN0JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBNYXRQcm9ncmVzc0Jhck1vZHVsZSxcbiAgICAgICAgTWF0TGlzdE1vZHVsZSxcbiAgICAgICAgQ2RrVmlydHVhbFNjcm9sbFZpZXdwb3J0LFxuICAgICAgICBDZGtGaXhlZFNpemVWaXJ0dWFsU2Nyb2xsLFxuICAgICAgICBDZGtWaXJ0dWFsRm9yT2YsXG4gICAgICAgIE1hdEljb25Nb2R1bGUsXG4gICAgICAgIE1hdE1lbnVNb2R1bGUsXG4gICAgICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICAgICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgICAgICBWZXJzaW9uQ29tcGF0aWJpbGl0eURpcmVjdGl2ZVxuICAgIF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3ZlcnNpb24tbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdmVyc2lvbi1saXN0LmNvbXBvbmVudC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBob3N0OiB7IGNsYXNzOiAnYWRmLXZlcnNpb24tbGlzdCcgfVxufSlcbmV4cG9ydCBjbGFzcyBWZXJzaW9uTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25Jbml0IHtcbiAgICBwcml2YXRlIF9jb250ZW50QXBpOiBDb250ZW50QXBpO1xuICAgIGdldCBjb250ZW50QXBpKCk6IENvbnRlbnRBcGkge1xuICAgICAgICB0aGlzLl9jb250ZW50QXBpID0gdGhpcy5fY29udGVudEFwaSA/PyBuZXcgQ29udGVudEFwaSh0aGlzLmFsZnJlc2NvQXBpLmdldEluc3RhbmNlKCkpO1xuICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudEFwaTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF92ZXJzaW9uc0FwaTogVmVyc2lvbnNBcGk7XG4gICAgZ2V0IHZlcnNpb25zQXBpKCk6IFZlcnNpb25zQXBpIHtcbiAgICAgICAgdGhpcy5fdmVyc2lvbnNBcGkgPSB0aGlzLl92ZXJzaW9uc0FwaSA/PyBuZXcgVmVyc2lvbnNBcGkodGhpcy5hbGZyZXNjb0FwaS5nZXRJbnN0YW5jZSgpKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZlcnNpb25zQXBpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX25vZGVzQXBpOiBOb2Rlc0FwaTtcbiAgICBnZXQgbm9kZXNBcGkoKTogTm9kZXNBcGkge1xuICAgICAgICB0aGlzLl9ub2Rlc0FwaSA9IHRoaXMuX25vZGVzQXBpID8/IG5ldyBOb2Rlc0FwaSh0aGlzLmFsZnJlc2NvQXBpLmdldEluc3RhbmNlKCkpO1xuICAgICAgICByZXR1cm4gdGhpcy5fbm9kZXNBcGk7XG4gICAgfVxuXG4gICAgdmVyc2lvbnNEYXRhU291cmNlOiBWZXJzaW9uTGlzdERhdGFTb3VyY2U7XG4gICAgbGF0ZXN0VmVyc2lvbjogVmVyc2lvbkVudHJ5O1xuICAgIGlzTG9hZGluZyA9IHRydWU7XG5cbiAgICAvKiogVGhlIHRhcmdldCBub2RlLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgbm9kZTogTm9kZTtcblxuICAgIC8qKiBUb2dnbGVzIHNob3dpbmcvaGlkaW5nIG9mIGNvbW1lbnRzICovXG4gICAgQElucHV0KClcbiAgICBzaG93Q29tbWVudHMgPSB0cnVlO1xuXG4gICAgLyoqIEVuYWJsZS9kaXNhYmxlIGRvd25sb2FkaW5nIGEgdmVyc2lvbiBvZiB0aGUgY3VycmVudCBub2RlLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgYWxsb3dEb3dubG9hZCA9IHRydWU7XG5cbiAgICAvKiogRW5hYmxlL2Rpc2FibGUgdmlld2luZyBhIHZlcnNpb24gb2YgdGhlIGN1cnJlbnQgbm9kZS4gKi9cbiAgICBASW5wdXQoKVxuICAgIGFsbG93Vmlld1ZlcnNpb25zID0gdHJ1ZTtcblxuICAgIC8qKiBUb2dnbGVzIHNob3dpbmcvaGlkaW5nIG9mIHZlcnNpb24gYWN0aW9ucyAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2hvd0FjdGlvbnMgPSB0cnVlO1xuXG4gICAgLyoqIEVuYWJsZS9kaXNhYmxlIGRlbGV0aW9uIG9mIHZlcnNpb24gKi9cbiAgICBASW5wdXQoKVxuICAgIGFsbG93VmVyc2lvbkRlbGV0ZSA9IHRydWU7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIGEgdmVyc2lvbiBpcyByZXN0b3JlZCAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJlc3RvcmVkID0gbmV3IEV2ZW50RW1pdHRlcjxOb2RlPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiBhIHZlcnNpb24gaXMgZGVsZXRlZCAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGRlbGV0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPE5vZGU+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIHZpZXdpbmcgYSB2ZXJzaW9uICovXG4gICAgQE91dHB1dCgpXG4gICAgdmlld1ZlcnNpb24gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAgIEBWaWV3Q2hpbGQoJ3ZpZXdwb3J0JylcbiAgICB2aWV3cG9ydDogQ2RrVmlydHVhbFNjcm9sbFZpZXdwb3J0O1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgYWxmcmVzY29BcGk6IEFsZnJlc2NvQXBpU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjb250ZW50U2VydmljZTogQ29udGVudFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgY29udGVudFZlcnNpb25TZXJ2aWNlOiBDb250ZW50VmVyc2lvblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2dcbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy52ZXJzaW9uc0RhdGFTb3VyY2UgPSBuZXcgVmVyc2lvbkxpc3REYXRhU291cmNlKHRoaXMudmVyc2lvbnNBcGksIHRoaXMubm9kZSk7XG4gICAgICAgIHRoaXMudmVyc2lvbnNEYXRhU291cmNlLmlzTG9hZGluZy5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoKGlzTG9hZGluZykgPT4ge1xuICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBpc0xvYWRpbmc7XG4gICAgICAgICAgICB0aGlzLmxhdGVzdFZlcnNpb24gPSB0aGlzLnZlcnNpb25zRGF0YVNvdXJjZS5maXJzdEl0ZW07XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKCkge1xuICAgICAgICBpZiAodGhpcy52ZXJzaW9uc0RhdGFTb3VyY2UpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZFZlcnNpb25IaXN0b3J5KCk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIGNhblVwZGF0ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGVudFNlcnZpY2UuaGFzQWxsb3dhYmxlT3BlcmF0aW9ucyh0aGlzLm5vZGUsICd1cGRhdGUnKSAmJiB0aGlzLnZlcnNpb25zRGF0YVNvdXJjZS5pdGVtc0NvdW50ID4gMTtcbiAgICB9XG5cbiAgICBjYW5EZWxldGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRlbnRTZXJ2aWNlLmhhc0FsbG93YWJsZU9wZXJhdGlvbnModGhpcy5ub2RlLCAnZGVsZXRlJykgJiYgdGhpcy52ZXJzaW9uc0RhdGFTb3VyY2UuaXRlbXNDb3VudCA+IDE7XG4gICAgfVxuXG4gICAgcmVzdG9yZSh2ZXJzaW9uSWQ6IHN0cmluZykge1xuICAgICAgICBpZiAodGhpcy5jYW5VcGRhdGUoKSkge1xuICAgICAgICAgICAgdGhpcy52ZXJzaW9uc0FwaVxuICAgICAgICAgICAgICAgIC5yZXZlcnRWZXJzaW9uKHRoaXMubm9kZS5pZCwgdmVyc2lvbklkLCB7IG1ham9yVmVyc2lvbjogdHJ1ZSwgY29tbWVudDogJycgfSlcbiAgICAgICAgICAgICAgICAudGhlbigoKSA9PiB0aGlzLm5vZGVzQXBpLmdldE5vZGUodGhpcy5ub2RlLmlkLCB7IGluY2x1ZGU6IFsncGVybWlzc2lvbnMnLCAncGF0aCcsICdpc0Zhdm9yaXRlJywgJ2FsbG93YWJsZU9wZXJhdGlvbnMnXSB9KSlcbiAgICAgICAgICAgICAgICAudGhlbigobm9kZSkgPT4gdGhpcy5vblZlcnNpb25SZXN0b3JlZChub2RlKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblZpZXdWZXJzaW9uKHZlcnNpb25JZDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMudmlld1ZlcnNpb24uZW1pdCh2ZXJzaW9uSWQpO1xuICAgIH1cblxuICAgIGxvYWRWZXJzaW9uSGlzdG9yeSgpIHtcbiAgICAgICAgdGhpcy52aWV3cG9ydC5zY3JvbGxUb0luZGV4KDApO1xuICAgICAgICB0aGlzLnZlcnNpb25zRGF0YVNvdXJjZS5yZXNldCgpO1xuICAgIH1cblxuICAgIGRvd25sb2FkVmVyc2lvbih2ZXJzaW9uSWQ6IHN0cmluZykge1xuICAgICAgICBpZiAodGhpcy5hbGxvd0Rvd25sb2FkKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRWZXJzaW9uU2VydmljZVxuICAgICAgICAgICAgICAgIC5nZXRWZXJzaW9uQ29udGVudFVybCh0aGlzLm5vZGUuaWQsIHZlcnNpb25JZCwgdHJ1ZSlcbiAgICAgICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCh2ZXJzaW9uRG93bmxvYWRVcmwpID0+IHRoaXMuZG93bmxvYWRDb250ZW50KHZlcnNpb25Eb3dubG9hZFVybCkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGVsZXRlVmVyc2lvbih2ZXJzaW9uSWQ6IHN0cmluZykge1xuICAgICAgICBpZiAodGhpcy5jYW5VcGRhdGUoKSkge1xuICAgICAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihDb25maXJtRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ0FERl9WRVJTSU9OX0xJU1QuQ09ORklSTV9ERUxFVEUuVElUTEUnLFxuICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiAnQURGX1ZFUlNJT05fTElTVC5DT05GSVJNX0RFTEVURS5NRVNTQUdFJyxcbiAgICAgICAgICAgICAgICAgICAgeWVzTGFiZWw6ICdBREZfVkVSU0lPTl9MSVNULkNPTkZJUk1fREVMRVRFLllFU19MQUJFTCcsXG4gICAgICAgICAgICAgICAgICAgIG5vTGFiZWw6ICdBREZfVkVSU0lPTl9MSVNULkNPTkZJUk1fREVMRVRFLk5PX0xBQkVMJ1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgbWluV2lkdGg6ICcyNTBweCdcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBkaWFsb2dSZWZcbiAgICAgICAgICAgICAgICAuYWZ0ZXJDbG9zZWQoKVxuICAgICAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnZlcnNpb25zQXBpLmRlbGV0ZVZlcnNpb24odGhpcy5ub2RlLmlkLCB2ZXJzaW9uSWQpLnRoZW4oKCkgPT4gdGhpcy5vblZlcnNpb25EZWxldGVkKHRoaXMubm9kZSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblZlcnNpb25EZWxldGVkKG5vZGU6IGFueSkge1xuICAgICAgICB0aGlzLmxvYWRWZXJzaW9uSGlzdG9yeSgpO1xuICAgICAgICB0aGlzLmRlbGV0ZWQuZW1pdChub2RlKTtcbiAgICB9XG5cbiAgICBvblZlcnNpb25SZXN0b3JlZChub2RlOiBOb2RlRW50cnkpIHtcbiAgICAgICAgdGhpcy5sb2FkVmVyc2lvbkhpc3RvcnkoKTtcbiAgICAgICAgdGhpcy5yZXN0b3JlZC5lbWl0KG5vZGU/LmVudHJ5KTtcbiAgICB9XG5cbiAgICBkb3dubG9hZENvbnRlbnQodXJsOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHVybCkge1xuICAgICAgICAgICAgY29uc3QgbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcblxuICAgICAgICAgICAgbGluay5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgICAgICAgbGluay5ocmVmID0gdXJsO1xuXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxpbmspO1xuICAgICAgICAgICAgbGluay5jbGljaygpO1xuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChsaW5rKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxtYXQtcHJvZ3Jlc3MtYmFyICpuZ0lmPVwiaXNMb2FkaW5nXCIgZGF0YS1hdXRvbWF0aW9uLWlkPVwidmVyc2lvbi1oaXN0b3J5LWxvYWRpbmctYmFyXCIgbW9kZT1cImluZGV0ZXJtaW5hdGVcIlxuICAgICAgICAgICAgICAgICAgY29sb3I9XCJhY2NlbnRcIiAvPlxuPG1hdC1saXN0IGNsYXNzPVwiYWRmLXZlcnNpb24tbGlzdCBhZGYtdmVyc2lvbi1saXN0LWVsZW1lbnRcIiBbaGlkZGVuXT1cImlzTG9hZGluZ1wiPlxuICAgIDxjZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQgI3ZpZXdwb3J0IGl0ZW1TaXplPVwiODhcIiBjbGFzcz1cImFkZi12ZXJzaW9uLWxpc3Qtdmlld3BvcnRcIiBbbWluQnVmZmVyUHhdPVwiNDQwXCIgW21heEJ1ZmZlclB4XT1cIjUyOFwiPlxuICAgICAgICA8bWF0LWxpc3QtaXRlbSBjbGFzcz1cImFkZi12ZXJzaW9uLWxpc3QtaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICpjZGtWaXJ0dWFsRm9yPVwibGV0IHZlcnNpb24gb2YgdmVyc2lvbnNEYXRhU291cmNlOyBsZXQgaWR4ID0gaW5kZXg7IGxldCBsYXRlc3RWZXJzaW9uID0gZmlyc3RcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImFkZi12ZXJzaW9uLWxpc3QtaWNvblwiIG1hdExpc3RJdGVtSWNvbj5pbnNlcnRfZHJpdmVfZmlsZTwvbWF0LWljb24+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWRmLXZlcnNpb24tbGlzdC1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkZi12ZXJzaW9uLWxpc3QtaXRlbS1kZXRhaWxzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYWRmLXZlcnNpb24tbGlzdC1pdGVtLWxpbmUgYWRmLXZlcnNpb24tbGlzdC1pdGVtLW5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ2FkZi12ZXJzaW9uLWxpc3QtaXRlbS1uYW1lLScgKyB2ZXJzaW9uLmVudHJ5LmlkXCI+e3sgdmVyc2lvbi5lbnRyeS5uYW1lIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWRmLXZlcnNpb24tbGlzdC1pdGVtLWxpbmUgYWRmLXZlcnNpb24tbGlzdC1pdGVtLXZlcnNpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ2FkZi12ZXJzaW9uLWxpc3QtaXRlbS12ZXJzaW9uLScgKyB2ZXJzaW9uLmVudHJ5LmlkXCI+e3sgdmVyc2lvbi5lbnRyeS5pZCB9fTwvc3Bhbj4gLVxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhZGYtdmVyc2lvbi1saXN0LWl0ZW0tbGluZSBhZGYtdmVyc2lvbi1saXN0LWl0ZW0tZGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ2FkZi12ZXJzaW9uLWxpc3QtaXRlbS1kYXRlLScgKyB2ZXJzaW9uLmVudHJ5LmlkXCI+e3sgdmVyc2lvbi5lbnRyeS5tb2RpZmllZEF0IHwgZGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICA8cFxuICAgICAgICAgICAgICAgICAgICAgICAgW2lkXT1cIidhZGYtdmVyc2lvbi1saXN0LWl0ZW0tY29tbWVudC0nICsgdmVyc2lvbi5lbnRyeS5pZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImFkZi12ZXJzaW9uLWxpc3QtaXRlbS1jb21tZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwic2hvd0NvbW1lbnRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJ2ZXJzaW9uLmVudHJ5LnZlcnNpb25Db21tZW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyB2ZXJzaW9uLmVudHJ5LnZlcnNpb25Db21tZW50IH19XG4gICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0FjdGlvbnNcIj5cbiAgICAgICAgICAgICAgICA8bWF0LW1lbnUgW2lkXT1cIidhZGYtdmVyc2lvbi1saXN0LWFjdGlvbi1tZW51LScgKyB2ZXJzaW9uLmVudHJ5LmlkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgI3ZlcnNpb25NZW51PVwibWF0TWVudVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHlQb3NpdGlvbj1cImJlbG93XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgeFBvc2l0aW9uPVwiYmVmb3JlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKmFkZi1hY3MtdmVyc2lvbj1cIic3J1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFsbG93Vmlld1ZlcnNpb25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lkXT1cIidhZGYtdmVyc2lvbi1saXN0LWFjdGlvbi12aWV3LScgKyB2ZXJzaW9uLmVudHJ5LmlkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0LW1lbnUtaXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25WaWV3VmVyc2lvbih2ZXJzaW9uLmVudHJ5LmlkKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdBREZfVkVSU0lPTl9MSVNULkFDVElPTlMuVklFVycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgW2lkXT1cIidhZGYtdmVyc2lvbi1saXN0LWFjdGlvbi1yZXN0b3JlLScgKyB2ZXJzaW9uLmVudHJ5LmlkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhY2FuVXBkYXRlKCkgfHwgbGF0ZXN0VmVyc2lvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXQtbWVudS1pdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwicmVzdG9yZSh2ZXJzaW9uLmVudHJ5LmlkKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgJ0FERl9WRVJTSU9OX0xJU1QuQUNUSU9OUy5SRVNUT1JFJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFsbG93RG93bmxvYWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCInYWRmLXZlcnNpb24tbGlzdC1hY3Rpb24tZG93bmxvYWQtJyArIHZlcnNpb24uZW50cnkuaWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdC1tZW51LWl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZG93bmxvYWRWZXJzaW9uKHZlcnNpb24uZW50cnkuaWQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyAnQURGX1ZFUlNJT05fTElTVC5BQ1RJT05TLkRPV05MT0FEJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJhbGxvd1ZlcnNpb25EZWxldGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFjYW5EZWxldGUoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ2FkZi12ZXJzaW9uLWxpc3QtYWN0aW9uLWRlbGV0ZS0nICsgdmVyc2lvbi5lbnRyeS5pZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZGVsZXRlVmVyc2lvbih2ZXJzaW9uLmVudHJ5LmlkKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXQtbWVudS1pdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgJ0FERl9WRVJTSU9OX0xJU1QuQUNUSU9OUy5ERUxFVEUnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvbWF0LW1lbnU+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwidmVyc2lvbk1lbnVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCInYWRmLXZlcnNpb24tbGlzdC1hY3Rpb24tbWVudS1idXR0b24tJyArIHZlcnNpb24uZW50cnkuaWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPVwie3sgJ0FERl9WRVJTSU9OX0xJU1QuTUFOQUdFX1ZFUlNJT05fT1BUSU9OUycgfCB0cmFuc2xhdGUgfX1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5tb3JlX3ZlcnQ8L21hdC1pY29uPlxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L21hdC1saXN0LWl0ZW0+XG4gICAgPC9jZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQ+XG48L21hdC1saXN0PlxuIl19
215
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb250ZW50LXNlcnZpY2VzL3NyYy9saWIvdmVyc2lvbi1tYW5hZ2VyL3ZlcnNpb24tbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWIvY29udGVudC1zZXJ2aWNlcy9zcmMvbGliL3ZlcnNpb24tbWFuYWdlci92ZXJzaW9uLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUksT0FBTyxFQUFFLFVBQVUsRUFBc0IsSUFBSSxFQUFhLFFBQVEsRUFBZ0IsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDeEgsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDM0MsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDekUsT0FBTyxFQUFFLElBQUksRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxlQUFlLEVBQUUsd0JBQXdCLEVB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TixRQUFRO3NCQURQLE1BQU07Z0JBS1AsT0FBTztzQkFETixNQUFNO2dCQUtQLFdBQVc7c0JBRFYsTUFBTTtnQkFJUCxRQUFRO3NCQURQLFNBQVM7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgQ29uZmlybURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJ0BhbGZyZXNjby9hZGYtY29yZSc7XG5pbXBvcnQgeyBBbGZyZXNjb0FwaVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hbGZyZXNjby1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBDb21wb25lbnQsIERlc3Ryb3lSZWYsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udGVudEFwaSwgQ29udGVudFBhZ2luZ1F1ZXJ5LCBOb2RlLCBOb2RlRW50cnksIE5vZGVzQXBpLCBWZXJzaW9uRW50cnksIFZlcnNpb25zQXBpIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgQ29udGVudFZlcnNpb25TZXJ2aWNlIH0gZnJvbSAnLi9jb250ZW50LXZlcnNpb24uc2VydmljZSc7XG5pbXBvcnQgeyBDb250ZW50U2VydmljZSB9IGZyb20gJy4uL2NvbW1vbic7XG5pbXBvcnQgeyBJbmZpbml0ZVNjcm9sbERhdGFzb3VyY2UgfSBmcm9tICcuLi9pbmZpbml0ZS1zY3JvbGwtZGF0YXNvdXJjZSc7XG5pbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDZGtGaXhlZFNpemVWaXJ0dWFsU2Nyb2xsLCBDZGtWaXJ0dWFsRm9yT2YsIENka1ZpcnR1YWxTY3JvbGxWaWV3cG9ydCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zY3JvbGxpbmcnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1hdFByb2dyZXNzQmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyJztcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBWZXJzaW9uQ29tcGF0aWJpbGl0eURpcmVjdGl2ZSB9IGZyb20gJy4uL3ZlcnNpb24tY29tcGF0aWJpbGl0eSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbmV4cG9ydCBjbGFzcyBWZXJzaW9uTGlzdERhdGFTb3VyY2UgZXh0ZW5kcyBJbmZpbml0ZVNjcm9sbERhdGFzb3VyY2U8VmVyc2lvbkVudHJ5PiB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB2ZXJzaW9uc0FwaTogVmVyc2lvbnNBcGksIHByaXZhdGUgbm9kZTogTm9kZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIGdldE5leHRCYXRjaChwYWdpbmdPcHRpb25zOiBDb250ZW50UGFnaW5nUXVlcnkpOiBPYnNlcnZhYmxlPFZlcnNpb25FbnRyeVtdPiB7XG4gICAgICAgIHJldHVybiBmcm9tKHRoaXMudmVyc2lvbnNBcGkubGlzdFZlcnNpb25IaXN0b3J5KHRoaXMubm9kZS5pZCwgcGFnaW5nT3B0aW9ucykpLnBpcGUoXG4gICAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgICAgbWFwKCh2ZXJzaW9uUGFnaW5nKSA9PiB2ZXJzaW9uUGFnaW5nLmxpc3QuZW50cmllcylcbiAgICAgICAgKTtcbiAgICB9XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYWRmLXZlcnNpb24tbGlzdCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgTWF0UHJvZ3Jlc3NCYXJNb2R1bGUsXG4gICAgICAgIE1hdExpc3RNb2R1bGUsXG4gICAgICAgIENka1ZpcnR1YWxTY3JvbGxWaWV3cG9ydCxcbiAgICAgICAgQ2RrRml4ZWRTaXplVmlydHVhbFNjcm9sbCxcbiAgICAgICAgQ2RrVmlydHVhbEZvck9mLFxuICAgICAgICBNYXRJY29uTW9kdWxlLFxuICAgICAgICBNYXRNZW51TW9kdWxlLFxuICAgICAgICBUcmFuc2xhdGVQaXBlLFxuICAgICAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgICAgIFZlcnNpb25Db21wYXRpYmlsaXR5RGlyZWN0aXZlXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdmVyc2lvbi1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi92ZXJzaW9uLWxpc3QuY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGhvc3Q6IHsgY2xhc3M6ICdhZGYtdmVyc2lvbi1saXN0JyB9XG59KVxuZXhwb3J0IGNsYXNzIFZlcnNpb25MaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xuICAgIHByaXZhdGUgX2NvbnRlbnRBcGk6IENvbnRlbnRBcGk7XG4gICAgZ2V0IGNvbnRlbnRBcGkoKTogQ29udGVudEFwaSB7XG4gICAgICAgIHRoaXMuX2NvbnRlbnRBcGkgPSB0aGlzLl9jb250ZW50QXBpID8/IG5ldyBDb250ZW50QXBpKHRoaXMuYWxmcmVzY29BcGkuZ2V0SW5zdGFuY2UoKSk7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb250ZW50QXBpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3ZlcnNpb25zQXBpOiBWZXJzaW9uc0FwaTtcbiAgICBnZXQgdmVyc2lvbnNBcGkoKTogVmVyc2lvbnNBcGkge1xuICAgICAgICB0aGlzLl92ZXJzaW9uc0FwaSA9IHRoaXMuX3ZlcnNpb25zQXBpID8/IG5ldyBWZXJzaW9uc0FwaSh0aGlzLmFsZnJlc2NvQXBpLmdldEluc3RhbmNlKCkpO1xuICAgICAgICByZXR1cm4gdGhpcy5fdmVyc2lvbnNBcGk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfbm9kZXNBcGk6IE5vZGVzQXBpO1xuICAgIGdldCBub2Rlc0FwaSgpOiBOb2Rlc0FwaSB7XG4gICAgICAgIHRoaXMuX25vZGVzQXBpID0gdGhpcy5fbm9kZXNBcGkgPz8gbmV3IE5vZGVzQXBpKHRoaXMuYWxmcmVzY29BcGkuZ2V0SW5zdGFuY2UoKSk7XG4gICAgICAgIHJldHVybiB0aGlzLl9ub2Rlc0FwaTtcbiAgICB9XG5cbiAgICB2ZXJzaW9uc0RhdGFTb3VyY2U6IFZlcnNpb25MaXN0RGF0YVNvdXJjZTtcbiAgICBsYXRlc3RWZXJzaW9uOiBWZXJzaW9uRW50cnk7XG4gICAgaXNMb2FkaW5nID0gdHJ1ZTtcblxuICAgIC8qKiBUaGUgdGFyZ2V0IG5vZGUuICovXG4gICAgQElucHV0KClcbiAgICBub2RlOiBOb2RlO1xuXG4gICAgLyoqIFRvZ2dsZXMgc2hvd2luZy9oaWRpbmcgb2YgY29tbWVudHMgKi9cbiAgICBASW5wdXQoKVxuICAgIHNob3dDb21tZW50cyA9IHRydWU7XG5cbiAgICAvKiogRW5hYmxlL2Rpc2FibGUgZG93bmxvYWRpbmcgYSB2ZXJzaW9uIG9mIHRoZSBjdXJyZW50IG5vZGUuICovXG4gICAgQElucHV0KClcbiAgICBhbGxvd0Rvd25sb2FkID0gdHJ1ZTtcblxuICAgIC8qKiBFbmFibGUvZGlzYWJsZSB2aWV3aW5nIGEgdmVyc2lvbiBvZiB0aGUgY3VycmVudCBub2RlLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgYWxsb3dWaWV3VmVyc2lvbnMgPSB0cnVlO1xuXG4gICAgLyoqIFRvZ2dsZXMgc2hvd2luZy9oaWRpbmcgb2YgdmVyc2lvbiBhY3Rpb25zICovXG4gICAgQElucHV0KClcbiAgICBzaG93QWN0aW9ucyA9IHRydWU7XG5cbiAgICAvKiogRW5hYmxlL2Rpc2FibGUgZGVsZXRpb24gb2YgdmVyc2lvbiAqL1xuICAgIEBJbnB1dCgpXG4gICAgYWxsb3dWZXJzaW9uRGVsZXRlID0gdHJ1ZTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gYSB2ZXJzaW9uIGlzIHJlc3RvcmVkICovXG4gICAgQE91dHB1dCgpXG4gICAgcmVzdG9yZWQgPSBuZXcgRXZlbnRFbWl0dGVyPE5vZGU+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIGEgdmVyc2lvbiBpcyBkZWxldGVkICovXG4gICAgQE91dHB1dCgpXG4gICAgZGVsZXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Tm9kZT4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gdmlld2luZyBhIHZlcnNpb24gKi9cbiAgICBAT3V0cHV0KClcbiAgICB2aWV3VmVyc2lvbiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gICAgQFZpZXdDaGlsZCgndmlld3BvcnQnKVxuICAgIHZpZXdwb3J0OiBDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQ7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBhbGZyZXNjb0FwaTogQWxmcmVzY29BcGlTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGNvbnRlbnRTZXJ2aWNlOiBDb250ZW50U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjb250ZW50VmVyc2lvblNlcnZpY2U6IENvbnRlbnRWZXJzaW9uU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZ1xuICAgICkge31cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLnZlcnNpb25zRGF0YVNvdXJjZSA9IG5ldyBWZXJzaW9uTGlzdERhdGFTb3VyY2UodGhpcy52ZXJzaW9uc0FwaSwgdGhpcy5ub2RlKTtcbiAgICAgICAgdGhpcy52ZXJzaW9uc0RhdGFTb3VyY2UuaXNMb2FkaW5nLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpLnN1YnNjcmliZSgoaXNMb2FkaW5nKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGlzTG9hZGluZztcbiAgICAgICAgICAgIHRoaXMubGF0ZXN0VmVyc2lvbiA9IHRoaXMudmVyc2lvbnNEYXRhU291cmNlLmZpcnN0SXRlbTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoKSB7XG4gICAgICAgIGlmICh0aGlzLnZlcnNpb25zRGF0YVNvdXJjZSkge1xuICAgICAgICAgICAgdGhpcy5sb2FkVmVyc2lvbkhpc3RvcnkoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNhblVwZGF0ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGVudFNlcnZpY2UuaGFzQWxsb3dhYmxlT3BlcmF0aW9ucyh0aGlzLm5vZGUsICd1cGRhdGUnKSAmJiB0aGlzLnZlcnNpb25zRGF0YVNvdXJjZS5pdGVtc0NvdW50ID4gMTtcbiAgICB9XG5cbiAgICBjYW5EZWxldGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRlbnRTZXJ2aWNlLmhhc0FsbG93YWJsZU9wZXJhdGlvbnModGhpcy5ub2RlLCAnZGVsZXRlJykgJiYgdGhpcy52ZXJzaW9uc0RhdGFTb3VyY2UuaXRlbXNDb3VudCA+IDE7XG4gICAgfVxuXG4gICAgcmVzdG9yZSh2ZXJzaW9uSWQ6IHN0cmluZykge1xuICAgICAgICBpZiAodGhpcy5jYW5VcGRhdGUoKSkge1xuICAgICAgICAgICAgdGhpcy52ZXJzaW9uc0FwaVxuICAgICAgICAgICAgICAgIC5yZXZlcnRWZXJzaW9uKHRoaXMubm9kZS5pZCwgdmVyc2lvbklkLCB7IG1ham9yVmVyc2lvbjogdHJ1ZSwgY29tbWVudDogJycgfSlcbiAgICAgICAgICAgICAgICAudGhlbigoKSA9PiB0aGlzLm5vZGVzQXBpLmdldE5vZGUodGhpcy5ub2RlLmlkLCB7IGluY2x1ZGU6IFsncGVybWlzc2lvbnMnLCAncGF0aCcsICdpc0Zhdm9yaXRlJywgJ2FsbG93YWJsZU9wZXJhdGlvbnMnXSB9KSlcbiAgICAgICAgICAgICAgICAudGhlbigobm9kZSkgPT4gdGhpcy5vblZlcnNpb25SZXN0b3JlZChub2RlKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblZpZXdWZXJzaW9uKHZlcnNpb25JZDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMudmlld1ZlcnNpb24uZW1pdCh2ZXJzaW9uSWQpO1xuICAgIH1cblxuICAgIGxvYWRWZXJzaW9uSGlzdG9yeSgpIHtcbiAgICAgICAgdGhpcy52aWV3cG9ydC5zY3JvbGxUb0luZGV4KDApO1xuICAgICAgICB0aGlzLnZlcnNpb25zRGF0YVNvdXJjZS5yZXNldCgpO1xuICAgIH1cblxuICAgIGRvd25sb2FkVmVyc2lvbih2ZXJzaW9uSWQ6IHN0cmluZykge1xuICAgICAgICBpZiAodGhpcy5hbGxvd0Rvd25sb2FkKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRWZXJzaW9uU2VydmljZVxuICAgICAgICAgICAgICAgIC5nZXRWZXJzaW9uQ29udGVudFVybCh0aGlzLm5vZGUuaWQsIHZlcnNpb25JZCwgdHJ1ZSlcbiAgICAgICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCh2ZXJzaW9uRG93bmxvYWRVcmwpID0+IHRoaXMuZG93bmxvYWRDb250ZW50KHZlcnNpb25Eb3dubG9hZFVybCkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGVsZXRlVmVyc2lvbih2ZXJzaW9uSWQ6IHN0cmluZykge1xuICAgICAgICBpZiAodGhpcy5jYW5VcGRhdGUoKSkge1xuICAgICAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihDb25maXJtRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ0FERl9WRVJTSU9OX0xJU1QuQ09ORklSTV9ERUxFVEUuVElUTEUnLFxuICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiAnQURGX1ZFUlNJT05fTElTVC5DT05GSVJNX0RFTEVURS5NRVNTQUdFJyxcbiAgICAgICAgICAgICAgICAgICAgeWVzTGFiZWw6ICdBREZfVkVSU0lPTl9MSVNULkNPTkZJUk1fREVMRVRFLllFU19MQUJFTCcsXG4gICAgICAgICAgICAgICAgICAgIG5vTGFiZWw6ICdBREZfVkVSU0lPTl9MSVNULkNPTkZJUk1fREVMRVRFLk5PX0xBQkVMJ1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgbWluV2lkdGg6ICcyNTBweCdcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBkaWFsb2dSZWZcbiAgICAgICAgICAgICAgICAuYWZ0ZXJDbG9zZWQoKVxuICAgICAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnZlcnNpb25zQXBpLmRlbGV0ZVZlcnNpb24odGhpcy5ub2RlLmlkLCB2ZXJzaW9uSWQpLnRoZW4oKCkgPT4gdGhpcy5vblZlcnNpb25EZWxldGVkKHRoaXMubm9kZSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblZlcnNpb25EZWxldGVkKG5vZGU6IGFueSkge1xuICAgICAgICB0aGlzLmxvYWRWZXJzaW9uSGlzdG9yeSgpO1xuICAgICAgICB0aGlzLmRlbGV0ZWQuZW1pdChub2RlKTtcbiAgICB9XG5cbiAgICBvblZlcnNpb25SZXN0b3JlZChub2RlOiBOb2RlRW50cnkpIHtcbiAgICAgICAgdGhpcy5sb2FkVmVyc2lvbkhpc3RvcnkoKTtcbiAgICAgICAgdGhpcy5yZXN0b3JlZC5lbWl0KG5vZGU/LmVudHJ5KTtcbiAgICB9XG5cbiAgICBkb3dubG9hZENvbnRlbnQodXJsOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHVybCkge1xuICAgICAgICAgICAgY29uc3QgbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcblxuICAgICAgICAgICAgbGluay5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgICAgICAgbGluay5ocmVmID0gdXJsO1xuXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxpbmspO1xuICAgICAgICAgICAgbGluay5jbGljaygpO1xuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChsaW5rKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxtYXQtcHJvZ3Jlc3MtYmFyICpuZ0lmPVwiaXNMb2FkaW5nXCIgZGF0YS1hdXRvbWF0aW9uLWlkPVwidmVyc2lvbi1oaXN0b3J5LWxvYWRpbmctYmFyXCIgbW9kZT1cImluZGV0ZXJtaW5hdGVcIlxuICAgICAgICAgICAgICAgICAgY29sb3I9XCJhY2NlbnRcIiAvPlxuPG1hdC1saXN0IGNsYXNzPVwiYWRmLXZlcnNpb24tbGlzdCBhZGYtdmVyc2lvbi1saXN0LWVsZW1lbnRcIiBbaGlkZGVuXT1cImlzTG9hZGluZ1wiPlxuICAgIDxjZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQgI3ZpZXdwb3J0IGl0ZW1TaXplPVwiODhcIiBjbGFzcz1cImFkZi12ZXJzaW9uLWxpc3Qtdmlld3BvcnRcIiBbbWluQnVmZmVyUHhdPVwiNDQwXCIgW21heEJ1ZmZlclB4XT1cIjUyOFwiPlxuICAgICAgICA8bWF0LWxpc3QtaXRlbSBjbGFzcz1cImFkZi12ZXJzaW9uLWxpc3QtaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICpjZGtWaXJ0dWFsRm9yPVwibGV0IHZlcnNpb24gb2YgdmVyc2lvbnNEYXRhU291cmNlOyBsZXQgaWR4ID0gaW5kZXg7IGxldCBsYXRlc3RWZXJzaW9uID0gZmlyc3RcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImFkZi12ZXJzaW9uLWxpc3QtaWNvblwiIG1hdExpc3RJdGVtSWNvbj5pbnNlcnRfZHJpdmVfZmlsZTwvbWF0LWljb24+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWRmLXZlcnNpb24tbGlzdC1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkZi12ZXJzaW9uLWxpc3QtaXRlbS1kZXRhaWxzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYWRmLXZlcnNpb24tbGlzdC1pdGVtLWxpbmUgYWRmLXZlcnNpb24tbGlzdC1pdGVtLW5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ2FkZi12ZXJzaW9uLWxpc3QtaXRlbS1uYW1lLScgKyB2ZXJzaW9uLmVudHJ5LmlkXCI+e3sgdmVyc2lvbi5lbnRyeS5uYW1lIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWRmLXZlcnNpb24tbGlzdC1pdGVtLWxpbmUgYWRmLXZlcnNpb24tbGlzdC1pdGVtLXZlcnNpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ2FkZi12ZXJzaW9uLWxpc3QtaXRlbS12ZXJzaW9uLScgKyB2ZXJzaW9uLmVudHJ5LmlkXCI+e3sgdmVyc2lvbi5lbnRyeS5pZCB9fTwvc3Bhbj4gLVxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhZGYtdmVyc2lvbi1saXN0LWl0ZW0tbGluZSBhZGYtdmVyc2lvbi1saXN0LWl0ZW0tZGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ2FkZi12ZXJzaW9uLWxpc3QtaXRlbS1kYXRlLScgKyB2ZXJzaW9uLmVudHJ5LmlkXCI+e3sgdmVyc2lvbi5lbnRyeS5tb2RpZmllZEF0IHwgZGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICA8cFxuICAgICAgICAgICAgICAgICAgICAgICAgW2lkXT1cIidhZGYtdmVyc2lvbi1saXN0LWl0ZW0tY29tbWVudC0nICsgdmVyc2lvbi5lbnRyeS5pZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImFkZi12ZXJzaW9uLWxpc3QtaXRlbS1jb21tZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwic2hvd0NvbW1lbnRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJ2ZXJzaW9uLmVudHJ5LnZlcnNpb25Db21tZW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyB2ZXJzaW9uLmVudHJ5LnZlcnNpb25Db21tZW50IH19XG4gICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0FjdGlvbnNcIj5cbiAgICAgICAgICAgICAgICA8bWF0LW1lbnUgW2lkXT1cIidhZGYtdmVyc2lvbi1saXN0LWFjdGlvbi1tZW51LScgKyB2ZXJzaW9uLmVudHJ5LmlkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgI3ZlcnNpb25NZW51PVwibWF0TWVudVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHlQb3NpdGlvbj1cImJlbG93XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgeFBvc2l0aW9uPVwiYmVmb3JlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKmFkZi1hY3MtdmVyc2lvbj1cIic3J1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFsbG93Vmlld1ZlcnNpb25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lkXT1cIidhZGYtdmVyc2lvbi1saXN0LWFjdGlvbi12aWV3LScgKyB2ZXJzaW9uLmVudHJ5LmlkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0LW1lbnUtaXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25WaWV3VmVyc2lvbih2ZXJzaW9uLmVudHJ5LmlkKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdBREZfVkVSU0lPTl9MSVNULkFDVElPTlMuVklFVycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgW2lkXT1cIidhZGYtdmVyc2lvbi1saXN0LWFjdGlvbi1yZXN0b3JlLScgKyB2ZXJzaW9uLmVudHJ5LmlkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhY2FuVXBkYXRlKCkgfHwgbGF0ZXN0VmVyc2lvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXQtbWVudS1pdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwicmVzdG9yZSh2ZXJzaW9uLmVudHJ5LmlkKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgJ0FERl9WRVJTSU9OX0xJU1QuQUNUSU9OUy5SRVNUT1JFJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFsbG93RG93bmxvYWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCInYWRmLXZlcnNpb24tbGlzdC1hY3Rpb24tZG93bmxvYWQtJyArIHZlcnNpb24uZW50cnkuaWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdC1tZW51LWl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZG93bmxvYWRWZXJzaW9uKHZlcnNpb24uZW50cnkuaWQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyAnQURGX1ZFUlNJT05fTElTVC5BQ1RJT05TLkRPV05MT0FEJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJhbGxvd1ZlcnNpb25EZWxldGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFjYW5EZWxldGUoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ2FkZi12ZXJzaW9uLWxpc3QtYWN0aW9uLWRlbGV0ZS0nICsgdmVyc2lvbi5lbnRyeS5pZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZGVsZXRlVmVyc2lvbih2ZXJzaW9uLmVudHJ5LmlkKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXQtbWVudS1pdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgJ0FERl9WRVJTSU9OX0xJU1QuQUNUSU9OUy5ERUxFVEUnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvbWF0LW1lbnU+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwidmVyc2lvbk1lbnVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCInYWRmLXZlcnNpb24tbGlzdC1hY3Rpb24tbWVudS1idXR0b24tJyArIHZlcnNpb24uZW50cnkuaWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPVwie3sgJ0FERl9WRVJTSU9OX0xJU1QuTUFOQUdFX1ZFUlNJT05fT1BUSU9OUycgfCB0cmFuc2xhdGUgfX1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5tb3JlX3ZlcnQ8L21hdC1pY29uPlxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L21hdC1saXN0LWl0ZW0+XG4gICAgPC9jZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQ+XG48L21hdC1saXN0PlxuIl19